Toby Zerner
4041c18014
Further tweaks to post layout
...
Move footer after actions so that we'll be able to have larger things
in the footer (e.g. Answers) without pushing down the controls.
2015-09-18 14:38:57 +09:30
Toby Zerner
514eec7466
Clean up
2015-09-18 13:29:50 +09:30
Toby Zerner
4752142c11
Reflect composer's focus state in a property
2015-09-18 13:15:58 +09:30
Toby Zerner
6582c5fcf0
Smooth out initial composer slide animation
2015-09-18 13:14:12 +09:30
Toby Zerner
6fff3cc0dc
Add abstract SettingsModal component in admin app
...
Makes building settings modals (that update basic config values) a
whole lot quicker/easier.
2015-09-18 13:13:25 +09:30
Toby Zerner
0b406a06a1
Patch Mithril with a bidi attribute
...
Enables quick bidirectional bindings. So instead of this:
<input value={prop()} oninput={m.withAttr('value', prop)}/>
... we can do this:
<input bidi={prop}/>
2015-09-18 13:06:37 +09:30
Toby Zerner
1fc369c59e
Cleanup, update changelog
2015-09-18 13:01:31 +09:30
Toby Zerner
dbd33f687c
Remove "custom" home page input
...
Also add an API to let extensions define additional default route
options.
Allowing default routes with parameters (e.g. /d/123) is very difficult
because of the way Mithril routing works, and it doesn't have a
convincing use-case to justify the trouble. So I've removed the custom
input altogether.
closes #427
2015-09-17 12:56:39 +09:30
Franz Liedke
9767bce1e3
Move dropdown mouseover to correct location
...
Related to #496 .
2015-09-16 09:00:33 +02:00
Franz Liedke
ffcba1f173
Always use label as tooltip for header icons
...
Closes #496 .
2015-09-16 08:45:45 +02:00
Toby Zerner
b0da51309e
Copy properties when monkey-patching
2015-09-16 16:03:25 +09:30
Toby Zerner
8414a59908
Don't use a default dropdown label
2015-09-16 10:12:49 +09:30
Toby Zerner
e524c59f97
Improve external authentication API
...
Some providers (e.g. Twitter) don't expose user email addresses, so it
turns out we can't use that as the sole form of identification/account
matching.
This commit introduces a new `auth_tokens` table which stores arbitrary
attributes during the sign up process. For example, when Twitter is
authenticated, a new auth token containing the user's Twitter ID will
be created. When sign up is completed with this token, that Twitter ID
will be set as an attribute on the user's account.
2015-09-15 15:56:48 +09:30
Toby Zerner
cac670e699
Focus on username field when login buttons are present
2015-09-15 13:04:45 +09:30
Toby Zerner
fa265152c7
Clean up new post layout
2015-09-15 12:42:03 +09:30
Toby Zerner
5c98a08e0f
Merge branch 'master' into compact-posts
2015-09-15 11:27:49 +09:30
Toby Zerner
6beb4fe898
Add external authenticator (social login) API
...
Allows registrations to be completed with a pre-confirmed email address
and no password.
2015-09-15 11:27:31 +09:30
Toby Zerner
8cccaaaf6b
Improve API error handling
...
- Change 'path' key to 'source.pointer', as per spec
- Add 500 error detail if debug mode is on
2015-09-14 15:40:07 +09:30
Toby Zerner
d5b58b3146
Only set XHR authorization header if token isn't empty
2015-09-14 14:49:11 +09:30
Toby Zerner
f00d2b1363
Remove unused component
2015-09-14 14:48:05 +09:30
Toby Zerner
efff485d6c
Restyle posts to be more compact, relocate controls
2015-09-08 10:29:00 +09:30
Toby Zerner
6a5427b600
Make unread discussion titles less overwhelming
2015-09-08 10:27:50 +09:30
Toby Zerner
e8621636c5
Add init hook as a way to effectively monkey patch constructors
...
Related to #246
2015-09-08 10:27:02 +09:30
Toby Zerner
8c4e095f23
Allow first post to be hidden/restored
...
Anti-spam extensions may automatically hide the first post in a
discussion, and thus we had to implement smarter permissions so
discussions with zero posts wouldn't be visible to users other than the
author/mods. This change allows those hidden posts to be restored again.
2015-09-07 16:03:45 +09:30
Toby Zerner
f6e21b75e1
Remove unused translations
2015-09-05 16:05:02 +09:30
Toby Zerner
695df18be0
Don't show placeholder when loading discussions
2015-09-04 13:50:17 +09:30
Toby Zerner
7a6c48c30b
Correct check that a translation is an object
...
typeof translation === 'object' returns true when translation is null
2015-09-04 12:19:02 +09:30
Toby Zerner
9bf6862c6d
Clean up Post CSS
2015-09-04 12:17:30 +09:30
Toby Zerner
44f460cb11
Prevent ItemList crash when item is a number
2015-09-04 12:17:01 +09:30
Toby Zerner
7cce5b02ba
Allow non-array value to be passed into listItems
...
Useful in some scenarios when using JSX
2015-09-04 12:16:23 +09:30
Toby Zerner
722058f2fb
Move generic util into lib
...
Might come in handy for the admin section later on
2015-09-04 12:15:41 +09:30
Toby Zerner
70815b024a
Make Dropdown and NotificationsDropdown components more extensible
2015-09-04 12:15:11 +09:30
Toby Zerner
7269385786
Make a copy of props passed into a component
...
Prevents some rare errors where the props object is read-only, and is
generally safer.
2015-09-04 12:13:55 +09:30
Toby Zerner
2f8a449b74
Simplify notification markup
2015-09-04 12:12:48 +09:30
Toby Zerner
b3aa0298d5
Fix use of "new" keyword making eslint angry
2015-09-04 12:12:21 +09:30
Toby Zerner
e192402a42
Add item priorities
2015-09-04 12:11:45 +09:30
Franz Liedke
f0c240f863
Add a first empty state to the discussion list
2015-09-03 09:59:33 +02:00
Franz Liedke
bd47653377
Merge pull request #403 from mtotheikle/allow-extra-signup-data
...
Allow support for passing extra signup data to API
2015-09-01 18:28:53 +02:00
Michael Williams
07ed4d10c0
Allow support for passing extra signup data to API
2015-09-01 07:58:14 -07:00
Toby Zerner
bf83b36882
Remove redundant call
2015-09-01 10:08:37 +09:30
Toby Zerner
2438bbfd41
Reload post if user relationship isn't loaded
...
May fix #295 , but haven't been able to reproduce/test.
2015-08-31 14:03:08 +09:30
Toby Zerner
e7f4e5060c
Use GroupBadge component to display user badges
...
closes #277
2015-08-31 13:44:05 +09:30
Toby Zerner
283abb88c2
Fix reply composer preview button
...
closes #238
2015-08-31 13:27:04 +09:30
Toby Zerner
af2307868a
Fix JavaScript style
2015-08-31 13:19:51 +09:30
Toby Zerner
f9d724738c
Add syntax highlighting for code blocks
...
We might consider extracting this into an extension, but TextFormatter
does syntax highlighting for code blocks by default in live previews
anyway.
closes #248
2015-08-31 13:17:16 +09:30
Toby Zerner
42e722d824
Fix incorrect translation output
...
app.trans returns a VirtualElement, so there's no need to wrap it in
m.trust.
closes #237
2015-08-31 12:41:36 +09:30
Toby Zerner
0ae2d18f28
Extract base Page class
2015-08-31 12:05:33 +09:30
Toby Zerner
0474f410a4
Refactor start/endComputation into lazyRedraw method
2015-08-31 12:04:51 +09:30
Toby Zerner
f44e9f5140
Remove <script> tags from plain post content
...
closes #362
2015-08-31 10:49:24 +09:30
Franz Liedke
a04acca92e
Allow Ctrl key for submitting posts, too
...
Closes #276 .
2015-08-29 17:09:14 +02:00