Passed
Push — develop ( 169afe...f2bd80 )
by Jens
02:39
created
cloudcontrol/library/storage/JsonStorage.php 1 patch
Indentation   +96 added lines, -96 removed lines patch added patch discarded remove patch
@@ -2,19 +2,19 @@  discard block
 block discarded – undo
2 2
 namespace library\storage
3 3
 {
4 4
 
5
-    use library\crypt\Crypt;
6
-    use library\images\ImageResizer;
5
+	use library\crypt\Crypt;
6
+	use library\images\ImageResizer;
7 7
 
8
-    /**
8
+	/**
9 9
 	 * Class JsonStorage
10 10
 	 * @package library\storage
11 11
 	 */
12 12
 	class JsonStorage implements Storage
13 13
 	{
14 14
 		private $storageDir;
15
-        /**
16
-         * @var Repository
17
-         */
15
+		/**
16
+		 * @var Repository
17
+		 */
18 18
 		private $repository;
19 19
 
20 20
 		/**
@@ -76,12 +76,12 @@  discard block
 block discarded – undo
76 76
 			return $return;
77 77
 		}
78 78
 
79
-        /**
80
-         * Get user by slug
81
-         *
82
-         * @param $slug
83
-         * @return array
84
-         */
79
+		/**
80
+		 * Get user by slug
81
+		 *
82
+		 * @param $slug
83
+		 * @return array
84
+		 */
85 85
 		public function getUserBySlug($slug)
86 86
 		{
87 87
 			$return = array();
@@ -97,23 +97,23 @@  discard block
 block discarded – undo
97 97
 			return $return;
98 98
 		}
99 99
 
100
-        /**
101
-         * Get all users
102
-         *
103
-         * @return mixed
104
-         */
100
+		/**
101
+		 * Get all users
102
+		 *
103
+		 * @return mixed
104
+		 */
105 105
 		public function getUsers()
106 106
 		{
107 107
 			return $this->repository->users;
108 108
 		}
109 109
 
110
-        /**
111
-         * Save user
112
-         *
113
-         * @param $slug
114
-         * @param $postValues
115
-         * @throws \Exception
116
-         */
110
+		/**
111
+		 * Save user
112
+		 *
113
+		 * @param $slug
114
+		 * @param $postValues
115
+		 * @throws \Exception
116
+		 */
117 117
 		public function saveUser($slug, $postValues)
118 118
 		{
119 119
 			$userObj = $this->createUserFromPostValues($postValues);
@@ -134,12 +134,12 @@  discard block
 block discarded – undo
134 134
 			$this->save();
135 135
 		}
136 136
 
137
-        /**
138
-         * Add user
139
-         *
140
-         * @param $postValues
141
-         * @throws \Exception
142
-         */
137
+		/**
138
+		 * Add user
139
+		 *
140
+		 * @param $postValues
141
+		 * @throws \Exception
142
+		 */
143 143
 		public function addUser($postValues)
144 144
 		{
145 145
 			$userObj = $this->createUserFromPostValues($postValues);
@@ -148,17 +148,17 @@  discard block
 block discarded – undo
148 148
 			if (!empty($doesItExist)) {
149 149
 				throw new \Exception('Trying to add username that already exists.');
150 150
 			}
151
-            $users = $this->repository->users;
152
-            $users[] = $userObj;
153
-            $this->repository->users = $users;
151
+			$users = $this->repository->users;
152
+			$users[] = $userObj;
153
+			$this->repository->users = $users;
154 154
 			$this->save();
155 155
 		}
156 156
 
157
-        /**
158
-         * Delete user by slug
159
-         * @param $slug
160
-         * @throws \Exception
161
-         */
157
+		/**
158
+		 * Delete user by slug
159
+		 * @param $slug
160
+		 * @throws \Exception
161
+		 */
162 162
 		public function deleteUserBySlug($slug)
163 163
 		{
164 164
 			$userToDelete = $this->getUserBySlug($slug);
@@ -175,12 +175,12 @@  discard block
 block discarded – undo
175 175
 			$this->save();
176 176
 		}
177 177
 
178
-        /**
179
-         * Create user from POST values
180
-         * @param $postValues
181
-         * @return \stdClass
182
-         * @throws \Exception
183
-         */
178
+		/**
179
+		 * Create user from POST values
180
+		 * @param $postValues
181
+		 * @return \stdClass
182
+		 * @throws \Exception
183
+		 */
184 184
 		private function createUserFromPostValues($postValues)
185 185
 		{
186 186
 			if (isset($postValues['username'])) {
@@ -229,40 +229,40 @@  discard block
 block discarded – undo
229 229
 		 */
230 230
 		public function getDocumentBySlug($slug)
231 231
 		{
232
-            $path = '/' . $slug;
232
+			$path = '/' . $slug;
233 233
 			return $this->repository->getDocumentByPath($path);
234 234
 		}
235 235
 
236 236
 		public function saveDocument($postValues)
237 237
 		{
238
-            $oldPath = '/' . $postValues['path'];
238
+			$oldPath = '/' . $postValues['path'];
239 239
 
240
-            $container = $this->getDocumentContainerByPath($oldPath);
241
-            $documentObject = $this->createDocumentFromPostValues($postValues);
242
-            if ($container->path === '/') {
243
-                $newPath = $container->path . $documentObject->slug;
244
-            } else {
245
-                $newPath = $container->path . '/' . $documentObject->slug;
246
-            }
247
-            $documentObject->path = $newPath;
248
-            $this->repository->saveDocument($documentObject);
249
-        }
240
+			$container = $this->getDocumentContainerByPath($oldPath);
241
+			$documentObject = $this->createDocumentFromPostValues($postValues);
242
+			if ($container->path === '/') {
243
+				$newPath = $container->path . $documentObject->slug;
244
+			} else {
245
+				$newPath = $container->path . '/' . $documentObject->slug;
246
+			}
247
+			$documentObject->path = $newPath;
248
+			$this->repository->saveDocument($documentObject);
249
+		}
250 250
 
251 251
 		public function addDocument($postValues)
252 252
 		{
253 253
 			$documentObject = $this->createDocumentFromPostValues($postValues);
254
-            if ($postValues['path'] === '/') {
255
-                $documentObject->path = $postValues['path'] . $documentObject->slug;
256
-            } else {
257
-                $documentObject->path = $postValues['path'] . '/' . $documentObject->slug;
258
-            }
254
+			if ($postValues['path'] === '/') {
255
+				$documentObject->path = $postValues['path'] . $documentObject->slug;
256
+			} else {
257
+				$documentObject->path = $postValues['path'] . '/' . $documentObject->slug;
258
+			}
259 259
 
260
-            $this->repository->saveDocument($documentObject);
260
+			$this->repository->saveDocument($documentObject);
261 261
 		}
262 262
 
263 263
 		public function deleteDocumentBySlug($slug)
264 264
 		{
265
-            $path = '/' . $slug;
265
+			$path = '/' . $slug;
266 266
 			$this->repository->deleteDocumentByPath($path);
267 267
 		}
268 268
 
@@ -313,13 +313,13 @@  discard block
 block discarded – undo
313 313
 							$brickArray[] = $brickObj;
314 314
 						}
315 315
 
316
-                        $bricks = $documentObj->bricks;
316
+						$bricks = $documentObj->bricks;
317 317
 						$bricks[$brickSlug] = $brickArray;
318
-                        $documentObj->bricks = $bricks;
318
+						$documentObj->bricks = $bricks;
319 319
 					} else {
320
-                        $bricks = $documentObj->bricks;
320
+						$bricks = $documentObj->bricks;
321 321
 						$bricks[$brickSlug] = $brick;
322
-                        $documentObj->bricks = $bricks;
322
+						$documentObj->bricks = $bricks;
323 323
 					}
324 324
 				}
