Commit Graph

156 Commits

Author SHA1 Message Date
e1f8fbdc32 Prevent error when trying to get relationship and no links have been loaded 2015-05-30 13:58:21 +09:30
5db1751660 Add helper to format number with commas 2015-05-30 08:40:29 +09:30
ba1ddc0a14 Implement abbreviate-number helper. closes flarum/core#96 2015-05-30 08:08:57 +09:30
4edb95e9e2 Sync the discussion model/post stream when posts are added/removed 2015-05-29 18:56:29 +09:30
cafa6c7b5d New and improved post stream. 2015-05-29 18:17:50 +09:30
2741923714 Improvements to change/forgot password 2015-05-27 16:25:44 +09:30
6fed357605 Allow ActionButtons to be disabled 2015-05-27 16:21:15 +09:30
85ba97ed5c Improve appearance/behaviour of login/signup/forgot modals 2015-05-26 16:25:25 +09:30
5fc2f3aeee Better handling of API server errors 2015-05-26 11:43:20 +09:30
feb4676aa0 Very rough implementation of forgot password 2015-05-26 11:14:06 +09:30
3c7078b423 New user activity feed API.
Originally the user activity feed was implemented using UNIONs. I was
looking at make an API to add activity “sources”, or extra UNION
queries (select from posts, mentions, etc.) but quickly realised that
this is too slow and there’s no way to make it scale.

So I’ve implemented an API which is very similar to how notifications
work (see previous commit). The `activity` table is an aggregation of
stuff that happens, and it’s kept in sync by an ActivitySyncer which is
used whenever a post it created/edited/deleted, a user is
mentioned/unmentioned, etc.

Again, the API is very simple (see Core\Activity\PostedActivity +
Core\Handlers\Events\UserActivitySyncer)
2015-05-20 12:30:27 +09:30
1b4b03356a Better API error handling 2015-05-18 18:13:16 +09:30
e879a65a0c Show composer after discussion is reloaded following login 2015-05-18 15:38:19 +09:30
8cba7ad3f2 Clicking on an index nav item should always refresh the discussion list 2015-05-18 15:27:39 +09:30
3462dd68d2 Set document.title on every page 2015-05-18 14:28:15 +09:30
7f48a98af8 Make discussion edit permission specific to renaming 2015-05-18 12:34:03 +09:30
aa2bc23039 Drastically improve how the composer looks and behaves
- New, cleaner, more prominent look
- Make it statically positioned down the bottom on mobile, so you can
still scroll up to look at posts
- Fix some bugs with animation, jumping between views
2015-05-18 10:40:14 +09:30
a8a2596228 Properly initialise subtree retainers 2015-05-18 10:35:12 +09:30
fe81f71d73 Note for the future 2015-05-14 22:41:08 +09:30
be6b620457 Transform post time into a date 2015-05-14 22:41:06 +09:30
bb04d91b08 Add helper function for punctuating a list
e.g. [1,2,3] ⇒ [1, ‘, ‘, 2, ‘, and’, 3]
2015-05-14 22:41:06 +09:30
28aa7ed62f Add methods for doing stuff in text editor
Used by the mentions extension
2015-05-14 22:41:06 +09:30
a06a973d89 Only give dropdown menu items padding if they have an icon 2015-05-14 22:41:06 +09:30
dbf6a043a6 Automatically hook up onload/config functions
So that every component's DOM can be config'd by extensions
2015-05-14 22:41:06 +09:30
781dc2ef0c New component for post excerpts, which will be shown in search results
Perhaps also in user activity stream. They are used in the mentions
extension.

In order to generate the excerpt, each formatter can implement a
“strip” method which basically converts block formatting into inline
formatting.
2015-05-14 22:41:05 +09:30
0f3d7ceafe Don't let a discussion have an empty slug as it messes with the router 2015-05-07 16:53:57 +09:30
16c6bd4f23 Clean up discussion list retaining mechanism 2015-05-07 10:27:29 +09:30
ad042fb0ef Fix discussion list pagination 2015-05-07 08:58:04 +09:30
54f731942e Add user group badges 2015-05-06 11:25:19 +09:30
8e1ba5a2af Dasherize post/notification type class names 2015-05-06 08:32:33 +09:30
762137c6df Move discussion controls out of lib and into forum 2015-05-05 17:06:46 +09:30
e0936d8100 Add convenience method to get a record by a property 2015-05-05 17:05:16 +09:30
1eef01da05 Simplify model registration 2015-05-05 17:05:02 +09:30
220c1ac2d1 Change extend function so that a value doesn't have to be returned
override should be used instead to override the return value.
2015-05-05 17:04:42 +09:30
45ab262547 API for syncing added/removed posts after a discussion is updated 2015-05-04 12:17:26 +09:30
ae2930dc35 Show login modal if replying as guest; disable button if no permission
Also hide the first item in dropdown-split menus
2015-05-04 11:08:45 +09:30
538784744c Show login modal when starting a discussion as a guest 2015-05-04 10:44:03 +09:30
ebcf045ca1 Ability to clear a retained subtree 2015-05-04 10:43:40 +09:30
95c192c380 Fix logout redirection 2015-05-04 10:30:38 +09:30
f31973981c Fix override util super context 2015-05-04 10:30:29 +09:30
3ff0b806a4 All method should return an array, not an object 2015-05-02 08:47:10 +09:30
58833b9fdb Allow list items to specify a wrapper class 2015-05-02 08:46:52 +09:30
ea9d49b15e Allow extensions to easily override a function and call super 2015-05-02 08:46:38 +09:30
74bd697de9 Cleanup 2015-05-02 08:45:52 +09:30
b829edb07c Redraw after hiding modal 2015-05-02 08:45:24 +09:30
7d12f7853b Allow components to initialise props 2015-05-02 08:45:11 +09:30
5fad4acd76 Use new config keys 2015-05-02 08:44:03 +09:30
ffc2863f70 Extensibility: discussion list params
Also give the root controller the name of the current route so they can
easily route back to it
2015-05-02 08:43:38 +09:30
8bc09551bb Extract discussion controls into the model 2015-05-02 08:36:59 +09:30
4d04d801d1 Unify icon class name, change the way icons are floated in menus 2015-05-02 08:32:45 +09:30