Completed
Push — master ( 9414d0...d03e02 )
by Richard
02:32
created
src/Pseudo/Nth.php 1 patch
Braces   +8 added lines, -3 removed lines patch added patch discarded remove patch
@@ -9,7 +9,9 @@  discard block
 block discarded – undo
9 9
 class Nth implements \Transphporm\Pseudo {
10 10
 
11 11
 	public function match($name, $args, \DomElement $element) {
12
-		if ($name !== 'nth-child') return true;
12
+		if ($name !== 'nth-child') {
13
+			return true;
14
+		}
13 15
 
14 16
 		$criteria = $args[0];
15 17
 
@@ -18,8 +20,11 @@  discard block
 block discarded – undo
18 20
 		$pseudo = $tokenizer->getTokens();
19 21
 		$num = end($pseudo)['value'][0]['value'];
20 22
 
21
-		if (is_callable([$this, $criteria])) return $this->$criteria($num);
22
-		else return $num == $criteria;
23
+		if (is_callable([$this, $criteria])) {
24
+			return $this->$criteria($num);
25
+		} else {
26
+			return $num == $criteria;
27
+		}
23 28
 	}
24 29
 
25 30
 	private function odd($num) {
Please login to merge, or discard this patch.
src/Pseudo/Not.php 1 patch
Braces   +6 added lines, -2 removed lines patch added patch discarded remove patch
@@ -16,7 +16,9 @@  discard block
 block discarded – undo
16 16
 	}
17 17
 
18 18
 	public function match($name, $args, \DomElement $element) {
19
-		if ($name !== 'not') return true;
19
+		if ($name !== 'not') {
20
+			return true;
21
+		}
20 22
 		
21 23
 		$xpath = new \DomXpath($element->ownerDocument);
22 24
 		return $this->notElement($args, $xpath, $element);
@@ -29,7 +31,9 @@  discard block
 block discarded – undo
29 31
 			//Find all nodes matched by the expressions in the brackets :not(EXPR)
30 32
 			foreach ($xpath->query($xpathString) as $matchedElement) {
31 33
 				//Check to see whether this node was matched by the not query
32
-				if ($element->isSameNode($matchedElement)) return false;
34
+				if ($element->isSameNode($matchedElement)) {
35
+					return false;
36
+				}
33 37
 			}
34 38
 		}
35 39
 		return true;
Please login to merge, or discard this patch.
src/Property/Display.php 1 patch
Braces   +7 added lines, -3 removed lines patch added patch discarded remove patch
@@ -7,8 +7,12 @@
 block discarded – undo
7 7
 namespace Transphporm\Property;
8 8
 class Display implements \Transphporm\Property {
9 9
 	public function run(array $values, \DomElement $element, array $rules, \Transphporm\Hook\PseudoMatcher $pseudoMatcher, array $properties = []) {
10
-		if ($pseudoMatcher->hasFunction('attr')) $element->removeAttribute($pseudoMatcher->getFuncArgs('attr', $element)[0]);
11
-		else if (strtolower($values[0]) === 'none') $element->setAttribute('transphporm', 'remove');
12
-		else $element->setAttribute('transphporm', 'show');
10
+		if ($pseudoMatcher->hasFunction('attr')) {
11
+			$element->removeAttribute($pseudoMatcher->getFuncArgs('attr', $element)[0]);
12
+		} else if (strtolower($values[0]) === 'none') {
13
+			$element->setAttribute('transphporm', 'remove');
14
+		} else {
15
+			$element->setAttribute('transphporm', 'show');
16
+		}
13 17
 	}
14 18
 }
Please login to merge, or discard this patch.
src/Pseudo/Attribute.php 1 patch
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -14,7 +14,9 @@
 block discarded – undo
14 14
 	}
15 15
 
16 16
 	public function match($name, $args, \DomElement $element) {
17
-		if (!($name === null || in_array($name, ['data', 'iteration', 'root'])))  return true;
17
+		if (!($name === null || in_array($name, ['data', 'iteration', 'root']))) {
18
+			return true;
19
+		}
18 20
 		return $args[0];
19 21
 	}
20 22
 }
Please login to merge, or discard this patch.
src/Property/Content.php 2 patches
Doc Comments   +16 added lines patch added patch discarded remove patch
@@ -28,6 +28,9 @@  discard block
 block discarded – undo
28 28
 		}
29 29
 	}
30 30
 
