Repository URL to install this package:
|
Version:
3.2.0 ▾
|
<?php
namespace Evsmash\Events\Http\Admin;
use Evsmash\Core\Http\Base;
use Evsmash\Core\Helpers\Redirect;
use Evsmash\Core\Input\Flash;
use Evsmash\Core\Input\Post;
use Evsmash\Core\Input\Route;
use Evsmash\Core\Input\Server;
use Evsmash\Core\Simpy\Element;
use Evsmash\Events\EventsCategory;
class EventsCategories extends Base {
// view
public function index() {
// elements
$elements = EventsCategory::params()->where('depth', '>', 0)->get();
// bar
$bar = [
'search' => true,
'summary' => $elements,
];
// view
$this->view(compact(['elements', 'bar']));
}
// insert
public function insert() {
// validate
Post::validate(EventsCategory::validate());
// insert
$element = new EventsCategory;
$element->name = Post::get('name');
$element->save();
$element->makeChildOf(Post::get('parent_id'));
// finish
Redirect::msg('Element inserted', 'success');
Redirect::post($element->id);
}
// inline
public function inline() {
Element::inline(new EventsCategory, ['name']);
}
// thick
public function thick() {
Element::thick(new EventsCategory, ['published']);
}
// sortnest
public function sortnest() {
// update
foreach($_POST['list'] as $row) {
$item = EventsCategory::find((int)$row['item_id']);
$item->parent_id = (empty($row['parent_id'])) ? null : (int)$row['parent_id'];
$item->lft = (int)$row['left'];
$item->rgt = (int)$row['right'];
$item->depth = (int)$row['depth'];
$item->save();
}
}
// delete
public function delete() {
// delete
$element = Element::check(new EventsCategory);
$element->delete();
// finish
Redirect::msg('Element deleted', 'success');
Redirect::to(Server::referer());
}
}