/* ; Источник: http://pl.wikipedia.org/wiki/MediaWiki:Wikibugs.js ; Адаптация под русский: [[User:Александр Сигачёв]] ; ; Идея, текст на польском: [[:pl:User:Dodek]], [[:pl:User:Adziura]] ; Реализация: [[:pl:User:Nux]], [[:pl:User:Saper]], [[:pl:User:Beau]] */ var wb$description = "Пожалуйста, опишите ошибку как можно точнее. По возможности, укажите ваш источник информации."; var wb$badPages = new Array( "Википедия:Сообщения об ошибках", "Заглавная страница" ); addOnloadHook(function() { var el = document.getElementById('n-bug_in_article'); if (el) { el.getElementsByTagName('a')[0].onclick= wb$popWikibug; } }); function wb$popWikibug() { var link_wiki = window.wgArticlePath.replace(/\$1/, 'вики'); var link_tocreate = window.wgArticlePath.replace(/\$1/, 'Википедия:К_созданию'); var link_bebold = window.wgArticlePath.replace(/\$1/, 'Википедия:Правьте_смело'); var link_buglist = window.wgArticlePath.replace(/\$1/, 'Википедия:Сообщения_об_ошибках'); wb$popBugBoth("Википедия:Сообщения об ошибках", '\

Пожалуйста, не\u00A0сообщайте об\u00A0ошибках в\u00A0стороннем программном обеспечении и на\u00A0сайтах, не\u00A0связанных с\u00A0Википедией (ошибки вашей операционной системы, сайтов «В\u00A0Контакте» или «Одноклассники.ru» и подобные будут проигнорированы).

\

Если вы не\u00A0нашли какой-либо информации в\u00A0Википедии\u00A0— это не\u00A0ошибка, запросы на\u00A0новые статьи вы можете оставить на\u00A0странице «К\u00A0созданию».

\

Если вы заметили ошибку в\u00A0Википедии, пожалуйста, исправьте её самостоятельно, используемая на\u00A0этом сайте технология вики позволяет это сделать. Не\u00A0смущайтесь, одно из\u00A0правил Википедии гласит: «Правьте смело»! Если по\u00A0каким-либо причинам вы не\u00A0можете исправить ошибку самостоятельно, сообщите о\u00A0ней с\u00A0помощью данной формы.

Если ошибка уже исправлена\u00A0— не\u00A0сообщайте о\u00A0ней.

Не\u00A0оставляйте свою контактную информацию (телефон и/или электронный адрес), ответ на\u00A0сообщение будет дан только на\u00A0странице с\u00A0сообщениями и нигде больше.

\ \ '); return false; } function wb$getEditToken(page){ var objhttp=(window.XMLHttpRequest) ? new XMLHttpRequest(): new ActiveXObject('Microsoft.XMLHTTP'); if(!objhttp){return}; objhttp.onreadystatechange=function() { if (objhttp.readyState == 4) { if (objhttp.status == 200) { var r_sti = /value="(\d+)" name=["']wpStarttime["']/; var r_eti = /value="(\d+)" name=["']wpEdittime["']/; var r_etk = /value="(.*?)" name=["']wpEditToken["']/; var r_asm = /name="wpAutoSummary" type="hidden" value="(.*?)"/; sti = r_sti.exec(objhttp.responseText); eri = r_eti.exec(objhttp.responseText); etk = r_etk.exec(objhttp.responseText); asm = r_asm.exec(objhttp.responseText); document.getElementById('Starttime').value=sti[1]; document.getElementById('Edittime').value=eri[1]; document.getElementById('EditToken').value=etk[1]; document.getElementById('AutoSummary').value=asm[1]; } else alert(objhttp.status); } }; objhttp.open("GET", wgServer + wgScript + "?title=" + encodeURIComponent(page) + "&action=edit"); objhttp.send(""); } function wb$isValidPageName(name) { if (name == "") return false; if (name.substr(0, 10) == "Служебная:") return false; name = name.replace(/_/g, " "); for (var i = 0; i < wb$badPages.length; i++) if (name == wb$badPages[i]) return false; return true; } function wb$checkForm(form) { var page = form.wpSummary.value; var content = form.wpTextbox1.value; if (page == wgPageName && wb$isValidPageName(wgPageName)) { if (wgNamespaceNumber == 6) { page = "[[:Файл:" + wgTitle + "|" + wgTitle + "]]"; content = "[[Файл:" + wgTitle + "|thumb|left|100px]]\n* " + content + "\r\n{{clear}}"; } else { page = page.replace(/_/g, " "); page = page.replace(/^(Категория:|Файл:|\/)/, ":$1"); page = "[[" + page + "]]"; } } else { page = page.replace(/_/g, " "); page = page.replace(/[\[\]\|]/g, ""); page = page.replace(/^\s+/g, ""); page = page.replace(/\s+$/g, ""); if (! wb$isValidPageName(page) ) { alert("Введите имя страницы."); if ( wb$isValidPageName(wgPageName) ) { form.wpSummary.value = wgPageName; } else { form.wpSummary.value = ""; form.wpSummary.focus(); } return false; } page = '[[:' + page + ']]'; } if (content == "" || content == wb$description || content.length < 20 || !content.match(' ')) { alert("Описание ошибки слишком коротко. Пожалуйста, расширьте его."); form.wpTextbox1.focus(); return false; } if (wgUserName != null) content += '\r\n\r\nАвтор сообщения: ~~'+'~~'; else content += '\r\n\r\nАвтор сообщения: '+form.author.value+' ~~'+'~~'; form.submit.disabled = 'disabled'; form.wpTextbox1.value = content; form.wpSummary.value = page; return true; } function wb$goToEditPage() { var edit_el = document.getElementById('ca-edit'); var edit_href = window.wgArticlePath.replace(/\$1/, 'Википедия:Сообщения_об_ошибках'); if (edit_el) { edit_href = edit_el.getElementsByTagName('a')[0].href; } window.location = edit_href; } function wb$popBugBoth(action_page, infoHTML) { var glob = document.body; // // przysłaniacz var nel = document.createElement('div'); nel.id='specpop-globhidden' nel.style.cssText = 'background:white;filter:alpha(opacity=75);opacity:0.75;position:absolute;left:0px;top:0px;z-index:2000'; nel.style.width = document.documentElement.scrollWidth+'px'; nel.style.height= document.documentElement.scrollHeight+'px'; glob.appendChild(nel); // // przesunięcie okna window.scroll(0, 150); // // informacja var edit_el = document.getElementById('ca-edit'); if (edit_el) { var can_edit = true; } else var can_edit = false; nel = document.createElement('div'); nel.id='specpop-info' nel.style.cssText = 'font-size:13px;background:white;padding:21px 30px;border:1px solid black;position:absolute;width:500px;min-height:300px;top:200px;z-index:2002;'; if (nel.style.maxHeight==undefined) nel.style.height='300px'; // IE blah... var tmp = Math.floor(glob.clientWidth/2)-300; if (tmp<5) tmp = 5; nel.style.left = tmp + 'px'; nel.innerHTML = infoHTML; if (window.wgUserName == null) { nel.innerHTML = nel.innerHTML + '

Внимание. Ваш IP-адрес будет записан в журнал изменений страницы.

'; } nel.innerHTML = nel.innerHTML + '

\ '+(can_edit ? '' : '')+ '\    \ \

'; glob.appendChild(nel); var action_url = window.wgServer + window.wgScript + "?title=" +encodeURIComponent(action_page) + "&action=submit"; // // formularz nel = document.createElement('div'); nel.id='specpop-form' nel.style.cssText = 'background:white;padding:5px 10px;border:1px solid black;position:absolute;width:330px;min-height:300px;top:200px;z-index:2001'; if (nel.style.maxHeight==undefined) nel.style.height='300px'; // IE blah... nel.style.left = (Math.floor(glob.clientWidth/2)-165)+'px'; //nel.style.top = (this.offsetTop-100)+'px'; nel.innerHTML ='
\ Название страницы:

\ \ \ \ \ \ \ \ Текст сообщения:

\ Подпись:
\   \ \
'; glob.appendChild(nel); if (wb$isValidPageName(wgPageName)) document.getElementById('wpSummary').value = wgPageName; if (wgUserName != null) { var author = document.getElementById("wikibug-input-author"); author.value = '~~'+'~~'; author.disabled = 'disabled'; } wb$getEditToken(action_page); } function wb$elementsRemove() { var el; for (var i=arguments.length-1; i>=0; i--) { el = document.getElementById(arguments[i]); if (el) el.parentNode.removeChild(el); } }