Commit graph

614 commits

Author SHA1 Message Date
Daniel Rudolf
3f98896165
Create empty content/ dir 2017-05-02 00:26:23 +02:00
Daniel Rudolf
1d73524e41
Search for content/index.md to determine the content dir to use 2017-05-02 00:22:35 +02:00
Daniel Rudolf
bba93752cb
Use dev dependencies for pico-deprecated and pico-theme 2017-05-01 23:46:10 +02:00
Daniel Rudolf
a114821466
Add 2.0-dev branch alias to composer.json 2017-05-01 23:34:57 +02:00
Daniel Rudolf
f52e3dc890
Add Pico::getVendorDir()
The vendor directory is the installation path of the `picocms/Pico` package. If `picocms/Pico` is the composer root package (as in pre-bundled releases), it should be identical to `Pico::getRootDir()`. However, if `picocms/Pico` was installed as composer dependency (e.g. by `picocms/pico-composer`), the vendor directory usually corresponds to something like `Pico::getRootDir() . "vendor/picocms/pico"`. The vendor directory is currently only used as a last resort to load Pico's sample contents.
2017-05-01 22:27:57 +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
a39bc38620
Update keywords in composer.json; Use screenshot from website in README.md 2017-05-01 20:39:11 +02:00
Daniel Rudolf
3f17a2e28e
Merge branch 'master' into pico-1.1
Conflicts:
	content-sample/index.md
	themes/default/font/fontello.eot
	themes/default/font/fontello.svg
	themes/default/font/fontello.ttf
	themes/default/font/fontello.woff
	themes/default/font/fontello.woff2
	themes/default/fontello.css
2017-05-01 20:38:03 +02:00
Daniel Rudolf
82a342ba44
Various small improvements 2017-05-01 15:12:13 +02:00
Daniel Rudolf
c69dca0f8c
Remove Twitter links
Our Twitter account is basically abandoned. Our key asset never was a hardly to subdue flood of words anyway 😆
2017-03-17 00:45:34 +01:00
Daniel Rudolf
a2d0d745ff
Fix detection of Windows-based server environments 2017-02-19 23:43:43 +01:00
Daniel Rudolf
882a80a179
Update docs to reflect 9b7523b 2017-02-06 00:01:25 +01:00
Daniel Rudolf
d4c65fa523
Allow configuring Parsedown 2017-02-05 21:49:54 +01:00
Daniel Rudolf
5429a3a932
Add Pico::getTwigTemplate() 2017-02-05 20:20:26 +01: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
0a080c8965
Add lazy init for Symfony YAML, Parsedown and Twig 2017-02-05 15:55:53 +01:00
Daniel Rudolf
c56ba02b0b
Reintroduce plugin prefix classifications
This partially reverts commit 9254240
2016-12-12 20:58:38 +01:00
Daniel Rudolf
9254240e44
Load plugins from <plugin name>.php and <plugin name>/<plugin name>.php only 2016-12-12 20:37:17 +01:00
Daniel Rudolf
eec1d625c4
Add Pico::getFilesGlob() method 2016-12-12 20:36:46 +01:00
Daniel Rudolf
586d792c32
Update Pico::VERSION_ID constant 2016-12-12 17:09:30 +01:00
Daniel Rudolf
46f5d3d56d
Move Twig link filter and url_param and form_param functions to PicoTwigExtension 2016-12-12 17:08:40 +01:00
Daniel Rudolf
1f35346f53
Improve detection of hidden files to serve 404 contents instead
Follow-up to 9b72b5c316
2016-12-12 16:37:20 +01:00
Daniel Rudolf
8f7e4da53d
Rename Pico 1.1 to Pico 2.0 2016-12-12 15:31:06 +01:00
Daniel Rudolf
2e880d6c7f
Discover the previous and next pages of all pages 2016-12-12 14:49:57 +01:00
Daniel Rudolf
9b72b5c316
Give pages starting with a underscore (_) a special treatment
Follow-up to b493ebdb84
2016-12-12 14:49:05 +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
ec3f7fb626
Improve class docs 2016-12-06 20:22:50 +01:00
Daniel Rudolf
5193b77fdf
Reuse YAML parser instance 2016-12-06 20:22:38 +01:00
Daniel Rudolf
5d48aa7040
Let Pico::getTwigVariables() return the "real" array
Currently Pico::getTwigVariables() always returns the default twig variables and ignores all additions/changes made through the onPageRendering event. The method now returns the "real" variables array used by Twig.
2016-12-06 20:04:07 +01:00
Daniel Rudolf
bc5729629d
Fire onMetaHeaders event only once, cache results of Pico::getMetaHeaders() 2016-12-06 20:01:38 +01:00
Daniel Rudolf
82c6dd9795
Don't sort pages when a unknown sort method is specified
Specifying a custom sort method usually means that all pages are sort by a plugin, so Pico's default alphabetical order is overwritten anyway. Letting Pico sort the pages first and discarding the result is burned CPU time...
2016-12-06 19:47:37 +01:00
Daniel Rudolf
b493ebdb84
Default theme: Navigation: Hide pages starting with a underscore (_) 2016-12-06 19:37:23 +01:00
Daniel Rudolf
b712650678
Default theme: Navigation: Show top-level pages only 2016-12-06 19:36:52 +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
7a6e4f8271
Sort all loaded plugins using a plugin dependency topology
Execution order matters: if plugin A depends on plugin B, it usually means that plugin B does stuff which plugin A requires. However, Pico loads plugins in alphabetical order, so events might get fired on plugin A before plugin B.

