summaryrefslogtreecommitdiffstats
path: root/management-interface/api/models/Master.php
diff options
context:
space:
mode:
Diffstat (limited to 'management-interface/api/models/Master.php')
-rw-r--r--management-interface/api/models/Master.php54
1 files changed, 30 insertions, 24 deletions
diff --git a/management-interface/api/models/Master.php b/management-interface/api/models/Master.php
index 0566b0a..75b76f2 100644
--- a/management-interface/api/models/Master.php
+++ b/management-interface/api/models/Master.php
@@ -26,23 +26,27 @@ class Master {
echo $this->view->render('template/header.php');
- echo $this->view->render('views/menu.php');
+ echo $this->view->render('template/menu.php');
if (!empty($f3->get('message'))) {
echo $this->view->render('template/message.php');
}
+
+ // DEBUG !!!!
+ echo $this->view->render('template/requestdump.php');
- // if we want to list the users:
+ // let the module choose what to render
if ($f3->get('_module') === 'users') {
- $this->tabUsers($f3);
+ (new Users)->tabUsers($f3);
} else if($f3->get('_module') === 'home') {
- $this->tabHome($f3);
+ (new Home)->tabHome($f3);
} else if ($f3->get('_module') === 'satellites') {
- $this->tabSatellite($f3);
+ (new Satellites)->tabSatellites($f3);
+ } else {
+ // if module is not available, display the views/_module.htm
+ echo Template::instance()->render('views/'.$f3->get('_module').'.htm');
}
- echo Template::instance()->render('views/' . $f3->get('_module') . '.htm');
-
echo $this->view->render('template/footer.php');
}
@@ -55,7 +59,7 @@ class Master {
$f3->reroute('@module(@m=home)');
} else {
$f3->set('message', 'Login invalid.');
- $f3->reroute('@module(@m=home)');
+ $f3->reroute('@module(@m=login)');
}
}
@@ -64,27 +68,29 @@ class Master {
$f3->set('message', 'Logout successful');
$f3->set('loggedin', false);
$f3->set('username', 'Guest');
- $this->parse($f3, array('m' => 'login'));
- }
-
- private function tabUsers($f3) {
- $f3->set('result',$f3->get('DB')->exec('SELECT userid, username, organization, firstname, lastname, email, lastlogin FROM user'));
+ $this->parse($f3, array('m' => 'home'));
}
- private function tabHome($f3) {
- // one command is 'sh -c' and the other command is 'grep'
- // so we need more than two commands to find the server
- if (shell_exec('ps aux | grep "org.openslx.imagemaster.App" | wc -l') > 2) {
- $f3->set('serverstatus', true);
+ public function saveSatellite($f3, $organization, $address, $name, $prefix, $publickey) {
+ // first save the satellite, then parse the site
+ $msg = (new Satellites)->save($f3, $organization, $address, $name, $prefix, $publickey);
+ if ($msg === '') {
+ $f3->set('action', 'done');
} else {
- $f3->set('serverstatus', false);
+ $f3->set('message', $msg);
}
+ $this->parse($f3, array('m' => 'satellites'));
}
-
- private function tabSatellite($f3) {
- $f3->set('result', $f3->get('DB')->exec('SELECT organization, address, name, prefix, publickey FROM satellite'));
+
+ public function newSatellite($f3, $organization, $address, $name, $prefix, $publickey) {
+ // first save then parse
+ $msg = (new Satellites)->saveNew($f3, $organization, $address, $name, $prefix, $publickey);
+ if ($msg === '') {
+ $f3->set('action', 'done');
+ } else {
+ $f3->set('message', $msg);
+ }
+ $this->parse($f3, array('m' => 'satellites'));
}
-
}
-
?>