Commit graph

940 commits

Author SHA1 Message Date
Kijin Sung
a196706d7f Add Request class and make Router::parseUrl() return an instance of it 2023-10-29 23:32:49 +09:00
Kijin Sung
18c0e14b4b Fix failure to load template file if a directory of the same name (minus the extension) exists in the same path 2023-10-27 16:11:25 +09:00
Kijin Sung
47db7e6a0b Add template variables for backward compatibility 2023-10-27 16:06:48 +09:00
Kijin Sung
9d5dff5371 Fix incorrect rx_login_status cookie immediately after autologin 2023-10-25 20:29:27 +09:00
Kijin Sung
80e50d41f5 Change default Cookie path to "/" for compatibility with JS function setCookie() 2023-10-24 23:17:01 +09:00
Kijin Sung
8d2b7101f4 Use Cookie class to control session and member-related cookies, too 2023-10-24 23:09:50 +09:00
Kijin Sung
a3cde9c109 Add config.php options to set defaults for Cookie class #2184 2023-10-24 23:09:17 +09:00
Kijin Sung
5005a09f06 Add Rhymix\Framework\Cookie class with sane defaults 2023-10-24 22:37:27 +09:00
Kijin Sung
c42d059594 Add deprecation warnings if syntax like <--#include-->, <!--%import--> is used in template v2 2023-10-23 14:17:30 +09:00
Kijin Sung
8d3a332344 Reset template configuration when paths are provided to compile() or compileDirect() 2023-10-23 14:07:27 +09:00
Kijin Sung
a5d6a76cf4 Add parent reference to Template instances 2023-10-22 00:46:58 +09:00
Kijin Sung
fefd3dd895 Fix path normalization problem 2023-10-21 14:19:20 +09:00
Kijin Sung
6085b82d19 Inherit parent vars and add own vars when a template is included with vars from another template that has vars; add unit tests for vars inheritance 2023-10-21 13:52:02 +09:00
Kijin Sung
5b47151440 Change desktop and mobile directives to reference static Context method 2023-10-21 13:35:24 +09:00
Kijin Sung
129a0403e4 Throw warning if <block>, cond, loop is used in template v2 2023-10-20 21:17:38 +09:00
Kijin Sung
a284a1b072 Also apply scope conversion to short PHP tags 2023-10-20 21:03:31 +09:00
Kijin Sung
55d91b9dc7 Implement unload directive 2023-10-20 20:56:14 +09:00
Kijin Sung
9a98e9220d Enforce the order of parameters to the load directive 2023-10-20 20:46:35 +09:00
Kijin Sung
ca5c96d02a Add unit tests for path conversion utilities in Template class 2023-10-18 21:33:49 +09:00
Kijin Sung
325c2c2b13 Rename internal list and add useful comment 2023-10-18 21:19:04 +09:00
Kijin Sung
3c401bbc20 Add pushOnce and prependOnce helper directives 2023-10-18 21:16:39 +09:00
Kijin Sung
6b2b3f0dc2 Add dd and url helper directives 2023-10-18 20:57:52 +09:00
Kijin Sung
c487c13864 Apply context-aware escape more generally; add can/cannot/canany and env directives 2023-10-18 12:09:45 +09:00
Kijin Sung
7c727c0fcb Cache the regexp for template v2 directives 2023-10-18 02:28:38 +09:00
Kijin Sung
c19d71847f Implement template v2 feature of pushing to stack 2023-10-18 02:23:18 +09:00
Kijin Sung
7b518ab747 Template v2 directives must match at word boundary 2023-10-18 01:44:36 +09:00
Kijin Sung
0f14ad8ccf Add error checking directive and unit tests for it 2023-10-18 00:29:32 +09:00
Kijin Sung
d4654eb5cf Remove member directive, and extend auth directive to look at grants 2023-10-18 00:12:40 +09:00
Kijin Sung
e044e11c5f Convert include code into a method of Template class 2023-10-18 00:01:11 +09:00
Kijin Sung
012dbb9ab7 Convert resource loading code into a method of Template class 2023-10-17 23:29:55 +09:00
Kijin Sung
55cafc5c33 Convert class and style builder into a method of Template class 2023-10-17 22:44:27 +09:00
Kijin Sung
82b9107ca0 Add support for fragment in template v2 2023-10-17 22:25:53 +09:00
Kijin Sung
a6afa3a61d Add loop variable and dump directive; reorganize template v2 unit tests 2023-10-17 20:12:22 +09:00
Kijin Sung
fe804163bf Add JSON_HEX_TAG and JSON_HEX_QUOT to JSON output filter 2023-10-17 19:00:00 +09:00
Kijin Sung
3c15589fb8 Allow loops and conditions to appear anywhere in a line 2023-10-17 03:28:20 +09:00
Kijin Sung
66980edab1 Allow use, include, and load directives to appear anywhere in a line 2023-10-17 03:06:40 +09:00
Kijin Sung
11ef5dcfff Add support for Blade-style @class and @style directives 2023-10-17 02:45:22 +09:00
Kijin Sung
668feea9e9 Add support for Blade-style @each include loop 2023-10-17 02:26:06 +09:00
Kijin Sung
7fd916a81e Fix miscellaneous issues with template parser v2 2023-10-16 23:55:47 +09:00
Kijin Sung
f2fabab239 Fix conversion of paths relative to the Rhymix install directory 2023-10-16 21:15:52 +09:00
Kijin Sung
91ab93c03a Fix {!! !!} unescaped echos not being recognized in template v2 2023-10-16 13:15:17 +09:00
Kijin Sung
1b9e2f58b7 Add unit tests for <load> @load syntax of template v2 2023-10-16 00:50:20 +09:00
Kijin Sung
3e1587c2ac Fix variable scope and absolute path handling in include syntax of template v2 2023-10-16 00:30:56 +09:00
Kijin Sung
881df020aa Fix ^/ path not working in <include> 2023-10-15 23:42:32 +09:00
Kijin Sung
0a2af3a1e7 Support legacy "cond" attribute in <include> 2023-10-15 23:35:06 +09:00
Kijin Sung
6893e08553 Prepend code in postprocessing, not preprocessing 2023-10-15 23:26:04 +09:00
Kijin Sung
a362f27f62 Force write the version number in template parser v2 2023-10-15 23:03:03 +09:00
Kijin Sung
bbd19c814b Remove unnecessary autoescape setting for template v2 2023-10-15 22:39:36 +09:00
Kijin Sung
936663f804 Remove need for wrapper class in unit tests 2023-10-15 20:12:46 +09:00
Kijin Sung
ccc67d54e3 Return empty string if template file exists but there is nothing to parse 2023-10-15 16:50:04 +09:00