Completed
Push — master ( a400a4...020752 )
by David
07:41 queued 04:43
created
lib/Dwoo/Plugin.php 1 patch
Indentation   +70 added lines, -70 removed lines patch added patch discarded remove patch
@@ -25,81 +25,81 @@
 block discarded – undo
25 25
  */
26 26
 abstract class Plugin
27 27
 {
28
-    /**
29
-     * The dwoo instance that runs this plugin.
30
-     *
31
-     * @var Core
32
-     */
33
-    protected $core;
28
+	/**
29
+	 * The dwoo instance that runs this plugin.
30
+	 *
31
+	 * @var Core
32
+	 */
33
+	protected $core;
34 34
 
35
-    /**
36
-     * Constructor, if you override it, call parent::__construct($core); or assign
37
-     * the dwoo instance yourself if you need it.
38
-     *
39
-     * @param Core $core the dwoo instance that runs this plugin
40
-     */
41
-    public function __construct(Core $core)
42
-    {
43
-        $this->core = $core;
44
-    }
35
+	/**
36
+	 * Constructor, if you override it, call parent::__construct($core); or assign
37
+	 * the dwoo instance yourself if you need it.
38
+	 *
39
+	 * @param Core $core the dwoo instance that runs this plugin
40
+	 */
41
+	public function __construct(Core $core)
42
+	{
43
+		$this->core = $core;
44
+	}
45 45
 
46
-    // plugins should always implement :
47
-    // public function process($arg, $arg, ...)
48
-    // or for block plugins :
49
-    // public function init($arg, $arg, ...)
46
+	// plugins should always implement :
47
+	// public function process($arg, $arg, ...)
48
+	// or for block plugins :
49
+	// public function init($arg, $arg, ...)
50 50
 
51
-    // this could be enforced with :
52
-    // abstract public function process(...);
53
-    // if my feature request gets enough interest one day
54
-    // see => http://bugs.php.net/bug.php?id=44043
51
+	// this could be enforced with :
52
+	// abstract public function process(...);
53
+	// if my feature request gets enough interest one day
54
+	// see => http://bugs.php.net/bug.php?id=44043
55 55
 
56
-    /**
57
-     * Utility function that converts an array of compiled parameters (or rest array) to a string of xml/html tag
58
-     * attributes. this is to be used in preProcessing or postProcessing functions, example :
59
-     *  $p = $compiler->getCompiledParams($params);
60
-     *  // get only the rest array as attributes
61
-     *  $attributes = Plugin::paramsToAttributes($p['*']);
62
-     *  // get all the parameters as attributes (if there is a rest array, it will be included)
63
-     *  $attributes = Plugin::paramsToAttributes($p);
64
-     *
65
-     * @param array    $params   an array of attributeName=>value items that will be compiled to be ready for inclusion in a php string
66
-     *                                inclusion in a php string
67
-     * @param string   $delim    the string delimiter you want to use (defaults to ')
68
-     * @param Compiler $compiler the compiler instance (optional for BC, but recommended to pass it for proper escaping behavior)
69
-     *                                escaping behavior)
70
-     *
71
-     * @return string
72
-     */
73
-    public static function paramsToAttributes(array $params, $delim = '\'', Compiler $compiler = null)
74
-    {
75
-        if (isset($params['*'])) {
76
-            $params = array_merge($params, $params['*']);
77
-            unset($params['*']);
78
-        }
56
+	/**
57
+	 * Utility function that converts an array of compiled parameters (or rest array) to a string of xml/html tag
58
+	 * attributes. this is to be used in preProcessing or postProcessing functions, example :
59
+	 *  $p = $compiler->getCompiledParams($params);
60
+	 *  // get only the rest array as attributes
61
+	 *  $attributes = Plugin::paramsToAttributes($p['*']);
62
+	 *  // get all the parameters as attributes (if there is a rest array, it will be included)
63
+	 *  $attributes = Plugin::paramsToAttributes($p);
64
+	 *
65
+	 * @param array    $params   an array of attributeName=>value items that will be compiled to be ready for inclusion in a php string
66
+	 *                                inclusion in a php string
67
+	 * @param string   $delim    the string delimiter you want to use (defaults to ')
68
+	 * @param Compiler $compiler the compiler instance (optional for BC, but recommended to pass it for proper escaping behavior)
69
+	 *                                escaping behavior)
70
+	 *
71
+	 * @return string
72
+	 */
73
+	public static function paramsToAttributes(array $params, $delim = '\'', Compiler $compiler = null)
74
+	{
75
+		if (isset($params['*'])) {
76
+			$params = array_merge($params, $params['*']);
77
+			unset($params['*']);
78
+		}
79 79
 
80
-        $out = '';
81
-        foreach ($params as $attr => $val) {
82
-            $out .= ' ' . $attr . '=';
83
-            if (trim($val, '"\'') == '' || $val == 'null') {
84
-                $out .= str_replace($delim, '\\' . $delim, '""');
85
-            } elseif (substr($val, 0, 1) === $delim && substr($val, - 1) === $delim) {
86
-                $out .= str_replace($delim, '\\' . $delim, '"' . substr($val, 1, - 1) . '"');
87
-            } else {
88
-                if (!$compiler) {
89
-                    // disable double encoding since it can not be determined if it was encoded
90
-                    $escapedVal = '.(is_string($tmp2=' . $val . ') ? htmlspecialchars($tmp2, ENT_QUOTES, $this->charset, false) : $tmp2).';
91
-                } elseif (!$compiler->getAutoEscape() || false === strpos($val, 'isset($this->scope')) {
92
-                    // escape if auto escaping is disabled, or there was no variable in the string
93
-                    $escapedVal = '.(is_string($tmp2=' . $val . ') ? htmlspecialchars($tmp2, ENT_QUOTES, $this->charset) : $tmp2).';
94
-                } else {
95
-                    // print as is
96
-                    $escapedVal = '.' . $val . '.';
97
-                }
80
+		$out = '';
81
+		foreach ($params as $attr => $val) {
82
+			$out .= ' ' . $attr . '=';
83
+			if (trim($val, '"\'') == '' || $val == 'null') {
84
+				$out .= str_replace($delim, '\\' . $delim, '""');
85
+			} elseif (substr($val, 0, 1) === $delim && substr($val, - 1) === $delim) {
86
+				$out .= str_replace($delim, '\\' . $delim, '"' . substr($val, 1, - 1) . '"');
87
+			} else {
88
+				if (!$compiler) {
89
+					// disable double encoding since it can not be determined if it was encoded
90
+					$escapedVal = '.(is_string($tmp2=' . $val . ') ? htmlspecialchars($tmp2, ENT_QUOTES, $this->charset, false) : $tmp2).';
91
+				} elseif (!$compiler->getAutoEscape() || false === strpos($val, 'isset($this->scope')) {
92
+					// escape if auto escaping is disabled, or there was no variable in the string
93
+					$escapedVal = '.(is_string($tmp2=' . $val . ') ? htmlspecialchars($tmp2, ENT_QUOTES, $this->charset) : $tmp2).';
94
+				} else {
95
+					// print as is
96
+					$escapedVal = '.' . $val . '.';
97
+				}
98 98
 
99
-                $out .= str_replace($delim, '\\' . $delim, '"') . $delim . $escapedVal . $delim . str_replace($delim, '\\' . $delim, '"');
100
-            }
101
-        }
99
+				$out .= str_replace($delim, '\\' . $delim, '"') . $delim . $escapedVal . $delim . str_replace($delim, '\\' . $delim, '"');
100
+			}
101
+		}
102 102
 
103
-        return ltrim($out);
104
-    }
103
+		return ltrim($out);
104
+	}
105 105
 }
