Compare commits

...

362 Commits
1.2.0 ... 1.3.9

Author SHA1 Message Date
Andy Miller
d4204f13f8 Merge branch 'release/1.3.9' 2017-12-05 17:16:13 -07:00
Andy Miller
0554b25c78 Prepare for release 2017-12-05 17:16:05 -07:00
Andy Miller
f4e7cbaa6e updated changelog 2017-12-05 17:15:28 -07:00
Andy Miller
83bfc1fd0f Added support for intl_enabled option 2017-12-05 17:03:05 -07:00
Andy Miller
30439b864d Added a quick type test for #1764 2017-12-05 11:04:59 -07:00
Andy Miller
80999121a9 Potential fix for #1764 2017-12-05 10:51:44 -07:00
Andy Miller
ca0d0bb373 Added a comment 2017-12-05 10:50:39 -07:00
Andy Miller
345578a05d Force field.multiple: true for checkboxes to use min/max rules 2017-12-04 22:32:26 -07:00
Andy Miller
1f0537124a Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-12-04 18:14:25 -07:00
Andy Miller
2a2b9a12a7 Fix for checkbox validation form#216 2017-12-04 18:14:20 -07:00
Iain Gillis
5a19e05931 Fix typo (#1770) 2017-12-02 22:08:55 -07:00
Andy Miller
6ae4680fcb Move system twig templates to last 2017-12-01 11:38:38 -07:00
Andy Miller
b4cf7899bb cleanup 2017-12-01 00:01:23 -07:00
Andy Miller
eac16911d0 Added new core twig templates 2017-11-30 18:31:13 -07:00
Andy Miller
21bef62b82 Added get and set FlashCookieObject() methods 2017-11-30 18:28:25 -07:00
Andy Miller
a1eccfdb61 Updated changelog 2017-11-28 12:58:04 -07:00
Matias Griese
90e05694d3 Merge remote-tracking branch 'origin/develop' into develop 2017-11-28 14:58:07 +02:00
Matias Griese
b97ac503a1 Add filter for item-list type (removes empty items from the list) 2017-11-28 14:57:53 +02:00
Agustin Villalba
2cc34151df Fixed issue #1742 where the creation of GPM object tried to connect to Remote repositories even if only Local package was needed (#1746)
All good, thanks!
2017-11-27 21:15:09 -07:00
Iain Gillis
4c160533c2 Add additional controls to HTML5 audio attributes (#1756)
Adds support for `autoplay`, `controls`, `loop`, and `preload` attributes, with rudimentary validation for preload.

Those for `autoplay`, `controls`, and `loop` are copied directly from pfcloutier-druide/aaa3f82

See also #1442.
2017-11-27 21:12:56 -07:00
Matias Griese
59dd0d1212 Fixed CSS Pipeline failing with Google remote fonts if the file was minified (#1261) (#1763)
* Fixed CSS Pipeline failing with Google remote fonts if the file was minified (#1261)

* Assets: Make tag check ungreedy again -- inline js may have tags in the content
2017-11-27 21:12:33 -07:00
Andy Miller
3bf7e38e52 Updated changelog 2017-11-27 18:30:10 -07:00
Andy Miller
362ee4c9eb Fix for URL encoding with Multibyte folders 2017-11-27 18:27:18 -07:00
Andy Miller
2462331884 Fix for MB Markdown links #1749 2017-11-27 18:21:08 -07:00
Matias Griese
cb4147a4bd Fixed token creation issue with Uri params like /id:3 2017-11-17 08:03:58 +02:00
Wensheng Yan
72f3a01abf Update Cache.php (#1745)
make sure find resource return valid path.
2017-11-15 18:35:44 -07:00
Matias Griese
31e3c1c295 Remove support for config.user, it was broken and bad practise 2017-11-10 22:07:29 +02:00
Andy Miller
37891a1032 Minor optimizations 2017-11-08 05:34:42 -07:00
Andy Miller
70284e1517 Sort using folder name #1740 2017-11-07 18:38:35 -07:00
Andy Miller
0bca1dcb48 Fix for custom_base_url issues #1736 2017-11-07 17:50:06 -07:00
Andy Miller
36f9865c0b Couple of utility functions 2017-11-07 17:44:40 -07:00
Matias Griese
cd48551630 Fix changelog 2017-11-07 17:00:34 +02:00
Matias Griese
0ff130650f Merge remote-tracking branch 'origin/develop' into develop 2017-11-07 16:57:59 +02:00
Matias Griese
9b445ac5b6 Fixed "Invalid AJAX response" When using Built-in PHP Webserver in Windows (#1258) 2017-11-07 16:57:52 +02:00
Andy Miller
c21248fcc2 Updated changelog 2017-11-06 19:52:05 -07:00
Andy Miller
88aa4c5ec9 Added ability to toggle lowercase urls 2017-11-06 19:50:59 -07:00
Matias Griese
0fd22ad933 Uri: Encode user and password to prevent issues in browsers 2017-11-06 10:26:17 +02:00
Andy Miller
00b56da220 Updated changelog 2017-11-02 14:51:13 -06:00
Andy Miller
fef6bdde5f Revert "Added system option to enable case insensitive urls. (#1638)"
This reverts commit 481fe1903e.
2017-11-02 14:48:42 -06:00
Sam
6f7938e939 Update README.md (#1705) 2017-11-01 17:21:14 -06:00
Viktor
2cd469cd7c Update CompiledFile.php (#1693)
const CACHE_DIR already defined with trailing slash

```php
define('CACHE_DIR', ROOT_DIR . 'cache/');
```
2017-11-01 17:20:38 -06:00
Andy Miller
0895b15489 Updated changelog 2017-10-31 16:38:16 -06:00
Andy Miller
d9062b60d6 Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-10-31 16:36:47 -06:00
Andy Miller
3f4049031d use Event object in Page/Pages events 2017-10-31 16:36:43 -06:00
Andy Miller
c81ce71074 Fix active() + activeChild() to work with UTF-8 #1727 2017-10-31 16:36:13 -06:00
cofunin
f84ffd235b Fix ignoring media in modular.yaml (#1725) 2017-10-30 18:15:39 -06:00
Andy Miller
1ca6181856 Added onPageProcessed for dynamic addPage() calls 2017-10-30 16:19:13 -06:00
Andy Miller
f17954a5db Added a copy method to Medium object 2017-10-30 15:36:52 -06:00
Andy Miller
acea401a3d Merge branch 'release/1.3.8' 2017-10-26 18:37:27 -06:00
Andy Miller
e9e4106d22 Merge tag '1.3.8' into develop
Release v1.3.8
2017-10-26 18:37:27 -06:00
Andy Miller
0ec7158102 Prepare for release 2017-10-26 18:37:17 -06:00
Andy Miller
d3695b2faa Fixed missing image file not throwing 404 p#1713 2017-10-23 16:19:08 -06:00
Andy Miller
0668a47758 Fixed GPM update issue with filtered slugs #1711 2017-10-23 16:13:22 -06:00
Andy Miller
ca645ef476 updated changelog 2017-10-19 22:13:36 -04:00
Andy Miller
3ff5f79561 Added manual order capability to Page media 2017-10-19 22:10:12 -04:00
Djamil Legato
b5c8b70163 More media order changes 2017-10-19 18:01:37 -04:00
Djamil Legato
173a70c017 Updated default yaml with media order 2017-10-19 17:39:10 -04:00
Benoît Rouleau
eb52f670b9 fix nonsense logic (#1709) 2017-10-19 16:53:31 -04:00
Sam
dd166ce25c Update CONTRIBUTING.md copywriting (#1706) 2017-10-19 09:19:03 -04:00
Andy Miller
ea6423226a Merge branch 'release/1.3.7' 2017-10-18 16:35:41 -04:00
Andy Miller
85bf4406ed Merge tag '1.3.7' into develop
Release v1.3.7
2017-10-18 16:35:41 -04:00
Andy Miller
0cb8e0664e Prepare for release 2017-10-18 16:35:27 -04:00
Matias Griese
2842b8fa39 Fixed routing paths with urlencoded spaces and non-latin letters (#1688) 2017-10-17 14:40:30 +03:00
Matias Griese
317615854a Uri: Prefer using REQUEST_SCHEME instead of HTTPS (#1698) 2017-10-17 13:34:25 +03:00
Matias Griese
a9c82710a6 Regression: base_url_absolute always has the port number (#1690) 2017-10-16 12:36:06 +03:00
Matias Griese
3856a2a719 Add unit test for #1688 2017-10-16 11:13:25 +03:00
Viktor
880128c339 Update Grav Console Cli InstallCommand.php (#1692)
why do I have to clone the entire history of the plugin?
2017-10-13 08:34:39 -06:00
Andy Miller
444b48f788 Merge branch 'release/1.3.6' 2017-10-12 12:26:29 -06:00
Andy Miller
cc69591799 Merge tag '1.3.6' into develop
Release v1.3.6
2017-10-12 12:26:29 -06:00
Andy Miller
0d6f774386 Prepare for release 2017-10-12 12:26:12 -06:00
Andy Miller
474ca513ae Fix for nginx and _url issue
[admin#1244](https://github.com/getgrav/grav-plugin-admin/issues/1244)
2017-10-12 12:23:49 -06:00
Matias Griese
f37c08f341 Regression: Ajax error in ngnix (#1244) 2017-10-12 21:18:34 +03:00
Matias Griese
92afba0e28 Add test case for #1244 2017-10-12 18:36:10 +03:00
Andy Miller
974fc552c5 Added another complex test 2017-10-11 19:24:16 -06:00
Andy Miller
d39ff74dd7 Merge branch 'release/1.3.5' 2017-10-11 14:49:28 -06:00
Andy Miller
9e1170bd50 Merge tag '1.3.5' into develop
Release v1.3.5
2017-10-11 14:49:28 -06:00
Andy Miller
081489dc6e Prepare for release 2017-10-11 14:49:16 -06:00
Andy Miller
710cd23bf9 updated changelog 2017-10-11 14:46:24 -06:00
Andy Miller
296a1fbc7d Override system.media.upload_limit with PHP's post_max_size or upload_max_filesize 2017-10-11 14:23:28 -06:00
Andy Miller
68503e117e Fix for logout nonce 2017-10-11 14:13:51 -06:00
Andy Miller
4d32b1dbbe updated changelog 2017-10-11 11:19:35 -06:00
Andy Miller
156588a75c Fix for bugs arising from last PR merge 2017-10-11 11:15:37 -06:00
Paul Massendari
df63a85f3e Specify type in inlineJS (#1683)
This commit allows users to specify type to inlineJS via a 4th parameter . 

This might be useful for those who would like to output encoded json microdata which require to use 
<script type="application/ld+json"> to be valid. 

Exemple usage: $assets->addInlineJs($outputjson, 100,'', "application/ld+json");
which will output: <script type="application/ld+json">
2017-10-11 11:05:01 -06:00
Fabien Villepinte
7ccba91792 Method Grav\Console\Gpm\InstallCommand::processPackage() invoked with 3 parameters, 1-2 required. (#1682) 2017-10-11 11:03:09 -06:00
Andy Miller
e23d245091 URI class improvements (#1681)
* Clean up and simplify Uri code

* Rewrite and clean up Uri class (fixes broken test cases)

* Fix some more Uri bugs based on new unit tests

* Removed double encoding

* Added html_entity_decode on params to handle UTF8 chars

* Uri: Fix protocol/host omitting URLs and default ports

* Added support for `$uri->toArray()` and `(string)$uri`

* Fixed bug in `Uri::buildParams()` causing parameters to be repeated

* Fixed double // in `Uri::addNonce()` when URL ends to slash, added tests for nonce

* Fixed nonce generation for URLs which contain query params or anchor

* Added a test for UTF-8 params

* Removed troublesome test!
2017-10-11 10:29:51 -06:00
Matias Griese
4dde506216 Add Uri tests for some more attacks 2017-10-05 20:31:06 +03:00
Matias Griese
c532cb7d45 Update Uri tests (including 11 failing tests) 2017-10-05 19:25:18 +03:00
Andy Miller
15ec8fe303 Slight optimization to clean path 2017-10-03 21:05:32 -06:00
Andy Miller
2fb77bb4ad Also clean path with extra slashes and backslashes 2017-10-03 21:00:22 -06:00
Andy Miller
b8a0903b88 Deter XSS attacks via URI 2017-10-03 17:44:10 -06:00
Andy Miller
680a6c8983 Added a new http_status_code Twig function 2017-10-02 17:33:43 -06:00
Andy Miller
28b8628438 Updated clean command to remove extraneous files 2017-09-30 11:07:08 -06:00
Andy Miller
a7c2505f36 Merge branch 'release/1.3.4' 2017-09-29 16:55:54 -06:00
Andy Miller
017e4373fb Merge tag '1.3.4' into develop
Release v1.3.4
2017-09-29 16:55:54 -06:00
Andy Miller
25b5becd1a prepare for release 2017-09-29 16:55:44 -06:00
Andy Miller
49013a0ed0 updated changelog 2017-09-29 16:55:02 -06:00
Newb I the Newbd
a861d57763 Fixed insecure session cookie initialization (#1656) 2017-09-28 17:57:14 -06:00
Andy Miller
a4ab5d9106 Fixed an issue where fallback was not supporting dynamic page generation 2017-09-28 16:00:57 -06:00
Andy Miller
442cb01adb cleanup 2017-09-28 15:57:25 -06:00
Andy Miller
c6793c1dee Updated vendor libs 2017-09-27 17:12:22 -06:00
Andy Miller
3b7a7d09a0 Missing thumbnail throwing error when adding .json file via media
https://github.com/getgrav/grav-plugin-admin/issues/1156
2017-09-25 13:21:15 -06:00
Andy Miller
80901cecdb rebuilt composer.lock for PHP 5.5+ 2017-09-23 07:34:36 -06:00
Andy Miller
7f23828ece Revert "Removed markdowndocs from require-dev due to PHP 7 requirements"
This reverts commit 8e1dca4360.
2017-09-23 07:33:12 -06:00
Andy Miller
8e1dca4360 Removed markdowndocs from require-dev due to PHP 7 requirements 2017-09-23 07:23:37 -06:00
Andy Miller
86d989a722 Added Page Collection filtering support 2017-09-23 07:09:34 -06:00
Andy Miller
046b9240e4 Added developer libs for markdowndocs lib for API documentation 2017-09-20 19:54:50 -06:00
Andy Miller
67f0cfb039 Changelog fixes 2017-09-19 12:14:18 -06:00
Andy Miller
238e209982 Twig extension cleanup 2017-09-15 15:07:22 -06:00
Andy Miller
c5f5ac62b5 Updated changelog 2017-09-15 11:28:14 -06:00
Andy Miller
776cf388b0 Merge branch 'feature/language-override-fixes' into develop 2017-09-15 11:26:44 -06:00
Andy Miller
c1c458a934 Fix for timestamp on pipelined assets 2017-09-15 11:24:46 -06:00
Andy Miller
ab721de49c Improved support for Assets with query strings #1451 2017-09-15 09:07:46 -06:00
Andy Miller
133e83f89d Removed extraneous cast 2017-09-14 21:07:39 -06:00
Andy Miller
af47fc7d60 Smarter merge of languages 2017-09-14 18:41:03 -06:00
Andy Miller
7adaf536f1 Fix for image URLs not being fully URL encoded #1622 2017-09-14 17:21:53 -06:00
Andy Miller
ffd61065ac Implemented Composer\CaBundle for safer SSL negotiation #1241 2017-09-14 16:58:09 -06:00
Andy Miller
8ff1042fe3 Refactored asset sorting logic 2017-09-14 15:20:24 -06:00
Andy Miller
79fa88c315 Fixed Page::summary() when using delimiter and multibyte UTF8 Characters #1644 2017-09-11 08:56:50 -06:00
Andy Miller
f2898f9f20 Merge tag '1.3.3' into develop
Release v1.3.3
2017-09-07 18:06:49 -06:00
Andy Miller
7fbac765e7 Merge branch 'release/1.3.3' 2017-09-07 18:06:48 -06:00
Andy Miller
ccad675336 Prepare for release 2017-09-07 18:06:39 -06:00
Andy Miller
0aa36f3cb0 updated changelog 2017-09-07 15:10:05 -06:00
Andy Miller
cc61464be3 Updated changelog 2017-09-07 14:26:10 -06:00
Andy Miller
d0e57c8276 Update LICENSE.txt 2017-09-07 14:00:46 -06:00
Andy Miller
898ab989aa Revert "Fix setting session cookie twice (#1634)"
This reverts commit 96028d1d69.
2017-09-07 13:07:08 -06:00
Andy Miller
580dac1784 Added new dirname filter 2017-09-07 10:43:28 -06:00
Andy Miller
2eb8690c2d Added new basename filter 2017-09-07 10:39:54 -06:00
Andy Miller
942652ec27 Try explicit php7 version 2017-09-05 21:53:49 -06:00
Andy Miller
6fb8cd293a Try PHP 7.1 as PHP 7.0 on travis is too old 2017-09-05 21:29:27 -06:00
Andy Miller
5e7d103eab Rolled back to PHP 5.6 compatible phpdocumentor libs 2017-09-05 21:22:00 -06:00
Andy Miller
82f3322d40 Use PHP7 compatible instantiator 2017-09-05 21:20:49 -06:00
Andy Miller
0dd5d08514 Accidentally updated to Doctrine Cache 1.7, force 1.6 (for PHP5 compatibility) 2017-09-05 21:17:09 -06:00
Andy Miller
8d64835765 updated vendor libs 2017-09-05 21:08:50 -06:00
Antony Dabonde
481fe1903e Added system option to enable case insensitive urls. (#1638) 2017-09-05 13:58:57 -06:00
j000
96028d1d69 Fix setting session cookie twice (#1634)
Because setting cookie twice bothers me. Now proper options are applied to first one, so no need to set it again.
2017-09-05 13:57:46 -06:00
Mike Mellor
8532c2d06e Added current position to page object (#1632) 2017-09-05 13:57:32 -06:00
Dávid Szabó
9147a10cc7 Add try to load alphanumeric class (#1630) 2017-09-05 13:57:17 -06:00
Andy Miller
0179c6ee65 blueprint alignment 2017-08-31 21:58:20 -06:00
Andy Miller
7a3f136207 updated changelog 2017-08-28 12:29:03 -06:00
Andy Miller
550b51f77a Added new tl filter/function to translate language #1618
This addresses issues with the PR.  It uses a new twig filter that gives full access to the langauges->translate() function.
2017-08-28 12:22:53 -06:00
Andy Miller
3572833e7a Revert "fix Twig dynamic translation (#1618)"
This reverts commit 7a7ffd3492.
2017-08-28 12:02:11 -06:00
Andy Miller
c52931e7fa hilight for 2fa in account should be on true 2017-08-27 12:57:39 -06:00
Andy Miller
535a3d9a83 return if not authenticated 2017-08-26 18:39:05 -06:00
Andy Miller
d075c29254 Added chunk_split() twig filter 2017-08-26 11:49:57 -06:00
Andy Miller
299a658050 updated changelog 2017-08-25 18:43:28 -06:00
Andy Miller
42d3b12b13 moved from help to sublabel 2017-08-25 18:42:57 -06:00
Andy Miller
3eace66274 Added 2fa authenticator check 2017-08-25 16:40:10 -06:00
Andy Miller
c66bae55b4 Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-08-25 10:47:43 -06:00
Andy Miller
d1b0f12e5b Added gaussianBlur media method #1623 2017-08-25 10:47:32 -06:00
Chris Jung
0543d997f6 Gregwar/Image supports gaussianBlur (#1623)
Since grav uses the GD Adapter of Gregwar/Image and has no option to change it, this should be safe to implement, when the latest Version of the Lib is used.
2017-08-25 10:44:59 -06:00
Andy Miller
b7e1eb9d1b Updated changelog again 2017-08-24 09:26:43 -06:00
Andy Miller
eecf914881 Updated changelog 2017-08-24 09:23:15 -06:00
Andy Miller
cc8a20537e Added support for redis password option #1620 2017-08-24 09:17:25 -06:00
Andy Miller
04690ce206 Use multilevel field to handle Asset Collections #1201 2017-08-24 07:57:56 -06:00
iusvar
7a7ffd3492 fix Twig dynamic translation (#1618)
* fix Twig dynamic translation

* fix Twig dynamic translation
2017-08-23 14:30:39 -06:00
Eihrister
667c4340d8 Changing back the default redirect code from 301 to 302. (#1619) 2017-08-23 14:29:18 -06:00
圈爷
39af36977e Quick Fix Summary issues (#1554)
* Quick Fix Summary issues

1. Calculate the string size without any html tags, so now you can get exactly what you wanted length;
2. Support utf8 2 character widths characters, like Chinese, Japanese;
3. This is a quick dirty mod, some associated functions should be rethinked;

* fix: Add an option to compatibel with old version

Now, you can use page.summary(10) as normal, or page.summary(10, true) to ignore all html tags and medias

* fit PS2R coding style

* psr-2 reformated without assignment align
2017-08-22 13:17:56 -06:00
Andy Miller
4cf5f00441 Added natsort on plugin load #1614 2017-08-22 11:22:13 -06:00
Andy Miller
85d1ed7255 Merge branch 'release/1.3.2' 2017-08-16 11:05:26 -06:00
Andy Miller
cafd371475 Merge tag '1.3.2' into develop
Release v1.3.2
2017-08-16 11:05:26 -06:00
Andy Miller
ebce5ecd31 Prepare for release 2017-08-16 11:05:12 -06:00
Andy Miller
51c3b6d105 vendor updates 2017-08-15 16:26:12 -06:00
Matias Griese
f02b7a6028 Merge remote-tracking branch 'origin/develop' into develop 2017-08-15 14:55:48 +03:00
Matias Griese
828e1a54f1 Fixed parent theme auto-loading in child themes of Gantry 5 2017-08-15 14:55:40 +03:00
Andy Miller
04d7945f10 Pushing default namespace 2017-08-14 16:17:27 -06:00
Andy Miller
4b948e2cbb Added a new Collection::intersect() method #1605 2017-08-11 13:41:46 -06:00
Andy Miller
122ded671c Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-08-11 11:17:11 -06:00
Andy Miller
c7c234d04a Added array_key_exists wrapper function 2017-08-11 11:17:05 -06:00
Andy Miller
a37582eb4c Added new events and paths to support namespacing #1604 2017-08-11 11:16:09 -06:00
Matias Griese
4776b0e6b5 Fixed Data::exists() and Data::raw() functions breaking if Data::file() hasn't been called with non-null value 2017-08-10 11:44:34 +03:00
Andy Miller
926d78d9cb updated changelog 2017-08-02 17:19:03 -06:00
naucon
7bfb316d6b Allow system.session.timeout field to be 0 (#1598) 2017-08-02 17:01:21 -06:00
Andy Miller
9168b192ff Added missing method access 2017-07-26 20:55:27 -06:00
Andy Miller
c2d22694f3 Updated with comparisons 2017-07-26 20:52:54 -06:00
Andy Miller
633a2a750f option to configure image cache clearing #1481 2017-07-26 12:53:16 -06:00
Andy Miller
13341c323d Added cache-control property #1591 2017-07-26 12:33:35 -06:00
Andy Miller
1bfbb71767 Merge tag '1.3.1' into develop
Release v1.3.1
2017-07-19 12:15:39 -06:00
Andy Miller
66fc3ae8c5 Merge branch 'release/1.3.1' 2017-07-19 12:15:38 -06:00
Andy Miller
f6667077f3 Prepare for release 2017-07-19 12:15:30 -06:00
Tim Robbings
bbc4a23c86 Fix default sort order (#1575)
This appears to have broken page ordering.

Test-information:

Did a quick test on a personal project, clearing cache and reloading
the page fixed the default sort order of the navbar (i.e. it displayed
according to numeric folder prefixes).
2017-07-17 15:47:53 -06:00
Flavio Copes
c178b22c10 Check if medium thumbnail exists before resetting 2017-07-17 18:10:06 +02:00
Flavio Copes
cd081b22a4 Fix ordering in linux+intl environments (#1571)
Added for next point release
2017-07-17 10:08:03 -06:00
Djamil Legato
3dc0a2994b Updated Access Token 2017-07-16 17:17:57 -06:00
Andy Miller
34d4cd9ab1 Merge tag '1.3.0' into develop
Release v1.3.0
2017-07-16 17:00:29 -06:00
Andy Miller
442d6a41ad Merge branch 'release/1.3.0' 2017-07-16 17:00:28 -06:00
Andy Miller
5f2542c1c7 Prepare for release 2017-07-16 17:00:13 -06:00
Andy Miller
e0d29c5ca2 Updated changelog 2017-07-11 19:13:30 -06:00
Djamil Legato
287a51148a Fix natural sort when > 100 pages (#1564)
* Fix natural sort when > 100 pages

* Revert manual and default sort type

* Only check prefix numbers
2017-07-11 18:01:13 -06:00
Andy Miller
4332dd07a9 Update changelog 2017-07-10 22:02:34 -06:00
Andy Miller
3148f3f502 Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-07-10 21:59:35 -06:00
Andy Miller
966c4f5866 Fix for broken range slider
https://github.com/getgrav/grav-plugin-admin/issues/1153
2017-07-10 21:59:28 -06:00
Tasos Papalyras
01c7a36025 Fix undeclared variable $difference (#1563)
Fixes a bug when returning nicetime
2017-07-07 00:21:41 -06:00
Andy Miller
f76d8827eb Prepare for release 2017-07-05 11:15:49 -06:00
Flavio Copes
4b723832ea Sanitize the error message in the error handler page 2017-07-03 17:10:22 +02:00
Flavio Copes
823244a787 Revert "Set folder name as required during validation [grav-plugin-admin#1146](https://github.com/getgrav/grav-plugin-admin/issues/1146)", was preventing validation 2017-06-30 10:40:49 +02:00
Andy Miller
876380b9a7 Updated changelog 2017-06-29 17:15:39 -06:00
Andy Miller
eac96c00dc Also for routes 2017-06-29 14:09:34 -06:00
Andy Miller
5e3dbbf092 Fix for broken regex redirects/routes 2017-06-29 14:07:31 -06:00
Flavio Copes
08920d5b10 Allow to set system.session.timeout to 0 to clear session on browser close (#1538)
* Allow to set expire to 0 to clear session on browser close

* Changelog
2017-06-29 15:32:35 +02:00
Flavio Copes
144fcf43cf Set folder name as required during validation, fix https://github.com/getgrav/grav-plugin-admin/issues/1146 2017-06-29 15:29:19 +02:00
Matias Griese
e9c11bbef2 Fixed global media files disappearing after a reload (#1545) 2017-06-28 11:50:39 +03:00
Andy Miller
90182e2ceb Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-06-27 15:41:33 -06:00
Andy Miller
2b7707a6a0 Renamed media func to avoid conflict 2017-06-27 15:41:28 -06:00
Flavio Copes
cd60acde5f Create CODE_OF_CONDUCT.md (#1541) 2017-06-26 08:27:02 -06:00
Andy Miller
e14ab682fd Set to testing 2017-06-22 17:49:02 -06:00
Andy Miller
7736447ae8 Prepare for release 2017-06-22 14:18:31 -06:00
Flavio Copes
f83b65be19 Update matthiasmullie/minify to 1.3.45. Fix #1518 2017-06-22 15:35:52 +02:00
Andy Miller
b1715dc54f Only rebuild metadata if files don't exist 2017-06-20 13:26:28 -06:00
Flavio Copes
40ad4a3d5b Add translations contribution explanation 2017-06-15 16:12:11 +02:00
Flavio Copes
69bf98ae6e Explain correct branch for PR 2017-06-15 16:06:06 +02:00
Flavio Copes
4dfbcf0318 Add security contact to the README and point to contributing guide
Removed useless gitflow information in favor of simpler PR-based approach described in the contributing doc
2017-06-15 16:04:08 +02:00
Flavio Copes
5e329d343f Fix changelog 2017-06-08 13:31:46 +02:00
Flavio Copes
947c920fbd Improved error message when running bin/grav install instead of bin/gpm install, and also when running on a non-skeleton site #1027
```
$ bin/grav install
HINT Are you trying to install Grav? Grav is already installed. You
need to run this command only if you download a skeleton from GitHub
directly.

$ bin/grav install admin
HINT Are you trying to install a plugin or a theme? Make sure you use
bin/gpm install <something>, not bin/grav install. This command is only
used to install Grav skeletons.
```
2017-06-06 13:15:08 +02:00
Flavio Copes
354ef34c7a Restore GravTrait in ConsoleTrait, fix https://github.com/getgrav/grav-plugin-login/issues/119 2017-06-06 13:00:39 +02:00
Ole Vik
ff8a8dde28 Fix Windows routing with built-in server (#1502)
Strips backward-slashes from Medium.php's and ImageMedium.php's url() method.
2017-06-04 14:24:29 -06:00
the4thamigo-uk
9c0f06e306 fix #1504 process_twig and frontmatter.yaml (#1507) 2017-06-04 14:21:28 -06:00
ShtHappens796
634f2bdfa0 Nicetime fix: 0 seconds from now -> just now (#1509)
* Update TwigExtension.php

Check if date matches, which means the post / comment was posted just now. 

Will return proper value to whatever function uses it.
The file /system/languages/en.yaml and basically all language files need to include the JUST_NOW text value which should be "just now", of course correctly translated in each language.

This fix has been created in order to fix the "0 seconds from now" message as it sounds weird.

* Update en.yaml - Add JUST_NOW variable

Should be translated to other languages and included in all translation files.
2017-06-02 06:32:15 -06:00
Denis Efremov
5551cb834c Fixed help text wrapping (#1503) 2017-05-31 19:54:50 +02:00
Djamil Legato
abccf2278d Removed HHVM PHP environment from travis. 2017-05-30 16:39:51 -07:00
Andy Miller
c1edbab1fa added lower/upper filter types 2017-05-27 08:35:18 -06:00
Andy Miller
7274f52988 only build media from supported media types 2017-05-27 00:21:29 -06:00
Andy Miller
53bccab326 Adde pathinfo twig function 2017-05-26 17:52:19 -06:00
Andy Miller
0ca58122a9 added a relativePath() method 2017-05-25 06:13:27 -06:00
Andy Miller
4107518a02 updated changelog 2017-05-24 11:50:11 -06:00
Andy Miller
42d99756ea Added a tonne of new thumbs 2017-05-24 11:48:23 -06:00
Andy Miller
f22d6beb28 Prepare for release 2017-05-22 14:41:08 -06:00
Andy Miller
d40cb3c74a Fix for bad base_url paths in some URLs 2017-05-21 16:24:13 -06:00
Andy Miller
9277381527 Fix for inefficient path parts 2017-05-21 16:23:27 -06:00
Andy Miller
7dd886837f Tweak to 'hash' file check method 2017-05-20 22:17:40 -06:00
Andy Miller
ba562f0486 Added Utils::getPagePathFromToken() 2017-05-20 22:16:53 -06:00
Flavio Copes
27647d45d0 Changelog 2017-05-19 10:07:14 +02:00
Flavio Copes
2e7e3c41c0 Changelog 2017-05-19 10:05:31 +02:00
Flavio Copes
ce32a08cbf Remove unpublished pages from the translated languages, move into untranslated list (#1482)
* Remove unpublished pages from the translated languages, move into untranslated list

Refs https://github.com/getgrav/grav-plugin-sitemap/issues/43

* Add missing part

* Add flags to avoid breaking changes
2017-05-19 10:01:02 +02:00
Andy Miller
f7266ef752 Typo 2017-05-18 14:33:10 -06:00
Andy Miller
f126f3fd53 Put onOutputRendered back in processor 2017-05-18 14:16:26 -06:00
OliverO2
890b0280b3 Fix output handling in RenderProcessor (#1483)
Ensure that output modifications by subscribers to onOutputGenerated are picked up.
2017-05-18 17:45:08 +03:00
Matias Griese
5a93fcf952 Minor fix for adding custom page vars if page template file cannot be found 2017-05-18 13:09:29 +03:00
Matias Griese
f3cecd8bdd Merge remote-tracking branch 'origin/develop' into develop 2017-05-18 09:51:14 +03:00
Matias Griese
7543f3e543 Define public $this->output variable for Grav container (for PhpStorm) 2017-05-18 09:51:03 +03:00
Andy Miller
ffe286ea49 cleanup output 2017-05-17 15:29:21 -06:00
Andy Miller
f31f6f8e04 Moved onOutputRendered() back into Grav core 2017-05-17 14:31:59 -06:00
Andy Miller
725e6ab303 Prepare for release 2017-05-17 12:17:57 -06:00
Andy Miller
cb36bdabdf Added timestamp on configurations #1480 2017-05-17 12:11:48 -06:00
Andy Miller
dd058155c8 Updated changelog 2017-05-17 11:44:07 -06:00
Flavio Copes
8dabe88246 Avoid validation on a YAML field, do not parse YAML (#1480)
YAML parsing causes a fatal error if the field is not a string
2017-05-17 11:42:27 -06:00
Andy Miller
5c0d378d1e changelog typos 2017-05-17 11:08:07 -06:00
Andy Miller
18f97b067d Various checks for Exif existence before using 2017-05-17 10:31:56 -06:00
Andy Miller
fd858248af Added media and vardump Twig functions 2017-05-17 10:31:27 -06:00
Andy Miller
6496508810 Prepare for release 2017-05-16 13:33:59 -06:00
Andy Miller
d11099c0ae Updated toolbox 2017-05-15 15:10:42 -06:00
Matias Griese
9c5df5977d Merge remote-tracking branch 'origin/develop' into develop 2017-05-15 20:26:52 +03:00
Matias Griese
d3526ae544 Added support for a single array field in the forms 2017-05-15 20:26:45 +03:00
Andy Miller
52d4c3f137 Only store 'extra' metadata in yaml 2017-05-15 10:45:14 -06:00
Andy Miller
0c0bf4b137 Store metadata atomically for easy retrieval 2017-05-15 10:03:36 -06:00
Flavio Copes
6b282d845f Fix issue with exif when composer update is not run
For git-cloned repos
2017-05-15 12:36:31 +02:00
Andy Miller
82f223248e Added Exif + Auto generation of meta.yaml files (#1472)
* Added Exif + Auto generation of meta.yaml files

* Added twig function

* Put a check in for `exif_read_data` function
2017-05-12 16:20:22 -06:00
Ole Vik
a9f1ca429a Tiny typo (#1473) 2017-05-12 15:28:40 -06:00
Andy Miller
7db5d9189b Updated clean command 2017-05-12 15:28:03 -06:00
Andy Miller
8ff2003411 Added base32/64 encode/decode twig filters 2017-05-12 14:47:55 -06:00
j000
899cbffe33 ETag header should be inside double quotes (#1471)
It's small change, but still...

https://tools.ietf.org/html/rfc7232#section-2.3
2017-05-12 12:05:35 -06:00
Matias Griese
77b44f83e1 Add missing APCu 2017-05-11 13:37:24 +03:00
Matias Griese
5fc5813274 Use older version of doctrine/collections (PHP 5.5 support) 2017-05-10 11:06:40 +03:00
Matias Griese
56b0cf292e Changelog update 2017-05-10 10:34:37 +03:00
Matias Griese
08e0679942 Oops, accidentally merged local 2.0 branch into develop, revert GravTrait deprecation and several new Framework classes 2017-05-10 10:08:08 +03:00
Matias Griese
6c062edd18 Add Page interfaces to Grav Framework 2017-05-10 09:44:59 +03:00
Matias Griese
65d844c6e7 Merge branch 'feature/objects' of https://github.com/getgrav/grav into 2.0 2017-05-10 09:43:38 +03:00
Matias Griese
10b4a90501 Add useful functions to FileCollection class 2017-05-09 21:40:35 +03:00
Matias Griese
5f00e1f8ee Rename Collection class to ArrayCollection 2017-05-09 21:27:33 +03:00
Matias Griese
3c468a23c1 Remove Object Finder classes (replaced by FileCollection) 2017-05-09 20:18:32 +03:00
Matias Griese
93c4396bfb Add FileCollection class 2017-05-09 20:17:26 +03:00
Matias Griese
19ac7f3e3f Add AbstractLazyCollection 2017-05-09 12:32:07 +03:00
Scott Hamper
fc5c3023c6 [WIP] Web Server Config URL Rewrite Rules White List (#1458)
* Escaped literal periods in web server config files rewrite rules.

* Black listed "yml" file extension in web server configs rewrite rules.
2017-05-06 11:09:31 -06:00
Flavio Copes
04243f7dd3 Fix #1462 issue with no groups definition 2017-05-06 15:04:30 +02:00
Flavio Copes
cdc6b910cb Bump year 2017-05-05 17:21:59 +02:00
Flavio Copes
219bf9dc6c Groups selection pre-filled in user form 2017-05-05 17:19:16 +02:00
Matias Griese
ad66f0b637 Fix saving stored collections 2017-05-05 15:59:44 +03:00
Matias Griese
bd7469d8e0 Fix StoredObjectInterface::save() to have parameter to include children 2017-05-05 15:21:16 +03:00
Matias Griese
bfda4df2f2 Add storage interface also to object collection 2017-05-05 14:26:12 +03:00
Matias Griese
718608cd55 Improve object classes 2017-05-05 13:38:29 +03:00
Matias Griese
7217635c6f Merge branches 'develop' and 'feature/objects' of https://github.com/getgrav/grav into feature/objects
# Conflicts:
#	CHANGELOG.md
2017-05-05 09:30:59 +03:00
Andy Miller
3eeabdbf89 Merge branch 'develop' of https://github.com/getgrav/grav into develop
# Conflicts:
#	system/src/Grav/Common/Page/Page.php
2017-05-04 06:49:06 -06:00
Andy Miller
958557d2fe Removed logging statement for invalid slug #1459 2017-05-04 06:47:57 -06:00
Flavio Copes
c8345c6613 Edit check for valid slug. Fix #1459 2017-05-04 09:50:46 +02:00
Flavio Copes
83ed2aac00 Changelog 2017-04-25 12:43:44 +02:00
pfcloutier
849130621a Add more controls over HTML5 video attributes (autoplay, poster, loop controls) (#1442) 2017-04-25 12:42:27 +02:00
Andy Miller
bb6175397c Vendor updates 2017-04-24 18:02:04 -06:00
Andy Miller
2074c4933a Force redirect/route matching from start of route #1446 2017-04-24 17:57:47 -06:00
Andy Miller
e8aa9f0381 Merge tag '1.2.4' into develop
Release v1.2.4
2017-04-24 15:32:08 -06:00
Andy Miller
c8590b9523 Merge branch 'release/1.2.4' 2017-04-24 15:32:07 -06:00
Andy Miller
e4ffc8d3de Prepare for release 2017-04-24 15:31:57 -06:00
Andy Miller
e5a522a2fe Added ignores to install options for Installer::sophisticatedInstall() #1447 2017-04-24 15:00:31 -06:00
Andy Miller
34281a14a4 Updated changelog 2017-04-21 22:20:16 -06:00
Andy Miller
f6d910f226 Added support for showModular option in Pages::getList() 2017-04-21 22:18:36 -06:00
Matias Griese
7371a11891 Deprecated GravTrait 2017-04-21 21:34:41 +03:00
Matias Griese
48d5183e07 Added Debugger::getCaller() to figure out where the method was called from 2017-04-21 21:33:35 +03:00
Matias Griese
bf42db3af1 Update changelog 2017-04-21 13:42:38 +03:00
Matias Griese
28d3866eb0 Minor code improvements on processors 2017-04-21 13:26:39 +03:00
Matias Griese
f5517035ba Merge branches 'develop' and 'feature/objects' of https://github.com/getgrav/grav into feature/objects 2017-04-21 12:23:53 +03:00
Matias Griese
bc9dfe736d Move output handling into the render processor 2017-04-21 12:23:19 +03:00
Matias Griese
aee07203a2 Add support for custom output providers like Slim Framework 2017-04-21 11:22:08 +03:00
Andy Miller
13b3b9875e Should address uery strings at the root of multilang sites #1436 2017-04-20 11:02:54 -06:00
Matias Griese
7fc92dcaa2 Merge branch 'develop' of https://github.com/getgrav/grav into feature/objects 2017-04-20 15:48:32 +03:00
Matias Griese
6539931387 Add support for extra context vars in Twig::processSite() 2017-04-20 15:46:59 +03:00
Andy Miller
85a25d0adc Fix for Gantry5 init'ing theme as well as Admin plugin 2017-04-19 17:08:56 -06:00
Andy Miller
8f9e401fc9 Merge tag '1.2.3' into develop
Release v1.2.3
2017-04-19 15:59:57 -06:00
Andy Miller
fc7c6484a7 Merge branch 'release/1.2.3' 2017-04-19 15:59:56 -06:00
Andy Miller
7bbcefbb4d Prepare for release 2017-04-19 15:59:48 -06:00
Matias Griese
bd2f06e72f Merge branch 'develop' of https://github.com/getgrav/grav into feature/objects 2017-04-19 14:41:29 +03:00
Matias Griese
bc6bf737b9 Add Pages::baseUrl(), Pages::homeUrl() and Pages::url() functions and use them 2017-04-19 14:30:34 +03:00
MucaP
749d0e3f2d Those simple things everyone miss (#1428) 2017-04-14 13:26:15 -06:00
Andy Miller
7ba69dd5a1 Fixed Pages test 2017-04-14 12:38:59 -06:00
Andy Miller
00206d5957 Merge branch 'develop' of https://github.com/getgrav/grav into develop 2017-04-14 11:39:29 -06:00
Andy Miller
d214bb5b94 Improved getList() method to do more stuff 2017-04-14 11:39:24 -06:00
Ole Vik
1203b0d900 Fix typo in GPM.php (#1427) 2017-04-14 13:29:05 +02:00
Andy Miller
869b1c4c3b Updated changelog 2017-04-13 15:07:47 -06:00
Andy Miller
c06b2573a1 Added new pwd_regex and username_regex system configuration options 2017-04-13 15:03:20 -06:00
Benny
50dd834bc4 Allow user/account.yaml overrides + implemented more robust theme init (#1416)
* Allow `user/accounts.yaml` overrides and implemented more robust theme initialization

* Allow to override `theme://` in theme config
2017-04-13 14:38:54 -06:00
Matias Griese
7b13ceb9a3 Add new ContentBlock classes 2017-04-13 12:04:31 +03:00
Matias Griese
22effeac42 Move new Collection/Object classes into Grav\Framework 2017-04-13 12:04:14 +03:00
Matias Griese
0e77103883 Merge branches 'develop' and 'feature/objects' of https://github.com/getgrav/grav into feature/objects
# Conflicts:
#	composer.lock
2017-04-12 20:58:10 +03:00
Andy Miller
56e58f3b5e Return "" if no childType set rather than default 2017-04-12 10:28:55 -06:00
Andy Miller
619dc30aca Merge tag '1.2.2' into develop
Release v1.2.2
2017-04-11 14:21:16 -06:00
Andy Miller
5bc3ce07dc Merge branch 'release/1.2.2' 2017-04-11 14:21:15 -06:00
Andy Miller
0fe676c34b Preparing release 2017-04-11 14:21:03 -06:00
Andy Miller
60f97f27be Fix for redirects breaking #1420 2017-04-11 13:32:25 -06:00
Flavio Copes
1d7f41e4a8 Fix #1405 issue in direct-install with github-style dependencies 2017-04-11 11:30:27 +02:00
Andy Miller
3a97502219 Merge tag '1.2.1' into develop
Release v1.2.1
2017-04-10 18:36:59 -06:00
Andy Miller
ca09f789a7 Merge branch 'release/1.2.1' 2017-04-10 18:36:58 -06:00
Andy Miller
be94947d38 Prepare for release 2017-04-10 18:36:42 -06:00
Andy Miller
0a22ff0c68 Fixed changelog 2017-04-10 15:18:33 -06:00
Andy Miller
840a349ace Updated changelog 2017-04-10 15:18:10 -06:00
Andy Miller
b85e595bbb Little cleanup 2017-04-10 12:10:55 -06:00
Josh Weiss
082d4e3435 Ancestor and Inherited functions for Page & Pages (#1362)
* Ancestor and inherited functions for Page & Pages

Addes both helper methods to `Grav\Common\Page` and Grav instance utility functions to `Grav\Common\Pages`.

* Ancestor Page return considering field criteria

* Updates according to code review issue

Made changes to act on current Page object only for the Page functions

Changed variable name to better reflect the intention of the passed param for the Pages class functions

* Simplify duplicate code

* Simplify Pages logic

Simpilfied duplicate code. Also clarified  variable naming for similar functions.
2017-04-10 12:00:58 -06:00
Andy Miller
bfb6b6d68a Updated changelog 2017-04-04 13:31:32 -06:00
Andy Miller
8dc2ced94c Fix for direct-install of plugins with languages.yaml #1396 2017-04-04 13:24:10 -06:00
OliverO2
f510e136c8 Add {'loading': 'inline'} option for Js and CSS assets (#1377)
* Assets.php: Extract common functionaly of addCss() and addJs() into
  addTo(), make css() and js() honor $attributes['loading'],
  make pipelineCss() and pipelineJs() return generated content
  instead of URL depending on new option $returnURL.

* AssetsTest.php: Accept new 'loading' option for CSS, add tests for
  adding and pipelining local and remote assets with inline loading.
2017-04-04 11:25:39 -06:00
Flavio Copes
4365662304 Add query string in lighttpd default config (#1393) 2017-04-04 08:54:48 -06:00
Gilles van Eeden
4aa6dce853 add function isajaxrequest() (#1400)
* Update Taxonomy.php

* Update TwigExtension.php

* Update TwigExtension.php

Incorrect comment updated.

* Update TwigExtension.php

Add function ishuman() to detect agent disposition.

* Update TwigExtension.php

* Revert "Merge remote-tracking branch 'origin/develop' into develop"

This reverts commit 7a59a84290, reversing
changes made to 102973d22c.

* Revert "Revert "Merge remote-tracking branch 'origin/develop' into develop""

This reverts commit 50fc775c69.

* Attempt to resolve conflicts

* param comment corrected

* Update TwigExtension.php

* Update TwigExtension.php

* Update TwigExtension.php

* Update TwigExtension.php

* add isajaxrequest

Check HTTP_X_REQUESTED_WITH header. Non critical use only. Handy for
streamlining ajax presentation.

* remove ishuman

* remove Browser class
2017-04-04 08:53:27 -06:00
Flavio Copes
d338d79acb When determining language from HTTP_ACCEPT_LANGUAGE, also try base language only (#1402)
Fixes Safari sending the language code always with a locale (e.g. it-it
or fr-fr)
2017-04-04 08:51:16 -06:00
Frédéric Potvin
459b7c4a33 Fix #1389 related to bin/gpm direct-install (#1397)
Add --all-yes and --destination options

Fix a problem where temporary package files will not be
cleaned upon command error.
2017-04-02 18:45:57 -06:00
Andy Miller
06e880de57 Fixed a bad method signature causing warning when running tests on GPMTest object 2017-04-01 22:13:43 -06:00
Djamil Legato
cbf3df4bf1 Trying using Gimme to switch Golang version 2017-03-31 11:30:58 -07:00
Andy Miller
3d1ed7118e Merge tag '1.2.0' into develop
Release v1.2.0
2017-03-31 11:28:48 -06:00
Matias Griese
020cc6f39b Merge remote-tracking branch 'origin/feature/objects' into feature/objects 2017-03-17 11:18:58 +02:00
Matias Griese
3897506c7f Add ObjectCollectionTrait::group() function 2017-03-17 11:18:50 +02:00
Djamil Legato
9f57af80cf Merge branch 'develop' into feature/objects
# Conflicts:
#	CHANGELOG.md
2017-03-10 11:46:57 -08:00
Andy Miller
ebb8786cd9 Fixed Page::expires(0) that was not getting picked up 2017-03-08 15:34:54 -07:00
Matias Griese
703080a329 Start using StorageTrait for AbstractObject and AbstractObjectCollection 2017-03-07 15:45:15 +02:00
Matias Griese
c1ee217cef Update Object classes 2017-03-07 12:06:26 +02:00
Matias Griese
d0eed03fef Merge remote-tracking branch 'origin/feature/objects' into feature/objects 2017-03-06 18:59:04 +02:00
Matias Griese
9ba038b2b3 Implement ObjectStorageTrait 2017-03-06 18:58:55 +02:00
Matias Griese
34cff72fce Add FilesystemStorage::exists() 2017-03-06 14:27:40 +02:00
Andy Miller
052a6df550 Merge branch 'feature/objects' of https://github.com/getgrav/grav into feature/objects 2017-03-04 13:28:50 -07:00
Andy Miller
8032830873 Added block/line option to process markdown 2017-03-04 13:28:43 -07:00
Matias Griese
4ace1d0b42 Implement nested saving support for Object\AbstractObject class 2017-02-28 19:10:42 +02:00
Matias Griese
d0f4fbdfcc Implement Object\FilesystemStorage class 2017-02-28 19:09:35 +02:00
Matias Griese
c7c3659312 Fixed Folder::move() 2017-02-27 20:28:37 +02:00
Matias Griese
f6e4091e51 Merge branches 'develop' and 'feature/objects' of https://github.com/getgrav/grav into feature/objects 2017-02-27 12:56:32 +02:00
Matias Griese
4945160bc7 Merge branches 'develop' and 'feature/objects' of https://github.com/getgrav/grav into feature/objects 2017-02-20 10:58:18 +02:00
Matias Griese
863d92cabf Collection now implements JsonSerializable 2017-02-15 12:25:36 +02:00
Matias Griese
eae222f264 Update Collection classes to be based on Doctrine Collections 2017-02-15 11:44:14 +02:00
Matias Griese
76c870ce04 Add new collection and object classes 2017-02-10 20:53:35 +02:00
354 changed files with 5390 additions and 2073 deletions

View File

@@ -54,17 +54,17 @@ RewriteRule .* index.php [L]
## Begin - Security
# Block all direct access for these folders
RewriteRule ^(.git|cache|bin|logs|backup|webserver-configs|tests)/(.*) error [F]
RewriteRule ^(\.git|cache|bin|logs|backup|webserver-configs|tests)/(.*) error [F]
# Block access to specific file types for these system folders
RewriteRule ^(system|vendor)/(.*)\.(txt|xml|md|html|yaml|php|pl|py|cgi|twig|sh|bat)$ error [F]
RewriteRule ^(system|vendor)/(.*)\.(txt|xml|md|html|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ error [F]
# Block access to specific file types for these user folders
RewriteRule ^(user)/(.*)\.(txt|md|yaml|php|pl|py|cgi|twig|sh|bat)$ error [F]
RewriteRule ^(user)/(.*)\.(txt|md|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ error [F]
# Block all direct access to .md files:
RewriteRule \.md$ error [F]
# Block all direct access to files and folders beginning with a dot
RewriteRule (^|/)\.(?!well-known) - [F]
# Block access to specific files in the root folder
RewriteRule ^(LICENSE.txt|composer.lock|composer.json|\.htaccess)$ error [F]
RewriteRule ^(LICENSE\.txt|composer\.lock|composer\.json|\.htaccess)$ error [F]
## End - Security
</IfModule>

View File

@@ -2,8 +2,8 @@ language: php
php:
- '5.5'
- '5.6'
- '7.0'
- hhvm
- '7.0.21'
- '7.1'
branches:
only:
- develop
@@ -38,7 +38,7 @@ env:
- GOPATH="$HOME/go"
- PATH="$GOPATH/bin:$PATH"
# GH_TOKEN [API Key]
- secure: "jS+c+g2v33vypG4VtqiSDW2qQ4dGJZlrUKBRCztoy1yrOrYRPvc5Vzi/AS3fDmZ4yizukEwmUNNzyZQcgFvLPpmCCml46Dovp8R9OXhbNe8OnULmaSn2Zkr71oblMYu6ZP+RpYvNq0BIdSB3u2TiFriHMiTIkX9UwZNaUCOX1ig="
- secure: "NR9pV7YteY9OoPmjDTQG0fDfocVu+tCeiDH1F2GFhXCu71UOIvqWXpOxp0RHkG5GIXdCFHx59yu+ZO275lbaHkbF8+4lVSVrV4RcGn+pIncvxr6iZCVW05dbAxV3H8alK+xYJRGmbyfQl5wIM49WvmuGHZjcmIloS4t/omQ3N+I="
# BB_TOKEN value => "user:pass@"
- secure: "einUtSEkUWy2IrqLXyVjwUU+mwaaoiOXRRVdLBpA3Zye6bZx8cm5h/5AplkPWhM/NmCJoW/MwNZHHkFhlr3mDRov5iOxVmTTYfnXB+I5lxYTSgduOLLErS7mU8hfADpVDU8bHNU44fNGD3UEiG1PD4qQBX4DMlqIFmR20mjs81k="
# GH_API_USER [for curl]
@@ -55,6 +55,7 @@ before_install:
fi
- if [ $TRAVIS_BRANCH != 'develop' ] && [ $TRAVIS_PHP_VERSION == "5.6" ] && [ $TRAVIS_PULL_REQUEST == "false" ]; then
export TRAVIS_TAG=$(curl --fail --user "${GH_API_USER}" -s https://api.github.com/repos/getgrav/grav/releases/latest | grep tag_name | head -n 1 | cut -d '"' -f 4);
eval "$(curl -sL https://raw.githubusercontent.com/travis-ci/gimme/master/gimme | GIMME_GO_VERSION=1.8 bash)";
go get github.com/aktau/github-release;
git clone --quiet --depth=50 --branch=master https://${BB_TOKEN}bitbucket.org/rockettheme/grav-devtools.git $RT_DEVTOOLS &>/dev/null;
if [ ! -z "$TRAVIS_TAG" ]; then

View File

@@ -1,3 +1,261 @@
# v1.3.9
## 12/05/2017
1. [](#new)
* Added new core Twig templates for `partials/metadata.html.twig` and `partials/messages.html.twig`
* Added ability to work with GPM locally [#1742](https://github.com/getgrav/grav/issues/1742)
* Added new HTML5 audio controls [#1756](https://github.com/getgrav/grav/issues/1756)
* Added `Medium::copy()` method to create a copy of a medium object
* Added new `force_lowercase_urls` functionality on routes and slugs
* Added new `item-list` filter type to remove empty items
* Added new `setFlashCookieObject()` and `getFlashCookieObject()` methods to `Session` object
* Added new `intl_enabled` option to disable PHP intl module collation when not needed
1. [](#bugfix)
* Fixed an issue with checkbox field validation [form#216](https://github.com/getgrav/grav-plugin-form/issues/216)
* Fixed issue with multibyte Markdown link URLs [#1749](https://github.com/getgrav/grav/issues/1749)
* Fixed issue with multibyte folder names [#1751](https://github.com/getgrav/grav/issues/1751)
* Fixed several issues related to `system.custom_base_url` that were broken [#1736](https://github.com/getgrav/grav/issues/1736)
* Dynamically added pages via `Pages::addPage()` were not firing `onPageProcessed()` event causing forms not to be processed
* Fixed `Page::active()` and `Page::activeChild()` to work with UTF-8 characters in the URL [#1727](https://github.com/getgrav/grav/issues/1727)
* Fixed typo in `modular.yaml` causing media to be ignored [#1725](https://github.com/getgrav/grav/issues/1725)
* Reverted `case_insensitive_urls` option as it was causing issues with taxonomy [#1733](https://github.com/getgrav/grav/pull/1733)
* Removed an extra `/` in `CompileFile.php` [#1693](https://github.com/getgrav/grav/pull/1693)
* Uri::Encode user and password to prevent issues in browsers
* Fixed "Invalid AJAX response" When using Built-in PHP Webserver in Windows [#1258](https://github.com/getgrav/grav-plugin-admin/issues/1258)
* Remove support for `config.user`, it was broken and bad practise
* Make sure that `clean cache` uses valid path [#1745](https://github.com/getgrav/grav/pull/1745)
* Fixed token creation issue with `Uri` params like `/id:3`
* Fixed CSS Pipeline failing with Google remote fonts if the file was minified [#1261](https://github.com/getgrav/grav-plugin-admin/issues/1261)
* Forced `field.multiple: true` to allow use of min/max options in `checkboxes.validate`
# v1.3.8
## 10/26/2017
1. [](#new)
* Added Page `media_order` capability to manually order page media via a page header
1. [](#bugfix)
* Fixed GPM update issue with filtered slugs [#1711](https://github.com/getgrav/grav/issues/1711)
* Fixed issue with missing image file not throwing 404 properly [#1713](https://github.com/getgrav/grav/issues/1713)
# v1.3.7
## 10/18/2017
1. [](#bugfix)
* Regression Uri: `base_url_absolute` always has the port number [#1690](https://github.com/getgrav/grav-plugin-admin/issues/1690)
* Uri: Prefer using REQUEST_SCHEME instead of HTTPS [#1698](https://github.com/getgrav/grav-plugin-admin/issues/1698)
* Fixed routing paths with urlencoded spaces and non-latin letters [#1688](https://github.com/getgrav/grav-plugin-admin/issues/1688)
# v1.3.6
## 10/12/2017
1. [](#bugfix)
* Regression: Ajax error in Nginx [admin#1244](https://github.com/getgrav/grav-plugin-admin/issues/1244)
* Remove the `_url=$uri` portion of the the Nginx `try_files` command [admin#1244](https://github.com/getgrav/grav-plugin-admin/issues/1244)
# v1.3.5
## 10/11/2017
1. [](#improved)
* Refactored `URI` class with numerous bug fixes, and optimizations
* Override `system.media.upload_limit` with PHP's `post_max_size` or `upload_max_filesize`
* Updated `bin/grav clean` command to remove unnecessary vendor files (save some bytes)
* Added a `http_status_code` Twig function to allow setting HTTP status codes from Twig directly.
* Deter XSS attacks via URI path/uri methods (credit:newbthenewbd)
* Added support for `$uri->toArray()` and `(string)$uri`
* Added support for `type` on `Asstes::addInlineJs()` [#1683](https://github.com/getgrav/grav/pull/1683)
1. [](#bugfix)
* Fixed method signature error with `GPM\InstallCommand::processPackage()` [#1682](https://github.com/getgrav/grav/pull/1682)
# v1.3.4
## 09/29/2017
1. [](#new)
* Added filter support for Page collections (routable/visible/type/access/etc.)
1. [](#improved)
* Implemented `Composer\CaBundle` for SSL Certs [#1241](https://github.com/getgrav/grav/issues/1241)
* Refactored the Assets sorting logic
* Improved language overrides to merge only 'extra' translations [#1514](https://github.com/getgrav/grav/issues/1514)
* Improved support for Assets with query strings [#1451](https://github.com/getgrav/grav/issues/1451)
* Twig extension cleanup
1. [](#bugfix)
* Fixed an issue where fallback was not supporting dynamic page generation
* Fixed issue with Image query string not being fully URL encoded [#1622](https://github.com/getgrav/grav/issues/1622)
* Fixed `Page::summary()` when using delimiter and multibyte UTF8 Characters [#1644](https://github.com/getgrav/grav/issues/1644)
* Fixed missing `.json` thumbnail throwing error when adding media [grav-plugin-admin#1156](https://github.com/getgrav/grav-plugin-admin/issues/1156)
* Fixed insecure session cookie initialization [#1656](https://github.com/getgrav/grav/pull/1656)
# v1.3.3
## 09/07/2017
1. [](#new)
* Added support for 2-Factor Authentication in admin profile
* Added `gaussianBlur` media method [#1623](https://github.com/getgrav/grav/pull/1623)
* Added new `|chunk_split()`, `|basename`, and `|dirname` Twig filter
* Added new `tl` Twig filter/function to support specific translations [#1618](https://github.com/getgrav/grav/issues/1618)
1. [](#improved)
* User `authorization` now requires a check for `authenticated` - REQUIRED: `Login v2.4.0`
* Added options to `Page::summary()` to support size without HTML tags [#1554](https://github.com/getgrav/grav/issues/1554)
* Forced `natsort` on plugins to ensure consistent plugin load ordering across platforms [#1614](https://github.com/getgrav/grav/issues/1614)
* Use new `multilevel` field to handle Asset Collections [#1201](https://github.com/getgrav/grav-plugin-admin/issues/1201)
* Added support for redis `password` option [#1620](https://github.com/getgrav/grav/issues/1620)
* Use 302 rather than 301 redirects by default [#1619](https://github.com/getgrav/grav/issues/1619)
* GPM Installer will try to load alphanumeric version of the class if no standard class found [#1630](https://github.com/getgrav/grav/issues/1630)
* Add current page position to `User` class [#1632](https://github.com/getgrav/grav/issues/1632)
* Added option to enable case insensitive URLs [#1638](https://github.com/getgrav/grav/issues/1638)
* Updated vendor libraries
* Updated `travis.yml` to add support for PHP 7.1 as well as 7.0.21 for test suite
1. [](#bugfix)
* Fixed UTF8 multibyte UTF8 character support in `Page::summary()` [#1554](https://github.com/getgrav/grav/issues/1554)
# v1.3.2
## 08/16/2017
1. [](#new)
* Added a new `cache_control` system and page level property [#1591](https://github.com/getgrav/grav/issues/1591)
* Added a new `clear_images_by_default` system property to stop cache clear events from removing processed images [#1481](https://github.com/getgrav/grav/pull/1481)
* Added new `onTwigLoader()` event to enable utilization of loader methods
* Added new `Twig::addPath()` and `Twig::prependPath()` methods to wrap loader methods and support namespacing [#1604](https://github.com/getgrav/grav/issues/1604)
* Added new `array_key_exists()` Twig function wrapper
* Added a new `Collection::intersect()` method [#1605](https://github.com/getgrav/grav/issues/1605)
1. [](#bugfix)
* Allow `session.timeout` field to be set to `0` via blueprints [#1598](https://github.com/getgrav/grav/issues/1598)
* Fixed `Data::exists()` and `Data::raw()` functions breaking if `Data::file()` hasn't been called with non-null value
* Fixed parent theme auto-loading in child themes of Gantry 5
# v1.3.1
## 07/19/2017
1. [](#bugfix)
* Fix ordering for Linux + International environments [#1574](https://github.com/getgrav/grav/issues/1574)
* Check if medium thumbnail exists before resetting
* Update Travis' auth token
# v1.3.0
## 07/16/2017
1. [](#bugfix)
* Fixed an undefined variable `$difference` [#1563](https://github.com/getgrav/grav/pull/1563)
* Fix broken range slider [grav-plugin-admin#1153](https://github.com/getgrav/grav-plugin-admin/issues/1153)
* Fix natural sort when > 100 pages [#1564](https://github.com/getgrav/grav/pull/1564)
# v1.3.0-rc.5
## 07/05/2017
1. [](#new)
* Setting `system.session.timeout` to 0 clears the session when the browser session ends [#1538](https://github.com/getgrav/grav/pull/1538)
* Created a `CODE_OF_CONDUCT.md` so everyone knows how to behave :)
1. [](#improved)
* Renamed new `media()` Twig function to `media_directory()` to avoid conflict with Page's `media` object
1. [](#bugfix)
* Fixed global media files disappearing after a reload [#1545](https://github.com/getgrav/grav/issues/1545)
* Fix for broken regex redirects/routes via `site.yaml`
* Sanitize the error message in the error handler page
# v1.3.0-rc.4
## 06/22/2017
1. [](#new)
* Added `lower` and `upper` Twig filters
* Added `pathinfo()` Twig function
* Added 165 new thumbnail images for use in `media.yaml`
1. [](#improved)
* Improved error message when running `bin/grav install` instead of `bin/gpm install`, and also when running on a non-skeleton site [#1027](https://github.com/getgrav/grav/issues/1027)
* Updated vendor libraries
1. [](#bugfix)
* Don't rebuild metadata every time, only when file does not exist
* Restore GravTrait in ConsoleTrait [grav-plugin-login#119](https://github.com/getgrav/grav-plugin-login/issues/119)
* Fix Windows routing with built-in server [#1502](https://github.com/getgrav/grav/issues/1502)
* Fix [#1504](https://github.com/getgrav/grav/issues/1504) `process_twig` and `frontmatter.yaml`
* Nicetime fix: 0 seconds from now -> just now [#1509](https://github.com/getgrav/grav/issues/1509)
# v1.3.0-rc.3
## 05/22/2017
1. [](#new)
* Added new unified `Utils::getPagePathFromToken()` method which is used by various plugins (Admin, Forms, Downloads, etc.)
1. [](#improved)
* Optionally remove unpublished pages from the translated languages, move into untranslated list [#1482](https://github.com/getgrav/grav/pull/1482)
* Improved reliability of `hash` file-check method
1. [](#bugfix)
* Updated to latest Toolbox library to fix issue with some blueprints rendering in admin plugin [#1117](https://github.com/getgrav/grav-plugin-admin/issues/1117)
* Fix output handling in RenderProcessor [#1483](https://github.com/getgrav/grav/pull/1483)
# v1.3.0-rc.2
## 05/17/2017
1. [](#new)
* Added new `media` and `vardump` Twig functions
1. [](#improved)
* Put in various checks to ensure Exif is available before trying to use it
* Add timestamp to configuration settings [#1445](https://github.com/getgrav/grav/pull/1445)
1. [](#bugfix)
* Fix an issue saving YAML textarea fields in expert mode [#1480](https://github.com/getgrav/grav/pull/1480)
* Moved `onOutputRendered()` back into Grav core
# v1.3.0-rc.1
## 05/16/2017
1. [](#new)
* Added support for a single array field in the forms
* Added EXIF support with automatic generation of Page Media metafiles
* Added Twig function to get EXIF data on any image file
* Added `Pages::baseUrl()`, `Pages::homeUrl()` and `Pages::url()` functions
* Added `base32_encode`, `base32_decode`, `base64_encode`, `base64_decode` Twig filters
* Added `Debugger::getCaller()` to figure out where the method was called from
* Added support for custom output providers like Slim Framework
* Added `Grav\Framework\Collection` classes for creating collections
1. [](#improved)
* Add more controls over HTML5 video attributes (autoplay, poster, loop controls) [#1442](https://github.com/getgrav/grav/pull/1442)
* Removed logging statement for invalid slug [#1459](https://github.com/getgrav/grav/issues/1459)
* Groups selection pre-filled in user form
* Improve error handling in `Folder::move()`
* Added extra parameter for `Twig::processSite()` to include custom context
* Updated RocketTheme Toolbox vendor library
1. [](#bugfix)
* Fix to force route/redirect matching from the start of the route by default [#1446](https://github.com/getgrav/grav/issues/1446)
* Edit check for valid slug [#1459](https://github.com/getgrav/grav/issues/1459)
# v1.2.4
## 04/24/2017
1. [](#improved)
* Added optional ignores for `Installer::sophisticatedInstall()` [#1447](https://github.com/getgrav/grav/issues/1447)
1. [](#bugfix)
* Allow multiple calls to `Themes::initTheme()` without throwing errors
* Fixed querystrings in root pages with multi-lang enabled [#1436](https://github.com/getgrav/grav/issues/1436)
* Allow support for `Pages::getList()` with `show_modular` option [#1080](https://github.com/getgrav/grav-plugin-admin/issues/1080)
# v1.2.3
## 04/19/2017
1. [](#improved)
* Added new `pwd_regex` and `username_regex` system configuration options to allow format modifications
* Allow `user/accounts.yaml` overrides and implemented more robust theme initialization
* improved `getList()` method to do more powerful things
* Fix Typo in GPM [#1427](https://github.com/getgrav/grav/issues/1427)
# v1.2.2
## 04/11/2017
1. [](#bugfix)
* Fix for redirects breaking [#1420](https://github.com/getgrav/grav/issues/1420)
* Fix issue in direct-install with github-style dependencies [#1405](https://github.com/getgrav/grav/issues/1405)
# v1.2.1
## 04/10/2017
1. [](#improved)
* Added various `ancestor` helper methods in Page and Pages classes [#1362](https://github.com/getgrav/grav/pull/1362)
* Added new `parents` field and switched Page blueprints to use this
* Added `isajaxrequest()` Twig function [#1400](https://github.com/getgrav/grav/issues/1400)
* Added ability to inline CSS and JS code via Asset manager [#1377](https://github.com/getgrav/grav/pull/1377)
* Add query string in lighttpd default config [#1393](https://github.com/getgrav/grav/issues/1393)
* Add `--all-yes` and `--destination` options for `bin/gpm direct-install` [#1397](https://github.com/getgrav/grav/pull/1397)
1. [](#bugfix)
* Fix for direct-install of plugins with `languages.yaml` [#1396](https://github.com/getgrav/grav/issues/1396)
* When determining language from HTTP_ACCEPT_LANGUAGE, also try base language only [#1402](https://github.com/getgrav/grav/issues/1402)
* Fixed a bad method signature causing warning when running tests on `GPMTest` object
# v1.2.0
## 03/31/2017

46
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,46 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@getgrav.org. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/

View File

@@ -12,7 +12,7 @@ patches and features.
## Grav, Plugins, Themes and Skeletons
Grav is a large open source projectit's made up of over 100 repositories. When you initially consider contributing to Grav, you might be unsure about which of those 200 repositories implements the functionality you want to change or report a bug for.
Grav is a large open source projectit's made up of over 100 repositories. When you initially consider contributing to Grav, you might be unsure about which of those 200 repositories implements the functionality you want to change or report a bug for.
[https://github.com/getgrav/grav](https://github.com/getgrav/grav) is the main Grav repository. The core of Grav is provided by this repo.
@@ -60,20 +60,20 @@ Guidelines for bug reports:
A good bug report shouldn't leave others needing to chase you up for more
information. Please try to be as detailed as possible in your report.
What is your environment? Is it localhost, OSX, Linux, on a remote server? Same happening locally and or the server, or just locally or just on Linux?
- What is your environment? Is it localhost, OSX, Linux, on a remote server? Same happening locally and or the server, or just locally or just on Linux?
What steps will reproduce the issue? What browser(s) and OS experience the problem?
- What steps will reproduce the issue? What browser(s) and OS experience the problem?
What would you expect to be the outcome?
- What would you expect to be the outcome?
Did the problem start happening recently (e.g. after updating to a new version of Grav) or was this always a problem?
- Did the problem start happening recently (e.g. after updating to a new version of Grav) or was this always a problem?
If the problem started happening recently, can you reproduce the problem in an older version of Grav? What's the most recent version in which the problem doesn't happen? You can download older versions of Grav from the releases page on Github.
- If the problem started happening recently, can you reproduce the problem in an older version of Grav? What's the most recent version in which the problem doesn't happen? You can download older versions of Grav from the releases page on Github.
Can you reliably reproduce the issue? If not, provide details about how often the problem happens and under which conditions it normally happens.
- Can you reliably reproduce the issue? If not, provide details about how often the problem happens and under which conditions it normally happens.
All these details will help people to fix any potential bugs.
All these details will help contributors to fix any potential bugs.
Important: [include Code Samples in triple backticks](https://help.github.com/articles/github-flavored-markdown/#fenced-code-blocks) so that Github will provide a proper indentation. [Add the language name after the backticks](https://help.github.com/articles/github-flavored-markdown/#syntax-highlighting) to add syntax highlighting to the code snippets.
@@ -120,5 +120,18 @@ accurate comments, etc.) and any other requirements.
See [Using Pull Request](https://help.github.com/articles/using-pull-requests/) and [Fork a Repo](https://help.github.com/articles/fork-a-repo/) if you're not familiar with Pull Requests.
Any pull request should be based on the `develop` branch. We will not consider pull requests made to master.
**IMPORTANT**: By submitting a patch, you agree to allow the project owner to
license your work under the same license as that used by the project.
<a name="translations"></a>
### Translations
Translations for Grav core and the Admin plugin are managed through Crowdin:
- Admin: https://crowdin.com/project/grav-admin
- Core: https://crowdin.com/project/grav-core
Please do not post translations PRs for core or admin translations on GitHub, with the exception of fixes for the english language.
All other plugins and themes translations are handled directly in their GitHub repository, and the string are usually found in the `languages.yaml` file at the root of each project.

View File

@@ -1,6 +1,6 @@
The MIT License (MIT)
Copyright (c) 2014 Grav
Copyright (c) 2017 Grav
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -83,17 +83,10 @@ $ bin/gpm update
# Contributing
We appreciate any contribution to Grav, whether it is related to bugs, grammar, or simply a suggestion or improvement.
However, we ask that any contributions follow our simple guidelines in order to be properly received.
We appreciate any contribution to Grav, whether it is related to bugs, grammar, or simply a suggestion or improvement! Please refer to the [Contributing guide](CONTRIBUTING.md) for more guidance on this topic.
All our projects follow the [GitFlow branching model][gitflow-model], from development to release. If you are not familiar with it, there are several guides and tutorials to make you understand what it is about.
You will probably want to get started by installing [this very good collection of git extensions][gitflow-extensions].
What you mainly want to know is that:
- All the main activity happens in the `develop` branch. Any pull request should be addressed only to that branch. We will not consider pull requests made to the `master`.
- It's very well appreciated, and highly suggested, to start a new feature whenever you want to make changes or add functionalities. It will make it much easier for us to just checkout your feature branch and test it, before merging it into `develop`
## Security issues
If you discover a possible security issue related to Grav or one of its plugins, please email the core team at contact@getgrav.org and we'll address it as soon as possible.
# Getting Started
@@ -108,9 +101,11 @@ What you mainly want to know is that:
* Have a look at our [Basic Tutorial](https://learn.getgrav.org/basics/basic-tutorial)
* Dive into more [advanced](https://learn.getgrav.org/advanced) functions
* Learn about the [Grav CLI](https://learn.getgrav.org/cli-console/grav-cli)
* Review examples in the [Grav Cookbook](https://learn.getgrav.org/cookbook)
# Backers
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/grav#backer)]
Support Grav with a monthly donation to help us continue development. [[Become a backer](https://opencollective.com/grav#backer)]
<a href="https://opencollective.com/grav/backer/0/website" target="_blank"><img src="https://opencollective.com/grav/backer/0/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/1/website" target="_blank"><img src="https://opencollective.com/grav/backer/1/avatar.svg"></a>

View File

@@ -15,11 +15,12 @@
"symfony/event-dispatcher": "~2.8",
"symfony/var-dumper": "~2.8",
"symfony/polyfill-iconv": "~1.0",
"doctrine/cache": "~1.5",
"doctrine/cache": "1.6.*",
"doctrine/collections": "1.3",
"filp/whoops": "~2.0",
"matthiasmullie/minify": "^1.3",
"monolog/monolog": "~1.0",
"gregwar/image": "~2.0",
"gregwar/image": "2.*",
"donatj/phpuseragentparser": "~0.3",
"pimple/pimple": "~3.0",
"rockettheme/toolbox": "~1.0",
@@ -29,13 +30,22 @@
"ext-curl": "*",
"ext-zip": "*",
"league/climate": "^3.2",
"antoligy/dom-string-iterators": "^1.0"
"antoligy/dom-string-iterators": "^1.0",
"miljar/php-exif": "^0.6.3",
"composer/ca-bundle": "^1.0"
},
"require-dev": {
"codeception/codeception": "^2.1",
"phpunit/php-code-coverage": "~2.0",
"fzaninotto/faker": "^1.5"
"fzaninotto/faker": "^1.5",
"victorjonsson/markdowndocs": "dev-master"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/trilbymedia/PHP-Markdown-Documentation-Generator"
}
],
"autoload": {
"psr-4": {
"Grav\\": "system/src/Grav"

676
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,7 @@
/**
* @package Grav.Core
*
* @copyright Copyright (C) 2014 - 2016 RocketTheme, LLC. All rights reserved.
* @copyright Copyright (C) 2014 - 2017 RocketTheme, LLC. All rights reserved.
* @license MIT License; see LICENSE file for details.
*/

View File

@@ -12,24 +12,25 @@ form:
fields:
home.alias:
type: pages
size: medium
size: large
classes: fancy
label: PLUGIN_ADMIN.HOME_PAGE
show_all: false
show_modular: false
show_root: false
show_slug: true
help: PLUGIN_ADMIN.HOME_PAGE_HELP
home.hide_in_urls:
type: toggle
label: PLUGIN_ADMIN.HIDE_HOME_IN_URLS
help: PLUGIN_ADMIN.HIDE_HOME_IN_URLS_HELP
highlight: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
type: toggle
label: PLUGIN_ADMIN.HIDE_HOME_IN_URLS
help: PLUGIN_ADMIN.HIDE_HOME_IN_URLS_HELP
highlight: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
pages.theme:
@@ -376,6 +377,12 @@ form:
validate:
type: number
min: 1
pages.cache_control:
type: text
size: medium
label: PLUGIN_ADMIN.CACHE_CONTROL
help: PLUGIN_ADMIN.CACHE_CONTROL_HELP
placeholder: 'e.g. public, max-age=31536000'
pages.last_modified:
type: toggle
label: PLUGIN_ADMIN.LAST_MODIFIED
@@ -507,6 +514,17 @@ form:
help: PLUGIN_ADMIN.CACHE_PREFIX_HELP
placeholder: PLUGIN_ADMIN.CACHE_PREFIX_PLACEHOLDER
cache.clear_images_by_default:
type: toggle
label: PLUGIN_ADMIN.CLEAR_IMAGES_BY_DEFAULT
help: PLUGIN_ADMIN.CLEAR_IMAGES_BY_DEFAULT_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
cache.cli_compatibility:
type: toggle
label: PLUGIN_ADMIN.CLI_COMPATIBILITY
@@ -598,6 +616,12 @@ form:
help: PLUGIN_ADMIN.REDIS_PORT_HELP
placeholder: "6379"
cache.redis.password:
type: text
size: small
label: PLUGIN_ADMIN.REDIS_PASSWORD
twig:
type: section
@@ -788,10 +812,12 @@ form:
type: bool
assets.collections:
type: array
type: multilevel
label: PLUGIN_ADMIN.COLLECTIONS
placeholder_key: collection_name
placeholder_value: collection_path
validate:
type: array
errors:
type: section
@@ -861,7 +887,6 @@ form:
append: '%'
label: PLUGIN_ADMIN.DEFAULT_IMAGE_QUALITY
help: PLUGIN_ADMIN.DEFAULT_IMAGE_QUALITY_HELP
classes: x-small
validate:
min: 1
max: 100
@@ -909,15 +934,6 @@ form:
validate:
type: bool
media.upload_limit:
type: text
append: bytes
label: PLUGIN_ADMIN.UPLOAD_LIMIT
help: PLUGIN_ADMIN.UPLOAD_LIMIT_HELP
classes: small
validate:
type: number
media.enable_media_timestamp:
type: toggle
label: PLUGIN_ADMIN.ENABLE_MEDIA_TIMESTAMP
@@ -929,6 +945,17 @@ form:
validate:
type: bool
media.auto_metadata_exif:
type: toggle
label: PLUGIN_ADMIN.ENABLE_AUTO_METADATA
help: PLUGIN_ADMIN.ENABLE_AUTO_METADATA_HELP
highlight: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
media.allowed_fallback_types:
@@ -975,7 +1002,7 @@ form:
help: PLUGIN_ADMIN.TIMEOUT_HELP
validate:
type: number
min: 1
min: 0
session.name:
type: text
@@ -1092,6 +1119,29 @@ form:
validate:
type: bool
username_regex:
type: text
size: large
label: PLUGIN_ADMIN.USERNAME_REGEX
help: PLUGIN_ADMIN.USERNAME_REGEX_HELP
pwd_regex:
type: text
size: large
label: PLUGIN_ADMIN.PWD_REGEX
help: PLUGIN_ADMIN.PWD_REGEX_HELP
intl_enabled:
type: toggle
label: PLUGIN_ADMIN.INTL_ENABLED
highlight: 1
help: PLUGIN_ADMIN.INTL_ENABLED_HELP
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
wrapped_site:
type: toggle
label: PLUGIN_ADMIN.WRAPPED_SITE
@@ -1136,6 +1186,18 @@ form:
validate:
type: bool
force_lowercase_urls:
type: toggle
label: PLUGIN_ADMIN.FORCE_LOWERCASE_URLS
highlight: 1
default: 1
help: PLUGIN_ADMIN.FORCE_LOWERCASE_URLS_HELP
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
custom_base_url:
type: text
size: medium

View File

@@ -32,7 +32,7 @@ form:
validate:
type: textarea
uploads:
header.media_order:
type: pagemedia
label: PLUGIN_ADMIN.PAGE_MEDIA
@@ -124,13 +124,9 @@ form:
rule: slug
route:
type: select
type: parents
label: PLUGIN_ADMIN.PARENT
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::rawRoute'
options:
'/': PLUGIN_ADMIN.DEFAULT_OPTION_ROOT
name:
type: select

View File

@@ -25,7 +25,7 @@ form:
content:
unset@: true
uploads:
header.media_order:
unset@: true
header.external_url:

View File

@@ -42,6 +42,6 @@ form:
type: ignore
content:
type: ignore
uploads:
header.media_order:
type: ignore

View File

@@ -1,54 +0,0 @@
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
section:
type: section
title: PLUGIN_ADMIN.ADD_MODULAR_CONTENT
title:
type: text
label: PLUGIN_ADMIN.PAGE_TITLE
validate:
required: true
folder:
type: text
label: PLUGIN_ADMIN.FOLDER_NAME
validate:
rule: slug
required: true
route:
type: select
label: PLUGIN_ADMIN.PAGE
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::rawRoute'
validate:
required: true
name:
type: select
classes: fancy
label: PLUGIN_ADMIN.MODULAR_TEMPLATE
help: PLUGIN_ADMIN.PAGE_FILE_HELP
default: default
data-options@: '\Grav\Common\Page\Pages::modularTypes'
validate:
required: true
modular:
type: hidden
default: 1
validate:
type: bool
blueprint:
type: blueprint

View File

@@ -1,106 +0,0 @@
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
tabs:
type: tabs
active: 1
fields:
content:
type: tab
title: PLUGIN_ADMIN.CONTENT
fields:
frontmatter:
classes: frontmatter
type: editor
label: PLUGIN_ADMIN.FRONTMATTER
autofocus: true
codemirror:
mode: 'yaml'
indentUnit: 4
autofocus: true
indentWithTabs: false
lineNumbers: true
styleActiveLine: true
gutters: ['CodeMirror-lint-markers']
lint: true
content:
type: markdown
uploads:
type: pagemedia
label: PLUGIN_ADMIN.PAGE_MEDIA
options:
type: tab
title: PLUGIN_ADMIN.OPTIONS
fields:
columns:
type: columns
fields:
column1:
type: column
fields:
ordering:
type: toggle
label: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX
help: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
folder:
type: text
label: PLUGIN_ADMIN.FILENAME
validate:
rule: slug
required: true
route:
type: select
label: PLUGIN_ADMIN.PARENT
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::rawRoute'
options:
'': PLUGIN_ADMIN.DEFAULT_OPTION_SELECT
validate:
required: true
name:
type: select
classes: fancy
label: PLUGIN_ADMIN.MODULAR_TEMPLATE
default: default
data-options@: '\Grav\Common\Page\Pages::modularTypes'
validate:
required: true
column2:
type: column
fields:
order:
type: order
label: PLUGIN_ADMIN.ORDERING
blueprint:
type: blueprint

View File

@@ -1,11 +0,0 @@
form:
validation: loose
fields:
route:
type: select
label: PLUGIN_ADMIN.PARENT
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::rawRoute'
options:
'/': PLUGIN_ADMIN.DEFAULT_OPTION_ROOT

View File

@@ -1,66 +0,0 @@
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
section:
type: section
title: PLUGIN_ADMIN.ADD_PAGE
title:
type: text
label: PLUGIN_ADMIN.PAGE_TITLE
help: PLUGIN_ADMIN.PAGE_TITLE_HELP
validate:
required: true
folder:
type: text
label: PLUGIN_ADMIN.FOLDER_NAME
help: PLUGIN_ADMIN.FOLDER_NAME_HELP
validate:
rule: slug
required: true
route:
type: select
label: PLUGIN_ADMIN.PARENT_PAGE
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::getLastPageRoute'
options:
'/': PLUGIN_ADMIN.DEFAULT_OPTION_ROOT
validate:
required: true
name:
type: select
classes: fancy
label: PLUGIN_ADMIN.PAGE_FILE
help: PLUGIN_ADMIN.PAGE_FILE_HELP
data-options@: '\Grav\Common\Page\Pages::types'
data-default@: '\Grav\Plugin\Admin\Admin::getLastPageName'
validate:
required: true
visible:
type: toggle
label: PLUGIN_ADMIN.VISIBLE
help: PLUGIN_ADMIN.VISIBLE_HELP
highlight: ''
default: ''
options:
'': Auto
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
required: true
blueprint:
type: blueprint

View File

@@ -1,35 +0,0 @@
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
section:
type: section
title: PLUGIN_ADMIN.ADD_FOLDER
folder:
type: text
label: PLUGIN_ADMIN.FOLDER_NAME
help: PLUGIN_ADMIN.FOLDER_NAME_HELP
validate:
rule: slug
required: true
route:
type: select
label: PLUGIN_ADMIN.PARENT_PAGE
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::getLastPageRoute'
options:
'/': PLUGIN_ADMIN.DEFAULT_OPTION_ROOT
validate:
required: true
blueprint:
type: blueprint

View File

@@ -1,105 +0,0 @@
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
tabs:
type: tabs
active: 1
fields:
content:
type: tab
title: PLUGIN_ADMIN.CONTENT
fields:
frontmatter:
classes: frontmatter
type: editor
label: PLUGIN_ADMIN.FRONTMATTER
autofocus: true
codemirror:
mode: 'yaml'
indentUnit: 4
autofocus: true
indentWithTabs: false
lineNumbers: true
styleActiveLine: true
gutters: ['CodeMirror-lint-markers']
lint: true
content:
type: markdown
uploads:
type: pagemedia
label: PLUGIN_ADMIN.PAGE_MEDIA
options:
type: tab
title: PLUGIN_ADMIN.OPTIONS
fields:
columns:
type: columns
fields:
column1:
type: column
fields:
ordering:
type: toggle
label: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX
help: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
folder:
type: text
label: PLUGIN_ADMIN.FOLDER_NAME
help: PLUGIN_ADMIN.FOLDER_NAME_HELP
validate:
rule: slug
required: true
route:
type: select
label: PLUGIN_ADMIN.PARENT
classes: fancy
data-options@: '\Grav\Common\Page\Pages::parentsRawRoutes'
data-default@: '\Grav\Plugin\Admin\Admin::rawRoute'
options:
'/': PLUGIN_ADMIN.DEFAULT_OPTION_ROOT
name:
type: select
classes: fancy
label: PLUGIN_ADMIN.DISPLAY_TEMPLATE
help: PLUGIN_ADMIN.DISPLAY_TEMPLATE_HELP
default: default
data-options@: '\Grav\Common\Page\Pages::types'
validate:
required: true
column2:
type: column
fields:
order:
type: order
label: PLUGIN_ADMIN.ORDERING
blueprint:
type: blueprint

View File

@@ -20,7 +20,6 @@ form:
title: PLUGIN_ADMIN.ACCOUNT
underline: true
username:
type: text
size: large
@@ -44,7 +43,7 @@ form:
validate:
required: false
message: PLUGIN_ADMIN.PASSWORD_VALIDATION_MESSAGE
pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}'
config-pattern@: system.pwd_regex
fullname:
type: text
@@ -67,6 +66,37 @@ form:
default: 'en'
help: PLUGIN_ADMIN.LANGUAGE_HELP
twofa_check:
type: conditional
condition: config.plugins.admin.twofa_enabled
fields:
twofa:
title: PLUGIN_ADMIN.2FA_TITLE
type: section
underline: true
twofa_enabled:
type: toggle
label: PLUGIN_ADMIN.2FA_ENABLED
classes: twofa-toggle
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
twofa_secret:
type: 2fa_secret
outerclasses: 'twofa-secret'
label: PLUGIN_ADMIN.2FA_SECRET
sublabel: PLUGIN_ADMIN.2FA_SECRET_HELP
security:
title: PLUGIN_ADMIN.ACCESS_LEVELS
type: section
@@ -75,10 +105,11 @@ form:
fields:
groups:
type: selectize
type: select
multiple: true
size: large
label: PLUGIN_ADMIN.GROUPS
data-options@: '\Grav\User\Groups::groups'
data-options@: '\Grav\Common\User\Group::groupNames'
classes: fancy
help: PLUGIN_ADMIN.GROUPS_HELP
validate:

View File

@@ -18,7 +18,7 @@ types:
mime: image/jpeg
jpeg:
type: image
thumb: media/thumb-jpeg.png
thumb: media/thumb-jpg.png
mime: image/jpeg
png:
type: image
@@ -28,12 +28,10 @@ types:
type: animated
thumb: media/thumb-gif.png
mime: image/gif
svg:
type: vector
thumb: media/thumb.png
thumb: media/thumb-svg.png
mime: image/svg+xml
mp4:
type: video
thumb: media/thumb-mp4.png
@@ -55,14 +53,13 @@ types:
thumb: media/thumb-flv.png
mime: video/x-flv
webm:
type: video
thumb: media/thumb.png
type: file
thumb: media/thumb-webm.png
mime: video/webm
ogv:
type: video
thumb: media/thumb-ogg.png
mime: video/ogg
mp3:
type: audio
thumb: media/thumb-mp3.png
@@ -85,11 +82,12 @@ types:
mime: audio/wav
aiff:
type: audio
thumb: media/thumb-aif.png
mime: audio/aiff
aif:
type: audio
thumb: media/thumb-aif.png
mime: audio/aif
txt:
type: file
thumb: media/thumb-txt.png
@@ -104,66 +102,60 @@ types:
mime: application/msword
docx:
type: file
thumb: media/thumb-docx.png
mime: application/msword
xls:
type: file
thumb: media/thumb-xls.png
mime: application/vnd.ms-excel
xlt:
type: file
mime: application/vnd.ms-excel
xlm:
type: file
mime: application/vnd.ms-excel
xlsm:
type: file
mime: application/vnd.ms-excel
xld:
type: file
mime: application/vnd.ms-excel
xla:
type: file
mime: application/vnd.ms-excel
xlc:
type: file
mime: application/vnd.ms-excel
xlw:
type: file
mime: application/vnd.ms-excel
xll:
xlsx:
type: file
thumb: media/thumb-xlsx.png
mime: application/vnd.ms-excel
ppt:
type: file
thumb: media/thumb-ppt.png
mime: application/vnd.ms-powerpoint
pptx:
type: file
thumb: media/thumb-pptx.png
mime: application/vnd.ms-powerpoint
pps:
type: file
thumb: media/thumb-pps.png
mime: application/vnd.ms-powerpoint
rtf:
type: file
thumb: media/thumb-rtf.png
mime: application/rtf
bmp:
type: file
thumb: media/thumb-bmp.png
mime: image/bmp
tiff:
type: file
thumb: media/thumb-tiff.png
mime: image/tiff
mpeg:
type: file
thumb: media/thumb-mpg.png
mime: video/mpeg
mpg:
type: file
thumb: media/thumb-mpg.png
mime: video/mpeg
mpe:
type: file
thumb: media/thumb-mpe.png
mime: video/mpeg
avi:
type: file
thumb: media/thumb-avi.png
mime: video/msvideo
wmv:
type: file
thumb: media/thumb-wmv.png
mime: video/x-ms-wmv
html:
type: file
thumb: media/thumb-html.png
@@ -172,17 +164,29 @@ types:
type: file
thumb: media/thumb-html.png
mime: text/html
ics:
type: iCal
thumb: media/thumb-ics.png
mime: text/calendar
pdf:
type: file
thumb: media/thumb-pdf.png
mime: application/pdf
ai:
type: file
thumb: media/thumb-ai.png
mime: image/ai
psd:
type: file
thumb: media/thumb-psd.png
mime: image/psd
zip:
type: file
thumb: media/thumb-zip.png
mime: application/zip
7z:
type: file
thumb: media/thumb-7zip.png
thumb: media/thumb-7z.png
mime: application/x-7z-compressed
gz:
type: file
@@ -190,6 +194,7 @@ types:
mime: application/gzip
tar:
type: file
thumb: media/thumb-tar.png
mime: application/x-tar
css:
type: file
@@ -203,4 +208,3 @@ types:
type: file
thumb: media/thumb-json.png
mime: application/json

View File

@@ -1,141 +1,147 @@
absolute_urls: false # Absolute or relative URLs for `base_url`
timezone: '' # Valid values: http://php.net/manual/en/timezones.php
default_locale: # Default locale (defaults to system)
param_sep: ':' # Parameter separator, use ';' for Apache on windows
wrapped_site: false # For themes/plugins to know if Grav is wrapped by another platform
reverse_proxy_setup: false # Running in a reverse proxy scenario with different webserver ports than proxy
force_ssl: false # If enabled, Grav forces to be accessed via HTTPS (NOTE: Not an ideal solution)
custom_base_url: '' # Set the base_url manually, e.g. http://yoursite.com/yourpath
absolute_urls: false # Absolute or relative URLs for `base_url`
timezone: '' # Valid values: http://php.net/manual/en/timezones.php
default_locale: # Default locale (defaults to system)
param_sep: ':' # Parameter separator, use ';' for Apache on windows
wrapped_site: false # For themes/plugins to know if Grav is wrapped by another platform
reverse_proxy_setup: false # Running in a reverse proxy scenario with different webserver ports than proxy
force_ssl: false # If enabled, Grav forces to be accessed via HTTPS (NOTE: Not an ideal solution)
force_lowercase_urls: true # If you want to support mixed cased URLs set this to false
custom_base_url: '' # Set the base_url manually, e.g. http://yoursite.com/yourpath
username_regex: '^[a-z0-9_-]{3,16}$' # Only lowercase chars, digits, dashes, underscores. 3 - 16 chars
pwd_regex: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' # At least one number, one uppercase and lowercase letter, and be at least 8+ chars
intl_enabled: true # Special logic for PHP International Extension (mod_intl)
languages:
supported: [] # List of languages supported. eg: [en, fr, de]
include_default_lang: true # Include the default lang prefix in all URLs
translations: true # Enable translations by default
translations_fallback: true # Fallback through supported translations if active lang doesn't exist
session_store_active: false # Store active language in session
http_accept_language: false # Attempt to set the language based on http_accept_language header in the browser
override_locale: false # Override the default or system locale with language specific one
supported: [] # List of languages supported. eg: [en, fr, de]
include_default_lang: true # Include the default lang prefix in all URLs
translations: true # Enable translations by default
translations_fallback: true # Fallback through supported translations if active lang doesn't exist
session_store_active: false # Store active language in session
http_accept_language: false # Attempt to set the language based on http_accept_language header in the browser
override_locale: false # Override the default or system locale with language specific one
home:
alias: '/home' # Default path for home, ie /
hide_in_urls: false # Hide the home route in URLs
alias: '/home' # Default path for home, ie /
hide_in_urls: false # Hide the home route in URLs
pages:
theme: antimatter # Default theme (defaults to "antimatter" theme)
theme: antimatter # Default theme (defaults to "antimatter" theme)
order:
by: default # Order pages by "default", "alpha" or "date"
dir: asc # Default ordering direction, "asc" or "desc"
by: default # Order pages by "default", "alpha" or "date"
dir: asc # Default ordering direction, "asc" or "desc"
list:
count: 20 # Default item count per page
count: 20 # Default item count per page
dateformat:
default: # The default date format Grav expects in the `date: ` field
short: 'jS M Y' # Short date format
long: 'F jS \a\t g:ia' # Long date format
publish_dates: true # automatically publish/unpublish based on dates
default: # The default date format Grav expects in the `date: ` field
short: 'jS M Y' # Short date format
long: 'F jS \a\t g:ia' # Long date format
publish_dates: true # automatically publish/unpublish based on dates
process:
markdown: true # Process Markdown
twig: false # Process Twig
twig_first: false # Process Twig before markdown when processing both on a page
never_cache_twig: false # Only cache content, never cache twig processed in content (incompatible with `twig_first: true`)
markdown: true # Process Markdown
twig: false # Process Twig
twig_first: false # Process Twig before markdown when processing both on a page
never_cache_twig: false # Only cache content, never cache twig processed in content (incompatible with `twig_first: true`)
events:
page: true # Enable page level events
twig: true # Enable Twig level events
page: true # Enable page level events
twig: true # Enable Twig level events
markdown:
extra: false # Enable support for Markdown Extra support (GFM by default)
auto_line_breaks: false # Enable automatic line breaks
auto_url_links: false # Enable automatic HTML links
escape_markup: false # Escape markup tags into entities
special_chars: # List of special characters to automatically convert to entities
extra: false # Enable support for Markdown Extra support (GFM by default)
auto_line_breaks: false # Enable automatic line breaks
auto_url_links: false # Enable automatic HTML links
escape_markup: false # Escape markup tags into entities
special_chars: # List of special characters to automatically convert to entities
'>': 'gt'
'<': 'lt'
types: [txt,xml,html,htm,json,rss,atom] # list of valid page types
append_url_extension: '' # Append page's extension in Page urls (e.g. '.html' results in /path/page.html)
expires: 604800 # Page expires time in seconds (604800 seconds = 7 days)
last_modified: false # Set the last modified date header based on file modification timestamp
etag: false # Set the etag header tag
vary_accept_encoding: false # Add `Vary: Accept-Encoding` header
redirect_default_route: false # Automatically redirect to a page's default route
redirect_default_code: 301 # Default code to use for redirects
redirect_trailing_slash: true # Handle automatically or 301 redirect a trailing / URL
ignore_files: [.DS_Store] # Files to ignore in Pages
ignore_folders: [.git, .idea] # Folders to ignore in Pages
ignore_hidden: true # Ignore all Hidden files and folders
url_taxonomy_filters: true # Enable auto-magic URL-based taxonomy filters for page collections
types: [txt,xml,html,htm,json,rss,atom] # list of valid page types
append_url_extension: '' # Append page's extension in Page urls (e.g. '.html' results in /path/page.html)
expires: 604800 # Page expires time in seconds (604800 seconds = 7 days)
cache_control: # Can be blank for no setting, or a valid `cache-control` text value
last_modified: false # Set the last modified date header based on file modification timestamp
etag: false # Set the etag header tag
vary_accept_encoding: false # Add `Vary: Accept-Encoding` header
redirect_default_route: false # Automatically redirect to a page's default route
redirect_default_code: 302 # Default code to use for redirects
redirect_trailing_slash: true # Handle automatically or 302 redirect a trailing / URL
ignore_files: [.DS_Store] # Files to ignore in Pages
ignore_folders: [.git, .idea] # Folders to ignore in Pages
ignore_hidden: true # Ignore all Hidden files and folders
url_taxonomy_filters: true # Enable auto-magic URL-based taxonomy filters for page collections
frontmatter:
process_twig: false # Should the frontmatter be processed to replace Twig variables?
ignore_fields: ['form','forms'] # Fields that might contain Twig variables and should not be processed
process_twig: false # Should the frontmatter be processed to replace Twig variables?
ignore_fields: ['form','forms'] # Fields that might contain Twig variables and should not be processed
cache:
enabled: true # Set to true to enable caching
enabled: true # Set to true to enable caching
check:
method: file # Method to check for updates in pages: file|folder|hash|none
driver: auto # One of: auto|file|apc|xcache|memcache|wincache
prefix: 'g' # Cache prefix string (prevents cache conflicts)
cli_compatibility: false # Ensures only non-volatile drivers are used (file, redis, memcache, etc.)
lifetime: 604800 # Lifetime of cached data in seconds (0 = infinite)
gzip: false # GZip compress the page output
allow_webserver_gzip: false # If true, `content-encoding: identity` but connection isn't closed before `onShutDown()` event
method: file # Method to check for updates in pages: file|folder|hash|none
driver: auto # One of: auto|file|apc|xcache|memcache|wincache
prefix: 'g' # Cache prefix string (prevents cache conflicts)
clear_images_by_default: true # By default grav will include processed images in cache clear, this can be disabled
cli_compatibility: false # Ensures only non-volatile drivers are used (file, redis, memcache, etc.)
lifetime: 604800 # Lifetime of cached data in seconds (0 = infinite)
gzip: false # GZip compress the page output
allow_webserver_gzip: false # If true, `content-encoding: identity` but connection isn't closed before `onShutDown()` event
redis:
socket: false # Path to redis unix socket (e.g. /var/run/redis/redis.sock), false = use server and port to connect
socket: false # Path to redis unix socket (e.g. /var/run/redis/redis.sock), false = use server and port to connect
twig:
cache: true # Set to true to enable Twig caching
debug: true # Enable Twig debug
auto_reload: true # Refresh cache on changes
autoescape: false # Autoescape Twig vars
undefined_functions: true # Allow undefined functions
undefined_filters: true # Allow undefined filters
umask_fix: false # By default Twig creates cached files as 755, fix switches this to 775
cache: true # Set to true to enable Twig caching
debug: true # Enable Twig debug
auto_reload: true # Refresh cache on changes
autoescape: false # Autoescape Twig vars
undefined_functions: true # Allow undefined functions
undefined_filters: true # Allow undefined filters
umask_fix: false # By default Twig creates cached files as 755, fix switches this to 775
assets: # Configuration for Assets Manager (JS, CSS)
css_pipeline: false # The CSS pipeline is the unification of multiple CSS resources into one file
css_pipeline_include_externals: true # Include external URLs in the pipeline by default
css_pipeline_before_excludes: true # Render the pipeline before any excluded files
css_minify: true # Minify the CSS during pipelining
css_minify_windows: false # Minify Override for Windows platforms. False by default due to ThreadStackSize
css_rewrite: true # Rewrite any CSS relative URLs during pipelining
js_pipeline: false # The JS pipeline is the unification of multiple JS resources into one file
js_pipeline_include_externals: true # Include external URLs in the pipeline by default
js_pipeline_before_excludes: true # Render the pipeline before any excluded files
js_minify: true # Minify the JS during pipelining
enable_asset_timestamp: false # Enable asset timestamps
assets: # Configuration for Assets Manager (JS, CSS)
css_pipeline: false # The CSS pipeline is the unification of multiple CSS resources into one file
css_pipeline_include_externals: true # Include external URLs in the pipeline by default
css_pipeline_before_excludes: true # Render the pipeline before any excluded files
css_minify: true # Minify the CSS during pipelining
css_minify_windows: false # Minify Override for Windows platforms. False by default due to ThreadStackSize
css_rewrite: true # Rewrite any CSS relative URLs during pipelining
js_pipeline: false # The JS pipeline is the unification of multiple JS resources into one file
js_pipeline_include_externals: true # Include external URLs in the pipeline by default
js_pipeline_before_excludes: true # Render the pipeline before any excluded files
js_minify: true # Minify the JS during pipelining
enable_asset_timestamp: false # Enable asset timestamps
collections:
jquery: system://assets/jquery/jquery-2.x.min.js
errors:
display: 0 # Display either (1) Full backtrace | (0) Simple Error | (-1) System Error
log: true # Log errors to /logs folder
display: 0 # Display either (1) Full backtrace | (0) Simple Error | (-1) System Error
log: true # Log errors to /logs folder
debugger:
enabled: false # Enable Grav debugger and following settings
enabled: false # Enable Grav debugger and following settings
shutdown:
close_connection: true # Close the connection before calling onShutdown(). false for debugging
close_connection: true # Close the connection before calling onShutdown(). false for debugging
images:
default_image_quality: 85 # Default image quality to use when resampling images (85%)
cache_all: false # Cache all image by default
cache_perms: '0755' # MUST BE IN QUOTES!! Default cache folder perms. Usually '0755' or '0775'
debug: false # Show an overlay over images indicating the pixel depth of the image when working with retina for example
auto_fix_orientation: false # Automatically fix the image orientation based on the Exif data
default_image_quality: 85 # Default image quality to use when resampling images (85%)
cache_all: false # Cache all image by default
cache_perms: '0755' # MUST BE IN QUOTES!! Default cache folder perms. Usually '0755' or '0775'
debug: false # Show an overlay over images indicating the pixel depth of the image when working with retina for example
auto_fix_orientation: false # Automatically fix the image orientation based on the Exif data
media:
enable_media_timestamp: false # Enable media timetsamps
upload_limit: 0 # Set maximum upload size in bytes (0 is unlimited)
unsupported_inline_types: [] # Array of supported media types to try to display inline
allowed_fallback_types: [] # Array of allowed media types of files found if accessed via Page route
enable_media_timestamp: false # Enable media timestamps
unsupported_inline_types: [] # Array of supported media types to try to display inline
allowed_fallback_types: [] # Array of allowed media types of files found if accessed via Page route
auto_metadata_exif: false # Automatically create metadata files from Exif data where possible
session:
enabled: true # Enable Session support
timeout: 1800 # Timeout in seconds
name: grav-site # Name prefix of the session cookie. Use alphanumeric, dashes or underscores only. Do not use dots in the session name
secure: false # Set session secure. If true, indicates that communication for this cookie must be over an encrypted transmission. Enable this only on sites that run exclusively on HTTPS
httponly: true # Set session HTTP only. If true, indicates that cookies should be used only over HTTP, and JavaScript modification is not allowed.
split: true # Sessions should be independent between site and plugins (such as admin)
enabled: true # Enable Session support
timeout: 1800 # Timeout in seconds
name: grav-site # Name prefix of the session cookie. Use alphanumeric, dashes or underscores only. Do not use dots in the session name
secure: false # Set session secure. If true, indicates that communication for this cookie must be over an encrypted transmission. Enable this only on sites that run exclusively on HTTPS
httponly: true # Set session HTTP only. If true, indicates that cookies should be used only over HTTP, and JavaScript modification is not allowed.
split: true # Sessions should be independent between site and plugins (such as admin)
path:
gpm:
releases: stable # Set to either 'stable' or 'testing'
proxy_url: # Configure a manual proxy URL for GPM (eg 127.0.0.1:3128)
method: 'auto' # Either 'curl', 'fopen' or 'auto'. 'auto' will try fopen first and if not available cURL
verify_peer: true # Sometimes on some systems (Windows most commonly) GPM is unable to connect because the SSL certificate cannot be verified. Disabling this setting might help.
official_gpm_only: true # By default GPM direct-install will only allow URLs via the official GPM proxy to ensure security
releases: stable # Set to either 'stable' or 'testing'
proxy_url: # Configure a manual proxy URL for GPM (eg 127.0.0.1:3128)
method: 'auto' # Either 'curl', 'fopen' or 'auto'. 'auto' will try fopen first and if not available cURL
verify_peer: true # Sometimes on some systems (Windows most commonly) GPM is unable to connect because the SSL certificate cannot be verified. Disabling this setting might help.
official_gpm_only: true # By default GPM direct-install will only allow URLs via the official GPM proxy to ensure security

View File

@@ -2,14 +2,14 @@
/**
* @package Grav.Core
*
* @copyright Copyright (C) 2014 - 2016 RocketTheme, LLC. All rights reserved.
* @copyright Copyright (C) 2014 - 2017 RocketTheme, LLC. All rights reserved.
* @license MIT License; see LICENSE file for details.
*/
// Some standard defines
define('GRAV', true);
define('GRAV_VERSION', '1.2.0');
define('GRAV_TESTING', false);
define('GRAV_VERSION', '1.3.9');
//define('GRAV_TESTING', true);
define('DS', '/');
if (!defined('GRAV_PHP_MIN')) {

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 663 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 601 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Some files were not shown because too many files have changed in this diff Show More