diff options
Diffstat (limited to 'app/class/controllerhome.php')
-rw-r--r-- | app/class/controllerhome.php | 79 |
1 files changed, 48 insertions, 31 deletions
diff --git a/app/class/controllerhome.php b/app/class/controllerhome.php index afbde7a..6932dfb 100644 --- a/app/class/controllerhome.php +++ b/app/class/controllerhome.php @@ -8,7 +8,8 @@ class Controllerhome extends Controllerart /** @var Optlist */ protected $optlist; - public function __construct($render) { + public function __construct($render) + { parent::__construct($render); $this->modelhome = new Modelhome; } @@ -18,39 +19,37 @@ class Controllerhome extends Controllerart public function desktop() { - if($this->user->isvisitor() && Config::homepage() === 'redirect' && Config::homeredirect() !== null) { + if ($this->user->isvisitor() && Config::homepage() === 'redirect' && Config::homeredirect() !== null) { $this->routedirect('artread/', ['art' => Config::homeredirect()]); } else { - + $table = $this->modelhome->getlister(); $this->opt = $this->modelhome->optinit($table); - + $table2 = $this->modelhome->table2($table, $this->opt); - + $columns = $this->modelhome->setcolumns($this->user->columns()); $vars = ['user' => $this->user, 'table2' => $table2, 'opt' => $this->opt, 'columns' => $columns]; $vars['footer'] = ['version' => getversion(), 'total' => count($table), 'database' => Config::arttable()]; - if(isset($_POST['query']) && $this->user->iseditor()) { + if (isset($_POST['query']) && $this->user->iseditor()) { $datas = array_merge($_POST, $_SESSION['opt']); $this->optlist = $this->modelhome->Optlistinit($table); $this->optlist->hydrate($datas); - $vars['optlist'] = $this->optlist; + $vars['optlist'] = $this->optlist; } - + $this->showtemplate('home', $vars); - - } } public function columns() { - if(isset($_POST['columns']) && $this->user->iseditor()) { + if (isset($_POST['columns']) && $this->user->iseditor()) { $user = $this->usermanager->get($this->user->id()); $user->hydrate($_POST); $this->usermanager->add($user); @@ -61,16 +60,16 @@ class Controllerhome extends Controllerart public function search() { - if(isset($_POST['id']) && !empty($_POST['id'])) { - if(isset($_POST['action'])) { + if (isset($_POST['id']) && !empty($_POST['id'])) { + if (isset($_POST['action'])) { switch ($_POST['action']) { case 'read': $this->routedirect('artread/', ['art' => $_POST['id']]); - break; - + break; + case 'edit': $this->routedirect('artedit', ['art' => $_POST['id']]); - break; + break; } } } else { @@ -80,7 +79,7 @@ class Controllerhome extends Controllerart public function renderall() { - if($this->user->iseditor()) { + if ($this->user->iseditor()) { $pagelist = $this->modelhome->getlister(); foreach ($pagelist as $page) { $this->renderart($page); @@ -90,19 +89,37 @@ class Controllerhome extends Controllerart $this->routedirect('home'); } - - - - - - + public function bookmark() + { + if ($this->user->iseditor() && isset($_POST['action']) && isset($_POST['id']) && !empty($_POST['id'])) { + if ($_POST['action'] == 'add' && isset($_POST['query'])) { + if (isset($_POST['user']) && $_POST['user'] == $this->user->id()) { + $usermanager = new Modeluser(); + $user = $usermanager->get($_POST['user']); + $user->addbookmark($_POST['id'], $_POST['query']); + $usermanager->add($user); + } else { + Config::addbookmark($_POST['id'], $_POST['query']); + Config::savejson(); + } + } elseif ($_POST['action'] == 'del') { + if(isset($_POST['user']) && $_POST['user'] == $this->user->id()) { + $usermanager = new Modeluser(); + $user = $usermanager->get($_POST['user']); + foreach ($_POST['id'] as $id) { + $user->deletebookmark($id); + } + $usermanager->add($user); + } else { + foreach ($_POST['id'] as $id) { + Config::deletebookmark($id); + } + Config::savejson(); + } + } + } + $this->routedirect('home'); + } } - - - - - - - -?>
\ No newline at end of file +?> |