varnpp_http;varnpp_enabled;varnpp_num_pages;varnpp_refresh;$(npp_init);/* инициализация */functionnpp_init(){// разрешить пользовательские настройкиif(npp_enabled==null){npp_enabled=false;}if(npp_num_pages==null){npp_num_pages=10;}if(npp_refresh==null){npp_refresh=5;}// ограничения на запросыif(npp_num_pages>50){npp_num_pages=50;}if(npp_num_pages<1){npp_num_pages=1;}if(npp_refresh<2){npp_refresh=2;}// читаем cookieif(document.cookie.length>0){varc_start=document.cookie.indexOf("npp_show_box=");if(c_start!=-1){c_start=c_start+13;varc_end=document.cookie.indexOf(";",c_start);if(c_end==-1){c_end=document.cookie.length;}if(document.cookie.substring(c_start,c_end)=="yes"){npp_enabled=true;}else{npp_enabled=false;}}}if(npp_enabled==true){npp_ajax_request();}else{npp_draw_disabled_box();}}/* init ajax */functionnpp_create_request(){try{npp_http=newXMLHttpRequest();}catch(e){try{npp_http=newActiveXObject("Msxml2.XMLHTTP");}catch(e){try{npp_http=newActiveXObject("Microsoft.XMLHTTP");}catch(e){alert("Ваш браузер не поддерживает AJAX!");returnfalse;}}}npp_http.onreadystatechange=function(){if(npp_http.readyState==4)npp_ajax_response();}returntrue;}/* make a request */functionnpp_ajax_request(){// check we are enabledif(npp_enabled==false)return;// firstly, inform the uservarcur_box=document.getElementById('p-newpages');if(cur_box!=null){cur_box.firstChild.firstChild.data='новые статьи...';}if(npp_create_request()==false){if(cur_box!=null){cur_box.firstChild.firstChild.data='новые статьи (ошибка)';}else{alert("Используйте браузер Mozilla Firefox!");}}// Then make the requestnpp_http.open("GET","/w/api.php?action=query&format=xml&list=recentchanges&rcshow=!bot&rctype=new&rcnamespace=0&rclimit="+npp_num_pages,true);npp_http.send(null);}/* при получении ответа */functionnpp_ajax_response(){varitems=npp_http.responseXML.getElementsByTagName('rc');// create the div that holds all the newpage linksvarlink_div=document.createElement('div');link_div.className='pBody';varlist=document.createElement('ul');link_div.appendChild(list);// populate the list with 10 links.for(vari=0;i<items.length;i++){varitem_name=items[i].getAttribute('title');varrcid=items[i].getAttribute('rcid');varitem_url='http://ru.wikipedia.org/w/index.php?title='+item_name+'&rcid='+rcid+'&redirect=no';a=document.createElement('a');a.setAttribute('href',item_url);a.appendChild(document.createTextNode(item_name));varli=document.createElement('li');li.appendChild(a);list.appendChild(li);}// создаём слойvardiv=document.createElement('div');div.setAttribute('id','p-newpages');div.className='portlet';varheading=document.createElement('h5');heading.appendChild(document.createTextNode('новые статьи'));div.appendChild(heading);div.appendChild(link_div);// отключить ссылкуvarp=document.createElement('p');p.style.fontSize='x-small';p.style.margin='0px';p.style.textAlign='right';p.style.cursor='pointer';a=document.createElement('a');a.appendChild(document.createTextNode('отключить'));a.onclick=npp_disable_box;p.appendChild(a);link_div.appendChild(p);// замена слояvarold_div=document.getElementById('p-newpages');varside_col=document.getElementById('column-one');if(old_div!=null){side_col.replaceChild(div,old_div);}else{varnode=document.getElementById('p-search');if(node&&side_col){side_col.insertBefore(div,node);}}// автообновлениеsetTimeout("npp_ajax_request()",npp_refresh*1000);}functionnpp_disable_box(){npp_enabled=false;npp_draw_disabled_box();document.cookie="npp_show_box=no; path=/";}functionnpp_enable_box(){npp_enabled=true;document.cookie="npp_show_box=yes; path=/";npp_ajax_request();}functionnpp_draw_disabled_box(){// Создание слояvarlink_div=document.createElement('div');link_div.className='pBody';vardiv=document.createElement('div');div.setAttribute('id','p-newpages');div.className='portlet';varheading=document.createElement('h5');heading.appendChild(document.createTextNode('новые статьи'));div.appendChild(heading);div.appendChild(link_div);// активация ссылкиvarp=document.createElement('p');p.style.fontSize='x-small';p.style.margin='0px';p.style.cursor='pointer';vara=document.createElement('a');a.appendChild(document.createTextNode('включить'));a.onclick=npp_enable_box;p.appendChild(a);link_div.appendChild(p);// замена слояvarold_div=document.getElementById('p-newpages');varside_col=document.getElementById('column-one');if(old_div!=null){side_col.replaceChild(div,old_div);}else{varnode=document.getElementById('p-search');if(node&&side_col){side_col.insertBefore(div,node);}}}