function saveEditOrganization($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $credentials) { $pOrganization = new paloSantoOrganization($pDB); $arrFormOrgz = createFieldForm(); $oForm = new paloForm($smarty, $arrFormOrgz); $error = ""; $idOrg = getParameter("id"); if ($credentials['userlevel'] != "superadmin") { //si el usuario es diferente de superadmin el usuario debe pertence a la organizacion que quiere editar if ($idOrg != $credentials['id_organization']) { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr("Invalid ID organization")); return reportOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } } if (!isset($idOrg) || $idOrg == "1") { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr("Invalid ID organization")); return reportOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } if (!$oForm->validateForm($_POST)) { // Validation basic, not empty and VALIDATION_TYPE $smarty->assign("mb_title", _tr("Validation Error")); $arrErrores = $oForm->arrErroresValidacion; $strErrorMsg = "<b>" . _tr("The following fields contain errors") . ":</b><br/>"; if (is_array($arrErrores) && count($arrErrores) > 0) { foreach ($arrErrores as $k => $v) { $strErrorMsg .= "{$k} [{$v['mensaje']}], "; } } $smarty->assign("mb_message", $strErrorMsg); $content = viewFormOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } else { $name = trim(getParameter("name")); $country = trim(getParameter("country")); $city = trim(getParameter("city")); $address = trim(getParameter("address")); $country_code = trim(getParameter("country_code")); $area_code = trim(getParameter("area_code")); $quota = trim(getParameter("quota")); $email_contact = trim(getParameter("email_contact")); if ($credentials['userlevel'] == "superadmin") { $num_user = isset($_POST["max_num_user_chk"]) ? "0" : getParameter("max_num_user"); $num_exten = isset($_POST["max_num_exten_chk"]) ? "0" : getParameter("max_num_exten"); $num_queues = isset($_POST["max_num_queues_chk"]) ? "0" : getParameter("max_num_queues"); if (!isset($_POST["max_num_user_chk"]) && (!ctype_digit($num_user) || $num_user + 0 == 0)) { $error = _tr("Field ") . _tr("Max. # of User Accounts") . _tr(" must be a integer > 0"); } else { $num_user = $num_user + 0; } if (!isset($_POST["max_num_exten_chk"]) && (!ctype_digit($num_exten) || $num_exten + 0 == 0)) { $error = _tr("Field '") . _tr("Max. # of extensions") . _tr(" must be a integer > 0"); } elseif ($num_exten < $num_user && $num_exten != 0 || $num_user == 0 && $num_exten != 0) { $error = _tr("Field ") . _tr("Max. # of extensions") . _tr(" must be greater than Field ") . _tr("Max. # of User Accounts"); } else { $num_exten = $num_exten + 0; } if (!isset($_POST["max_num_queues_chk"]) && (!ctype_digit($num_queues) || $num_queues + 0 == 0)) { $error = _tr("Field ") . _tr("Max. # of queues") . _tr(" must be a integer > 0"); } else { $num_queues = $num_queues + 0; } if ($error != "") { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", $error); return viewFormOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } } else { $num_user = null; $num_exten = null; $num_queues = null; } if ($country == "0" || !isset($country)) { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr("You must select a country")); $content = viewFormOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } else { $exito = $pOrganization->setOrganization($idOrg, $name, $country, $city, $address, $country_code, $area_code, $quota, $email_contact, $num_user, $num_exten, $num_queues, $credentials['userlevel']); if ($exito) { $smarty->assign("mb_title", _tr("Message")); $smarty->assign("mb_message", _tr("The organization was edit successfully")); $content = reportOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } else { $smarty->assign("mb_title", _tr("Error")); $smarty->assign("mb_message", _tr($pOrganization->errMsg)); $content = viewFormOrganization($smarty, $module_name, $local_templates_dir, $pDB, $arrConf, $credentials); } } } return $content; }