Commit graph

62 commits

Author SHA1 Message Date
Daniel Rudolf de74e7d867
Improve class docs 2017-07-14 20:50:38 +02:00
Daniel Rudolf b098e22033
Various small improvements 2017-05-14 01:26:38 +02:00
Daniel Rudolf d26da62bf1
Add onSinglePageContent event 2017-05-14 01:26:29 +02:00
Daniel Rudolf 80c88f2a7d
Refactor onMetaHeaders event 2017-05-14 01:25:10 +02:00
Daniel Rudolf 624310bbe7
Various small improvements 2017-05-13 18:17:58 +02:00
Daniel Rudolf 191f6edbe9
Don't pass the $plugins argument of the onPluginsLoaded event by reference
This is a BC breaking change!

Manipulating Pico's $plugins array is a really bad idea. We've introduced the Pico::loadPlugin() method to safely load plugins at any time, however, Pico might do unexpected things when loading plugins too late. See the class docs of Pico::loadPlugin() for more details. Nevertheless, this change breaks BC to Pico 1.0. However, I don't know a single plugin that relies on manipulating the $plugins array. If you just want to load a plugin manually, use Pico::loadPlugin() instead.
2017-05-13 18:17:19 +02:00
Daniel Rudolf 6e28a51080
Refactor onPages… and onPage… core events
Add new onPagesDiscovered event passing the unsorted pages array, move the $currentPage, $previousPage and $nextPage arguments from the onPagesLoaded event to the new onCurrentPageDiscovered event, remove the $twig argument from the onPageRendering event and rather trigger the new onTwigRegistered event for this. Also add the new onYamlParserRegistered and onParsedownRegistered events passing the YAML parser resp. the Parsedown instance. Allow plugin's to skip a page by setting the $id argument of the onSinglePageLoading event to NULL.
2017-05-13 18:08:54 +02:00
Daniel Rudolf 7b222b03e4
Add Pico::API_VERSION 2017-05-10 17:00:48 +02:00
Daniel Rudolf e8e60f49e5
Update DummyPlugin 2017-05-07 14:15:24 +02:00
Daniel Rudolf cbb8ece579
Move PicoDeprecated plugin and default theme to separate repos
See https://github.com/picocms/pico-theme for Pico's default theme and https://github.com/picocms/pico-deprecated for the PicoDeprecated plugin.
2017-05-01 22:12:18 +02:00
Daniel Rudolf 82a342ba44
Various small improvements 2017-05-01 15:12:13 +02:00
Daniel Rudolf 9b7523b9e8
Use .yml files to configure Pico
Instead of using `*.config.php` files, use `*.yml` files to configure Pico. YAML is much easier to understand, more user friendly and (at least a bit) more error-tolerant, but still very powerful. Don't break BC by letting `PicoDeprecated` still read `config/config.php`.
2017-02-05 16:52:18 +01:00
Daniel Rudolf 8f7e4da53d
Rename Pico 1.1 to Pico 2.0 2016-12-12 15:31:06 +01:00
Daniel Rudolf 9a2dd4f078
Mark Twig variables rewrite_url and is_front_page as deprecated 2016-12-06 20:52:27 +01:00
Daniel Rudolf ea2146b2db
Remove default plugins PicoParsePagesContent and PicoExcerpt
As previously announced (see [Upgrade to Pico 1.0 page](http://picocms.org/in-depth/upgrade/)) we'll remove the default plugins `PicoParsePagesContent` and `PicoExcerpt` with the next Pico milestone. Needless to say, that you can still install both plugins without any problem - we'll add them to Pico's official [Plugins collection](http://picocms.org/plugins/) by then. Please note that the disadvantages of these plugins are still critical and we strongly advise to not use them. Please refer to the [Upgrade to Pico 1.0 page](http://picocms.org/in-depth/upgrade/) for details.
2016-12-06 19:31:29 +01:00
Daniel Rudolf 5cf47e65de
Various small improvements 2016-12-06 19:03:58 +01:00
Daniel Rudolf ddf3da0391
Merge branch 'master' into pico-1.1
Conflicts:
	.htaccess
	config/config.php.template
	content-sample/index.md
	lib/Pico.php
2016-06-18 20:23:23 +02:00
Daniel Rudolf 94279c57f8
Improve phpDocs class docs 2016-05-23 15:13:56 +02:00
Daniel Rudolf 3d11b8a979 Replace is_a() function calls with instanceof operator 2016-03-11 19:07:45 +01:00
Daniel Rudolf cd74b681f5 Fix scope isolated config includes 2016-03-06 20:47:25 +01:00
Daniel Rudolf 75d5081bfb Use scope isolated includes for plugins & config 2016-03-06 20:06:24 +01:00
Daniel Rudolf 1c2f6a1b23 Update class docs 2016-01-25 19:31:53 +01:00
Daniel Rudolf c3af40c3b9 PicoDeprecated: Fix LIB_DIR constant 2015-12-23 16:17:33 +01:00
Daniel Rudolf 5be2f8e597 Fix path handling on Windows
Fixes #307; thank you @bpgs for reporting!
2015-12-23 16:17:06 +01:00
Daniel Rudolf 93f7aaad8b Class docs: Use default markdown table format 2015-12-07 15:17:39 +01:00
Daniel Rudolf 913cf3816f Plugins: Improve onPagesLoaded() code styling 2015-11-27 19:31:22 +01:00
Daniel Rudolf 364b9066d9 PicoDeprecated: Use $GLOBALS superglobal instead of global keyword 2015-11-27 19:30:25 +01:00
Daniel Rudolf 20387e0bf9 Make DummyPlugin class final
Plugin developers MUST NOT extend from DummyPlugin, they SHOULD extend from AbstractPicoPlugin
2015-11-25 04:10:22 +01:00
Daniel Rudolf 840d41bca5 Improve type hinting 2015-11-25 04:07:46 +01:00
Daniel Rudolf c0d30d20f8 Follow-up to c72ea0e
Don't use Pico::getAbsolutePath() for $config['content_dir'], just make sure the trailing slash exists. The config.php in Picos root dir should be interpreted exactly like in Pico 0.9 (the option didn't exist in Pico 0.8), thus the path isn't necessarily relative to Picos root dir
2015-11-14 16:50:32 +01:00
Daniel Rudolf c72ea0ecec PicoDeprecated: Sanitize content_dir and base_url options when reading config.php in Picos root dir 2015-11-13 19:10:30 +01:00
Daniel Rudolf cd7cd374bb Add content filter to get the parsed contents of a page (lazy loading) 2015-11-06 01:08:31 +01:00
Daniel Rudolf af8de56512 Fix typos 2015-11-04 19:50:44 +01:00
Daniel Rudolf 2a43b21bae Enable PicoDeprecated if no plugins are loaded 2015-11-04 19:44:20 +01:00
Daniel Rudolf 8da62f4aad PicoDeprecated: Making $config globally accessible again
This was dropped without a replacement with Pico 0.9. I checked all changes since Pico 0.8 manually, as far as I can tell there should be no more surprises regarding BC... Thanks @Lomanic for rubbing our nose in the fact that we should check this! I also added the missing changes of Pico 0.9 to changelog.txt
2015-10-31 01:03:24 +01:00
Daniel Rudolf 9a702415fb Remove return $config in config/config.php
I always thought that doing this is pretty unusual... But now it simply breaks BC - please refer to @Lomanic's [comment](https://github.com/picocms/Pico/pull/260#issuecomment-152610857). Using a return statement has no advantages, but increases the probability that something goes wrong (e.g. a clueless user removes the return statement). It was introduced with 23b90e2, but we never released it ([v0.9.1](4cb2b24fae/lib/pico.php (L188-L189))). Removing the return statement shouldn't cause any problems even for users which installed Pico in the meantime. As a result we don't break BC and moreover remove a prior BC break 😃
2015-10-31 00:32:08 +01:00
Daniel Rudolf afb55b9cb6 Improve class docs 2015-10-29 18:13:35 +01:00
Daniel Rudolf e6681ea903 Improve class docs
Also add some ToDos to inline docs
2015-10-29 18:07:45 +01:00
Daniel Rudolf 54ce5b9699 Various small improvements
- Improve class docs for phpDocumentor
- Add missing onPagesLoading() event to DummyPlugin
- Add some TODOs to the UPGRADE section of the docs
2015-10-29 02:55:30 +01:00
Daniel Rudolf a654b1585b phpDocumentor 2.8.5 currently doesn't support the Generic notations
This will likely be implemented as soon as the proposed PSR-5: PHPDoc is accepted
2015-10-27 01:48:58 +01:00
Daniel Rudolf 92af554d14 Improve inline code comments; preparing use of phpDocumentor 2015-10-27 01:39:28 +01:00
Daniel Rudolf 15515ff3fd Fix typo/formatting 2015-10-09 20:51:07 +02:00
theshka 8380b54142 fix spelling 2015-10-09 20:41:00 +02:00
Daniel Rudolf 1cbf48af79 Split PicoDeprecated::onConfigLoaded() into multiple methods 2015-10-04 23:25:32 +02:00
Daniel Rudolf 79e2dacdb2 Fix method docs typo 2015-10-04 22:08:04 +02:00
Daniel Rudolf 2e15e112f7 Define deprecated constants before evaluating the config.php in Picos root dir
This prevents E_NOTICEs when using e.g. ROOT_DIR in a old config.php, so upgrading users are usually not bothered with this BC break
2015-10-04 18:50:16 +02:00
Daniel Rudolf 3f7b0998c6 Declare undefined $plugins variable
Thanks @Lomanic
2015-10-04 14:47:54 +02:00
Daniel Rudolf 241a52907e Update inline code comments 2015-10-01 22:52:10 +02:00
Daniel Rudolf fc7632b0ac Overhaul init of Pico
This may break BC if you're using one of the now deprecated constants (e.g. ROOT_DIR)
2015-10-01 15:05:50 +02:00
Daniel Rudolf 13a50c7f2f Don't change $pageData['id'], add ~dup1 to the array key only 2015-09-28 17:25:10 +02:00