VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
//Make sure the system knows where we are: // ######################################################################## // ######################### START MAIN SCRIPT ############################ // ######################################################################## $sect_js_varname = 'filter_section'; $current_user = new vB_Legacy_CurrentUser(); $per_page = vBCms_ContentManager::getPerPage($current_user);
$styles = false; $layouts = false;
//It's possible we could have a post "do" and a get "do"that don't match. Let's make sure // we get the right one. if (isset($_POST['do'])) { $vbulletin->input->clean_array_gpc('p', array( 'do' => TYPE_STR, 'mydo' => TYPE_STR, )); } else { $vbulletin->input->clean_array_gpc('r', array( 'do' => TYPE_STR, )); }
switch($vbulletin->GPC['do']) { case 'list_nodes': //This is called from ajax.php. It returns a list of // sections and leaves for a display panel. Because //we're just returning xml for ajax we don't want any headers, etc. require_once DIR . '/includes/functions_misc.php'; $vbulletin->input->clean_array_gpc('r', array( 'nodeid' => TYPE_UINT, 'level' => TYPE_UINT, ));
if ($vbulletin->GPC_exists['nodeid']) { $xml = new vB_AJAX_XML_Builder($vbulletin, 'text/xml'); $xml->add_group('root');
case 'find_leaves': //This is also called from ajax.php. It returns a list of // sections and leaves for a display panel, with only leaves clickable. Because //we're just returning xml for ajax we don't want any headers, etc. require_once DIR . '/includes/functions_misc.php';
$xml = new vB_AJAX_XML_Builder($vbulletin, 'text/xml'); $xml->add_group('root');
case 'list_sections': //This is called from ajax.php. It returns a list of // sub-categories of the current node. Because //we're just returning xml for ajax we don't want any headers, etc. require_once DIR . '/includes/functions_misc.php'; $vbulletin->input->clean_array_gpc('r', array( 'sectionid' => TYPE_UINT, 'level' => TYPE_UINT, ));
$xml = new vB_AJAX_XML_Builder($vbulletin, 'text/xml'); $xml->add_group('root');
case 'list_allsection': //This is called from ajax.php. It returns a list of // sub-categories of the current node. Because //we're just returning xml for ajax we don't want any headers, etc. require_once DIR . '/includes/functions_misc.php'; $vbulletin->input->clean_array_gpc('r', array( 'order' => TYPE_UINT, ));
case 'list_categories' : //This is called from ajax with a sectionid to // list the categories in that section require_once DIR . '/includes/functions_misc.php'; $vbulletin->input->clean_array_gpc('r', array( 'sectionid' => TYPE_UINT, ));
$xml = new vB_AJAX_XML_Builder($vbulletin, 'text/xml'); $xml->add_group('root');
case 'find_categories': //This is called to list categories for the //article edit page. It creates a scrolling list. You can give it a string, // or a category, or a section. //we're just returning xml for ajax we don't want any headers, etc. require_once DIR . '/includes/functions_misc.php'; $vbulletin->input->clean_array_gpc('r', array( 'order' => TYPE_UINT, ));
$xml = new vB_AJAX_XML_Builder($vbulletin, 'text/xml'); $xml->add_group('root'); $html = vBCms_ContentManager::getCategorySelector();
if (!empty($html)) { $xml->add_tag('html', $html); $xml->close_group(); $xml->print_xml(); } break;
case 'clear_cache': print_cp_header($vbphrase['vbcms']); if (method_exists(vB_Cache::instance(), 'clean')) { vB_Cache::instance()->clean(false); print_cp_message($vbphrase['cache_cleared']); } else { print_cp_message($vbphrase['no_cache_clean']); } print_cp_footer(); break;
case 'perpage': //Here are are updating the number of rows per page // This needs to be saved as a user preference. Then we will display // results again, which we will do because we don't have a "break" $current_user = new vB_Legacy_CurrentUser(); $vbulletin->input->clean_array_gpc('r', array( 'perpage' => TYPE_UINT, 'sentfrom' => TYPE_STR, ));
// print_cp_header needs to come before calling vBCms_ContentManager::savePerPage // which starts printing a table, creating whitespace before the CP header print_cp_header($vbphrase['vbcms']); $per_page = vBCms_ContentManager::savePerPage($current_user);
switch($vbulletin->GPC['sentfrom']) { case 'section': $redirect_do = 'section'; break; case 'category': $redirect_do = 'category'; break; case 'nodes': default: $redirect_do = 'list'; } print_cp_message($vbphrase['saved_perpage'], 'cms_content_admin.php?' . $vbulletin->session->vars['sessionurl'] . "do=$redirect_do"); print_cp_footer(); break;
case 'filter_category': case 'category': //Here we are viewing the category browser. $vbulletin->input->clean_array_gpc('r', array( 'nodeid' => TYPE_INT, 'title_filter' => TYPE_STR, 'categoryid' => TYPE_INT, 'sectionid' => TYPE_INT, 'page' => TYPE_INT, 'level' => TYPE_UINT, )); print_cp_header($vbphrase['category_manager']);
Вот из этого(это далеко не всё) оказывается нужна только последняя строка.
ЗЫ: как переименовывать спойлер? Что бы не оффтоп писалось, а нечто иное. Проверил "стандартное" : [tagname=mytext]spoiler text[/tagname] не сработало.