function gen_page_catchall_list(&$tpl, &$sql, $dmn_id, $dmn_name, $dmn_mails, $als_mails) { global $counter; $total_mails = $dmn_mails + $als_mails; if ($total_mails == 0) { $tpl->assign(array('CATCHALL_MSG' => tr('Catch all mail account can not be created!'), 'CATCHALL_ITEM' => '', 'ITEM_CLASS' => 'content')); $tpl->parse('CATCHALL_MESSAGE', 'catchall_message'); return; } $tpl->assign('CATCHALL_MESSAGE', ''); // // Have We Any Domain Mails? // if ($dmn_mails > 0) { $query = <<<SQL_QUERY select mail_id, mail_acc, status from mail_users where domain_id = '{$dmn_id}' and sub_id = 0 and mail_type = 'normal_catchall' SQL_QUERY; $rs = execute_query($sql, $query); if ($rs->RecordCount() == 0) { gen_catchall_item($tpl, 'create', $dmn_id, $dmn_name, '', '', '', 'dmn'); } else { gen_catchall_item($tpl, 'delete', $dmn_id, $dmn_name, $rs->fields['mail_id'], $rs->fields['mail_acc'], $rs->fields['status'], 'dmn'); } $tpl->assign(array('ITEM_CLASS' => 'content')); $tpl->parse('CATCHALL_ITEM', 'catchall_item'); } // // Have We Any Alias Mails? // if ($als_mails > 0) { $query = <<<SQL_QUERY select alias_id, alias_name from domain_aliasses where domain_id = '{$dmn_id}' SQL_QUERY; $rs = execute_query($sql, $query); while (!$rs->EOF) { if ($counter % 2 == 0) { $tpl->assign('ITEM_CLASS', 'content2'); } else { $tpl->assign('ITEM_CLASS', 'content'); } $als_id = $rs->fields['alias_id']; $als_name = $rs->fields['alias_name']; $query = <<<SQL_QUERY select mail_id, mail_acc, status from mail_users where domain_id = '{$dmn_id}' and sub_id = '{$als_id}' and mail_type = 'alias_catchall' SQL_QUERY; $rs_als = execute_query($sql, $query); if ($rs_als->RecordCount() == 0) { gen_catchall_item($tpl, 'create', $als_id, $als_name, '', '', '', 'als'); } else { gen_catchall_item($tpl, 'delete', $als_id, $als_name, $rs_als->fields['mail_id'], $rs_als->fields['mail_acc'], $rs_als->fields['status'], 'als'); } $tpl->parse('CATCHALL_ITEM', '.catchall_item'); $rs->MoveNext(); $counter++; } } }
/** * @todo use db prepared statements * @param EasySCP_TemplateEngine $tpl * @param EasySCP_Database $sql * @param int $dmn_id * @param string $dmn_name */ function gen_page_catchall_list($tpl, $sql, $dmn_id, $dmn_name) { global $counter; $tpl->assign('CATCHALL_MESSAGE', ''); $query = "\n\t\t\tSELECT\n\t\t\t\t`mail_id`, `mail_acc`, `status`\n\t\t\tFROM\n\t\t\t\t`mail_users`\n\t\t\tWHERE\n\t\t\t\t`domain_id` = '{$dmn_id}'\n\t\t\tAND\n\t\t\t\t`sub_id` = 0\n\t\t\tAND\n\t\t\t\t`mail_type` = 'normal_catchall'\n\t\t"; $rs = execute_query($sql, $query); if ($rs->recordCount() == 0) { gen_catchall_item($tpl, 'create', $dmn_id, $dmn_name, '', '', '', 'normal'); } else { gen_catchall_item($tpl, 'delete', $dmn_id, $dmn_name, $rs->fields['mail_id'], $rs->fields['mail_acc'], $rs->fields['status'], 'normal'); } $tpl->assign(array('ITEM_CLASS' => 'content')); $query = "\n\t\t\tSELECT\n\t\t\t\t`alias_id`, `alias_name`\n\t\t\tFROM\n\t\t\t\t`domain_aliasses`\n\t\t\tWHERE\n\t\t\t\t`domain_id` = '{$dmn_id}'\n\t\t\tAND\n\t\t\t\t`status` = 'ok'\n\t\t"; $rs = execute_query($sql, $query); while (!$rs->EOF) { $tpl->assign('ITEM_CLASS', $counter % 2 == 0 ? 'content2' : 'content'); $als_id = $rs->fields['alias_id']; $als_name = $rs->fields['alias_name']; $query = "\n\t\t\t\tSELECT\n\t\t\t\t\t`mail_id`, `mail_acc`, `status`\n\t\t\t\tFROM\n\t\t\t\t\t`mail_users`\n\t\t\t\tWHERE\n\t\t\t\t\t`domain_id` = '{$dmn_id}'\n\t\t\t\tAND\n\t\t\t\t\t`sub_id` = '{$als_id}'\n\t\t\t\tAND\n\t\t\t\t\t`mail_type` = 'alias_catchall'\n\t\t\t"; $rs_als = execute_query($sql, $query); if ($rs_als->recordCount() == 0) { gen_catchall_item($tpl, 'create', $als_id, $als_name, '', '', '', 'alias'); } else { gen_catchall_item($tpl, 'delete', $als_id, $als_name, $rs_als->fields['mail_id'], $rs_als->fields['mail_acc'], $rs_als->fields['status'], 'alias'); } $rs->moveNext(); $counter++; } $query = "\n\t\t\tSELECT\n\t\t\t\ta.`subdomain_alias_id`, CONCAT(a.`subdomain_alias_name`,'.',b.`alias_name`) AS `subdomain_name`\n\t\t\tFROM\n\t\t\t\t`subdomain_alias` AS a, `domain_aliasses` AS b\n\t\t\tWHERE\n\t\t\t\tb.`alias_id` IN (SELECT `alias_id` FROM `domain_aliasses` WHERE `domain_id` = '{$dmn_id}')\n\t\t\tAND\n\t\t\t\ta.`alias_id` = b.`alias_id`\n\t\t\tAND\n\t\t\t\ta.`status` = 'ok'\n\t\t"; $rs = execute_query($sql, $query); while (!$rs->EOF) { $tpl->assign('ITEM_CLASS', $counter % 2 == 0 ? 'content2' : 'content'); $als_id = $rs->fields['subdomain_alias_id']; $als_name = $rs->fields['subdomain_name']; $query = "\n\t\t\t\tSELECT\n\t\t\t\t\t`mail_id`, `mail_acc`, `status`\n\t\t\t\tFROM\n\t\t\t\t\t`mail_users`\n\t\t\t\tWHERE\n\t\t\t\t\t`domain_id` = '{$dmn_id}'\n\t\t\t\tAND\n\t\t\t\t\t`sub_id` = '{$als_id}'\n\t\t\t\tAND\n\t\t\t\t\t`mail_type` = 'alssub_catchall'\n\t\t\t"; $rs_als = execute_query($sql, $query); if ($rs_als->recordCount() == 0) { gen_catchall_item($tpl, 'create', $als_id, $als_name, '', '', '', 'alssub'); } else { gen_catchall_item($tpl, 'delete', $als_id, $als_name, $rs_als->fields['mail_id'], $rs_als->fields['mail_acc'], $rs_als->fields['status'], 'alssub'); } $rs->moveNext(); $counter++; } $query = "\n\t\t\tSELECT\n\t\t\t\ta.`subdomain_id`, CONCAT(a.`subdomain_name`,'.',b.`domain_name`) AS `subdomain_name`\n\t\t\tFROM\n\t\t\t\t`subdomain` AS a, `domain` AS b\n\t\t\tWHERE\n\t\t\t\ta.`domain_id` = '{$dmn_id}'\n\t\t\tAND\n\t\t\t\ta.`domain_id` = b.`domain_id`\n\t\t\tAND\n\t\t\t\ta.`status` = 'ok'\n\t\t"; $rs = execute_query($sql, $query); while (!$rs->EOF) { $tpl->assign('ITEM_CLASS', $counter % 2 == 0 ? 'content2' : 'content'); $als_id = $rs->fields['subdomain_id']; $als_name = $rs->fields['subdomain_name']; $query = "\n\t\t\t\tSELECT\n\t\t\t\t\t`mail_id`, `mail_acc`, `status`\n\t\t\t\tFROM\n\t\t\t\t\t`mail_users`\n\t\t\t\tWHERE\n\t\t\t\t\t`domain_id` = '{$dmn_id}'\n\t\t\t\tAND\n\t\t\t\t\t`sub_id` = '{$als_id}'\n\t\t\t\tAND\n\t\t\t\t\t`mail_type` = 'subdom_catchall'\n\t\t\t"; $rs_als = execute_query($sql, $query); if ($rs_als->recordCount() == 0) { gen_catchall_item($tpl, 'create', $als_id, $als_name, '', '', '', 'subdom'); } else { gen_catchall_item($tpl, 'delete', $als_id, $als_name, $rs_als->fields['mail_id'], $rs_als->fields['mail_acc'], $rs_als->fields['status'], 'subdom'); } $rs->moveNext(); $counter++; } }