aboutsummaryrefslogtreecommitdiff
path: root/app/class/Controlleradmin.php
diff options
context:
space:
mode:
authorvincent-peugnet <v.peugnet@free.fr>2020-02-06 18:06:07 +0100
committervincent-peugnet <v.peugnet@free.fr>2020-02-06 18:06:38 +0100
commit9d3f97870810e739041eccad234d47308747cb1f (patch)
tree94c7491ed5313de517c28ecc8c49a341d99db636 /app/class/Controlleradmin.php
parent1aa2b136656e42d8523d31f79e9cc1321c1dbba9 (diff)
downloadwcms-9d3f97870810e739041eccad234d47308747cb1f.tar.gz
wcms-9d3f97870810e739041eccad234d47308747cb1f.zip
new feature : admin database manager fix #12
Diffstat (limited to 'app/class/Controlleradmin.php')
-rw-r--r--app/class/Controlleradmin.php45
1 files changed, 33 insertions, 12 deletions
diff --git a/app/class/Controlleradmin.php b/app/class/Controlleradmin.php
index b7d0e31..835f158 100644
--- a/app/class/Controlleradmin.php
+++ b/app/class/Controlleradmin.php
@@ -7,6 +7,15 @@ 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()
{
@@ -30,6 +39,9 @@ class Controlleradmin extends Controller
$datas['globalcss'] = "";
}
+ $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');
+ }
}