/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id */ function gen_pgroups($tpl, $sql, &$dmn_id) { $cfg = EasySCP_Registry::get('Config'); $query = "\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\t`htaccess_groups`\n\t\tWHERE\n\t\t\t`dmn_id` = ?\n\t\tORDER BY\n\t\t\t`dmn_id` DESC\n\t"; $rs = exec_query($sql, $query, $dmn_id); if ($rs->recordCount() == 0) { $tpl->assign('GROUP_MESSAGE', tr('You have no groups!')); } else { while (!$rs->EOF) { $tpl->append(array('GNAME' => tohtml($rs->fields['ugroup']), 'GSTATUS' => translate_dmn_status($rs->fields['status']), 'GROUP_ID' => $rs->fields['id'], 'GROUP_DELETE' => tr('Delete'), 'GROUP_DELETE_SCRIPT' => $rs->fields['status'] === $cfg->ITEM_OK_STATUS && $rs->fields['ugroup'] != $cfg->AWSTATS_GROUP_AUTH ? "action_delete('protected_group_delete.php?gname=" . $rs->fields['id'] . "', '" . $rs->fields['ugroup'] . "')" : tr('N/A'))); if ($rs->fields['members'] != '') { $group_members = ''; $members = explode(',', $rs->fields['members']); $cnt_members = count($members); for ($i = 0; $i < $cnt_members; $i++) { $query = "\n\t\t\t\t\t\tSELECT\n\t\t\t\t\t\t\t`uname`\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t`htaccess_users`\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t`id` = ?\n\t\t\t\t\t"; $rs_members = exec_query($sql, $query, $members[$i]); if ($cnt_members == 1 || $cnt_members == $i + 1) { $group_members .= tohtml($rs_members->fields['uname']); } else { $group_members .= tohtml($rs_members->fields['uname']) . ', '; } } $tpl->append('MEMBER', $group_members); } else { $tpl->append('MEMBER', ''); } $rs->moveNext(); } } }
/** * @param EasySCP_TemplateEngine $tpl */ function dump_gui_debug($tpl) { $gui_debug_data = '<div id="dump_gui_debug">'; $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_SESSION</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_SESSION, true)); $gui_debug_data .= '</pre>'; $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_POST</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_POST, true)); $gui_debug_data .= '</pre>'; $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_GET</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_GET, true)); $gui_debug_data .= '</pre>'; $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_COOKIE</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_COOKIE, true)); $gui_debug_data .= '</pre>'; $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_FILES</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_FILES, true)); $gui_debug_data .= '</pre>'; /* Activate debug code if needed $gui_debug_data .= '<span style="color:#00f;text-decoration:underline;">Content of <strong>$_SERVER</strong>:<br /></span>'; $gui_debug_data .= '<pre>'; $gui_debug_data .= htmlentities(print_r($_SERVER, true)); $gui_debug_data .= '</pre>'; */ $gui_debug_data .= '</div>'; $tpl->assign('GUI_DEBUG', $gui_debug_data); }
/** * @todo check if it's useful to have the table admin two times in the same query * @param EasySCP_TemplateEngine $tpl */ function gen_reseller_table($tpl) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); $query = "\n\t\tSELECT\n\t\t\tt1.`admin_id`, t1.`admin_name`, t2.`admin_name` AS created_by\n\t\tFROM\n\t\t\t`admin` AS t1,\n\t\t\t`admin` AS t2\n\t\tWHERE\n\t\t\tt1.`admin_type` = 'reseller'\n\t\tAND\n\t\t\tt1.`created_by` = t2.`admin_id`\n\t\tORDER BY\n\t\t\t`created_by`,\n\t\t\t`admin_id`\n\t"; $rs = exec_query($sql, $query); $i = 0; if ($rs->recordCount() == 0) { set_page_message(tr('Reseller list is empty!'), 'info'); } else { while (!$rs->EOF) { $admin_id = $rs->fields['admin_id']; $admin_id_var_name = "admin_id_" . $admin_id; $tpl->append(array('NUMBER' => $i + 1, 'RESELLER_NAME' => tohtml($rs->fields['admin_name']), 'OWNER' => tohtml($rs->fields['created_by']), 'CKB_NAME' => $admin_id_var_name)); $rs->moveNext(); $i++; } $tpl->assign('PAGE_MESSAGE', ''); } $query = "\n\t\tSELECT\n\t\t\t`admin_id`, `admin_name`\n\t\tFROM\n\t\t\t`admin`\n\t\tWHERE\n\t\t\t`admin_type` = 'admin'\n\t\tORDER BY\n\t\t\t`admin_name`\n\t"; $rs = exec_query($sql, $query); while (!$rs->EOF) { if (isset($_POST['uaction']) && $_POST['uaction'] === 'reseller_owner' && (isset($_POST['dest_admin']) && $_POST['dest_admin'] == $rs->fields['admin_id'])) { $selected = $cfg->HTML_SELECTED; } else { $selected = ''; } $tpl->append(array('OPTION' => tohtml($rs->fields['admin_name']), 'VALUE' => $rs->fields['admin_id'], 'SELECTED' => $selected)); $rs->moveNext(); } $tpl->assign('PAGE_MESSAGE', ''); }
/** * @param EasySCP_TemplateEngine $tpl */ function gen_user_table($tpl) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); $query = "\n\t\tSELECT\n\t\t\t`admin_id`, `admin_name`\n\t\tFROM\n\t\t\t`admin`\n\t\tWHERE\n\t\t\t`admin_type` = 'reseller'\n\t\tORDER BY\n\t\t\t`admin_name`\n\t"; $rs = exec_query($sql, $query); if ($rs->recordCount() == 0) { set_page_message(tr('Reseller or user list is empty!'), 'info'); user_goto('manage_users.php'); } $reseller_id = $rs->fields['admin_id']; $all_resellers = array(); while (!$rs->EOF) { if (isset($_POST['uaction']) && $_POST['uaction'] === 'change_src' && (isset($_POST['src_reseller']) && $_POST['src_reseller'] == $rs->fields['admin_id'])) { $selected = $cfg->HTML_SELECTED; $reseller_id = $_POST['src_reseller']; } else { if (isset($_POST['uaction']) && $_POST['uaction'] === 'move_user' && (isset($_POST['dst_reseller']) && $_POST['dst_reseller'] == $rs->fields['admin_id'])) { $selected = $cfg->HTML_SELECTED; $reseller_id = $_POST['dst_reseller']; } else { $selected = ''; } } $all_resellers[] = $rs->fields['admin_id']; $tpl->append(array('SRC_RSL_OPTION' => tohtml($rs->fields['admin_name']), 'SRC_RSL_VALUE' => $rs->fields['admin_id'], 'SRC_RSL_SELECTED' => $selected)); $tpl->append(array('DST_RSL_OPTION' => tohtml($rs->fields['admin_name']), 'DST_RSL_VALUE' => $rs->fields['admin_id'], 'DST_RSL_SELECTED' => '')); $rs->moveNext(); } if (isset($_POST['src_reseller']) && $_POST['src_reseller'] == 0) { $selected = $cfg->HTML_SELECTED; $reseller_id = 0; } else { $selected = ''; } $tpl->append(array('SRC_RSL_OPTION' => tr("N/A"), 'SRC_RSL_VALUE' => 0, 'SRC_RSL_SELECTED' => $selected)); if ($reseller_id === 0) { $query = "\n\t\t\tSELECT\n\t\t\t\t`admin_id`, `admin_name`\n\t\t\tFROM\n\t\t\t\t`admin`\n\t\t\tWHERE\n\t\t\t\t`admin_type` = 'user'\n\t\t\tAND\n\t\t\t\t`created_by` NOT IN (?)\n\t\t\tORDER BY\n\t\t\t\t`admin_name`\n\t\t"; $not_in = implode(',', $all_resellers); $rs = exec_query($sql, $query, $not_in); } else { $query = "\n\t\t\tSELECT\n\t\t\t\t`admin_id`, `admin_name`\n\t\t\tFROM\n\t\t\t\t`admin`\n\t\t\tWHERE\n\t\t\t\t`admin_type` = 'user'\n\t\t\tAND\n\t\t\t\t`created_by` = ?\n\t\t\tORDER BY\n\t\t\t\t`admin_name`\n\t\t"; $rs = exec_query($sql, $query, $reseller_id); } if ($rs->recordCount() == 0) { set_page_message(tr('User list is empty!'), 'info'); $tpl->assign('RESELLER_LIST', ''); } else { $i = 0; while (!$rs->EOF) { $admin_id = $rs->fields['admin_id']; $admin_id_var_name = 'admin_id_' . $admin_id; $show_admin_name = decode_idna($rs->fields['admin_name']); $tpl->append(array('NUMBER' => $i + 1, 'USER_NAME' => tohtml($show_admin_name), 'CKB_NAME' => $admin_id_var_name)); $rs->moveNext(); $i++; } } }
/** * @param EasySCP_TemplateEngine $tpl * @param int $user_id */ function gen_admin_personal_data($tpl, $user_id) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); $query = "\n\t\tSELECT\n\t\t\t`fname`,\n\t\t\t`lname`,\n\t\t\t`gender`,\n\t\t\t`firm`,\n\t\t\t`zip`,\n\t\t\t`city`,\n\t\t\t`state`,\n\t\t\t`country`,\n\t\t\t`street1`,\n\t\t\t`street2`,\n\t\t\t`email`,\n\t\t\t`phone`,\n\t\t\t`fax`\n\t\tFROM\n\t\t\t`admin`\n\t\tWHERE\n\t\t\t`admin_id` = ?\n\t"; $rs = exec_query($sql, $query, $user_id); $tpl->assign(array('FIRST_NAME' => empty($rs->fields['fname']) ? '' : tohtml($rs->fields['fname']), 'LAST_NAME' => empty($rs->fields['lname']) ? '' : tohtml($rs->fields['lname']), 'FIRM' => empty($rs->fields['firm']) ? '' : tohtml($rs->fields['firm']), 'ZIP' => empty($rs->fields['zip']) ? '' : tohtml($rs->fields['zip']), 'CITY' => empty($rs->fields['city']) ? '' : tohtml($rs->fields['city']), 'STATE' => empty($rs->fields['state']) ? '' : tohtml($rs->fields['state']), 'COUNTRY' => empty($rs->fields['country']) ? '' : tohtml($rs->fields['country']), 'STREET_1' => empty($rs->fields['street1']) ? '' : tohtml($rs->fields['street1']), 'STREET_2' => empty($rs->fields['street2']) ? '' : tohtml($rs->fields['street2']), 'EMAIL' => empty($rs->fields['email']) ? '' : tohtml($rs->fields['email']), 'PHONE' => empty($rs->fields['phone']) ? '' : tohtml($rs->fields['phone']), 'FAX' => empty($rs->fields['fax']) ? '' : tohtml($rs->fields['fax']), 'VL_MALE' => $rs->fields['gender'] == 'M' ? $cfg->HTML_SELECTED : '', 'VL_FEMALE' => $rs->fields['gender'] == 'F' ? $cfg->HTML_SELECTED : '', 'VL_UNKNOWN' => $rs->fields['gender'] == 'U' || empty($rs->fields['gender']) ? $cfg->HTML_SELECTED : '')); }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id */ function gen_user_assign($tpl, $sql, &$dmn_id) { if (isset($_GET['uname']) && $_GET['uname'] !== '' && is_numeric($_GET['uname'])) { $uuser_id = $_GET['uname']; $tpl->assign('UNAME', tohtml(get_htuser_name($sql, $uuser_id, $dmn_id))); $tpl->assign('UID', $uuser_id); } else { if (isset($_POST['nadmin_name']) && !empty($_POST['nadmin_name']) && is_numeric($_POST['nadmin_name'])) { $uuser_id = $_POST['nadmin_name']; $tpl->assign('UNAME', tohtml(get_htuser_name($sql, $uuser_id, $dmn_id))); $tpl->assign('UID', $uuser_id); } else { user_goto('protected_user_manage.php'); } } // get groups $query = "\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\t`htaccess_groups`\n\t\tWHERE\n\t\t\t`dmn_id` = ?\n\t"; $rs = exec_query($sql, $query, $dmn_id); if ($rs->recordCount() == 0) { set_page_message(tr('You have no groups!'), 'info'); user_goto('protected_user_manage.php'); } else { $added_in = 0; $not_added_in = 0; while (!$rs->EOF) { $group_id = $rs->fields['id']; $group_name = $rs->fields['ugroup']; $members = $rs->fields['members']; $members = explode(",", $members); $grp_in = 0; // let's generete all groups wher the user is assigned for ($i = 0, $cnt_members = count($members); $i < $cnt_members; $i++) { if ($uuser_id == $members[$i]) { $tpl->append(array('GRP_IN' => tohtml($group_name), 'GRP_IN_ID' => $group_id)); $grp_in = $group_id; $added_in++; } } if ($grp_in !== $group_id) { $tpl->append(array('GRP_NAME' => tohtml($group_name), 'GRP_ID' => $group_id)); $not_added_in++; } $rs->moveNext(); } // generate add/remove buttons if ($added_in != 0) { $tpl->assign('IN_GROUP', true); } if ($not_added_in != 0) { $tpl->assign('NOT_IN_GROUP', true); } } }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id */ function gen_htaccess_entries($tpl, $sql, &$dmn_id) { $query = "\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\t`htaccess`\n\t\tWHERE\n\t\t\t`dmn_id` = ?\n\t"; $rs = exec_query($sql, $query, $dmn_id); if ($rs->recordCount() == 0) { set_page_message(tr('You do not have protected areas'), 'info'); } else { while (!$rs->EOF) { $auth_name = $rs->fields['auth_name']; $tpl->append(array('AREA_NAME' => tohtml($auth_name), 'JS_AREA_NAME' => addslashes($auth_name), 'AREA_PATH' => tohtml($rs->fields['path']), 'PID' => $rs->fields['id'], 'STATUS' => translate_dmn_status($rs->fields['status']))); $rs->moveNext(); } } }
/** * @param EasySCP_TemplateEngine $tpl */ function gen_directories($tpl) { $sql = EasySCP_Registry::get('Db'); // Initialize variables $path = isset($_GET['cur_dir']) ? $_GET['cur_dir'] : ''; $domain = $_SESSION['user_logged']; // Create the virtual file system and open it so it can be used $vfs = new EasySCP_VirtualFileSystem($domain, $sql); // Get the directory listing $list = $vfs->ls($path); if (!$list) { set_page_message(tr('Cannot open directory!<br />Please contact your administrator!'), 'error'); return; } // Show parent directory link $parent = explode(DIRECTORY_SEPARATOR, $path); array_pop($parent); $parent = implode(DIRECTORY_SEPARATOR, $parent); $tpl->append(array('ACTION' => '', 'ACTION_LINK' => 'no', 'ICON' => "parent", 'DIR_NAME' => tr('Parent Directory'), 'CHOOSE_IT' => '', 'LINK' => 'ftp_choose_dir.php?cur_dir=' . $parent)); // Show directories only foreach ($list as $entry) { // Skip non-directory entries if ($entry['type'] != EasySCP_VirtualFileSystem::VFS_TYPE_DIR) { continue; } // Skip '.' and '..' if ($entry['file'] == '.' || $entry['file'] == '..') { continue; } // Check for .htaccess existence to display another icon $dr = $path . '/' . $entry['file']; $tfile = $dr . '/.htaccess'; if ($vfs->exists($tfile)) { $image = "locked"; } else { $image = "folder"; } // Check if folder does not contain a folder that can not be protected // @todo: valid directories (e.g. /htdocs/disabled/) are excluded (false positive) $forbiddenDirnames = '/backups|disabled|errors|logs|phptmp/i'; $forbidden = preg_match($forbiddenDirnames, $entry['file']); if ($forbidden === 1) { $tpl->append('ACTION_LINK', 'no'); } else { $tpl->append('ACTION_LINK', 'yes'); } // Create the directory link $tpl->append(array('PROTECT_IT' => "protected_areas_add.php?file=" . $dr, 'ICON' => $image, 'DIR_NAME' => tohtml($entry['file']), 'CHOOSE_IT' => $dr, 'LINK' => "ftp_choose_dir.php?cur_dir=" . $dr)); } }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $user_id * @param string $eid */ function gen_error_page_data($tpl, $sql, $eid) { $domain = $_SESSION['user_logged']; // Check if we already have an error page $vfs = new EasySCP_VirtualFileSystem($domain, $sql); $error = $vfs->get('/errors/' . $eid . '.html'); if (false !== $error) { // We already have an error page, return it $tpl->assign(array('ERROR' => tohtml($error))); return; } // No error page $tpl->assign(array('ERROR' => '')); }
/** * Extract and show data for hosting plans * @param EasySCP_TemplateEngine $tpl * @param int $reseller_id */ function gen_hp_table($tpl, $reseller_id) { global $external_event; $sql = EasySCP_Registry::get('Db'); $cfg = EasySCP_Registry::get('Config'); if (isset($cfg->HOSTING_PLANS_LEVEL) && $cfg->HOSTING_PLANS_LEVEL === 'admin') { $query = "\n\t\t\tSELECT\n\t\t\t\tt1.`id`, t1.`reseller_id`, t1.`name`, t1.`props`, t1.`status`,\n\t\t\t\tt2.`admin_id`, t2.`admin_type`\n\t\t\tFROM\n\t\t\t\t`hosting_plans` AS t1,\n\t\t\t\t`admin` AS t2\n\t\t\tWHERE\n\t\t\t\tt2.`admin_type` = ?\n\t\t\tAND\n\t\t\t\tt1.`reseller_id` = t2.`admin_id`\n\t\t\tAND\n\t\t\t\tt1.`status` = 1\n\t\t\tORDER BY\n\t\t\t\tt1.`name`\n\t\t"; $rs = exec_query($sql, $query, 'admin'); $tr_edit = tr('View details'); $tpl->assign('HP_MENU_ADD', ''); } else { $query = "\n\t\t\tSELECT\n\t\t\t\t`id`, `name`, `props`, `status`\n\t\t\tFROM\n\t\t\t\t`hosting_plans`\n\t\t\tWHERE\n\t\t\t\t`reseller_id` = ?\n\t\t\tORDER BY\n\t\t\t\t`name`\n\t\t"; $rs = exec_query($sql, $query, $reseller_id); } if ($rs->rowCount() == 0) { set_page_message(tr('Hosting plans not found!'), 'info'); $tpl->assign('HP_TABLE', ''); } else { // There is data for hosting plans :-) if ($external_event == '_off_') { $tpl->assign('HP_MESSAGE', ''); } $tpl->assign(array('TR_HOSTING_PLANS' => tr('Hosting plans'), 'TR_NOM' => tr('No.'), 'TR_EDIT' => tr('Edit'), 'TR_DELETE' => tr('Delete'), 'PLAN_SHOW' => tr('Show hosting plan'), 'TR_PLAN_NAME' => tr('Name'), 'TR_ACTION' => tr('Actions'))); $coid = isset($cfg->CUSTOM_ORDERPANEL_ID) ? $cfg->CUSTOM_ORDERPANEL_ID : ''; $i = 1; while ($data = $rs->fetchRow()) { $status = $data['status'] ? tr('Enabled') : tr('Disabled'); $tpl->append(array('PLAN_NOM' => $i++, 'PLAN_NAME' => tohtml($data['name']), 'PLAN_NAME2' => addslashes(clean_html($data['name'])), 'PURCHASING' => $status, 'CUSTOM_ORDERPANEL_ID' => $coid, 'HP_ID' => $data['id'], 'RESELLER_ID' => $_SESSION['user_id'])); } } }
/** * Get an EasySCP_TemplateEngine instance * * Returns an {@link EasySCP_TemplateEngine} instance, only creating it if it * doesn't already exist. * * @return EasySCP_TemplateEngine An EasySCP_TemplateEngine instance */ public static function getInstance() { if (is_null(self::$_instance)) { self::$_instance = new self(); } return self::$_instance; }
/** * Generates a page message if something terribly goes wrong. * * @todo possible session injection, check $_SESSION['user_theme'] for valid * value * * @param String $msg Message Content * @param String $type Message Type (notice, warning, error, success) * @param string $backButtonDestination Destiation where to go on back link * click */ function system_message($msg, $type = 'error', $backButtonDestination = '') { $cfg = EasySCP_Registry::get('Config'); $theme_color = isset($_SESSION['user_theme']) ? $_SESSION['user_theme'] : $cfg->USER_INITIAL_THEME; if (empty($backButtonDestination)) { $backButtonDestination = "javascript:history.go(-1)"; } $tpl = EasySCP_TemplateEngine::getInstance(); // If we are on the login page, path will be like this $template = 'system-message.tpl'; if (!is_file($tpl->get_template_dir() . '/' . $template)) { // But if we're inside the panel it will be like this $template = '../system-message.tpl'; } if (!is_file($tpl->get_template_dir() . '/' . $template)) { // And if we don't find the template, we'll just displaying error // message throw new EasySCP_Exception($msg); } // Small workaround to be able to use the system_message() function during // EasySCP initialization process without i18n support if (function_exists('tr')) { $tpl->assign(array('TR_PAGE_TITLE' => tr('EasySCP Error'), 'TR_BACK' => tr('Back'), 'TR_ERROR_MESSAGE' => tr('Error Message'), 'MESSAGE' => $msg, 'MSG_TYPE' => $type, 'BACKBUTTONDESTINATION' => $backButtonDestination, 'TR_LOGIN' => tr('Login'), 'TR_USERNAME' => tr('Username'), 'TR_PASSWORD' => tr('Password'), 'TR_LOSTPW' => tr('Lost password'), 'TR_WEBMAIL_SSL_LINK' => 'webmail', 'TR_FTP_SSL_LINK' => 'ftp', 'TR_PMA_SSL_LINK' => 'pma')); } else { $tpl->assign(array('TR_PAGE_TITLE' => 'EasySCP Error', 'TR_BACK' => 'Back', 'TR_ERROR_MESSAGE' => 'Error Message', 'MESSAGE' => $msg, 'MSG_TYPE' => $type, 'BACKBUTTONDESTINATION' => $backButtonDestination, 'TR_LOGIN' => 'Login', 'TR_USERNAME' => 'Username', 'TR_PASSWORD' => 'Password', 'TR_LOSTPW' => 'Lost password', 'TR_WEBMAIL_SSL_LINK' => 'webmail', 'TR_FTP_SSL_LINK' => 'ftp', 'TR_PMA_SSL_LINK' => 'pma')); } $tpl->display($template); exit; }
/** * @param EasySCP_TemplateEngine $tpl */ function add_reseller($tpl) { global $reseller_ips; $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); if (isset($_POST['uaction']) && $_POST['uaction'] === 'add_reseller') { if (check_user_data()) { $upass = crypt_user_pass($_POST['pass']); $user_id = $_SESSION['user_id']; $username = clean_input($_POST['username']); $fname = clean_input($_POST['fname']); $lname = clean_input($_POST['lname']); $gender = clean_input($_POST['gender']); $firm = clean_input($_POST['firm']); $zip = clean_input($_POST['zip']); $city = clean_input($_POST['city']); $state = clean_input($_POST['state']); $country = clean_input($_POST['country']); $email = clean_input($_POST['email']); $phone = clean_input($_POST['phone']); $fax = clean_input($_POST['fax']); $street1 = clean_input($_POST['street1']); $street2 = clean_input($_POST['street2']); $query = "\n\t\t\t\tINSERT INTO `admin` (\n\t\t\t\t\t`admin_name`,\n\t\t\t\t\t`admin_pass`,\n\t\t\t\t\t`admin_type`,\n\t\t\t\t\t`domain_created`,\n\t\t\t\t\t`created_by`,\n\t\t\t\t\t`fname`,\n\t\t\t\t\t`lname`,\n\t\t\t\t\t`firm`,\n\t\t\t\t\t`zip`,\n\t\t\t\t\t`city`,\n\t\t\t\t\t`state`,\n\t\t\t\t\t`country`,\n\t\t\t\t\t`email`,\n\t\t\t\t\t`phone`,\n\t\t\t\t\t`fax`,\n\t\t\t\t\t`street1`,\n\t\t\t\t\t`street2`,\n\t\t\t\t\t`gender`\n\t\t\t\t) VALUES (\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t'reseller',\n\t\t\t\t\tunix_timestamp(),\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?,\n\t\t\t\t\t?\n\t\t\t\t)\n\t\t\t"; exec_query($sql, $query, array($username, $upass, $user_id, $fname, $lname, $firm, $zip, $city, $state, $country, $email, $phone, $fax, $street1, $street2, $gender)); $new_admin_id = $sql->insertId(); $user_logged = $_SESSION['user_logged']; write_log("{$user_logged}: add reseller: {$username}"); // $user_def_lang = $cfg->USER_INITIAL_LANG; $user_def_lang = ''; // $user_theme_color = $cfg->USER_INITIAL_THEME; $user_theme_color = ''; $query = "\n\t\t\t\tINSERT INTO `user_gui_props`\n\t\t\t\t\t(\n\t\t\t\t\t`user_id`,\n\t\t\t\t\t`lang`,\n\t\t\t\t\t`layout`\n\t\t\t\t\t)\n\t\t\t\tVALUES\n\t\t\t\t\t(?, ?, ?)\n\t\t\t"; exec_query($sql, $query, array($new_admin_id, $user_def_lang, $user_theme_color)); /* * 'reseller_props' table entry; */ $nreseller_max_domain_cnt = clean_input($_POST['nreseller_max_domain_cnt']); $nreseller_max_subdomain_cnt = clean_input($_POST['nreseller_max_subdomain_cnt']); $nreseller_max_alias_cnt = clean_input($_POST['nreseller_max_alias_cnt']); $nreseller_max_mail_cnt = clean_input($_POST['nreseller_max_mail_cnt']); $nreseller_max_ftp_cnt = clean_input($_POST['nreseller_max_ftp_cnt']); $nreseller_max_sql_db_cnt = clean_input($_POST['nreseller_max_sql_db_cnt']); $nreseller_max_sql_user_cnt = clean_input($_POST['nreseller_max_sql_user_cnt']); $nreseller_max_traffic = clean_input($_POST['nreseller_max_traffic']); $nreseller_max_disk = clean_input($_POST['nreseller_max_disk']); $customer_id = clean_input($_POST['customer_id']); $support_system = clean_input($_POST['support_system']); $query = "\n\t\t\t\tINSERT INTO `reseller_props` (\n\t\t\t\t\t`reseller_id`, `reseller_ips`,\n\t\t\t\t\t`max_dmn_cnt`, `current_dmn_cnt`,\n\t\t\t\t\t`max_sub_cnt`, `current_sub_cnt`,\n\t\t\t\t\t`max_als_cnt`, `current_als_cnt`,\n\t\t\t\t\t`max_mail_cnt`, `current_mail_cnt`,\n\t\t\t\t\t`max_ftp_cnt`, `current_ftp_cnt`,\n\t\t\t\t\t`max_sql_db_cnt`, `current_sql_db_cnt`,\n\t\t\t\t\t`max_sql_user_cnt`, `current_sql_user_cnt`,\n\t\t\t\t\t`max_traff_amnt`, `current_traff_amnt`,\n\t\t\t\t\t`max_disk_amnt`, `current_disk_amnt`,\n\t\t\t\t\t`support_system`, `customer_id`\n\t\t\t\t) VALUES (\n\t\t\t\t\t?, ?,\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, '0',\n\t\t\t\t\t?, ?\n\t\t\t\t)\n\t\t\t\t"; exec_query($sql, $query, array($new_admin_id, $reseller_ips, $nreseller_max_domain_cnt, $nreseller_max_subdomain_cnt, $nreseller_max_alias_cnt, $nreseller_max_mail_cnt, $nreseller_max_ftp_cnt, $nreseller_max_sql_db_cnt, $nreseller_max_sql_user_cnt, $nreseller_max_traffic, $nreseller_max_disk, $support_system, $customer_id)); send_add_user_auto_msg($user_id, clean_input($_POST['username']), $_POST['pass'], clean_input($_POST['email']), clean_input($_POST['fname']), clean_input($_POST['lname']), tr('Reseller'), $gender); $_SESSION['reseller_added'] = 1; user_goto('manage_users.php'); } else { $tpl->assign(array('EMAIL' => clean_input($_POST['email'], true), 'USERNAME' => clean_input($_POST['username'], true), 'FIRST_NAME' => clean_input($_POST['fname'], true), 'CUSTOMER_ID' => clean_input($_POST['customer_id'], true), 'LAST_NAME' => clean_input($_POST['lname'], true), 'FIRM' => clean_input($_POST['firm'], true), 'ZIP' => clean_input($_POST['zip'], true), 'CITY' => clean_input($_POST['city'], true), 'STATE' => clean_input($_POST['state'], true), 'COUNTRY' => clean_input($_POST['country'], true), 'STREET_1' => clean_input($_POST['street1'], true), 'STREET_2' => clean_input($_POST['street2'], true), 'PHONE' => clean_input($_POST['phone'], true), 'FAX' => clean_input($_POST['fax'], true), 'VL_MALE' => $_POST['gender'] == 'M' ? $cfg->HTML_SELECTED : '', 'VL_FEMALE' => $_POST['gender'] == 'F' ? $cfg->HTML_SELECTED : '', 'VL_UNKNOWN' => $_POST['gender'] == 'U' || empty($_POST['gender']) ? $cfg->HTML_SELECTED : '', 'MAX_DOMAIN_COUNT' => clean_input($_POST['nreseller_max_domain_cnt'], true), 'MAX_SUBDOMAIN_COUNT' => clean_input($_POST['nreseller_max_subdomain_cnt'], true), 'MAX_ALIASES_COUNT' => clean_input($_POST['nreseller_max_alias_cnt'], true), 'MAX_MAIL_USERS_COUNT' => clean_input($_POST['nreseller_max_mail_cnt'], true), 'MAX_FTP_USERS_COUNT' => clean_input($_POST['nreseller_max_ftp_cnt'], true), 'MAX_SQLDB_COUNT' => clean_input($_POST['nreseller_max_sql_db_cnt'], true), 'MAX_SQL_USERS_COUNT' => clean_input($_POST['nreseller_max_sql_user_cnt'], true), 'MAX_TRAFFIC_AMOUNT' => clean_input($_POST['nreseller_max_traffic'], true), 'MAX_DISK_AMOUNT' => clean_input($_POST['nreseller_max_disk'], true), 'SUPPORT_SYSTEM_YES' => $_POST['support_system'] == 'yes' ? $cfg->HTML_SELECTED : '', 'SUPPORT_SYSTEM_NO' => $_POST['support_system'] == 'no' ? $cfg->HTML_SELECTED : '', 'SUPPORT_SYSTEM' => clean_input($_POST['support_system'], true))); } } else { $tpl->assign(array('EMAIL' => '', 'USERNAME' => '', 'FIRST_NAME' => '', 'CUSTOMER_ID' => '', 'LAST_NAME' => '', 'FIRM' => '', 'ZIP' => '', 'CITY' => '', 'STATE' => '', 'COUNTRY' => '', 'STREET_1' => '', 'STREET_2' => '', 'PHONE' => '', 'FAX' => '', 'VL_MALE' => '', 'VL_FEMALE' => '', 'VL_UNKNOWN' => $cfg->HTML_SELECTED, 'MAX_DOMAIN_COUNT' => '', 'MAX_SUBDOMAIN_COUNT' => '', 'MAX_ALIASES_COUNT' => '', 'MAX_MAIL_USERS_COUNT' => '', 'MAX_FTP_USERS_COUNT' => '', 'MAX_SQLDB_COUNT' => '', 'MAX_SQL_USERS_COUNT' => '', 'MAX_TRAFFIC_AMOUNT' => '', 'MAX_DISK_AMOUNT' => '', 'SUPPORT_SYSTEM_YES' => $cfg->HTML_SELECTED, 'SUPPORT_SYSTEM_NO' => '')); } }
/** * @param EasySCP_TemplateEngine $tpl */ function add_user($tpl) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); if (isset($_POST['uaction']) && $_POST['uaction'] === 'add_user') { if (check_user_data()) { $upass = crypt_user_pass($_POST['pass']); $user_id = $_SESSION['user_id']; $username = clean_input($_POST['username']); $fname = clean_input($_POST['fname']); $lname = clean_input($_POST['lname']); $gender = clean_input($_POST['gender']); $firm = clean_input($_POST['firm']); $zip = clean_input($_POST['zip']); $city = clean_input($_POST['city']); $state = clean_input($_POST['state']); $country = clean_input($_POST['country']); $email = clean_input($_POST['email']); $phone = clean_input($_POST['phone']); $fax = clean_input($_POST['fax']); $street1 = clean_input($_POST['street1']); $street2 = clean_input($_POST['street2']); if (get_gender_by_code($gender, true) === null) { $gender = ''; } $query = "\n\t\t\t\tINSERT INTO `admin`\n\t\t\t\t\t(\n\t\t\t\t\t\t`admin_name`,\n\t\t\t\t\t\t`admin_pass`,\n\t\t\t\t\t\t`admin_type`,\n\t\t\t\t\t\t`domain_created`,\n\t\t\t\t\t\t`created_by`,\n\t\t\t\t\t\t`fname`,\n\t\t\t\t\t\t`lname`,\n\t\t\t\t\t\t`firm`,\n\t\t\t\t\t\t`zip`,\n\t\t\t\t\t\t`city`,\n\t\t\t\t\t\t`state`,\n\t\t\t\t\t\t`country`,\n\t\t\t\t\t\t`email`,\n\t\t\t\t\t\t`phone`,\n\t\t\t\t\t\t`fax`,\n\t\t\t\t\t\t`street1`,\n\t\t\t\t\t\t`street2`,\n\t\t\t\t\t\t`gender`\n\t\t\t\t\t) VALUES (\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t'admin',\n\t\t\t\t\t\tunix_timestamp(),\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?,\n\t\t\t\t\t\t?\n\t\t\t\t\t)\n\t\t\t"; exec_query($sql, $query, array($username, $upass, $user_id, $fname, $lname, $firm, $zip, $city, $state, $country, $email, $phone, $fax, $street1, $street2, $gender)); $new_admin_id = $sql->insertId(); $user_logged = $_SESSION['user_logged']; write_log("{$user_logged}: add admin: {$username}"); $user_def_lang = $_SESSION['user_def_lang']; $user_theme_color = $_SESSION['user_theme']; $query = "\n\t\t\t\tINSERT INTO `user_gui_props` (\n\t\t\t\t\t`user_id`,\n\t\t\t\t\t`lang`,\n\t\t\t\t\t`layout`\n\t\t\t\t) VALUES (?,?,?)\n\t\t\t"; exec_query($sql, $query, array($new_admin_id, $user_def_lang, $user_theme_color)); send_add_user_auto_msg($user_id, clean_input($_POST['username']), clean_input($_POST['pass']), clean_input($_POST['email']), clean_input($_POST['fname']), clean_input($_POST['lname']), tr('Administrator'), $gender); $_SESSION['user_added'] = 1; user_goto('manage_users.php'); } else { // check user data $tpl->assign(array('EMAIL' => clean_input($_POST['email'], true), 'USERNAME' => clean_input($_POST['username'], true), 'FIRST_NAME' => clean_input($_POST['fname'], true), 'LAST_NAME' => clean_input($_POST['lname'], true), 'FIRM' => clean_input($_POST['firm'], true), 'ZIP' => clean_input($_POST['zip'], true), 'CITY' => clean_input($_POST['city'], true), 'STATE' => clean_input($_POST['state'], true), 'COUNTRY' => clean_input($_POST['country'], true), 'STREET_1' => clean_input($_POST['street1'], true), 'STREET_2' => clean_input($_POST['street2'], true), 'PHONE' => clean_input($_POST['phone'], true), 'FAX' => clean_input($_POST['fax'], true), 'VL_MALE' => $_POST['gender'] == 'M' ? $cfg->HTML_SELECTED : '', 'VL_FEMALE' => $_POST['gender'] == 'F' ? $cfg->HTML_SELECTED : '', 'VL_UNKNOWN' => $_POST['gender'] == 'U' || empty($_POST['gender']) ? $cfg->HTML_SELECTED : '')); } } else { $tpl->assign(array('EMAIL' => '', 'USERNAME' => '', 'FIRST_NAME' => '', 'LAST_NAME' => '', 'FIRM' => '', 'ZIP' => '', 'CITY' => '', 'STATE' => '', 'COUNTRY' => '', 'STREET_1' => '', 'STREET_2' => '', 'PHONE' => '', 'FAX' => '', 'VL_MALE' => '', 'VL_FEMALE' => '', 'VL_UNKNOWN' => $cfg->HTML_SELECTED)); } // end else }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param string $ftp_acc */ function gen_page_dynamic_data($tpl, $sql, $ftp_acc) { $cfg = EasySCP_Registry::get('Config'); $query = "\n\t\tSELECT\n\t\t\t`homedir`\n\t\tFROM\n\t\t\t`ftp_users`\n\t\tWHERE\n\t\t\t`userid` = ?\n\t"; $rs = exec_query($sql, $query, $ftp_acc); $homedir = $rs->fields['homedir']; $domain_ftp = $_SESSION['user_logged']; $nftp_dir = $cfg->FTP_HOMEDIR . "/" . $domain_ftp; if ($nftp_dir == $homedir) { $odir = ''; $oins = ''; } else { $odir = $cfg->HTML_CHECKED; $oins = substr($homedir, strlen($nftp_dir)); } $tpl->assign(array('FTP_ACCOUNT' => $ftp_acc, 'ID' => $ftp_acc, 'USE_OTHER_DIR_CHECKED' => $odir, 'OTHER_DIR' => $oins)); }
/** * @param EasySCP_TemplateEngine $tpl */ function generate_page($tpl) { $sql = EasySCP_Registry::get('Db'); global $month, $year, $day; $all[0] = 0; $all[1] = 0; $all[2] = 0; $all[3] = 0; $all[4] = 0; $all[5] = 0; $all[6] = 0; $all[7] = 0; $all_other_in = 0; $all_other_out = 0; $ftm = mktime(0, 0, 0, $month, $day, $year); $ltm = mktime(0, 0, 0, $month, $day + 1, $year); $query = "\n\t\tSELECT\n\t\t\tCOUNT(`bytes_in`) AS cnt\n\t\tFROM\n\t\t\t`server_traffic`\n\t\tWHERE\n\t\t\t`traff_time` > ? AND `traff_time` <= ?\n\t"; $rs = exec_query($sql, $query, array($ftm, $ltm)); $dnum = $rs->fields['cnt']; $query = "\n\t\tSELECT\n\t\t\t`traff_time` AS ttime,\n\t\t\t`bytes_in` AS sbin,\n\t\t\t`bytes_out` AS sbout,\n\t\t\t`bytes_mail_in` AS smbin,\n\t\t\t`bytes_mail_out` AS smbout,\n\t\t\t`bytes_pop_in` AS spbin,\n\t\t\t`bytes_pop_out` AS spbout,\n\t\t\t`bytes_web_in` AS swbin,\n\t\t\t`bytes_web_out` AS swbout\n\t\tFROM\n\t\t\t`server_traffic`\n\t\tWHERE\n\t\t\t`traff_time` > ? AND `traff_time` <= ?\n\t"; $rs1 = exec_query($sql, $query, array($ftm, $ltm)); if ($dnum != 0) { for ($i = 0; $i < $dnum; $i++) { // make it in kb mb or bytes :) $ttime = date('H:i', $rs1->fields['ttime']); // make other traffic $other_in = $rs1->fields['sbin'] - ($rs1->fields['swbin'] + $rs1->fields['smbin'] + $rs1->fields['spbin']); $other_out = $rs1->fields['sbout'] - ($rs1->fields['swbout'] + $rs1->fields['smbout'] + $rs1->fields['spbout']); $tpl->append(array('HOUR' => $ttime, 'WEB_IN' => sizeit($rs1->fields['swbin']), 'WEB_OUT' => sizeit($rs1->fields['swbout']), 'SMTP_IN' => sizeit($rs1->fields['smbin']), 'SMTP_OUT' => sizeit($rs1->fields['smbout']), 'POP_IN' => sizeit($rs1->fields['spbin']), 'POP_OUT' => sizeit($rs1->fields['spbout']), 'OTHER_IN' => sizeit($other_in), 'OTHER_OUT' => sizeit($other_out), 'ALL_IN' => sizeit($rs1->fields['sbin']), 'ALL_OUT' => sizeit($rs1->fields['sbout']), 'ALL' => sizeit($rs1->fields['sbin'] + $rs1->fields['sbout']))); $all[0] = $all[0] + $rs1->fields['swbin']; $all[1] = $all[1] + $rs1->fields['swbout']; $all[2] = $all[2] + $rs1->fields['smbin']; $all[3] = $all[3] + $rs1->fields['smbout']; $all[4] = $all[4] + $rs1->fields['spbin']; $all[5] = $all[5] + $rs1->fields['spbout']; $all[6] = $all[6] + $rs1->fields['sbin']; $all[7] = $all[7] + $rs1->fields['sbout']; $rs1->moveNext(); } // end for $all_other_in = $all[6] - ($all[0] + $all[2] + $all[4]); $all_other_out = $all[7] - ($all[1] + $all[3] + $all[5]); } $tpl->assign(array('WEB_IN_ALL' => sizeit($all[0]), 'WEB_OUT_ALL' => sizeit($all[1]), 'SMTP_IN_ALL' => sizeit($all[2]), 'SMTP_OUT_ALL' => sizeit($all[3]), 'POP_IN_ALL' => sizeit($all[4]), 'POP_OUT_ALL' => sizeit($all[5]), 'OTHER_IN_ALL' => sizeit($all_other_in), 'OTHER_OUT_ALL' => sizeit($all_other_out), 'ALL_IN_ALL' => sizeit($all[6]), 'ALL_OUT_ALL' => sizeit($all[7]), 'ALL_ALL' => sizeit($all[6] + $all[7]))); }
/** * Creates a list of all current installed languages * * @param string $lang_selected Defines the selected language */ function gen_def_language($lang_selected) { $cfg = EasySCP_Registry::get('Config'); $tpl = EasySCP_TemplateEngine::getInstance(); $languages = getLanguages(); foreach ($languages as $lang => $language_name) { $tpl->append(array('LANG_VALUE' => $lang, 'LANG_SELECTED' => $lang === $lang_selected ? $cfg->HTML_SELECTED : '', 'LANG_NAME' => tohtml($language_name))); } }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $user_id */ function gen_db_list($tpl, $sql, $user_id) { $dmn_id = get_user_domain_id($user_id); $query = "\n\t\tSELECT\n\t\t\t`sqld_id`, `sqld_name`\n\t\tFROM\n\t\t\t`sql_database`\n\t\tWHERE\n\t\t\t`domain_id` = ?\n\t\tORDER BY\n\t\t\t`sqld_name`\n\t"; $rs = exec_query($sql, $query, $dmn_id); if ($rs->recordCount() == 0) { set_page_message(tr('Database list is empty!'), 'info'); $tpl->assign('DB_LIST', ''); } else { while (!$rs->EOF) { $db_id = $rs->fields['sqld_id']; $db_name = $rs->fields['sqld_name']; $num = gen_db_user_list($tpl, $sql, $db_id); $tpl->append(array('DB_ID' => $db_id, 'DB_NAME' => tohtml($db_name), 'DB_NAME_JS' => tojs($db_name), 'DB_MSG' => $num ? '' : tr('Database user list is empty!'))); $rs->moveNext(); } } }
/** * Generate List of Domains assigned to IPs * * @param EasySCP_TemplateEngine $tpl The TPL object * @param EasySCP_Database $sql The SQL object */ function listIPDomains($tpl, $sql) { global $reseller_id; $query = "\n\t\tSELECT\n\t\t\t`reseller_ips`\n\t\tFROM\n\t\t\t`reseller_props`\n\t\tWHERE\n\t\t\t`reseller_id` = ?;\n\t"; $res = exec_query($sql, $query, $reseller_id); $data = $res->fetchRow(); $reseller_ips = explode(";", substr($data['reseller_ips'], 0, -1)); $query = "\n\t\tSELECT\n\t\t\t`ip_id`, `ip_number`\n\t\tFROM\n\t\t\t`server_ips`\n\t\tWHERE\n\t\t\t`ip_id`\n\t\tIN\n\t\t\t(" . implode(',', $reseller_ips) . ");\n\t"; $rs = exec_query($sql, $query); while (!$rs->EOF) { $no_domains = false; $no_alias_domains = false; $domains = array(); $query = "\n\t\t\tSELECT\n\t\t\t\t`d`.`domain_name`, `a`.`admin_name`\n\t\t\tFROM\n\t\t\t\t`domain` d\n\t\t\tINNER JOIN\n\t\t\t\t`admin` a\n\t\t\tON\n\t\t\t\t(`a`.`admin_id` = `d`.`domain_created_id`)\n\t\t\tWHERE\n\t\t\t\t`d`.`domain_ip_id` = ?\n\t\t\tAND\n\t\t\t\t`d`.`domain_created_id` = ?\n\t\t\tORDER BY\n\t\t\t\t`d`.`domain_name`;\n\t\t"; $rs2 = exec_query($sql, $query, array($rs->fields['ip_id'], $reseller_id)); $domain_count = $rs2->recordCount(); if ($rs2->recordCount() == 0) { $no_domains = true; } while (!$rs2->EOF) { $domains[] = $rs2->fields['domain_name']; $rs2->moveNext(); } $query = "\n\t\t\tSELECT\n\t\t\t\t`da`.`alias_name`, `a`.`admin_name`\n\t\t\tFROM\n\t\t\t\t`domain_aliasses` da\n\t\t\tINNER JOIN\n\t\t\t\t`domain` d\n\t\t\tON\n\t\t\t\t(`d`.`domain_id` = `da`.`domain_id`)\n\t\t\tINNER JOIN\n\t\t\t\t`admin` a\n\t\t\tON\n\t\t\t\t(`a`.`admin_id` = `d`.`domain_created_id`)\n\t\t\tWHERE\n\t\t\t\t`da`.`alias_ip_id` = ?\n\t\t\tAND\n\t\t\t\t`d`.`domain_created_id` = ?\n\t\t\tORDER BY\n\t\t\t\t`da`.`alias_name`;\n\t\t"; $rs3 = exec_query($sql, $query, array($rs->fields['ip_id'], $reseller_id)); $alias_count = $rs3->recordCount(); if ($rs3->recordCount() == 0) { $no_alias_domains = true; } while (!$rs3->EOF) { $domains[] = $rs3->fields['alias_name']; $rs3->moveNext(); } if ($no_domains && $no_alias_domains) { $tpl->append('DOMAIN_NAME', array(tr("No records found"))); } else { $tpl->append('DOMAIN_NAME', $domains); } $tpl->append(array('IP' => $rs->fields['ip_number'], 'RECORD_COUNT' => tr('Total Domains') . " : " . ($domain_count + $alias_count))); $rs->moveNext(); } // end while }
/** * Prepares the template * * @return void */ protected static function prepareTemplate() { self::$EasySCP_TemplateEngine = EasySCP_TemplateEngine::getInstance(); // check if i18n support is available if (function_exists('tr')) { self::$EasySCP_TemplateEngine->assign(array('TR_PAGE_TITLE' => tr('EasySCP Error'), 'THEME_CHARSET' => tr('encoding'), 'MSG_TYPE' => 'error', 'MESSAGE' => self::$exceptionMessage)); } else { self::$EasySCP_TemplateEngine->assign(array('TR_PAGE_TITLE' => 'EasySCP Error', 'THEME_CHARSET' => 'UTF-8', 'MSG_TYPE' => 'error', 'MESSAGE' => self::$exceptionMessage)); } }
/** * Generate List of Domains assigned to IPs * * @param EasySCP_TemplateEngine $tpl */ function listIPDomains($tpl) { $sql = EasySCP_Registry::get('Db'); $query = "\n\t\tSELECT\n\t\t\tip_id, ip_number, ip_number_v6\n\t\tFROM\n\t\t\tserver_ips;\n\t"; $rs = exec_query($sql, $query); while (!$rs->EOF) { $no_domains = false; $no_alias_domains = false; $domains = array(); $reseller = array(); $query = "\n\t\t\tSELECT\n\t\t\t\t`d`.`domain_name`, `a`.`admin_name`\n\t\t\tFROM\n\t\t\t\t`domain` d\n\t\t\tINNER JOIN\n\t\t\t\t`admin` a\n\t\t\tON\n\t\t\t\t(`a`.`admin_id` = `d`.`domain_created_id`)\n\t\t\tWHERE\n\t\t\t\t`d`.`domain_ip_id` = ?\n\t\t\tORDER BY\n\t\t\t\t`d`.`domain_name`;\n\t\t"; $rs2 = exec_query($sql, $query, $rs->fields['ip_id']); $domain_count = $rs2->recordCount(); if ($rs2->recordCount() == 0) { $no_domains = true; } while (!$rs2->EOF) { $domains[] = $rs2->fields['domain_name']; $reseller[] = $rs2->fields['admin_name']; $rs2->moveNext(); } $query = "\n\t\t\tSELECT\n\t\t\t\t`da`.`alias_name`, `a`.`admin_name`\n\t\t\tFROM\n\t\t\t\t`domain_aliasses` da\n\t\t\tINNER JOIN\n\t\t\t\t`domain` d\n\t\t\tON\n\t\t\t\t(`d`.`domain_id` = `da`.`domain_id`)\n\t\t\tINNER JOIN\n\t\t\t\t`admin` a\n\t\t\tON\n\t\t\t\t(`a`.`admin_id` = `d`.`domain_created_id`)\n\t\t\tWHERE\n\t\t\t\t`da`.`alias_ip_id` = ?\n\t\t\tORDER BY\n\t\t\t\t`da`.`alias_name`;\n\t\t"; $rs3 = exec_query($sql, $query, $rs->fields['ip_id']); $alias_count = $rs3->recordCount(); if ($rs3->recordCount() == 0) { $no_alias_domains = true; } while (!$rs3->EOF) { $domains[] = $rs3->fields['alias_name']; $reseller[] = $rs3->fields['admin_name']; $rs3->moveNext(); } if ($no_domains && $no_alias_domains) { $tpl->append(array('DOMAIN_NAME' => array(tr("No records found")), 'RESELLER_NAME' => array(''))); } else { $tpl->append(array('DOMAIN_NAME' => $domains, 'RESELLER_NAME' => $reseller)); } $tpl->append(array('IP' => $rs->fields['ip_number_v6'] != '' ? $rs->fields['ip_number'] . ' / ' . $rs->fields['ip_number_v6'] : $rs->fields['ip_number'], 'RECORD_COUNT' => tr('Total Domains') . " : " . ($domain_count + $alias_count))); $rs->moveNext(); } // end while }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id * @param string $dmn_name */ function gen_page_ftp_list($tpl, $sql, $dmn_id, $dmn_name) { $query = "\n\t\tSELECT\n\t\t\t`gid`,\n\t\t\t`members`\n\t\tFROM\n\t\t\t`ftp_group`\n\t\tWHERE\n\t\t\t`groupname` = ?\n\t;"; $rs = exec_query($sql, $query, $dmn_name); if ($rs->recordCount() == 0) { $tpl->assign(array('FTP_MSG' => tr('FTP list is empty!'), 'FTP_MSG_TYPE' => 'info', 'FTP_ITEM' => '', 'FTPS_TOTAL' => '', 'TABLE_LIST' => '')); } else { $ftp_accs = explode(',', $rs->fields['members']); sort($ftp_accs); reset($ftp_accs); for ($i = 0, $cnt_ftp_accs = count($ftp_accs); $i < $cnt_ftp_accs; $i++) { $tpl->assign('ITEM_CLASS', $i % 2 == 0 ? 'content' : 'content2'); $ftp_accs_encode[$i] = decode_idna($ftp_accs[$i]); $query = "\n\t\t\t\tSELECT\n\t\t\t\t\t`net2ftppasswd`\n\t\t\t\tFROM\n\t\t\t\t\t`ftp_users`\n\t\t\t\tWHERE\n\t\t\t\t\t`userid` = ?\n\t\t\t;"; $rs = exec_query($sql, $query, $ftp_accs[$i]); $tpl->append(array('FTP_ACCOUNT' => tohtml($ftp_accs_encode[$i]), 'UID' => urlencode($ftp_accs[$i]), 'FTP_LOGIN_AVAILABLE' => !is_null($rs->fields['net2ftppasswd']))); } $tpl->assign('TOTAL_FTP_ACCOUNTS', count($ftp_accs)); } }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql */ function gen_page_data($tpl, $sql) { if (isset($_POST['uaction']) && $_POST['uaction'] === 'send_circular') { $tpl->assign(array('MESSAGE_SUBJECT' => clean_input($_POST['msg_subject'], true), 'MESSAGE_TEXT' => clean_input($_POST['msg_text'], true), 'SENDER_EMAIL' => clean_input($_POST['sender_email'], true), 'SENDER_NAME' => clean_input($_POST['sender_name'], true))); } else { $user_id = $_SESSION['user_id']; $query = "\n\t\t\tSELECT\n\t\t\t\t`fname`, `lname`, `email`\n\t\t\tFROM\n\t\t\t\t`admin`\n\t\t\tWHERE\n\t\t\t\t`admin_id` = ?\n\t\t\tGROUP BY\n\t\t\t\t`email`\n\t\t"; $rs = exec_query($sql, $query, $user_id); if (isset($rs->fields['fname']) && isset($rs->fields['lname'])) { $sender_name = $rs->fields['fname'] . ' ' . $rs->fields['lname']; } elseif (isset($rs->fields['fname']) && !isset($rs->fields['lname'])) { $sender_name = $rs->fields['fname']; } elseif (!isset($rs->fields['fname']) && isset($rs->fields['lname'])) { $sender_name = $rs->fields['lname']; } else { $sender_name = ''; } $tpl->assign(array('MESSAGE_SUBJECT' => '', 'MESSAGE_TEXT' => '', 'SENDER_EMAIL' => tohtml($rs->fields['email']), 'SENDER_NAME' => tohtml($sender_name))); } }
/** * @param EasySCP_TemplateEngine $tpl */ function gen_user_sessions($tpl) { $sql = EasySCP_Registry::get('Db'); $query = "\n\t\tSELECT\n\t\t\t*\n\t\tFROM\n\t\t\t`login`\n\t"; $rs = exec_query($sql, $query); while (!$rs->EOF) { if ($rs->fields['user_name'] === NULL) { $tpl->append(array('ADMIN_USERNAME' => tr('Unknown'), 'LOGIN_TIME' => date("G:i:s", $rs->fields['lastaccess']))); } else { $tpl->append(array('ADMIN_USERNAME' => $rs->fields['user_name'], 'LOGIN_TIME' => date("G:i:s", $rs->fields['lastaccess']))); } $sess_id = session_id(); if ($sess_id === $rs->fields['session_id']) { $tpl->append('KILL_LINK', 'sessions_manage.php'); } else { $tpl->append('KILL_LINK', 'sessions_manage.php?kill=' . $rs->fields['session_id']); } $rs->moveNext(); } }
/** * Show last entered data for new hp * @param EasySCP_TemplateEngine $tpl */ function gen_data_ahp_page($tpl) { global $hp_name, $description, $hp_php, $hp_phpe, $hp_cgi, $hp_ssl; global $hp_sub, $hp_als, $hp_mail; global $hp_ftp, $hp_sql_db, $hp_sql_user; global $hp_traff, $hp_disk, $hp_countbackup; global $price, $setup_fee, $value, $payment, $status; global $hp_backup, $hp_dns; global $tos; $cfg = EasySCP_Registry::get('Config'); $tpl->assign(array('HP_NAME_VALUE' => tohtml($hp_name), 'TR_MAX_SUB_LIMITS' => tohtml($hp_sub), 'TR_MAX_ALS_VALUES' => tohtml($hp_als), 'HP_MAIL_VALUE' => tohtml($hp_mail), 'HP_FTP_VALUE' => tohtml($hp_ftp), 'HP_SQL_DB_VALUE' => tohtml($hp_sql_db), 'HP_SQL_USER_VALUE' => tohtml($hp_sql_user), 'HP_TRAFF_VALUE' => tohtml($hp_traff), 'HP_DISK_VALUE' => tohtml($hp_disk), 'HP_DESCRIPTION_VALUE' => tohtml($description), 'HP_PRICE' => tohtml($price), 'HP_SETUPFEE' => tohtml($setup_fee), 'HP_VALUE' => tohtml($value), 'HP_PAYMENT' => tohtml($payment), 'HP_TOS_VALUE' => tohtml($tos))); $tpl->assign(array('TR_PHP_YES' => $hp_php == '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_PHP_NO' => $hp_php == '_no_' ? $cfg->HTML_CHECKED : '', 'TR_PHPEY' => $hp_phpe === '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_PHPEN' => $hp_phpe === '_no_' ? $cfg->HTML_CHECKED : '', 'TR_CGI_YES' => $hp_cgi == '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_CGI_NO' => $hp_cgi == '_no_' ? $cfg->HTML_CHECKED : '', 'TR_SSL_YES' => $hp_ssl == '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_SSL_NO' => $hp_ssl == '_no_' ? $cfg->HTML_CHECKED : '', 'VL_BACKUPD' => $hp_backup == '_dmn_' ? $cfg->HTML_CHECKED : '', 'VL_BACKUPS' => $hp_backup == '_sql_' ? $cfg->HTML_CHECKED : '', 'VL_BACKUPF' => $hp_backup == '_full_' ? $cfg->HTML_CHECKED : '', 'VL_BACKUPN' => $hp_backup == '_no_' ? $cfg->HTML_CHECKED : '', 'TR_BACKUPCOUNT_YES' => $hp_countbackup == '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_BACKUPCOUNT_NO' => $hp_countbackup == '_no_' ? $cfg->HTML_CHECKED : '', 'TR_DNS_YES' => $hp_dns == '_yes_' ? $cfg->HTML_CHECKED : '', 'TR_DNS_NO' => $hp_dns == '_no_' ? $cfg->HTML_CHECKED : '', 'TR_STATUS_YES' => $status ? $cfg->HTML_CHECKED : '', 'TR_STATUS_NO' => !$status ? $cfg->HTML_CHECKED : '')); }
/** * @param EasySCP_TemplateEngine $tpl */ function generate_page($tpl) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); $start_index = 0; $rows_per_page = 12; if (isset($_GET['psi']) && is_numeric($_GET['psi'])) { $start_index = intval($_GET['psi']); } $count_query = "\n\t\tSELECT\n\t\t\tCOUNT(`log_id`) AS cnt\n\t\tFROM\n\t\t\t`log`;\n\t"; $query = "\n\t\tSELECT\n\t\t\tDATE_FORMAT(`log_time`, '%Y-%m-%d %H:%i') AS dat, `log_message`\n\t\tFROM\n\t\t\t`log`\n\t\tORDER BY\n\t\t\t`log_time` DESC\n\t\tLIMIT\n\t\t\t{$start_index}, {$rows_per_page};\n\t"; $rs = exec_query($sql, $count_query); $records_count = $rs->fields['cnt']; $rs = exec_query($sql, $query); if ($rs->rowCount() == 0) { // set_page_message(tr('Log is empty!'), 'info'); $tpl->assign(array('PAG_MESSAGE' => tr('Log is empty!'))); } else { $prev_si = $start_index - $rows_per_page; if ($start_index == 0) { $tpl->assign('SCROLL_PREV', ''); } else { $tpl->assign(array('SCROLL_PREV_GRAY' => '', 'PREV_PSI' => $prev_si)); } $next_si = $start_index + $rows_per_page; if ($next_si + 1 > $records_count) { $tpl->assign('SCROLL_NEXT', ''); } else { $tpl->assign(array('SCROLL_NEXT_GRAY' => '', 'NEXT_PSI' => $next_si)); } $tpl->assign(array('PAGE_MESSAGE' => '')); while (!$rs->EOF) { $log_message = $rs->fields['log_message']; $replaces = array('/[^a-zA-Z](delete[sd]?)[^a-zA-Z]/i' => ' <strong style="color:#f00">\\1</strong> ', '/[^a-zA-Z](remove[sd]?)[^a-zA-Z]/i' => ' <strong style="color:#f00">\\1</strong> ', '/[^a-zA-Z](add(s|ed)?)[^a-zA-Z]/i' => ' <strong style="color:#3c6">\\1</strong> ', '/[^a-zA-Z](change[sd]?)[^a-zA-Z]/i' => ' <strong style="color:#30f">\\1</strong> ', '/[^a-zA-Z](update[sd]?)[^a-zA-Z]/i' => ' <strong style="color:#30f">\\1</strong> ', '/[^a-zA-Z](edit(s|ed)?)[^a-zA-Z]/i' => ' <strong style="color:#3c6">\\1</strong> ', '/[^a-zA-Z](unknown)[^a-zA-Z]/i' => ' <strong style="color:#c0f">\\1</strong> ', '/[^a-zA-Z](logged)[^a-zA-Z]/i' => ' <strong style="color:#360">\\1</strong> ', '/[^a-zA-Z]((session )?manipulation)[^a-zA-Z]/i' => ' <strong style="color:#f00">\\1</strong> ', '/[^a-zA-Z]*(Warning[\\!]?)[^a-zA-Z]/i' => ' <strong style="color:#f00">\\1</strong> ', '/(bad password login data)/i' => ' <strong style="color:#f00">\\1</strong> '); foreach ($replaces as $pattern => $replacement) { $log_message = preg_replace($pattern, $replacement, $log_message); } $date_formt = $cfg->DATE_FORMAT . ' H:i'; $tpl->append(array('ADM_MESSAGE' => $log_message, 'DATE' => date($date_formt, strtotime($rs->fields['dat'])))); $rs->moveNext(); } // end while } }
/** * @param EasySCP_TemplateEngine $tpl */ function gen_page_post_data($tpl) { $cfg = EasySCP_Registry::get('Config'); if ($cfg->MYSQL_PREFIX === 'yes') { $tpl->assign('MYSQL_PREFIX_NO', true); if ($cfg->MYSQL_PREFIX_TYPE === 'behind') { $tpl->assign('MYSQL_PREFIX_BEHIND', true); } else { $tpl->assign('MYSQL_PREFIX_INFRONT', true); } } else { $tpl->assign('MYSQL_PREFIX_YES', true); $tpl->assign('MYSQL_PREFIX_ALL', true); } if (isset($_POST['uaction']) && $_POST['uaction'] === 'add_db') { $tpl->assign(array('DB_NAME' => clean_input($_POST['db_name'], true), 'USE_DMN_ID' => isset($_POST['use_dmn_id']) && $_POST['use_dmn_id'] === 'on' ? $cfg->HTML_CHECKED : '', 'START_ID_POS_CHECKED' => isset($_POST['id_pos']) && $_POST['id_pos'] !== 'end' ? $cfg->HTML_CHECKED : '', 'END_ID_POS_CHECKED' => isset($_POST['id_pos']) && $_POST['id_pos'] === 'end' ? $cfg->HTML_CHECKED : '')); } else { $tpl->assign(array('DB_NAME' => '', 'USE_DMN_ID' => '', 'START_ID_POS_CHECKED' => $cfg->HTML_CHECKED, 'END_ID_POS_CHECKED' => '')); } }
/** * @param int $month * @param int $year */ function generate_page($month, $year) { $tpl = EasySCP_TemplateEngine::getInstance(); $sql = EasySCP_Registry::get('Db'); if ($month == date('m') && $year == date('Y')) { $curday = date('j'); } else { $tmp = mktime(1, 0, 0, $month + 1, 0, $year); $curday = date('j', $tmp); } $all[0] = 0; $all[1] = 0; $all[2] = 0; $all[3] = 0; $all[4] = 0; $all[5] = 0; $all[6] = 0; $all[7] = 0; for ($i = 1; $i <= $curday; $i++) { $ftm = mktime(0, 0, 0, $month, $i, $year); $ltm = mktime(0, 0, 0, $month, $i + 1, $year); $query = "\n\t\t\tSELECT\n\t\t\t\tCOUNT(`bytes_in`) AS cnt\n\t\t\tFROM\n\t\t\t\t`server_traffic`\n\t\t\tWHERE\n\t\t\t\t`traff_time` > ? AND `traff_time` <= ?\n\t\t"; $rs = exec_query($sql, $query, array($ftm, $ltm)); // if ($rs->fields['cnt'] > 0) { if ($rs->recordCount() > 0) { list($web_in, $web_out, $smtp_in, $smtp_out, $pop_in, $pop_out, $other_in, $other_out, $all_in, $all_out) = get_server_trafic($ftm, $ltm); $tpl->append(array('DAY' => $i, 'YEAR' => $year, 'MONTH' => $month, 'WEB_IN' => sizeit($web_in), 'WEB_OUT' => sizeit($web_out), 'SMTP_IN' => sizeit($smtp_in), 'SMTP_OUT' => sizeit($smtp_out), 'POP_IN' => sizeit($pop_in), 'POP_OUT' => sizeit($pop_out), 'OTHER_IN' => sizeit($other_in), 'OTHER_OUT' => sizeit($other_out), 'ALL_IN' => sizeit($all_in), 'ALL_OUT' => sizeit($all_out), 'ALL' => sizeit($all_in + $all_out))); $all[0] = $all[0] + $web_in; $all[1] = $all[1] + $web_out; $all[2] = $all[2] + $smtp_in; $all[3] = $all[3] + $smtp_out; $all[4] = $all[4] + $pop_in; $all[5] = $all[5] + $pop_out; $all[6] = $all[6] + $all_in; $all[7] = $all[7] + $all_out; } // if count } // end for $all_other_in = $all[6] - ($all[0] + $all[2] + $all[4]); $all_other_out = $all[7] - ($all[1] + $all[3] + $all[5]); $tpl->assign(array('WEB_IN_ALL' => sizeit($all[0]), 'WEB_OUT_ALL' => sizeit($all[1]), 'SMTP_IN_ALL' => sizeit($all[2]), 'SMTP_OUT_ALL' => sizeit($all[3]), 'POP_IN_ALL' => sizeit($all[4]), 'POP_OUT_ALL' => sizeit($all[5]), 'OTHER_IN_ALL' => sizeit($all_other_in), 'OTHER_OUT_ALL' => sizeit($all_other_out), 'ALL_IN_ALL' => sizeit($all[6]), 'ALL_OUT_ALL' => sizeit($all[7]), 'ALL_ALL' => sizeit($all[6] + $all[7]))); }
/** * @param EasySCP_TemplateEngine $tpl * @param int $month * @param int $year * @param int $domain_id */ function generate_page($tpl, $month, $year, $domain_id) { $cfg = EasySCP_Registry::get('Config'); $sql = EasySCP_Registry::get('Db'); if ($month == date('m') && $year == date('Y')) { $curday = date('j'); } else { $tmp = mktime(1, 0, 0, $month + 1, 0, $year); $curday = date('j', $tmp); } $sum_web = 0; $sum_ftp = 0; $sum_mail = 0; $sum_pop = 0; for ($i = 1; $i <= $curday; $i++) { $ftm = mktime(0, 0, 0, $month, $i, $year); $ltm = mktime(23, 59, 59, $month, $i, $year); $query = "\n\t\t\tSELECT\n\t\t\t\t`dtraff_web_in`, `dtraff_web_out`, `dtraff_ftp_in`, `dtraff_ftp_out`, `dtraff_mail`, `dtraff_pop`, `dtraff_time`\n\t\t\tFROM\n\t\t\t\t`domain_traffic`\n\t\t\tWHERE\n\t\t\t\t`domain_id` = ?\n\t\t\tAND\n\t\t\t\t`dtraff_time` >= ?\n\t\t\tAND\n\t\t\t\t`dtraff_time` <= ?\n\t\t"; exec_query($sql, $query, array($domain_id, $ftm, $ltm)); list($web_trf, $ftp_trf, $pop_trf, $smtp_trf) = get_domain_trafic($ftm, $ltm, $domain_id); if ($web_trf == 0 && $ftp_trf == 0 && $smtp_trf == 0 && $pop_trf == 0) { $tpl->append(array('DATE' => date($cfg->DATE_FORMAT, strtotime($year . "-" . $month . "-" . $i)), 'WEB_TRAFFIC' => 0, 'FTP_TRAFFIC' => 0, 'SMTP_TRAFFIC' => 0, 'POP3_TRAFFIC' => 0, 'ALL_TRAFFIC' => 0)); } else { $sum_web += $web_trf; $sum_ftp += $ftp_trf; $sum_mail += $smtp_trf; $sum_pop += $pop_trf; $tpl->append(array('DATE' => date($cfg->DATE_FORMAT, strtotime($year . "-" . $month . "-" . $i)), 'WEB_TRAFFIC' => sizeit($web_trf), 'FTP_TRAFFIC' => sizeit($ftp_trf), 'SMTP_TRAFFIC' => sizeit($smtp_trf), 'POP3_TRAFFIC' => sizeit($pop_trf), 'ALL_TRAFFIC' => sizeit($web_trf + $ftp_trf + $smtp_trf + $pop_trf))); } } $sql_param = array(':domain_id' => $domain_id); $sql_query = "\n\t\tSELECT\n\t\t\ta.admin_id, a.admin_name\n\t\tFROM\n\t\t\tadmin a,\n\t\t\tdomain b\n\t\tWHERE\n\t\t\tb.domain_created_id = a.admin_id\n\t\tAND\n\t\t\tb.domain_id = :domain_id\n\t"; // Einzelne Schreibweise DB::prepare($sql_query); $row = DB::execute($sql_param, true); $tpl->assign(array('RESELLER_NAME' => $row['admin_name'], 'RESELLER_ID' => $row['admin_id'], 'MONTH' => $month, 'YEAR' => $year, 'DOMAIN_ID' => $domain_id, 'ALL_WEB_TRAFFIC' => sizeit($sum_web), 'ALL_FTP_TRAFFIC' => sizeit($sum_ftp), 'ALL_SMTP_TRAFFIC' => sizeit($sum_mail), 'ALL_POP3_TRAFFIC' => sizeit($sum_pop), 'ALL_ALL_TRAFFIC' => sizeit($sum_web + $sum_ftp + $sum_mail + $sum_pop))); }
<?php /** * EasySCP a Virtual Hosting Control Panel * Copyright (C) 2010-2016 by Easy Server Control Panel - http://www.easyscp.net * * This work is licensed under the Creative Commons Attribution-NoDerivs 3.0 Unported License. * To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/. * * @link http://www.easyscp.net * @author EasySCP Team */ require '../../include/easyscp-lib.php'; check_login(__FILE__); $cfg = EasySCP_Registry::get('Config'); $tpl = EasySCP_TemplateEngine::getInstance(); $template = 'admin/cronjob_manage.tpl'; // static page messages $tpl->assign(array('TR_CLIENT_CRONJOBS_TITLE' => tr('EasySCP - Admin/Cronjob Manager'))); if (isset($_GET['delete_cron_id']) && is_numeric($_GET['delete_cron_id'])) { EasyCron::deleteCronJob($_GET['delete_cron_id']); user_goto('cronjob_overview.php'); } if (isset($_GET['status_cron_id']) && is_numeric($_GET['status_cron_id'])) { EasyCron::toggleCronStatus($_GET['status_cron_id']); user_goto('cronjob_overview.php'); } /* * * static page messages. *