31
+	/**
32
+	 * @param \DOMElement $element
33
+	 */
31 34
 	private function shouldRun($element) {
32 35
 		do {
33 36
 			if ($element->getAttribute('transphporm') == 'includedtemplate') return false;
@@ -40,6 +43,10 @@  discard block
 block discarded – undo
40 43
 		return (isset($rules['content-mode'])) ? $rules['content-mode'] : 'append';
41 44
 	}
42 45
 
46
+	/**
47
+	 * @param \DOMElement $element
48
+	 * @param \Transphporm\Hook\PseudoMatcher $pseudoMatcher
49
+	 */
43 50
 	private function processPseudo($value, $element, $pseudoMatcher) {
44 51
 		$pseudoContent = ['attr', 'header', 'before', 'after'];
45 52
 		foreach ($pseudoContent as $pseudo) {
@@ -96,6 +103,9 @@  discard block
 block discarded – undo
96 103
 		}
97 104
 	}
98 105
 
106
+	/**
107
+	 * @param \DOMElement $element
108
+	 */
99 109
 	private function replaceContent($element, $content) {
100 110
 		//If this rule was cached, the elements that were added last time need to be removed prior to running the rule again.
101 111
 		foreach ($this->getNode($content, $element->ownerDocument) as $node) {
@@ -104,12 +114,18 @@  discard block
 block discarded – undo
104 114
 		$element->setAttribute('transphporm', 'remove');
105 115
 	}
106 116
 
117
+	/**
118
+	 * @param \DOMElement $element
119
+	 */
107 120
 	private function appendContent($element, $content) {
108 121
 		foreach ($this->getNode($content, $element->ownerDocument) as $node) {
109 122
 			$element->appendChild($node);
110 123
 		}
111 124
 	}
112 125
 
126
+	/**
127
+	 * @param \DOMElement $element
128
+	 */
113 129
 	private function removeAllChildren($element) {
114 130
 		while ($element->hasChildNodes()) $element->removeChild($element->firstChild);
115 131
 	}
Please login to merge, or discard this patch.
Braces   +22 added lines, -11 removed lines patch added patch discarded remove patch
@@ -16,21 +16,28 @@  discard block
 block discarded – undo
16 16
 	}
17 17
 
18 18
 	public function run(array $values, \DomElement $element, array $rules, \Transphporm\Hook\PseudoMatcher $pseudoMatcher, array $properties = []) {
19
-		if (!$this->shouldRun($element)) return false;
19
+		if (!$this->shouldRun($element)) {
20
+			return false;
21
+		}
20 22
 		$values = $this->formatter->format($values, $rules);
21 23
 
22 24
 		if (!$this->processPseudo($values, $element, $pseudoMatcher)) {
23 25
 			//Remove the current contents
24 26
 			$this->removeAllChildren($element);
25 27
 			//Now make a text node
26
-			if ($this->getContentMode($rules) === 'replace') $this->replaceContent($element, $values);
27
-			else $this->appendContent($element, $values);
28
+			if ($this->getContentMode($rules) === 'replace') {
29
+				$this->replaceContent($element, $values);
30
+			} else {
31
+				$this->appendContent($element, $values);
32
+			}
28 33
 		}
29 34
 	}
30 35
 
31 36
 	private function shouldRun($element) {
32 37
 		do {
33
-			if ($element->getAttribute('transphporm') == 'includedtemplate') return false;
38
+			if ($element->getAttribute('transphporm') == 'includedtemplate') {
39
+				return false;
40
+			}
34 41
 		}
35 42
 		while (($element = $element->parentNode) instanceof \DomElement);
36 43
 		return true;
@@ -54,16 +61,18 @@  discard block
 block discarded – undo
54 61
 	private function getNode($node, $document) {
55 62
 		foreach ($node as $n) {
56 63
 			if (is_array($n)) {
57
-				foreach ($this->getNode($n, $document) as $new) yield $new;
58
-			}
59
-			else {
64
+				foreach ($this->getNode($n, $document) as $new) {
65
+					yield $new;
66
+				}
67
+			} else {
60 68
 				if ($n instanceof \DomElement) {
61 69
 					$new = $document->importNode($n, true);
62 70
 					//Removing this might cause problems with caching...
63 71
 					//$new->setAttribute('transphporm', 'added');
64
-				}
65
-				else {
66
-					if ($n instanceof \DomText) $n = $n->nodeValue;
72
+				} else {
73
+					if ($n instanceof \DomText) {
74
+						$n = $n->nodeValue;
75
+					}
67 76
 					$new = $document->createElement('text');
68 77
 
69 78
 					$new->appendChild($document->createTextNode($n));
@@ -111,6 +120,8 @@  discard block
 block discarded – undo
111 120
 	}
112 121
 
113 122
 	private function removeAllChildren($element) {
114
-		while ($element->hasChildNodes()) $element->removeChild($element->firstChild);
123
+		while ($element->hasChildNodes()) {
124
+			$element->removeChild($element->firstChild);
125
+		}
115 126
 	}
116 127
 }
Please login to merge, or discard this patch.
src/Hook/PseudoMatcher.php 1 patch
Braces   +13 added lines, -5 removed lines patch added patch discarded remove patch
@@ -39,27 +39,35 @@
 block discarded – undo
39 39
 		$parts['name'] = $this->getFuncName($tokens);
40 40
 		if ($parts['name'] === null || in_array($parts['name'], ['data', 'iteration', 'root'])) {
41 41
 			$parts['args'] = $this->valueParser->parseTokens($tokens);
42
+		} elseif (isset($tokens[1])) {
43
+			$parts['args'] = $this->valueParser->parseTokens($tokens[1]['value']);
44
+		} else {
45
+			$parts['args'] = [['']];
42 46
 		}
43
-		elseif (isset($tokens[1])) $parts['args'] = $this->valueParser->parseTokens($tokens[1]['value']);
44
-		else $parts['args'] = [['']];
45 47
 		return $parts;
46 48
 	}
47 49
 
48 50
 	private function getFuncName($tokens) {
49
-		if ($tokens[0]['type'] === Tokenizer::NAME) return $tokens[0]['value'];
51
+		if ($tokens[0]['type'] === Tokenizer::NAME) {
52
+			return $tokens[0]['value'];
53
+		}
50 54
 		return null;
51 55
 	}
52 56
 
53 57
 	public function hasFunction($name) {
54 58
 		foreach ($this->pseudo as $tokens) {
55
-			if ($name === $this->getFuncName($tokens)) return true;
59
+			if ($name === $this->getFuncName($tokens)) {
60
+				return true;
61
+			}
56 62
 		}
57 63
 	}
58 64
 
59 65
 	public function getFuncArgs($name) {
60 66
 		foreach ($this->pseudo as $tokens) {
61 67
 			$parts = $this->getFuncParts($tokens);
62
-			if ($name === $parts['name']) return $parts['args'];
68
+			if ($name === $parts['name']) {
69
+				return $parts['args'];
70
+			}
63 71
 		}
64 72
 	}
65 73
 }
Please login to merge, or discard this patch.
src/Parser/Value.php 1 patch
Braces   +22 added lines, -16 removed lines patch added patch discarded remove patch
@@ -50,10 +50,14 @@  discard block
 block discarded – undo
50 50
 		$this->data = new ValueData($data ? $data : $this->baseData);
51 51
 		$this->last = null;
52 52
 
53
-		if (empty($tokens)) return [$data];
53
+		if (empty($tokens)) {
54
+			return [$data];
55
+		}
54 56
 
55 57
 		foreach ($tokens as $token) {
56
-			if ($token['type'] !== Tokenizer::WHITESPACE) $this->{$this->tokenFuncs[$token['type']]}($token);
58
+			if ($token['type'] !== Tokenizer::WHITESPACE) {
59
+				$this->{$this->tokenFuncs[$token['type']]}($token);
60
+			}
57 61
 		}
58 62
 
59 63
 		$this->processLast();
@@ -72,13 +76,15 @@  discard block
 block discarded – undo
72 76
 	//Reads the last selected value from $data regardless if it's an array or object and overrides $this->data with the new value
73 77
 	//Dot moves $data to the next object in $data foo.bar moves the $data pointer from `foo` to `bar`
74 78
 	private function processDot($token) {
75
-		if ($this->last !== null) $this->data->traverse($this->last);
76
-		else {
79
+		if ($this->last !== null) {
80
+			$this->data->traverse($this->last);
81
+		} else {
77 82
 			//When . is not preceeded by anything, treat it as part of the string instead of an operator
78 83
 			// foo.bar is treated as looking up `bar` in `foo` whereas .foo is treated as the string ".foo"
79 84
 			$lastResult = $this->result->pop();
80
-			if ($lastResult) $this->data = new ValueData($lastResult);
81
-			else {
85
+			if ($lastResult) {
86
+				$this->data = new ValueData($lastResult);
87
+			} else {
82 88
 				$this->processString(['value' => '.']);
83 89
 				$this->result->setMode(Tokenizer::CONCAT);
84 90
 			}
@@ -91,9 +97,10 @@  discard block
 block discarded – undo
91 97
 		$parser = new Value($this->baseData, $this->autoLookup);
92 98
 		if ($this->baseData instanceof \Transphporm\Functionset && $this->baseData->hasFunction($this->last)) {
93 99
 			$this->callTransphpormFunctions($token);
94
-		}
95
-		else {
96
-			if ($this->last !== null) $this->data->traverse($this->last);
100
+		} else {
101
+			if ($this->last !== null) {
102
+				$this->data->traverse($this->last);
103
+			}
97 104
 			$this->last = $parser->parseTokens($token['value'], null)[0];
98 105
 		}
99 106
 	}
@@ -113,8 +120,7 @@  discard block
 block discarded – undo
113 120
 	private function processBrackets($token) {
114 121
 		if ($this->baseData instanceof \Transphporm\Functionset && $this->baseData->hasFunction($this->last)) {
115 122
 			$this->callTransphpormFunctions($token);
116
-		}
117
-		else {
123
+		} else {
118 124
 			$this->processNested($token);
119 125
 		}
120 126
 	}
@@ -131,7 +137,9 @@  discard block
 block discarded – undo
131 137
 		foreach ($this->result->getResult() as $i => $value) {
132 138
 			if (is_scalar($value)) {
133 139
 				$val = $this->data->read($value);
134
-				if ($val) $this->result[$i] = $val;
140
+				if ($val) {
141
+					$this->result[$i] = $val;
142
+				}
135 143
 			}
136 144
 		}
137 145
 		$this->last = null;
@@ -143,12 +151,10 @@  discard block
 block discarded – undo
143 151
 			try {
144 152
 				$value = $this->data->extract($this->last, $this->autoLookup);
145 153
 				$this->result->processValue($value);
146
-			}
147
-			catch (\UnexpectedValueException $e) {
154
+			} catch (\UnexpectedValueException $e) {
148 155
 				if (!$this->autoLookup) {
149 156
 					$this->result->processValue($this->last);
150
-				}
151
-				else {
157
+				} else {
152 158
 					$this->result->clear();
153 159
 					$this->result[0] = false;
154 160
 				}
Please login to merge, or discard this patch.
src/Parser/CssToXpath.php 2 patches
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -20,12 +20,12 @@
 block discarded – undo
20 20
 		$this->functionSet = $functionSet;
21 21
 
22 22
 		$this->translators = [
23
-			Tokenizer::WHITESPACE => function($string) use ($prefix) { return '//' . $prefix . $string;	},
24
-			'' => function($string) use ($prefix) { return '/' . $prefix . $string;	},
25
-			Tokenizer::GREATER_THAN => function($string) use ($prefix) { return '/' . $prefix  . $string; },
26
-			Tokenizer::NUM_SIGN => function($string) { return '[@id=\'' . $string . '\']'; },
27
-			Tokenizer::DOT => function($string) { return '[contains(concat(\' \', normalize-space(@class), \' \'), \' ' . $string . ' \')]'; },
28
-			Tokenizer::OPEN_SQUARE_BRACKET => function($string) use ($hash) { return '[' .'php:function(\'\Transphporm\Parser\CssToXpath::processAttr\', \'' . json_encode($string) . '\', ., "' . $hash . '")' . ']';	},
23
+			Tokenizer::WHITESPACE => function($string) use ($prefix) { return '//'.$prefix.$string; },
24
+			'' => function($string) use ($prefix) { return '/'.$prefix.$string; },
25
+			Tokenizer::GREATER_THAN => function($string) use ($prefix) { return '/'.$prefix.$string; },
26
+			Tokenizer::NUM_SIGN => function($string) { return '[@id=\''.$string.'\']'; },
27
+			Tokenizer::DOT => function($string) { return '[contains(concat(\' \', normalize-space(@class), \' \'), \' '.$string.' \')]'; },
28
+			Tokenizer::OPEN_SQUARE_BRACKET => function($string) use ($hash) { return '['.'php:function(\'\Transphporm\Parser\CssToXpath::processAttr\', \''.json_encode($string).'\', ., "'.$hash.'")'.']'; },
29 29
 			//']' => function() {	return ''; }
30 30
 		];
31 31
 	}
Please login to merge, or discard this patch.
Braces   +23 added lines, -11 removed lines patch added patch discarded remove patch
@@ -51,7 +51,9 @@  discard block
 block discarded – undo
51 51
 
52 52
 		$parts = self::$instances[$hash]->splitOnToken($attr, Tokenizer::EQUALS);
53 53
 
54
-		if ($parts[0] === $attr) return $element[0]->getAttribute($valueParser->parseTokens($attr)[0]) !== '';
54
+		if ($parts[0] === $attr) {
55
+			return $element[0]->getAttribute($valueParser->parseTokens($attr)[0]) !== '';
56
+		}
55 57
 
56 58
 		if ($parts[0][count($parts[0])-1]['type'] === Tokenizer::NOT) {
57 59
 			$attr = [
@@ -61,8 +63,7 @@  discard block
 block discarded – undo
61 63
 				['type' => Tokenizer::EQUALS]
62 64
 			];
63 65
 			$attr = array_merge($attr, $parts[1]);
64
-		}
65
-		else {
66
+		} else {
66 67
 			$attr = [
67 68
 				['type' => Tokenizer::NAME, 'value' => 'attr'],
68 69
 				['type' => Tokenizer::OPEN_BRACKET, 'value' => $parts[0]],
@@ -77,8 +78,11 @@  discard block
 block discarded – undo
77 78
 		$splitTokens = [];
78 79
 		$i = 0;
79 80
 		foreach ($tokens as $token) {
80
-			if ($token['type'] === $splitOn) $i++;
81
-			else $splitTokens[$i][] = $token;
81
+			if ($token['type'] === $splitOn) {
82
+				$i++;
83
+			} else {
84
+				$splitTokens[$i][] = $token;
85
+			}
82 86
 		}
83 87
 		return $splitTokens;
84 88
 	}
@@ -95,7 +99,9 @@  discard block
 block discarded – undo
95 99
 				$selector->type = $token['type'];
96 100
 				$selectors[] = $selector;
97 101
 			}
98
-			if (isset($token['value'])) $selectors[count($selectors)-1]->string = $token['value'];
102
+			if (isset($token['value'])) {
103
+				$selectors[count($selectors)-1]->string = $token['value'];
104
+			}
99 105
 		}
100 106
 		return $selectors;
101 107
 
@@ -104,8 +110,9 @@  discard block
 block discarded – undo
104 110
 				$selector = $this->createSelector();
105 111
 				$selector->type = $css[$i];
106 112
 				$selectors[] = $selector;
113
+			} else {
114
+				$selector->string .= $css[$i];
107 115
 			}
108
-			else $selector->string .= $css[$i];
109 116
 		}
110 117
 		return $selectors;
111 118
 	}
@@ -114,15 +121,20 @@  discard block
 block discarded – undo
114 121
 		//$this->css = str_replace([' >', '> '],['>', '>'], trim($css));
115 122
 		foreach ($css as $key => $token) {
116 123
 			if ($token['type'] === Tokenizer::WHITESPACE &&
117
-				(isset($css[$key+1]) && $css[$key+1]['type'] === Tokenizer::GREATER_THAN)) unset($css[$key]);
118
-			else if ($token['type'] === Tokenizer::WHITESPACE &&
119
-				(isset($css[$key-1]) && $css[$key-1]['type'] === Tokenizer::GREATER_THAN)) unset($css[$key]);
124
+				(isset($css[$key+1]) && $css[$key+1]['type'] === Tokenizer::GREATER_THAN)) {
125
+				unset($css[$key]);
126
+			} else if ($token['type'] === Tokenizer::WHITESPACE &&
127
+				(isset($css[$key-1]) && $css[$key-1]['type'] === Tokenizer::GREATER_THAN)) {
128
+				unset($css[$key]);
129
+			}
120 130
 		}
121 131
 		$css = $this->splitOnToken(array_values($css), Tokenizer::COLON)[0];
122 132
 		$selectors = $this->split($css);
123 133
 		$xpath = '/';
124 134
 		foreach ($selectors as $selector) {
125
-			if (isset($this->translators[$selector->type])) $xpath .= $this->translators[$selector->type]($selector->string, $xpath);
135
+			if (isset($this->translators[$selector->type])) {
136
+				$xpath .= $this->translators[$selector->type]($selector->string, $xpath);
137
+			}
126 138
 		}
127 139
 
128 140
 		$xpath = str_replace('/[', '/*[', $xpath);
Please login to merge, or discard this patch.