Code Duplication    Length = 9-9 lines in 2 locations

src/Row.php 2 locations

@@ 138-146 (lines=9) @@
135
	 */
136
	public function getActiveRowProperty(ActiveRow $item, $key)
137
	{
138
		if (preg_match("/^:([a-zA-Z0-9_$]+)\.([a-zA-Z0-9_$]+)(:([a-zA-Z0-9_$]+))?$/", $key, $matches)) {
139
			$relatedTable = $matches[1];
140
			$relatedColumn = $matches[2];
141
			$throughColumn = isset($matches[4]) ? $matches[4] : NULL;
142
143
			$relatedRow = $item->related($relatedTable, $throughColumn)->fetch();
144
145
			return $relatedRow ? $relatedRow->{$relatedColumn} : NULL;
146
		}
147
148
		if (preg_match("/^([a-zA-Z0-9_$]+)\.([a-zA-Z0-9_$]+)(:([a-zA-Z0-9_$]+))?$/", $key, $matches)) {
149
			$referencedTable = $matches[1];
@@ 148-156 (lines=9) @@
145
			return $relatedRow ? $relatedRow->{$relatedColumn} : NULL;
146
		}
147
148
		if (preg_match("/^([a-zA-Z0-9_$]+)\.([a-zA-Z0-9_$]+)(:([a-zA-Z0-9_$]+))?$/", $key, $matches)) {
149
			$referencedTable = $matches[1];
150
			$referencedColumn = $matches[2];
151
			$throughColumn = isset($matches[4]) ? $matches[4] : NULL;
152
153
			$referencedRow = $item->ref($referencedTable, $throughColumn);
154
155
			return $referencedRow ? $referencedRow->{$referencedColumn} : NULL;
156
		}
157
158
		return $item->{$key};
159
	}