Commit Graph

421 Commits

Author SHA1 Message Date
f2056c4acf Clean up post type API 2015-05-05 14:28:40 +09:30
701eb6c2dd Clean up discussion renamed notification 2015-05-05 14:27:59 +09:30
bf593504c7 Clean up event handlers 2015-05-05 14:27:47 +09:30
24481f3f77 Change API for serializer relationships 2015-05-05 14:26:53 +09:30
3726c97d5c Remove old code 2015-05-05 09:17:00 +09:30
f0219de93f Fix admin 2015-05-05 09:16:53 +09:30
342c8db5bd Share bower components between forum/admin 2015-05-05 09:16:34 +09:30
56ef42f931 Add concept of "mergeable" activity posts
For example: when you rename a discussion, DiscussionRenamedPost is
created. If you rename it again immediately afterwards, then a new
DiscussionRenamedPost can be merged into the old one. This will either
result in the old one being updated with the new title, or it being
deleted all together if it was renamed back to the old title.
2015-05-04 12:19:25 +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
0a2c05379c Update TokenAction for new architecture 2015-05-04 10:30:56 +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
2288be12ff Fix issue with Mithril 0.2.0 (invalid m.route call) 2015-05-04 10:30:06 +09:30
041bef1f78 Update mithril 2015-05-04 10:29:38 +09:30
9af9dce740 Add ExtensionsServiceProvider to load enabled extensions 2015-05-04 08:56:19 +09:30
67f64b631a Pass action in RenderView event so that handler can access actor 2015-05-04 08:55:44 +09:30
850a49285b Add API to define custom model relationships 2015-05-04 08:55:03 +09:30
abe7b1fd2e Don't enable pane pinned by default 2015-05-04 08:54:47 +09:30
9dd56bf0a4 Prevent error when discussion doesn't have any posts 2015-05-03 12:09:05 +09:30
d9d190b772 Gracefully handle non-existent/deleted users during rendering 2015-05-03 12:08:41 +09:30
f2e2d59e6f Use new sort criteria format 2015-05-03 12:08:12 +09:30
f03f046efe Add event to modify user search 2015-05-03 12:07:15 +09:30
d966c9831a Add event for registering user search gambits 2015-05-03 12:06:01 +09:30
b38878da80 Add delete avatar action 2015-05-03 12:05:18 +09:30
29be20c91a Fix incorrect function call 2015-05-03 12:04:57 +09:30
8f29679b46 Convert the rest of the API to new action architecture
Also make some tweaks:
- Merge SerializeAction::$include and
SerializeAction::$includeAvailable into a keyed boolean array
- Set defaults for SerializeAction::$limit and $limitMax
- Rename SerializeAction::$sortAvailable to $sortFields
2015-05-03 12:04:43 +09:30
4cb9ed851d Slightly thicken the post highlight border again 2015-05-03 11:53:37 +09:30
318e8d2f33 Use new config property name in avatar editor 2015-05-03 11:53:11 +09:30
ecdb2becd4 Assign user input to data property on EditDiscussionCommand 2015-05-02 09:01:27 +09:30
f67f34e287 Add removed posts as an API attribute 2015-05-02 09:00:22 +09:30
8ee9480205 Update discussion/post sort semantics inline with new API actions
Instead of $sort and $order being separate, they are now a single
array, allowing multiple sort criteria: `[‘foo’ => ‘asc', ‘bar’ =>
‘desc’]`
2015-05-02 09:00:07 +09:30
22ff8a203d Make sure serializers work with relations implemented with magic (via __call) 2015-05-02 08:58:28 +09:30
db31d9f772 Making a note that we should not use Actor as a singleton 2015-05-02 08:57:14 +09:30
a426fa6560 Update API action architecture
- An API action handles a Flarum\Api\Request, which is a simple object
containing an array of params, the actor, and optionally an HTTP
request object
- Most API actions use SerializeAction as a base, which parses request
input according to the JSON-API spec (creates a JsonApiRequest object),
runs the child class method to get data, then serializes it and assigns
it to a JsonApiResponse (standard HTTP response with a
Tobscure\JsonApi\Document as content)
- The JSON-API request input parsing is subject to restrictions as
defined by public static properties on the action (i.e. extensible)
- Also the actor is given to the serializer instance now, instead of
being a static property
2015-05-02 08:56:43 +09:30
5ea864ba89 Make post highlight more subtle 2015-05-02 08:48:35 +09:30
8bc9552e83 Tweak composer styles
- Make minimised content look nicer, non-interactive
- Fix margins on tablet
2015-05-02 08:48:18 +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
3796193291 Only add a post to the post stream once 2015-05-02 08:44:52 +09:30
e9f0ef83b0 Remove posts from the post stream by ID 2015-05-02 08:44:42 +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
288fd694a8 Extensibility: data when starting a new discussion 2015-05-02 08:39:44 +09:30