@@ 118-141 (lines=24) @@ | ||
115 | * @throws \Ffcms\Core\Exception\SyntaxException |
|
116 | * @throws \Ffcms\Core\Exception\NativeException |
|
117 | */ |
|
118 | public function actionDelete($id) |
|
119 | { |
|
120 | if (!Obj::isLikeInt($id) || $id < 1) { |
|
121 | throw new NotFoundException(); |
|
122 | } |
|
123 | ||
124 | // get content record and check availability |
|
125 | $record = ContentEntity::find($id); |
|
126 | if ($record === null || $record === false) { |
|
127 | throw new NotFoundException(); |
|
128 | } |
|
129 | ||
130 | // init delete model |
|
131 | $model = new FormContentDelete($record); |
|
132 | if ($model->send() && $model->validate()) { |
|
133 | $model->make(); |
|
134 | App::$Session->getFlashBag()->add('success', __('Content is successful moved to trash')); |
|
135 | App::$Response->redirect('content/index'); |
|
136 | } |
|
137 | ||
138 | return App::$View->render('content_delete', [ |
|
139 | 'model' => $model->export() |
|
140 | ]); |
|
141 | } |
|
142 | ||
143 | /** |
|
144 | * Restore deleted content |
|
@@ 151-176 (lines=26) @@ | ||
148 | * @throws SyntaxException |
|
149 | * @throws \Ffcms\Core\Exception\NativeException |
|
150 | */ |
|
151 | public function actionRestore($id) |
|
152 | { |
|
153 | if (!Obj::isLikeInt($id) || $id < 1) { |
|
154 | throw new NotFoundException(); |
|
155 | } |
|
156 | ||
157 | // get removed object |
|
158 | $record = ContentEntity::onlyTrashed()->find($id); |
|
159 | if ($record === null || $record === false) { |
|
160 | throw new NotFoundException(); |
|
161 | } |
|
162 | ||
163 | // init model |
|
164 | $model = new FormContentRestore($record); |
|
165 | // check if action is send |
|
166 | if ($model->send() && $model->validate()) { |
|
167 | $model->make(); |
|
168 | App::$Session->getFlashBag()->add('success', __('Content are successful recovered')); |
|
169 | App::$Response->redirect('content/index'); |
|
170 | } |
|
171 | ||
172 | // draw response |
|
173 | return App::$View->render('content_restore', [ |
|
174 | 'model' => $model->export() |
|
175 | ]); |
|
176 | } |
|
177 | ||
178 | /** |
|
179 | * Clear the trashed items |
|
@@ 228-255 (lines=28) @@ | ||
225 | * @throws \Ffcms\Core\Exception\SyntaxException |
|
226 | * @throws \Ffcms\Core\Exception\NativeException |
|
227 | */ |
|
228 | public function actionCategorydelete($id) |
|
229 | { |
|
230 | // check id |
|
231 | if (!Obj::isLikeInt($id) || $id < 2) { |
|
232 | throw new ForbiddenException(); |
|
233 | } |
|
234 | ||
235 | // get object relation |
|
236 | $record = ContentCategory::find($id); |
|
237 | if ($record === null || $record === false) { |
|
238 | throw new ForbiddenException(); |
|
239 | } |
|
240 | ||
241 | // init model with object relation |
|
242 | $model = new FormCategoryDelete($record); |
|
243 | ||
244 | // check if delete is submited |
|
245 | if ($model->send() && $model->validate()) { |
|
246 | $model->make(); |
|
247 | App::$Session->getFlashBag()->add('success', __('Category is successful removed')); |
|
248 | App::$Response->redirect('content/categories'); |
|
249 | } |
|
250 | ||
251 | // draw view |
|
252 | return App::$View->render('category_delete', [ |
|
253 | 'model' => $model->export() |
|
254 | ]); |
|
255 | } |
|
256 | ||
257 | /** |
|
258 | * Show category edit and create |