protected function after_action($result) { if ($this->is_naked) { return $result; } return BeginHtml() . $result . EndHtml(); }
/** * */ protected function after_action($result) { BeginHtml(NETCAT_MODULE_ROUTING_TITLE, '', ''); echo $result; EndHtml(); return ''; }
function UninstallationAborted() { global $TMP_FOLDER; print TOOLS_MODULES_ERR_UNINSTALL . ".<br>\n"; DeleteFilesInDirectory($TMP_FOLDER); EndHtml(); exit; }
protected function after_action($result) { // JSON if (is_array($result)) { return json_safe_encode($result); } // With template if (!$this->is_naked) { return BeginHtml() . $result . EndHtml(); } return $result; }
function InstallationAborted($msg = '', $action = '') { global $TMP_FOLDER; switch ($action) { case 'patch': nc_print_status(($msg ? $msg . "<br>" : "") . TOOLS_PATCH_ERR_CANTINSTALL, "error"); PatchForm(); PatchList(); break; case 'module': nc_print_status(($msg ? $msg . "<br>" : "") . TOOLS_MODULES_ERR_INSTALL, "error"); break; case 'activation': nc_print_status($msg ? $msg : TOOLS_PATCH_ERROR, "error"); nc_activation_show_form(); break; default: nc_print_status($msg ? $msg : TOOLS_PATCH_ERROR, "error"); break; } DeleteFilesInDirectory($TMP_FOLDER); EndHtml(); exit; }
AddClassForm(); break; case 2: # добавим шаблон if (!$nc_core->token->verify()) { BeginHtml($Title2, $Title2, "http://" . $DOC_DOMAIN . "/management/class/"); nc_print_status(NETCAT_TOKEN_INVALID, 'error'); EndHtml(); exit; } BeginHtml($Title2, $Title2, "http://" . $DOC_DOMAIN . "/management/class/"); $UI_CONFIG = new ui_config_class('import', $ClassID, $ClassGroup); if (!$FilePatch['tmp_name']) { nc_print_status(CONTROL_CLASS_IMPORT_ERROR_NOTUPLOADED, 'error'); break; #InstallationAborted(CONTROL_CLASS_IMPORT_ERROR_NOTUPLOADED); } $res = ParseClassFile($FilePatch['tmp_name']); if ($res) { $AJAX_SAVER = true; BeginHtml($Title2, $Title2, "http://" . $DOC_DOMAIN . "/management/class/"); $UI_CONFIG = new ui_config_class('edit', $res, ''); nc_print_status(CONTROL_CONTENT_CLASS_SUCCESS_ADD, 'ok'); ClassForm($res, "index.php", 5, 2, 0); } else { nc_print_status(CONTROL_CLASS_IMPORT_ERROR_CANNOTBEINSTALLED, 'error'); } break; } EndHtml();
/** * */ protected function print_footer() { print join("\n", $this->add_to_footer); EndHtml(); }
function show_counters($phase) { global $nc_core, $db; global $counters, $default_templ_id, $UI_CONFIG; if ($phase == 1) { // Форма добавления счетчика через API if (!extension_loaded('curl')) { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_NOT_FOUND_CURL, "error"); EndHtml(); exit; } $ret = add_api_counter(); if ($ret) { return; } } elseif ($phase == 3 && isset($_POST['DeleteCounter'])) { // удалить выбранные global $DeleteCounter, $counters; $openstat = new nc_Openstat_core_class($nc_core->get_settings('Openstat_Login', 'stats'), $nc_core->get_settings('Openstat_Password', 'stats')); foreach ($counters as $del_counter) { //$DeleteCounter as $del_counter_id => $del_counter_flag) { if ($DeleteCounter[$del_counter->Counter_Id]) { if (!$del_counter->User_Counter_Code) { $err_code = $openstat->delete_counter($del_counter->Openstat_Counter_Id); if ($err_code != 204) { if ($err_code == 403) { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_ERROR_NEW_COUNTER_AUTH_ERROR, "error"); } else { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_ERROR_DEL_COUNTER . $err_code, "error"); } $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_BACK, "align" => "left", "action" => "urlDispatcher.load('module.stats.openstat.counters')"); return; } } $db->query("DELETE FROM `Stats_Openstat_Counters` WHERE `Counter_Id` = '" . $del_counter->Counter_Id . "'"); } } nc_print_status(NETCAT_MODULE_STATS_CHANGES_SAVED, "ok"); } elseif ($phase == 4 && isset($_POST['DoAction'])) { //удалить все $openstat = new nc_Openstat_core_class($nc_core->get_settings('Openstat_Login', 'stats'), $nc_core->get_settings('Openstat_Password', 'stats')); foreach ($counters as $del_counter) { if (!$del_counter->User_Counter_Code) { $err_code = $openstat->delete_counter($del_counter->Openstat_Counter_Id); if ($err_code != 204) { if ($err_code == 403) { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_ERROR_NEW_COUNTER_AUTH_ERROR, "error"); } else { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_ERROR_DEL_COUNTER . $err_code, "error"); } $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_BACK, "align" => "left", "action" => "urlDispatcher.load('module.stats.openstat.counters')"); return; } } $db->query("DELETE FROM `Stats_Openstat_Counters` WHERE `Counter_Id` = '" . $db->escape($del_counter->Counter_Id) . "'"); } nc_print_status(NETCAT_MODULE_STATS_CHANGES_SAVED, "ok"); } elseif ($phase == 5) { // Форма добавления своего кода счетчика $ret = add_user_counter(); if ($ret) { return; } } elseif ($phase == 7 && isset($_GET['counter_id'])) { // вывод формы изменения global $counter_id; $counter_id = intval($counter_id); $counter_params = $counters[$counter_id]; if (!$counter_params) { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_INVALID_COUNTER_ID, "error"); } else { if ($counter_params->User_Counter_Code) { // свой код счетчика $GLOBALS['CounterCatalogueId'] = $counter_params->Catalogue_Id; $GLOBALS['UserCounterCode'] = $counter_params->Counter_Code; $GLOBALS['CounterCatalogueId'] = $counter_params->Catalogue_Id; $GLOBALS['CounterInAllTempl'] = 1; add_user_counter(); } else { // Автосгенерированный счетчик $GLOBALS['CounterCatalogueId'] = $counter_params->Catalogue_Id; $GLOBALS['CounterRating'] = $counter_params->Rating; $GLOBALS['CounterAdvert'] = $counter_params->Advert; $GLOBALS['CounterColor'] = $counter_params->Color; $GLOBALS['CounterPicture'] = $counter_params->Size; $GLOBALS['CounterTrackLinks'] = $counter_params->TrackLinks; $GLOBALS['CounterInAllTempl'] = 1; add_api_counter(); } } return; } elseif ($phase == 8) { // выбираем тип счетчика if (!($sites_ddlist = show_sites_without_counter_ddlist($counters))) { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_ERROR_ALREADY_COUNTERS_FOR_ALL_SITES, "error"); } else { echo "<div style='position: absolute; top: 40%; width:95%; text-align: center;'>\n <p><a href='?sub_view=counters&phase=1'>" . NETCAT_MODULE_STATS_OPENSTAT_ADD_API_COUNTER . "</a></p>\n <br />\n <p><a href='?sub_view=counters&phase=5'>" . NETCAT_MODULE_STATS_OPENSTAT_ADD_USER_COUNTER . "</a></p>\n </div>\n"; } $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_BACK, "align" => "left", "action" => "urlDispatcher.load('module.stats.openstat.counters')"); return; } elseif ($phase == 9) { // подтверждение удаления всех счетчиков echo "<p>" . NETCAT_MODULE_STATS_OPENSTAT_DEL_ALL_CONFIRM . "</p>\n"; echo "<form name='delAllCountersFormSubmit' id='delAllCountersFormSubmit' method='post' action='?sub_view=counters&phase=4'>\n <input type='hidden' name='DoAction' value='1'>\n </form>\n"; $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_YES, "align" => "right", "action" => "mainView.submitIframeForm('delAllCountersFormSubmit')"); $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_NO, "align" => "left", "action" => "urlDispatcher.load('module.stats.openstat.counters')"); return; } elseif ($phase == 10) { // подтверждение удаления выбранных счетчиков global $DeleteCounter, $counters; echo "<p>" . NETCAT_MODULE_STATS_OPENSTAT_DEL_SELECTED_CONFIRM . "</p>\n"; echo "<form name='delCountersFormSubmit' id='delCountersFormSubmit' method='post' action='?sub_view=counters&phase=3'>"; foreach ($DeleteCounter as $del_counter => $value) { echo "<input type='hidden' name='DeleteCounter[" . $del_counter . "]' value='" . $value . "'>\n"; } echo "</form>\n"; $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_YES, "align" => "right", "action" => "mainView.submitIframeForm('delCountersFormSubmit')"); $UI_CONFIG->actionButtons[] = array("id" => "back", "caption" => NETCAT_MODULE_STATS_OPENSTAT_NO, "align" => "left", "action" => "urlDispatcher.load('module.stats.openstat.counters')"); return; } // -------------------- Выводим все счетчики ----------------------------- $counters = $db->get_results("SELECT * FROM Stats_Openstat_Counters"); if (!check_counters()) { return; } if ($counters) { echo "<form name='delCountersForm' id='delCountersForm' method='post' action='?sub_view=counters&phase=10'>\n <table border=0 cellpadding=0 cellspacing=0 width=100%>\n <tr><td >\n <table class='admin_table' width=100%>\n <tr>\n <td width=3%>ID</td>\n <td width=82%>" . NETCAT_MODULE_STATS_ADMIN_TAB_OPENSTAT_CATALOGUE . "</td>\n <td width=5%>" . NETCAT_MODULE_STATS_ADMIN_TAB_OPENSTAT_EDIT . "</td>\n <td align=center><div class='icons icon_delete' title='" . NETCAT_MODULE_STATS_ADMIN_TAB_OPENSTAT_DELETE . "'></div></td>\n </tr>\n"; foreach ($counters as $counter) { echo "<tr><td>" . $counter->Counter_Id . "</td>\n <td>" . ($counter->Catalogue_Id ? "<a target='blank' href='http://" . $nc_core->catalogue->get_by_id($counter->Catalogue_Id, 'Domain') . "'>" . $counter->Catalogue_Id . ": " . $nc_core->catalogue->get_by_id($counter->Catalogue_Id, 'Catalogue_Name') . "</a>" : NETCAT_MODULE_STATS_OPENSTAT_ALL_SITES) . "</td>\n <td align='center'><a href='?sub_view=counters&phase=7&counter_id=" . $counter->Counter_Id . "'><div class='icons icon_folder_edit' title='" . NETCAT_MODULE_STATS_ADMIN_TAB_OPENSTAT_EDIT . "'></div></a></td>\n <td align='center'><input type='checkbox' name='DeleteCounter[" . $counter->Counter_Id . "]' value='1'></td>"; } echo "</table></td></tr></table></form>"; $UI_CONFIG->actionButtons[] = array("id" => "delete", "align" => "left", "caption" => NETCAT_MODULE_STATS_OPENSTAT_DEL_SELECTED, "action" => "mainView.submitIframeForm('delCountersForm')", "red_border" => true); $UI_CONFIG->actionButtons[] = array("id" => "delete_all", "align" => "left", "caption" => NETCAT_MODULE_STATS_OPENSTAT_DEL_ALL, "action" => "urlDispatcher.load('module.stats.openstat.counters(9)')", "red_border" => true); } else { nc_print_status(NETCAT_MODULE_STATS_OPENSTAT_NO_COUNTERS, "info"); } $UI_CONFIG->actionButtons[] = array("id" => "add", "caption" => NETCAT_MODULE_STATS_OPENSTAT_ADD_COUNTER, "action" => "urlDispatcher.load('module.stats.openstat.counters(8)')"); }
function ShowMenu($CatalogueID, $phase1, $action1, $phase2, $action2) { global $db, $perm; global $EDIT_DOMAIN, $HTTP_ROOT_PATH, $DOMAIN_NAME, $ADMIN_PATH, $SUB_FOLDER; global $UI_CONFIG; $CatalogueID = intval($CatalogueID); $is_admin = $perm->isCatalogueAdmin($CatalogueID); $Array = $db->get_row("SELECT * FROM `Catalogue` WHERE `Catalogue_ID`='" . $CatalogueID . "'"); if (!$Array) { nc_print_status(CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWCATALOGUELIST_DBERROR, 'error'); EndHtml(); exit; } $countChild = HighLevelChildrenNumber($CatalogueID); $ModerationType = $Array->Moderation_ID == 2 ? CLASSIFICATOR_TYPEOFMODERATION_MODERATION : CLASSIFICATOR_TYPEOFMODERATION_RIGHTAWAY; $UserGroupName = array(1 => CLASSIFICATOR_USERGROUP_ALL, 2 => CLASSIFICATOR_USERGROUP_REGISTERED, 3 => CLASSIFICATOR_USERGROUP_AUTHORIZED); // In MySQL 4.1, TIMESTAMP display format changes to be the same as DATETIME. if (nc_strpos($Array->LastUpdated[4], '-')) { $Array->LastUpdated = nc_substr($Array->LastUpdated, 0, 4) . "-" . nc_substr($Array->LastUpdated, 4, 2) . "-" . nc_substr($Array->LastUpdated, 6, 2) . " " . nc_substr($Array->LastUpdated, 8, 2) . ":" . nc_substr($Array->LastUpdated, 10, 2) . ":" . nc_substr($Array->LastUpdated, 12, 2); } echo "<br />\n\t<table border='0' cellpadding='0' cellspacing='0' width='100%'><tr><td>\n\t<table border='0' cellpadding='0' cellspacing='1' width='100%'><tr><td>\n \t<table border='0' cellpadding='0' cellspacing='0' width='100%' class='border-bottom'>\n \t<tr><td width='50%'>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_CREATED . ":</td><td>" . $Array->Created . "</td></tr>\n \t<tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_UPDATED . ":</td><td>" . $Array->LastUpdated . "</td></tr>\n \t</table>\n\t</td></tr><tr><td>\n \t<table border='0' cellpadding='0' cellspacing='0' width='100%' class='border-bottom'>\n <tr><td width='50%'>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_SECTIONSCOUNT . ":</td>"; echo "<td>" . $countChild; if ($countChild) { echo " ( <a href='" . $ADMIN_PATH . "subdivision/index.php?CatalogueID=" . $CatalogueID . "&ParentSubID=0'>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWCATALOGUELIST_LIST . "</a>\n " . ($is_admin ? ", <a href='" . $ADMIN_PATH . "subdivision/index.php?phase=2&ParentSubID=0&CatalogueID=" . $CatalogueID . "'>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_ADD . "\n </a> )" : ")") . ""; } echo "</td></tr>\n \t<tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_SITESTATUS . ":</td><td>" . ($Array->Checked ? CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_ON : CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_OFF) . "</td></tr>\n \t</table>\n\t</td></tr><tr><td>\n \t<table border='0' cellpadding='0' cellspacing='0' width='100%' class='border-bottom'>\n \t<tr><td width=50%>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_READACCESS . ":</td><td>" . $UserGroupName[$Array->Read_Access_ID] . " " . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_USERS . "</td></tr>\n <tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_ADDACCESS . ":</td><td>" . $UserGroupName[$Array->Write_Access_ID] . " " . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_USERS . "</td></tr>\n \t<tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_EDITACCESS . ":</td><td>" . $UserGroupName[$Array->Edit_Access_ID] . " " . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_USERS . "</td></tr>\n \t<tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_SUBSCRIBEACCESS . ":</td><td>" . $UserGroupName[$Array->Subscribe_Access_ID] . " " . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_USERS . "</td></tr>\n \t<tr><td>" . CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_PUBLISHACCESS . ":</td><td>" . $ModerationType . "</td></tr>\n \t</table>\n\t</td></tr></table></td></tr></table>"; $UI_CONFIG->actionButtons[] = array("id" => "delete", "caption" => CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_DELETE, "location" => "site.delete(" . $CatalogueID . ")", "red_border" => true); $UI_CONFIG->actionButtons[] = array("id" => "preview", "caption" => CONTROL_CONTENT_CATALOUGE_FUNCS_SHOWMENU_VIEW, "action" => "urlDispatcher.load('http://" . ($Array->Domain ? strstr($Array->Domain, ".") ? $Array->Domain : $Array->Domain . "." . $DOMAIN_NAME : $DOMAIN_NAME) . $SUB_FOLDER . (nc_strlen(session_id()) > 0 ? "?" . session_name() . "=" . session_id() . "" : "") . "', '1')"); }
/** * Выйти, если нет права * * @param string тип сущности * @param string действие * @param int id * @param string текст выводимой в плашке * @param int будет ли запись в БД * @return 1 */ public function ExitIfNotAccess($instance_type, $action = "", $id = 0, $text = NETCAT_MODERATION_ERROR_NORIGHTS, $posting = 1) { if ($this->_guest && !$posting) { return 1; } if ($this->_guest && $posting) { nc_print_status(NETCAT_MODERATION_ERROR_NORIGHTGUEST, 'error'); EndHtml(); exit; } if ($this->_director) { return 1; } if ($this->isAccess($instance_type, $action, $id, $posting)) { return 1; } if (!$text) { $text = NETCAT_MODERATION_ERROR_NORIGHTS; } // Права нет - на выход nc_print_status($text, 'error'); EndHtml(); exit; return 1; }
function UpdateOneClassificator_modal($ClassificatorID, $IdInClassificator) { global $UI_CONFIG, $perm; $nc_core = nc_Core::get_object(); $db = $nc_core->db; $IdInClassificator = +$IdInClassificator; $TableName = $db->escape(GetTableNameByID($ClassificatorID)); $Name = GetClassificatorNameByID($ClassificatorID); $isSystem = IsSystemClassificator($ClassificatorID); if ($isSystem) { if (!$perm->isDirectAccessClassificator(NC_PERM_ACTION_VIEW, $ClassificatorID)) { nc_print_status($NO_RIGHTS_MESSAGE, 'error'); EndHtml(); exit; } $edit_element = $perm->isDirectAccessClassificator(NC_PERM_ACTION_EDIT, $ClassificatorID); } else { $edit_element = $perm->isAccess(NC_PERM_CLASSIFICATOR, NC_PERM_ACTION_EDIT, $ClassificatorID); } echo nc_get_simple_modal_header($Name); echo "<form method='post' id='adminForm' class='nc-form' action='classificator.php'>"; $SQL = "select `" . $TableName . "_Name`,\n `Value`\n from `Classificator_" . $TableName . "`\n where `" . $TableName . "_ID` = '" . $IdInClassificator . "'"; $Array = $db->get_row($SQL, ARRAY_N); if (!$edit_element) { print "" . CONTENT_CLASSIFICATORS_ELEMENT_NAME . ": " . $Array; return; } echo "\n <div>" . CONTENT_CLASSIFICATORS_ELEMENT_NAME . ":</div>\n " . "\n <div>" . nc_admin_input_simple('NameInClassificator', $Array[0], 0, 'width: 30%;', "maxlength='256'") . "</div>\n <div>" . nc_admin_textarea_simple('ValueInClassificator', $Array[1], "\n <div>" . CONTENT_CLASSIFICATORS_ELEMENT_VALUE . ":</div>\n ", 7, 0, "style='width: 30%;'", 'soft') . "\n </div>\n\n <input type='hidden' name='phase' value='11'>\n <input type='hidden' name='ClassificatorID' value='" . $ClassificatorID . "'>\n <input type='hidden' name='IdInClassificator' value='" . $IdInClassificator . "'>\n " . $nc_core->token->get_input() . "\n </form>\n <script>prepare_message_form();</script>"; ?> </div> <div class='nc_admin_form_buttons'> <button type='button' class='nc_admin_metro_button nc-btn nc--blue' disable><?php echo NETCAT_REMIND_SAVE_SAVE; ?> </button> <button type='button' class='nc_admin_metro_button_cancel nc-btn nc--red nc--bordered nc--right'><?php echo CONTROL_BUTTON_CANCEL; ?> </button> </div> <style> a { color: #1a87c2; } a:hover { text-decoration: none; } a img { border: none; } p { margin: 0px; padding: 0px 0px 18px 0px; } h2 { font-size: 20px; font-family: 'Segoe UI', SegoeWP, Arial; color: #333333; font-weight: normal; margin: 0px; padding: 20px 0px 10px 0px; line-height: 20px; } form { margin: 0px; padding: 0px; } input { outline: none; } .clear { margin: 0px; padding: 0px; font-size: 0px; line-height: 0px; height: 1px; clear: both; float: none; } select, input, textarea { border: 1px solid #dddddd; } :focus { outline: none; } .input { outline: none; border: 1px solid #dddddd; } </style> <?php }