Commit Graph

16 Commits

Author SHA1 Message Date
Marien Fressinaud
241086fa67 Fix broken links for extension script/style files
Fix https://github.com/FreshRSS/FreshRSS/issues/862
2015-07-13 23:11:05 +02:00
Marien Fressinaud
2039710d12 Avoid "PHP Strict Standards" error
A "Only variables should be passed by reference" error was raised in the
extension->getFileUrl() method.
2015-01-15 13:43:05 +01:00
Marien Fressinaud
8968288600 Fix extension API (coding style)
is_enabled() becomes isEnabled(). Sorry for this coding style mistake :s
2015-01-14 22:22:30 +01:00
Marien Fressinaud
806b4de54f Add mechanism at (un)install of an extension
Test if the install or uninstall has been successfully performed.
If these methods return true, all is ok but if a string is returned,
the string must explain the problem. This problem is stored in log file.

A feedback is given to explain to check log file.

This commit fix a problem in the english translation of
feedback.sub.feed.internal_problem.
2015-01-14 21:38:35 +01:00
Marien Fressinaud
5bd7997d41 Call handleConfigureAction() even for GET requests
See https://github.com/FreshRSS/FreshRSS/issues/252
2015-01-08 14:30:05 +01:00
Marien Fressinaud
26da4aa448 Update Minz_Translation
- Give possibility to register new i18n files
- Add a extension->registerTranslates() method
- extensions can define new strings or override previous ones

Fix https://github.com/FreshRSS/FreshRSS/issues/731
2014-12-18 18:59:13 +01:00
Marien Fressinaud
251d5a78ce Fix php interpretation in configure.phtml file
See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-18 13:57:25 +01:00
Marien Fressinaud
c6dfec3ad3 Add behaviour to configure action (extensions)
- Put extension configure view in dir_ext/configure.phtml
- Handle POST action in Extension->handleConfigureAction() method

See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-08 12:01:47 +01:00
Marien Fressinaud
08546af75f Add a first draft for hooks
- New Extension->registerHook($hook_name, $hook_function) method to register a new hook
- Only one hook works for the moment: entry_before_insert
- ExtensionManager::callHook will need to evolve based on future hooks

See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-06 18:48:00 +01:00
Marien Fressinaud
a08c382e06 Separate views registration from controllers one.
- Add an Extension->registerViews() method.
- Views are first searched in extension paths, then in APP_PATH.
- It gives a way to override easily existing controllers / views.
- Change include into an include_once in Dispatcher for new controllers.

See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-06 15:20:20 +01:00
Marien Fressinaud
c6a682deb9 Extensions can define new views
- View base pathname is set to the extension directory
- An extension can now override an existing controller / view

See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-05 15:27:56 +01:00
Marien Fressinaud
f8aa66152f Give possibility to register a new Controller.
- Add a Extension->registerController(name) method
- Controllers must be written in extension_dir/controllers/nameController.php
- Controllers must be named as FreshExtension_name_Controller
- Controllers must extend Minz_ActionController

See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-05 14:48:09 +01:00
Marien Fressinaud
9fc60317ee First draft for listing and manipulate extensions
See https://github.com/FreshRSS/FreshRSS/issues/252
2014-12-05 14:17:02 +01:00
Marien Fressinaud
a2da70fd11 Fix security hole from ext.php script.
Now, ext.php can only serve file under a EXTENSIONS_PATH/ext_dir/static/ directory.
A 400 Bad Request error will be returned for other files.

See https://github.com/FreshRSS/FreshRSS/issues/252
And https://github.com/FreshRSS/FreshRSS/commit/f9b037742a0aeb49cab86782d1a59913c2de47b
2014-12-05 10:54:44 +01:00
Marien Fressinaud
f9b037742a Update ext.php to serve any file from extensions
Add an extension->getFileUrl() method to facilitate url generation
2014-12-04 20:41:01 +01:00
Marien Fressinaud
86f69ca396 First draft for the new extension feature
- Only system extensions can be loaded for the moment by adding them in the config.php
  file.
- Remove previous system (it will be added properly in the new system in the next step).
2014-12-04 19:33:29 +01:00