Commit Graph

2297 Commits

Author SHA1 Message Date
Toby Zerner
35a8fe97f6 Restructure views
- Use Laravel's view namespacing rather than the full file path
- Organise views into directories
2017-11-29 12:51:24 +10:30
Toby Zerner
95285a9a54 Actually list users returned from the API when searching 2017-11-20 10:37:21 +10:30
Toby Zerner
78dafa76c5 Fix email gambit 2017-11-20 09:17:44 +10:30
Toby Zerner
68f9baf974 Merge pull request #1261 from josephnle/drag-and-drop-avatar-upload
Add drag and drop avatar uploading
2017-11-13 01:33:29 +02:00
Toby Zerner
19794bb19b Performance: Assign parent discussions to posts so they don't have to be reloaded 2017-11-12 21:14:19 +10:30
Toby Zerner
5116cf7d75 Performance: Load only basic information about post discussion/users 2017-11-11 23:15:36 +10:30
Toby Zerner
a4849355aa Performance: Load only basic information about terminal/relevant posts 2017-11-11 22:57:41 +10:30
Toby Zerner
89a43d1adf Performance: Cache translation catalogue to avoid reparsing YAML 2017-11-11 22:45:38 +10:30
Toby Zerner
99686ef8bb Performance: Assign parent discussion to posts so it doesn't have to be reloaded 2017-11-11 22:44:45 +10:30
Toby Zerner
b4375e4f7d Fix Composer textarea losing its height across route changes
There is a Mithril bug which causes context.retain to be ineffective for
children nodes. https://github.com/MithrilJS/mithril.js/issues/1300

Thus, we have to assume that the children nodes (like the textarea)
may be recreated and thus we need to update its height on each redraw.

fixes #948
2017-11-07 21:12:03 +10:30
Toby Zerner
091305cce2 Oops, recompile JS properly 2017-11-05 17:57:56 +10:30
Toby Zerner
e0079f2e60 Recompile JS 2017-11-05 17:38:30 +10:30
Toby Zerner
659be3811d Give the mobile composer a bit more height 2017-11-05 17:35:13 +10:30
Toby Zerner
f638fb9300 Remove FastClick. Fixes #1268
Turns out FastClick was causing textareas to be buggy on iOS Safari,
and it wasn't really doing any good.
2017-11-05 17:32:43 +10:30
Toby Zerner
a8cce49b85 Update asset revision whenever custom LESS is changed
This should remove the need for a hard browser refresh whenever you
update the custom LESS.
2017-11-05 16:27:28 +10:30
Toby Zerner
1cc6c06946 Add a tooltip to the Preview button 2017-11-05 16:25:34 +10:30
Toby Zerner
141d6dfbbc Improve mobile composer behaviour
- Don't scroll to the bottom of the discussion when selecting "Reply"
  from the menu if the composer is in full screen mode (ie. on mobile).
  ref #1271

- After posting a reply, scroll to the end of the discussion

- Reduce the textarea height - previously it was 100vh, but this doesn't
  account for the height of the iOS keyboard, so I've just arbitrarily
  chosen 300px instead. There may be a better solution for this.
  ref #1269