325 325
 			}
@@ -330,9 +330,9 @@  discard block
 block discarded – undo
330 330
 						$brickObj = new \stdClass();
331 331
 						$brickObj->type = $brickTypeSlug;
332 332
 						$brickObj->fields = $brickContent;
333
-                        $dynamicBricks = $documentObj->dynamicBricks;
333
+						$dynamicBricks = $documentObj->dynamicBricks;
334 334
 						$dynamicBricks[] = $brickObj;
335
-                        $documentObj->dynamicBricks = $dynamicBricks;
335
+						$documentObj->dynamicBricks = $dynamicBricks;
336 336
 					}
337 337
 				}
338 338
 			}
@@ -348,13 +348,13 @@  discard block
 block discarded – undo
348 348
 		 */
349 349
 		public function addDocumentFolder($postValues)
350 350
 		{
351
-            $documentFolderObject = $this->createDocumentFolderFromPostValues($postValues);
352
-            if ($postValues['path'] === '/') {
353
-                $documentFolderObject->path = $postValues['path'] . $documentFolderObject->slug;
354
-            } else {
355
-                $documentFolderObject->path = $postValues['path'] . '/' . $documentFolderObject->slug;
356
-            }
357
-            $this->repository->saveDocument($documentFolderObject);
351
+			$documentFolderObject = $this->createDocumentFolderFromPostValues($postValues);
352
+			if ($postValues['path'] === '/') {
353
+				$documentFolderObject->path = $postValues['path'] . $documentFolderObject->slug;
354
+			} else {
355
+				$documentFolderObject->path = $postValues['path'] . '/' . $documentFolderObject->slug;
356
+			}
357
+			$this->repository->saveDocument($documentFolderObject);
358 358
 		}
359 359
 
360 360
 		/**
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
 		 */
367 367
 		public function deleteDocumentFolderBySlug($slug)
368 368
 		{
369
-            $path = '/' . $slug;
369
+			$path = '/' . $slug;
370 370
 			$this->repository->deleteDocumentByPath($path);
371 371
 		}
372 372
 
@@ -380,7 +380,7 @@  discard block
 block discarded – undo
380 380
 		 */
381 381
 		public function getDocumentFolderBySlug($slug)
382 382
 		{
383
-            $path = '/' . $slug;
383
+			$path = '/' . $slug;
384 384
 			return $this->repository->getDocumentByPath($path);
385 385
 		}
386 386
 
@@ -393,7 +393,7 @@  discard block
 block discarded – undo
393 393
 		 */
394 394
 		public function saveDocumentFolder($postValues)
395 395
 		{
396
-            $this->addDocumentFolder($postValues);
396
+			$this->addDocumentFolder($postValues);
397 397
 		}
398 398
 
399 399
 		/**
@@ -406,7 +406,7 @@  discard block
 block discarded – undo
406 406
 		 */
407 407
 		private function getDocumentContainerByPath($path)
408 408
 		{
409
-            return $this->repository->getDocumentContainerByPath($path);
409
+			return $this->repository->getDocumentContainerByPath($path);
410 410
 		}
411 411
 
412 412
 		/**
@@ -610,9 +610,9 @@  discard block
 block discarded – undo
610 610
 				$imageObject->size = $postValues['size'];
611 611
 				$imageObject->set = $fileNames;
612 612
 
613
-                $images = $this->repository->images;
613
+				$images = $this->repository->images;
614 614
 				$images[] = $imageObject;
615
-                $this->repository->images = $images;
615
+				$this->repository->images = $images;
616 616
 
617 617
 				$this->save();
618 618
 			} else {
@@ -647,7 +647,7 @@  discard block
 block discarded – undo
647 647
 		/**
648 648
 		 * @param $filename
649 649
 		 * @return null
650
-         */
650
+		 */
651 651
 		public function getImageByName($filename)
