Toby Zerner
c74b3434e7
Refactor notification list loading
...
So that notifications are reloaded (if needed) every time the
notifications dropdown button is clicked
2015-08-04 21:22:40 +09:30
Toby Zerner
61a06abd59
Allow discussion list to be refreshed without clearing it
2015-08-04 19:13:42 +09:30
Toby Zerner
26c87de317
Add an API to show a count in the document title
2015-08-04 19:04:17 +09:30
Toby Zerner
e091b037f3
Radically simplify user activity system
...
The activity system we were using was built around a separate table.
Whenever the user posted something, or deleted a post, we would sync
the table. The advantage of this was that we could aggregate activity
of all different types very efficiently.
It turns out that it came with a huge disadvantage: there was no
efficient way to enforce permissions on activity. If a user posted
something in a private tag, everyone could still see it on their
activity feed. My stopgap solution was to only sync activity for posts
that are viewable by guests, but that was way too limited.
It also turns out that aggregating activity of different types is
really not that useful, especially considering most of it is the user
making posts. So I've gotten rid of that whole overly-complicated
system, and just made the user profile display separate lists of posts
and discussions, retrieved from those respective APIs. The discussions
page is an actual discussion list too, which is pretty cool.
It's still technically possible to aggregate different activity types
(basically just aggregate API responses together), but we can do that
later if there's a need for it.
This is probably my favourite commit of the day :)
2015-08-04 18:44:22 +09:30
Toby Zerner
186bdc7fd4
Tweak some text/comments
2015-08-04 17:14:54 +09:30
Toby Zerner
5b3484d3c8
Improve error handling somewhat
...
- Fix composer crashing/not showing alert on error
- Make a general ValidationException which takes an array of field ⇒
messages to be outputted nicely by the API
2015-08-04 13:03:46 +09:30
Toby Zerner
b8a224f87b
Implement basic bio formatting. closes flarum/core#203
2015-08-04 11:41:47 +09:30
Toby Zerner
e6e2cdd3e9
Responsive fixes
...
- Make composer absolutely positioned on mobile to work around iOS 8/9
bug
- Make search results dropdown appear on mobile
closes flarum/core#137
2015-08-04 11:27:51 +09:30
Toby Zerner
00e5f94bce
Change the way composer is aligned
...
Also ensure that the correct body class is applied on the user page
2015-08-04 10:49:33 +09:30
Toby Zerner
8f4ef28475
Make the back button a functional link
2015-08-02 17:26:57 +09:30
Toby Zerner
d44ffd1866
Remove modal responsibility for loading UI; using loading button state
2015-08-02 17:25:05 +09:30
Toby Zerner
5876ee30ed
Remove old code
2015-08-02 17:22:18 +09:30
Toby Zerner
fde7afd3e2
Finish admin permissions page and clean up everything
2015-07-31 20:16:47 +09:30
Toby Zerner
d71d8f59c2
Clean up route definition code style
2015-07-29 20:58:49 +09:30
Toby Zerner
e863bd53d3
Get admin area working again
2015-07-29 20:58:22 +09:30
Toby Zerner
a58ac5345d
PERF: more efficient retaining of posts
2015-07-28 22:58:17 +09:30
Toby Zerner
fe16510e90
Prevent flicker when editing a post
2015-07-28 22:57:58 +09:30
Toby Zerner
1c1d4f5f37
PERF: more efficient retaining of discussion list items
2015-07-28 22:39:03 +09:30
Toby Zerner
42d02569ac
Make sure discussion list is refreshed if it needs to be
2015-07-28 21:24:38 +09:30
Toby Zerner
ce54f06e42
Don't close notifications dropdown if opening in a new tab
2015-07-28 18:51:53 +09:30
Toby Zerner
acfa49b027
PERF: hide discussion list pane on mobile
2015-07-28 18:17:51 +09:30
Toby Zerner
5a2c00e41d
Make sure slidable parameters are reset correctly
2015-07-28 17:37:46 +09:30
Toby Zerner
85831a62ee
Update the composer height on redraw
...
For some reason, the text editor isn't being retained across route
changes, and it loses its height style. This reapplies it on every
redraw.
2015-07-28 17:26:03 +09:30
Toby Zerner
97334bea12
Don't display notifications with deleted subjects
2015-07-28 17:15:09 +09:30
Toby Zerner
40112ae553
Refactor composer live previews for better performance
2015-07-28 16:06:25 +09:30
Toby Zerner
b87cd3ed53
Fix scrolling to the bottom of an item
2015-07-28 15:26:51 +09:30
Toby Zerner
697cb2ed63
Supporting routing of URL with nothing after the discussion ID
...
closes flarum/core#181
2015-07-28 13:46:43 +09:30
Toby Zerner
e2a4cf5ccb
Add preview button to composer
2015-07-28 13:34:42 +09:30
Toby Zerner
f07ab4633b
Add ability to refresh index page by clicking on logo. closes flarum/core#188
2015-07-28 12:27:45 +09:30
Toby Zerner
7a67d3ab95
Fix swiping to the right to mark as read
2015-07-28 12:15:45 +09:30
Toby Zerner
283dcad848
Fix Safari header redraw problem. closes flarum/core#187
2015-07-28 10:13:58 +09:30
Toby Zerner
427450f137
Fix attribute name
2015-07-27 19:54:15 +09:30
Toby Zerner
e257454343
Make formatText util an object so it can be extended
2015-07-27 14:17:12 +09:30
Toby Zerner
ab6b44f2db
Update gulp module configuration
2015-07-27 14:16:55 +09:30
Toby Zerner
aec641d65b
Use System.get instead of System.import
...
Means we get drop Promise polyfill
2015-07-27 14:16:39 +09:30
Toby Zerner
aaffbe4aa8
Selectively construct request params
2015-07-27 12:44:24 +09:30
Toby Zerner
b2badde77f
Always show results container to ensure it gets config'd
2015-07-27 12:32:30 +09:30
Toby Zerner
00de9ee9a4
Another pages loading count fix
2015-07-27 12:28:03 +09:30
Toby Zerner
cdb26eb226
Prevent pages loading count from going negative
2015-07-27 12:23:36 +09:30
Toby Zerner
de210108c3
Make sure pages loading count is kept in sync
2015-07-27 12:16:05 +09:30
Toby Zerner
3467aa9e90
Start loading the next page of posts immediately
2015-07-27 12:12:07 +09:30
Toby Zerner
b01b4b04d3
Fix user page display on mobile
2015-07-23 20:24:05 +09:30
Toby Zerner
e698e2220b
Fix translation key
2015-07-23 16:38:51 +09:30
Toby Zerner
512c2b10f4
Redraw after loading missing posts
2015-07-23 16:38:39 +09:30
Toby Zerner
6c8144f90a
Set default item priorities
2015-07-23 16:38:30 +09:30
Toby Zerner
61e4763c68
Componentize welcome hero close button
2015-07-23 14:47:27 +09:30
Toby Zerner
806f67f7eb
Anchor scroll to bottom when live previewing reply
2015-07-23 14:32:49 +09:30
Toby Zerner
1e74d57526
Fix notification list appearance
2015-07-23 14:32:21 +09:30
Toby Zerner
ce5e4b6c0f
Don't allow includes to be specified
...
Relations must be set to include by default on the API instead
2015-07-23 14:31:46 +09:30
Toby Zerner
65feedc891
Fix discussion list not rendering for guests
2015-07-23 14:31:07 +09:30
Toby Zerner
497b65289e
Fix sign up modal
2015-07-23 14:30:55 +09:30
Toby Zerner
a30f591c15
Fix activity page load more button appearance
2015-07-22 16:05:38 +09:30
Toby Zerner
017c258e46
Live preview of post editing/replying thanks to TextFormatter 👏
2015-07-22 16:05:00 +09:30
Toby Zerner
a0fe68272c
Implement TextFormatter for posts
...
Get rid of formatting on user bios, we'll do that with JavaScript
2015-07-22 16:03:48 +09:30
Toby Zerner
d40c28a370
Tweak display of badges in the discussion hero
2015-07-22 09:58:14 +09:30
Toby Zerner
e1a51f095f
Random cleanup
2015-07-22 09:57:25 +09:30
Toby Zerner
a66db6323a
Fix search routing
...
Blurring the input causes a redraw, which hides the results and
invalidates the current index. So the routing wasn't working.
Drawer is now hidden on IndexPage construction.
2015-07-22 09:52:58 +09:30
Toby Zerner
9af141ce0b
Hide the drawer/modal when constructing all pages
...
Might be better to do this on config... also extract it into a parent
"Page" component
2015-07-22 09:51:41 +09:30
Toby Zerner
d0c8777430
PERF: fix subtrees never being retained if "mark all as read" was clicked
...
I didn't realise, performance was terrible for people who have ever
clicked the "mark all as read" button!
2015-07-22 09:50:55 +09:30
Toby Zerner
a7baab8a86
Fix discussion composer title field not focusing editor on 'enter'
2015-07-22 09:49:25 +09:30
Toby Zerner
0cb3378658
Merge branch 'evented-api'
2015-07-21 10:40:38 +09:30
Toby Zerner
aff859d7ea
Cleanup unused import
2015-07-20 18:14:03 +09:30
Toby Zerner
6b601ae2d6
Only render posts with the discussion relationship
2015-07-20 18:13:40 +09:30
Toby Zerner
7dd7b3f32c
Separate icon from notification grid labels
2015-07-20 18:12:30 +09:30
Toby Zerner
53c621d999
Update event post API
...
- Use more appropriate component class name
- Allow username to be moved in translation
2015-07-20 18:12:08 +09:30
Toby Zerner
82f1daeef4
Change discussion list sorting labels
2015-07-20 18:11:04 +09:30
Toby Zerner
23dd966b45
Rename method
2015-07-20 18:10:32 +09:30
Toby Zerner
741b9b0ea5
Render discussion hero badges properly
2015-07-20 18:10:21 +09:30
Toby Zerner
6b7cf1b6bf
Rework extension bootstrapping
...
System JS modules don't execute when they're registered, so we need to
import them explicitly. While we're at it, we may as well make the
locale bootstrapper a module too.
2015-07-20 18:08:28 +09:30
Toby Zerner
f977658417
PERF: Only show search results when field has focus
2015-07-18 22:58:26 +09:30
Toby Zerner
24f100899c
Don't apply background color if there is none
2015-07-18 10:55:56 +09:30
Toby Zerner
0af9784a59
Fix bad translation key
2015-07-18 10:11:42 +09:30
Toby Zerner
f93ff7cb3f
Make front-end localizable
2015-07-17 17:43:28 +09:30
Toby Zerner
a9ded36b57
Major CSS revamp
...
- Get rid of Bootstrap (except we still rely on some JS)
- Use BEM class names
- Rework variables/theme config
- Fix various bugs, including some on mobile
The CSS is still not ideal – it needs to be cleaned up some more. But
that can be a focus for after beta.
2015-07-17 14:47:49 +09:30
Toby Zerner
76678f72f2
Case-sensitive filename changes
2015-07-15 15:54:34 +09:30
Toby Zerner
ab6c03c0cc
Massive JavaScript cleanup
...
- Use JSX for templates
- Docblock/comment everything
- Mostly passes ESLint (still some work to do)
- Lots of renaming, refactoring, etc.
CSS hasn't been updated yet.
2015-07-15 14:01:11 +09:30
Toby Zerner
a74623c718
Make admin open in a new window
2015-07-08 10:51:16 +09:30
Toby Zerner
42f1fa1272
Improve fulltext search API and interface
2015-07-07 20:35:18 +09:30
Toby Zerner
4c5cf96b95
Fix discussion search result suggestion excerpts
...
So that they show the relevant part of the post
2015-07-07 16:16:20 +09:30
Toby Zerner
013d11554d
Add discussion list refresh button
...
Closes flarum/core#139 . Haven’t done pull to refresh yet though, but
that can come later.
2015-07-07 15:32:08 +09:30
Toby Zerner
e1a65380ef
Tweak discussion list styles some more
2015-07-07 15:30:48 +09:30
Toby Zerner
99876e9e36
Initial refactor of client actions, data preloading, SEO
...
An initial stab at flarum/core#126 . Still WIP. Preliminary
implementation of flarum/core#128 and flarum/core#13 .
2015-07-07 15:29:21 +09:30
Toby Zerner
fcc5aa17ea
Tweak discussion list contextual controls
2015-07-07 09:21:43 +09:30
Toby Zerner
c06639fdc8
This should've been with the last commit
...
I blame GitHub for Mac again :]
2015-07-07 09:21:27 +09:30
Toby Zerner
5fe88e448e
Improve post stream
...
- Return all discussion post IDs from API requests which add/remove
posts, so the post stream updates appropriately. Related to #146
- Always unload posts that are two pages away, no matter how fast
you’re scrolling
- Retrieve posts from cache instead of reloading them
- Fix various bugs. Maybe #152 , needs confirmation
2015-07-06 16:26:27 +09:30
Toby Zerner
330e60871a
Fix read tracking not working
2015-07-05 13:58:07 +09:30
Toby Zerner
31474764ee
Fix post scrubber unread indicator overflow
2015-07-05 13:53:06 +09:30
Toby Zerner
1d21670663
New look for discussion reply/unread count
...
Also decrease the max page width by 100px
2015-07-05 13:52:46 +09:30
Toby Zerner
a74b40fe47
Massive refactor
...
- Use contextual namespaces within Flarum\Core
- Clean up and docblock everything
- Refactor Activity/Notification blueprint stuff
- Refactor Formatter stuff
- Refactor Search stuff
- Upgrade to JSON-API 1.0
- Removed “addedPosts” and “removedPosts” relationships from discussion
API. This was used for adding/removing event posts after renaming a
discussion etc. Instead we should make an additional request to get all
new posts
Todo:
- Fix Extenders and extensions
- Get rid of repository interfaces
- Fix other bugs I’ve inevitably introduced
2015-07-04 12:24:48 +09:30
Toby Zerner
e18d8b35e5
Refactor component API a bit
2015-06-26 19:09:43 +09:30
Toby Zerner
5202ce00c4
Split up post controls into "user", "moderation", "destructive"
2015-06-26 16:15:30 +09:30
Toby Zerner
fe82631f95
Tweak user bio editing UI
2015-06-26 13:57:21 +09:30
Toby Zerner
0526e223e4
Always show composer header. closes flarum/core#112
2015-06-26 12:18:13 +09:30
Toby Zerner
8f6b373ea1
Constrain the unread part of the scrubber to after the handle
2015-06-26 12:09:59 +09:30
Toby Zerner
e887d75b8b
Show badges in notifications
2015-06-26 12:09:28 +09:30
Toby Zerner
6acc6698f5
Don't clear filter when search is cleared
2015-06-26 12:08:46 +09:30
Toby Zerner
9e6ad1f244
Only show search suggestion excerpt if we have it
...
We won’t have it if we didn’t do a fulltext search
2015-06-26 12:08:23 +09:30
Toby Zerner
35c05862a4
Fix unwanted onbeforeunload message
2015-06-26 11:57:52 +09:30
Toby Zerner
cbd3509ad2
More accurate scrubber height resizing
2015-06-25 15:34:34 +09:30
Toby Zerner
aec6a4b86c
Fix faulty detection of touch device
2015-06-25 15:34:14 +09:30