Toby Zerner
1c87c33d4d
Use ::class, update some typehints
2018-01-11 11:55:57 +10:30
Franz Liedke
30a04e7bf9
Don't use invokables with Container::call()
2018-01-10 19:37:18 +01:00
Franz Liedke
0af97c427c
Re-introduce Compat extender
...
Turns out Container::call() does not work with invokable classes.
Thus, we need to wrap callables in a custom extender class to
support injecting any resolvable type-hint automatically.
Refs #851 .
2018-01-10 19:32:57 +01:00
Franz Liedke
c6747b6910
Get rid of Compat extender
...
Now that we support any form of callable to be returned from the
bootstrap.php files, it is no longer needed.
2018-01-09 22:35:40 +01:00
Franz Liedke
1ce70eeb6e
Turn extenders into callables
...
This simplifies the API and gives extension developers more
flexibility, for a) maintaining backwards compatibility, and
b) doing advanced stuff that extenders do not allow.
Note that only extenders are guaranteed to work across
different versions of Flarum (once the API surface is stable).
See the discussion in https://github.com/flarum/core/pull/1335 .
2018-01-09 20:49:51 +01:00
Daniel Klabbers
714775cfed
fixed two typehints on migrations repository
2018-01-09 16:28:50 +01:00
Clark Winkelmann
f3e29ab801
Dispatch user events after password reset
...
Previously PasswordChanged was never sent
2018-01-09 03:44:06 +01:00
Franz Liedke
26e53fc51b
Tweak route registration extender: Use plural
...
This makes it more consistent with other existing extenders,
while also making registration of multiple routes more
comfortable for extension developers, and likely slightly
more performant. :-)
2018-01-07 19:50:49 +01:00
Willem de Groot
5af65dede1
Fix StyleCI spacing
2018-01-06 12:03:02 +01:00
Willem de Groot
e774baf32f
Remove execute permissions from php/less files
2018-01-06 11:59:25 +01:00
Toby Zerner
2ac04aac8e
Merge branch '0.1.0-beta.7'
2018-01-06 20:06:43 +10:30
Clark Winkelmann
c6aeeeb3c1
Always apply attributes from token when registering
...
The change introduced in #1033 transformed any identification attribute returned from an OAuth provider to just a default value.
When the identification attribute used by the provider is the email or username, this allowed the user to supply a different email or username and still getting an already-enabled account with the credentials he entered.
Skipping attributes with an existing value makes no sense here because it's a always a fresh user and values from AbstractOAuth2Controller::getIdentification() should always be enforced.
2018-01-06 20:04:42 +10:30
Toby Zerner
f247d8c2a6
Merge pull request #1335 from flarum/next-back-extenders
...
Start of PHP extenders API
2018-01-06 09:17:27 +10:30
Franz Liedke
0380536cb4
Add another newline before custom footer HTML
2018-01-05 23:46:38 +01:00
AFR
6dc96b38af
Add Custom Footer HTML ( #1315 )
...
* Add Custom Footer HTML
Straight copy from Custom Header HTML
* Move Custom Footer HTML to exactly before `</body>` tag.
* Fix invalid class name
* Append CustomFooterHTML when preparing the view.
* Some consistency in placing the variable
2018-01-05 23:44:11 +01:00
Franz Liedke
8d049126d0
Add Route extender for registering routes with forum, admin or API
2018-01-03 23:19:45 +01:00
Franz Liedke
63be95fb8a
Admin: Set up all event listeners in one place
...
See discussion in #1273 .
2018-01-03 20:23:05 +01:00
Franz Liedke
1d47047d45
Add FormatterConfiguration extender for extensions working with TextFormatter
2018-01-03 09:42:11 +01:00
Franz Liedke
4e30ad5891
Add Assets extender for frontend extensions
2018-01-03 09:42:11 +01:00
Franz Liedke
f4ad227576
Add Locale extender for language pack extensions
2018-01-03 09:42:11 +01:00
Franz Liedke
5b6d043f80
Resolve extenders from ExtensionManager
...
Loading the activated extensions now means retrieving an array of
extenders (classes that implement a certain type of extension of a core
feature in Flarum).
For now, the only existing extender is the Compat extender which is used
to handle old-style bootstrappers that simply return a closure that
receives all of its dependencies via auto injection.
In the future, extensions will be able to return an array of extender
instances from their bootstrapper instead. These extender classes will
be implemented in the next step.
2018-01-03 09:42:11 +01:00
Franz Liedke
c41e58531a
Deprecate remaining non-namespaced events
...
These will be replaced by etenders soon.
2018-01-03 09:42:11 +01:00
Franz Liedke
b760d113d2
Installation default data: Use more sensible defaults
...
Using .dev as a TLD for local development is discouraged, as at
least Chrome now enforces HTTPS for these domains.
As far as I know, by default, the MySQL root user does not have
a password on many platforms. I use it this way on my local
machine, and this makes it convenient to setup a local copy.
2018-01-03 09:41:46 +01:00
Franz Liedke
936f67e953
Use ::class instead of some hardcoded class names
...
This gives us better refactoring functionality in IDEs like
PhpStorm, and also more quickly surfaces typos through errors
about undefined classes. :)
2018-01-03 09:41:46 +01:00
Franz Liedke
3f7e7520b0
Clean up code, use PHP 7 feature :)
2018-01-03 09:41:46 +01:00
Clark Winkelmann
7ccb263926
Fix array_only usage
2018-01-02 00:27:13 +01:00
Toby Zerner
fe56f57e8f
Fix order of array_first arguments
...
As per https://laravel.com/docs/5.3/upgrade (under "Arrays")
2018-01-02 09:48:50 +10:30
Clark Winkelmann
fa9d89d690
Prevent editing fields in sign up modal according to identification data
2018-01-02 00:13:33 +01:00
Toby Zerner
292fe06001
Re-add missing middleware
2018-01-01 10:45:26 +10:30
Toby Zerner
d807171c44
Fix URL generator usage
2017-12-29 21:29:04 +10:30
Toby Zerner
57a91c966d
Fix view paths
2017-12-29 21:28:53 +10:30
Toby Zerner
0525f467c7
Fix class reference
2017-12-29 18:42:31 +10:30
Franz Liedke
b791790d2f
Fix comment
2017-12-28 22:47:13 +01:00
Toby Zerner
ac7d28ca58
Remove unused method
2017-12-27 16:17:35 +10:30
Toby Zerner
8a6344cfcf
Fix some class names, clean up imports
2017-12-27 16:17:25 +10:30
Toby Zerner
a0621e85bf
Fix order of array_first arguments
...
As per https://laravel.com/docs/5.3/upgrade (under "Arrays")
2017-12-26 20:38:15 +10:30
Franz Liedke
56231d61be
Move garbage collection into middleware
...
This prevents garbage collection to randomly break the installer:
before installation, the models that are being accessed have no
database connection.
Now, the middleware is only mounted into the forum's middleware
stack. I want API requests to have stable performance, and the
forum middleware stack is only mounted when Flarum is installed.
2017-12-21 12:23:34 +01:00
Franz Liedke
c8a1a5fcfa
Fix more incompatibilities with Laravel 5.5
2017-12-20 00:20:23 +01:00
Franz Liedke
8d5132fd5a
Disable HandleErrors middleware during installation
...
Temporary measure until we have a real fix in place.
2017-12-20 00:00:23 +01:00
Franz Liedke
6efe2ee91a
Fix previous commit
...
Prevent `flarum.config` from being bound in the container when the
software has not been installed yet.
2017-12-19 23:48:38 +01:00
Franz Liedke
bfd98e3371
DRY up loading of config
2017-12-19 23:16:06 +01:00
Toby Zerner
e9da1ba2f5
Remove Listener namespace
...
We may reverse this in the future, but for now just going for
consistency between domains (the majority do not use a Listener
namespace)
2017-12-19 18:59:14 +10:30
Toby Zerner
2b8c66354d
Apply fixes from StyleCI
...
[ci skip] [skip ci]
2017-12-19 08:24:06 +00:00
Toby Zerner
4cf481355f
Fix usage of UrlGenerator in notifications
2017-12-19 18:52:27 +10:30
Toby Zerner
2ec183778c
Pick up config when setting a new base path
2017-12-19 18:38:00 +10:30
Daniel Klabbers
1b94ef90ea
the admin service provider also has to use the new HandleError logic
2017-12-15 09:35:02 +01:00
Daniel Klabbers
183a22b5c5
- FilesystemInterface no longer needed in User related handlers
...
- FilesystemInterface conditional ioc binding moved to AvatarUploader
- User::getAvatarAtribute failed to use the UrlGenerator properly
2017-12-15 09:29:20 +01:00
Daniel Klabbers
654fca9c2c
fixed the BasicFoo vs FooBasic serializer definition issue, prevented for future using ::class
2017-12-15 08:29:07 +01:00
Daniel Klabbers
7be01119f5
and another..
2017-12-15 08:15:08 +01:00
Daniel Klabbers
28d4cff156
satisfying sci isnt enough for it, lets please it further
2017-12-15 08:14:15 +01:00
Daniel Klabbers
2aba61668c
- satisfying styleci
...
- cleared the merge conflict in the phpdoc
- changed some string class names to use ::class
2017-12-15 08:10:32 +01:00
Daniël Klabbers
f65e4dcba3
merges 5.5 and master into next-back
2017-12-14 01:00:16 +01:00
Franz Liedke
c6ce172caa
Apply suggestions from StyleCI
2017-12-13 23:08:35 +01:00
Clark Winkelmann
d2f187716e
Prevent saving invalid custom less ( #1273 )
...
* Prevent saving invalid custom less
* Fix formatting
* Fix formatting again
* Move custom less format check to its own listener
* Move listener to AdminServiceProvider
* Rename listener method
2017-12-13 22:39:09 +01:00
Daniël Klabbers
93aa3d77b5
re-using symfony translator
2017-12-13 21:45:55 +01:00
Toby Zerner
a0c95e6705
Filter out notifications with non-existent subjects
...
ref #1025 #1238 . This should prevent the frontend from crashing when
opening the notifications menu, but we still need to make sure
notifications are deleted properly when subjects are deleted.
2017-12-13 15:54:16 +10:30
Toby Zerner
77c25ab725
Add infinite scrolling in the notifications list
2017-12-13 15:28:54 +10:30
Toby Zerner
3dcfe32b27
Extract admin dashboard statistics from core into an extension
2017-12-10 21:03:48 +10:30
Toby Zerner
617a76dda8
Fix PHP 7.2 warning
2017-12-10 21:02:47 +10:30
Toby Zerner
b806dc3db2
Move view logic into middleware
2017-11-29 22:25:57 +10:30
Toby Zerner
92de751154
Fix last commit
2017-11-29 22:22:14 +10:30
Toby Zerner
5b46ec801d
Generate URL in the controller instead of the view
2017-11-29 22:20:06 +10:30
Toby Zerner
1ef9217f4d
Basic implementation of dashboard widgets, statistics
...
Currently not user-customizable. Just needed to display statistics for a
client, so figured I'd make a start at this. Nothing too fancy for now,
but I'm sure some people will be happy to have this information at their
fingertips.
2017-11-29 17:19:20 +10:30
Toby Zerner
79fee3686f
More precise permission check for email gambit
2017-11-29 17:02:49 +10:30
Toby Zerner
8edc8223e5
Fix admin error handling
2017-11-29 16:10:22 +10:30
Daniël Klabbers
6280fb2498
reverting translator contract
2017-11-29 06:26:48 +01:00
Toby Zerner
ba769e0c7e
Preserve return URL when confirming logout
2017-11-29 13:47:00 +10:30
Toby Zerner
ea2fc1ff8a
Add a "return home" link to 404 errors
2017-11-29 13:23:25 +10:30
Toby Zerner
b7c1cc5cef
New design for error pages. closes #252
2017-11-29 13:03:55 +10:30
Toby Zerner
e8a4e5e0ef
Add log out confirmation if CSRF token is invalid. fixes #1282
2017-11-29 13:03:16 +10:30
Toby Zerner
295193eb3c
Use HtmlResponse in AbstractHtmlController
2017-11-29 12:54:11 +10:30
Toby Zerner
a065c8e6f5
Make URLs more verbose
2017-11-29 12:53:39 +10:30
Toby Zerner
9392e1bec3
New design for reset password view
2017-11-29 12:53:06 +10:30
Toby Zerner
479e44dd04
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
Daniel Klabbers
c01268d9ae
must be an empty line
2017-11-27 14:19:18 +01:00
Daniel Klabbers
f4fc245df4
re-added a precious line
2017-11-27 14:18:28 +01:00
Daniel Klabbers
ac0b4cb2d2
patched up the Scope implementation as requested
2017-11-27 14:17:17 +01:00
Daniel Klabbers
55b945f129
Using Core Translator in Locale Manager, type hinted its methods and removed unnecessary phpdoc
2017-11-27 14:03:45 +01:00
Daniel Klabbers
4d9e2335c7
pleasing the angry god Circle
2017-11-27 11:05:15 +01:00
Daniel Klabbers
642332ffe2
replaced the Symfony\Component\Translation\TranslationInterface with the Illuminate\Contracts\Translation\Translator, deprecating the Symfony version
2017-11-27 10:42:16 +01:00
Daniel Klabbers
7b2663e0bc
fixed alias/reference loading for translation strings
2017-11-27 10:35:57 +01:00
Daniel Klabbers
e2d61d1aeb
applied laravel contract
2017-11-27 09:49:19 +01:00
Toby Zerner
0aa74c987c
Fix email gambit
2017-11-20 09:17:44 +10:30
Toby Zerner
a28dbccf1a
Performance: Assign parent discussions to posts so they don't have to be reloaded
2017-11-12 21:14:19 +10:30
Toby Zerner
3c80612d80
Performance: Load only basic information about post discussion/users
2017-11-11 23:15:36 +10:30
Toby Zerner
dedcbae359
Performance: Load only basic information about terminal/relevant posts
2017-11-11 22:57:41 +10:30
Toby Zerner
9cc67fe312
Performance: Cache translation catalogue to avoid reparsing YAML
2017-11-11 22:45:38 +10:30
Toby Zerner
5f7060fb4a
Performance: Assign parent discussion to posts so it doesn't have to be reloaded
2017-11-11 22:44:45 +10:30
Toby Zerner
15b573bd93
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
Daniel Klabbers
0b1043c9d2
moved from boot to register
2017-11-02 10:52:52 +01:00
Daniel Klabbers
72c232d5a3
fixed the Bus command Handling forwarding the call to a matching Handler class
2017-11-02 10:48:33 +01:00
Franz Liedke
914b94b62d
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
1b7cb3bec2
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
Daniël Klabbers
55b763a570
fixed renamed interface for Scope
2017-11-01 22:12:56 +01:00
Daniel Klabbers
d7306dedb7
array_build => array_map
2017-11-01 17:20:12 +01:00
Daniel Klabbers
3eede757bb
fixed symfony translator now using catalogues
2017-11-01 17:07:22 +01:00
Daniel Klabbers
a8f8ca7f87
fixed an issue where the mail provider would not be able to instantiate
2017-11-01 17:01:50 +01:00
Toby Zerner
40ebc13292
Only apply custom CSS and header HTML on forum, not admin
2017-10-25 13:40:57 +10:30
Toby Zerner
5a43f915cb
Let avatarUrl attribute delete the avatar as well
2017-10-07 20:28:15 +10:30
Franz Liedke
cb92deee98
Fix namespace imports
2017-10-07 11:20:38 +02:00