aboutsummaryrefslogtreecommitdiff
path: root/app/class/Controlleradmin.php
diff options
context:
space:
mode:
authorvincent-peugnet <v.peugnet@free.fr>2020-02-06 18:07:53 +0100
committervincent-peugnet <v.peugnet@free.fr>2020-02-06 18:07:53 +0100
commit08a26d4d6fbd45cdc136b60d0fb30f53ac4fd2f7 (patch)
tree209ac84720836e39c6c96f131b5049e7ad6096b2 /app/class/Controlleradmin.php
parentde939de88e1ed166d827616e3d17a22fe549202a (diff)
parent9d3f97870810e739041eccad234d47308747cb1f (diff)
downloadwcms-08a26d4d6fbd45cdc136b60d0fb30f53ac4fd2f7.tar.gz
wcms-08a26d4d6fbd45cdc136b60d0fb30f53ac4fd2f7.zip
Merge branch 'better-admin'
Diffstat (limited to 'app/class/Controlleradmin.php')
-rw-r--r--app/class/Controlleradmin.php65
1 files changed, 43 insertions, 22 deletions
diff --git a/app/class/Controlleradmin.php b/app/class/Controlleradmin.php
index 3935bff..835f158 100644
--- a/app/class/Controlleradmin.php
+++ b/app/class/Controlleradmin.php
@@ -7,30 +7,42 @@ class Controlleradmin extends Controller
/** @var Modelmedia $mediamanager */
protected $mediamanager;
+ /** @var Modeladmin */
+ protected $adminmanager;
+
+ public function __construct($router)
+ {
+ parent::__construct($router);
+
+ $this->adminmanager = new Modeladmin();
+ }
public function desktop()
{
if($this->user->isadmin()) {
- $pagelist = $this->pagemanager->list();
+ $datas['pagelist'] = $this->pagemanager->list();
$this->mediamanager = new Modelmedia();
- $faviconlist = $this->mediamanager->listfavicon();
- $interfacecsslist = $this->mediamanager->listinterfacecss();
- if(in_array(Config::defaultpage(), $pagelist)) {
- $defaultpageexist = true;
+ $datas['faviconlist'] = $this->mediamanager->listfavicon();
+ $datas['thumbnaillist'] = $this->mediamanager->listthumbnail();
+ $datas['interfacecsslist'] = $this->mediamanager->listinterfacecss();
+ if(in_array(Config::defaultpage(), $datas['pagelist'])) {
+ $datas['defaultpageexist'] = true;
} else {
- $defaultpageexist = true;
+ $datas['defaultpageexist'] = false;
}
$globalcssfile = Model::GLOBAL_DIR . 'global.css';
if(is_file($globalcssfile)) {
- $globalcss = file_get_contents($globalcssfile);
+ $datas['globalcss'] = file_get_contents($globalcssfile);
} else {
- $globalcss = "";
+ $datas['globalcss'] = "";
}
- $admin = ['pagelist' => $pagelist, 'defaultpageexist' => $defaultpageexist, 'globalcss' => $globalcss, 'faviconlist' => $faviconlist, 'interfacecsslist' => $interfacecsslist];
- $this->showtemplate('admin', $admin);
+ $datas['pagesdblist'] = $this->adminmanager->pagesdblist();
+ $datas['pagesdbtree'] = $this->mediamanager->listdir(Model::PAGES_DIR);
+
+ $this->showtemplate('admin', $datas);
} else {
$this->routedirect('home');
}
@@ -38,8 +50,8 @@ class Controlleradmin extends Controller
public function update()
{
- $this->globaldircheck();
-
+ MODEL::dircheck(MODEL::GLOBAL_DIR);
+
$globalcss = file_put_contents(Model::GLOBAL_DIR . 'global.css', $_POST['globalcss']);
Config::hydrate($_POST);
@@ -50,16 +62,25 @@ class Controlleradmin extends Controller
}
}
-
- public function globaldircheck()
- {
- if(!is_dir(Model::GLOBAL_DIR)) {
- return mkdir(Model::GLOBAL_DIR);
- } else {
- return true;
- }
- }
-
+ public function database()
+ {
+ if(!empty($_POST['action'])) {
+ switch ($_POST['action']) {
+ case 'duplicate':
+ if(!empty($_POST['dbsrc']) && !empty($_POST['dbtarget'])) {
+ $this->adminmanager->copydb($_POST['dbsrc'], $_POST['dbtarget']);
+ }
+ break;
+ case 'select':
+ if(!empty($_POST['pagetable'])) {
+ Config::hydrate($_POST);
+ Config::savejson();
+ }
+ break;
+ }
+ }
+ $this->routedirect('admin');
+ }
}