Please login to merge, or discard this patch.
lib/Dwoo/IDataProvider.php 1 patch
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -23,10 +23,10 @@
 block discarded – undo
23 23
  */
24 24
 interface IDataProvider
25 25
 {
26
-    /**
27
-     * Returns the data as an associative array that will be used in the template.
28
-     *
29
-     * @return array
30
-     */
31
-    public function getData();
26
+	/**
27
+	 * Returns the data as an associative array that will be used in the template.
28
+	 *
29
+	 * @return array
30
+	 */
31
+	public function getData();
32 32
 }
Please login to merge, or discard this patch.
lib/Dwoo/Block/Plugin.php 1 patch
Indentation   +82 added lines, -82 removed lines patch added patch discarded remove patch
@@ -28,92 +28,92 @@
 block discarded – undo
28 28
  */
29 29
 abstract class Plugin extends DwooPlugin
30 30
 {
31
-    /**
32
-     * Stores the contents of the block while it runs.
33
-     *
34
-     * @var string
35
-     */
36
-    protected $buffer = '';
31
+	/**
32
+	 * Stores the contents of the block while it runs.
33
+	 *
34
+	 * @var string
35
+	 */
36
+	protected $buffer = '';
37 37
 
38
-    /**
39
-     * Buffers input, override only if necessary.
40
-     *
41
-     * @var string the content that must be buffered
42
-     */
43
-    public function buffer($input)
44
-    {
45
-        $this->buffer .= $input;
46
-    }
38
+	/**
39
+	 * Buffers input, override only if necessary.
40
+	 *
41
+	 * @var string the content that must be buffered
42
+	 */
43
+	public function buffer($input)
44
+	{
45
+		$this->buffer .= $input;
46
+	}
47 47
 
48
-    // initialization code, receives the parameters from {block param1 param2}
49
-    // public function init($arg, $arg, ...);
48
+	// initialization code, receives the parameters from {block param1 param2}
49
+	// public function init($arg, $arg, ...);
50 50
 
51
-    /**
52
-     * Called when the block ends, this is most of the time followed right away by a call
53
-     * of <em>process()</em> but not always, so this should be used to do any shutdown operations on the
54
-     * block object, if required.
55
-     */
56
-    public function end()
57
-    {
58
-    }
51
+	/**
52
+	 * Called when the block ends, this is most of the time followed right away by a call
53
+	 * of <em>process()</em> but not always, so this should be used to do any shutdown operations on the
54
+	 * block object, if required.
55
+	 */
56
+	public function end()
57
+	{
58
+	}
59 59
 
60
-    /**
61
-     * Called when the block output is required by a parent block.
62
-     * this must read $this->buffer and return it processed
63
-     *
64
-     * @return string
65
-     */
66
-    public function process()
67
-    {
68
-        return $this->buffer;
69
-    }
60
+	/**
61
+	 * Called when the block output is required by a parent block.
62
+	 * this must read $this->buffer and return it processed
63
+	 *
64
+	 * @return string
65
+	 */
66
+	public function process()
67
+	{
68
+		return $this->buffer;
69
+	}
70 70
 
71
-    /**
72
-     * Called at compile time to define what the block should output in the compiled template code, happens when the
73
-     * block is declared basically this will replace the {block arg arg arg} tag in the template.
74
-     *
75
-     * @param DwooCompiler $compiler the compiler instance that calls this function
76
-     * @param array        $params   an array containing original and compiled parameters
77
-     * @param string       $prepend  that is just meant to allow a child class to call
78
-     *                               parent::postProcessing($compiler, $params, "foo();") to add a command before the
79
-     *                               default commands are executed parent::postProcessing($compiler, $params, "foo();")
80
-     *                               to add a command before the default commands are executed
81
-     * @param string       $append   that is just meant to allow a child class to call
82
-     *                               parent::postProcessing($compiler, $params, null, "foo();") to add a command after
83
-     *                               the default commands are executed parent::postProcessing($compiler, $params, null,
84
-     *                               "foo();") to add a command after the default commands are executed
85
-     * @param string       $type     the type is the plugin class name used
86
-     *
87
-     * @return string
88
-     */
89
-    public static function preProcessing(DwooCompiler $compiler, array $params, $prepend, $append, $type)
90
-    {
91
-        return DwooCompiler::PHP_OPEN . $prepend . '$this->addStack("' . $type . '", array(' . DwooCompiler::implode_r($compiler->getCompiledParams($params)) . '));' . $append . DwooCompiler::PHP_CLOSE;
92
-    }
71
+	/**
72
+	 * Called at compile time to define what the block should output in the compiled template code, happens when the
73
+	 * block is declared basically this will replace the {block arg arg arg} tag in the template.
74
+	 *
75
+	 * @param DwooCompiler $compiler the compiler instance that calls this function
76
+	 * @param array        $params   an array containing original and compiled parameters
77
+	 * @param string       $prepend  that is just meant to allow a child class to call
78
+	 *                               parent::postProcessing($compiler, $params, "foo();") to add a command before the
79
+	 *                               default commands are executed parent::postProcessing($compiler, $params, "foo();")
80
+	 *                               to add a command before the default commands are executed
81
+	 * @param string       $append   that is just meant to allow a child class to call
82
+	 *                               parent::postProcessing($compiler, $params, null, "foo();") to add a command after
83
+	 *                               the default commands are executed parent::postProcessing($compiler, $params, null,
84
+	 *                               "foo();") to add a command after the default commands are executed
85
+	 * @param string       $type     the type is the plugin class name used
86
+	 *
87
+	 * @return string
88
+	 */
89
+	public static function preProcessing(DwooCompiler $compiler, array $params, $prepend, $append, $type)
90
+	{
91
+		return DwooCompiler::PHP_OPEN . $prepend . '$this->addStack("' . $type . '", array(' . DwooCompiler::implode_r($compiler->getCompiledParams($params)) . '));' . $append . DwooCompiler::PHP_CLOSE;
92
+	}
93 93
 
94
-    /**
95
-     * Called at compile time to define what the block should output in the compiled template code, happens when the
96
-     * block is ended basically this will replace the {/block} tag in the template.
97
-     *
98
-     * @see preProcessing
99
-     *
100
-     * @param DwooCompiler $compiler the compiler instance that calls this function
101
-     * @param array        $params   an array containing original and compiled parameters, see preProcessing() for more
102
-     *                               details more details
103
-     * @param string       $prepend  that is just meant to allow a child class to call
104
-     *                               parent::postProcessing($compiler, $params, "foo();") to add a command before the
105
-     *                               default commands are executed parent::postProcessing($compiler, $params, "foo();")
106
-     *                               to add a command before the default commands are executed
107
-     * @param string       $append   that is just meant to allow a child class to call
108
-     *                               parent::postProcessing($compiler, $params, null, "foo();") to add a command after
109
-     *                               the default commands are executed parent::postProcessing($compiler, $params, null,
110
-     *                               "foo();") to add a command after the default commands are executed
111
-     * @param string       $content  the entire content of the block being closed
112
-     *
113
-     * @return string
114
-     */
115
-    public static function postProcessing(DwooCompiler $compiler, array $params, $prepend, $append, $content)
116
-    {
117
-        return $content . DwooCompiler::PHP_OPEN . $prepend . '$this->delStack();' . $append . DwooCompiler::PHP_CLOSE;
118
-    }
94
+	/**
95
+	 * Called at compile time to define what the block should output in the compiled template code, happens when the
96
+	 * block is ended basically this will replace the {/block} tag in the template.
97
+	 *
98
+	 * @see preProcessing
99
+	 *
100
+	 * @param DwooCompiler $compiler the compiler instance that calls this function
101
+	 * @param array        $params   an array containing original and compiled parameters, see preProcessing() for more
102
+	 *                               details more details
103
+	 * @param string       $prepend  that is just meant to allow a child class to call
104
+	 *                               parent::postProcessing($compiler, $params, "foo();") to add a command before the
105
+	 *                               default commands are executed parent::postProcessing($compiler, $params, "foo();")
106
+	 *                               to add a command before the default commands are executed
107
+	 * @param string       $append   that is just meant to allow a child class to call
108
+	 *                               parent::postProcessing($compiler, $params, null, "foo();") to add a command after
109
+	 *                               the default commands are executed parent::postProcessing($compiler, $params, null,
110
+	 *                               "foo();") to add a command after the default commands are executed
111
+	 * @param string       $content  the entire content of the block being closed
112
+	 *
113
+	 * @return string
114
+	 */
115
+	public static function postProcessing(DwooCompiler $compiler, array $params, $prepend, $append, $content)
116
+	{
117
+		return $content . DwooCompiler::PHP_OPEN . $prepend . '$this->delStack();' . $append . DwooCompiler::PHP_CLOSE;
118
+	}
119 119
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Processors/PluginSmartyCompatible.php 1 patch
Indentation   +58 added lines, -58 removed lines patch added patch discarded remove patch
@@ -26,69 +26,69 @@
 block discarded – undo
26 26
  */
27 27
 class PluginSmartyCompatible extends Processor
28 28
 {
29
-    /**
30
-     * @param string $input
31
-     *
32
-     * @return mixed
33
-     */
34
-    public function process($input)
35
-    {
36
-        list($l, $r) = $this->compiler->getDelimiters();
29
+	/**
30
+	 * @param string $input
31
+	 *
32
+	 * @return mixed
33
+	 */
34
+	public function process($input)
35
+	{
36
+		list($l, $r) = $this->compiler->getDelimiters();
37 37
 
38
-        $rl           = preg_quote($l, '/');
39
-        $rr           = preg_quote($r, '/');
40
-        $sectionParam = '(?:(name|loop|start|step|max|show)\s*=\s*(\S+))?\s*';
41
-        $input        = preg_replace_callback('/' . $rl . '\s*section ' . str_repeat($sectionParam, 6) . '\s*' . $rr . '(.+?)(?:' . $rl . '\s*sectionelse\s*' . $rr . '(.+?))?' . $rl . '\s*\/section\s*' . $rr . '/is', array(
42
-            $this,
43
-            'convertSection'
44
-        ), $input);
45
-        $input        = str_replace('$smarty.section.', '$smarty.for.', $input);
38
+		$rl           = preg_quote($l, '/');
39
+		$rr           = preg_quote($r, '/');
40
+		$sectionParam = '(?:(name|loop|start|step|max|show)\s*=\s*(\S+))?\s*';
41
+		$input        = preg_replace_callback('/' . $rl . '\s*section ' . str_repeat($sectionParam, 6) . '\s*' . $rr . '(.+?)(?:' . $rl . '\s*sectionelse\s*' . $rr . '(.+?))?' . $rl . '\s*\/section\s*' . $rr . '/is', array(
42
+			$this,
43
+			'convertSection'
44
+		), $input);
45
+		$input        = str_replace('$smarty.section.', '$smarty.for.', $input);
46 46
 
47
-        $smarty = array(
48
-            '/' . $rl . '\s*ldelim\s*' . $rr . '/',
49
-            '/' . $rl . '\s*rdelim\s*' . $rr . '/',
50
-            '/' . $rl . '\s*\$smarty\.ldelim\s*' . $rr . '/',
51
-            '/' . $rl . '\s*\$smarty\.rdelim\s*' . $rr . '/',
52
-            '/\$smarty\./',
53
-            '/' . $rl . '\s*php\s*' . $rr . '/',
54
-            '/' . $rl . '\s*\/php\s*' . $rr . '/',
55
-            '/\|(@?)strip(\||' . $rr . ')/',
56
-            '/' . $rl . '\s*sectionelse\s*' . $rr . '/',
57
-        );
47
+		$smarty = array(
48
+			'/' . $rl . '\s*ldelim\s*' . $rr . '/',
49
+			'/' . $rl . '\s*rdelim\s*' . $rr . '/',
50
+			'/' . $rl . '\s*\$smarty\.ldelim\s*' . $rr . '/',
51
+			'/' . $rl . '\s*\$smarty\.rdelim\s*' . $rr . '/',
52
+			'/\$smarty\./',
53
+			'/' . $rl . '\s*php\s*' . $rr . '/',
54
+			'/' . $rl . '\s*\/php\s*' . $rr . '/',
55
+			'/\|(@?)strip(\||' . $rr . ')/',
56
+			'/' . $rl . '\s*sectionelse\s*' . $rr . '/',
57
+		);
58 58
 
59
-        $dwoo = array(
60
-            '\\' . $l,
61
-            $r,
62
-            '\\' . $l,
63
-            $r,
64
-            '$dwoo.',
65
-            '<?php ',
66
-            ' ?>',
67
-            '|$1whitespace$2',
68
-            $l . 'else' . $r,
69
-        );
59
+		$dwoo = array(
60
+			'\\' . $l,
61
+			$r,
62
+			'\\' . $l,
63
+			$r,
64
+			'$dwoo.',
65
+			'<?php ',
66
+			' ?>',
67
+			'|$1whitespace$2',
68
+			$l . 'else' . $r,
69
+		);
70 70
 
71
-        if (preg_match('{\|@([a-z][a-z0-9_]*)}i', $input, $matches)) {
72
-            trigger_error('The Smarty Compatibility Module has detected that you use |@' . $matches[1] . ' in your template, this might lead to problems as Dwoo interprets the @ operator differently than Smarty, see http://wiki.dwoo.org/index.php/Syntax#The_.40_Operator', E_USER_NOTICE);
73
-        }
71
+		if (preg_match('{\|@([a-z][a-z0-9_]*)}i', $input, $matches)) {
72
+			trigger_error('The Smarty Compatibility Module has detected that you use |@' . $matches[1] . ' in your template, this might lead to problems as Dwoo interprets the @ operator differently than Smarty, see http://wiki.dwoo.org/index.php/Syntax#The_.40_Operator', E_USER_NOTICE);
73
+		}
74 74
 
75
-        return preg_replace($smarty, $dwoo, $input);
76
-    }
75
+		return preg_replace($smarty, $dwoo, $input);
76
+	}
77 77
 
78
-    /**
79
-     * @param array $matches
80
-     *
81
-     * @return mixed
82
-     */
83
-    protected function convertSection(array $matches)
84
-    {
85
-        $params = array();
86
-        $index  = 1;
87
-        while (!empty($matches[$index]) && $index < 13) {
88
-            $params[$matches[$index]] = $matches[$index + 1];
89
-            $index += 2;
90
-        }
78
+	/**
79
+	 * @param array $matches
80
+	 *
81
+	 * @return mixed
82
+	 */
83
+	protected function convertSection(array $matches)
84
+	{
85
+		$params = array();
86
+		$index  = 1;
87
+		while (!empty($matches[$index]) && $index < 13) {
88
+			$params[$matches[$index]] = $matches[$index + 1];
89
+			$index += 2;
90
+		}
91 91
 
92
-        return str_replace('[' . trim($params['name'], '"\'') . ']', '[$' . trim($params['name'], '"\'') . ']', $matches[0]);
93
-    }
92
+		return str_replace('[' . trim($params['name'], '"\'') . ']', '[$' . trim($params['name'], '"\'') . ']', $matches[0]);
93
+	}
94 94
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Functions/PluginExtends.php 1 patch
Indentation   +155 added lines, -155 removed lines patch added patch discarded remove patch
@@ -34,28 +34,28 @@  discard block
 block discarded – undo
34 34
  */
35 35
 class PluginExtends extends Plugin implements ICompilable
36 36
 {
37
-    protected static $childSource;
38
-    protected static $regex;
39
-    protected static $l;
40
-    protected static $r;
41
-    protected static $lastReplacement;
42
-
43
-    public function process()
44
-    {
45
-    }
46
-
47
-    /**
48
-     * @param Compiler $compiler
49
-     * @param          $file
50
-     *
51
-     * @throws CompilationException
52
-     */
53
-    public static function compile(Compiler $compiler, $file)
54
-    {
55
-        list($l, $r) = $compiler->getDelimiters();
56
-        self::$l     = preg_quote($l, '/');
57
-        self::$r     = preg_quote($r, '/');
58
-        self::$regex = '/
37
+	protected static $childSource;
38
+	protected static $regex;
39
+	protected static $l;
40
+	protected static $r;
41
+	protected static $lastReplacement;
42
+
43
+	public function process()
44
+	{
45
+	}
46
+
47
+	/**
48
+	 * @param Compiler $compiler
49
+	 * @param          $file
50
+	 *
51
+	 * @throws CompilationException
52
+	 */
53
+	public static function compile(Compiler $compiler, $file)
54
+	{
55
+		list($l, $r) = $compiler->getDelimiters();
56
+		self::$l     = preg_quote($l, '/');
57
+		self::$r     = preg_quote($r, '/');
58
+		self::$regex = '/
59 59
 			' . self::$l . 'block\s(["\']?)(.+?)\1' . self::$r . '(?:\r?\n?)
60 60
 			((?:
61 61
 				(?R)
@@ -70,137 +70,137 @@  discard block
 block discarded – undo
70 70
 			' . self::$l . '\/block' . self::$r . '
71 71
 			/six';
72 72
 
73
-        if ($compiler->getLooseOpeningHandling()) {
74
-            self::$l .= '\s*';
75
-            self::$r = '\s*' . self::$r;
76
-        }
77
-        $inheritanceTree = array(array('source' => $compiler->getTemplateSource()));
78
-        $curPath         = dirname($compiler->getDwoo()->getTemplate()->getResourceIdentifier()) . DIRECTORY_SEPARATOR;
79
-        $curTpl          = $compiler->getDwoo()->getTemplate();
80
-
81
-        while (!empty($file)) {
82
-            if ($file === '""' || $file === "''" || (substr($file, 0, 1) !== '"' && substr($file, 0, 1) !== '\'')) {
83
-                throw new CompilationException($compiler, 'Extends : The file name must be a non-empty string');
84
-            }
85
-
86
-            if (preg_match('#^["\']([a-z]{2,}):(.*?)["\']$#i', $file, $m)) {
87
-                // resource:identifier given, extract them
88
-                $resource   = $m[1];
89
-                $identifier = $m[2];
90
-            } else {
91
-                // get the current template's resource
92
-                $resource   = $curTpl->getResourceName();
93
-                $identifier = substr($file, 1, - 1);
94
-            }
95
-
96
-            try {
97
-                $parent = $compiler->getDwoo()->templateFactory($resource, $identifier, null, null, null, $curTpl);
98
-            }
99
-            catch (SecurityException $e) {
100
-                throw new CompilationException($compiler, 'Extends : Security restriction : ' . $e->getMessage());
101
-            }
102
-            catch (Exception $e) {
103
-                throw new CompilationException($compiler, 'Extends : ' . $e->getMessage());
104
-            }
105
-
106
-            if ($parent === null) {
107
-                throw new CompilationException($compiler, 'Extends : Resource "' . $resource . ':' . $identifier . '" not found.');
108
-            } elseif ($parent === false) {
109
-                throw new CompilationException($compiler, 'Extends : Resource "' . $resource . '" does not support extends.');
110
-            }
111
-
112
-            $curTpl    = $parent;
113
-            $newParent = array(
114
-                'source'     => $parent->getSource(),
115
-                'resource'   => $resource,
116
-                'identifier' => $parent->getResourceIdentifier(),
117
-                'uid'        => $parent->getUid()
118
-            );
119
-            if (array_search($newParent, $inheritanceTree, true) !== false) {
120
-                throw new CompilationException($compiler, 'Extends : Recursive template inheritance detected');
121
-            }
122
-            $inheritanceTree[] = $newParent;
123
-
124
-            if (preg_match('/^' . self::$l . 'extends(?:\(?\s*|\s+)(?:file=)?\s*((["\']).+?\2|\S+?)\s*\)?\s*?' . self::$r . '/i', $parent->getSource(), $match)) {
125
-                $curPath = dirname($identifier) . DIRECTORY_SEPARATOR;
126
-                if (isset($match[2]) && $match[2] == '"') {
127
-                    $file = '"' . str_replace('"', '\\"', substr($match[1], 1, - 1)) . '"';
128
-                } elseif (isset($match[2]) && $match[2] == "'") {
129
-                    $file = '"' . substr($match[1], 1, - 1) . '"';
130
-                } else {
131
-                    $file = '"' . $match[1] . '"';
132
-                }
133
-            } else {
134
-                $file = false;
135
-            }
136
-        }
137
-
138
-        while (true) {
139
-            $parent                = array_pop($inheritanceTree);
140
-            $child                 = end($inheritanceTree);
141
-            self::$childSource     = $child['source'];
142
-            self::$lastReplacement = count($inheritanceTree) === 1;
143
-            if (!isset($newSource)) {
144
-                $newSource = $parent['source'];
145
-            }
146
-            $newSource = preg_replace_callback(self::$regex, array(
147
-                'Dwoo\Plugins\Functions\PluginExtends',
148
-                'replaceBlock'
149
-            ), $newSource);
150
-            $newSource = $l . 'do extendsCheck(' . var_export($parent['resource'] . ':' . $parent['identifier'], true) . ')' . $r . $newSource;
151
-
152
-            if (self::$lastReplacement) {
153
-                break;
154
-            }
155
-        }
156
-        $compiler->setTemplateSource($newSource);
157
-        $compiler->recompile();
158
-    }
159
-
160
-    /**
161
-     * @param array $matches
162
-     *
163
-     * @return mixed|string
164
-     */
165
-    protected static function replaceBlock(array $matches)
166
-    {
167
-        $matches[3] = self::removeTrailingNewline($matches[3]);
168
-
169
-        if (preg_match_all(self::$regex, self::$childSource, $override) && in_array($matches[2], $override[2])) {
170
-            $key      = array_search($matches[2], $override[2]);
171
-            $override = self::removeTrailingNewline($override[3][$key]);
172
-
173
-            $l = stripslashes(self::$l);
174
-            $r = stripslashes(self::$r);
175
-
176
-            if (self::$lastReplacement) {
177
-                return preg_replace('/' . self::$l . '\$dwoo\.parent' . self::$r . '/is', $matches[3], $override);
178
-            }
179
-
180
-            return $l . 'block ' . $matches[1] . $matches[2] . $matches[1] . $r . preg_replace('/' . self::$l . '\$dwoo\.parent' . self::$r . '/is', $matches[3], $override) . $l . '/block' . $r;
181
-        }
182
-
183
-        if (preg_match(self::$regex, $matches[3])) {
184
-            return preg_replace_callback(self::$regex, array(
185
-                'Dwoo\Plugins\Functions\PluginExtends',
186
-                'replaceBlock'
187
-            ), $matches[3]);
188
-        }
189
-
190
-        if (self::$lastReplacement) {
191
-            return $matches[3];
192
-        }
193
-
194
-        return $matches[0];
195
-    }
196
-
197
-    /**
198
-     * @param $text
199
-     *
200
-     * @return string
201
-     */
202
-    protected static function removeTrailingNewline($text)
203
-    {
204
-        return substr($text, - 1) === "\n" ? substr($text, - 2, 1) === "\r" ? substr($text, 0, - 2) : substr($text, 0, - 1) : $text;
205
-    }
73
+		if ($compiler->getLooseOpeningHandling()) {
74
+			self::$l .= '\s*';
75
+			self::$r = '\s*' . self::$r;
76
+		}
77
+		$inheritanceTree = array(array('source' => $compiler->getTemplateSource()));
78
+		$curPath         = dirname($compiler->getDwoo()->getTemplate()->getResourceIdentifier()) . DIRECTORY_SEPARATOR;
79
+		$curTpl          = $compiler->getDwoo()->getTemplate();
80
+
81
+		while (!empty($file)) {
82
+			if ($file === '""' || $file === "''" || (substr($file, 0, 1) !== '"' && substr($file, 0, 1) !== '\'')) {
83
+				throw new CompilationException($compiler, 'Extends : The file name must be a non-empty string');
84
+			}
85
+
86
+			if (preg_match('#^["\']([a-z]{2,}):(.*?)["\']$#i', $file, $m)) {
87
+				// resource:identifier given, extract them
88
+				$resource   = $m[1];
89
+				$identifier = $m[2];
90
+			} else {
91
+				// get the current template's resource
92
+				$resource   = $curTpl->getResourceName();
93
+				$identifier = substr($file, 1, - 1);
94
+			}
95
+
96
+			try {
97
+				$parent = $compiler->getDwoo()->templateFactory($resource, $identifier, null, null, null, $curTpl);
98
+			}
99
+			catch (SecurityException $e) {
100
+				throw new CompilationException($compiler, 'Extends : Security restriction : ' . $e->getMessage());
101
+			}
102
+			catch (Exception $e) {
103
+				throw new CompilationException($compiler, 'Extends : ' . $e->getMessage());
104
+			}
105
+
106
+			if ($parent === null) {
107
+				throw new CompilationException($compiler, 'Extends : Resource "' . $resource . ':' . $identifier . '" not found.');
108
+			} elseif ($parent === false) {
109
+				throw new CompilationException($compiler, 'Extends : Resource "' . $resource . '" does not support extends.');
110
+			}
111
+
112
+			$curTpl    = $parent;
113
+			$newParent = array(
114
+				'source'     => $parent->getSource(),
115
+				'resource'   => $resource,
116
+				'identifier' => $parent->getResourceIdentifier(),
117
+				'uid'        => $parent->getUid()
118
+			);
119
+			if (array_search($newParent, $inheritanceTree, true) !== false) {
120
+				throw new CompilationException($compiler, 'Extends : Recursive template inheritance detected');
121
+			}
122
+			$inheritanceTree[] = $newParent;
123
+
124
+			if (preg_match('/^' . self::$l . 'extends(?:\(?\s*|\s+)(?:file=)?\s*((["\']).+?\2|\S+?)\s*\)?\s*?' . self::$r . '/i', $parent->getSource(), $match)) {
125
+				$curPath = dirname($identifier) . DIRECTORY_SEPARATOR;
126
+				if (isset($match[2]) && $match[2] == '"') {
127
+					$file = '"' . str_replace('"', '\\"', substr($match[1], 1, - 1)) . '"';
128
+				} elseif (isset($match[2]) && $match[2] == "'") {
129
+					$file = '"' . substr($match[1], 1, - 1) . '"';
130
+				} else {
131
+					$file = '"' . $match[1] . '"';
132
+				}
133
+			} else {
134
+				$file = false;
135
+			}
136
+		}
137
+
138
+		while (true) {
139
+			$parent                = array_pop($inheritanceTree);
140
+			$child                 = end($inheritanceTree);
141
+			self::$childSource     = $child['source'];
142
+			self::$lastReplacement = count($inheritanceTree) === 1;
143
+			if (!isset($newSource)) {
144
+				$newSource = $parent['source'];
145
+			}
146
+			$newSource = preg_replace_callback(self::$regex, array(
147
+				'Dwoo\Plugins\Functions\PluginExtends',
148
+				'replaceBlock'
149
+			), $newSource);
150
+			$newSource = $l . 'do extendsCheck(' . var_export($parent['resource'] . ':' . $parent['identifier'], true) . ')' . $r . $newSource;
151
+
152
+			if (self::$lastReplacement) {
153
+				break;
154
+			}
155
+		}
156
+		$compiler->setTemplateSource($newSource);
157
+		$compiler->recompile();
158
+	}
159
+
160
+	/**
161
+	 * @param array $matches
162
+	 *
163
+	 * @return mixed|string
164
+	 */
165
+	protected static function replaceBlock(array $matches)
166
+	{
167
+		$matches[3] = self::removeTrailingNewline($matches[3]);
168
+
169
+		if (preg_match_all(self::$regex, self::$childSource, $override) && in_array($matches[2], $override[2])) {
170
+			$key      = array_search($matches[2], $override[2]);
171
+			$override = self::removeTrailingNewline($override[3][$key]);
172
+
173
+			$l = stripslashes(self::$l);
174
+			$r = stripslashes(self::$r);
175
+
176
+			if (self::$lastReplacement) {
177
+				return preg_replace('/' . self::$l . '\$dwoo\.parent' . self::$r . '/is', $matches[3], $override);
178
+			}
179
+
180
+			return $l . 'block ' . $matches[1] . $matches[2] . $matches[1] . $r . preg_replace('/' . self::$l . '\$dwoo\.parent' . self::$r . '/is', $matches[3], $override) . $l . '/block' . $r;
181
+		}
182
+
183
+		if (preg_match(self::$regex, $matches[3])) {
184
+			return preg_replace_callback(self::$regex, array(
185
+				'Dwoo\Plugins\Functions\PluginExtends',
186
+				'replaceBlock'
187
+			), $matches[3]);
188
+		}
189
+
190
+		if (self::$lastReplacement) {
191
+			return $matches[3];
192
+		}
193
+
194
+		return $matches[0];
195
+	}
196
+
197
+	/**
198
+	 * @param $text
199
+	 *
200
+	 * @return string
201
+	 */
202
+	protected static function removeTrailingNewline($text)
203
+	{
204
+		return substr($text, - 1) === "\n" ? substr($text, - 2, 1) === "\r" ? substr($text, 0, - 2) : substr($text, 0, - 1) : $text;
205
+	}
206 206
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Functions/PluginCounter.php 1 patch
Indentation   +50 added lines, -50 removed lines patch added patch discarded remove patch
@@ -34,61 +34,61 @@
 block discarded – undo
34 34
  */
35 35
 class PluginCounter extends Plugin
36 36
 {
37
-    protected $counters = array();
37
+	protected $counters = array();
38 38
 
39
-    /**
40
-     * @param string $name
41
-     * @param null   $start
42
-     * @param null   $skip
43
-     * @param null   $direction
44
-     * @param null   $print
45
-     * @param null   $assign
46
-     *
47
-     * @return mixed
48
-     */
49
-    public function process($name = 'default', $start = null, $skip = null, $direction = null, $print = null, $assign = null)
50
-    {
51
-        // init counter
52
-        if (!isset($this->counters[$name])) {
53
-            $this->counters[$name] = array(
54
-                'count'     => $start === null ? 1 : (int)$start,
55
-                'skip'      => $skip === null ? 1 : (int)$skip,
56
-                'print'     => $print === null ? true : (bool)$print,
57
-                'assign'    => $assign === null ? null : (string)$assign,
58
-                'direction' => strtolower($direction) === 'down' ? - 1 : 1,
59
-            );
60
-        } // increment
61
-        else {
62
-            // override setting if present
63
-            if ($skip !== null) {
64
-                $this->counters[$name]['skip'] = (int)$skip;
65
-            }
39
+	/**
40
+	 * @param string $name
41
+	 * @param null   $start
42
+	 * @param null   $skip
43
+	 * @param null   $direction
44
+	 * @param null   $print
45
+	 * @param null   $assign
46
+	 *
47
+	 * @return mixed
48
+	 */
49
+	public function process($name = 'default', $start = null, $skip = null, $direction = null, $print = null, $assign = null)
50
+	{
51
+		// init counter
52
+		if (!isset($this->counters[$name])) {
53
+			$this->counters[$name] = array(
54
+				'count'     => $start === null ? 1 : (int)$start,
55
+				'skip'      => $skip === null ? 1 : (int)$skip,
56
+				'print'     => $print === null ? true : (bool)$print,
57
+				'assign'    => $assign === null ? null : (string)$assign,
58
+				'direction' => strtolower($direction) === 'down' ? - 1 : 1,
59
+			);
60
+		} // increment
61
+		else {
62
+			// override setting if present
63
+			if ($skip !== null) {
64
+				$this->counters[$name]['skip'] = (int)$skip;
65
+			}
66 66
 
67
-            if ($direction !== null) {
68
-                $this->counters[$name]['direction'] = strtolower($direction) === 'down' ? - 1 : 1;
69
-            }
67
+			if ($direction !== null) {
68
+				$this->counters[$name]['direction'] = strtolower($direction) === 'down' ? - 1 : 1;
69
+			}
70 70
 
71
-            if ($print !== null) {
72
-                $this->counters[$name]['print'] = (bool)$print;
73
-            }
71
+			if ($print !== null) {
72
+				$this->counters[$name]['print'] = (bool)$print;
73
+			}
74 74
 
75
-            if ($assign !== null) {
76
-                $this->counters[$name]['assign'] = (string)$assign;
77
-            }
75
+			if ($assign !== null) {
76
+				$this->counters[$name]['assign'] = (string)$assign;
77
+			}
78 78
 
79
-            if ($start !== null) {
80
-                $this->counters[$name]['count'] = (int)$start;
81
-            } else {
82
-                $this->counters[$name]['count'] += ($this->counters[$name]['skip'] * $this->counters[$name]['direction']);
83
-            }
84
-        }
79
+			if ($start !== null) {
80
+				$this->counters[$name]['count'] = (int)$start;
81
+			} else {
82
+				$this->counters[$name]['count'] += ($this->counters[$name]['skip'] * $this->counters[$name]['direction']);
83
+			}
84
+		}
85 85
 
86
-        $out = $this->counters[$name]['count'];
86
+		$out = $this->counters[$name]['count'];
87 87
 
88
-        if ($this->counters[$name]['assign'] !== null) {
89
-            $this->core->assignInScope($out, $this->counters[$name]['assign']);
90
-        } elseif ($this->counters[$name]['print'] === true) {
91
-            return $out;
92
-        }
93
-    }
88
+		if ($this->counters[$name]['assign'] !== null) {
89
+			$this->core->assignInScope($out, $this->counters[$name]['assign']);
90
+		} elseif ($this->counters[$name]['print'] === true) {
91
+			return $out;
92
+		}
93
+	}
94 94
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Blocks/PluginForeachelse.php 1 patch
Indentation   +37 added lines, -37 removed lines patch added patch discarded remove patch
@@ -27,47 +27,47 @@
 block discarded – undo
27 27
  */
28 28
 class PluginForeachelse extends BlockPlugin implements ICompilableBlock
29 29
 {
30
-    public function init()
31
-    {
32
-    }
30
+	public function init()
31
+	{
32
+	}
33 33
 
34
-    /**
35
-     * @param Compiler $compiler
36
-     * @param array    $params
37
-     * @param string   $prepend
38
-     * @param string   $append
39
-     * @param string   $type
40
-     *
41
-     * @return string
42
-     */
43
-    public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
44
-    {
45
-        $with = &$compiler->findBlock('foreach', true);
34
+	/**
35
+	 * @param Compiler $compiler
36
+	 * @param array    $params
37
+	 * @param string   $prepend
38
+	 * @param string   $append
39
+	 * @param string   $type
40
+	 *
41
+	 * @return string
42
+	 */
43
+	public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
44
+	{
45
+		$with = &$compiler->findBlock('foreach', true);
46 46
 
47
-        $params['initialized'] = true;
48
-        $compiler->injectBlock($type, $params);
47
+		$params['initialized'] = true;
48
+		$compiler->injectBlock($type, $params);
49 49
 
50
-        return '';
51
-    }
50
+		return '';
51
+	}
52 52
 
53
-    /**
54
-     * @param Compiler $compiler
55
-     * @param array    $params
56
-     * @param string   $prepend
57
-     * @param string   $append
58
-     * @param string   $content
59
-     *
60
-     * @return string
61
-     */
62
-    public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
63
-    {
64
-        if (!isset($params['initialized'])) {
65
-            return '';
66
-        }
53
+	/**
54
+	 * @param Compiler $compiler
55
+	 * @param array    $params
56
+	 * @param string   $prepend
57
+	 * @param string   $append
58
+	 * @param string   $content
59
+	 *
60
+	 * @return string
61
+	 */
62
+	public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
63
+	{
64
+		if (!isset($params['initialized'])) {
65
+			return '';
66
+		}
67 67
 
68
-        $block                      = &$compiler->getCurrentBlock();
69
-        $block['params']['hasElse'] = Compiler::PHP_OPEN . "else {\n" . Compiler::PHP_CLOSE . $content . Compiler::PHP_OPEN . "\n}" . Compiler::PHP_CLOSE;
68
+		$block                      = &$compiler->getCurrentBlock();
69
+		$block['params']['hasElse'] = Compiler::PHP_OPEN . "else {\n" . Compiler::PHP_CLOSE . $content . Compiler::PHP_OPEN . "\n}" . Compiler::PHP_CLOSE;
70 70
 
71
-        return '';
72
-    }
71
+		return '';
72
+	}
73 73
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Blocks/PluginIf.php 1 patch
Indentation   +220 added lines, -220 removed lines patch added patch discarded remove patch
@@ -41,234 +41,234 @@
 block discarded – undo
41 41
  */
42 42
 class PluginIf extends BlockPlugin implements ICompilableBlock, IElseable
43 43
 {
44
-    /**
45
-     * @param array $rest
46
-     */
47
-    public function init(array $rest)
48
-    {
49
-    }
44
+	/**
45
+	 * @param array $rest
46
+	 */
47
+	public function init(array $rest)
48
+	{
49
+	}
50 50
 
51
-    /**
52
-     * @param array    $params
53
-     * @param array    $tokens
54
-     * @param Compiler $compiler
55
-     *
56
-     * @return array
57
-     * @throws CompilationException
58
-     */
59
-    public static function replaceKeywords(array $params, array $tokens, Compiler $compiler)
60
-    {
61
-        $p = array();
51
+	/**
52
+	 * @param array    $params
53
+	 * @param array    $tokens
54
+	 * @param Compiler $compiler
55
+	 *
56
+	 * @return array
57
+	 * @throws CompilationException
58
+	 */
59
+	public static function replaceKeywords(array $params, array $tokens, Compiler $compiler)
60
+	{
61
+		$p = array();
62 62
 
63
-        reset($params);
64
-        while (list($k, $v) = each($params)) {
65
-            $v = (string)$v;
66
-            if (substr($v, 0, 1) === '"' || substr($v, 0, 1) === '\'') {
67
-                $vmod = strtolower(substr($v, 1, - 1));
68
-            } else {
69
-                $vmod = strtolower($v);
70
-            }
71
-            switch ($vmod) {
63
+		reset($params);
64
+		while (list($k, $v) = each($params)) {
65
+			$v = (string)$v;
66
+			if (substr($v, 0, 1) === '"' || substr($v, 0, 1) === '\'') {
67
+				$vmod = strtolower(substr($v, 1, - 1));
68
+			} else {
69
+				$vmod = strtolower($v);
70
+			}
71
+			switch ($vmod) {
72 72
 
73
-                case 'and':
74
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
75
-                        $p[] = '&&';
76
-                    } else {
77
-                        $p[] = $v;
78
-                    }
79
-                    break;
80
-                case 'or':
81
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
82
-                        $p[] = '||';
83
-                    } else {
84
-                        $p[] = $v;
85
-                    }
86
-                    break;
87
-                case 'xor':
88
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
89
-                        $p[] = '^';
90
-                    } else {
91
-                        $p[] = $v;
92
-                    }
93
-                    break;
94
-                case 'eq':
95
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
96
-                        $p[] = '==';
97
-                    } else {
98
-                        $p[] = $v;
99
-                    }
100
-                    break;
101
-                case 'ne':
102
-                case 'neq':
103
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
104
-                        $p[] = '!=';
105
-                    } else {
106
-                        $p[] = $v;
107
-                    }
108
-                    break;
109
-                case 'gte':
110
-                case 'ge':
111
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
112
-                        $p[] = '>=';
113
-                    } else {
114
-                        $p[] = $v;
115
-                    }
116
-                    break;
117
-                case 'lte':
118
-                case 'le':
119
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
120
-                        $p[] = '<=';
121
-                    } else {
122
-                        $p[] = $v;
123
-                    }
124
-                    break;
125
-                case 'gt':
126
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
127
-                        $p[] = '>';
128
-                    } else {
129
-                        $p[] = $v;
130
-                    }
131
-                    break;
132
-                case 'lt':
133
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
134
-                        $p[] = '<';
135
-                    } else {
136
-                        $p[] = $v;
137
-                    }
138
-                    break;
139
-                case 'mod':
140
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
141
-                        $p[] = '%';
142
-                    } else {
143
-                        $p[] = $v;
144
-                    }
145
-                    break;
146
-                case 'not':
147
-                    if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
148
-                        $p[] = '!';
149
-                    } else {
150
-                        $p[] = $v;
151
-                    }
152
-                    break;
153
-                case '<>':
154
-                    $p[] = '!=';
155
-                    break;
156
-                case '==':
157
-                case '!=':
158
-                case '>=':
159
-                case '<=':
160
-                case '>':
161
-                case '<':
162
-                case '===':
163
-                case '!==':
164
-                case '%':
165
-                case '!':
166
-                case '^':
167
-                    $p[] = $vmod;
168
-                    break;
169
-                case 'is':
170
-                    if ($tokens[$k] !== Compiler::T_UNQUOTED_STRING) {
171
-                        $p[] = $v;
172
-                        break;
173
-                    }
174
-                    if (isset($params[$k + 1]) && strtolower(trim($params[$k + 1], '"\'')) === 'not' && $tokens[$k + 1] === Compiler::T_UNQUOTED_STRING) {
175
-                        $negate = true;
176
-                        next($params);
177
-                    } else {
178
-                        $negate = false;
179
-                    }
180
-                    $ptr = 1 + (int)$negate;
181
-                    if ($tokens[$k + $ptr] !== Compiler::T_UNQUOTED_STRING) {
182
-                        break;
183
-                    }
184
-                    if (!isset($params[$k + $ptr])) {
185
-                        $params[$k + $ptr] = '';
186
-                    } else {
187
-                        $params[$k + $ptr] = trim($params[$k + $ptr], '"\'');
188
-                    }
189
-                    switch ($params[$k + $ptr]) {
73
+				case 'and':
74
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
75
+						$p[] = '&&';
76
+					} else {
77
+						$p[] = $v;
78
+					}
79
+					break;
80
+				case 'or':
81
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
82
+						$p[] = '||';
83
+					} else {
84
+						$p[] = $v;
85
+					}
86
+					break;
87
+				case 'xor':
88
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
89
+						$p[] = '^';
90
+					} else {
91
+						$p[] = $v;
92
+					}
93
+					break;
94
+				case 'eq':
95
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
96
+						$p[] = '==';
97
+					} else {
98
+						$p[] = $v;
99
+					}
100
+					break;
101
+				case 'ne':
102
+				case 'neq':
103
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
104
+						$p[] = '!=';
105
+					} else {
106
+						$p[] = $v;
107
+					}
108
+					break;
109
+				case 'gte':
110
+				case 'ge':
111
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
112
+						$p[] = '>=';
113
+					} else {
114
+						$p[] = $v;
115
+					}
116
+					break;
117
+				case 'lte':
118
+				case 'le':
119
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
120
+						$p[] = '<=';
121
+					} else {
122
+						$p[] = $v;
123
+					}
124
+					break;
125
+				case 'gt':
126
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
127
+						$p[] = '>';
128
+					} else {
129
+						$p[] = $v;
130
+					}
131
+					break;
132
+				case 'lt':
133
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
134
+						$p[] = '<';
135
+					} else {
136
+						$p[] = $v;
137
+					}
138
+					break;
139
+				case 'mod':
140
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
141
+						$p[] = '%';
142
+					} else {
143
+						$p[] = $v;
144
+					}
145
+					break;
146
+				case 'not':
147
+					if ($tokens[$k] === Compiler::T_UNQUOTED_STRING) {
148
+						$p[] = '!';
149
+					} else {
150
+						$p[] = $v;
151
+					}
152
+					break;
153
+				case '<>':
154
+					$p[] = '!=';
155
+					break;
156
+				case '==':
157
+				case '!=':
158
+				case '>=':
159
+				case '<=':
160
+				case '>':
161
+				case '<':
162
+				case '===':
163
+				case '!==':
164
+				case '%':
165
+				case '!':
166
+				case '^':
167
+					$p[] = $vmod;
168
+					break;
169
+				case 'is':
170
+					if ($tokens[$k] !== Compiler::T_UNQUOTED_STRING) {
171
+						$p[] = $v;
172
+						break;
173
+					}
174
+					if (isset($params[$k + 1]) && strtolower(trim($params[$k + 1], '"\'')) === 'not' && $tokens[$k + 1] === Compiler::T_UNQUOTED_STRING) {
175
+						$negate = true;
176
+						next($params);
177
+					} else {
178
+						$negate = false;
179
+					}
180
+					$ptr = 1 + (int)$negate;
181
+					if ($tokens[$k + $ptr] !== Compiler::T_UNQUOTED_STRING) {
182
+						break;
183
+					}
184
+					if (!isset($params[$k + $ptr])) {
185
+						$params[$k + $ptr] = '';
186
+					} else {
187
+						$params[$k + $ptr] = trim($params[$k + $ptr], '"\'');
188
+					}
189
+					switch ($params[$k + $ptr]) {
190 190
 
191
-                        case 'div':
192
-                            if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
193
-                                $p[] = ' % ' . $params[$k + $ptr + 2] . ' ' . ($negate ? '!' : '=') . '== 0';
194
-                                next($params);
195
-                                next($params);
196
-                                next($params);
197
-                            } else {
198
-                                throw new CompilationException($compiler, 'If : Syntax error : syntax should be "if $a is [not] div by $b", found ' . $params[$k - 1] . ' is ' . ($negate ? 'not ' : '') . 'div ' . $params[$k + $ptr + 1] . ' ' . $params[$k + $ptr + 2]);
199
-                            }
200
-                            break;
201
-                        case 'even':
202
-                            $a = array_pop($p);
203
-                            if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
204
-                                $b   = $params[$k + $ptr + 2];
205
-                                $p[] = '(' . $a . ' / ' . $b . ') % 2 ' . ($negate ? '!' : '=') . '== 0';
206
-                                next($params);
207
-                                next($params);
208
-                            } else {
209
-                                $p[] = $a . ' % 2 ' . ($negate ? '!' : '=') . '== 0';
210
-                            }
211
-                            next($params);
212
-                            break;
213
-                        case 'odd':
214
-                            $a = array_pop($p);
215
-                            if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
216
-                                $b   = $params[$k + $ptr + 2];
217
-                                $p[] = '(' . $a . ' / ' . $b . ') % 2 ' . ($negate ? '=' : '!') . '== 0';
218
-                                next($params);
219
-                                next($params);
220
-                            } else {
221
-                                $p[] = $a . ' % 2 ' . ($negate ? '=' : '!') . '== 0';
222
-                            }
223
-                            next($params);
224
-                            break;
225
-                        default:
226
-                            throw new CompilationException($compiler, 'If : Syntax error : syntax should be "if $a is [not] (div|even|odd) [by $b]", found ' . $params[$k - 1] . ' is ' . $params[$k + $ptr + 1]);
227
-                    }
228
-                    break;
229
-                default:
230
-                    $p[] = $v;
231
-            }
232
-        }
191
+						case 'div':
192
+							if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
193
+								$p[] = ' % ' . $params[$k + $ptr + 2] . ' ' . ($negate ? '!' : '=') . '== 0';
194
+								next($params);
195
+								next($params);
196
+								next($params);
197
+							} else {
198
+								throw new CompilationException($compiler, 'If : Syntax error : syntax should be "if $a is [not] div by $b", found ' . $params[$k - 1] . ' is ' . ($negate ? 'not ' : '') . 'div ' . $params[$k + $ptr + 1] . ' ' . $params[$k + $ptr + 2]);
199
+							}
200
+							break;
201
+						case 'even':
202
+							$a = array_pop($p);
203
+							if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
204
+								$b   = $params[$k + $ptr + 2];
205
+								$p[] = '(' . $a . ' / ' . $b . ') % 2 ' . ($negate ? '!' : '=') . '== 0';
206
+								next($params);
207
+								next($params);
208
+							} else {
209
+								$p[] = $a . ' % 2 ' . ($negate ? '!' : '=') . '== 0';
210
+							}
211
+							next($params);
212
+							break;
213
+						case 'odd':
214
+							$a = array_pop($p);
215
+							if (isset($params[$k + $ptr + 1]) && strtolower(trim($params[$k + $ptr + 1], '"\'')) === 'by') {
216
+								$b   = $params[$k + $ptr + 2];
217
+								$p[] = '(' . $a . ' / ' . $b . ') % 2 ' . ($negate ? '=' : '!') . '== 0';
218
+								next($params);
219
+								next($params);
220
+							} else {
221
+								$p[] = $a . ' % 2 ' . ($negate ? '=' : '!') . '== 0';
222
+							}
223
+							next($params);
224
+							break;
225
+						default:
226
+							throw new CompilationException($compiler, 'If : Syntax error : syntax should be "if $a is [not] (div|even|odd) [by $b]", found ' . $params[$k - 1] . ' is ' . $params[$k + $ptr + 1]);
227
+					}
228
+					break;
229
+				default:
230
+					$p[] = $v;
231
+			}
232
+		}
233 233
 