Hence plugins need to be sorted. Pico sorts plugins using a dependency topology, this means that it moves all plugins, on which a plugin depends, in front of that plugin. The order isn't touched apart from that, so they are still sorted alphabetically, as long as this doesn't interfere with the dependency topology. Circular dependencies are being ignored; their behavior is undefiend. Missing dependencies are being ignored until you try to enable the dependant plugin.

This method bases on [Marc J. Schmidt's Topological Sort library](https://github.com/marcj/topsort.php) in version 1.1.0, licensed under the MIT license. It uses the `ArraySort` implementation ([class `\MJS\TopSort\Implementations\ArraySort`](https://github.com/marcj/topsort.php/blob/1.1.0/src/Implementations/ArraySort.php)).
2016-12-06 17:18:59 +01:00
Daniel Rudolf
0a269746eb
Add Pico::is404Content() method 2016-11-26 16:48:10 +01:00
Daniel Rudolf
d9393df4fa
Pico::getBaseUrl(): Improve hostname detection with proxies 2016-11-23 23:26:55 +01:00
Daniel Rudolf
d6a094216b
Merge branch 'master' into pico-1.1
Conflicts:
	_build/deploy-phpdoc-branch.sh
	themes/default/index.twig
	themes/default/style.css
2016-11-02 23:02:20 +01:00
Daniel Rudolf
381b339b9f
Build system: Fix _build/github-clone.sh 2016-11-02 22:40:05 +01:00
Daniel Rudolf
fad5d869ee
Improve build system; add _build/github-clone.sh 2016-11-02 22:23:41 +01:00
Daniel Rudolf
a9eee00950
Fix references to the picocms.github.io repo 2016-11-02 22:00:38 +01:00
Daniel Rudolf
6a68df2866
Update CHANGELOG.md 2016-11-02 03:12:09 +01:00
Daniel Rudolf
0f4257233a
Sync docs 2016-11-02 03:12:02 +01:00
Daniel Rudolf
19bc3412ad
.travis.yml: Enable HHVM nightly builds 2016-10-11 18:21:14 +02:00
Daniel Rudolf
da3d5a7e6f
.travis.yml: Enable Travis IRC notifications 2016-10-09 13:14:56 +02:00
Daniel Rudolf
6e891585ab
.travis.yml: Add PHP 7.1 to Travis CI 2016-10-09 02:52:36 +02:00
Daniel Rudolf
38615e444d
Use Pico::loadFileContent() in Pico::readPages() 2016-10-09 02:49:30 +02:00
Daniel Rudolf
bea610dbf4
Pico::evaluateRequestUrl(): Replace strpos()+substr() with strstr() 2016-10-05 14:17:10 +02:00
Daniel Rudolf
ac3f9b6742
Version 1.0.4
```
* [New] Add Pico's social icons to default theme
* [Changed] Improve documentation
* [Changed] Add CSS flexbox rules to default theme
* [Fixed] Fix handling of non-YAML 1-line front matters
* [Fixed] Fix responsiveness in default theme
```
2016-10-04 13:16:02 +02:00