Скрипт выводит ссылки на 10 последних материалов пользователя в его профиле, из любого модуля: форум, каталог файлов и т.д. Установка:
В HEAD:
Code
<script type="text/javascript">
function initLastEntries( module, id ) {
var url = module == 'forum' ? '/forum/0-0-1-3-$_USER_ID$' : module == 'blog' ? '/blog/0-0-0-0-17-$_USER_ID$' : '/' + module + '/0-0-$_USER_ID$-0-17';
var req = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXOjvect( 'Microsoft.XMLHTTP' );
req.open( 'GET', url, true );
req.onreadystatechange = function () {
if ( req.readyState === 4 ) {
if ( req.status === 200 ) {
var node = document.createElement( 'DIV' );
node.innerHTML = req.responseText;
var cnt = document.querySelectorAll ? node.querySelectorAll( module == 'forum' ? 'A.threadLink, A.threadPinnedLink' : 'A.eTitle' ) : node.getElementsByTagName( 'A' ),
len = cnt.length,
counter = 0,
html = '';
for ( var i = 0; i < len; i++ ) {
if ( module == 'forum' ? cnt[i].className == 'threadLink' || cnt[i].className == 'threadPinnedLink' : cnt[i].className == 'eTitle' ) {
if( counter < 10 ) {
html += '<a href="' + cnt[i].href + '" target="_blank">' + cnt[i].innerHTML + '</a><br />',
counter++;
} else {
break;
}
}
}
document.getElementById( id ).innerHTML = html;
}
}
};
req.send( null );
};
</script>
Использовать так:
Code
initLastEntries( 'forum', 'lastnt' );
forum — название модуля
lastnt — ID элемента, куда подгружать данные
Пример использования:
Code
<div id="lastnt">
Загрузка…
</div>
<script type="text/javascript">
initLastEntries( 'forum', 'lastnt' );
</script>