Routes naming #52

Merged
Ghost merged 5 commits from route-naming into master 2019-04-08 17:17:40 +02:00
4 changed files with 46 additions and 40 deletions
Showing only changes of commit 99ac46f671 - Show all commits

View file

@ -52,7 +52,7 @@ if (!array_key_exists('auth', $_SESSION) || $_SESSION['auth']!=1) {
include_once EVOADMIN_BASE . '../inc/webadmin-servername.php'; include_once EVOADMIN_BASE . '../inc/webadmin-servername.php';
} elseif (preg_match('#^/webadmin/itk/(.*)/?$#', $uri, $params)) { } elseif (preg_match('#^/webadmin/(.*)/itk/?(enable|disable)?/?(.*)?/$#', $uri, $params)) {
include_once EVOADMIN_BASE . '../inc/webadmin-itk.php'; include_once EVOADMIN_BASE . '../inc/webadmin-itk.php';

View file

@ -18,58 +18,60 @@ require_once EVOADMIN_BASE . '../lib/domain.php';
global $conf; global $conf;
if (isset($_GET['enable']) ) { if (isset($params[2]) && $params[2] != "") {
require_once EVOADMIN_BASE . '../evolibs/Form.php'; $redirect_url = "/webadmin/" . $params[1] . "/itk/";
if (isset($params[3]) && $params[3] == "") http_redirect($redirect_url);
include_once EVOADMIN_BASE . '../tpl/header.tpl.php'; if ($params[2] == "enable") {
include_once EVOADMIN_BASE . '../tpl/menu.tpl.php'; require_once EVOADMIN_BASE . '../evolibs/Form.php';
include_once EVOADMIN_BASE . '../tpl/header.tpl.php';
include_once EVOADMIN_BASE . '../tpl/menu.tpl.php';
# TODO: sanitize $_GET # TODO: sanitize $_GET
$servername = array ( $servername = array (
'domain' => htmlspecialchars(basename($_SERVER['REDIRECT_URL'])), 'domain' => $params[1],
'servername' => $_GET['enable'] 'servername' => $params[3]
); );
$enable_cmd = 'web-add.sh enable-user-itk ' . $servername['servername'] . ' ' . $servername['domain']; $enable_cmd = 'web-add.sh enable-user-itk ' . $servername['servername'] . ' ' . $servername['domain'];
sudoexec($enable_cmd, $enable_cmd_output, $enable_cmd_return); sudoexec($enable_cmd, $enable_cmd_output, $enable_cmd_return);
if ($enable_cmd_return == 0) { if ($enable_cmd_return == 0) {
print 'Sécurité ITK activée.'; print 'Sécurité ITK activée.';
printf ('<p><a href="%s">Retour à la gestion ITK</a></p>', $_SERVER['REDIRECT_URL']); printf ('<p><a href="%s">Retour à la gestion ITK</a></p>', $redirect_url);
}
include_once EVOADMIN_BASE . '../tpl/footer.tpl.php';
} }
elseif ($params[2] == "disable") {
require_once EVOADMIN_BASE . '../evolibs/Form.php';
include_once EVOADMIN_BASE . '../tpl/footer.tpl.php'; include_once EVOADMIN_BASE . '../tpl/header.tpl.php';
include_once EVOADMIN_BASE . '../tpl/menu.tpl.php';
} # TODO: sanitize $_GET
elseif (isset($_GET['disable']) ) { $servername = array (
require_once EVOADMIN_BASE . '../evolibs/Form.php'; 'domain' => $params[1],
'servername' => $params[3]
);
include_once EVOADMIN_BASE . '../tpl/header.tpl.php'; $disable_cmd = 'web-add.sh disable-user-itk ' . $servername['servername'] . ' ' . $servername['domain'];
include_once EVOADMIN_BASE . '../tpl/menu.tpl.php';
sudoexec($disable_cmd, $disable_cmd_output, $disable_cmd_return);
# TODO: sanitize $_GET if ($disable_cmd_return == 0) {
$servername = array ( print 'Sécurité ITK désactivée';
'domain' => htmlspecialchars(basename($_SERVER['REDIRECT_URL'])), printf ('<p><a href="%s">Retour à la gestion ITK</a></p>', $redirect_url);
'servername' => $_GET['disable'] }
);
$disable_cmd = 'web-add.sh disable-user-itk ' . $servername['servername'] . ' ' . $servername['domain']; include_once EVOADMIN_BASE . '../tpl/footer.tpl.php';
sudoexec($disable_cmd, $disable_cmd_output, $disable_cmd_return);
if ($disable_cmd_return == 0) {
print 'Sécurité ITK désactivée';
printf ('<p><a href="%s">Retour à la gestion ITK</a></p>', $_SERVER['REDIRECT_URL']);
} }
include_once EVOADMIN_BASE . '../tpl/footer.tpl.php';
} }
else { else {
$domain = $params[1]; $domain = $params[1];

View file

@ -38,14 +38,18 @@
printf('<td>%s</td>', printf('<td>%s</td>',
$data_list[$i]['user']); $data_list[$i]['user']);
if (is_superadmin()) { if (is_superadmin()) {
if (strpos($data_list[$i]['user'], 'www') !== false) { if (strpos($data_list[$i]['user'], 'www') !== false) {
$action = ['disable', 'Désactiver']; $action = ['disable', 'Désactiver'];
} else { } else {
$action = ['enable', 'Activer']; $action = ['enable', 'Activer'];
} }
printf('<td><a href="/webadmin/itk/%s?%s=%s">'.$action[1].'</a></td>', // AssignUserID not set in the vhost, override previous action
if (empty($data_list[$i]['user'])) {
$action = ["", ""];
}
printf('<td><a href="/webadmin/%s/itk/%s/%s/">'.$action[1].'</a></td>',
$domain, $action[0], $data_list[$i]['servername']); $domain, $action[0], $data_list[$i]['servername']);
} }
print '</tr>'; print '</tr>';

View file

@ -107,7 +107,7 @@
if(is_multiphp()) { if(is_multiphp()) {
printf('<a href="/webadmin/php/%s">PHP</a>', $vhost_info['owner']); printf('<a href="/webadmin/php/%s">PHP</a>', $vhost_info['owner']);
} else { } else {
printf('<a href="/webadmin/itk/%s">ITK</a>', $vhost_info['owner']); printf('<a href="/webadmin/%s/itk/">ITK</a>', $vhost_info['owner']);
} }
printf('</td>'); printf('</td>');