Как отключить скрипты, выводящие Новости с Simple Machines...

Автор 0daliska, 27 сентября 2009, 04:29:57

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

0daliska

Собственно сабж... Странно, что не было подобных вопросов на форуме... Или это у меня руки корявые или ключевые слова не такие подбираю... В общем, проблемка в следующем:
Гуру, подскажите, пожалуйста, как отключить эти новости об обновлениях... Причем не просто скрыть этот блок - это не особо сложно, а чтобы скрипты обновлений, постоянно ищущих внешку при отключенном внешнем трафике не тормозили работу администратора... Надоело уже в местной сетке сидеть с подключенной внешкой...
Almin.template.php посмотрела, но не все поняла, поскольку с JavaScript не очень дружу... Какие из этих скриптов лучше заэкранировать, чтоб не мучиться, ну и чтоб форум не рухнул...
А то заэкранирую на свою голову лишнего, потом ничего отредактировать из админки не получится...
Очень надеюсь на вашу помощь...
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

BIOHAZARD

в файле Admin.template.php со строки 328 (примерно, при наличиии модов может меняться)

window.onload = function ()
{
smfSetAnnouncements();
smfCurrentVersion();
smfUpdateAvailable();

if (oldonload)
oldonload();
}


заменить на

/*window.onload = function ()
{
smfSetAnnouncements();
smfCurrentVersion();
smfUpdateAvailable();

if (oldonload)
oldonload();
}*/

Мои моды:
  • RedirectPage
  • Counters
  • CustomSearch
  • SypexDumper
   адаптирую темы    1.1.хx<=>2.0задавая вопросы, старайтесь сразу указывать конечную цель, предполагаемый Вами путь не обязательно окажется самым коротким

Любые моды на заказ

0daliska

