Beispiel #1
0
function dumptype_save()
{
    include_once dirname(__FILE__) . "/class.html.tools.inc";
    $html = new htmltools_inc();
    $_POST["dumpname"] = $html->StripSpecialsChars($_POST["dumpname"]);
    while (list($num, $ligne) = each($_POST)) {
        $field[] = "`{$num}`";
        $ligne = addslashes($ligne);
        $vals[] = "'{$ligne}'";
        $upd[] = "`{$num}`='{$ligne}'";
    }
    $sql_add = "INSERT INTO amanda_dumptype (" . @implode(",", $field) . ") VALUES (" . @implode(",", $vals) . ")";
    $sql_update = "UPDATE amanda_dumptype SET " . @implode(",", $upd) . " WHERE dumpname='{$_POST["dumpname"]}'";
    $q = new mysql();
    $sql = "SELECT * FROM amanda_dumptype WHERE dumpname='{$_POST["dumpname"]}'";
    $ligne = @mysql_fetch_array($q->QUERY_SQL($sql, 'artica_backup'));
    $sql = $sql_add;
    if ($ligne["dumpname"] != null) {
        $sql = $sql_update;
    }
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    $sock->getFrameWork("amanda.php?save-server-config=yes");
}
Beispiel #2
0
function popup()
{
    $tpl = new templates();
    $page = CurrentPageName();
    $html = new htmltools_inc();
    $lang = $html->LanguageArray();
    $field_lang = Field_array_Hash($lang, 'lang', $_COOKIE["artica-language"], "style:font-size:14px");
    $html = "\n\t\t<table class=form style='width:100%;margin-top:25px'>\n\t\t<tr>\n\t\t\t<td class=legend>{language}:</td>\n\t\t\t<td>{$field_lang}</td>\n\t\t\t<td width=1%>" . button("{apply}", "ChangeAdminLang()") . "</td> \n\t\t</tr>\n\t\t</table>\t\t\n<script>\n\tvar x_ChangeAdminLang= function (obj) {\n\t var results=obj.responseText;\n\t if(results.length>1){alert(results);}\n\t CacheOff();\n\t YahooWin4Hide();\n\t}\n\nfunction ChangeAdminLang(){\n\tvar lang=document.getElementById('lang').value;\n\tSet_Cookie('artica-language', lang, '3600', '/', '', '');\n\tvar XHR = new XHRConnection();\n\tXHR.appendData('lang',lang);\n\tXHR.sendAndLoad('{$page}', 'POST',x_ChangeAdminLang);\t\t\n\t\n}\n</script>\n";
    echo $tpl->_ENGINE_parse_body($html);
}
Beispiel #3
0
function popup()
{
    $tpl = new templates();
    $page = CurrentPageName();
    $html = new htmltools_inc();
    $lang = $html->LanguageArray();
    $sock = new sockets();
    $FixedLanguage = $sock->GET_INFO("FixedLanguage");
    $enabled = 0;
    if ($FixedLanguage != null) {
        $_COOKIE["artica-language"] = $FixedLanguage;
        $enabled = 1;
    }
    $field_lang = Field_array_Hash($lang, 'lang', $_COOKIE["artica-language"], "style:font-size:22px");
    $html = "\n\t\t<div style='width:98%' class=form>\n\t\t<table style='width:100%'>\n\t\t<tr>\n\t\t\t<td class=legend style='font-size:22px'>{language}:</td>\n\t\t\t<td>{$field_lang}</td>\n\t\t\t\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td class=legend style='font-size:22px'>{fix_value}:</td>\n\t\t\t<td>" . Field_checkbox("Fixit", 1, $enabled) . "</td>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<td colspan=2 align='right'><hr>" . button("{apply}", "ChangeAdminLang()", 34) . "</td></td>\n\t\t</tr>\n\t\t</table>\t\t\n<script>\n\tvar x_ChangeAdminLang= function (obj) {\n\t var results=obj.responseText;\n\t if(results.length>1){alert(results);}\n\t CacheOff();\n\t YahooWin4Hide();\n\t}\n\nfunction ChangeAdminLang(){\n\tvar XHR = new XHRConnection();\n\tvar lang=document.getElementById('lang').value;\n\tif(document.getElementById('Fixit').checked){XHR.appendData('Fixit',lang);}else{XHR.appendData('Fixit','');}\n\tSet_Cookie('artica-language', lang, '3600', '/', '', '');\n\tXHR.appendData('lang',lang);\n\tXHR.sendAndLoad('{$page}', 'POST',x_ChangeAdminLang);\t\t\n\t\n}\n</script>\n";
    echo $tpl->_ENGINE_parse_body($html);
}
Beispiel #4
0
function buildconfig()
{
    $vpn = new openvpn();
    $connection_name = trim(strtolower($_POST["connection_name"]));
    if ($connection_name == null) {
        $connection_name = time();
    }
    $connection_name = str_replace(" ", "-", $connection_name);
    $connection_name = replace_accents($connection_name);
    $connection_name = str_replace("/", "-", $connection_name);
    $connection_name = str_replace('\\', "-", $connection_name);
    $tools = new htmltools_inc();
    $connection_name = $tools->StripSpecialsChars($connection_name);
    $vpn->ComputerOS = $_POST["ComputerOS"];
    $html_logs[] = "<div><code style='font-size:10px;color:black;'>Operating system : {$config->ComputerOS}</div>";
    $html_logs[] = "<div><code style='font-size:10px;color:black;'>Connection name. : {$connection_name}</div>";
    $config = $vpn->BuildClientconf($connection_name);
    $tbconfig = explode("\n", $config);
    $html_logs[] = htmlentities("VPN config -> " . strlen($config) . " bytes length (" . count($tbconfig) . " lines)");
    $uid = $_SESSION["uid"];
    writelogs("VPN config -> " . strlen($config) . " bytes length (" . count($tbconfig) . " lines)", __FUNCTION__, __FILE__, __LINE__);
    $sock = new sockets();
    if (!$sock->SaveConfigFile($config, "{$connection_name}.ovpn")) {
        $html_logs[] = htmlentities("Framework error while saving  -> {$connection_name}.ovpn;" . strlen($config) . " bytes length (" . count($tbconfig) . " lines)");
    }
    writelogs("sockets() OK", __FUNCTION__, __FILE__, __LINE__);
    //$datas=$sock->getfile('OpenVPNGenerate:'.$uid);
    $datas = $sock->getFrameWork("openvpn.php?build-vpn-user={$connection_name}&basepath=" . dirname(__FILE__));
    $tbl = explode("\n", $datas);
    $tbl = array_reverse($tbl);
    while (list($num, $line) = each($tbl)) {
        if (trim($line) == null) {
            continue;
        }
        $html_logs[] = "<div><code style='font-size:10px;color:black;'>" . htmlentities($line) . "</code></div>";
    }
    if (is_file('ressources/logs/' . $connection_name . '.zip')) {
        $download = "\n\t\t<center>\n\t\t<div style='width:320px;border:2px solid #CCCCCC;padding:5px;margin:10px'>\n\t\t\t<div style='font-size:14px'>{click_here}</div>\n\t\t\t<a href='ressources/logs/" . $connection_name . ".zip'>\n\t\t\t\t<img src='img/download-64.png' title=\"{DOWNLOAD_CONFIG_FILES}\" style='padding:8Px;border:1px solid #055447;margin:3px'></a>\n\t\t\t\t<br>\n\t\t\t\t<a href='ressources/logs/" . $connection_name . ".zip' style='font-size:16px;text-decoration:underline'>{$connection_name}.zip</a>\n\t\t</div>\t\t\n\t\t\t\t\n\t\t</center>\n\t\t";
    }
    $html = "\n\t\n\t{$download}\n\t<div style='font-size:16px'>{events}</div>\n\t<div style='width:100%;height:200px;overflow:auto'>" . implode("\n", $html_logs) . "</div>";
    $tpl = new templates();
    echo $tpl->_ENGINE_parse_body($html);
}
function buildconfig()
{
    $vpn = new openvpn();
    $connection_name = trim(strtolower($_POST["connection_name"]));
    if ($connection_name == null) {
        $connection_name = time();
    }
    $connection_name = str_replace(" ", "-", $connection_name);
    $connection_name = replace_accents($connection_name);
    $connection_name = str_replace("/", "-", $connection_name);
    $connection_name = str_replace('\\', "-", $connection_name);
    $tools = new htmltools_inc();
    $connection_name = $tools->StripSpecialsChars($connection_name);
    $connection_name = mysql_escape_string2($connection_name);
    $q = new mysql();
    $q->QUERY_SQL("INSERT IGNORE INTO `openvpn_clients` (uid,ComputerOS) VALUES ('{$connection_name}','{$_POST["ComputerOS"]}')", "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
}
Beispiel #6
0
function lang_popup()
{
    $htmlT = new htmltools_inc();
    $page = CurrentPageName();
    $lang = $htmlT->LanguageArray();
    $tpl = new templates();
    $boot = new boostrap_form();
    $boot->set_list("lang", "{language}", $lang, $tpl->language, array("COOKIE" => "artica-language"));
    $boot->set_AjaxFinal("window.location.href='{$page}';");
    $boot->set_button("{apply}");
    $boot->set_CloseYahoo("YahooWin3");
    echo $boot->Compile();
}
function cache_popup_save()
{
    if (!AdminPrivs()) {
        echo "No rights!";
        return;
    }
    $ID = $_POST["ID"];
    unset($_POST["ID"]);
    $q = new mysql_squid_builder();
    include_once dirname(__FILE__) . "/ressources/class.html.tools.inc";
    $html = new htmltools_inc();
    $_POST["keys_zone"] = $html->StripSpecialsChars($_POST["keys_zone"]);
    $_POST["directory"] = url_decode_special_tool($_POST["directory"]);
    $editF = false;
    if ($ID > 0) {
        $editF = true;
    }
    while (list($key, $value) = each($_POST)) {
        $fields[] = "`{$key}`";
        $values[] = "'" . mysql_escape_string2($value) . "'";
        $edit[] = "`{$key}`='" . mysql_escape_string2($value) . "'";
    }
    if ($editF) {
        $sql = "UPDATE nginx_caches SET " . @implode(",", $edit) . " WHERE ID='{$ID}'";
    } else {
        $sql = "INSERT IGNORE INTO nginx_caches (" . @implode(",", $fields) . ") VALUES (" . @implode(",", $values) . ")";
    }
    $q->QUERY_SQL($sql);
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    $sock->getFrameWork("squid.php?reverse-proxy-apply=yes");
}
function route_settings_save()
{
    $q = new mysql();
    $ID = $_POST["ID"];
    unset($_POST["ID"]);
    include_once dirname(__FILE__) . "/ressources/class.html.tools.inc";
    $html = new htmltools_inc();
    $_POST["routename"] = $html->StripSpecialsChars($_POST["routename"]);
    while (list($key, $value) = each($_POST)) {
        $fields[] = "`{$key}`";
        $values[] = "'" . mysql_escape_string2($value) . "'";
        $edit[] = "`{$key}`='" . mysql_escape_string2($value) . "'";
    }
    if ($ID > 0) {
        $sql = "UPDATE iproute_table SET " . @implode(",", $edit) . " WHERE ID='{$ID}'";
    } else {
        $sql = "INSERT IGNORE INTO iproute_table (" . @implode(",", $fields) . ") VALUES (" . @implode(",", $values) . ")";
    }
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    $sock->getFrameWork("cmd.php?ip-build-routes=yes");
}
Beispiel #9
0
function disk_form_save()
{
    if ($_POST["loop-dir"] == null) {
        $_POST["loop-dir"] = "/home/virtuals-disks";
    }
    if ($_POST["loop-name"] == null) {
        $_POST["loop-name"] = time();
    }
    $path = $_POST["loop-dir"] . "/" . time() . ".disk";
    $size = $_POST["loop-size"];
    $t = new htmltools_inc();
    $_POST["loop-name"] = $t->StripSpecialsChars($_POST["loop-name"]);
    if (!is_numeric($size)) {
        $size = "10000";
    }
    $_POST["loop-name"] = addslashes($_POST["loop-name"]);
    $sql = "INSERT INTO loop_disks (`path`,`size`,`disk_name`) VALUES ('{$path}','{$size}','{$_POST["loop-name"]}')";
    $q = new mysql();
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    $sock->getFrameWork("lvm.php?loopcheck=yes");
}
 function uid_to_tablename($uid)
 {
     $uid = trim($uid);
     if (preg_match("#(.+?)\\/(.+)#", $uid, $re)) {
         $uid = $re[2];
     }
     if (!class_exists("class.html.tools.inc")) {
         include_once dirname(__FILE__) . "/class.html.tools.inc";
     }
     $t = new htmltools_inc();
     $uid = $t->replace_accents($uid);
     $uid = str_replace("\$", "", $uid);
     $uid = str_replace(" ", "_", $uid);
     return $uid;
 }
Beispiel #11
0
function disk_form_save()
{
    if ($_POST["loop-dir"] == null) {
        $_POST["loop-dir"] = "/home/virtuals-disks";
    }
    if ($_POST["loop-name"] == null) {
        $_POST["loop-name"] = time();
    }
    $path = $_POST["loop-dir"] . "/" . time() . ".disk";
    $size = $_POST["loop-size"];
    $t = new htmltools_inc();
    $sock = new sockets();
    $_POST["loop-name"] = $t->StripSpecialsChars($_POST["loop-name"]);
    if (!is_numeric($size)) {
        $size = 10000;
    }
    $_POST["loop-name"] = addslashes($_POST["loop-name"]);
    $dir = $_POST["loop-dir"];
    $HardDriveSizeMB = unserialize(base64_decode($sock->getFrameWork("system.php?HardDriveDiskSizeMB=" . base64_encode($dir))));
    if (!is_array($HardDriveSizeMB)) {
        echo "Fatal Error Cannot retreive information for `{$dir}`";
        return;
    }
    $AVAILABLEMB = $HardDriveSizeMB["AVAILABLE"];
    if ($AVAILABLEMB < $size) {
        $T = $size - $AVAILABLEMB;
        echo "Fatal Error : Available: {$AVAILABLEMB}MB, need at least {$T}MB";
        return;
    }
    $sql = "INSERT INTO loop_disks (`path`,`size`,`disk_name`,`maxfds`) VALUES ('{$path}','{$size}','{$_POST["loop-name"]}','{$_POST["maxfds"]}')";
    $q = new mysql();
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    if ($size < 110000) {
        echo base64_decode($sock->getFrameWork("lvm.php?loopcheck=yes&output=yes"));
    } else {
        $sock->getFrameWork("lvm.php?loopcheck=yes");
    }
}
Beispiel #12
0
function save_nic()
{
    $DNS_1 = null;
    $DNS_2 = null;
    $sock = new sockets();
    $tpl = new templates();
    $ip = new networking();
    $ERROR_NO_PRIVS = $tpl->javascript_parse_text("{ERROR_NO_PRIVS}");
    $DisableNetworksManagement = $sock->GET_INFO("DisableNetworksManagement");
    if ($DisableNetworksManagement == null) {
        $DisableNetworksManagement = 0;
    }
    if ($DisableNetworksManagement == 1) {
        echo $ERROR_NO_PRIVS;
        return;
    }
    if (isset($_GET["NICNAME"])) {
        $NICNAME = trim(url_decode_special_tool($_GET["NICNAME"]));
    }
    $nic = trim($_GET["save_nic"]);
    $sql = "UPDATE `nics` SET `enabled`='{$_GET["enabled"]}' WHERE `Interface`='{$nic}'";
    $q = new mysql();
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
    }
    if ($_GET["netzone"] == null) {
        echo "Network Zone must be defined\n";
        return;
    }
    if ($_GET["netzone"] != null) {
        if (strlen($_POST["netzone"]) > 5) {
            echo "Network Zone {$_GET["netzone"]} at most 5 characters long\n";
            return;
        }
        if (is_numeric(substr($_GET["netzone"], 0, 1))) {
            echo "Network Zone Must start with a letter\n";
            return;
        }
    }
    $nic = trim($_GET["save_nic"]);
    $IPADDR = trim($_GET["IPADDR"]);
    $NETMASK = trim($_GET["NETMASK"]);
    $GATEWAY = trim($_GET["GATEWAY"]);
    $BROADCAST = trim($_GET["BROADCAST"]);
    if (isset($_GET["DNS_1"])) {
        $DNS_1 = $_GET["DNS_1"];
    }
    if (isset($_GET["DNS_2"])) {
        $DNS_2 = $_GET["DNS_2"];
    }
    $dhcp = trim($_GET["dhcp"]);
    $arrayNic = $ip->GetNicInfos($nic);
    $q = new mysql();
    $sql = "SELECT ipaddr FROM nic_virtuals WHERE ipaddr='{$IPADDR}'";
    $ligne = mysql_fetch_array($q->QUERY_SQL($sql, "artica_backup"));
    if ($ligne["ipaddr"] != null) {
        echo $tpl->javascript_parse_text("{already_used}: {$IPADDR} (Virtual)");
        return;
    }
    $sql = "SELECT ipaddr FROM nics_vlan WHERE ipaddr='{$IPADDR}'";
    $ligne = mysql_fetch_array($q->QUERY_SQL($sql, "artica_backup"));
    if ($ligne["ipaddr"] != null) {
        echo $tpl->javascript_parse_text("{already_used}: {$IPADDR} (VLAN)");
        return;
    }
    $ROUTES = base64_encode(serialize($arrayNic["ROUTES"]));
    if (intval($_GET["enabled"]) == 1) {
        if ($_GET["dhcp"] != 1) {
            if (!$ip->checkIP($IPADDR)) {
                echo "CheckIP: Address: {$IPADDR} = False;\n";
                return;
            }
            if (!$ip->checkIP($NETMASK)) {
                echo "CheckIP: NetMask {$NETMASK} = False;\n";
                return;
            }
            if ($GATEWAY != "0.0.0.0") {
                if (!$ip->checkIP($GATEWAY)) {
                    echo "CheckIP: Gateway {$GATEWAY} = False;\n";
                    return;
                }
            }
        }
        if ($DNS_1 != null) {
            if (!$ip->checkIP($DNS_1)) {
                echo "CheckIP: DNS 1 {$DNS_1} = False;\nOr set null value to remove this message";
                return;
            }
        }
        if ($DNS_2 != null) {
            if (!$ip->checkIP($DNS_2)) {
                echo "CheckIP: DNS 2 {$DNS_2} = False;\nOr set null value to remove this message";
                return;
            }
        }
    }
    $htmltools = new htmltools_inc();
    $_GET["netzone"] = $htmltools->StripSpecialsChars($_GET["netzone"]);
    $tpl = new templates();
    $nics = new system_nic($nic);
    $text[] = "{$NICNAME} {$nic} {$IPADDR}";
    if ($NICNAME != null) {
        $nics->NICNAME = $NICNAME;
    }
    $nics->eth = $nic;
    $nics->IPADDR = $IPADDR;
    $nics->NETMASK = $NETMASK;
    $nics->GATEWAY = $GATEWAY;
    $nics->BROADCAST = $BROADCAST;
    if ($DNS_1 != null) {
        $nics->DNS1 = $DNS_1;
    }
    if ($DNS_2 != null) {
        $nics->DNS2 = $DNS_2;
    }
    $nics->dhcp = $_GET["dhcp"];
    $nics->metric = $_GET["metric"];
    $nics->enabled = intval($_GET["enabled"]);
    $nics->netzone = $_GET["netzone"];
    $nics->mtu = $_GET["mtu"];
    if (isset($_GET["defaultroute"])) {
        $nics->defaultroute = $_GET["defaultroute"];
    }
    if (isset($_GET["Bridged"])) {
        $nics->Bridged = $_GET["Bridged"];
        $text[] = "Bridged, ";
    }
    if (isset($_GET["BridgedTo"])) {
        $nics->BridgedTo = $_GET["BridgedTo"];
        $text[] = "{$_GET["BridgedTo"]}";
    }
    if (isset($_GET["defaultroute"])) {
        $nics->defaultroute = $_GET["defaultroute"];
    }
    if ($_GET["noreboot"] == "noreboot") {
        $nics->NoReboot = true;
        if ($nics->SaveNic()) {
            return;
        }
    }
    $nics->SaveNic();
}
Beispiel #13
0
function high_menus()
{
    return;
    $sock = new sockets();
    $FixedLanguage = $sock->GET_INFO("FixedLanguage");
    if (!isset($GLOBALS["CLASS_USERS_MENUS"])) {
        $users = new usersMenus();
        $GLOBALS["CLASS_USERS_MENUS"] = $users;
    } else {
        $users = $GLOBALS["CLASS_USERS_MENUS"];
    }
    $tpl = new templates();
    if (is_file("ressources/templates/{$_COOKIE["artica-template"]}/HEAD_MENUS")) {
        $html = @file_get_contents("ressources/templates/{$_COOKIE["artica-template"]}/HEAD_MENUS");
        $html = str_replace("%articaver%", $users->ARTICA_VERSION, $html);
        echo $tpl->_ENGINE_parse_body($html);
        return;
    }
    include_once dirname(__FILE__) . "/ressources/class.html.tools.inc";
    $htmlT = new htmltools_inc();
    $lang = $htmlT->LanguageArray();
    $users = new usersMenus();
    if (!is_numeric($_SESSION["SWITCH_HIGH_MENUS"])) {
        $_SESSION["SWITCH_HIGH_MENUS"] = 1;
    }
    if ($users->AsAnAdministratorGeneric) {
        if ($_SESSION["SWITCH_HIGH_MENUS"] == 1) {
            $html = "\t\n\t\t\t<table style='width:80%;padding:0px;margin:0px;border:0px;margin-top:2px'>\n\t\t\t<tr>\n\t\t\t";
            if ($_SESSION["uid"] == -100) {
                $html = $html . "<td><a href='#' OnClick=\"javascript:Loadjs('artica.settings.php?js=yes&func-AccountsInterface=yes');\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>Manager</a></td>\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>";
            }
            $html = $html . "\n\t\t\t\t<td><a href='#' OnClick=\"javascript:logoff();\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>{logoff}</a></td>\n\t\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>\n\t\t\t<td><a href='#' OnClick=\"javascript:Loadjs('chg.language.php');\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>{language}:&nbsp;{$tpl->language}</a></td>\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>\n\t\t\t<td><a href='#' OnClick=\"javascript:Loadjs('artica.update.php?js=yes')\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>{version}:&nbsp;{$users->ARTICA_VERSION}</a></td>\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>\n\t\t\t<td><a href='#' OnClick=\"javascript:AjaxTopMenuTiny('div-high-menus','Inotify.php?switch-high=yes');\" \n\t\t\tstyle='color:#CCCCCC;font-size:11px;'>&raquo;&raquo;</a></td>\t\t\t\t\n\t\t\t</tr>\n\t\t\t</table>\n\t\t\t";
            $_SESSION["SWITCH_HIGH_MENUS"] = 0;
            echo $tpl->_ENGINE_parse_body($html);
        } else {
            include_once dirname(__FILE__) . "/ressources/class.os.system.inc";
            include_once dirname(__FILE__) . "/ressources/class.os.system.tools.inc";
            $os = new os_system();
            $cpunum = intval($users->CPU_NUMBER);
            $array_load = sys_getloadavg();
            $org_load = $array_load[2];
            $load = intval($org_load);
            $hash_mem = $os->realMemory();
            $mem_used_p = $hash_mem["ram"]["percent"];
            $mem_used_kb = FormatBytes($hash_mem["ram"]["used"]);
            $total = FormatBytes($hash_mem["ram"]["total"]);
            $swapar = $os->swap();
            $max_vert_fonce = $cpunum;
            $max_vert_tfonce = $cpunum + 1;
            $max_orange = $cpunum * 0.75;
            $max_over = $cpunum * 2;
            $purc1 = $load / $cpunum;
            $pourc = round($purc1 * 100, 2);
            $color = "#5DD13D";
            if ($load >= $max_orange) {
                $color = "#F59C44";
            }
            if ($load > $max_vert_fonce) {
                $color = "#C5792D";
            }
            if ($load > $max_vert_tfonce) {
                $color = "#83501F";
            }
            if ($load >= $max_over) {
                $color = "#640000";
                $text = "{overloaded}";
            }
            $html = "\t\n\t\t\t<table style='width:80%;padding:0px;margin:0px;border:0px;margin-top:2px'>\n\t\t\t<tbody>\n\t\t\t<tr>";
            if ($_SESSION["uid"] == -100) {
                $html = $html . "<td><a href='#' OnClick=\"javascript:Loadjs('artica.settings.php?js=yes&func-AccountsInterface=yes');\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>Manager</a></td>\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>";
            }
            $html = $html . "<td nowrap><a href='#' OnClick=\"javascript:logoff();\" style='color:#CCCCCC;font-size:11px;text-decoration:underline'>{logoff}</a></td>\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>\t\t\n\t\t\t<td nowrap><a href='#' OnClick=\"javascript:Loadjs('chg.language.php');\" \n\t\t\tstyle='color:#CCCCCC;font-size:11px;'>{load}: {$org_load}</a></td>\t\n\t\t\t<td style='color:white;font-size:11px;' nowrap>&nbsp;|&nbsp;</td>\n\t\t\t<td nowrap><a href='#' OnClick=\"javascript:Loadjs('chg.language.php');\" \n\t\t\tstyle='color:#CCCCCC;font-size:11px;' nowrap>mem: {$mem_used_p}%</a></td>\n\t\t\t<td style='color:white;font-size:11px;' nowrap>&nbsp;|&nbsp;</td>\n<td nowrap><a href='#' OnClick=\"javascript:Loadjs('chg.language.php');\" \n\t\t\tstyle='color:#CCCCCC;font-size:11px;' nowrap>swap: {$swapar[0]}%</a></td>\t\n\t\t\t<td style='color:white;font-size:11px;'>&nbsp;|&nbsp;</td>\n\t\t\t<td nowrap><a href='#' OnClick=\"javascript:AjaxTopMenuTiny('div-high-menus','Inotify.php?switch-high=yes');\" \n\t\t\tstyle='color:#CCCCCC;font-size:11px;'>&raquo;&raquo;</a></td>\t\t\t\t\t\t\n\t\t\t</tR>\n\t\t\t</tbody>\n\t\t\t</table>\n\t\t\t";
            $_SESSION["SWITCH_HIGH_MENUS"] = 1;
            echo $tpl->_ENGINE_parse_body($html);
        }
    }
}
function route_save()
{
    include_once dirname(__FILE__) . "/class.html.tools.inc";
    $html = new htmltools_inc();
    $ID = $_POST["ID"];
    $RouteName = trim(strtolower($html->replace_accents($_POST["RouteName"])));
    $RouteName = str_replace(" ", "", $RouteName);
    $RouteName = str_replace("/", "", $RouteName);
    $RouteName = str_replace("#", "", $RouteName);
    $RouteName = str_replace("\$", "", $RouteName);
    $ADD = false;
    if ($ID == 0) {
        $sql = "INSERT INTO routing_rules (`RouteName`,`nic`,`enabled`)\n\t\tVALUES('{$RouteName}','{$_POST["nic"]}',1);";
        $eth = $_POST["nic"];
        $ADD = true;
    } else {
        $sql = "UPDATE routing_rules SET\n\t\t\t\t`RouteName`='{$RouteName}',\n\t\t\t\t`nic`='{$_POST["nic"]}',\n\t\t\t\t`enabled`='{$_POST["enabled"]}'\n\t\t\t\t WHERE `ID`='{$ID}'";
    }
    $q = new mysql();
    $q->QUERY_SQL($sql, "artica_backup");
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    if ($ADD) {
        $ruleid = $q->last_id;
        $nicClass = new system_nic($eth);
        $metric = $ruleid + 1;
        $tr = explode(".", $nicClass->IPADDR);
        unset($tr[3]);
        $ipf = @implode(".", $tr) . ".0";
        $sql = "INSERT INTO routing_rules_dest (`type`,`gateway`,`pattern`,`ruleid`,`nic`,`metric`,`zOrder`)\n\t\tVALUES('1','','{$ipf}/{$nicClass->NETMASK}','{$ruleid}','{$eth}','{$metric}','1');";
        $q->QUERY_SQL($sql, "artica_backup");
    }
}
function pools_save()
{
    $poolid = $_POST["poolid"];
    unset($_POST["poolid"]);
    $revers = new squid_reverse();
    include_once dirname(__FILE__) . "/class.html.tools.inc";
    $html = new htmltools_inc();
    $_POST["poolname"] = $html->StripSpecialsChars($_POST["poolname"]);
    while (list($key, $value) = each($_POST)) {
        $fields[] = "`{$key}`";
        $values[] = "'" . mysql_escape_string2($value) . "'";
        $edit[] = "`{$key}`='" . mysql_escape_string2($value) . "'";
    }
    if ($poolid > 0) {
        $sql = "UPDATE nginx_pools SET " . @implode(",", $edit) . " WHERE ID={$poolid}";
    } else {
        $sql = "INSERT IGNORE INTO nginx_pools (" . @implode(",", $fields) . ") VALUES (" . @implode(",", $values) . ")";
    }
    $q = new mysql_squid_builder();
    $q->QUERY_SQL($sql);
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $sock = new sockets();
    $sock->getFrameWork("squid.php?reverse-proxy-apply=yes");
}
function servername_tokey($servername)
{
    $html = new htmltools_inc();
    return $html->StripSpecialsChars($servername);
}
function add_category_save()
{
    $_POST["personal_database"] = url_decode_special_tool($_POST["personal_database"]);
    $_POST["category_text"] = url_decode_special_tool($_POST["category_text"]);
    $org = $_POST["personal_database"];
    include_once dirname(__FILE__) . "/ressources/class.html.tools.inc";
    $html = new htmltools_inc();
    $dans = new dansguardian_rules();
    $_POST["personal_database"] = strtolower($html->StripSpecialsChars($_POST["personal_database"]));
    if ($_POST["personal_database"] == null) {
        echo "No category set or wrong category name \"{$org}\"\n";
        return;
    }
    if ($_POST["personal_database"] == "security") {
        $_POST["personal_database"] = "security2";
    }
    if ($_POST["CatzByGroupA"] != null) {
        $_POST["CatzByGroupL"] = $_POST["CatzByGroupA"];
    }
    $_POST["CatzByGroupL"] = mysql_escape_string2($_POST["CatzByGroupL"]);
    $_POST["category_text"] = url_decode_special_tool($_POST["category_text"]);
    $_POST["category_text"] = mysql_escape_string2($_POST["category_text"]);
    $q = new mysql_squid_builder();
    $sql = "SELECT category FROM personal_categories WHERE category='{$_POST["personal_database"]}'";
    $ligne = mysql_fetch_array($q->QUERY_SQL($sql));
    if ($ligne["category"] != null) {
        $sql = "UPDATE personal_categories\n\t\tSET category_description='{$_POST["category_text"]}',\n\t\t`PublicMode`='{$_POST["PublicMode"]}',\n\t\tmaster_category='{$_POST["CatzByGroupL"]}'\n\t\tWHERE category='{$_POST["personal_database"]}'\n\t\t";
    } else {
        if (isset($dans->array_blacksites[$_POST["personal_database"]])) {
            $tpl = new templates();
            echo $tpl->javascript_parse_text("{$_POST["personal_database"]}:{category_already_exists}");
            return;
        }
        $sql = "INSERT IGNORE INTO personal_categories (category,category_description,master_category,PublicMode)\n\t\tVALUES ('{$_POST["personal_database"]}','{$_POST["category_text"]}','{$_POST["CatzByGroupL"]}','{$_POST["PublicMode"]}');";
    }
    $q->QUERY_SQL($sql);
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
    $q->CreateCategoryTable($_POST["personal_database"]);
    $sql = "TRUNCATE TABLE webfilters_categories_caches";
    $dans->CategoriesTableCache();
    $dans->CleanCategoryCaches();
}
Beispiel #18
0
function TEMPLATE_LANG_POPUP()
{
    $page = CurrentPageName();
    $tpl = new templates();
    $html = "\t\n<table cellspacing='0' cellpadding='0' border='0' class='tableView' style='width:100%'>\n<thead class='thead'>\n\t<tr>\n\t<th>&nbsp;</th>\n\t\n\t</tr>\n</thead>\n<tbody class='tbody'>";
    $t = time();
    $htmlT = new htmltools_inc();
    $lang = $htmlT->LanguageArray();
    while (list($num, $val) = each($lang)) {
        if ($classtr == "oddRow") {
            $classtr = null;
        } else {
            $classtr = "oddRow";
        }
        $html = $html . "\n\t\t<tr class={$classtr}>\n\t\t\t<td style='font-size:18px'><a href=\"javascript:blur();\" OnClick=\"javascript:SelectMyLanguage('{$num}')\" style='font-weight:bold'>{$val}</a></td>\n\t\t</tr>\n\t\t\n\t\t";
    }
    $html = $html . "</tbody></table>\n\t<script>\n\tvar X_SelectMyLanguage= function (obj) {\n\t\tvar results=obj.responseText;\n\t\n\t}\n\t\n\t\n\t\tfunction SelectMyLanguage(lang){\n\t\t\tSet_Cookie('artica-language', lang, '3600', '/', '', '');\n\t\t\tvar XHR = new XHRConnection();\n\t\t\tXHR.appendData('Changelang',lang);\n\t\t\tMEM_PASSWORD=document.getElementById('artica_password').value;\n\t\t\tXHR.sendAndLoad('logon.php', 'POST');\t\t\n\t\t\tsetTimeout('ReloadThisPage()',800);\t\n\t\t\t\n\t\t\n\t\t}\n\t\t\n\t\tfunction ReloadThisPage(){\n\t\t\tMEM_USERNAME=document.getElementById('artica_username').value;\n\t\t\twindow.location.href='logon.php?MEM_USERNAME='******'&t={$t}';\n\t\t}\n\t</script>\n\t\n\t";
    echo $tpl->_ENGINE_parse_body($html);
    #F2FAFD
}
Beispiel #19
0
function ACTION_LVM_CREATE_LV(){
	$sock=new sockets();
	$vg=$_POST["VG"];
	$dev=$_POST["lvcreate-perform"];
	$lvname=$_POST["LVNAME"];
	$lvsize=$_POST["LVSIZE"];	
	$t=new htmltools_inc();
	$lvname=$t->StripSpecialsChars($lvname);
	$lvname=urlencode($lvname);
	$sock=new sockets();
	writelogs("create \"$lvname\" in $vg for {$lvsize}M",__FUNCTION__,__FILE__,__LINE__);
	
	$datas=base64_decode($sock->getFrameWork("lvm.php?lvcreate=yes&lvname=$lvname&lvsize=$lvsize&dev=".urlencode($_GET["dev"])."&gpname=".urlencode($vg)));
	echo $datas;		
	
}
function add_category_save()
{
    $_POST["personal_database"] = url_decode_special_tool($_POST["personal_database"]);
    $_POST["category_text"] = url_decode_special_tool($_POST["category_text"]);
    $org = $_POST["personal_database"];
    $html = new htmltools_inc();
    $_POST["personal_database"] = strtolower($html->StripSpecialsChars($_POST["personal_database"]));
    if ($_POST["personal_database"] == null) {
        echo "No category set or wrong category name \"{$org}\"\n";
        return;
    }
    if ($_POST["personal_database"] == "security") {
        $_POST["personal_database"] = "security2";
    }
    if ($_POST["CatzByGroupA"] != null) {
        $_POST["CatzByGroupL"] = $_POST["CatzByGroupA"];
    }
    $_POST["CatzByGroupL"] = mysql_escape_string2($_POST["CatzByGroupL"]);
    $_POST["category_text"] = url_decode_special_tool($_POST["category_text"]);
    $_POST["category_text"] = mysql_escape_string2($_POST["category_text"]);
    $q = new mysql_meta();
    $sql = "CREATE TABLE IF NOT EXISTS `webfiltering_categories` (\n\t\t\t\t`category` VARCHAR( 15 ) NOT NULL ,\n\t\t\t\t`category_description` VARCHAR( 255 ) NOT NULL ,\n\t\t\t\t`PublicMode` smallint(1) NOT NULL,\n\t\t\t\tPRIMARY KEY (`category`),\n\t\t\t\tINDEX ( `category_description`) ,\n\t\t\t\tKEY `PublicMode` (`PublicMode`) )  ENGINE = MYISAM;";
    $q->QUERY_SQL($sql);
    $sql = "SELECT category FROM webfiltering_categories WHERE category='{$_POST["personal_database"]}'";
    $ligne = mysql_fetch_array($q->QUERY_SQL($sql));
    if ($ligne["category"] == null) {
        $sql = "INSERT IGNORE INTO webfiltering_categories (category,category_description,PublicMode)\n\t\tVALUES ('{$_POST["personal_database"]}','{$_POST["category_text"]}','{$_POST["PublicMode"]}');";
    } else {
        $sql = "UPDATE webfiltering_categories SET category_description='{$_POST["category_text"]}',\n\t\tPublicMode='{$_POST["PublicMode"]}' WHERE category='{$_POST["personal_database"]}'";
    }
    $q->QUERY_SQL($sql);
    if (!$q->ok) {
        echo $q->mysql_error;
        return;
    }
}
Beispiel #21
0
function choose_language(){
	include_once(dirname(__FILE__)."/ressources/class.html.tools.inc");
	$tpl=new templates();
	$htmltools=new htmltools_inc();
	$lang=$htmltools->LanguageArray();	
	$page=CurrentPageName();
	
	$lang[null]="{select}";
	$html="<table style='width:100%' class=form>
	<tr>
		<td valign='top'>{language}: ($tpl->language)</td>
		<td>". Field_array_Hash($lang,"miniconfig-select-lang",$tpl->language,"style:font-size:16px;")."</td>
	</tr>
	<tr>
		<td colspan=2 align='right'>". button("{apply}","ChangeLang()")."</td>
	</tr>
	</table>
	
	<script>
	
	var x_ChangeLang= function (obj) {
		var response=obj.responseText;
		location.reload();
	}	
	
	function ChangeLang(){
		var lang=document.getElementById('miniconfig-select-lang').value;
		Set_Cookie('artica-language', lang, '3600', '/', '', '');
		var XHR = new XHRConnection();
		XHR.appendData('miniconfig-POST-lang',lang);
		XHR.sendAndLoad('$page', 'POST',x_ChangeLang);		
		location.reload();
	}
	</script>";
	
	echo $tpl->_ENGINE_parse_body($html);
	
	
}
Beispiel #22
0
function logonForm(){
	include_once(dirname(__FILE__)."/ressources/class.html.tools.inc");
	$sock=new sockets();
	$users=new usersMenus();
	$_SESSION["DisableSSHControl"]=trim($sock->GET_INFO("DisableSSHControl"));
	$AllowInternetUsersCreateOrg=$sock->GET_INFO("AllowInternetUsersCreateOrg");
	$AddInArticaLogonFrontPage=$sock->GET_INFO("AddInArticaLogonFrontPage");
	
	
	
	$html=new htmltools_inc();
	$lang=$html->LanguageArray();
	
	
	
	if($_GET["MEM_USERNAME"]==null){
		if($_COOKIE["mem-logon-user"]<>null){
			$_GET["MEM_USERNAME"]=$_COOKIE["mem-logon-user"];
		}
	}
	
	
	if($_COOKIE["artica-language"]==null){
		$languageClass=new articaLang();
		$defaultlanguage=$languageClass->get_languages();
		if($defaultlanguage=="pt"){$defaultlanguage="po";}
		if($lang[$defaultlanguage]==null){$defaultlanguage="en";}
		setcookie("artica-language", $defaultlanguage, time()+172800);
	
	}else{$defaultlanguage=$_COOKIE["artica-language"];}
	
	
	
	
	ksort($lang);
	$field_lang=Field_array_Hash($lang,'lang',$defaultlanguage,"ChangeDefaultLanguage()");

	
	$language_selector="
		<tr>
			<td align='right' class=legend style='font-size:13px'><strong>{language}:</strong></td>
			<td>$field_lang</td>
		</tr>";

		
	if($_GET["LANGUAGE_SELECTOR_REMOVE"]==1){
		$language_selector="<tr>
			<td colspan=2 style='margin:-1px;padding:-1px>
			<input type='hidden' name='lang' id='lang' value='{$_GET["DEFAULT_LANGUAGE"]}'></td>
			</tr>
		";
			
		$_SESSION["detected_lang"]=$_GET["DEFAULT_LANGUAGE"];
		unset($_SESSION["translation"]);
		setcookie("artica-language", $_GET["DEFAULT_LANGUAGE"], time()+172800);			
			
	}
		

$contour_color="#005447";
	if($users->KASPERSKY_WEB_APPLIANCE){
		$GLOBALS["CHANGE_TEMPLATE"]="squid.kav.html";
		$contour_color="#EB6947";
		//bg_kavweb-appliance.jpg
	}
	
if($AllowInternetUsersCreateOrg==1){
	if($AddInArticaLogonFrontPage==1){
		$addon="
		<div>
		<a href=\"miniadm.register.php\" style='font-size:11px'>{register}</a>&nbsp;|&nbsp;<a href=\"miniadm.php\" style='font-size:11px'>{organization_administrator}</a>
		</div>";
		
	}
}

if(!function_exists('ldap_connect')){
	$ldap_error= "
	<div style='border:3px solid red;font-size:16px;color:red;padding:5px;width:220px;position:absolute;left:0;top:0;background-color:white'>
		<center>Error ldap_connect() try to restart the web service<br><br>or check if php5-ldap is installed
		<br>And restart web server</center>
		<center>
		<form name='FF1' method='POST' action='$page'>
		<input type='hidden' name='php5-ldap-restart' value='1'>
		<input type='submit' value='&nbsp;&nbsp;&nbsp;Restart The web service&nbsp;&nbsp;&nbsp;'>
		</form>
		</center>
	</div>
	";

}

if(!function_exists("posix_getuid")){
	$ldap_error=$ldap_error. "
	<div style='border:3px solid red;font-size:16px;color:red;padding:5px;width:220px;position:absolute;left:250px;top:0;background-color:white'>
	Artica-postfix need <strong>posix &laquo;posix_getuid()&raquo;</strong>  function <BR>... please try to install php-posix
	</div>";
	
}

if(!function_exists('mysql_connect')){
	$ldap_error=$ldap_error. "
	<div style='border:3px solid red;font-size:16px;color:red;padding:5px;width:220px;position:absolute;left:500px;top:0;background-color:white'>
	Artica-postfix need  <strong> &laquo;mysql_connect()&raquo;</strong>  function <BR>... please try to install php-mysql
	</div>";	
	
}
	
$html="<div id='loginform'>
<center>
<div style='color:red;font-size:13px;font-weight:bold;width:70%;
font-family:Helvetica,Tahoma,Verdana,sans-serif'>{$_GET["ERROR"]}</div>
</center>
<H1 style='text-align:left'>{logon}</h1>
<form name='logon_{$_SERVER["SERVER_NAME"]}' method='POST'>
				<table style='width:50%;border:3px solid $contour_color;margin:5px;padding:5px;'>
				<tr>
					<td align='right' class=legend style='font-size:13px'><strong>{username}:</strong></td>
					<td><input type='text' id='artica_username' name='artica_username' value='{$_GET["MEM_USERNAME"]}' 
					style='border:1px solid black;width:100%;font-size:13px'
					OnkeyPress=\"javascript:SendLogon(event)\"></td>
				</tr>
				<tr>
					<td align='right' class=legend style='font-size:13px'><strong>{password}:</strong></td>
					<td><input type='password'  id='artica_password' name='artica_password' 
					value='{$_GET["MEM_PASSWORD"]}' style='border:1px solid black;width:100%;font-size:13px'
					OnkeyPress=\"javascript:SendLogon(event)\"></td>
				</tr>
				$language_selector
				<tr>
					<td colspan=2 align='right' ><br>
					<input type='button' value='{logon}&nbsp;&raquo;' OnClick=\"javascript:SendLogonStart();\" OnkeyPress=\"javascript:SendLogon(event)\">
					</td>
				</tr>
				<tr><td colspan=2 align='right'>$addon</td>
				<tr>
				<td colspan=2 align='right' style='padding-top:10px'><span id='anim'></span></td>
				</tr>
				</table>	
	
</div>
$ldap_error
	
$script

";
return $html;
}