Commit Graph

665 Commits

Author SHA1 Message Date
Toby Zerner
66a39bbbf5 Fix buttons being given incorrect title 2016-04-08 13:38:50 +09:30
Toby Zerner
6dd190114d Retain global page components between routes 2016-04-08 13:38:16 +09:30
Sajjad Hasehmian
ffaafb92d4 Update app.js 2016-04-07 22:59:01 +04:30
Franz Liedke
37d7f315d3 Fix locale key 2016-04-01 10:49:11 +09:00
Toby Zerner
b799039c29 Fix commas in new DiscussionRenamedPost tooltip. ref #428 2016-04-01 12:02:51 +10:30
Franz Liedke
895281acb2 DiscussionRenamedPost: Always show new title, show old title in tooltip
Refs #428.
2016-04-01 10:07:34 +09:00
Franz Liedke
42c9086c32 Improve Button component to only show tooltip if textual content is available 2016-04-01 09:51:18 +09:00
Toby Zerner
210bbc800a Fix settings not automatically showing when an extension is enabled 2016-03-31 17:11:23 +10:30
Franz Liedke
f97ebfcbc0 Remove leftover function 2016-03-31 15:12:07 +09:00
Franz Liedke
328a244f92 Fix DiscussionRenamedPost not being redrawn when toggling
Closes #428.
2016-03-31 09:35:19 +09:00
Franz Liedke
d6c6e78193 Make DiscussionRenamedPost spread across three lines
This also adds a little button for expanding / collapsing this additional information.
It is expanded by default right now because I could not get the toggling to work yet.