Спасибо, действительно, новости в окошке на первой страничке Центра Администрирования не отображаются, но все равно скрипты подгружаются... А, следовательно, при отключенной внешке, получаем тормоза :( Ведь то, что мы не включили функцию не означает, что мы не пытаемся загрузить скрипты....
Выход нашла следующий - отключила скрипт заэкранировав строки с  276-393 и с 497 по 499 (тема Default) версия smf 1.1.10
Моды,изменяющие Admin.template.php отсутствуют...
В этом случае загрузки скриптов в Центре администрирования не происходит, все отлично работает... Поюзаю, посмотрю, какой функциональности я себя дополнительно решила этими действиями...
Буду думать как модифицировать и отключить такую же фишку в Темах и Модах...
Или как усовершенствовать, чтобы по моему желанию новости отображались или не отображались. Если удастся реализовать, то обязательно отпишусь...
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only

0daliska

#3
В общем и целом вышла из положения следующим образом:
Скопировала Админ.темплэйт.пхп из дефолтной темы в свою тему...
Нашла в этом шаблоне строчку:
// The below functions include all the scripts needed from the simplemachines.org site. The language and format are passed for internationalization.

И после нее закомментировала:

// if (empty($modSettings['disable_smf_js']))
// echo '
// <script language="JavaScript" type="text/javascript" src="http://www.simplemachines.org/smf/current-version.js?version=', $context['forum_version'], '"></script>
// <script language="JavaScript" type="text/javascript" src="http://www.simplemachines.org/smf/latest-news.js?language=', $context['user']['language'], '&amp;format=', $context['time_format'], '"></script>';

// This sets the announcements and current versions themselves ;).
// echo '
// <script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
// function smfSetAnnouncements()
// {
// if (typeof(window.smfAnnouncements) == "undefined" || typeof(window.smfAnnouncements.length) == "undefined")
// return;

// var str = "<div style=\"margin: 4px; font-size: 0.85em;\">";

// for (var i = 0; i < window.smfAnnouncements.length; i++)
// {
// str += "\n <div style=\"padding-bottom: 2px;\"><a hre" + "f=\"" + window.smfAnnouncements[i].href + "\">" + window.smfAnnouncements[i].subject + "</a> ', $txt[30], ' " + window.smfAnnouncements[i].time + "</div>";
// str += "\n <div style=\"padding-left: 2ex; margin-bottom: 1.5ex; border-top: 1px dashed;\">"
// str += "\n " + window.smfAnnouncements[i].message;
// str += "\n </div>";
// }

// setInnerHTML(document.getElementById("smfAnnouncements"), str + "</div>");
// }

// function smfAnnouncementsFixHeight()
// {
// if (document.getElementById("supportVersionsTable").offsetHeight)
// document.getElementById("smfAnnouncements").style.height = (document.getElementById("supportVersionsTable").offsetHeight - 10) + "px";
// }

// function smfCurrentVersion()
// {
// var smfVer, yourVer;

// if (typeof(window.smfVersion) != "string")
// return;

// smfVer = document.getElementById("smfVersion");
// yourVer = document.getElementById("yourVersion");

// setInnerHTML(smfVer, window.smfVersion);

// var currentVersion = getInnerHTML(yourVer);
// if (currentVersion != window.smfVersion)
// setInnerHTML(yourVer, "<span style=\"color: red;\">" + currentVersion + "</span>");
// }

// Sort out the update window
// function smfUpdateAvailable()
// {
// var updateBody;

// Nothing to declare?
// if (typeof(window.smfUpdatePackage) == "undefined")
// return;

// updateBody = document.getElementById("update_message");

// Are we setting a custom message?
// if (typeof(window.smfUpdateNotice) != "undefined")
// setInnerHTML(updateBody, window.smfUpdateNotice);

// Parse in the package download URL if it exists in the string.
// document.getElementById("update-link").href = "', $scripturl, '?action=pgdownload;auto;package=" + window.smfUpdatePackage + ";sesc=', $context['session_id'], '";

// If we decide to override life into "red" mode, do it.
// if (typeof(window.smfUpdateCritical) != "undefined")
// {
// document.getElementById("update_table").style.backgroundColor = "#aa2222";
// document.getElementById("update_title").style.backgroundColor = "#dd2222";
// document.getElementById("update_title").style.color = "white";
// document.getElementById("update_message").style.backgroundColor = "#eebbbb";
// document.getElementById("update_message").style.color = "black";
// }
// And we can override the title if we really want.
// if (typeof(window.smfUpdateTitle) != "undefined")
// setInnerHTML(document.getElementById("update_title"), window.smfUpdateTitle);

// Finally, make the box visible.
// document.getElementById("update_section").style.display = "";
// }';

// IE 4 won't like it if you try to change the innerHTML before load...
// echo '

// var oldonload;
// if (typeof(window.onload) != "undefined")
// oldonload = window.onload;

// window.onload = function ()
// {
// smfSetAnnouncements();
// smfCurrentVersion();
// smfUpdateAvailable();';

// if ($context['browser']['is_ie'] && !$context['browser']['is_ie4'])
// echo '
// if (typeof(smf_codeFix) != "undefined")
// window.detachEvent("onload", smf_codeFix);
// window.attachEvent("onload",
// function ()
// {
// with (document.all.supportVersionsTable)
// style.height = parentNode.offsetHeight;
// }
// );
// if (typeof(smf_codeFix) != "undefined")
// window.attachEvent("onload", smf_codeFix);';

// echo '

// if (oldonload)
// oldonload();
// }
// ]]></script>';

фигурную скобку }, после этого участка экранировать не надо!!!
Ровно как и стр. 497 по 499 (как было написано в моем предыдущем посте) тоже не экранируем, нет необходимости, поскольку условие, загружающее скрипты, дает "ложь", а следовательно не выполняется.
В целом работает нормально... Зайдя в центр Администрирования, получаю быструю и нормальную работу без внешки, поскольку основные проблемы в тормозах были именно здесь, а работа с регистрацией пользователей и правами доступа, разделами, как Вы сами понимаете, будет тоже проходить именно через эту страничку, поэтому от тормоза надо было избавляться...
С другой стороны,  скрипты заэкранированы не все, а только те, что на главной странице Админки, поэтому если мне надо будет проверить соответствия моей версии форума с текущей, то просто перейду по ссылке "подробно" в блоке "Текущая версия СМФ", предварительно включив внешку, и все прекрасно отобразится...
В управлении темами и модами скрипты оставила подключенными, поскольку в этих разделах каждый день мне делать нечего, а следовательно подключение внешки не принципиально...
В общем, вот мой отчет о том, как отключить скрипт подключения к центру обновлений в центре администрирования для тех, у кого возникают проблемы с загрузкой странички Центра Администрирования при отключенном внешнем интернете...
Уважаемые Гуру, посмотрите, пожалуйста, я нигде не напортачила? Ничего лишнего не зацепила?
Уехала отдыхать. Сейчас без интернета до 1 августа. Приеду - выполню все обещания
® For members of Russian community (simplemachines.ru) only