$user_def_layout = $_SESSION['user_theme_color']; $user_def_lang = $_SESSION['user_def_lang']; } gen_def_language($tpl, $sql, $user_def_lang); gen_def_layout($tpl, $sql, $user_def_layout); $dtraff_pr = 0; $dmn_traff_usege = 0; $dmn_traff_limit = $dmn_traff_limit * 1024 * 1024; list($dtraff_pr, $dmn_traff_usege) = make_traff_usege($_SESSION['user_id']); $dmn_disk_limit = $dmn_disk_limit * 1024 * 1024; gen_traff_usage($tpl, $dmn_traff_usege * 1024 * 1024, $dmn_traff_limit, 400); gen_disk_usage($tpl, $dmn_disk_usage, $dmn_disk_limit, 400); gen_user_messages_label($tpl, $sql, $_SESSION['user_id']); check_user_permissions($tpl, $dmn_sqld_limit, $dmn_sqlu_limit, $dmn_php, $dmn_cgi, $dmn_subd_limit, $dmn_als_limit, $dmn_mailacc_limit); $account_name = decode_idna($_SESSION['user_logged']); $tpl->assign(array('ACCOUNT_NAME' => $account_name, 'MAIN_DOMAIN' => $dmn_name, 'MYSQL_SUPPORT' => $dmn_sqld_limit != -1 && $dmn_sqlu_limit != -1 ? tr('yes') : tr('no'), 'SUBDOMAINS' => gen_num_limit_msg($sub_cnt, $dmn_subd_limit), 'DOMAIN_ALIASES' => gen_num_limit_msg($als_cnt, $dmn_als_limit), 'MAIL_ACCOUNTS' => gen_num_limit_msg($mail_acc_cnt, $dmn_mailacc_limit), 'FTP_ACCOUNTS' => gen_num_limit_msg($ftp_acc_cnt, $dmn_ftpacc_limit), 'SQL_DATABASES' => gen_num_limit_msg($sqld_acc_cnt, $dmn_sqld_limit), 'SQL_USERS' => gen_num_limit_msg($sqlu_acc_cnt, $dmn_sqlu_limit))); $tpl->assign(array('TR_CLIENT_MAIN_INDEX_PAGE_TITLE' => tr('VHCS - Client/Main Index'), 'THEME_COLOR_PATH' => "../themes/{$theme_color}", 'THEME_CHARSET' => tr('encoding'), 'TID' => $_SESSION['layout_id'], 'VHCS_LICENSE' => $cfg['VHCS_LICENSE'], 'ISP_LOGO' => get_logo($_SESSION['user_id']))); /* * * static page messages. * */ gen_client_menu($tpl); gen_logged_from($tpl); check_permissions($tpl); $tpl->assign(array('TR_GENERAL_INFORMATION' => tr('General information'), 'TR_ACCOUNT_NAME' => tr('Account name'), 'TR_MAIN_DOMAIN' => tr('Main domain'), 'TR_PHP_SUPPORT' => tr('PHP support'), 'TR_CGI_SUPPORT' => tr('CGI support'), 'TR_MYSQL_SUPPORT' => tr('SQL support'), 'TR_SUBDOMAINS' => tr('Subdomains'), 'TR_DOMAIN_ALIASES' => tr('Domain aliasses'), 'TR_MAIL_ACCOUNTS' => tr('Mail accounts'), 'TR_FTP_ACCOUNTS' => tr('FTP accounts'), 'TR_SQL_DATABASES' => tr('SQL databases'), 'TR_SQL_USERS' => tr('SQL users'), 'TR_MESSAGES' => tr('Support system'), 'TR_LANGUAGE' => tr('Language'), 'TR_CHOOSE_DEFAULT_LANGUAGE' => tr('Choose default language'), 'TR_SAVE' => tr('Save'), 'TR_LAYOUT' => tr('Layout'), 'TR_CHOOSE_DEFAULT_LAYOUT' => tr('Choose default layout'), 'TR_TRAFFIC_USAGE' => tr('Traffic usage'), 'TR_DISK_USAGE' => tr('Disk usage'))); $tpl->parse('PAGE', 'page'); $tpl->prnt(); if (isset($cfg['DUMP_GUI_DEBUG'])) { dump_gui_debug(); }
function gen_hp(&$tpl, &$sql, $user_id) { global $cfg; $availabe_order = 0; $hp_title = tr('Hosting plans available for update'); // lets see if we have an order $query = <<<SQL_QUERY select \t\t\t* from orders where \t\t\tcustomer_id=? \t\tand \t\t\tstatus<>? SQL_QUERY; $rs = exec_query($sql, $query, array($user_id, 'added')); if ($rs->RecordCount() > 0) { $availabe_order = 1; $availabe_hp_id = $rs->fields['plan_id']; $query = <<<SQL_QUERY select \t\t\t* from hosting_plans where \t\t\tid=? SQL_QUERY; $rs = exec_query($sql, $query, array($availabe_hp_id)); $count = 2; $purchase_text = tr('Cancel order'); $purchase_link = 'delete_id'; $hp_title = tr('Your order'); } else { // generate all hosting plans available for purchasing if (isset($cfg['HOSTING_PLANS_LEVEL']) && $cfg['HOSTING_PLANS_LEVEL'] === 'admin') { $query = <<<SQL_QUERY \t\t\t\tselect \t\t\t\t\tt1.*, \t\t\t\t\tt2.admin_id, t2.admin_type \t\t\t\tfrom \t\t\t\t\thosting_plans as t1, \t\t\t\t\tadmin as t2 \t\t\t\twhere \t\t\t\t\tt2.admin_type=? \t\t\t\tand \t\t\t\t\tt1.reseller_id = t2.admin_id \t\t\t\tand \t\t\t\t\tt1.status=1 \t\t\t\torder by \t\t\t\t\tt1.id SQL_QUERY; $rs = exec_query($sql, $query, array('admin')); $count = $rs->RecordCount(); $count++; } else { $query = <<<SQL_QUERY \t\t\t\tselect \t\t\t\t\t* \t\t\t\tfrom \t\t\t\t\thosting_plans \t\t\t\twhere (reseller_id=? and status='1') SQL_QUERY; $count_query = <<<SQL_QUERY \t\t\t\tselect \t\t\t\t\tcount(id) as cnum \t\t\t\tfrom \t\t\t\t\thosting_plans \t\t\t\twhere (reseller_id=? and status='1') SQL_QUERY; $cnt = exec_query($sql, $count_query, array($_SESSION['user_created_by'])); $rs = exec_query($sql, $query, array($_SESSION['user_created_by'])); $count = $cnt->fields['cnum'] + 1; } $purchase_text = tr('Purchase'); $purchase_link = 'order_id'; } if ($rs->RecordCount() == 0) { $tpl->assign(array('TR_HOSTING_PLANS' => $hp_title, 'HOSTING_PLANS' => '', 'HP_ORDER' => '', 'COLSPAN' => 2)); set_page_message(tr('There are no available updates')); return; } $tpl->assign('COLSPAN', $count); $i = 0; while (!$rs->EOF) { $details = $rs->fields['props']; list($hp_php, $hp_cgi, $hp_sub, $hp_als, $hp_mail, $hp_ftp, $hp_sql_db, $hp_sql_user, $hp_traff, $hp_disk) = explode(";", $details); $details = ''; if ($hp_php === '_yes_') { $details = tr('PHP Support: enabled') . "<br>"; $php = "yes"; } else { $details = tr('PHP Support: disabled') . "<br>"; $php = "no"; } if ($hp_cgi === '_yes_') { $cgi = "yes"; $details = $details . " " . tr('CGI Support: enabled') . "<br>"; } else { $cgi = "no"; $details = $details . " " . tr('CGI Support: disabled') . "<br>"; } if (is_numeric(gen_num_limit_msg($hp_disk))) { $hdd_usage = tr('HDD') . ": " . sizeit(gen_num_limit_msg($hp_disk * 1024 * 1024)) . "<br>"; } else { $hdd_usage = tr('HDD') . ": " . gen_num_limit_msg($hp_disk) . "<br>"; } if (is_numeric(gen_num_limit_msg($hp_traff))) { $traffic_usage = tr('Traffic') . ": " . sizeit(gen_num_limit_msg($hp_traff * 1024 * 1024)); } else { $traffic_usage = tr('Traffic') . ": " . gen_num_limit_msg($hp_traff * 1024 * 1024); } $details = $details . " " . tr('Aliases') . ": " . gen_num_limit_msg($hp_als) . "<br>" . tr('Subdomains') . ": " . gen_num_limit_msg($hp_sub) . "<br>" . tr('Emails') . ": " . gen_num_limit_msg($hp_mail) . "<br>" . tr('FTPs') . ": " . gen_num_limit_msg($hp_ftp) . "<br>" . tr('SQL Databases') . " " . gen_num_limit_msg($hp_sql_db) . "<br>" . tr('SQL Users') . ": " . gen_num_limit_msg($hp_sql_user) . "<br>" . $hdd_usage . $traffic_usage; $price = $rs->fields['price']; if ($price == 0 || $price == '') { $price = tr('free of charge'); } else { $price = $price . " " . $rs->fields['value'] . " " . $rs->fields['payment']; } $check_query = <<<SQL_QUERY \t select \t\t\t\tdomain_id \t from \t domain \twhere \t\t\t\tdomain_admin_id=? \t\t\tand \t\t\t\tdomain_mailacc_limit=? \t\t\tand \t\t\t\tdomain_ftpacc_limit=? \t\t\tand \t\t\t\tdomain_traffic_limit=? \t\t\tand \t\t\t\tdomain_sqld_limit=? \t\t\tand \t\t\t\tdomain_sqlu_limit=? \t\t\tand \t\t\t\tdomain_alias_limit=? \t\t\tand \t\t\t\tdomain_subd_limit=? \t\t\tand \t\t\t\tdomain_disk_limit=? \t\t\tand \t\t\t\tdomain_php=? \t\t\tand \t\t\t\tdomain_cgi=? \t SQL_QUERY; $check = exec_query($sql, $check_query, array($_SESSION['user_id'], $hp_mail, $hp_ftp, $hp_traff, $hp_sql_db, $hp_sql_user, $hp_als, $hp_sub, $hp_disk, $php, $cgi)); if ($check->RecordCount() == 0) { $tpl->assign(array('HP_NAME' => stripslashes($rs->fields['name']), 'HP_DESCRIPTION' => stripslashes($rs->fields['description']), 'HP_DETAILS' => stripslashes($details), 'HP_COSTS' => $price, 'ID' => $rs->fields['id'], 'TR_PURCHASE' => $purchase_text, 'LINK' => $purchase_link, 'TR_HOSTING_PLANS' => $hp_title, 'ITHEM' => $i % 2 == 0 ? 'content' : 'content2')); $tpl->parse('HOSTING_PLANS', '.hosting_plans'); $tpl->parse('HP_ORDER', '.hp_order'); $i++; } $rs->MoveNext(); } if ($i == 0) { $tpl->assign(array('HOSTING_PLANS' => '', 'HP_ORDER' => '', 'TR_HOSTING_PLANS' => $hp_title, 'COLSPAN' => '2')); set_page_message(tr('There are no available hosting plans for update')); } }
} list($years, $month, $days, $hours, $minutes, $seconds) = gen_remain_time($dmn_props['domain_expires']); if (time() < $dmn_props['domain_expires']) { if ($years > 0 && $month > 0 && $days <= 14) { $tpl->assign(array('DMN_EXPIRES' => $years . " Years, " . $month . " Month, " . $days . " Days")); } else { $tpl->assign(array('DMN_EXPIRES' => '<span style="color:red">' . $years . " Years, " . $month . " Month, " . $days . " Days</span>")); } } else { if ($dmn_props['domain_expires'] != 0) { $tpl->assign(array('DMN_EXPIRES' => '<span style="color:red">' . tr("This Domain is expired") . "</span> ")); } else { $tpl->assign(array('DMN_EXPIRES' => "")); } } $tpl->assign(array('ACCOUNT_NAME' => tohtml($account_name), 'DOMAIN_IP' => get_user_domain_ip($dmn_props['domain_ip_id']), 'DOMAIN_ALS_URL' => 'http://' . $cfg->APACHE_SUEXEC_USER_PREF . $dmn_props['domain_uid'] . '.' . $cfg->BASE_SERVER_VHOST, 'MAIN_DOMAIN' => tohtml($dmn_props['domain_name']), 'DMN_EXPIRES_DATE' => $dmn_expires_date, 'MYSQL_SUPPORT' => $dmn_props['domain_sqld_limit'] != -1 && $dmn_props['domain_sqlu_limit'] != -1 ? tr('Yes') . ' / MySQL ' . DB::getInstance()->getAttribute(PDO::ATTR_SERVER_VERSION) : tr('No'), 'SUBDOMAINS' => gen_num_limit_msg($sub_cnt, $dmn_props['domain_subd_limit']), 'DOMAIN_ALIASES' => gen_num_limit_msg($als_cnt, $dmn_props['domain_alias_limit']), 'MAIL_ACCOUNTS' => gen_num_limit_msg($mail_acc_cnt, $dmn_props['domain_mailacc_limit']), 'FTP_ACCOUNTS' => gen_num_limit_msg($ftp_acc_cnt, $dmn_props['domain_ftpacc_limit']), 'SQL_DATABASES' => gen_num_limit_msg($sqld_acc_cnt, $dmn_props['domain_sqld_limit']), 'SQL_USERS' => gen_num_limit_msg($sqlu_acc_cnt, $dmn_props['domain_sqlu_limit']))); // static page messages. gen_logged_from($tpl); gen_system_message($tpl); check_permissions($tpl); $tpl->assign(array('TR_PAGE_TITLE' => tr('EasySCP - Client/Main Index'), 'TR_GENERAL_INFORMATION' => tr('General information'), 'TR_ACCOUNT_NAME' => tr('Account name'), 'TR_DOMAIN_EXPIRE' => tr('Domain expire'), 'TR_MAIN_DOMAIN' => tr('Main domain'), 'TR_PHP_SUPPORT' => tr('PHP support'), 'TR_CGI_SUPPORT' => tr('CGI support'), 'TR_SSL_SUPPORT' => tr('SSL support'), 'TR_DNS_SUPPORT' => tr('Manual DNS support'), 'TR_BACKUP_SUPPORT' => tr('Backup support'), 'TR_MYSQL_SUPPORT' => tr('SQL support'), 'TR_SUBDOMAINS' => tr('Subdomains'), 'TR_DOMAIN_ALIASES' => tr('Domain aliases'), 'TR_MAIL_ACCOUNTS' => tr('Mail accounts'), 'TR_FTP_ACCOUNTS' => tr('FTP accounts'), 'TR_SQL_DATABASES' => tr('SQL databases'), 'TR_SQL_USERS' => tr('SQL users'), 'TR_MESSAGES' => tr('Support system'), 'TR_LANGUAGE' => tr('Language'), 'TR_CHOOSE_DEFAULT_LANGUAGE' => tr('Choose default language'), 'TR_SAVE' => tr('Save'), 'TR_TRAFFIC_USAGE' => tr('Traffic usage'), 'TR_DISK_USAGE' => tr('Disk usage'), 'TR_DMN_TMP_ACCESS' => tr('Alternative URL to reach your website'))); gen_client_mainmenu($tpl, 'client/main_menu_general_information.tpl'); gen_client_menu($tpl, 'client/menu_general_information.tpl'); gen_page_message($tpl); if ($cfg->DUMP_GUI_DEBUG) { dump_gui_debug($tpl); } $tpl->display($template); function gen_num_limit_msg($num, $limit) { if ($limit == -1) {
/************************************************************************************ * Main script */ // Include core libraries require_once 'imscp-lib.php'; iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptStart); /** @var $cfg iMSCP_Config_Handler_File */ $cfg = iMSCP_Registry::get('config'); check_login('user', $cfg->PREVENT_EXTERNAL_LOGIN_CLIENT); $tpl = new iMSCP_pTemplate(); $tpl->define_dynamic(array('layout' => 'shared/layouts/ui.tpl', 'page' => 'client/index.tpl', 'page_message' => 'layout', 'alternative_domain_url' => 'page', 'backup_domain_feature' => 'page', 'traffic_warning' => 'page', 'disk_warning' => 'page')); $tpl->assign('TR_PAGE_TITLE', tr('Client / General / Overview')); generateNavigation($tpl); client_generateSupportSystemNotices(); client_generateDomainExpiresInformation($tpl); client_generateFeatureStatus($tpl); $domainProperties = get_domain_default_props($_SESSION['user_id']); list($domainTrafficPercent, $domainTrafficUsage) = client_makeTrafficUsage($domainProperties['domain_id']); client_generateTrafficUsageBar($tpl, $domainTrafficUsage * 1024 * 1024, $domainProperties['domain_traffic_limit'] * 1024 * 1024, 400); client_generateDiskUsageBar($tpl, $domainProperties['domain_disk_usage'], $domainProperties['domain_disk_limit'] * 1024 * 1024, 400); if ($domainProperties['domain_status'] == 'ok') { $tpl->assign('HREF_DOMAIN_ALTERNATIVE_URL', "http://{$cfg->SYSTEM_USER_PREFIX}" . ($cfg->SYSTEM_USER_MIN_UID + $_SESSION['user_id']) . ".{$cfg->BASE_SERVER_VHOST}"); } else { $tpl->assign('DOMAIN_ALTERNATIVE_URL', ''); } list($subdomainCount, $domainAliasCount, $mailAccountsCount, $ftpAccountsCount, $sqlDatabasesCount, $sqlUsersCount) = get_domain_running_props_cnt($domainProperties['domain_id']); $tpl->assign(array('TR_DOMAIN_ACCOUNT' => tr('Domain account'), 'TR_ACCOUNT_NAME' => tr('Account name'), 'TR_DOMAIN_NAME' => tr('Domain name'), 'DOMAIN_NAME' => tohtml(decode_idna($domainProperties['domain_name'])), 'TR_DOMAIN_ALTERNATIVE_URL' => tr('Alternative URL to reach your website'), 'TR_DOMAIN_EXPIRES_DATE' => tr('Domain expiration date'), 'TR_FEATURE' => tr('Feature'), 'TR_FEATURE_STATUS' => tr('Status'), 'TR_DOMAIN_FEATURE' => tr('Domain'), 'TR_DOMAIN_ALIASES_FEATURE' => tr('Domain aliases'), 'DOMAIN_ALIASES_FEATURE_STATUS' => gen_num_limit_msg($domainAliasCount, $domainProperties['domain_alias_limit']), 'SUBDOMAINS_FEATURE_STATUS' => gen_num_limit_msg($subdomainCount, $domainProperties['domain_subd_limit']), 'TR_SUBDOMAINS_FEATURE' => tr('Subdomains'), 'TR_FTP_ACCOUNTS_FEATURE' => tr('FTP accounts'), 'FTP_ACCOUNTS_FEATURE_STATUS' => gen_num_limit_msg($ftpAccountsCount, $domainProperties['domain_ftpacc_limit']), 'TR_MAIL_ACCOUNTS_FEATURE' => tr('Email accounts'), 'MAIL_ACCOUNTS_FEATURE_STATUS' => gen_num_limit_msg($mailAccountsCount, $domainProperties['domain_mailacc_limit']), 'TR_MAIL_QUOTA' => tr('Email quota'), 'EMAIL_QUOTA_STATUS' => gen_mail_quota_limit_mgs(), 'TR_SQL_DATABASES_FEATURE' => tr('SQL databases'), 'SQL_DATABASE_FEATURE_STATUS' => gen_num_limit_msg($sqlDatabasesCount, $domainProperties['domain_sqld_limit']), 'TR_SQL_USERS_FEATURE' => tr('SQL users'), 'SQL_USERS_FEATURE_STATUS' => gen_num_limit_msg($sqlUsersCount, $domainProperties['domain_sqlu_limit']), 'TR_PHP_SUPPORT_FEATURE' => tr('PHP'), 'TR_PHP_DIRECTIVES_EDITOR_SUPPORT_FEATURE' => tr('PHP Editor'), 'TR_CGI_SUPPORT_FEATURE' => tr('CGI'), 'TR_CUSTOM_DNS_RECORDS_FEATURE' => tr('Custom DNS records'), 'TR_EXTERNAL_MAIL_SERVER_FEATURE' => tr('External mail servers'), 'TR_APP_INSTALLER_FEATURE' => tr('Software installer'), 'TR_BACKUP_FEATURE' => tr('Backup'), 'TR_WEBSTATS_FEATURE' => tr('Web statistics'), 'TR_TRAFFIC_USAGE' => tr('Traffic usage'), 'TR_DISK_USAGE' => tr('Disk usage'), 'TR_DISK_USAGE_DETAIL' => tr('Disk usage detail'), 'TR_DISK_FILE_USAGE' => tr('File usage'), 'DISK_FILESIZE' => bytesHuman($domainProperties['domain_disk_file']), 'TR_DISK_DATABASE_USAGE' => tr('Database usage'), 'DISK_SQLSIZE' => bytesHuman($domainProperties['domain_disk_sql']), 'TR_DISK_MAIL_USAGE' => tr('Mail usage'), 'DISK_MAILSIZE' => bytesHuman($domainProperties['domain_disk_mail']))); generatePageMessage($tpl); $tpl->parse('LAYOUT_CONTENT', 'page'); iMSCP_Events_Aggregator::getInstance()->dispatch(iMSCP_Events::onClientScriptEnd, array('templateEngine' => $tpl)); $tpl->prnt();