/** * Check SQL permissions * * @param iMSCP_pTemplate $tpl * @param int $databaseId Database unique identifier */ function client_checkSqlUserPermissions($tpl, $databaseId) { $domainProperties = get_domain_default_props($_SESSION['user_id']); $domainSqlUsersLimit = $domainProperties['domain_sqlu_limit']; $limits = get_domain_running_sql_acc_cnt($domainProperties['domain_id']); if ($domainSqlUsersLimit != 0 && $limits[1] >= $domainSqlUsersLimit) { $tpl->assign('CREATE_SQLUSER', ''); } $stmt = exec_query(' SELECT domain_id FROM domain INNER JOIN sql_database USING(domain_id) WHERE domain_id = ? AND sqld_id = ? LIMIT 1 ', array($domainProperties['domain_id'], $databaseId)); if (!$stmt->rowCount()) { showBadRequestErrorPage(); } }
/** * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $user_id * @param int $db_id * @param bool $sqluser_available * @return void */ function check_sql_permissions($tpl, $sql, $user_id, $db_id, $sqluser_available) { $dmn_props = get_domain_default_props($user_id); list(, $sqlu_acc_cnt) = get_domain_running_sql_acc_cnt($sql, $dmn_props['domain_id']); if ($dmn_props['domain_sqlu_limit'] != 0 && $sqlu_acc_cnt >= $dmn_props['domain_sqlu_limit']) { if (!$sqluser_available) { set_page_message(tr('SQL users limit reached!'), 'warning'); user_goto('sql_manage.php'); } } else { $tpl->assign('CREATE_SQLUSER', true); } $dmn_name = $_SESSION['user_logged']; $query = "\n\t\tSELECT\n\t\t\tt1.`sqld_id`, t2.`domain_id`, t2.`domain_name`\n\t\tFROM\n\t\t\t`sql_database` AS t1,\n\t\t\t`domain` AS t2\n\t\tWHERE\n\t\t\tt1.`sqld_id` = ?\n\t\tAND\n\t\t\tt2.`domain_id` = t1.`domain_id`\n\t\tAND\n\t\t\tt2.`domain_name` = ?\n\t"; $rs = exec_query($sql, $query, array($db_id, $dmn_name)); if ($rs->recordCount() == 0) { set_page_message(tr('User does not exist or you do not have permission to access this interface!'), 'warning'); user_goto('sql_manage.php'); } }
function check_sql_permissions(&$tpl, $sql, $user_id, $db_id, $sqluser_available) { if (isset($_SESSION['sql_support']) && $_SESSION['sql_support'] == "no") { header("Location: index.php"); } list($dmn_id, $dmn_name, $dmn_gid, $dmn_uid, $dmn_created_id, $dmn_created, $dmn_last_modified, $dmn_mailacc_limit, $dmn_ftpacc_limit, $dmn_traff_limit, $dmn_sqld_limit, $dmn_sqlu_limit, $dmn_status, $dmn_als_limit, $dmn_subd_limit, $dmn_ip_id, $dmn_disk_limit, $dmn_disk_usage, $dmn_php, $dmn_cgi) = get_domain_default_props($sql, $user_id); list($sqld_acc_cnt, $sqlu_acc_cnt) = get_domain_running_sql_acc_cnt($sql, $dmn_id); if ($dmn_sqlu_limit != 0 && $sqlu_acc_cnt >= $dmn_sqlu_limit) { if (!$sqluser_available) { set_page_message(tr('SQL-user limit expired!')); header("Location: manage_sql.php"); die; } else { $tpl->assign('CREATE_SQLUSER', ''); } } $dmn_name = $_SESSION['user_logged']; $query = <<<SQL_QUERY select t1.sqld_id, t2.domain_id, t2.domain_name from sql_database as t1, domain as t2 where t1.sqld_id = ? and t2.domain_id = t1.domain_id and t2.domain_name = ? SQL_QUERY; $rs = exec_query($sql, $query, array($db_id, $dmn_name)); if ($rs->RecordCount() == 0) { set_page_message(tr('User does not exist or you do not have permission to access this interface!')); header('Location: manage_sql.php'); die; } }
function get_domain_running_props_cnt(&$sql, $domain_id) { $sub_cnt = get_domain_running_sub_cnt($sql, $domain_id); $als_cnt = get_domain_running_als_cnt($sql, $domain_id); list($mail_acc_cnt, $dmn_mail_acc_cnt, $sub_mail_acc_cnt, $als_mail_acc_cnt) = get_domain_running_mail_acc_cnt($sql, $domain_id); list($ftp_acc_cnt, $dmn_ftp_acc_cnt, $sub_ftp_acc_cnt, $als_ftp_acc_cnt) = get_domain_running_ftp_acc_cnt($sql, $domain_id); list($sqld_acc_cnt, $sqlu_acc_cnt) = get_domain_running_sql_acc_cnt($sql, $domain_id); return array($sub_cnt, $als_cnt, $mail_acc_cnt, $ftp_acc_cnt, $sqld_acc_cnt, $sqlu_acc_cnt); }
/** * Get domain limit properties * * @param int $domainId Domain unique identifier * @return array */ function get_domain_running_props_cnt($domainId) { $subCount = get_domain_running_sub_cnt($domainId); $alsCount = get_domain_running_als_cnt($domainId); list($mailAccCount) = get_domain_running_mail_acc_cnt($domainId); // Transitional query - Will be removed asap $stmt = exec_query('SELECT domain_admin_id FROM domain WHERE domain_id = ?', $domainId); $ftpAccCount = get_customer_running_ftp_acc_cnt($stmt->fields['domain_admin_id']); list($sqlDbCount, $sqlUserCount) = get_domain_running_sql_acc_cnt($domainId); return array($subCount, $alsCount, $mailAccCount, $ftpAccCount, $sqlDbCount, $sqlUserCount); }
/** * check user sql permission */ function check_sql_permissions($sql, $user_id) { if (isset($_SESSION['sql_support']) && $_SESSION['sql_support'] == "no") { header("Location: index.php"); } $dmn_props = get_domain_default_props($user_id); list($sqld_acc_cnt) = get_domain_running_sql_acc_cnt($sql, $dmn_props['domain_id']); if ($dmn_props['domain_sqld_limit'] != 0 && $sqld_acc_cnt >= $dmn_props['domain_sqld_limit']) { set_page_message(tr('SQL accounts limit reached!'), 'warning'); user_goto('sql_manage.php'); } }
/** * Check SQL permissions * * @return void */ function client_checkSqlDbLimit() { $mainDmnProps = get_domain_default_props($_SESSION['user_id']); $mainDmnId = $mainDmnProps['domain_id']; $sqlDatabaseLimit = $mainDmnProps['domain_sqld_limit']; list($nbSqlDb) = get_domain_running_sql_acc_cnt($mainDmnId); if ($sqlDatabaseLimit != 0 && $nbSqlDb >= $sqlDatabaseLimit) { set_page_message(tr('SQL database limit reached.'), 'error'); redirectTo('sql_manage.php'); } }
function check_sql_permissions($sql, $user_id) { if (isset($_SESSION['sql_support']) && $_SESSION['sql_support'] == "no") { header("Location: index.php"); } list($dmn_id, $dmn_name, $dmn_gid, $dmn_uid, $dmn_created_id, $dmn_created, $dmn_last_modified, $dmn_mailacc_limit, $dmn_ftpacc_limit, $dmn_traff_limit, $dmn_sqld_limit, $dmn_sqlu_limit, $dmn_status, $dmn_als_limit, $dmn_subd_limit, $dmn_ip_id, $dmn_disk_limit, $dmn_disk_usage, $dmn_php, $dmn_cgi) = get_domain_default_props($sql, $user_id); list($sqld_acc_cnt, $sqlu_acc_cnt) = get_domain_running_sql_acc_cnt($sql, $dmn_id); if ($dmn_sqld_limit != 0 && $sqld_acc_cnt >= $dmn_sqld_limit) { set_page_message(tr('SQL accounts limit expired!')); header("Location: manage_sql.php"); die; } }