• Автор:

    Flesha
  • Добавлено:

    май 01, 2013
  • Комментариев:

    3
  • Просмотров:

    2799

AJAX подгрузка страниц на DLE

AJAX подгрузка страниц на DLE

Данная модификация "LiveLoad" разработана Клубом Админов и не является копией чужих работ.
Еще одна модификация хака подгрузки страниц на Ajax, разработанная Клубом Админов.
Данная модификация бесплатная. Установка 5 минут.

Установка:

1. В файле /engine/init.php найти:
$Timer = new microTimer ( );
$Timer->start ();


Добавить выше:
/*LiveLoad Admin-Club.ru*/
define('LIVELOAD_ID', md5($_SERVER['REQUEST_URI'].'countLiveLoad'));
if(isset($_SESSION['LL']) && @count($_SESSION['LL'])>7) {
$_SESSION['LL'] = array ();
}
if(isset($_POST['liveload']) && $_POST['liveload'] == 1) {
if ($_SERVER['HTTP_X_REQUESTED_WITH'] != "XMLHttpRequest"){
@header ("HTTP/1.0 403 Forbidden");
die("We love you too :]");
}
@header( "Content-type: text/html; charset=windows-1251" ); // если у вас кодировка UTF, закомментируйте эту строку
//@header( "Content-type: text/html; charset=utf-8" ); // если у вас кодировка windows, закомментируйте эту строку
if(!$_SESSION['LL'][LIVELOAD_ID]) {
$_SESSION['LL'][LIVELOAD_ID] = 1;
}else{
$_SESSION['LL'][LIVELOAD_ID] ++;
}
if(!$_GET['cstart']){
$_GET['cstart'] = $_REQUEST['cstart'] = 1;
}
$_GET['cstart'] = $_REQUEST['cstart'] = $_REQUEST['cstart'] + $_SESSION['LL'][LIVELOAD_ID];
}elseif($_SESSION['LL'][LIVELOAD_ID]){
$_SESSION['LL'][LIVELOAD_ID] = 0;
}
/*end of code LiveLoad*/


2. В файле /engine/modules/show.short.php найти:
    $tpl->clear();
$db->free( $sql_result );


Вставить ниже:
/*LiveLoad Admin-Club.ru*/
if(isset($_POST['liveload']) && $_POST['liveload'] == 1) {
if($news_found){
$tpl->result['content'] = str_replace('{THEME}', $config['http_home_url'].'templates/'.$config['skin'], $tpl->result['content']);
print $tpl->result['content'];
}else{
print "no";
$_SESSION['LL'][LIVELOAD_ID] = 0;
}
exit ();
}
/*end of code LiveLoad*/


3. В файле шаблона main.tpl находим:
</head>



Вставляем выше:
[aviable=main|cat]
<script>
/*LiveLoad Admin-club.ru*/
var stopMe = false;
$(document).ready(function (){
$(this).scroll(function(){
if(!stopMe && $('#live-load-news').offset().top+$('#live-load-news').height()-$(window).scrollTop() < $(window).height() ){
LiveLoad();
}
})
});
var CountAjax = 0;
function LiveLoad() {
if(CountAjax == 0) {
CountAjax++;
$('#live-load-active').show(200);
$.post(window.location, {liveload:1}, function(data){
$('#live-load-active').hide(200);
if(data == "no" || !data || data == ""){
stopMe = true;
$(document).unbind('scroll');
}else{
$("#live-load-news").append(data);
CountAjax = 0;
$(document).scroll();
}

});
}
}
/*end of code LiveLoad*/
</script>
[/aviable]


Ищем далее:
{content}


Добавляем ниже:
[aviable=main|cat]
<div id="live-load-news"></div>
<div id="live-load-active" style="display:none; text-align:center">Загрузка новостей...</div>
[/aviable]


4. Если вы хотите скрыть ссылки навигации, то в файле шаблона navigation.tpl следует весь код "обнять" так:
[not-aviable=main|cat]
здесь код
[/not-aviable]


Версия DLE: 9.0-9.8
Автор: RedRat
Сайт автора: admin-club.ru
Вернуться

Комментарии:


  1. Aram Mashuryan → 13 марта 2016 14:29
    Что то ничего не изменилось
    1. starter80 → 13 марта 2016 17:29
      Версия DLE: 9.0-9.8
      Может в этом причина......
  2. starter80 → 13 марта 2016 17:30
    Хотелось бы демо посмотреть и узнать актуальность для 11 версии DLE
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.