aboutsummaryrefslogtreecommitdiff
path: root/app/class/controller.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/class/controller.php')
-rw-r--r--app/class/controller.php96
1 files changed, 96 insertions, 0 deletions
diff --git a/app/class/controller.php b/app/class/controller.php
new file mode 100644
index 0000000..c97c99f
--- /dev/null
+++ b/app/class/controller.php
@@ -0,0 +1,96 @@
+<?php
+
+class Controller
+{
+
+ protected $user;
+ protected $usermanager;
+ protected $plates;
+
+ public function __construct() {
+ $this->setuser();
+ $this->initplates();
+ $this->initconfig();
+ }
+
+ public function setuser()
+ {
+ $this->usermanager = new Modeluser;
+ $this->user = $this->usermanager->readsession();
+ }
+
+ public function initplates()
+ {
+ $this->plates = new League\Plates\Engine(Model::TEMPLATES_DIR);
+ }
+
+ public function useriseditor()
+ {
+ if ($this->user->level() >= $this->usermanager::EDITOR) {
+ echo '<h3>Editor access</h3>';
+ return true;
+ } else {
+ echo '<h3>Not enought rights to see more...</h3>';
+ return false;
+ }
+ }
+
+ public function initconfig()
+ {
+ Config::readconfig();
+ }
+
+ public function showtemplate($template, $params)
+ {
+ $params = array_merge($this->commonsparams(), $params);
+ echo $this->plates->render($template, $params);
+ }
+
+ public function commonsparams()
+ {
+ $commonsparams = [];
+ $commonsparams['user'] = $this->user;
+ return $commonsparams;
+ }
+
+ public function login($redirect = 'home')
+ {
+ if(isset($_POST['pass'])) {
+ $this->user = $this->usermanager->login($_POST['pass']);
+ $this->usermanager->writesession($this->user);
+ }
+ if($redirect == 'art') {
+ $this->redirect('?id=' . $this->art->id());
+ } else {
+ $this->redirect('?aff=' . $redirect);
+ }
+ }
+
+ public function logout($redirect = 'home')
+ {
+ $this->user = $this->usermanager->logout();
+ $this->usermanager->writesession($this->user);
+ if($redirect == 'art') {
+ $this->redirect('?id=' . $this->art->id());
+ } else {
+ $this->redirect('?aff=' . $redirect);
+ }
+ }
+
+
+
+
+ public function redirect($url)
+ {
+ header('Location: ' . $url);
+ }
+
+
+
+}
+
+
+
+
+
+?> \ No newline at end of file