function deleteDomain($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $arrLang, $virtual_postfix) { $pEmail = new paloEmail($pDB); $id = (int) getParameter("id"); $arrDomain = $pEmail->getDomains($id); if (!is_array($arrDomain) || count($arrDomain) <= 0) { $smarty->assign('mb_title', _tr('Error')); $smarty->assign('mb_message', _tr('Domain not found by ID')); } else { $sNombreDominio = $arrDomain[0][1]; /*** preguntar si el domino que se desea eliminar tiene cuentas o listas de correos creadas ***/ $arrList = $pEmail->getListByDomain($id); $arrAccounts = $pEmail->getAccountsByDomain($id); if (is_array($arrList) && count($arrList) > 0) { /*** 1) Existen listas creadas asignadas a ese dominio **/ $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr("Please before to delete a domain delete all email lists asociated to ") . $sNombreDominio); } elseif (is_array($arrAccounts) && count($arrAccounts) > 0) { /*** 2) Existen creada cuentas de correos que corresponden a ese dominio ***/ $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr("Please before to delete a domain delete all email accounts asociated to ") . $sNombreDominio); } else { $bExito = $pEmail->deleteDomain($sNombreDominio); if (!$bExito) { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", $pEmail->errMsg); } else { $smarty->assign("mb_message", _tr("Domain has been deleted")); } } } return viewFormDomain($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $arrLang); }
function exportAccounts($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $arrLang) { $pEmail = new paloEmail($pDB); $id_domain = getParameter("domain"); $arrAccounts = $pEmail->getAccountsByDomain($id_domain); $domainName = $pEmail->getDomains($id_domain); if (isset($domainName[0][1])) { $domainName = $domainName[0][1]; } else { $domainName = "no_domain"; } $text = ""; if ($arrAccounts === false) { $text = $domainName . "," . _tr("A Error has ocurred when tryed to obtain emails accounts data. ") . $pEmail->errMsg; } elseif (count($arrAccounts) == 0) { $text = $domainName . "," . _tr("There aren't emails accounts associted with the domain"); } else { foreach ($arrAccounts as $account) { if ($text != "") { $text .= "\n"; } $user = explode("@", $account[0]); $text .= $user[0] . "," . $account[1] . "," . $account[3]; } } header("Pragma: public"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: public"); header("Content-Description: csv file"); header("Content-Type: application/download"); header("Content-Disposition: attachment; filename={$domainName}" . "_accounts.csv"); header("Content-Transfer-Encoding: binary"); header("Content-length: " . strlen($text)); echo $text; }