234
-        return $p;
235
-    }
234
+		return $p;
235
+	}
236 236
 
237
-    /**
238
-     * @param Compiler $compiler
239
-     * @param array    $params
240
-     * @param string   $prepend
241
-     * @param string   $append
242
-     * @param string   $type
243
-     *
244
-     * @return string
245
-     */
246
-    public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
247
-    {
248
-        return '';
249
-    }
237
+	/**
238
+	 * @param Compiler $compiler
239
+	 * @param array    $params
240
+	 * @param string   $prepend
241
+	 * @param string   $append
242
+	 * @param string   $type
243
+	 *
244
+	 * @return string
245
+	 */
246
+	public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
247
+	{
248
+		return '';
249
+	}
250 250
 
251
-    /**
252
-     * @param Compiler $compiler
253
-     * @param array    $params
254
-     * @param string   $prepend
255
-     * @param string   $append
256
-     * @param string   $content
257
-     *
258
-     * @return string
259
-     */
260
-    public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
261
-    {
262
-        $tokens = $compiler->getParamTokens($params);
263
-        $params = $compiler->getCompiledParams($params);
264
-        $pre    = Compiler::PHP_OPEN . 'if (' . implode(' ', self::replaceKeywords($params['*'], $tokens['*'], $compiler)) . ") {\n" . Compiler::PHP_CLOSE;
251
+	/**
252
+	 * @param Compiler $compiler
253
+	 * @param array    $params
254
+	 * @param string   $prepend
255
+	 * @param string   $append
256
+	 * @param string   $content
257
+	 *
258
+	 * @return string
259
+	 */
260
+	public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
261
+	{
262
+		$tokens = $compiler->getParamTokens($params);
263
+		$params = $compiler->getCompiledParams($params);
264
+		$pre    = Compiler::PHP_OPEN . 'if (' . implode(' ', self::replaceKeywords($params['*'], $tokens['*'], $compiler)) . ") {\n" . Compiler::PHP_CLOSE;
265 265
 
266
-        $post = Compiler::PHP_OPEN . "\n}" . Compiler::PHP_CLOSE;
266
+		$post = Compiler::PHP_OPEN . "\n}" . Compiler::PHP_CLOSE;
267 267
 
268
-        if (isset($params['hasElse'])) {
269
-            $post .= $params['hasElse'];
270
-        }
268
+		if (isset($params['hasElse'])) {
269
+			$post .= $params['hasElse'];
270
+		}
271 271
 
272
-        return $pre . $content . $post;
273
-    }
272
+		return $pre . $content . $post;
273
+	}
274 274
 }