652 652
 		{
653 653
 			$images = $this->getImages();
@@ -698,9 +698,9 @@  discard block
 block discarded – undo
698 698
 				$file->type = $postValues['type'];
699 699
 				$file->size = $postValues['size'];
700 700
 
701
-                $files = $this->repository->files;
701
+				$files = $this->repository->files;
702 702
 				$files[] = $file;
703
-                $this->repository->files = $files;
703
+				$this->repository->files = $files;
704 704
 				$this->save();
705 705
 			} else {
706 706
 				throw new \Exception('Error moving uploaded file');
@@ -739,7 +739,7 @@  discard block
 block discarded – undo
739 739
 		/**
740 740
 		 * @param $filename
741 741
 		 * @return null
742
-         */
742
+		 */
743 743
 		public function getFileByName($filename)
744 744
 		{
745 745
 			$files = $this->getFiles();
@@ -754,7 +754,7 @@  discard block
 block discarded – undo
754 754
 		/**
755 755
 		 * @param $filename
756 756
 		 * @throws \Exception
757
-         */
757
+		 */
758 758
 		public function deleteFileByName($filename)
759 759
 		{
760 760
 			$destinationPath = realpath(__DIR__ . '/../../www/files/');
@@ -799,9 +799,9 @@  discard block
 block discarded – undo
799 799
 		{
800 800
 			$documentTypeObject = $this->createDocumentTypeFromPostValues($postValues);
801 801
 
802
-            $documentTypes = $this->repository->documentTypes;
803
-            $documentTypes[] = $documentTypeObject;
804
-            $this->repository->documentTypes = $documentTypes;
802
+			$documentTypes = $this->repository->documentTypes;
803
+			$documentTypes[] = $documentTypeObject;
804
+			$this->repository->documentTypes = $documentTypes;
805 805
 
806 806
 			$this->save();
807 807
 		}
@@ -947,9 +947,9 @@  discard block
 block discarded – undo
947 947
 		{
948 948
 			$brickObject = $this->createBrickFromPostValues($postValues);
949 949
 
950
-            $bricks = $this->repository->bricks;
951
-            $bricks[] = $brickObject;
952
-            $this->repository->bricks = $bricks;
950
+			$bricks = $this->repository->bricks;
951
+			$bricks[] = $brickObject;
952
+			$this->repository->bricks = $bricks;
953 953
 
954 954
 			$this->save();
955 955
 		}
@@ -1154,9 +1154,9 @@  discard block
 block discarded – undo
1154 1154
 		{
1155 1155
 			$imageSetObject = $this->createImageSetFromPostValues($postValues);
1156 1156
 
1157
-            $imageSet = $this->repository->imageSet;
1158
-            $imageSet[] = $imageSetObject;
1159
-            $this->repository->imageSet = $imageSet;
1157
+			$imageSet = $this->repository->imageSet;
1158
+			$imageSet[] = $imageSetObject;
1159
+			$this->repository->imageSet = $imageSet;
1160 1160
 
1161 1161
 			$this->save();
1162 1162
 		}
Please login to merge, or discard this patch.
cloudcontrol/library/cc/errorhandler.php 1 patch
Indentation   +114 added lines, -114 removed lines patch added patch discarded remove patch
@@ -31,11 +31,11 @@  discard block
 block discarded – undo
31 31
  */
32 32
 function shutdownHandler () {
33 33
 	$error = error_get_last(); 
34
-    if (isset($error['type'], $error['message'], $error['file'], $error['line'])) { 
35
-        errorHandler($error['type'],$error['message'],$error['file'],$error['line']);
36
-    }elseif ($error['type'] == 1) {
37
-        dump($error);
38
-    }
34
+	if (isset($error['type'], $error['message'], $error['file'], $error['line'])) { 
35
+		errorHandler($error['type'],$error['message'],$error['file'],$error['line']);
36
+	}elseif ($error['type'] == 1) {
37
+		dump($error);
38
+	}
39 39
 }
40 40
 
41 41
 /**
@@ -49,28 +49,28 @@  discard block
 block discarded – undo
49 49
 	$jsonErrorNr = json_last_error();
50 50
 	$errstr = '';
51 51
 	switch ($jsonErrorNr) {
52
-        case JSON_ERROR_NONE:
53
-            $errstr .= ' - No errors' . PHP_EOL;
54
-        break;
55
-        case JSON_ERROR_DEPTH:
56
-            $errstr .= ' - Maximum stack depth exceeded' . PHP_EOL;
57
-        break;
58
-        case JSON_ERROR_STATE_MISMATCH:
59
-            $errstr .= ' - Underflow or the modes mismatch' . PHP_EOL;
60
-        break;
61
-        case JSON_ERROR_CTRL_CHAR:
62
-            $errstr .= ' - Unexpected control character found' . PHP_EOL;
63
-        break;
64
-        case JSON_ERROR_SYNTAX:
65
-            $errstr .= ' - Syntax error, malformed JSON' . PHP_EOL;
66
-        break;
67
-        case JSON_ERROR_UTF8:
68
-            $errstr .= ' - Malformed UTF-8 characters, possibly incorrectly encoded' . PHP_EOL;
69
-        break;
70
-        default:
71
-            $errstr = ' - Unknown error' . PHP_EOL;
72
-        break;
73
-    }
52
+		case JSON_ERROR_NONE:
53
+			$errstr .= ' - No errors' . PHP_EOL;
54
+		break;
55
+		case JSON_ERROR_DEPTH:
56
+			$errstr .= ' - Maximum stack depth exceeded' . PHP_EOL;
57
+		break;
58
+		case JSON_ERROR_STATE_MISMATCH:
59
+			$errstr .= ' - Underflow or the modes mismatch' . PHP_EOL;
60
+		break;
61
+		case JSON_ERROR_CTRL_CHAR:
62
+			$errstr .= ' - Unexpected control character found' . PHP_EOL;
63
+		break;
64
+		case JSON_ERROR_SYNTAX:
65
+			$errstr .= ' - Syntax error, malformed JSON' . PHP_EOL;
66
+		break;
67
+		case JSON_ERROR_UTF8:
68
+			$errstr .= ' - Malformed UTF-8 characters, possibly incorrectly encoded' . PHP_EOL;
69
+		break;
70
+		default:
71
+			$errstr = ' - Unknown error' . PHP_EOL;
72
+		break;
73
+	}
74 74
 	errorHandler ($jsonErrorNr, $errstr, $file, $line);
75 75
 }
76 76
 
@@ -85,104 +85,104 @@  discard block
 block discarded – undo
85 85
  * @param string $httpHeader
86 86
  */
87 87
 function renderError ($message='', $file='', $line='', $code=0, $trace=array(), $httpHeader = 'HTTP/1.0 500 Internal Server Error') {
88
-    if (ob_get_contents()) ob_end_clean();
88
+	if (ob_get_contents()) ob_end_clean();
89 89
 
90
-    if (canShowError()) {
91
-        $file_lines = file_exists($file) ? file($file) : array();
92
-        $range = ($line - 15) < 0 ? range(1, 30) : range($line - 15, $line + 15);
93
-        $lines = array();
90
+	if (canShowError()) {
91
+		$file_lines = file_exists($file) ? file($file) : array();
92
+		$range = ($line - 15) < 0 ? range(1, 30) : range($line - 15, $line + 15);
93
+		$lines = array();
94 94
 
95
-        foreach ($range as $line_number) {
96
-            if(isset($file_lines[$line_number-1])) {
97
-                $lines[$line_number] = $file_lines[$line_number-1];
98
-            }
99
-        }
95
+		foreach ($range as $line_number) {
96
+			if(isset($file_lines[$line_number-1])) {
97
+				$lines[$line_number] = $file_lines[$line_number-1];
98
+			}
99
+		}
100 100
 
101
-        $error = array(
102
-            'message' 		=> $message,
103
-            'file' 			=> $file,
104
-            'line' 			=> $line,
105
-            'code' 			=> $code,
106
-            'lines' 		=> $lines,
107
-            'trace' 		=> $trace,
108
-            'httpHeader' 	=> $httpHeader,
109
-        );
101
+		$error = array(
102
+			'message' 		=> $message,
103
+			'file' 			=> $file,
104
+			'line' 			=> $line,
105
+			'code' 			=> $code,
106
+			'lines' 		=> $lines,
107
+			'trace' 		=> $trace,
108
+			'httpHeader' 	=> $httpHeader,
109
+		);
110 110
 
111
-        if (PHP_SAPI === 'cli') {
112
-            renderCliException($message, $file, $line, $trace, $lines);
113
-        }
111
+		if (PHP_SAPI === 'cli') {
112
+			renderCliException($message, $file, $line, $trace, $lines);
113
+		}
114 114
 
115
-        if (file_exists(realpath(__DIR__) . '/errorviewdetailed.php')) {
116
-            header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
117
-            include(realpath(__DIR__) . '/errorviewdetailed.php');
118
-        } else {
119
-            header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
120
-            header('Content-type: application/json');
121
-            die(json_encode($error));
122
-        }
123
-        exit;
124
-    } else {
125
-        header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
126
-        header('X-Error-Message: ' . $message);
127
-        header('X-Error-File: ' . $file);
128
-        header('X-Error-Line: ' . $line);
129
-        if (file_exists(realpath(__DIR__) . '/errorviewcompact.php')) {
130
-            include(realpath(__DIR__) . '/errorviewcompact.php');
131
-        } else {
132
-            header('Content-type: application/json');
133
-            die(json_encode('An error occured.'));
134
-        }
135
-    }
115
+		if (file_exists(realpath(__DIR__) . '/errorviewdetailed.php')) {
116
+			header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
117
+			include(realpath(__DIR__) . '/errorviewdetailed.php');
118
+		} else {
119
+			header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
120
+			header('Content-type: application/json');
121
+			die(json_encode($error));
122
+		}
123
+		exit;
124
+	} else {
125
+		header($_SERVER['SERVER_PROTOCOL'] . $httpHeader, true);
126
+		header('X-Error-Message: ' . $message);
127
+		header('X-Error-File: ' . $file);
128
+		header('X-Error-Line: ' . $line);
129
+		if (file_exists(realpath(__DIR__) . '/errorviewcompact.php')) {
130
+			include(realpath(__DIR__) . '/errorviewcompact.php');
131
+		} else {
132
+			header('Content-type: application/json');
133
+			die(json_encode('An error occured.'));
134
+		}
135
+	}
136 136
 }
137 137
 
138 138
 function canShowError()
139 139
 {
140
-    if (PHP_SAPI === 'cli') {
141
-        return true;
142
-    }
143
-    if (file_exists('../config.json') && !isset($_SESSION['cloudcontrol'])) {
144
-        $config = file_get_contents('../config.json');
145
-        $config = json_decode($config);
146
-        if (isset($config->showErrorsToAll)) {
147
-            return $config->showErrorsToAll;
148
-        }
149
-    } else {
150
-        return true;
151
-    }
140
+	if (PHP_SAPI === 'cli') {
141
+		return true;
142
+	}
143
+	if (file_exists('../config.json') && !isset($_SESSION['cloudcontrol'])) {
144
+		$config = file_get_contents('../config.json');
145
+		$config = json_decode($config);
146
+		if (isset($config->showErrorsToAll)) {
147
+			return $config->showErrorsToAll;
148
+		}
149
+	} else {
150
+		return true;
151
+	}
152 152
 }
153 153
 
154 154
 function renderCliException($message, $file, $line, $trace, $lines)
155 155
 {
156
-    echo PHP_EOL;
157
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
158
-    echo '| THE FOLLOWING ERROR OCCURED                                                                                                                  |' . PHP_EOL;
159
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
160
-    echo PHP_EOL;
161
-    echo '  ' . $message . PHP_EOL;
162
-    echo PHP_EOL;
163
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
164
-    echo '| IN FILE                                                                                                                                      |' . PHP_EOL;
165
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
166
-    echo PHP_EOL;
167
-    echo '  ' . $file . ':' . $line . PHP_EOL;
168
-    echo PHP_EOL;
169
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
170
-    echo '| CONTENTS OF THE FILE                                                                                                                         |' . PHP_EOL;
171
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
172
-    echo PHP_EOL;
173
-    foreach($lines as $nr => $currentLine) {
174
-        echo ($nr == $line ? '* ' : '  ' ) . str_pad($nr, 3, "0", STR_PAD_LEFT) . ' ' . $currentLine;
175
-    }
176
-    echo PHP_EOL;
177
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
178
-    echo '| STACK TRACE                                                                                                                                  |' . PHP_EOL;
179
-    echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
180
-    foreach($trace as $row) {
181
-        echo (isset($row['file']) ? basename($row['file']) : '') . ':'
182
-            . (isset($row['line']) ? $row['line'] : '') . "\t\t\t"
183
-            . (isset($row['class']) ? $row['class'] : ' ') . "\t\t\t"
184
-            . (isset($row['type']) ? $row['type'] : ' ') . "\t\t\t"
185
-            . (isset($row['function']) ? $row['function'] : ' ') . PHP_EOL;
186
-    }
187
-    exit;
156
+	echo PHP_EOL;
157
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
158
+	echo '| THE FOLLOWING ERROR OCCURED                                                                                                                  |' . PHP_EOL;
159
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
160
+	echo PHP_EOL;
161
+	echo '  ' . $message . PHP_EOL;
162
+	echo PHP_EOL;
163
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
164
+	echo '| IN FILE                                                                                                                                      |' . PHP_EOL;
165
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
166
+	echo PHP_EOL;
167
+	echo '  ' . $file . ':' . $line . PHP_EOL;
168
+	echo PHP_EOL;
169
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
170
+	echo '| CONTENTS OF THE FILE                                                                                                                         |' . PHP_EOL;
171
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
172
+	echo PHP_EOL;
173
+	foreach($lines as $nr => $currentLine) {
174
+		echo ($nr == $line ? '* ' : '  ' ) . str_pad($nr, 3, "0", STR_PAD_LEFT) . ' ' . $currentLine;
175
+	}
176
+	echo PHP_EOL;
177
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
178
+	echo '| STACK TRACE                                                                                                                                  |' . PHP_EOL;
179
+	echo '------------------------------------------------------------------------------------------------------------------------------------------------' . PHP_EOL;
180
+	foreach($trace as $row) {
181
+		echo (isset($row['file']) ? basename($row['file']) : '') . ':'
182
+			. (isset($row['line']) ? $row['line'] : '') . "\t\t\t"
183
+			. (isset($row['class']) ? $row['class'] : ' ') . "\t\t\t"
184
+			. (isset($row['type']) ? $row['type'] : ' ') . "\t\t\t"
185
+			. (isset($row['function']) ? $row['function'] : ' ') . PHP_EOL;
186
+	}
187
+	exit;
188 188
 }
189 189
\ No newline at end of file
Please login to merge, or discard this patch.
cloudcontrol/library/storage/Repository.php 1 patch
Indentation   +353 added lines, -353 removed lines patch added patch discarded remove patch
@@ -21,227 +21,227 @@  discard block
 block discarded – undo
21 21
  */
22 22
 class Repository
23 23
 {
24
-    protected $storagePath;
25
-
26
-    protected $fileBasedSubsets = array('sitemap', 'applicationComponents', 'documentTypes', 'bricks', 'imageSet', 'images', 'files', 'users');
27
-
28
-    protected $sitemap;
29
-    protected $sitemapChanges = false;
30
-
31
-    protected $applicationComponents;
32
-    protected $applicationComponentsChanges = false;
33
-
34
-    protected $documentTypes;
35
-    protected $documentTypesChanges = false;
36
-
37
-    protected $bricks;
38
-    protected $bricksChanges = false;
39
-
40
-    protected $imageSet;
41
-    protected $imageSetChanges = false;
42
-
43
-    protected $images;
44
-    protected $imagesChanges = false;
45
-
46
-    protected $files;
47
-    protected $filesChanges = false;
48
-
49
-    protected $users;
50
-    protected $usersChanges = false;
51
-
52
-    protected $contentDbHandle;
53
-
54
-    /**
55
-     * Repository constructor.
56
-     * @param $storagePath
57
-     * @throws \Exception
58
-     */
59
-    public function __construct($storagePath)
60
-    {
61
-        $storagePath = realpath($storagePath);
62
-        if (is_dir($storagePath) && $storagePath !== false) {
63
-            $this->storagePath = $storagePath;
64
-        } else {
65
-            throw new \Exception('Repository not yet initialized.');
66
-        }
67
-    }
68
-
69
-    /**
70
-     * Creates the folder in which to create all storage related files
71
-     *
72
-     * @param $storagePath
73
-     * @return bool
74
-     */
75
-    public static function create($storagePath)
76
-    {
77
-        return mkdir($storagePath);
78
-    }
79
-
80
-    /**
81
-     * Initiates default storage
82
-     * @throws \Exception
83
-     */
84
-    public function init()
85
-    {
86
-        $storageDefaultPath = realpath('../library/cc/install/_storage.json');
87
-        $contentSqlPath = realpath('../library/cc/install/content.sql');
88
-
89
-        $this->initConfigStorage($storageDefaultPath);
90
-        $this->initContentDb($contentSqlPath);
91
-
92
-        $this->save();
93
-    }
94
-
95
-    /**
96
-     * Load filebased subset and return it's contents
97
-     *
98
-     * @param $name
99
-     * @return mixed|string
100
-     * @throws \Exception
101
-     */
102
-    public function __get($name)
103
-    {
104
-        if (isset($this->$name)) {
105
-            if (in_array($name, $this->fileBasedSubsets)) {
106
-                return $this->$name;
107
-            } else {
108
-                throw new \Exception('Trying to get undefined property from Repository: ' . $name);
109
-            }
110
-        } else {
111
-            if (in_array($name, $this->fileBasedSubsets)) {
112
-                return $this->loadSubset($name);
113
-            } else {
114
-                throw new \Exception('Trying to get undefined property from Repository: ' . $name);
115
-            }
116
-        }
117
-    }
118
-
119
-    /**
120
-     * Set filebased subset contents
121
-     * @param $name
122
-     * @param $value
123
-     * @throws \Exception
124
-     */
125
-    public function __set($name, $value)
126
-    {
127
-        if (in_array($name, $this->fileBasedSubsets)) {
128
-            $this->$name = $value;
129
-            $changes = $name . 'Changes';
130
-            $this->$changes = true;
131
-        } else {
132
-            throw new \Exception('Trying to persist unknown subset in repository: ' . $name . ' <br /><pre>' . print_r($value, true) . '</pre>');
133
-        }
134
-    }
135
-
136
-    /**
137
-     * Persist all subsets
138
-     */
139
-    public function save()
140
-    {
141
-        $this->sitemapChanges ? $this->saveSubset('sitemap') : null;
142
-        $this->applicationComponentsChanges ? $this->saveSubset('applicationComponents') : null;
143
-        $this->documentTypesChanges ? $this->saveSubset('documentTypes') : null;
144
-        $this->bricksChanges ? $this->saveSubset('bricks') : null;
145
-        $this->imageSetChanges ? $this->saveSubset('imageSet') : null;
146
-        $this->imagesChanges ? $this->saveSubset('images') : null;
147
-        $this->filesChanges ? $this->saveSubset('files') : null;
148
-        $this->usersChanges ? $this->saveSubset('users') : null;
149
-    }
150
-
151
-    /**
152
-     * Persist subset to disk
153
-     * @param $subset
154
-     */
155
-    protected function saveSubset($subset)
156
-    {
157
-        $json = json_encode($this->$subset);
158
-        $subsetStoragePath = $this->storagePath . DIRECTORY_SEPARATOR . $subset . '.json';
159
-        file_put_contents($subsetStoragePath, $json);
160
-        $changes = $subset . 'Changes';
161
-        $this->$changes = false;
162
-    }
163
-
164
-    /**
165
-     * Load subset from disk
166
-     * @param $subset
167
-     * @return mixed|string
168
-     */
169
-    protected function loadSubset($subset)
170
-    {
171
-        $subsetStoragePath = $this->storagePath . DIRECTORY_SEPARATOR . $subset . '.json';
172
-        $json = file_get_contents($subsetStoragePath);
173
-        $json = json_decode($json);
174
-        $this->$subset = $json;
175
-        return $json;
176
-    }
177
-
178
-    /**
179
-     * @param $contentSqlPath
180
-     */
181
-    protected function initContentDb($contentSqlPath)
182
-    {
183
-        $db = $this->getContentDbHandle();
184
-        $sql = file_get_contents($contentSqlPath);
185
-        $db->exec($sql);
186
-    }
187
-
188
-    /**
189
-     * @param $storageDefaultPath
190
-     */
191
-    protected function initConfigStorage($storageDefaultPath)
192
-    {
193
-        $json = file_get_contents($storageDefaultPath);
194
-        $json = json_decode($json);
195
-        $this->sitemap = $json->sitemap;
196
-        $this->sitemapChanges = true;
197
-        $this->applicationComponents = $json->applicationComponents;
198
-        $this->applicationComponentsChanges = true;
199
-        $this->documentTypes = $json->documentTypes;
200
-        $this->documentTypesChanges = true;
201
-        $this->bricks = $json->bricks;
202
-        $this->bricksChanges = true;
203
-        $this->imageSet = $json->imageSet;
204
-        $this->imageSetChanges = true;
205
-        $this->images = $json->images;
206
-        $this->imagesChanges = true;
207
-        $this->files = $json->files;
208
-        $this->filesChanges = true;
209
-        $this->users = $json->users;
210
-        $this->usersChanges = true;
211
-    }
212
-
213
-    /**
214
-     * @return \PDO
215
-     */
216
-    public function getContentDbHandle()
217
-    {
218
-        if ($this->contentDbHandle === null) {
219
-            $this->contentDbHandle = new \PDO('sqlite:' . $this->storagePath . DIRECTORY_SEPARATOR . 'content.db');
220
-        }
221
-        return $this->contentDbHandle;
222
-    }
223
-
224
-    /**
225
-     * Get all documents
226
-     * @return array
227
-     */
228
-    public function getDocuments()
229
-    {
230
-        return $this->getDocumentsByPath('/');
231
-    }
232
-
233
-    /**
234
-     * Get all documents and folders in a certain path
235
-     * @param $folderPath
236
-     * @return array
237
-     * @throws \Exception
238
-     */
239
-    public function getDocumentsByPath($folderPath)
240
-    {
241
-        $db = $this->getContentDbHandle();
242
-        $folderPathWithWildcard = $folderPath . '%';
243
-
244
-        $stmt = $this->getDbStatement('
24
+	protected $storagePath;
25
+
26
+	protected $fileBasedSubsets = array('sitemap', 'applicationComponents', 'documentTypes', 'bricks', 'imageSet', 'images', 'files', 'users');
27
+
28
+	protected $sitemap;
29
+	protected $sitemapChanges = false;
30
+
31
+	protected $applicationComponents;
32
+	protected $applicationComponentsChanges = false;
33
+
34
+	protected $documentTypes;
35
+	protected $documentTypesChanges = false;
36
+
37
+	protected $bricks;
38
+	protected $bricksChanges = false;
39
+
40
+	protected $imageSet;
41
+	protected $imageSetChanges = false;
42
+
43
+	protected $images;
44
+	protected $imagesChanges = false;
45
+
46
+	protected $files;
47
+	protected $filesChanges = false;
48
+
49
+	protected $users;
50
+	protected $usersChanges = false;
51
+
52
+	protected $contentDbHandle;
53
+
54
+	/**
55
+	 * Repository constructor.
56
+	 * @param $storagePath
57
+	 * @throws \Exception
58
+	 */
59
+	public function __construct($storagePath)
60
+	{
61
+		$storagePath = realpath($storagePath);
62
+		if (is_dir($storagePath) && $storagePath !== false) {
63
+			$this->storagePath = $storagePath;
64
+		} else {
65
+			throw new \Exception('Repository not yet initialized.');
66
+		}
67
+	}
68
+
69
+	/**
70
+	 * Creates the folder in which to create all storage related files
71
+	 *
72
+	 * @param $storagePath
73
+	 * @return bool
74
+	 */
75
+	public static function create($storagePath)
76
+	{
77
+		return mkdir($storagePath);
78
+	}
79
+
80
+	/**
81
+	 * Initiates default storage
82
+	 * @throws \Exception
83
+	 */
84
+	public function init()
85
+	{
86
+		$storageDefaultPath = realpath('../library/cc/install/_storage.json');
87
+		$contentSqlPath = realpath('../library/cc/install/content.sql');
88
+
89
+		$this->initConfigStorage($storageDefaultPath);
90
+		$this->initContentDb($contentSqlPath);
91
+
92
+		$this->save();
93
+	}
94
+
95
+	/**
96
+	 * Load filebased subset and return it's contents
97
+	 *
98
+	 * @param $name
99
+	 * @return mixed|string
100
+	 * @throws \Exception
101
+	 */
102
+	public function __get($name)
103
+	{
104
+		if (isset($this->$name)) {
105
+			if (in_array($name, $this->fileBasedSubsets)) {
106
+				return $this->$name;
107
+			} else {
108
+				throw new \Exception('Trying to get undefined property from Repository: ' . $name);
109
+			}
110
+		} else {
111
+			if (in_array($name, $this->fileBasedSubsets)) {
112
+				return $this->loadSubset($name);
113
+			} else {
114
+				throw new \Exception('Trying to get undefined property from Repository: ' . $name);
115
+			}
116
+		}
117
+	}
118
+
119
+	/**
120
+	 * Set filebased subset contents
121
+	 * @param $name
122
+	 * @param $value
123
+	 * @throws \Exception
124
+	 */
125
+	public function __set($name, $value)
126
+	{
127
+		if (in_array($name, $this->fileBasedSubsets)) {
128
+			$this->$name = $value;
129
+			$changes = $name . 'Changes';
130
+			$this->$changes = true;
131
+		} else {
132
+			throw new \Exception('Trying to persist unknown subset in repository: ' . $name . ' <br /><pre>' . print_r($value, true) . '</pre>');
133
+		}
134
+	}
135
+
136
+	/**
137
+	 * Persist all subsets
138
+	 */
139
+	public function save()
140
+	{
141
+		$this->sitemapChanges ? $this->saveSubset('sitemap') : null;
142
+		$this->applicationComponentsChanges ? $this->saveSubset('applicationComponents') : null;
143
+		$this->documentTypesChanges ? $this->saveSubset('documentTypes') : null;
144
+		$this->bricksChanges ? $this->saveSubset('bricks') : null;
145
+		$this->imageSetChanges ? $this->saveSubset('imageSet') : null;
146
+		$this->imagesChanges ? $this->saveSubset('images') : null;
147
+		$this->filesChanges ? $this->saveSubset('files') : null;
148
+		$this->usersChanges ? $this->saveSubset('users') : null;
149
+	}
150
+
151
+	/**
152
+	 * Persist subset to disk
153
+	 * @param $subset
154
+	 */
155
+	protected function saveSubset($subset)
156
+	{
157
+		$json = json_encode($this->$subset);
158
+		$subsetStoragePath = $this->storagePath . DIRECTORY_SEPARATOR . $subset . '.json';
159
+		file_put_contents($subsetStoragePath, $json);
160
+		$changes = $subset . 'Changes';
161
+		$this->$changes = false;
162
+	}
163
+
164
+	/**
165
+	 * Load subset from disk
166
+	 * @param $subset
167
+	 * @return mixed|string
168
+	 */
169
+	protected function loadSubset($subset)
170
+	{
171
+		$subsetStoragePath = $this->storagePath . DIRECTORY_SEPARATOR . $subset . '.json';
172
+		$json = file_get_contents($subsetStoragePath);
173
+		$json = json_decode($json);
174
+		$this->$subset = $json;
175
+		return $json;
176
+	}
177
+
178
+	/**
179
+	 * @param $contentSqlPath
180
+	 */
181
+	protected function initContentDb($contentSqlPath)
182
+	{
183
+		$db = $this->getContentDbHandle();
184
+		$sql = file_get_contents($contentSqlPath);
185
+		$db->exec($sql);
186
+	}
187
+
188
+	/**
189
+	 * @param $storageDefaultPath
190
+	 */
191
+	protected function initConfigStorage($storageDefaultPath)
192
+	{
193
+		$json = file_get_contents($storageDefaultPath);
194
+		$json = json_decode($json);
195
+		$this->sitemap = $json->sitemap;
196
+		$this->sitemapChanges = true;
197
+		$this->applicationComponents = $json->applicationComponents;
198
+		$this->applicationComponentsChanges = true;
199
+		$this->documentTypes = $json->documentTypes;
200
+		$this->documentTypesChanges = true;
201
+		$this->bricks = $json->bricks;
202
+		$this->bricksChanges = true;
203
+		$this->imageSet = $json->imageSet;
204
+		$this->imageSetChanges = true;
205
+		$this->images = $json->images;
206
+		$this->imagesChanges = true;
207
+		$this->files = $json->files;
208
+		$this->filesChanges = true;
209
+		$this->users = $json->users;
210
+		$this->usersChanges = true;
211
+	}
212
+
213
+	/**
214
+	 * @return \PDO
215
+	 */
216
+	public function getContentDbHandle()
217
+	{
218
+		if ($this->contentDbHandle === null) {
219
+			$this->contentDbHandle = new \PDO('sqlite:' . $this->storagePath . DIRECTORY_SEPARATOR . 'content.db');
220
+		}
221
+		return $this->contentDbHandle;
222
+	}
223
+
224
+	/**
225
+	 * Get all documents
226
+	 * @return array
227
+	 */
228
+	public function getDocuments()
229
+	{
230
+		return $this->getDocumentsByPath('/');
231
+	}
232
+
233
+	/**
234
+	 * Get all documents and folders in a certain path
235
+	 * @param $folderPath
236
+	 * @return array
237
+	 * @throws \Exception
238
+	 */
239
+	public function getDocumentsByPath($folderPath)
240
+	{
241
+		$db = $this->getContentDbHandle();
242
+		$folderPathWithWildcard = $folderPath . '%';
243
+
244
+		$stmt = $this->getDbStatement('
245 245
             SELECT *
246 246
               FROM documents
247 247
              WHERE `path` LIKE ' . $db->quote($folderPathWithWildcard) . '
@@ -250,53 +250,53 @@  discard block
 block discarded – undo
250 250
           ORDER BY `type` DESC, `path` ASC
251 251
         ');
252 252
 
253
-        $documents = $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
254
-        foreach ($documents as $key => $document) {
255
-            if ($document->type === 'folder') {
256
-                $document->dbHandle = $db;
257
-                $documents[$key] = $document;
258
-            }
259
-        }
260
-        return $documents;
261
-    }
262
-
263
-
264
-    /**
265
-     * @param $path
266
-     * @return bool|Document
267
-     */
268
-    public function getDocumentContainerByPath($path)
269
-    {
270
-        $document = $this->getDocumentByPath($path);
271
-        if ($document === false) {
272
-            return false;
273
-        }
274
-        $slugLength = strlen($document->slug);
275
-        $containerPath = substr($path, 0, -$slugLength);
276
-        if ($containerPath === '/') {
277
-            return $this->getRootFolder();
278
-        }
279
-        $containerFolder = $this->getDocumentByPath($containerPath);
280
-        return $containerFolder;
281
-    }
282
-
283
-    /**
284
-     * @param $path
285
-     * @return bool|Document
286
-     */
287
-    public function getDocumentByPath($path)
288
-    {
289
-        $db = $this->getContentDbHandle();
290
-        $document = $this->fetchDocument('
253
+		$documents = $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
254
+		foreach ($documents as $key => $document) {
255
+			if ($document->type === 'folder') {
256
+				$document->dbHandle = $db;
257
+				$documents[$key] = $document;
258
+			}
259
+		}
260
+		return $documents;
261
+	}
262
+
263
+
264
+	/**
265
+	 * @param $path
266
+	 * @return bool|Document
267
+	 */
268
+	public function getDocumentContainerByPath($path)
269
+	{
270
+		$document = $this->getDocumentByPath($path);
271
+		if ($document === false) {
272
+			return false;
273
+		}
274
+		$slugLength = strlen($document->slug);
275
+		$containerPath = substr($path, 0, -$slugLength);
276
+		if ($containerPath === '/') {
277
+			return $this->getRootFolder();
278
+		}
279
+		$containerFolder = $this->getDocumentByPath($containerPath);
280
+		return $containerFolder;
281
+	}
282
+
283
+	/**
284
+	 * @param $path
285
+	 * @return bool|Document
286
+	 */
287
+	public function getDocumentByPath($path)
288
+	{
289
+		$db = $this->getContentDbHandle();
290
+		$document = $this->fetchDocument('
291 291
             SELECT *
292 292
               FROM documents
293 293
              WHERE path = ' . $db->quote($path) . '
294 294
         ');
295
-        if ($document instanceof Document && $document->type === 'folder') {
296
-            $document->dbHandle = $db;
297
-        }
298
-        return $document;
299
-    }
295
+		if ($document instanceof Document && $document->type === 'folder') {
296
+			$document->dbHandle = $db;
297
+		}
298
+		return $document;
299
+	}
300 300
 
301 301
 	/**
302 302
 	 * Returns the count of all documents stored in the db
@@ -317,70 +317,70 @@  discard block
 block discarded – undo
317 317
 	}
318 318
 
319 319
 	/**
320
-     * Return the results of the query as array of Documents
321
-     * @param $sql
322
-     * @return array
323
-     * @throws \Exception
324
-     */
325
-    protected function fetchAllDocuments($sql)
326
-    {
327
-        $stmt = $this->getDbStatement($sql);
328
-        return $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
329
-    }
330
-
331
-    /**
332
-     * Return the result of the query as Document
333
-     * @param $sql
334
-     * @return mixed
335
-     * @throws \Exception
336
-     */
337
-    protected function fetchDocument($sql)
338
-    {
339
-        $stmt = $this->getDbStatement($sql);
340
-        return $stmt->fetchObject('\library\storage\Document');
341
-    }
342
-
343
-    /**
344
-     * Prepare the sql statement
345
-     * @param $sql
346
-     * @return \PDOStatement
347
-     * @throws \Exception
348
-     */
349
-    protected function getDbStatement($sql)
350
-    {
351
-        $db = $this->getContentDbHandle();
352
-        $stmt = $db->query($sql);
353
-        if ($stmt === false) {
354
-            $errorInfo = $db->errorInfo();
355
-            $errorMsg = $errorInfo[2];
356
-            throw new \Exception('SQLite Exception: ' . $errorMsg . ' in SQL: <br /><pre>' . $sql . '</pre>');
357
-        }
358
-        return $stmt;
359
-    }
360
-
361
-    /**
362
-     * Create a (non-existent) root folder Document and return it
363
-     * @return Document
364
-     */
365
-    protected function getRootFolder()
366
-    {
367
-        $rootFolder = new Document();
368
-        $rootFolder->path = '/';
369
-        $rootFolder->type = 'folder';
370
-        return $rootFolder;
371
-    }
372
-
373
-    /**
374
-     * Save the document to the database
375
-     * @param Document $documentObject
376
-     * @return bool
377
-     * @throws \Exception
378
-     * @internal param $path
379
-     */
380
-    public function saveDocument($documentObject)
381
-    {
382
-        $db = $this->getContentDbHandle();
383
-        $stmt = $this->getDbStatement('
320
+	 * Return the results of the query as array of Documents
321
+	 * @param $sql
322
+	 * @return array
323
+	 * @throws \Exception
324
+	 */
325
+	protected function fetchAllDocuments($sql)
326
+	{
327
+		$stmt = $this->getDbStatement($sql);
328
+		return $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
329
+	}
330
+
331
+	/**
332
+	 * Return the result of the query as Document
333
+	 * @param $sql
334
+	 * @return mixed
335
+	 * @throws \Exception
336
+	 */
337
+	protected function fetchDocument($sql)
338
+	{
339
+		$stmt = $this->getDbStatement($sql);
340
+		return $stmt->fetchObject('\library\storage\Document');
341
+	}
342
+
343
+	/**
344
+	 * Prepare the sql statement
345
+	 * @param $sql
346
+	 * @return \PDOStatement
347
+	 * @throws \Exception
348
+	 */
349
+	protected function getDbStatement($sql)
350
+	{
351
+		$db = $this->getContentDbHandle();
352
+		$stmt = $db->query($sql);
353
+		if ($stmt === false) {
354
+			$errorInfo = $db->errorInfo();
355
+			$errorMsg = $errorInfo[2];
356
+			throw new \Exception('SQLite Exception: ' . $errorMsg . ' in SQL: <br /><pre>' . $sql . '</pre>');
357
+		}
358
+		return $stmt;
359
+	}
360
+
361
+	/**
362
+	 * Create a (non-existent) root folder Document and return it
363
+	 * @return Document
364
+	 */
365
+	protected function getRootFolder()
366
+	{
367
+		$rootFolder = new Document();
368
+		$rootFolder->path = '/';
369
+		$rootFolder->type = 'folder';
370
+		return $rootFolder;
371
+	}
372
+
373
+	/**
374
+	 * Save the document to the database
375
+	 * @param Document $documentObject
376
+	 * @return bool
377
+	 * @throws \Exception
378
+	 * @internal param $path
379
+	 */
380
+	public function saveDocument($documentObject)
381
+	{
382
+		$db = $this->getContentDbHandle();
383
+		$stmt = $this->getDbStatement('
384 384
             INSERT OR REPLACE INTO documents (`path`,`title`,`slug`,`type`,`documentType`,`documentTypeSlug`,`state`,`lastModificationDate`,`creationDate`,`lastModifiedBy`,`fields`,`bricks`,`dynamicBricks`)
385 385
             VALUES(
386 386
               ' . $db->quote($documentObject->path) . ',
@@ -398,37 +398,37 @@  discard block
 block discarded – undo
398 398
               ' . $db->quote(json_encode($documentObject->dynamicBricks)) . '
399 399
             )
400 400
         ');
401
-        $result = $stmt->execute();
402
-        return $result;
403
-    }
404
-
405
-    /**
406
-     * Delete the document from the database
407
-     * If it's a folder, also delete it's contents
408
-     * @param $path
409
-     * @throws \Exception
410
-     */
411
-    public function deleteDocumentByPath($path)
412
-    {
413
-        $db = $this->getContentDbHandle();
414
-        $documentToDelete = $this->getDocumentByPath($path);
415
-        if ($documentToDelete instanceof Document) {
416
-            if ($documentToDelete->type == 'document') {
417
-                $stmt = $this->getDbStatement('
401
+		$result = $stmt->execute();
402
+		return $result;
403
+	}
404
+
405
+	/**
406
+	 * Delete the document from the database
407
+	 * If it's a folder, also delete it's contents
408
+	 * @param $path
409
+	 * @throws \Exception
410
+	 */
411
+	public function deleteDocumentByPath($path)
412
+	{
413
+		$db = $this->getContentDbHandle();
414
+		$documentToDelete = $this->getDocumentByPath($path);
415
+		if ($documentToDelete instanceof Document) {
416
+			if ($documentToDelete->type == 'document') {
417
+				$stmt = $this->getDbStatement('
418 418
                     DELETE FROM documents
419 419
                           WHERE path = ' . $db->quote($path) . '
420 420
                 ');
421
-                $stmt->execute();
422
-            } elseif ($documentToDelete->type == 'folder') {
423
-                $folderPathWithWildcard = $path . '%';
424
-                $stmt = $this->getDbStatement('
421
+				$stmt->execute();
422
+			} elseif ($documentToDelete->type == 'folder') {
423
+				$folderPathWithWildcard = $path . '%';
424
+				$stmt = $this->getDbStatement('
425 425
                     DELETE FROM documents
426 426
                           WHERE (path LIKE ' . $db->quote($folderPathWithWildcard) . '
427 427
                             AND substr(`path`, ' . (strlen($path) + 1) . ', 1) = "/")
428 428
                             OR path = ' . $db->quote($path) . '
429 429
                 ');
430
-                $stmt->execute();
431
-            }
432
-        }
433
-    }
430
+				$stmt->execute();
431
+			}
432
+		}
433
+	}
434 434
 }
435 435
\ No newline at end of file
Please login to merge, or discard this patch.
cloudcontrol/library/storage/Document.php 1 patch
Indentation   +69 added lines, -69 removed lines patch added patch discarded remove patch
@@ -18,87 +18,87 @@
 block discarded – undo
18 18
  */
19 19
 class Document
20 20
 {
21
-    public $id;
22
-    public $path;
23
-    public $title;
24
-    public $slug;
25
-    public $type;
26
-    public $documentType;
27
-    public $documentTypeSlug;
28
-    public $state;
29
-    public $lastModificationDate;
30
-    public $creationDate;
31
-    public $lastModifiedBy;
32
-    protected $fields;
33
-    protected $bricks;
34
-    protected $dynamicBricks;
35
-    protected $content;
21
+	public $id;
22
+	public $path;
23
+	public $title;
24
+	public $slug;
25
+	public $type;
26
+	public $documentType;
27
+	public $documentTypeSlug;
28
+	public $state;
29
+	public $lastModificationDate;
30
+	public $creationDate;
31
+	public $lastModifiedBy;
32
+	protected $fields;
33
+	protected $bricks;
34
+	protected $dynamicBricks;
35
+	protected $content;
36 36
 
37
-    protected $dbHandle;
37
+	protected $dbHandle;
38 38
 
39
-    protected $jsonEncodedFields = array('fields', 'bricks', 'dynamicBricks');
39
+	protected $jsonEncodedFields = array('fields', 'bricks', 'dynamicBricks');
40 40
 
41
-    public function __get($name) {
42
-        if (in_array($name, $this->jsonEncodedFields)) {
43
-            if (is_string($this->$name)) {
44
-                return json_decode($this->$name);
45
-            } else {
46
-                return $this->$name;
47
-            }
48
-        } elseif ($name === 'content') {
49
-            if ($this->dbHandle === null) {
50
-                throw new \Exception('Document doesnt have a dbHandle handle. (path: ' . $this->path . ')');
51
-            } else {
52
-                if ($this->content === null) {
53
-                    $this->getContent();
54
-                }
55
-                return $this->content;
56
-            }
57
-        } elseif ($name === 'dbHandle') {
58
-            throw new \Exception('Trying to get protected property repository.');
59
-        }
60
-        return $this->$name;
61
-    }
41
+	public function __get($name) {
42
+		if (in_array($name, $this->jsonEncodedFields)) {
43
+			if (is_string($this->$name)) {
44
+				return json_decode($this->$name);
45
+			} else {
46
+				return $this->$name;
47
+			}
48
+		} elseif ($name === 'content') {
49
+			if ($this->dbHandle === null) {
50
+				throw new \Exception('Document doesnt have a dbHandle handle. (path: ' . $this->path . ')');
51
+			} else {
52
+				if ($this->content === null) {
53
+					$this->getContent();
54
+				}
55
+				return $this->content;
56
+			}
57
+		} elseif ($name === 'dbHandle') {
58
+			throw new \Exception('Trying to get protected property repository.');
59
+		}
60
+		return $this->$name;
61
+	}
62 62
 
63
-    public function __set($name, $value) {
64
-        if (in_array($name, $this->jsonEncodedFields)) {
65
-            $this->$name = json_encode($value);
66
-        } elseif ($name === 'content') {
67
-            // Dont do anything for now..
68
-            return;
69
-        }
63
+	public function __set($name, $value) {
64
+		if (in_array($name, $this->jsonEncodedFields)) {
65
+			$this->$name = json_encode($value);
66
+		} elseif ($name === 'content') {
67
+			// Dont do anything for now..
68
+			return;
69
+		}
70 70
 
71
-        $this->$name = $value;
72
-    }
71
+		$this->$name = $value;
72
+	}
73 73
 
74
-    /**
75
-     * @throws \Exception
76
-     */
77
-    protected function getContent()
78
-    {
79
-        $folderPathWithWildcard = $this->path . '%';
80
-        $sql = '    SELECT *
74
+	/**
75
+	 * @throws \Exception
76
+	 */
77
+	protected function getContent()
78
+	{
79
+		$folderPathWithWildcard = $this->path . '%';
80
+		$sql = '    SELECT *
81 81
                       FROM documents
82 82
                      WHERE `path` LIKE ' . $this->dbHandle->quote($folderPathWithWildcard) . '
83 83
                        AND substr(`path`, ' . (strlen($this->path) + 2) . ') NOT LIKE "%/%"
84 84
                        AND substr(`path`, ' . (strlen($this->path) + 1) . ', 1) = "/"
85 85
                        AND path != ' . $this->dbHandle->quote($this->path) . '
86 86
                     ';
87
-        $stmt = $this->dbHandle->query($sql);
88
-        if ($stmt === false) {
89
-            $errorInfo = $this->dbHandle->errorInfo();
90
-            $errorMsg = $errorInfo[2];
91
-            throw new \Exception('SQLite Exception: ' . $errorMsg . ' in SQL: <br /><pre>' . $sql . '</pre>');
92
-        }
93
-        $contents = $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
94
-        foreach ($contents as $key => $document) {
95
-            if ($document->type === 'folder') {
96
-                $document->dbHandle = $this->dbHandle;
97
-                $contents[$key] = $document;
98
-            }
99
-        }
100
-        $this->content = $contents;
101
-    }
87
+		$stmt = $this->dbHandle->query($sql);
88
+		if ($stmt === false) {
89
+			$errorInfo = $this->dbHandle->errorInfo();
90
+			$errorMsg = $errorInfo[2];
91
+			throw new \Exception('SQLite Exception: ' . $errorMsg . ' in SQL: <br /><pre>' . $sql . '</pre>');
92
+		}
93
+		$contents = $stmt->fetchAll(\PDO::FETCH_CLASS, '\library\storage\Document');
94
+		foreach ($contents as $key => $document) {
95
+			if ($document->type === 'folder') {
96
+				$document->dbHandle = $this->dbHandle;
97
+				$contents[$key] = $document;
98
+			}
99
+		}
100
+		$this->content = $contents;
101
+	}
102 102
 
103 103
 	/**
104 104
 	 *
Please login to merge, or discard this patch.