From eace27e2b67ecb4e52e7607daacd0583d9836096 Mon Sep 17 00:00:00 2001 From: "Uwe.Tews" Date: Fri, 10 Apr 2009 12:33:51 +0000 Subject: [PATCH] - added global variable scope SMARTY_GLOBAL_SCOPE - enable 'variable' filter by default --- change_log.txt | 2 + libs/Smarty.class.php | 5 +- libs/sysplugins/internal.compile_assign.php | 8 +- .../internal.compile_assign_global.php | 47 - libs/sysplugins/internal.compile_include.php | 2 + libs/sysplugins/internal.compile_smarty.php | 2 - libs/sysplugins/internal.template.php | 23 +- libs/sysplugins/internal.templatebase.php | 8 +- libs/sysplugins/internal.templateparser.php | 959 +++++++++--------- libs/sysplugins/method.get_template_vars.php | 5 + 10 files changed, 521 insertions(+), 540 deletions(-) delete mode 100644 libs/sysplugins/internal.compile_assign_global.php diff --git a/change_log.txt b/change_log.txt index e16a554d..80f19b5b 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,4 +1,6 @@ 04/10/2009 +- added global variable scope SMARTY_GLOBAL_SCOPE +- enable 'variable' filter by default - fixed {$smarty.block.parent.foo} - implementation of a 'variable' filter as replacement for default modifier diff --git a/libs/Smarty.class.php b/libs/Smarty.class.php index 90f948f7..ba7aa894 100644 --- a/libs/Smarty.class.php +++ b/libs/Smarty.class.php @@ -45,6 +45,7 @@ if (!defined('SMARTY_DIR')) { define('SMARTY_LOCAL_SCOPE', 0); define('SMARTY_PARENT_SCOPE', 1); define('SMARTY_ROOT_SCOPE', 2); +define('SMARTY_GLOBAL_SCOPE', 3); /** * load required base class for creation of the smarty object @@ -156,12 +157,12 @@ class Smarty extends Smarty_Internal_TemplateBase { // autoload filter public $autoload_filters = array(); // status of filter on variable output - public $variable_filter = false; + public $variable_filter = true; // cache resorce objects public $cache_resource_objects = array(); // write file object public $write_file_object = null; - // global smarty vars + // global internal smarty vars public $_smarty_vars = array(); // start time for execution time calculation public $start_time = 0; diff --git a/libs/sysplugins/internal.compile_assign.php b/libs/sysplugins/internal.compile_assign.php index c227f445..52d95ca8 100644 --- a/libs/sysplugins/internal.compile_assign.php +++ b/libs/sysplugins/internal.compile_assign.php @@ -41,7 +41,13 @@ class Smarty_Internal_Compile_Assign extends Smarty_Internal_CompileBase { $_attr = $this->_get_attributes($args); if (isset($_attr['scope'])) { - $_scope = trim($_attr['scope'],'\''); + if ($_attr['scope'] == '\'parent\'') { + $_scope = SMARTY_PARENT_SCOPE; + } elseif ($_attr['scope'] == '\'root\'') { + $_scope = SMARTY_ROOT_SCOPE; + } elseif ($_attr['scope'] == '\'global\'') { + $_scope = SMARTY_GLOBAL_SCOPE; + } } if (isset($_attr['index'])) { diff --git a/libs/sysplugins/internal.compile_assign_global.php b/libs/sysplugins/internal.compile_assign_global.php deleted file mode 100644 index ecf634cd..00000000 --- a/libs/sysplugins/internal.compile_assign_global.php +++ /dev/null @@ -1,47 +0,0 @@ -compiler = $compiler; - $this->required_attributes = array('var', 'value'); - $this->optional_attributes = array('nocache'); - - $_nocache = 'false'; - // check for nocache attribute before _get_attributes because - // it shall not controll caching of the compiled code, but is a parameter - if (isset($args['nocache'])) { - if ($args['nocache'] == 'true') { - $_nocache = 'true'; - $_nocache_boolean = true; - } - unset($args['nocache']); - } - // check and get attributes - $_attr = $this->_get_attributes($args); - - // compiled output - return "smarty->assign_global($_attr[var],$_attr[value],$_nocache);?>"; - } -} - -?> diff --git a/libs/sysplugins/internal.compile_include.php b/libs/sysplugins/internal.compile_include.php index a7a1fcbd..d4316568 100644 --- a/libs/sysplugins/internal.compile_include.php +++ b/libs/sysplugins/internal.compile_include.php @@ -40,6 +40,8 @@ class Smarty_Internal_Compile_Include extends Smarty_Internal_CompileBase { $_parent_scope = SMARTY_PARENT_SCOPE; } elseif ($_attr['scope'] == '\'root\'') { $_parent_scope = SMARTY_ROOT_SCOPE; + } elseif ($_attr['scope'] == '\'global\'') { + $_parent_scope = SMARTY_GLOBAL_SCOPE; } } diff --git a/libs/sysplugins/internal.compile_smarty.php b/libs/sysplugins/internal.compile_smarty.php index 4afb4b2e..da538b8d 100644 --- a/libs/sysplugins/internal.compile_smarty.php +++ b/libs/sysplugins/internal.compile_smarty.php @@ -80,8 +80,6 @@ class Smarty_Internal_Compile_Smarty extends Smarty_Internal_CompileBase { case 'config': return "\$_smarty_tpl->getConfigVariable($_index[1])"; - case 'global': - return "\$_smarty_tpl->smarty->getGlobalVariable($_index[1])->value"; case 'block': if ($_index[1] == '\'parent\'') { return "'" . addcslashes($compiler->template->block_data[trim($_index[2], "'")]['source'], "'") . "'"; diff --git a/libs/sysplugins/internal.template.php b/libs/sysplugins/internal.template.php index 38db5396..69e1e266 100644 --- a/libs/sysplugins/internal.template.php +++ b/libs/sysplugins/internal.template.php @@ -553,17 +553,34 @@ class Smarty_Internal_Template extends Smarty_Internal_TemplateBase { } else { // create variable in parent $this->parent->tpl_vars[$_key] = clone $_value; + $this->smarty->tpl_vars[$_key]->scope = SMARTY_LOCAL_SCOPE; } } if ($scope == SMARTY_ROOT_SCOPE || $this->tpl_vars[$_key]->scope == SMARTY_ROOT_SCOPE) { - if (isset($this->smarty->tpl_vars[$_key])) { + $_ptr = $this; + // find root + while ($_ptr->parent != null) { + $_ptr = $_ptr->parent; + } + if (isset($_ptr->tpl_vars[$_key])) { // variable is already defined in root, copy value - $this->smarty->tpl_vars[$_key]->value = $this->tpl_vars[$_key]->value; + $_ptr->tpl_vars[$_key]->value = $this->tpl_vars[$_key]->value; } else { // create variable in root - $this->smarty->tpl_vars[$_key] = clone $_value; + $_ptr->tpl_vars[$_key] = clone $_value; + $_ptr->tpl_vars[$_key]->scope = SMARTY_LOCAL_SCOPE; } } + if ($scope == SMARTY_GLOBAL_SCOPE || $this->tpl_vars[$_key]->scope == SMARTY_GLOBAL_SCOPE) { + if (isset($this->smarty->global_tpl_vars[$_key])) { + // variable is already defined in root, copy value + $this->smarty->global_tpl_vars[$_key]->value = $this->tpl_vars[$_key]->value; + } else { + // create variable in root + $this->smarty->global_tpl_vars[$_key] = clone $_value; + } + $this->smarty->global_tpl_vars[$_key]->scope = SMARTY_LOCAL_SCOPE; + } } } } diff --git a/libs/sysplugins/internal.templatebase.php b/libs/sysplugins/internal.templatebase.php index bf777aae..52090136 100644 --- a/libs/sysplugins/internal.templatebase.php +++ b/libs/sysplugins/internal.templatebase.php @@ -193,7 +193,8 @@ class Smarty_Internal_TemplateBase { { if ($_ptr === null) { $_ptr = $this; - } while ($_ptr !== null) { + } + while ($_ptr !== null) { if (isset($_ptr->tpl_vars[$variable])) { // found it, return it return $_ptr->tpl_vars[$variable]; @@ -205,6 +206,11 @@ class Smarty_Internal_TemplateBase { $_ptr = null; } } + $_ptr = Smarty::instance(); + if (isset($_ptr->global_tpl_vars[$variable])) { + // found it, return it + return $_ptr->global_tpl_vars[$variable]; + } if (Smarty::$error_unassigned) { throw new Exception('Undefined Smarty variable "' . $variable . '"'); } else { diff --git a/libs/sysplugins/internal.templateparser.php b/libs/sysplugins/internal.templateparser.php index 10db3d4f..6d70eced 100644 --- a/libs/sysplugins/internal.templateparser.php +++ b/libs/sysplugins/internal.templateparser.php @@ -213,9 +213,9 @@ class Smarty_Internal_Templateparser#line 109 "internal.templateparser.php" const TP_RDELIMTAG = 64; const TP_PHPSTART = 65; const TP_PHPEND = 66; - const YY_NO_ACTION = 402; - const YY_ACCEPT_ACTION = 401; - const YY_ERROR_ACTION = 400; + const YY_NO_ACTION = 403; + const YY_ACCEPT_ACTION = 402; + const YY_ERROR_ACTION = 401; /* Next are that tables used to determine what action to take based on the ** current state and lookahead token. These tables are used to implement @@ -267,231 +267,221 @@ class Smarty_Internal_Templateparser#line 109 "internal.templateparser.php" ** shifting non-terminals after a reduce. ** self::$yy_default Default action for each state. */ - const YY_SZ_ACTTAB = 915; + const YY_SZ_ACTTAB = 863; static public $yy_action = array( - /* 0 */ 196, 190, 191, 253, 28, 401, 49, 184, 187, 143, - /* 10 */ 185, 153, 159, 202, 163, 158, 3, 11, 5, 2, - /* 20 */ 9, 6, 154, 150, 190, 191, 155, 23, 36, 238, - /* 30 */ 7, 206, 12, 145, 62, 159, 202, 163, 158, 3, - /* 40 */ 11, 5, 2, 9, 6, 128, 106, 34, 194, 132, - /* 50 */ 219, 147, 226, 141, 8, 121, 160, 38, 55, 237, - /* 60 */ 232, 132, 208, 254, 140, 190, 191, 241, 239, 240, - /* 70 */ 257, 201, 164, 162, 174, 161, 159, 202, 163, 158, - /* 80 */ 3, 11, 5, 2, 9, 6, 145, 188, 31, 198, - /* 90 */ 133, 41, 255, 188, 165, 198, 155, 160, 36, 40, - /* 100 */ 30, 181, 12, 229, 62, 204, 190, 191, 221, 220, - /* 110 */ 112, 235, 194, 132, 219, 124, 161, 159, 202, 163, - /* 120 */ 158, 3, 11, 5, 2, 9, 6, 38, 55, 237, - /* 130 */ 232, 155, 14, 36, 140, 7, 99, 12, 165, 56, - /* 140 */ 101, 160, 132, 37, 1, 144, 65, 132, 199, 172, - /* 150 */ 125, 18, 214, 149, 29, 235, 215, 195, 46, 8, - /* 160 */ 161, 60, 38, 55, 237, 232, 188, 217, 198, 140, - /* 170 */ 165, 51, 188, 160, 198, 221, 220, 230, 68, 127, - /* 180 */ 160, 166, 171, 168, 182, 86, 160, 235, 61, 188, - /* 190 */ 64, 198, 161, 14, 155, 39, 36, 169, 30, 161, - /* 200 */ 12, 101, 62, 109, 188, 161, 198, 20, 251, 225, - /* 210 */ 37, 132, 58, 128, 200, 175, 63, 241, 239, 240, - /* 220 */ 257, 201, 164, 162, 174, 38, 55, 237, 232, 221, - /* 230 */ 220, 31, 140, 82, 41, 227, 32, 155, 22, 36, - /* 240 */ 14, 30, 97, 12, 167, 62, 247, 231, 101, 27, - /* 250 */ 15, 28, 62, 155, 192, 36, 42, 30, 231, 12, - /* 260 */ 27, 62, 179, 170, 37, 62, 28, 197, 38, 55, - /* 270 */ 237, 232, 129, 16, 25, 140, 62, 132, 206, 245, - /* 280 */ 209, 226, 140, 85, 38, 55, 237, 232, 216, 23, - /* 290 */ 132, 140, 26, 206, 43, 140, 155, 40, 36, 248, - /* 300 */ 30, 132, 12, 210, 62, 43, 140, 132, 62, 145, - /* 310 */ 230, 89, 155, 160, 36, 131, 30, 252, 12, 102, - /* 320 */ 62, 107, 250, 178, 10, 48, 13, 38, 55, 237, - /* 330 */ 232, 126, 161, 119, 140, 224, 160, 95, 140, 91, - /* 340 */ 145, 122, 249, 38, 55, 237, 232, 93, 250, 33, - /* 350 */ 140, 121, 218, 14, 145, 161, 228, 14, 250, 165, - /* 360 */ 51, 101, 160, 135, 156, 101, 160, 67, 19, 80, - /* 370 */ 166, 171, 165, 51, 86, 160, 235, 213, 145, 152, - /* 380 */ 77, 161, 236, 166, 171, 161, 169, 86, 120, 235, - /* 390 */ 165, 211, 155, 160, 161, 54, 30, 205, 12, 169, - /* 400 */ 62, 137, 134, 197, 28, 165, 51, 235, 160, 132, - /* 410 */ 28, 131, 161, 75, 145, 210, 166, 171, 165, 234, - /* 420 */ 86, 160, 235, 38, 55, 237, 232, 161, 222, 256, - /* 430 */ 140, 206, 169, 165, 51, 235, 160, 206, 123, 244, - /* 440 */ 161, 73, 62, 246, 166, 171, 165, 51, 86, 160, - /* 450 */ 235, 147, 108, 146, 74, 161, 219, 166, 171, 132, - /* 460 */ 169, 86, 145, 235, 132, 87, 165, 51, 161, 160, - /* 470 */ 186, 187, 140, 169, 71, 189, 250, 166, 171, 165, - /* 480 */ 50, 86, 160, 235, 203, 136, 81, 69, 161, 84, - /* 490 */ 166, 171, 243, 169, 86, 53, 235, 165, 51, 207, - /* 500 */ 160, 161, 15, 62, 121, 70, 169, 183, 166, 171, - /* 510 */ 165, 51, 86, 160, 235, 210, 45, 24, 72, 161, - /* 520 */ 197, 166, 171, 197, 169, 86, 21, 235, 165, 51, - /* 530 */ 116, 160, 161, 140, 219, 207, 76, 169, 98, 166, - /* 540 */ 171, 165, 104, 86, 160, 235, 52, 173, 223, 250, - /* 550 */ 161, 193, 166, 171, 57, 169, 86, 155, 235, 110, - /* 560 */ 142, 30, 19, 161, 151, 62, 210, 4, 212, 194, - /* 570 */ 177, 130, 242, 207, 35, 145, 131, 176, 59, 44, - /* 580 */ 17, 66, 165, 103, 33, 160, 105, 224, 38, 55, - /* 590 */ 237, 232, 251, 166, 171, 140, 251, 86, 251, 235, - /* 600 */ 251, 251, 157, 251, 161, 165, 103, 251, 160, 251, - /* 610 */ 251, 251, 251, 251, 251, 251, 166, 171, 165, 103, - /* 620 */ 86, 160, 235, 251, 251, 233, 251, 161, 251, 166, - /* 630 */ 171, 165, 103, 86, 160, 235, 251, 251, 148, 251, - /* 640 */ 161, 251, 166, 171, 251, 251, 86, 251, 235, 251, - /* 650 */ 251, 138, 251, 161, 251, 251, 165, 104, 251, 160, - /* 660 */ 251, 251, 251, 251, 251, 251, 251, 166, 171, 165, - /* 670 */ 118, 86, 160, 235, 251, 251, 251, 251, 161, 251, - /* 680 */ 166, 171, 165, 111, 86, 160, 235, 180, 251, 251, - /* 690 */ 251, 161, 251, 166, 171, 165, 115, 86, 160, 235, - /* 700 */ 251, 251, 251, 251, 161, 251, 166, 171, 165, 113, - /* 710 */ 86, 160, 235, 251, 251, 251, 251, 161, 251, 166, - /* 720 */ 171, 251, 251, 86, 251, 235, 251, 251, 251, 251, - /* 730 */ 161, 165, 117, 251, 160, 251, 251, 251, 251, 251, - /* 740 */ 251, 251, 166, 171, 165, 47, 86, 139, 235, 251, - /* 750 */ 251, 251, 251, 161, 251, 166, 171, 165, 92, 86, - /* 760 */ 160, 235, 251, 251, 251, 251, 161, 251, 166, 171, - /* 770 */ 165, 90, 86, 160, 235, 251, 251, 251, 251, 161, - /* 780 */ 251, 166, 171, 165, 96, 86, 160, 235, 251, 251, - /* 790 */ 251, 251, 161, 251, 166, 171, 251, 251, 86, 251, - /* 800 */ 235, 251, 251, 251, 251, 161, 165, 94, 251, 160, - /* 810 */ 251, 251, 251, 251, 251, 251, 251, 166, 171, 165, - /* 820 */ 88, 86, 160, 235, 251, 251, 251, 251, 161, 251, - /* 830 */ 166, 171, 165, 100, 86, 160, 235, 251, 251, 251, - /* 840 */ 251, 161, 251, 166, 171, 165, 114, 86, 160, 235, - /* 850 */ 251, 251, 251, 251, 161, 251, 166, 171, 165, 251, - /* 860 */ 86, 160, 235, 251, 251, 251, 251, 161, 251, 166, - /* 870 */ 171, 251, 251, 78, 165, 235, 251, 160, 251, 251, - /* 880 */ 161, 251, 251, 251, 251, 166, 171, 251, 251, 79, - /* 890 */ 251, 235, 165, 251, 251, 160, 161, 251, 251, 251, - /* 900 */ 251, 251, 251, 166, 171, 251, 251, 83, 251, 235, - /* 910 */ 251, 251, 251, 251, 161, + /* 0 */ 238, 201, 200, 121, 221, 223, 202, 107, 133, 192, + /* 10 */ 226, 218, 195, 193, 163, 162, 9, 7, 6, 8, + /* 20 */ 2, 4, 220, 138, 15, 177, 202, 143, 133, 36, + /* 30 */ 16, 21, 120, 12, 228, 63, 201, 200, 105, 37, + /* 40 */ 133, 250, 1, 146, 202, 177, 126, 195, 193, 163, + /* 50 */ 162, 9, 7, 6, 8, 2, 4, 225, 38, 56, + /* 60 */ 237, 232, 30, 177, 191, 147, 133, 11, 167, 52, + /* 70 */ 194, 202, 189, 249, 13, 167, 70, 130, 202, 175, + /* 80 */ 174, 31, 199, 83, 41, 235, 145, 144, 201, 200, + /* 90 */ 177, 24, 235, 221, 223, 176, 194, 177, 189, 195, + /* 100 */ 193, 163, 162, 9, 7, 6, 8, 2, 4, 23, + /* 110 */ 65, 254, 251, 139, 19, 215, 151, 29, 206, 210, + /* 120 */ 198, 47, 219, 108, 61, 63, 3, 63, 37, 201, + /* 130 */ 200, 143, 133, 36, 34, 21, 103, 12, 156, 63, + /* 140 */ 195, 193, 163, 162, 9, 7, 6, 8, 2, 4, + /* 150 */ 128, 194, 143, 189, 36, 147, 10, 147, 12, 190, + /* 160 */ 63, 197, 38, 56, 237, 232, 13, 122, 143, 147, + /* 170 */ 36, 128, 10, 208, 12, 59, 57, 179, 182, 64, + /* 180 */ 5, 97, 24, 38, 56, 237, 232, 127, 133, 250, + /* 190 */ 147, 173, 202, 188, 202, 217, 5, 100, 24, 38, + /* 200 */ 56, 237, 232, 221, 223, 25, 147, 39, 143, 206, + /* 210 */ 36, 177, 21, 177, 12, 114, 63, 192, 143, 218, + /* 220 */ 36, 216, 21, 229, 12, 206, 63, 128, 143, 194, + /* 230 */ 36, 189, 21, 194, 12, 189, 63, 42, 37, 38, + /* 240 */ 56, 237, 232, 157, 94, 156, 147, 129, 120, 38, + /* 250 */ 56, 237, 232, 153, 24, 231, 147, 63, 124, 38, + /* 260 */ 56, 237, 232, 143, 155, 36, 147, 21, 134, 12, + /* 270 */ 109, 63, 143, 40, 36, 247, 21, 19, 12, 133, + /* 280 */ 63, 206, 132, 402, 50, 171, 178, 147, 95, 99, + /* 290 */ 184, 125, 120, 123, 38, 56, 237, 232, 43, 231, + /* 300 */ 231, 147, 98, 38, 56, 237, 232, 16, 167, 51, + /* 310 */ 147, 202, 85, 231, 252, 105, 69, 207, 22, 175, + /* 320 */ 174, 167, 52, 83, 202, 235, 224, 159, 178, 72, + /* 330 */ 177, 149, 175, 174, 202, 176, 83, 150, 235, 167, + /* 340 */ 133, 143, 202, 177, 28, 21, 185, 12, 176, 63, + /* 350 */ 172, 16, 90, 177, 167, 52, 235, 202, 245, 105, + /* 360 */ 129, 177, 73, 231, 253, 175, 174, 14, 256, 83, + /* 370 */ 26, 235, 38, 56, 237, 232, 177, 167, 52, 147, + /* 380 */ 202, 176, 205, 211, 88, 78, 63, 48, 175, 174, + /* 390 */ 167, 52, 83, 202, 235, 150, 154, 167, 75, 177, + /* 400 */ 202, 175, 174, 133, 176, 83, 150, 235, 204, 248, + /* 410 */ 167, 52, 177, 202, 235, 45, 147, 176, 77, 177, + /* 420 */ 222, 175, 174, 167, 52, 83, 202, 235, 16, 55, + /* 430 */ 167, 74, 177, 202, 175, 174, 105, 176, 83, 255, + /* 440 */ 235, 257, 27, 167, 52, 177, 202, 235, 84, 209, + /* 450 */ 176, 76, 177, 53, 175, 174, 31, 243, 83, 41, + /* 460 */ 235, 246, 150, 167, 52, 177, 202, 40, 209, 54, + /* 470 */ 176, 68, 142, 209, 175, 174, 32, 225, 83, 16, + /* 480 */ 235, 150, 227, 244, 150, 177, 133, 105, 120, 209, + /* 490 */ 176, 164, 241, 239, 240, 258, 183, 170, 169, 168, + /* 500 */ 167, 52, 194, 202, 189, 143, 150, 24, 71, 21, + /* 510 */ 18, 175, 174, 63, 150, 83, 115, 235, 167, 102, + /* 520 */ 218, 202, 177, 133, 129, 150, 165, 176, 58, 175, + /* 530 */ 174, 86, 82, 83, 206, 235, 38, 56, 237, 232, + /* 540 */ 177, 110, 196, 147, 133, 218, 87, 91, 131, 242, + /* 550 */ 241, 239, 240, 258, 183, 170, 169, 168, 231, 167, + /* 560 */ 102, 187, 202, 135, 214, 185, 185, 203, 213, 234, + /* 570 */ 175, 174, 167, 104, 83, 202, 235, 207, 62, 166, + /* 580 */ 185, 177, 112, 175, 174, 167, 104, 83, 202, 235, + /* 590 */ 186, 136, 148, 22, 177, 236, 175, 174, 167, 104, + /* 600 */ 83, 202, 235, 66, 140, 158, 152, 177, 20, 175, + /* 610 */ 174, 167, 104, 83, 202, 235, 181, 150, 141, 192, + /* 620 */ 177, 212, 175, 174, 167, 101, 83, 202, 235, 35, + /* 630 */ 207, 233, 44, 177, 67, 175, 174, 106, 60, 83, + /* 640 */ 180, 235, 17, 32, 167, 92, 177, 202, 224, 251, + /* 650 */ 251, 251, 251, 251, 251, 175, 174, 167, 117, 83, + /* 660 */ 202, 235, 251, 251, 251, 251, 177, 251, 175, 174, + /* 670 */ 167, 113, 83, 202, 235, 256, 251, 26, 251, 177, + /* 680 */ 251, 175, 174, 167, 93, 83, 202, 235, 251, 251, + /* 690 */ 251, 251, 177, 63, 175, 174, 167, 49, 83, 202, + /* 700 */ 235, 251, 251, 251, 251, 177, 251, 175, 174, 167, + /* 710 */ 119, 83, 202, 235, 251, 251, 230, 251, 177, 251, + /* 720 */ 175, 174, 45, 147, 83, 251, 235, 251, 251, 167, + /* 730 */ 96, 177, 202, 251, 251, 251, 251, 251, 251, 251, + /* 740 */ 175, 174, 167, 111, 83, 202, 235, 251, 251, 251, + /* 750 */ 251, 177, 251, 175, 174, 167, 118, 83, 202, 235, + /* 760 */ 251, 251, 251, 251, 177, 251, 175, 174, 167, 116, + /* 770 */ 83, 202, 235, 251, 251, 251, 251, 177, 251, 175, + /* 780 */ 174, 167, 89, 83, 202, 235, 251, 251, 251, 251, + /* 790 */ 177, 251, 175, 174, 167, 46, 83, 137, 235, 251, + /* 800 */ 251, 251, 251, 177, 251, 175, 174, 33, 251, 83, + /* 810 */ 251, 235, 251, 251, 167, 160, 177, 202, 251, 251, + /* 820 */ 251, 251, 251, 63, 251, 175, 174, 167, 251, 80, + /* 830 */ 202, 235, 251, 251, 161, 251, 177, 251, 175, 174, + /* 840 */ 167, 251, 79, 202, 235, 251, 251, 251, 251, 177, + /* 850 */ 251, 175, 174, 147, 251, 81, 251, 235, 251, 251, + /* 860 */ 251, 251, 177, ); static public $yy_lookahead = array( - /* 0 */ 16, 40, 41, 30, 3, 68, 69, 70, 71, 30, - /* 10 */ 4, 19, 51, 52, 53, 54, 55, 56, 57, 58, - /* 20 */ 59, 60, 30, 50, 40, 41, 11, 26, 13, 4, - /* 30 */ 15, 30, 17, 27, 19, 51, 52, 53, 54, 55, - /* 40 */ 56, 57, 58, 59, 60, 30, 94, 46, 96, 25, - /* 50 */ 98, 50, 16, 73, 39, 79, 76, 42, 43, 44, - /* 60 */ 45, 25, 30, 4, 49, 40, 41, 31, 32, 33, - /* 70 */ 34, 35, 36, 37, 38, 95, 51, 52, 53, 54, - /* 80 */ 55, 56, 57, 58, 59, 60, 27, 1, 17, 3, - /* 90 */ 24, 20, 4, 1, 73, 3, 11, 76, 13, 28, - /* 100 */ 15, 9, 17, 18, 19, 84, 40, 41, 12, 13, - /* 110 */ 94, 90, 96, 25, 98, 30, 95, 51, 52, 53, - /* 120 */ 54, 55, 56, 57, 58, 59, 60, 42, 43, 44, - /* 130 */ 45, 11, 15, 13, 49, 15, 78, 17, 73, 19, - /* 140 */ 23, 76, 25, 47, 27, 28, 16, 25, 62, 84, - /* 150 */ 30, 29, 1, 2, 3, 90, 5, 6, 7, 39, - /* 160 */ 95, 10, 42, 43, 44, 45, 1, 4, 3, 49, - /* 170 */ 73, 74, 1, 76, 3, 12, 13, 73, 81, 82, - /* 180 */ 76, 84, 85, 73, 87, 88, 76, 90, 30, 1, - /* 190 */ 30, 3, 95, 15, 11, 91, 13, 100, 15, 95, - /* 200 */ 17, 23, 19, 80, 1, 95, 3, 29, 43, 105, - /* 210 */ 47, 25, 61, 30, 63, 64, 65, 31, 32, 33, - /* 220 */ 34, 35, 36, 37, 38, 42, 43, 44, 45, 12, - /* 230 */ 13, 17, 49, 72, 20, 18, 3, 11, 3, 13, - /* 240 */ 15, 15, 78, 17, 11, 19, 43, 1, 23, 3, - /* 250 */ 15, 3, 19, 11, 66, 13, 30, 15, 1, 17, - /* 260 */ 3, 19, 14, 30, 47, 19, 3, 106, 42, 43, - /* 270 */ 44, 45, 30, 21, 26, 49, 19, 25, 30, 98, - /* 280 */ 4, 16, 49, 77, 42, 43, 44, 45, 42, 26, - /* 290 */ 25, 49, 3, 30, 48, 49, 11, 28, 13, 42, - /* 300 */ 15, 25, 17, 97, 19, 48, 49, 25, 19, 27, - /* 310 */ 73, 75, 11, 76, 13, 30, 15, 4, 17, 30, - /* 320 */ 19, 21, 86, 18, 24, 80, 21, 42, 43, 44, - /* 330 */ 45, 30, 95, 73, 49, 99, 76, 75, 49, 78, - /* 340 */ 27, 79, 105, 42, 43, 44, 45, 75, 86, 22, - /* 350 */ 49, 79, 92, 15, 27, 95, 18, 15, 86, 73, - /* 360 */ 74, 23, 76, 73, 20, 23, 76, 81, 26, 72, - /* 370 */ 84, 85, 73, 74, 88, 76, 90, 48, 27, 28, - /* 380 */ 81, 95, 16, 84, 85, 95, 100, 88, 4, 90, - /* 390 */ 73, 4, 11, 76, 95, 77, 15, 48, 17, 100, - /* 400 */ 19, 84, 85, 106, 3, 73, 74, 90, 76, 25, - /* 410 */ 3, 30, 95, 81, 27, 97, 84, 85, 73, 4, - /* 420 */ 88, 76, 90, 42, 43, 44, 45, 95, 16, 84, - /* 430 */ 49, 30, 100, 73, 74, 90, 76, 30, 4, 4, - /* 440 */ 95, 81, 19, 4, 84, 85, 73, 74, 88, 76, - /* 450 */ 90, 50, 94, 30, 81, 95, 98, 84, 85, 25, - /* 460 */ 100, 88, 27, 90, 25, 75, 73, 74, 95, 76, - /* 470 */ 70, 71, 49, 100, 81, 4, 86, 84, 85, 73, - /* 480 */ 74, 88, 76, 90, 4, 83, 72, 81, 95, 72, - /* 490 */ 84, 85, 11, 100, 88, 77, 90, 73, 74, 97, - /* 500 */ 76, 95, 15, 19, 79, 81, 100, 4, 84, 85, - /* 510 */ 73, 74, 88, 76, 90, 97, 78, 26, 81, 95, - /* 520 */ 106, 84, 85, 106, 100, 88, 101, 90, 73, 74, - /* 530 */ 94, 76, 95, 49, 98, 97, 81, 100, 75, 84, - /* 540 */ 85, 73, 74, 88, 76, 90, 77, 49, 30, 86, - /* 550 */ 95, 8, 84, 85, 19, 100, 88, 11, 90, 30, - /* 560 */ 30, 15, 26, 95, 30, 19, 97, 102, 86, 96, - /* 570 */ 106, 103, 104, 97, 89, 27, 30, 87, 19, 78, - /* 580 */ 15, 92, 73, 74, 22, 76, 78, 99, 42, 43, - /* 590 */ 44, 45, 107, 84, 85, 49, 107, 88, 107, 90, - /* 600 */ 107, 107, 93, 107, 95, 73, 74, 107, 76, 107, - /* 610 */ 107, 107, 107, 107, 107, 107, 84, 85, 73, 74, - /* 620 */ 88, 76, 90, 107, 107, 93, 107, 95, 107, 84, - /* 630 */ 85, 73, 74, 88, 76, 90, 107, 107, 93, 107, - /* 640 */ 95, 107, 84, 85, 107, 107, 88, 107, 90, 107, - /* 650 */ 107, 93, 107, 95, 107, 107, 73, 74, 107, 76, - /* 660 */ 107, 107, 107, 107, 107, 107, 107, 84, 85, 73, - /* 670 */ 74, 88, 76, 90, 107, 107, 107, 107, 95, 107, - /* 680 */ 84, 85, 73, 74, 88, 76, 90, 104, 107, 107, - /* 690 */ 107, 95, 107, 84, 85, 73, 74, 88, 76, 90, - /* 700 */ 107, 107, 107, 107, 95, 107, 84, 85, 73, 74, - /* 710 */ 88, 76, 90, 107, 107, 107, 107, 95, 107, 84, - /* 720 */ 85, 107, 107, 88, 107, 90, 107, 107, 107, 107, - /* 730 */ 95, 73, 74, 107, 76, 107, 107, 107, 107, 107, - /* 740 */ 107, 107, 84, 85, 73, 74, 88, 76, 90, 107, - /* 750 */ 107, 107, 107, 95, 107, 84, 85, 73, 74, 88, - /* 760 */ 76, 90, 107, 107, 107, 107, 95, 107, 84, 85, - /* 770 */ 73, 74, 88, 76, 90, 107, 107, 107, 107, 95, - /* 780 */ 107, 84, 85, 73, 74, 88, 76, 90, 107, 107, - /* 790 */ 107, 107, 95, 107, 84, 85, 107, 107, 88, 107, - /* 800 */ 90, 107, 107, 107, 107, 95, 73, 74, 107, 76, - /* 810 */ 107, 107, 107, 107, 107, 107, 107, 84, 85, 73, - /* 820 */ 74, 88, 76, 90, 107, 107, 107, 107, 95, 107, - /* 830 */ 84, 85, 73, 74, 88, 76, 90, 107, 107, 107, - /* 840 */ 107, 95, 107, 84, 85, 73, 74, 88, 76, 90, - /* 850 */ 107, 107, 107, 107, 95, 107, 84, 85, 73, 107, - /* 860 */ 88, 76, 90, 107, 107, 107, 107, 95, 107, 84, - /* 870 */ 85, 107, 107, 88, 73, 90, 107, 76, 107, 107, - /* 880 */ 95, 107, 107, 107, 107, 84, 85, 107, 107, 88, - /* 890 */ 107, 90, 73, 107, 107, 76, 95, 107, 107, 107, - /* 900 */ 107, 107, 107, 84, 85, 107, 107, 88, 107, 90, - /* 910 */ 107, 107, 107, 107, 95, + /* 0 */ 4, 40, 41, 73, 12, 13, 76, 94, 25, 96, + /* 10 */ 18, 98, 51, 52, 53, 54, 55, 56, 57, 58, + /* 20 */ 59, 60, 92, 73, 21, 95, 76, 11, 25, 13, + /* 30 */ 15, 15, 79, 17, 18, 19, 40, 41, 23, 47, + /* 40 */ 25, 73, 27, 28, 76, 95, 30, 51, 52, 53, + /* 50 */ 54, 55, 56, 57, 58, 59, 60, 16, 42, 43, + /* 60 */ 44, 45, 3, 95, 16, 49, 25, 102, 73, 74, + /* 70 */ 1, 76, 3, 105, 15, 73, 81, 82, 76, 84, + /* 80 */ 85, 17, 87, 88, 20, 90, 84, 85, 40, 41, + /* 90 */ 95, 3, 90, 12, 13, 100, 1, 95, 3, 51, + /* 100 */ 52, 53, 54, 55, 56, 57, 58, 59, 60, 3, + /* 110 */ 16, 4, 43, 24, 26, 1, 2, 3, 30, 5, + /* 120 */ 6, 7, 30, 21, 10, 19, 24, 19, 47, 40, + /* 130 */ 41, 11, 25, 13, 46, 15, 30, 17, 50, 19, + /* 140 */ 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + /* 150 */ 30, 1, 11, 3, 13, 49, 15, 49, 17, 9, + /* 160 */ 19, 66, 42, 43, 44, 45, 15, 4, 11, 49, + /* 170 */ 13, 30, 15, 30, 17, 61, 19, 63, 64, 65, + /* 180 */ 39, 78, 3, 42, 43, 44, 45, 30, 25, 73, + /* 190 */ 49, 73, 76, 14, 76, 4, 39, 78, 3, 42, + /* 200 */ 43, 44, 45, 12, 13, 26, 49, 91, 11, 30, + /* 210 */ 13, 95, 15, 95, 17, 94, 19, 96, 11, 98, + /* 220 */ 13, 105, 15, 30, 17, 30, 19, 30, 11, 1, + /* 230 */ 13, 3, 15, 1, 17, 3, 19, 30, 47, 42, + /* 240 */ 43, 44, 45, 50, 75, 50, 49, 30, 79, 42, + /* 250 */ 43, 44, 45, 19, 3, 86, 49, 19, 4, 42, + /* 260 */ 43, 44, 45, 11, 30, 13, 49, 15, 30, 17, + /* 270 */ 80, 19, 11, 28, 13, 43, 15, 26, 17, 25, + /* 280 */ 19, 30, 30, 68, 69, 70, 71, 49, 75, 75, + /* 290 */ 62, 30, 79, 79, 42, 43, 44, 45, 78, 86, + /* 300 */ 86, 49, 75, 42, 43, 44, 45, 15, 73, 74, + /* 310 */ 49, 76, 72, 86, 4, 23, 81, 97, 26, 84, + /* 320 */ 85, 73, 74, 88, 76, 90, 99, 70, 71, 81, + /* 330 */ 95, 73, 84, 85, 76, 100, 88, 27, 90, 73, + /* 340 */ 25, 11, 76, 95, 29, 15, 106, 17, 100, 19, + /* 350 */ 84, 15, 75, 95, 73, 74, 90, 76, 98, 23, + /* 360 */ 30, 95, 81, 86, 18, 84, 85, 21, 1, 88, + /* 370 */ 3, 90, 42, 43, 44, 45, 95, 73, 74, 49, + /* 380 */ 76, 100, 4, 4, 78, 81, 19, 80, 84, 85, + /* 390 */ 73, 74, 88, 76, 90, 27, 28, 73, 81, 95, + /* 400 */ 76, 84, 85, 25, 100, 88, 27, 90, 84, 42, + /* 410 */ 73, 74, 95, 76, 90, 48, 49, 100, 81, 95, + /* 420 */ 16, 84, 85, 73, 74, 88, 76, 90, 15, 77, + /* 430 */ 73, 81, 95, 76, 84, 85, 23, 100, 88, 4, + /* 440 */ 90, 84, 29, 73, 74, 95, 76, 90, 77, 97, + /* 450 */ 100, 81, 95, 77, 84, 85, 17, 11, 88, 20, + /* 460 */ 90, 4, 27, 73, 74, 95, 76, 28, 97, 77, + /* 470 */ 100, 81, 20, 97, 84, 85, 22, 16, 88, 15, + /* 480 */ 90, 27, 18, 4, 27, 95, 25, 23, 79, 97, + /* 490 */ 100, 4, 31, 32, 33, 34, 35, 36, 37, 38, + /* 500 */ 73, 74, 1, 76, 3, 11, 27, 3, 81, 15, + /* 510 */ 101, 84, 85, 19, 27, 88, 94, 90, 73, 74, + /* 520 */ 98, 76, 95, 25, 30, 27, 49, 100, 19, 84, + /* 530 */ 85, 72, 72, 88, 30, 90, 42, 43, 44, 45, + /* 540 */ 95, 94, 8, 49, 25, 98, 72, 75, 103, 104, + /* 550 */ 31, 32, 33, 34, 35, 36, 37, 38, 86, 73, + /* 560 */ 74, 4, 76, 83, 48, 106, 106, 4, 48, 4, + /* 570 */ 84, 85, 73, 74, 88, 76, 90, 97, 30, 4, + /* 580 */ 106, 95, 30, 84, 85, 73, 74, 88, 76, 90, + /* 590 */ 104, 30, 93, 26, 95, 16, 84, 85, 73, 74, + /* 600 */ 88, 76, 90, 30, 30, 93, 30, 95, 26, 84, + /* 610 */ 85, 73, 74, 88, 76, 90, 106, 27, 93, 96, + /* 620 */ 95, 86, 84, 85, 73, 74, 88, 76, 90, 89, + /* 630 */ 97, 93, 78, 95, 92, 84, 85, 78, 19, 88, + /* 640 */ 87, 90, 15, 22, 73, 74, 95, 76, 99, 107, + /* 650 */ 107, 107, 107, 107, 107, 84, 85, 73, 74, 88, + /* 660 */ 76, 90, 107, 107, 107, 107, 95, 107, 84, 85, + /* 670 */ 73, 74, 88, 76, 90, 1, 107, 3, 107, 95, + /* 680 */ 107, 84, 85, 73, 74, 88, 76, 90, 107, 107, + /* 690 */ 107, 107, 95, 19, 84, 85, 73, 74, 88, 76, + /* 700 */ 90, 107, 107, 107, 107, 95, 107, 84, 85, 73, + /* 710 */ 74, 88, 76, 90, 107, 107, 42, 107, 95, 107, + /* 720 */ 84, 85, 48, 49, 88, 107, 90, 107, 107, 73, + /* 730 */ 74, 95, 76, 107, 107, 107, 107, 107, 107, 107, + /* 740 */ 84, 85, 73, 74, 88, 76, 90, 107, 107, 107, + /* 750 */ 107, 95, 107, 84, 85, 73, 74, 88, 76, 90, + /* 760 */ 107, 107, 107, 107, 95, 107, 84, 85, 73, 74, + /* 770 */ 88, 76, 90, 107, 107, 107, 107, 95, 107, 84, + /* 780 */ 85, 73, 74, 88, 76, 90, 107, 107, 107, 107, + /* 790 */ 95, 107, 84, 85, 73, 74, 88, 76, 90, 107, + /* 800 */ 107, 107, 107, 95, 107, 84, 85, 3, 107, 88, + /* 810 */ 107, 90, 107, 107, 73, 11, 95, 76, 107, 107, + /* 820 */ 107, 107, 107, 19, 107, 84, 85, 73, 107, 88, + /* 830 */ 76, 90, 107, 107, 30, 107, 95, 107, 84, 85, + /* 840 */ 73, 107, 88, 76, 90, 107, 107, 107, 107, 95, + /* 850 */ 107, 84, 85, 49, 107, 88, 107, 90, 107, 107, + /* 860 */ 107, 107, 95, ); const YY_SHIFT_USE_DFLT = -40; - const YY_SHIFT_MAX = 157; + const YY_SHIFT_MAX = 158; static public $yy_shift_ofst = array( - /* 0 */ 151, 120, 15, 15, 15, 15, 15, 15, 15, 15, - /* 10 */ 15, 15, 301, 301, 183, 183, 183, 183, 183, 183, - /* 20 */ 183, 183, 183, 183, 183, 183, 183, 183, 183, 226, - /* 30 */ 183, 85, 285, 242, 381, 546, 546, 546, 246, 257, - /* 40 */ 289, 233, 117, 423, 71, 71, 484, 282, 327, 151, - /* 50 */ 36, 186, 1, 248, 401, 203, 407, 407, 171, 407, - /* 60 */ 171, 351, 407, 171, 548, 269, 269, 66, 25, -16, - /* 70 */ -39, -39, -39, -39, -39, -39, -39, -39, 163, 217, - /* 80 */ 92, 86, 165, 96, 188, 263, 96, 6, 88, 435, - /* 90 */ 434, 214, 265, 387, 439, 313, 276, 214, 59, 214, - /* 100 */ 384, -8, 235, 252, 122, 214, 269, 559, 269, 562, - /* 110 */ 565, 24, 269, 24, 24, 24, 269, 24, 24, -40, - /* 120 */ -40, -40, -40, -40, 338, 342, 178, 300, 225, 225, - /* 130 */ 305, 225, -27, 535, 480, 349, 471, 415, 366, 491, - /* 140 */ 530, 543, 498, 536, 160, -21, 329, 32, 130, 158, - /* 150 */ 518, 503, 534, 529, 487, 344, 481, 412, + /* 0 */ 114, 157, 141, 141, 141, 141, 141, 141, 141, 141, + /* 10 */ 141, 141, 261, 120, 261, 120, 120, 120, 120, 120, + /* 20 */ 120, 197, 120, 197, 197, 120, 120, 120, 120, 207, + /* 30 */ 120, 16, 252, 217, 330, 494, 494, 494, 674, 367, + /* 40 */ 106, 804, 15, 439, 439, 238, 498, 108, 454, 498, + /* 50 */ 114, 461, 519, 88, 179, 195, 232, 504, 504, 501, + /* 60 */ 504, 501, 368, 504, 501, 245, 590, 245, 89, 48, + /* 70 */ -4, -39, -39, -39, -39, -39, -39, -39, -39, 191, + /* 80 */ -8, 81, 228, 81, 251, 150, 69, 95, 64, 107, + /* 90 */ 487, 435, 254, 41, 379, 457, 378, 64, 479, 310, + /* 100 */ 64, 163, 315, 59, 3, 234, 64, 245, 619, 621, + /* 110 */ 245, -17, 627, -17, 245, 245, -17, -17, -17, -17, + /* 120 */ -40, -40, -40, -40, -40, 413, 464, 292, 336, 336, + /* 130 */ 102, 346, 336, 193, 520, 557, 567, 582, 516, 509, + /* 140 */ 477, 404, 446, 452, 563, 565, 573, 574, 579, 534, + /* 150 */ 561, 548, 575, 552, 576, 151, 143, 92, 94, ); - const YY_REDUCE_USE_DFLT = -64; - const YY_REDUCE_MAX = 123; + const YY_REDUCE_USE_DFLT = -88; + const YY_REDUCE_MAX = 124; static public $yy_reduce_ofst = array( - /* 0 */ -63, 97, 455, 437, 424, 299, 360, 406, 332, 373, - /* 10 */ 286, 393, 468, 583, 558, 509, 532, 545, 658, 622, - /* 20 */ 596, 609, 697, 772, 733, 635, 759, 746, 710, 671, - /* 30 */ 684, 801, 785, 819, 317, 345, 65, 21, 104, 237, - /* 40 */ 260, 110, 262, 290, -48, 16, -20, 272, 236, 400, - /* 50 */ 425, 425, 438, 402, 438, 161, 469, 418, 414, 206, - /* 60 */ 297, 390, 318, 417, 463, 358, 436, 465, 465, 465, - /* 70 */ 465, 465, 465, 465, 465, 465, 465, 465, 485, 485, - /* 80 */ 464, 464, 464, 485, 464, 476, 485, 482, -24, 482, - /* 90 */ -24, 473, -24, 482, -24, 482, -24, 473, 482, 473, - /* 100 */ -24, 489, 508, -24, -24, 473, 181, 490, 181, 488, - /* 110 */ 501, -24, 181, -24, -24, -24, 181, -24, -24, 58, - /* 120 */ 164, 123, 245, 261, + /* 0 */ 215, -5, 427, 390, 370, 248, 317, 350, 304, 281, + /* 10 */ 235, 337, 445, 525, 486, 538, 499, 512, 584, 597, + /* 20 */ 623, 610, 636, 551, 656, 682, 708, 669, 695, 721, + /* 30 */ 571, 741, 767, 754, 2, 357, 266, 324, 116, -32, + /* 40 */ -70, 118, 214, 121, -87, -50, 169, 258, 227, 213, + /* 50 */ 257, 409, 409, 220, 480, 220, 459, 376, 392, 460, + /* 60 */ 371, 240, 277, 352, 474, 447, 472, 422, -35, -35, + /* 70 */ -35, -35, -35, -35, -35, -35, -35, -35, -35, 540, + /* 80 */ 540, 540, 510, 540, 533, 510, 510, 510, 523, -47, + /* 90 */ 535, 535, -47, -47, 535, 535, -47, 523, 535, 535, + /* 100 */ 523, -47, -47, 559, -47, 542, 523, 260, 553, 549, + /* 110 */ 260, -47, 554, -47, 260, 260, -47, -47, -47, -47, + /* 120 */ 190, 119, 103, 307, 306, ); static public $yyExpectedTokens = array( /* 0 */ array(1, 2, 3, 5, 6, 7, 10, 61, 63, 64, 65, ), @@ -537,34 +527,34 @@ static public $yy_action = array( /* 40 */ array(3, 19, 30, 49, ), /* 41 */ array(3, 11, 19, 30, 49, ), /* 42 */ array(15, 23, 25, 27, 28, ), - /* 43 */ array(19, 30, 49, ), + /* 43 */ array(17, 20, 28, ), /* 44 */ array(17, 20, 28, ), - /* 45 */ array(17, 20, 28, ), - /* 46 */ array(19, 49, ), - /* 47 */ array(25, 27, ), + /* 45 */ array(19, 30, 49, ), + /* 46 */ array(25, 27, ), + /* 47 */ array(19, 49, ), /* 48 */ array(22, 27, ), - /* 49 */ array(1, 2, 3, 5, 6, 7, 10, 61, 63, 64, 65, ), - /* 50 */ array(16, 25, 31, 32, 33, 34, 35, 36, 37, 38, ), - /* 51 */ array(25, 31, 32, 33, 34, 35, 36, 37, 38, ), - /* 52 */ array(3, 26, 30, 46, 50, ), - /* 53 */ array(3, 14, 26, 30, ), - /* 54 */ array(3, 30, 50, ), - /* 55 */ array(1, 3, 43, ), - /* 56 */ array(3, 30, ), + /* 49 */ array(25, 27, ), + /* 50 */ array(1, 2, 3, 5, 6, 7, 10, 61, 63, 64, 65, ), + /* 51 */ array(16, 25, 31, 32, 33, 34, 35, 36, 37, 38, ), + /* 52 */ array(25, 31, 32, 33, 34, 35, 36, 37, 38, ), + /* 53 */ array(3, 26, 30, 46, 50, ), + /* 54 */ array(3, 14, 26, 30, ), + /* 55 */ array(3, 30, 50, ), + /* 56 */ array(1, 3, 43, ), /* 57 */ array(3, 30, ), - /* 58 */ array(1, 3, ), - /* 59 */ array(3, 30, ), - /* 60 */ array(1, 3, ), - /* 61 */ array(27, 28, ), - /* 62 */ array(3, 30, ), - /* 63 */ array(1, 3, ), - /* 64 */ array(27, ), + /* 58 */ array(3, 30, ), + /* 59 */ array(1, 3, ), + /* 60 */ array(3, 30, ), + /* 61 */ array(1, 3, ), + /* 62 */ array(27, 28, ), + /* 63 */ array(3, 30, ), + /* 64 */ array(1, 3, ), /* 65 */ array(28, ), - /* 66 */ array(28, ), - /* 67 */ array(24, 40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), - /* 68 */ array(4, 40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), + /* 66 */ array(27, ), + /* 67 */ array(28, ), + /* 68 */ array(24, 40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 69 */ array(16, 40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), - /* 70 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), + /* 70 */ array(4, 40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 71 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 72 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 73 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), @@ -572,87 +562,87 @@ static public $yy_action = array( /* 75 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 76 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), /* 77 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), - /* 78 */ array(4, 12, 13, 47, ), - /* 79 */ array(12, 13, 18, 47, ), - /* 80 */ array(1, 3, 9, ), - /* 81 */ array(1, 3, 62, ), - /* 82 */ array(1, 3, 43, ), + /* 78 */ array(40, 41, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, ), + /* 79 */ array(4, 12, 13, 47, ), + /* 80 */ array(12, 13, 18, 47, ), + /* 81 */ array(12, 13, 47, ), + /* 82 */ array(1, 3, 62, ), /* 83 */ array(12, 13, 47, ), - /* 84 */ array(1, 3, 66, ), - /* 85 */ array(3, 26, 30, ), - /* 86 */ array(12, 13, 47, ), - /* 87 */ array(4, 27, ), - /* 88 */ array(4, 25, ), - /* 89 */ array(4, 27, ), - /* 90 */ array(4, 25, ), - /* 91 */ array(17, 20, ), - /* 92 */ array(16, 25, ), - /* 93 */ array(4, 27, ), - /* 94 */ array(4, 25, ), + /* 84 */ array(3, 26, 30, ), + /* 85 */ array(1, 3, 9, ), + /* 86 */ array(1, 3, 43, ), + /* 87 */ array(1, 3, 66, ), + /* 88 */ array(17, 20, ), + /* 89 */ array(4, 25, ), + /* 90 */ array(4, 27, ), + /* 91 */ array(4, 27, ), + /* 92 */ array(4, 25, ), + /* 93 */ array(16, 25, ), + /* 94 */ array(4, 27, ), /* 95 */ array(4, 27, ), /* 96 */ array(4, 25, ), /* 97 */ array(17, 20, ), /* 98 */ array(4, 27, ), - /* 99 */ array(17, 20, ), - /* 100 */ array(4, 25, ), - /* 101 */ array(19, 30, ), - /* 102 */ array(3, 15, ), - /* 103 */ array(21, 25, ), - /* 104 */ array(25, 29, ), - /* 105 */ array(17, 20, ), - /* 106 */ array(28, ), - /* 107 */ array(19, ), - /* 108 */ array(28, ), + /* 99 */ array(4, 27, ), + /* 100 */ array(17, 20, ), + /* 101 */ array(4, 25, ), + /* 102 */ array(25, 29, ), + /* 103 */ array(3, 15, ), + /* 104 */ array(21, 25, ), + /* 105 */ array(19, 30, ), + /* 106 */ array(17, 20, ), + /* 107 */ array(28, ), + /* 108 */ array(19, ), /* 109 */ array(22, ), - /* 110 */ array(15, ), + /* 110 */ array(28, ), /* 111 */ array(25, ), - /* 112 */ array(28, ), + /* 112 */ array(15, ), /* 113 */ array(25, ), - /* 114 */ array(25, ), - /* 115 */ array(25, ), - /* 116 */ array(28, ), + /* 114 */ array(28, ), + /* 115 */ array(28, ), + /* 116 */ array(25, ), /* 117 */ array(25, ), /* 118 */ array(25, ), - /* 119 */ array(), + /* 119 */ array(25, ), /* 120 */ array(), /* 121 */ array(), /* 122 */ array(), /* 123 */ array(), - /* 124 */ array(15, 18, 23, ), - /* 125 */ array(15, 23, 26, ), - /* 126 */ array(15, 23, 29, ), - /* 127 */ array(21, 24, ), + /* 124 */ array(), + /* 125 */ array(15, 23, 29, ), + /* 126 */ array(15, 18, 23, ), + /* 127 */ array(15, 23, 26, ), /* 128 */ array(15, 23, ), /* 129 */ array(15, 23, ), - /* 130 */ array(18, 21, ), - /* 131 */ array(15, 23, ), - /* 132 */ array(30, 50, ), - /* 133 */ array(19, ), - /* 134 */ array(4, ), - /* 135 */ array(48, ), - /* 136 */ array(4, ), - /* 137 */ array(4, ), - /* 138 */ array(16, ), - /* 139 */ array(26, ), - /* 140 */ array(30, ), - /* 141 */ array(8, ), - /* 142 */ array(49, ), - /* 143 */ array(26, ), - /* 144 */ array(30, ), - /* 145 */ array(30, ), - /* 146 */ array(48, ), + /* 130 */ array(21, 24, ), + /* 131 */ array(18, 21, ), + /* 132 */ array(15, 23, ), + /* 133 */ array(30, 50, ), + /* 134 */ array(48, ), + /* 135 */ array(4, ), + /* 136 */ array(26, ), + /* 137 */ array(26, ), + /* 138 */ array(48, ), + /* 139 */ array(19, ), + /* 140 */ array(49, ), + /* 141 */ array(16, ), + /* 142 */ array(11, ), + /* 143 */ array(20, ), + /* 144 */ array(4, ), + /* 145 */ array(4, ), + /* 146 */ array(30, ), /* 147 */ array(30, ), /* 148 */ array(16, ), - /* 149 */ array(30, ), + /* 149 */ array(8, ), /* 150 */ array(30, ), - /* 151 */ array(4, ), - /* 152 */ array(30, ), + /* 151 */ array(30, ), + /* 152 */ array(4, ), /* 153 */ array(30, ), - /* 154 */ array(15, ), - /* 155 */ array(20, ), - /* 156 */ array(11, ), - /* 157 */ array(16, ), - /* 158 */ array(), + /* 154 */ array(30, ), + /* 155 */ array(15, ), + /* 156 */ array(30, ), + /* 157 */ array(30, ), + /* 158 */ array(16, ), /* 159 */ array(), /* 160 */ array(), /* 161 */ array(), @@ -752,34 +742,35 @@ static public $yy_action = array( /* 255 */ array(), /* 256 */ array(), /* 257 */ array(), + /* 258 */ array(), ); static public $yy_default = array( - /* 0 */ 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - /* 10 */ 400, 400, 385, 400, 349, 349, 349, 349, 400, 400, - /* 20 */ 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - /* 30 */ 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - /* 40 */ 400, 400, 287, 400, 318, 273, 400, 287, 287, 258, - /* 50 */ 359, 359, 325, 400, 325, 400, 400, 400, 400, 400, - /* 60 */ 400, 287, 400, 400, 287, 314, 313, 400, 400, 400, - /* 70 */ 361, 371, 370, 363, 362, 357, 367, 366, 400, 400, - /* 80 */ 400, 400, 400, 354, 400, 400, 293, 400, 400, 400, - /* 90 */ 400, 343, 400, 400, 400, 400, 400, 342, 400, 341, - /* 100 */ 400, 400, 325, 348, 386, 340, 319, 400, 316, 294, - /* 110 */ 325, 360, 337, 281, 291, 288, 315, 387, 388, 325, - /* 120 */ 325, 353, 353, 325, 400, 292, 292, 400, 292, 355, - /* 130 */ 400, 400, 400, 400, 400, 400, 400, 400, 400, 320, - /* 140 */ 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - /* 150 */ 400, 400, 400, 400, 317, 303, 400, 400, 365, 368, - /* 160 */ 320, 322, 378, 364, 377, 302, 296, 327, 328, 356, - /* 170 */ 326, 295, 297, 323, 379, 265, 290, 396, 382, 282, - /* 180 */ 384, 262, 289, 278, 259, 277, 260, 261, 398, 280, - /* 190 */ 380, 381, 267, 268, 324, 266, 358, 397, 399, 263, - /* 200 */ 264, 376, 369, 284, 299, 393, 335, 334, 321, 336, - /* 210 */ 333, 271, 285, 392, 270, 269, 312, 329, 344, 338, - /* 220 */ 300, 301, 346, 350, 352, 390, 308, 331, 330, 332, - /* 230 */ 391, 395, 306, 347, 283, 307, 345, 305, 279, 373, - /* 240 */ 374, 372, 383, 304, 276, 339, 272, 310, 311, 389, - /* 250 */ 286, 309, 274, 351, 275, 394, 298, 375, + /* 0 */ 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, + /* 10 */ 401, 401, 386, 350, 401, 350, 350, 350, 401, 401, + /* 20 */ 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, + /* 30 */ 401, 401, 401, 401, 401, 401, 401, 401, 401, 401, + /* 40 */ 401, 401, 288, 274, 319, 401, 288, 401, 288, 288, + /* 50 */ 259, 360, 360, 326, 401, 326, 401, 401, 401, 401, + /* 60 */ 401, 401, 288, 401, 401, 315, 288, 314, 401, 401, + /* 70 */ 401, 363, 358, 371, 372, 367, 364, 362, 368, 401, + /* 80 */ 401, 355, 401, 294, 401, 401, 401, 401, 344, 401, + /* 90 */ 401, 401, 401, 401, 401, 401, 401, 343, 401, 401, + /* 100 */ 342, 401, 387, 326, 349, 401, 341, 320, 401, 295, + /* 110 */ 317, 389, 326, 292, 338, 316, 388, 361, 282, 289, + /* 120 */ 354, 326, 326, 354, 326, 293, 401, 293, 293, 401, + /* 130 */ 401, 401, 356, 401, 401, 401, 401, 321, 401, 401, + /* 140 */ 401, 401, 401, 304, 401, 401, 401, 401, 401, 401, + /* 150 */ 401, 401, 401, 401, 401, 318, 401, 401, 401, 261, + /* 160 */ 328, 327, 366, 365, 278, 324, 279, 303, 380, 379, + /* 170 */ 378, 260, 298, 329, 296, 297, 357, 323, 262, 265, + /* 180 */ 291, 397, 266, 377, 264, 398, 385, 281, 283, 400, + /* 190 */ 263, 359, 325, 370, 399, 369, 269, 268, 267, 290, + /* 200 */ 382, 381, 321, 285, 300, 337, 336, 335, 322, 334, + /* 210 */ 270, 272, 286, 393, 394, 271, 391, 330, 339, 351, + /* 220 */ 345, 302, 347, 301, 353, 309, 332, 331, 333, 352, + /* 230 */ 313, 287, 307, 348, 284, 308, 346, 306, 280, 374, + /* 240 */ 375, 373, 384, 305, 277, 340, 273, 311, 312, 390, + /* 250 */ 392, 310, 275, 383, 395, 276, 396, 299, 376, ); /* The next thing included is series of defines which control ** various aspects of the generated parser. @@ -798,7 +789,7 @@ static public $yy_action = array( */ const YYNOCODE = 108; const YYSTACKDEPTH = 100; - const YYNSTATE = 258; + const YYNSTATE = 259; const YYNRULE = 142; const YYERRORSYMBOL = 67; const YYERRSYMDT = 'yy0'; @@ -997,7 +988,7 @@ static public $yy_action = array( /* 11 */ "template_element ::= XML", /* 12 */ "template_element ::= OTHER", /* 13 */ "smartytag ::= LDEL expr attributes RDEL", - /* 14 */ "smartytag ::= LDEL varindexed EQUAL expr RDEL", + /* 14 */ "smartytag ::= LDEL varindexed EQUAL expr attributes RDEL", /* 15 */ "varindexed ::= DOLLAR varvar arrayindex", /* 16 */ "smartytag ::= LDEL ID attributes RDEL", /* 17 */ "smartytag ::= LDEL ID PTR ID attributes RDEL", @@ -1503,7 +1494,7 @@ static public $yy_action = array( array( 'lhs' => 70, 'rhs' => 1 ), array( 'lhs' => 70, 'rhs' => 1 ), array( 'lhs' => 71, 'rhs' => 4 ), - array( 'lhs' => 71, 'rhs' => 5 ), + array( 'lhs' => 71, 'rhs' => 6 ), array( 'lhs' => 76, 'rhs' => 3 ), array( 'lhs' => 71, 'rhs' => 4 ), array( 'lhs' => 71, 'rhs' => 6 ), @@ -1791,31 +1782,31 @@ static public $yy_action = array( */ #line 73 "internal.templateparser.y" function yy_r0(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1799 "internal.templateparser.php" +#line 1790 "internal.templateparser.php" #line 79 "internal.templateparser.y" function yy_r1(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1802 "internal.templateparser.php" +#line 1793 "internal.templateparser.php" #line 81 "internal.templateparser.y" function yy_r2(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1805 "internal.templateparser.php" +#line 1796 "internal.templateparser.php" #line 87 "internal.templateparser.y" function yy_r3(){if ($this->compiler->has_code) { $tmp =''; foreach ($this->prefix_code as $code) {$tmp.=$code;} $this->prefix_code=array(); $this->_retvalue = $this->cacher->processNocacheCode($tmp.$this->yystack[$this->yyidx + 0]->minor, $this->compiler,$this->nocache,true); } $this->nocache=false; } -#line 1811 "internal.templateparser.php" +#line 1802 "internal.templateparser.php" #line 100 "internal.templateparser.y" function yy_r4(){ $this->_retvalue = ''; } -#line 1814 "internal.templateparser.php" +#line 1805 "internal.templateparser.php" #line 103 "internal.templateparser.y" function yy_r5(){$this->_retvalue = $this->cacher->processNocacheCode($this->yystack[$this->yyidx + -1]->minor, $this->compiler,false,false); } -#line 1817 "internal.templateparser.php" +#line 1808 "internal.templateparser.php" #line 105 "internal.templateparser.y" function yy_r6(){$this->_retvalue = $this->cacher->processNocacheCode($this->smarty->left_delimiter, $this->compiler,false,false); } -#line 1820 "internal.templateparser.php" +#line 1811 "internal.templateparser.php" #line 107 "internal.templateparser.y" function yy_r7(){$this->_retvalue = $this->cacher->processNocacheCode($this->smarty->right_delimiter, $this->compiler,false,false); } -#line 1823 "internal.templateparser.php" +#line 1814 "internal.templateparser.php" #line 109 "internal.templateparser.y" function yy_r8(){if (!$this->template->security) { $this->_retvalue = $this->cacher->processNocacheCode($this->yystack[$this->yyidx + 0]->minor, $this->compiler, false,true); @@ -1826,7 +1817,7 @@ static public $yy_action = array( }elseif ($this->smarty->security_policy->php_handling == SMARTY_PHP_REMOVE) { $this->_retvalue = ''; } } -#line 1834 "internal.templateparser.php" +#line 1825 "internal.templateparser.php" #line 119 "internal.templateparser.y" function yy_r9(){if (!$this->template->security) { $this->_retvalue = $this->cacher->processNocacheCode('yystack[$this->yyidx + -1]->minor.' ?>', $this->compiler, false,true); @@ -1837,7 +1828,7 @@ static public $yy_action = array( }elseif ($this->smarty->security_policy->php_handling == SMARTY_PHP_REMOVE) { $this->_retvalue = ''; } } -#line 1845 "internal.templateparser.php" +#line 1836 "internal.templateparser.php" #line 129 "internal.templateparser.y" function yy_r10(){if (!$this->template->security) { $this->_retvalue = $this->cacher->processNocacheCode($this->compiler->compileTag('print_expression',array('value'=>$this->yystack[$this->yyidx + -1]->minor)), $this->compiler, false,true); @@ -1848,28 +1839,28 @@ static public $yy_action = array( }elseif ($this->smarty->security_policy->php_handling == SMARTY_PHP_REMOVE) { $this->_retvalue = ''; } } -#line 1856 "internal.templateparser.php" +#line 1847 "internal.templateparser.php" #line 139 "internal.templateparser.y" function yy_r11(){$this->_retvalue = $this->cacher->processNocacheCode("yystack[$this->yyidx + 0]->minor."';?>\n", $this->compiler, true, true); } -#line 1859 "internal.templateparser.php" +#line 1850 "internal.templateparser.php" #line 141 "internal.templateparser.y" function yy_r12(){$this->_retvalue = $this->cacher->processNocacheCode($this->yystack[$this->yyidx + 0]->minor, $this->compiler,false,false); } -#line 1862 "internal.templateparser.php" +#line 1853 "internal.templateparser.php" #line 149 "internal.templateparser.y" function yy_r13(){ $this->_retvalue = $this->compiler->compileTag('print_expression',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor)); } -#line 1865 "internal.templateparser.php" +#line 1856 "internal.templateparser.php" #line 152 "internal.templateparser.y" - function yy_r14(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -1]->minor),$this->yystack[$this->yyidx + -3]->minor)); } -#line 1868 "internal.templateparser.php" + function yy_r14(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array('value'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor)); } +#line 1859 "internal.templateparser.php" #line 154 "internal.templateparser.y" function yy_r15(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'index'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 1871 "internal.templateparser.php" +#line 1862 "internal.templateparser.php" #line 158 "internal.templateparser.y" function yy_r16(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,$this->yystack[$this->yyidx + -1]->minor); } -#line 1874 "internal.templateparser.php" +#line 1865 "internal.templateparser.php" #line 160 "internal.templateparser.y" function yy_r17(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,array_merge(array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor),$this->yystack[$this->yyidx + -1]->minor)); } -#line 1877 "internal.templateparser.php" +#line 1868 "internal.templateparser.php" #line 162 "internal.templateparser.y" function yy_r18(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor).'smarty->plugin_handler->loadSmartyPlugin($this->yystack[$this->yyidx + -3]->minor[0],'modifier')) { @@ -1884,49 +1875,49 @@ static public $yy_action = array( } } } -#line 1892 "internal.templateparser.php" +#line 1883 "internal.templateparser.php" #line 176 "internal.templateparser.y" function yy_r19(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',$this->yystack[$this->yyidx + -1]->minor); } -#line 1895 "internal.templateparser.php" +#line 1886 "internal.templateparser.php" #line 178 "internal.templateparser.y" function yy_r20(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 1898 "internal.templateparser.php" +#line 1889 "internal.templateparser.php" #line 180 "internal.templateparser.y" function yy_r21(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,array('if condition'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 1901 "internal.templateparser.php" +#line 1892 "internal.templateparser.php" #line 182 "internal.templateparser.y" function yy_r22(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -9]->minor,array('start'=>$this->yystack[$this->yyidx + -7]->minor,'ifexp'=>$this->yystack[$this->yyidx + -5]->minor,'varloop'=>$this->yystack[$this->yyidx + -2]->minor,'loop'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 1904 "internal.templateparser.php" +#line 1895 "internal.templateparser.php" #line 183 "internal.templateparser.y" function yy_r23(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } -#line 1907 "internal.templateparser.php" +#line 1898 "internal.templateparser.php" #line 184 "internal.templateparser.y" function yy_r24(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 1910 "internal.templateparser.php" +#line 1901 "internal.templateparser.php" #line 187 "internal.templateparser.y" function yy_r25(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -6]->minor,array('from'=>$this->yystack[$this->yyidx + -1]->minor,'item'=>$this->yystack[$this->yyidx + -3]->minor)); } -#line 1913 "internal.templateparser.php" +#line 1904 "internal.templateparser.php" #line 194 "internal.templateparser.y" function yy_r27(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } -#line 1916 "internal.templateparser.php" +#line 1907 "internal.templateparser.php" #line 198 "internal.templateparser.y" function yy_r29(){ $this->_retvalue = array(); } -#line 1919 "internal.templateparser.php" +#line 1910 "internal.templateparser.php" #line 202 "internal.templateparser.y" function yy_r30(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } -#line 1922 "internal.templateparser.php" +#line 1913 "internal.templateparser.php" #line 207 "internal.templateparser.y" function yy_r31(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 1925 "internal.templateparser.php" +#line 1916 "internal.templateparser.php" #line 208 "internal.templateparser.y" function yy_r32(){ $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; } -#line 1928 "internal.templateparser.php" +#line 1919 "internal.templateparser.php" #line 210 "internal.templateparser.y" function yy_r33(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 1931 "internal.templateparser.php" +#line 1922 "internal.templateparser.php" #line 217 "internal.templateparser.y" function yy_r34(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 1934 "internal.templateparser.php" +#line 1925 "internal.templateparser.php" #line 221 "internal.templateparser.y" function yy_r36(){ if ($this->smarty->plugin_handler->loadSmartyPlugin($this->yystack[$this->yyidx + -1]->minor[0],'modifier')) { @@ -1941,117 +1932,117 @@ static public $yy_action = array( } } } -#line 1949 "internal.templateparser.php" +#line 1940 "internal.templateparser.php" #line 239 "internal.templateparser.y" function yy_r39(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1952 "internal.templateparser.php" +#line 1943 "internal.templateparser.php" #line 241 "internal.templateparser.y" function yy_r40(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . $this->yystack[$this->yyidx + -1]->minor . $this->yystack[$this->yyidx + 0]->minor; } -#line 1955 "internal.templateparser.php" +#line 1946 "internal.templateparser.php" #line 243 "internal.templateparser.y" function yy_r41(){ $this->_retvalue = '('. $this->yystack[$this->yyidx + -2]->minor . ').(' . $this->yystack[$this->yyidx + 0]->minor. ')'; } -#line 1958 "internal.templateparser.php" +#line 1949 "internal.templateparser.php" #line 260 "internal.templateparser.y" function yy_r46(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 1961 "internal.templateparser.php" +#line 1952 "internal.templateparser.php" #line 269 "internal.templateparser.y" function yy_r50(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 1964 "internal.templateparser.php" +#line 1955 "internal.templateparser.php" #line 272 "internal.templateparser.y" function yy_r51(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + -1]->minor."'"; } -#line 1967 "internal.templateparser.php" +#line 1958 "internal.templateparser.php" #line 273 "internal.templateparser.y" function yy_r52(){ $this->_retvalue = "''"; } -#line 1970 "internal.templateparser.php" +#line 1961 "internal.templateparser.php" #line 275 "internal.templateparser.y" function yy_r53(){ $this->_retvalue = "'".str_replace('\"','"',$this->yystack[$this->yyidx + -1]->minor)."'"; } -#line 1973 "internal.templateparser.php" +#line 1964 "internal.templateparser.php" #line 281 "internal.templateparser.y" function yy_r55(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } -#line 1976 "internal.templateparser.php" +#line 1967 "internal.templateparser.php" #line 282 "internal.templateparser.y" function yy_r56(){ $this->prefix_number++; $this->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -3]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 1979 "internal.templateparser.php" +#line 1970 "internal.templateparser.php" #line 284 "internal.templateparser.y" function yy_r57(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor.'::'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1982 "internal.templateparser.php" +#line 1973 "internal.templateparser.php" #line 285 "internal.templateparser.y" function yy_r58(){ $this->prefix_number++; $this->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -4]->minor .'\')->value;?>'; $this->_retvalue = $this->yystack[$this->yyidx + -7]->minor.'::$_tmp'.$this->prefix_number.'('. $this->yystack[$this->yyidx + -2]->minor .')'.$this->yystack[$this->yyidx + 0]->minor; } -#line 1985 "internal.templateparser.php" +#line 1976 "internal.templateparser.php" #line 287 "internal.templateparser.y" function yy_r59(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'::'.$this->yystack[$this->yyidx + 0]->minor; } -#line 1988 "internal.templateparser.php" +#line 1979 "internal.templateparser.php" #line 289 "internal.templateparser.y" function yy_r60(){ $this->_retvalue = $this->yystack[$this->yyidx + -4]->minor.'::$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1991 "internal.templateparser.php" +#line 1982 "internal.templateparser.php" #line 291 "internal.templateparser.y" function yy_r61(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.'::$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 1994 "internal.templateparser.php" +#line 1985 "internal.templateparser.php" #line 300 "internal.templateparser.y" function yy_r62(){ if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag(trim($this->yystack[$this->yyidx + 0]->minor['var'],"'"),$this->yystack[$this->yyidx + 0]->minor['index']);} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor['var'] .')->value'.$this->yystack[$this->yyidx + 0]->minor['index']; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor['var'],"'"))->nocache;} } -#line 1998 "internal.templateparser.php" +#line 1989 "internal.templateparser.php" #line 303 "internal.templateparser.y" function yy_r63(){ $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"))->nocache; } -#line 2001 "internal.templateparser.php" +#line 1992 "internal.templateparser.php" #line 307 "internal.templateparser.y" function yy_r65(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } -#line 2004 "internal.templateparser.php" +#line 1995 "internal.templateparser.php" #line 315 "internal.templateparser.y" function yy_r67(){return; } -#line 2007 "internal.templateparser.php" +#line 1998 "internal.templateparser.php" #line 319 "internal.templateparser.y" function yy_r68(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } -#line 2010 "internal.templateparser.php" +#line 2001 "internal.templateparser.php" #line 320 "internal.templateparser.y" function yy_r69(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } -#line 2013 "internal.templateparser.php" +#line 2004 "internal.templateparser.php" #line 322 "internal.templateparser.y" function yy_r70(){ $this->_retvalue = "[".$this->yystack[$this->yyidx + 0]->minor."]"; } -#line 2016 "internal.templateparser.php" +#line 2007 "internal.templateparser.php" #line 323 "internal.templateparser.y" function yy_r71(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } -#line 2019 "internal.templateparser.php" +#line 2010 "internal.templateparser.php" #line 325 "internal.templateparser.y" function yy_r72(){ $this->_retvalue = '['.$this->compiler->compileTag('smarty','[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } -#line 2022 "internal.templateparser.php" +#line 2013 "internal.templateparser.php" #line 329 "internal.templateparser.y" function yy_r74(){$this->_retvalue = ''; } -#line 2025 "internal.templateparser.php" +#line 2016 "internal.templateparser.php" #line 337 "internal.templateparser.y" function yy_r76(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2028 "internal.templateparser.php" +#line 2019 "internal.templateparser.php" #line 339 "internal.templateparser.y" function yy_r77(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2031 "internal.templateparser.php" +#line 2022 "internal.templateparser.php" #line 341 "internal.templateparser.y" function yy_r78(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2034 "internal.templateparser.php" +#line 2025 "internal.templateparser.php" #line 346 "internal.templateparser.y" function yy_r79(){ $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->value'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; $this->nocache=$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"))->nocache; } -#line 2037 "internal.templateparser.php" +#line 2028 "internal.templateparser.php" #line 348 "internal.templateparser.y" function yy_r80(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2040 "internal.templateparser.php" +#line 2031 "internal.templateparser.php" #line 350 "internal.templateparser.y" function yy_r81(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2043 "internal.templateparser.php" +#line 2034 "internal.templateparser.php" #line 352 "internal.templateparser.y" function yy_r82(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2046 "internal.templateparser.php" +#line 2037 "internal.templateparser.php" #line 353 "internal.templateparser.y" function yy_r83(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2049 "internal.templateparser.php" +#line 2040 "internal.templateparser.php" #line 354 "internal.templateparser.y" function yy_r84(){ $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2052 "internal.templateparser.php" +#line 2043 "internal.templateparser.php" #line 355 "internal.templateparser.y" function yy_r85(){ $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2055 "internal.templateparser.php" -#line 361 "internal.templateparser.y" +#line 2046 "internal.templateparser.php" +#line 357 "internal.templateparser.y" function yy_r86(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2058 "internal.templateparser.php" -#line 367 "internal.templateparser.y" +#line 2049 "internal.templateparser.php" +#line 363 "internal.templateparser.y" function yy_r87(){if (!$this->template->security || $this->smarty->security_handler->isTrustedPhpFunction($this->yystack[$this->yyidx + -3]->minor, $this->compiler)) { if ($this->yystack[$this->yyidx + -3]->minor == 'isset' || $this->yystack[$this->yyidx + -3]->minor == 'empty' || $this->yystack[$this->yyidx + -3]->minor == 'array' || is_callable($this->yystack[$this->yyidx + -3]->minor)) { $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; @@ -2059,118 +2050,118 @@ static public $yy_action = array( $this->compiler->trigger_template_error ("unknown function \"" . $this->yystack[$this->yyidx + -3]->minor . "\""); } } } -#line 2067 "internal.templateparser.php" -#line 378 "internal.templateparser.y" +#line 2058 "internal.templateparser.php" +#line 374 "internal.templateparser.y" function yy_r88(){ $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2070 "internal.templateparser.php" -#line 382 "internal.templateparser.y" +#line 2061 "internal.templateparser.php" +#line 378 "internal.templateparser.y" function yy_r89(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.",".$this->yystack[$this->yyidx + 0]->minor; } -#line 2073 "internal.templateparser.php" -#line 386 "internal.templateparser.y" +#line 2064 "internal.templateparser.php" +#line 382 "internal.templateparser.y" function yy_r91(){ return; } -#line 2076 "internal.templateparser.php" -#line 391 "internal.templateparser.y" +#line 2067 "internal.templateparser.php" +#line 387 "internal.templateparser.y" function yy_r92(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,true); } -#line 2079 "internal.templateparser.php" -#line 392 "internal.templateparser.y" +#line 2070 "internal.templateparser.php" +#line 388 "internal.templateparser.y" function yy_r93(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor,false); } -#line 2082 "internal.templateparser.php" -#line 399 "internal.templateparser.y" +#line 2073 "internal.templateparser.php" +#line 395 "internal.templateparser.y" function yy_r94(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2085 "internal.templateparser.php" -#line 403 "internal.templateparser.y" +#line 2076 "internal.templateparser.php" +#line 399 "internal.templateparser.y" function yy_r96(){$this->_retvalue = ','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2088 "internal.templateparser.php" -#line 404 "internal.templateparser.y" +#line 2079 "internal.templateparser.php" +#line 400 "internal.templateparser.y" function yy_r97(){$this->_retvalue = ',\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2091 "internal.templateparser.php" -#line 411 "internal.templateparser.y" +#line 2082 "internal.templateparser.php" +#line 407 "internal.templateparser.y" function yy_r99(){$this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2085 "internal.templateparser.php" +#line 412 "internal.templateparser.y" + function yy_r101(){$this->_retvalue =$this->yystack[$this->yyidx + 0]->minor; } +#line 2088 "internal.templateparser.php" +#line 413 "internal.templateparser.y" + function yy_r102(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2091 "internal.templateparser.php" +#line 415 "internal.templateparser.y" + function yy_r104(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } #line 2094 "internal.templateparser.php" #line 416 "internal.templateparser.y" - function yy_r101(){$this->_retvalue =$this->yystack[$this->yyidx + 0]->minor; } + function yy_r105(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } #line 2097 "internal.templateparser.php" #line 417 "internal.templateparser.y" - function yy_r102(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2100 "internal.templateparser.php" -#line 419 "internal.templateparser.y" - function yy_r104(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2103 "internal.templateparser.php" -#line 420 "internal.templateparser.y" - function yy_r105(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2106 "internal.templateparser.php" -#line 421 "internal.templateparser.y" function yy_r106(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2109 "internal.templateparser.php" -#line 422 "internal.templateparser.y" +#line 2100 "internal.templateparser.php" +#line 418 "internal.templateparser.y" function yy_r107(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2112 "internal.templateparser.php" -#line 423 "internal.templateparser.y" +#line 2103 "internal.templateparser.php" +#line 419 "internal.templateparser.y" function yy_r108(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2115 "internal.templateparser.php" -#line 424 "internal.templateparser.y" +#line 2106 "internal.templateparser.php" +#line 420 "internal.templateparser.y" function yy_r109(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2118 "internal.templateparser.php" -#line 430 "internal.templateparser.y" +#line 2109 "internal.templateparser.php" +#line 426 "internal.templateparser.y" function yy_r114(){$this->_retvalue = '=='; } -#line 2121 "internal.templateparser.php" -#line 431 "internal.templateparser.y" +#line 2112 "internal.templateparser.php" +#line 427 "internal.templateparser.y" function yy_r115(){$this->_retvalue = '!='; } -#line 2124 "internal.templateparser.php" -#line 432 "internal.templateparser.y" +#line 2115 "internal.templateparser.php" +#line 428 "internal.templateparser.y" function yy_r116(){$this->_retvalue = '>'; } -#line 2127 "internal.templateparser.php" -#line 433 "internal.templateparser.y" +#line 2118 "internal.templateparser.php" +#line 429 "internal.templateparser.y" function yy_r117(){$this->_retvalue = '<'; } -#line 2130 "internal.templateparser.php" -#line 434 "internal.templateparser.y" +#line 2121 "internal.templateparser.php" +#line 430 "internal.templateparser.y" function yy_r118(){$this->_retvalue = '>='; } +#line 2124 "internal.templateparser.php" +#line 431 "internal.templateparser.y" + function yy_r119(){$this->_retvalue = '<='; } +#line 2127 "internal.templateparser.php" +#line 432 "internal.templateparser.y" + function yy_r120(){$this->_retvalue = '==='; } +#line 2130 "internal.templateparser.php" +#line 433 "internal.templateparser.y" + function yy_r121(){$this->_retvalue = '!=='; } #line 2133 "internal.templateparser.php" #line 435 "internal.templateparser.y" - function yy_r119(){$this->_retvalue = '<='; } + function yy_r122(){$this->_retvalue = '&&'; } #line 2136 "internal.templateparser.php" #line 436 "internal.templateparser.y" - function yy_r120(){$this->_retvalue = '==='; } -#line 2139 "internal.templateparser.php" -#line 437 "internal.templateparser.y" - function yy_r121(){$this->_retvalue = '!=='; } -#line 2142 "internal.templateparser.php" -#line 439 "internal.templateparser.y" - function yy_r122(){$this->_retvalue = '&&'; } -#line 2145 "internal.templateparser.php" -#line 440 "internal.templateparser.y" function yy_r123(){$this->_retvalue = '||'; } -#line 2148 "internal.templateparser.php" -#line 445 "internal.templateparser.y" +#line 2139 "internal.templateparser.php" +#line 441 "internal.templateparser.y" function yy_r124(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2142 "internal.templateparser.php" +#line 443 "internal.templateparser.y" + function yy_r126(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } +#line 2145 "internal.templateparser.php" +#line 444 "internal.templateparser.y" + function yy_r127(){ return; } +#line 2148 "internal.templateparser.php" +#line 446 "internal.templateparser.y" + function yy_r129(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } #line 2151 "internal.templateparser.php" #line 447 "internal.templateparser.y" - function yy_r126(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2154 "internal.templateparser.php" -#line 448 "internal.templateparser.y" - function yy_r127(){ return; } -#line 2157 "internal.templateparser.php" -#line 450 "internal.templateparser.y" - function yy_r129(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2160 "internal.templateparser.php" -#line 451 "internal.templateparser.y" function yy_r130(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2163 "internal.templateparser.php" -#line 458 "internal.templateparser.y" +#line 2154 "internal.templateparser.php" +#line 454 "internal.templateparser.y" function yy_r133(){$this->_retvalue = "'.".$this->yystack[$this->yyidx + 0]->minor.".'"; } -#line 2166 "internal.templateparser.php" -#line 459 "internal.templateparser.y" +#line 2157 "internal.templateparser.php" +#line 455 "internal.templateparser.y" function yy_r134(){$this->_retvalue = "`".$this->yystack[$this->yyidx + -1]->minor."`"; } -#line 2169 "internal.templateparser.php" -#line 460 "internal.templateparser.y" +#line 2160 "internal.templateparser.php" +#line 456 "internal.templateparser.y" function yy_r135(){$this->_retvalue = "'.".$this->yystack[$this->yyidx + -1]->minor.".'"; } -#line 2172 "internal.templateparser.php" -#line 461 "internal.templateparser.y" +#line 2163 "internal.templateparser.php" +#line 457 "internal.templateparser.y" function yy_r136(){$this->_retvalue = "'.(".$this->yystack[$this->yyidx + -1]->minor.").'"; } -#line 2175 "internal.templateparser.php" -#line 462 "internal.templateparser.y" +#line 2166 "internal.templateparser.php" +#line 458 "internal.templateparser.y" function yy_r137(){$this->_retvalue = addcslashes($this->yystack[$this->yyidx + 0]->minor,"'"); } -#line 2178 "internal.templateparser.php" +#line 2169 "internal.templateparser.php" /** * placeholder for the left hand side in a reduce operation. @@ -2287,7 +2278,7 @@ static public $yy_action = array( $this->internalError = true; $this->yymajor = $yymajor; $this->compiler->trigger_template_error(); -#line 2296 "internal.templateparser.php" +#line 2287 "internal.templateparser.php" } /** @@ -2311,7 +2302,7 @@ static public $yy_action = array( $this->internalError = false; $this->retvalue = $this->_retvalue; //echo $this->retvalue."\n\n"; -#line 2321 "internal.templateparser.php" +#line 2312 "internal.templateparser.php" } /** diff --git a/libs/sysplugins/method.get_template_vars.php b/libs/sysplugins/method.get_template_vars.php index 1b31b577..4785adac 100644 --- a/libs/sysplugins/method.get_template_vars.php +++ b/libs/sysplugins/method.get_template_vars.php @@ -47,6 +47,11 @@ class Smarty_Method_Get_Template_Vars extends Smarty_Internal_Base { $_ptr = null; } } + if ($search_parents) { + foreach ($this->smarty->global_tpl_vars AS $key => $var) { + $_result[$key] = $var->value; + } + } return $_result; } }