Please login to merge, or discard this patch.
lib/Dwoo/Plugins/Blocks/PluginBlock.php 1 patch
Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -29,38 +29,38 @@
 block discarded – undo
29 29
  */
30 30
 class PluginBlock extends BlockPlugin implements ICompilableBlock
31 31
 {
32
-    /**
33
-     * @param string $name
34
-     */
35
-    public function init($name = '')
36
-    {
37
-    }
32
+	/**
33
+	 * @param string $name
34
+	 */
35
+	public function init($name = '')
36
+	{
37
+	}
38 38
 
39
-    /**
40
-     * @param Compiler $compiler
41
-     * @param array    $params
42
-     * @param string   $prepend
43
-     * @param string   $append
44
-     * @param string   $type
45
-     *
46
-     * @return string
47
-     */
48
-    public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
49
-    {
50
-        return '';
51
-    }
39
+	/**
40
+	 * @param Compiler $compiler
41
+	 * @param array    $params
42
+	 * @param string   $prepend
43
+	 * @param string   $append
44
+	 * @param string   $type
45
+	 *
46
+	 * @return string
47
+	 */
48
+	public static function preProcessing(Compiler $compiler, array $params, $prepend, $append, $type)
49
+	{
50
+		return '';
51
+	}
52 52
 
53
-    /**
54
-     * @param Compiler $compiler
55
-     * @param array    $params
56
-     * @param string   $prepend
57
-     * @param string   $append
58
-     * @param string   $content
59
-     *
60
-     * @return string
61
-     */
62
-    public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
63
-    {
64
-        return $content;
65
-    }
53
+	/**
54
+	 * @param Compiler $compiler
55
+	 * @param array    $params
56
+	 * @param string   $prepend
57
+	 * @param string   $append
58
+	 * @param string   $content
59
+	 *
60
+	 * @return string
61
+	 */
62
+	public static function postProcessing(Compiler $compiler, array $params, $prepend, $append, $content)
63
+	{
64
+		return $content;
65
+	}
66 66
 }
Please login to merge, or discard this patch.