2017-11-05 16:25:21 +10:30
Toby Zerner
16e55f724d Attempt fix for #1268
I believe the constant overlay of a loading div may be what's causing
the iOS cursor issues. This commit removes the fade animation so that
we can simply set display to none, which will hopefully fix the issue.
2017-11-05 16:21:18 +10:30
Toby Zerner
9682cd5f26 Make sure dropdowns don't go above the edge of the screen 2017-11-05 16:17:50 +10:30
Toby Zerner
a6553954e2 Revert color to text input type
#1074 changed the input type for these fields to "color", but it turns
out the browser support for this input type sucks (they give you a very
limited color picker, and make it hard to input hex codes).
2017-11-05 16:17:15 +10:30
Toby Zerner
5343d6eff9 Fix admin navigation not rendering
Not sure why this started happening now, but the admin navigation
dropdown wasn't receiving its children properly. This commit fixes a
flaw in our Mithril patch and allows an array of children to be passed
in the normal JSX way, rather than as an attribute.
2017-11-05 16:12:26 +10:30
Franz Liedke
6614fddbcd Remove user bio feature (#1214)
The feature is very limited in scope, and we hope for community
extensions to take over this feature and make it much better.
2017-11-02 01:12:49 +01:00
Lukas
a18088f385 The CookieFactory now also works if no configuration exists (#1258)
* Returning the $default value if there's no config

This is especially important for the CookieFactory which accesses
the configuration before the application is installed

* Injecting the configuration values into the CookieFactory
2017-11-02 00:51:31 +01:00
Mark
244280ae05 Fix blurry chrome image rendering for Avatar / Logo - closes #1259 (#1276)
* Fix blurry chrome image rendering for Avatar / Logo - closes #1259

* Add comments for Chrome css fix
2017-10-29 17:24:02 +01:00
Toby Zerner
cf9a7f141a Only apply custom CSS and header HTML on forum, not admin 2017-10-25 13:40:57 +10:30
Toby Zerner
c9a6892297 Add LESS variable to configure expansion of sideNav dropdowns 2017-10-25 12:36:09 +10:30
Joseph
b7800d2272 Add drag and drop avatar uploading 2017-10-22 14:21:39 -07:00
Toby Zerner
96be7c449d Fix extractText breaking in some cases 2017-10-08 08:59:54 +10:30
Toby Zerner
1f4966bbf1 Make sure components receive all children properly 2017-10-08 08:59:18 +10:30
Toby Zerner
51510319c1 Let avatarUrl attribute delete the avatar as well 2017-10-07 20:28:15 +10:30
Toby Zerner
8108c2f1eb Recompile JS 2017-10-07 20:12:15 +10:30
Toby Zerner
34d7b14d39 Use display names in avatars 2017-10-07 20:10:50 +10:30
Franz Liedke
6ddb8e78e5 Fix namespace imports 2017-10-07 11:20:38 +02:00
Toby Zerner
ba3afb2d6f Fix variable 2017-10-07 19:17:59 +10:30
Toby Zerner
9a8433d02c No need to set a remember cookie if only logging in for session 2017-10-07 17:51:30 +10:30
Toby Zerner
659b25bbfd Consolidate avatar uploading, allow avatarUrl to be used when updating user 2017-10-07 17:39:27 +10:30
Toby Zerner
40e82520bd Allow configuring cookie attributes
I decided to put this in config.php because if cookie settings were to
be stored in the database and configured via admin UI, entering
incorrect settings could cause the admin session to be destroyed,
requiring manual database intervention to fix. But it's a good prompt
for discussion as to which kind of settings belong in config.php vs the
database. Thoughts?
2017-10-05 13:00:15 +10:30
Toby Zerner
8c782a00e9 Add the ApiKey model as a request attribute 2017-10-05 12:26:05 +10:30
Toby Zerner
09f98a5cbb Use a constant instead of a property 2017-10-05 12:25:30 +10:30
Toby Zerner
825997c857 Fix post contentHtml sometimes breaking script parsing
<\/script> tags in post content would sometimes be recognized as
actually ending the script tag, even when escaped (not exactly sure
why). This is fixed by encoding the < > characters in unicode.
2017-10-05 11:48:10 +10:30
Toby Zerner
395cd3e53f Use display name as document title 2017-10-05 11:43:12 +10:30
Toby Zerner
b894db019f Merge pull request #1251 from tweichart/path_methods
minor change for getting the path
2017-10-04 17:23:20 +10:30
Tobias Weichart
64cb0e866f minor change for getting the path
* should be used via x_path() methods + parameter
2017-10-04 08:38:36 +02:00
Toby Zerner
6f75d95e9f User display names (#1246)
* Introduce user display names

It is not uncommon for forums to be intergrated with sites where users
don't have a unique "handle" - they might just have their first name,
or a full name, which is not guaranteed to be unique.

This commit introduces the concept of "display names" for users. By
default display names are the same as usernames, but extensions may
override this and set them to something different. The important thing
is that all code should use `display_name` whenever intending to output
a human-readable name - `username` is reserved for cases where you want
to output a unique identifier (which may or may not be human-friendly).

The new "GetDisplayName" API is probably sub-optimal, but I didn't worry
too much because we can come up with something better in `next-back`.

ref #557

* Apply fixes from StyleCI

[ci skip] [skip ci]
2017-09-20 16:42:18 +09:30
Toby Zerner
65ffee8696 Use ::class 2017-09-19 19:45:31 +09:30
Toby Zerner
cb0e9bd507 Remove unnecessary else statement 2017-09-19 19:44:43 +09:30
Toby Zerner
f148013108 😅 2017-09-19 19:13:02 +09:30
Toby Zerner
705ef7536b Don't include post content in the "basic" serializer
Currently all of a post's replies are loaded in full whenever the post
is loaded, which is kind of overkill - we really just need to know that
they exist (and who posted them) in order to render the "X replied to
this" line.
2017-09-19 19:10:07 +09:30
Toby Zerner
5fc3ea94b5 Allow full URLs to be used as the avatar path
This is useful for forums integrating with an external website (eg. a
WordPress site), so they can reference existing avatars directly.

For alternative storage locations (eg. S3) the best practice will still
be to store a relative path and then configure an external base "assets
URL" (this is not currently possible - TODO).

Given this change, I think it would probably make sense to rename the
column to `avatar_url` in the upcoming batch of database naming changes
- then it can contain either a relative or an absolute URL -
@franzliedke do you agree?
2017-09-19 19:03:12 +09:30
Toby Zerner
5bfe75c763 Allow setting the raw content of a CommentPost 2017-09-19 12:13:24 +09:30