Refs #428.
2016-03-30 22:13:08 +09:00
Franz Liedke
bc11ec68dd Extract EventPost description into separate method
This makes it easier to override in subclasses.
In preparation for #428.
2016-03-30 20:41:15 +09:00
Franz Liedke
9ae189bb9f Only update human time objects every ten seconds 2016-03-30 19:47:40 +09:00
Franz Liedke
179fcfb3ca Show full button content as tooltip
Refs #494.
2016-03-30 10:04:08 +09:00
Franz Liedke
51da153592 extractText: Avoid unnecessary variable 2016-03-30 09:59:54 +09:00
Franz Liedke
25d18d79fb Revert "Use GroupBadge component since we already have that"
This reverts commit eb76767e70.
2016-03-29 22:46:23 +09:00
Franz Liedke
eb76767e70 Use GroupBadge component since we already have that 2016-03-29 22:39:26 +09:00
Franz Liedke
98c4883cfd Remove unused mixin imports 2016-03-29 22:32:15 +09:00
Franz Liedke
dbbbc689bb Prevent humanTime helper to generate future times
Fixes #592.
2016-03-29 22:23:11 +09:00
Franz Liedke
16b229649a Use group ID instead of name in generated class names
This fixes #847.
2016-03-29 22:08:44 +09:00
Toby Zerner
76ea6f3695 Clean up unused code 2016-03-28 15:46:52 +10:30
Toby Zerner
7120ba2050 Add specific error message when an email address is not found in forgot password modal 2016-03-28 15:46:20 +10:30
Toby Zerner
a5c8ef0566 Tweak user email confirmation alert
- Make sure is_activated is serialized to a bool (otherwise "0" will evaluate to true)
- Remove "error" class from message so it's more friendly
- Make the alert more prominent by mounting it into a new div at the top of the page
- Add loading UX to the resend button
2016-03-23 22:17:42 +10:30
Sajjad Hasehmian
b13adfec84 Show alert for unverified User 2016-03-22 18:52:32 +04:30
Toby Zerner
820752f61c Oops, back to Mithril 0.2.3! 2016-03-21 21:25:00 +10:30
Toby Zerner
1ca1639139 Extract sortMap variable
Also revert previous uncommitted change in dist file
2016-03-18 10:06:58 +10:30
Toby Zerner
65f2d84d55 Fix "sort by" dropdown being empty
Must be something in the latest version of Chrome that caused this to start being a problem, because @franzliedke started experiencing it a few days ago, and I only just experienced it for the first time yesterday.
2016-03-18 09:37:25 +10:30
Toby Zerner
cf63e063ba Fix regression with maintenance of scroll position when jumping between discussion list filters 2016-03-18 09:36:09 +10:30
Toby Zerner
1395ce6c30 Upgrade to flarum-gulp 0.2.0 / Babel 6 2016-03-18 09:31:01 +10:30
Sajjad Hasehmian
5097d7f9a4 Update Mithril 2016-03-16 00:48:01 +03:30
Toby Zerner
8087d9ea47 Add missing super.init calls 2016-03-11 13:45:38 +10:30
Toby Zerner
d1c436c4d5 Dramatically improve performance when typing in a modal
Since Mithril doesn't really offer granular redraw control, typing in a text input on a modal would trigger a redraw for the whole page (including the page content behind the modal) on every keystroke. This commit allows components to be "paused" so that their vdom subtree will be retained instead of reconstructed on subsequent redraws. When a modal is opened, we pause the main page component, and when it's closed, we unpause it. This means that while a modal is visible, only the content inside of the modal will be redrawn, dramatically improving performance.
2016-03-11 13:18:16 +10:30
Toby Zerner
e37c7a9b06 Remove sudo mode and add password confirmation when changing email address
closes #674
2016-03-11 12:44:18 +10:30
Toby Zerner
e2e5ac8c0c Fix browser back button losing scroll position. ref #835 2016-03-10 17:55:35 +10:30
Toby Zerner
cdbc4b9717 Fix regressions related to deleting posts
- On the front-end, correct the check to see if the discussion has no more posts
- On the back-end, run a query to count the posts instead of using the comments_count, because the comments_count does not include other deleted posts
2016-02-29 18:41:59 +10:30
Toby Zerner
c7b6426fd4 Delete a discussion when its last post is deleted. fixes #823 2016-02-26 13:26:09 +10:30
Toby Zerner
acdb1ff749 Revert #687 + #197. fixes #785
Unfortunately we have no way to calculate the number of comment posts that are previous to the current viewing position of the discussion, without loading all of the posts which is going to be too expensive (even if we do it selectively somehow).
2016-02-26 13:11:52 +10:30
Toby Zerner
50e56ac0a1 Recompile admin JS 2016-02-26 12:50:03 +10:30
Toby Zerner
82fc4dd483 Refactor Composer rendering for smoother animations
Also fixes a couple of miscellaneous bugs:
- Minimise the Composer when clicking the preview button in full-screen mode on desktop.
- Minimise the Composer when clicking the link to the discussion/post in the header on mobile/full-screen mode.
2016-02-26 12:49:49 +10:30
Toby Zerner
05fe4446bf Fix crash when displaying a discussion with no posts. closes #823 2016-02-22 22:22:49 +10:30
Toby Zerner
71d2e71908 Condense into value/oninput into bidi 2016-02-22 21:22:18 +10:30
Sajjad Hasehmian
2143a96c19 Fix login box autocomplete 2016-02-16 21:08:45 +03:30
Daniel Klabbers
191589e2b1 Implemented extensions as an object, usable by backend and frontend. 2016-02-10 15:13:51 +01:00
Sajjad Hasehmian
b3035c18b6 Remove "Mark as Read" confirmation fixes #782 2016-02-10 10:50:24 +03:30
Toby Zerner
24ed2c0d8f Update Mithril 2016-02-06 18:58:34 +10:30
Toby Zerner
173f88da92 Better post scrubber size calculations. fixes #109 2016-02-06 18:47:09 +10:30
Franz Liedke
97979b2189 Store discussion slug in database table
In preparation for #646.
2016-02-04 11:46:30 +01:00
Toby Zerner
efff4c1801 Add priorities to user page sidebar items 2016-01-31 17:11:13 +10:30
Toby Zerner
db06b8c71a Fix mistake in previous commit 2016-01-19 19:07:06 +10:30
Toby Zerner
3cec7e8b46 Patch Mithril bug causing redraws to fail
Turns out there's a little more to the regression in e5a7013. First, we need to give the spaces in between list items a key too. Second, there's a bug in the latest Mithril code where using string keys can break the diffing algorithm. I've patched it manually in our dist JS files for now, and reported the issue: https://github.com/lhorie/mithril.js/issues/934
2016-01-19 18:55:57 +10:30
Toby Zerner
60d78cedef Update bower dependencies, fix redraw regression
- In Mithril, `finally` has been removed from promise objects as it is not part of the ES spec. See https://gist.github.com/jish/e9bcd75e391a2b21206b for info on the substitute.
- Fix a regression introduced in e5a7013 which broke some redraws
2016-01-19 17:59:19 +10:30
Toby Zerner
9b5ec9d7ba Commit latest dist files
See https://github.com/flarum/core/issues/727#issuecomment-172384020
2016-01-19 16:52:01 +10:30
dcsjapan
be924c4fa0 Extract translations for the Add Extension modal
- Extracts three translations for this placeholder dialog.
- Adds a forum link to one of the translations.
2016-01-19 10:16:07 +09:00
Toby Zerner
aaab2cc86e Clear search when input is empty and enter is pressed. fixes #650 2016-01-13 10:06:04 +10:30
Toby Zerner
e5a7013c2c Key item lists to maintain identity across redraws
Fixes #667. This issue was due to the fact that Mithril would change the "Lock" badge into a "Sticky" badge, but the tooltip initialization would not be triggered because it was using the same element. By maintaining element identity, the "Lock" badge will remain untouched, and a new element for the "Sticky" badge will be inserted before it. See https://lhorie.github.io/mithril/mithril.html#dealing-with-focus for more information.
2016-01-13 09:34:12 +10:30
Sajjad Hasehmian
02bcb0f898 Add flash animation when scrolling to post preview fixes #666 🤘 2016-01-12 10:58:19 +03:30
Bogdan Teodoru
5120d9577e #679 Ask for confirmation before "Mark all as Read" 2016-01-12 08:23:02 +02:00
Sajjad Hasehmian
15398fcc6d Add rel="nofollow" to bio links (fixes #449) 2016-01-11 13:29:01 +03:30
Bogdan Teodoru
1f5219f2a2 #679 Ask for confirmation before "Mark all as Read" 2016-01-10 17:20:01 +02:00
Toby Zerner
1aaf588341 Merge branch 'scrubber-display-only-comments' of https://github.com/ahsanity/core 2016-01-02 12:04:04 +10:30
Toby Zerner
0fcc8dca46 Merge pull request #676 from petermein/user-online-indicators
User online indicators
2016-01-02 09:34:11 +10:30
Toby Zerner
bf87518161 Use username helper when displaying user search results 2015-12-30 15:26:54 +10:30
Peter Mein
8c8de8eb22 Fixed name to camel case 2015-12-26 13:06:58 +01:00
Peter Mein
5431a90dbd Changed case on helper function
Stub for renaming case of file
2015-12-26 13:06:31 +01:00
Ahsanul Bari
7a8c7518bd Issue #197: Make PostStreamScrubber display numbers relating to only comment posts 2015-12-25 13:01:42 +06:00
Toby Zerner
9cb45c98d8 Extract notification settings into an item list 2015-12-21 10:38:15 +10:30
Peter Mein
fbcd2cf88c Added missing import 2015-12-16 13:48:38 +01:00
Peter Mein
e55b7a14e5 Added user online indicator to post 2015-12-16 13:43:46 +01:00
Toby Zerner
c97b01a445 Log in immediately after registration
Newly-created accounts are allowed to log in straight away, but they still have the permissions of a guest until they've confirmed their email address. Instead of showing a success message after registration, we reload the page since they're already logged in.

Still todo: show a message explaining that they need to verify their email address to do anything, and allow it to be resent.
2015-12-05 15:22:25 +10:30
Toby Zerner
b0b3af0305 Improve LoginButton styles, make popup window smaller 2015-12-05 15:19:24 +10:30
Toby Zerner
1cfae4ad14 Merge branch 'sudo-mode'
# Conflicts:
#	CHANGELOG.md
2015-12-03 15:12:51 +10:30
Toby Zerner
9896378b59 Overhaul sessions, tokens, and authentication
- Use cookies + CSRF token for API authentication in the default client. This mitigates potential XSS attacks by making the token unavailable to JavaScript. The Authorization header is still supported, but not used by default.
- Make sensitive/destructive actions (editing a user, permanently deleting anything, visiting the admin CP) require the user to re-enter their password if they haven't entered it in the last 30 minutes.
- Refactor and clean up the authentication middleware.
- Add an `onhide` hook to the Modal component. (+1 squashed commit)
2015-12-03 15:11:57 +10:30
Toby Zerner
81a1c0955b Fix some issues with dropdown positioning 2015-12-03 14:51:55 +10:30
Toby Zerner
05386b1259 Clean up 2015-12-03 14:51:35 +10:30
dcsjapan
c432ed7d5c Add third-level namespacing to deleted_user_text 2015-11-30 11:17:11 +09:00
dcsjapan
4bfbf68bca Extract leftover strings
Extracts strings that were missed previously in:
- Dashboard page of admin interface.
- Edit Custom CSS modal of admin interface.
- Settings modal of admin interface.
- Post activity list on user page of forum UI.
Hopefully there aren't any more!
2015-11-28 17:14:22 +09:00
Franz Liedke
b3a5822ddb Rename HTTP method override header
This is the name recommended by the JSON-API spec:
http://jsonapi.org/recommendations/#patchless-clients
2015-11-26 17:43:32 +01:00
young
a80d72d165 Fix #627 2015-11-26 02:03:00 +08:00
Toby Zerner
2c4fae60bc Allow provision of an avatar URL to upload during sign up
This can be used by authentication extensions (i.e. mirror Facebook/Twitter profile picture). Rough implementation, needs refactoring.
2015-11-23 11:53:57 +10:30
Toby Zerner
7eab206f91 Don't pad the body when the composer is positioned absolutely (on mobile) 2015-11-23 10:07:23 +10:30
Toby Zerner
599958354c Refactor composer preview logic 2015-11-23 08:47:16 +10:30
Toby Zerner
c79bda6279 Fix composer preview button on mobile. closes #196 2015-11-21 13:16:25 +10:30
Toby Zerner
6374f92676 Improve composer appearance/usability on mobile
On mobile:
- Move submit button to right side of toolbar
- Move first header item to toolbar
- Size textarea correctly
2015-11-21 13:16:05 +10:30
Toby Zerner
1f4e03d1fa Make sure dropdowns stay within the viewport horizontally too 2015-11-20 12:35:07 +10:30
Toby Zerner
acf67ca416 Add a "load more" button to the end of the post stream
This is necessary if the page is viewed in a context with no scrolling, i.e. an auto-resizing iframe
2015-11-20 12:35:07 +10:30
young
095e8164e8 Update LogInModal.js 2015-11-06 15:54:06 +08:00
Franz Liedke
0bdf873e65 Fix another error handling regression 2015-11-05 14:17:48 +01:00
Toby Zerner
4734dbf46d Release 0.1.0-beta.4 2015-11-05 16:29:13 +10:30
Toby Zerner
783a14610a Revert back button behaviour
As of 25932cf, the back button was no longer shown if the user came in directly to a discussion. This caused problems on mobile where it was kind of hard to get back home without the button.
2015-11-05 16:24:04 +10:30
Toby Zerner
96b85f1330 Use icon instead of "Discussions" text, fix bugs
- Fix admin page crash
- Only show invisible pin button on desktop; hide it completely on ≤ tablet
2015-11-03 15:54:06 +10:30
Toby Zerner
25932cf7c4 Add label to back button, change behaviour
The back button longer shows if the user hasn't actually navigated anywhere. e.g. if they come in directly to a discussion, it will be hidden.
2015-11-03 15:54:05 +10:30
Toby Zerner
d497782f65 Release 0.1.0-beta.3 2015-11-03 10:01:52 +10:30
Toby Zerner
119d1721e0 Revert e1315d2; always attempt to parse JSON
This way if there is a PHP error which outputs a 200 OK text/html response, Flarum will correctly show an error message.
2015-10-31 14:49:14 +10:30
Toby Zerner
eb571c5595 Change ItemList API 2015-10-30 22:45:58 +10:30
Toby Zerner
e1315d27a4 Only parse as JSON if appropriate content type 2015-10-29 17:52:52 +10:30
Toby Zerner
7127bea15e Solidify ItemList API 2015-10-29 17:52:52 +10:30
Toby Zerner
5e2f659f54 Extract method to get the permalink to a post
Necessary so that the embed extension can override it.
2015-10-27 12:09:24 +10:30
Toby Zerner
f3612261ec Improve logic to see if post has been fully loaded
Should fix #295 once and for all.
2015-10-24 13:17:25 +10:30
Franz Liedke
e95cb09caa Recompile JavaScript 2015-10-22 10:16:08 +02:00
Toby Zerner
415b68f84f Add flood control
closes #271
2015-10-22 16:57:48 +10:30