text:
User:49TL/monobook/old.js

/* */ //////////////////////////////////////////////////////////////////////////// // User:FireFox's monobook. // Most of it copied from some place or other and where it is, I've tried to give a source. // If you want to copy any of it, I'd be flattered. //////////////////////////////////////////////////////////////////////////// //

/************* afd Helper ************/ // see User:Jnothman/afd_helper

document.write(' ');

afdh_signature = ''+'~'; afdh_summaryprompt = true; afdh_useicons = false;

afdh_shortcuts = Array; afdh_shortcuts['d'] = 'Delete'; afdh_shortcuts['k'] = 'Keep'; afdh_shortcuts['m'] = 'Merge'; afdh_shortcuts['mv'] = 'Move'; afdh_shortcuts['rd'] = 'Redirect'; afdh_shortcuts['rw'] = 'Rewrite'; afdh_shortcuts['t'] = 'Transwiki'; afdh_shortcuts['wd'] = 'Weak delete'; afdh_shortcuts['sd'] = 'Strong delete'; afdh_shortcuts['sp'] = 'Speedy delete'; afdh_shortcuts['sk'] = 'Strong keep'; afdh_shortcuts['wk'] = 'Weak keep'; afdh_shortcuts['c'] = 'Comment';

afdh_icons = Array; afdh_icons['d'] = afdh_icons['wd'] = afdh_icons['sd'] = afdh_icons['sp'] = 'Symbol delete vote.svg'; afdh_icons['k'] = afdh_icons['sk'] = afdh_icons['wk'] = 'Symbol keep vote.svg'; afdh_icons['m'] = 'Symbol merge vote.svg'; afdh_icons['c'] = 'Symbol comment vote.svg';

afdh_commscs = Array; afdh_commscs['pn'] = 'per nom.';

function afd_helper { if (auto_mod) return;

var anchors = new Array; {   var oldanchors = document.getElementById('bodyContent').getElementsByTagName('a'); for (var i=0; i < oldanchors.length; i++) anchors[i] = oldanchors[i]; }   var url_re = /\?title=Wikipedia:Articles_for_deletion\/([^&]+)&action=edit&/; var url, matches; for (var i=0; i < anchors.length; i++) { if (!(matches = anchors[i].href.match(url_re))        || (matches[1].substr(0, 4) == 'Log/')) continue; var na = document.createElement('a'); na.href = "javascript:afd_vote('"+escape(anchors[i].href)+"')"; na.title = "Vote on deletion of "+unescape(matches[1]); var inlink = document.createElement('sup'); inlink.appendChild(document.createTextNode('vote')); na.appendChild(inlink); anchors[i].parentNode.insertBefore(na, anchors[i].nextSibling); }

if (am_get_title.indexOf(':') == -1) am_add_li('tb', 'javascript:afd_nominate', 'Nominate AFD', '', 'Nominate this article for deletion'); }

function afd_vote(edit_link) { var shortcuts_list = ''; for (var key in afdh_shortcuts) shortcuts_list += key + ': ' + afdh_shortcuts[key] + '; '; var vote = window.prompt("Enter your vote.  (Shortcuts available are: "+shortcuts_list+")"); if (!vote) return; var icon_link = ''; if (afdh_useicons && afdh_icons[vote.toLowerCase]) icon_link = ' '; if (afdh_shortcuts[vote.toLowerCase]) vote = afdh_shortcuts[vote.toLowerCase];

shortcuts_list = ''; for (var key in afdh_commscs) shortcuts_list += key + ': ' + afdh_commscs[key] + '; '; var comment = window.prompt("Enter your comment. (Shortcuts available are: "+shortcuts_list+")"); if (typeof comment != 'string') return; if (afdh_commscs[comment.toLowerCase]) comment = afdh_commscs[comment.toLowerCase];

var summary = vote; if (afdh_summaryprompt) if (!(summary = window.prompt("Enter the edit summary:", summary))) summary = vote; var url = edit_link + '&amaddafter='+escape("* "+icon_link+vote+" "+comment+" "+afdh_signature) + '&amsummary='+escape(summary);

if (window.location.href.indexOf("/Log/") == -1) window.location.href = url; else window.open(url, "afd_helper_vote"); }

function afd_nominate { var title = am_get_title; var log_date = window.prompt("This should be the date of the latest AFD log. Change it if necessary.", am_guess_date); if (!log_date) return; var reason = window.prompt("Please justify your AFD nomination of "+title+":"); if (!reason) return; window.open(am_make_url(title, , , 'nomination for deletion'), 'afdhn1'); window.open(am_make_url('Wikipedia:Articles for deletion/Log/'+log_date, , , 'Nominating '+title+' for deletion'), 'afdhn3'); window.location.href = am_make_url('Wikipedia:Articles for deletion/'+title, , , 'nominated for deletion'); }

$(afd_helper);

$(function{ var x; if (x=document.getElementById('wpAnonOnly')) {x.checked=true;} });

//Change my traffic light status page function edit_status(status) { if (status == 'in') statnum = '3'; else if (status == 'out') statnum = '1'; else statnum = '4'; document.editform.wpTextbox1.value = ' '; document.editform.wpSummary.value = status; }

//From ABCD function hideafd{ var divs = document.getElementsByTagName("div"); for(var x = 0; x < divs.length; ++x) if(divs[x].className.indexOf("vfd") != -1 || divs[x].className.indexOf("afd") != -1) divs[x].style.display = "none"; document.getElementById('footer').style.display = 'none'; }

function showafd{ var divs = document.getElementsByTagName("div"); for(var x = 0; x < divs.length; ++x) if(divs[x].className.indexOf("vfd") != -1 || divs[x].className.indexOf("afd") != -1) divs[x].style.display = ""; document.getElementById('footer').style.display = ''; }

function addlilink(tabs, url, name, id){ var na = document.createElement('a'); na.href = url; na.id = id; na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); li.appendChild(na); tabs.appendChild(li); return li; }

//If you are not editing a page, a tab will appear allowing you to edit the 0th section of a page (the top area usually used as an introduction.

function addEditSection0 { ta['ca-edit-0'] = ['', 'Edit the zeroth section of this page']; if (!document.getElementById) return; x = document.getElementById('ca-edit'); if(!x) return; y = document.createElement('LI'); y.id = 'ca-edit-0'; if (x.className == 'selected') { if (/&action=edit&section=0$/.test(window.location.href)) { x.className = 'istalk'; y.className = 'selected'; } else { x.className = 'selected istalk'; } } else if (x.className == 'selected istalk') { if (/&action=edit&section=0$/.test(window.location.href)) { x.className = 'istalk'; y.className = 'selected istalk'; } else { y.className = 'istalk'; } } else { y.className = x.className; x.className = 'istalk'; } z = document.createElement('A'); if (x.children) { z.href = x.children[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling); } else { z.href = x.childNodes[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling); } }

if (document.title.indexOf("Editing ") == -1) { if (window.addEventListener) window.addEventListener("load", addEditSection0, false); else if (window.attachEvent) window.attachEvent("onload", addEditSection0); }

function getPname { z=document.getElementById("content").childNodes; for (var n=0;n<z.length;n++) { if (z[n].className=="firstHeading") return z[n].textContent; }; }

//

//Hybirdization of ABCD afd closer

function closeafd(bold, notbold){ var form = document.editform; var txt = form.wpTextbox1; txt.value = " " + bold + "" + notbold + ". \n" + txt.value + "\n\n"; form.wpSummary.value = "close discussion: " + bold + notbold; form.wpWatchthis.checked = false; }

function afdresult{ var res = prompt("Result?"); var day = prompt("On which day was it nominated?"); if(!res) return; var form = document.editform; form.wpSummary.value = 'AFD result'; var txt = form.wpTextbox1; txt.value = ' \n' + txt.value; txt.focus; }

function afddelete{ document.forms.deleteconfirm.wpReason.value = 'Wikipedia( talk)?):/, ) + ; }

function replace{ var s = prompt("Search regexp?"); if(s){ var r = prompt("Replace regexp?"); if(!r && r != '') return; var txt = document.editform.wpTextbox1; txt.value = txt.value.replace(new RegExp(s, "g"), r); } }

// appends msg to the currently-editted page, sets the summary to summ, // and marks or unmarks the Watch this page checkbox according to watch. function edit_summary_watch(msg, summ, watch) { var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += msg; f.wpSummary.value = summ; }

function edit_summary_watch2(msg, summ, watch) { var f = document.editform, t = f.wpTextbox1; t.value += msg; f.wpSummary.value = summ; }

function inoutaround(msg) { var f = document.editform, t = f.wpTextbox1; t.value = ""; f.wpSummary.value = "changing status"; }

function testn(number) { var page = prompt("Which message do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += " ~" + "~" + "~"; t.value += '\n'; f.wpSummary.value = "warning"; }

function testtwo(number) { var page = prompt("Which message do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += " ~" + "~" + "~"; t.value += '\n'; f.wpSummary.value = ""; }

function testz(number) { var page = prompt("Which message do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += "==  ==\n ~" + "~" + "~"; t.value += '\n'; f.wpSummary.value = "Message"; }

function blockuser(msg, other) { var f = document.getElementsByName('wpBlockReason')[0]; f.value = msg; var j = document.getElementsByName('wpBlockOther')[0]; j.value = other; }

function unblockuser(msg, other) { var f = document.getElementsByName('wpUnblockReason')[0]; f.value = msg; }

function deleteg(number) { var page = prompt("Which criteria are you deleting under? \n 1: Nonsense \n 2: Test pages \n 3: Vandalism \n 4: Recreation of deleted material \n 7: Author request") var f = document.getElementsByName('wpReason')[0]; f.value = "CSD" + " G" + page + ""; }

function deletea(number) { var page = prompt("Which criteria are you deleting under? \n 1: No context \n 2: Foreign language \n 3: No content, link only, spam \n 6: Attack pages \n 7: Non notable \n 8: Copyvio") var f = document.getElementsByName('wpReason')[0]; f.value = "CSD" + " A" + page + ""; }

function deleter(number) { var page = prompt("Which criteria are you deleting under? \n 1: Redirect to non existant page \n 2: Redirect from main namespace to user namespace \n 3: Typo") var f = document.getElementsByName('wpReason')[0]; f.value = "CSD" + " R" + page + ""; }

function deletei(number) { var page = prompt("Which criteria are you deleting under? \n 1: Redundant \n 2: Corrupt or empty \n 3: Improper license \n 4: No license, no source \n 5: Unused copyrighted images") var f = document.getElementsByName('wpReason')[0]; f.value = "CSD" + " I" + page + ""; }

function deleteo(number) { var page = prompt("What is the page name?") var f = document.getElementsByName('wpReason')[0]; f.value = "Articles for deletion/" + page + ""; }

function deletey(number) { var f = document.getElementsByName('wpReason')[0]; f.value = "uncontested deletion"; }

function testo(number) { var page = prompt("Which AUTOMATICALLY SIGNED message do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += ""; f.wpSummary.value = "Message"; }

function testp(number) { var page = prompt("Which message do you want to issue?") var variable= prompt("Is there a variable to go with this template?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += "" + variable + ""; t.value += '\n'; f.wpSummary.value = "Message"; }

function testq(number) { var page = prompt("Which template(s) do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += ""; f.wpSummary.value = ""; }

function testq2(number) { var page = prompt("Which template(s) do you want to issue?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += '\n'; t.value += ""; f.wpSummary.value = ""; }

function relist(number) { var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += ""; f.wpSummary.value = "relist"; }

function list(number) { var page = prompt("Which page are you listing?") var f = document.editform, t = f.wpTextbox1; if (t.value.length > 0) t.value += ""; f.wpSummary.value = "+" + page + ""; }

function testv(number) { var f = document.editform, t = f.wpTextbox1; t.value = ""; }

function testr(number) { var f = document.editform, t = f.wpTextbox1; t.value = "=== User reported ===\n\n\n"; f.wpSummary.value = "all blocked, list empty"; }

function tests(number) { var f = document.editform, t = f.wpTextbox1; t.value = "=== User reported ===\n\n\n"; f.wpSummary.value = "vandal(s) not blocked, list empty"; }

function testt(number) { var f = document.editform, t = f.wpTextbox1; f.wpSummary.value = "blocked, list not empty"; }

function testu(number) { var f = document.editform, t = f.wpTextbox1; f.wpSummary.value = "vandal(s) not blocked, list not empty"; }

function support(number) { var f = document.editform, t = f.wpTextbox1; f.wpSummary.value = " support"; }

function oppose(number) { var f = document.editform, t = f.wpTextbox1; f.wpSummary.value = " oppose"; }

function neutral(number) { var f = document.editform, t = f.wpTextbox1; f.wpSummary.value = " neutral"; }

// adds various tabs to call the above function add_tabs { var c1 = document.getElementById('column-one'); var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0]; // Only add for pages with "Editing User talk:" at the start of the title if (document.title.indexOf("Editing User talk:") == 0) {     addlilink(tabs, 'javascript:testn(1)',"test"); addlilink(tabs, 'javascript:edit_summary_watch("", "blocked", true, 1)',"block"); addlilink(tabs, 'javascript:edit_summary_watch("", "blocked", true, 1)',"u"); addlilink(tabs, 'javascript:edit_summary_watch("", "blocked", true, 1)',"f"); addlilink(tabs, 'javascript:edit_summary_watch("", "blocked", true, 1)',"indef"); addlilink(tabs, 'javascript:testtwo(1)',"msg"); addlilink(tabs, 'javascript:edit_summary_watch("", "welcome", true, 1)',"w"); }

if (document.title.indexOf("Editing Image:") == 0) {     addlilink(tabs, 'javascript:edit_summary_watch("", "no licence", true, 1)',"licence"); addlilink(tabs, 'javascript:edit_summary_watch("", "no source", true, 1)',"source"); addlilink(tabs, 'javascript:edit_summary_watch(" ", "no licence, no source", true, 1)',"licence + source"); }

if (document.title.indexOf("Editing User:") == 0) {     addlilink(tabs, 'javascript:testq(1)',"tag"); addlilink(tabs, 'javascript:testq2(1)',"subst"); addlilink(tabs, 'javascript:testv(1)',"clear"); }

if (document.title.indexOf("Editing Wikipedia:Administrator intervention against vandalism (section)") == 0) {     addlilink(tabs, 'javascript:testr(1)',"blocked - empty"); }

if (document.title.indexOf("Editing Wikipedia:Administrator intervention against vandalism (section)") == 0) {     addlilink(tabs, 'javascript:testt(1)',"blocked - not empty"); }

if (document.title.indexOf("Editing Wikipedia:Articles for deletion") == 0) {       addlilink(tabs, 'javascript:relist(1)',"relist"); addlilink(tabs, 'javascript:closeafd(prompt("Result?"), "")', 'Result'); addlilink(tabs, 'javascript:closeafd("delete", "")', 'Delete'); } if (document.title.indexOf("Editing Wikipedia:Articles for deletion/Log") == 0) {     addlilink(tabs, 'javascript:list(1)',"list"); }

// if (document.title.indexOf("Wikipedia:Articles for deletion/Log/") != -1) //   { //        addlilink(tabs, 'javascript:hideafd', 'Hide', 'ca-hide'); //       addlilink(tabs, 'javascript:showafd', 'Show', 'ca-show'); //  }  if (document.title.indexOf("Editing User:FireFox/Status") == 0) {       addlilink(tabs, 'javascript:inoutaround("in")', "i"); addlilink(tabs, 'javascript:inoutaround("out")', "o"); addlilink(tabs, 'javascript:inoutaround("around")', "a"); addlilink(tabs, 'javascript:inoutaround("busy")', "b"); }

if (document.title.indexOf("Block user") == 0) {	addlilink(tabs, 'javascript:blockuser("vandalism", "15 minutes")', "15 minutes"); addlilink(tabs, 'javascript:blockuser("vandalism", "3 hours")', "3 hours"); addlilink(tabs, 'javascript:blockuser("vandalism", "24 hours")', "24 hours"); addlilink(tabs, 'javascript:blockuser("vandalism", "48 hours")', "48 hours"); addlilink(tabs, 'javascript:blockuser("vandalism", "96 hours")', "96 hours"); addlilink(tabs, 'javascript:blockuser("vandalism", "indefinite")', "indefinite"); addlilink(tabs, 'javascript:blockuser("", "indefinite")', "username"); addlilink(tabs, 'javascript:blockuser("contains non-latin characters - ", "indefinite")', "non-latin"); addlilink(tabs, 'javascript:blockuser("", "indefinite")', "willy on wheels"); addlilink(tabs, 'javascript:blockuser("imposter, created solely to impersonate or attack an established user", "indefinite")', "imposter"); addlilink(tabs, 'javascript:blockuser("please contact an administrator for verification purposes, as described on this page", "indefinite")', "verification"); }

if (document.title.indexOf("Unblock user") == 0) {	addlilink(tabs, 'javascript:unblockuser("temporarily removing block (reblock indefinitely)")', "indefinite"); addlilink(tabs, 'javascript:unblockuser("temporarily removing block (reblock for longer)")', "lengthen"); addlilink(tabs, 'javascript:unblockuser("temporarily removing block (block conflict)")', "conflict"); addlilink(tabs, 'javascript:unblockuser("unblock requested (via email)")', "email"); addlilink(tabs, 'javascript:unblockuser("blocked mistakenly")', "mistake"); addlilink(tabs, 'javascript:unblockuser("collateral damage")', "collateral"); addlilink(tabs, 'javascript:unblockuser("remove autoblock")', "autoblock"); }

if (document.title.indexOf("Confirm delete") == 0) {     addlilink(tabs, 'javascript:deleteg(1)',"g"); addlilink(tabs, 'javascript:deletea(1)',"a"); addlilink(tabs, 'javascript:deleter(1)',"r"); addlilink(tabs, 'javascript:deletei(1)',"i"); addlilink(tabs, 'javascript:deletey(1)',"c"); addlilink(tabs, 'javascript:afddelete',"!"); }

if (document.title.indexOf("Editing Talk:") == 0) {     addlilink(tabs, 'javascript:afdresult',"afd"); }

if (document.title.indexOf("Editing Wikipedia:Requests for adminship/") == 0) {     addlilink(tabs, 'javascript:edit_summary_watch2("", "support", true, 1)',"support"); }

}

if (window.addEventListener) window.addEventListener("load", add_tabs, false); else if (window.attachEvent) window.attachEvent("onload", add_tabs);

function addtab(tabs, url, name, id){ var na = document.createElement('a'); na.href = url; na.id = id; na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); li.appendChild(na); tabs.appendChild(li); return li; } /////////////////////////////////////////////////////////////////// // AutoAFD by Korath // This needs to change depending on skin used. ////////////////////////////////////////////////////////////////// function add_link2(url, name) { var na = document.createElement('a'); na.setAttribute('href', url); na.appendChild(document.createTextNode(name));

var li = document.createElement('li'); li.appendChild(na);

var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; tabs.appendChild(li); }

function strip_namespace(target) { var colon = target.indexOf(':'); if (colon != -1) {     var spaces = new Array('User', 'Wikipedia', 'Image', 'MediaWiki', 'Template', 'Help', 'Category'); var ns = target.substring(0, colon); if (ns == '' || ns == 'Talk') return target.substring(colon + 1); else for (var i = 0; i < spaces.length; ++i) {           if (ns == spaces[i]                || ns == spaces[i] + '_talk') return target.substring(colon + 1); }   }

return target; }

function autoafd { if (document.title.indexOf('Editing ') == 0) {     var action = ''; var target = ''; if (location.search) {         var l = location.search.substring(1).split('&'); for (var i = 0; i < l.length; ++i) {             var eq = l[i].indexOf('='); var name = l[i].substring(0, eq); if (name == 'fakeaction') action = l[i].substring(eq + 1); else if (name == 'faketarget') target = unescape(l[i].substring(eq + 1)).replace(/_/g, ' '); }       }

if (action == 'afdlist') {         document.editform.wpTextbox1.value += '\n'; document.editform.wpSummary.value = 'Articles for deletion/' + target + ''; }     else if (action == 'afdsub') {         if (document.editform.wpTextbox1.value.length > 0) {             target = document.editform.action; target = unescape(target.substring(target.indexOf('title=') + 6, target.lastIndexOf('&action=submit'))).replace(/_/g, ' '); window.alert("There's an old afd at the default location already.\n\n" +                          'Please either move it out of the way (and update existing links to it), or file the Afd by hand in another location (such as ' + target + ' (2)).'); }         else document.editform.wpTextbox1.value += '{' + '{' + 'subst:afd2|pg=' + target + '|text=' + '}' + '}' + '-- ~' + '~' + '~' + '~\n' + '\n*\'\'\' \'\'\'\n*\'\'\' \'\'\'\n*\'\'\' \'\'\'\n'; }   } }

if (window.addEventListener) window.addEventListener('load', autoafd, false); else if (window.attachEvent) window.attachEvent('onload', autoafd);

// Adds a "blocklog" tab and fills in the username field on Special:Blockip, if a "&faketarget=username" is present. function do_blockip_stuff { // focus on Reason field document.getElementsByName('wpBlockReason')[0].focus;

// Look for a &faketarget= for the username/ip var l = location.search.substring(1).split('&'); var target = ''; for (var i = 0; i < l.length; ++i) {     var n = l[i].indexOf('='); if (l[i].substring(0, n) == 'faketarget') {  target = l[i].substring(n + 1); break; }   }

if (target == '') return;

// put account name in "IP Address/username" field var addr = document.getElementsByName('wpBlockAddress')[0]; addr.value = unescape(target);

// add "blocklog" tab var c1 = document.getElementById('column-one'); var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0]; addlilink(tabs, '/wiki/Special:Log/block?page=User:' + target, 'log'); }

// Opens the block log in the current window, and Special:Blockip in a popup. // Width, height, top, and left are chosen for a 1600x1200 display. //function blockpage_and_log(target) //{ // window.open('Special_Blockip.html?foo=blarg&faketarget=' + target, 'Block', 'width=1600,height=600,top=600,left=0'); // document.location.href = 'http://en.wikipedia.org/w/index.php?title=Special%3ALog&type=block&user=&page=User%3A' + target; //}

// Adds "block" and "blocklog" tabs to User: and User talk: pages. function add_block_tab { var c1 = document.getElementById('column-one'); var tabs = c1.getElementsByTagName('div')[0].getElementsByTagName('ul')[0];

// use the "edit this page" tab to get already-tidied url var editlk = document.getElementById('ca-edit').getElementsByTagName('a')[0].href; // cut everything up to "title=" from the start and everything past "&action=edit" from the end editlk = editlk.substring(editlk.indexOf('title=') + 6, editlk.lastIndexOf('&action=edit')); editlk = editlk.substring(editlk.indexOf(':') + 1); var slloc = editlk.indexOf('/'); if (slloc > 0) editlk = editlk.substring(0, slloc);

// add "unblock" tab addlilink(tabs, '/w/index.php?title=Special:Ipblocklist&action=unblock&ip=' + editlk, 'un');

// add "block" tab addlilink(tabs, '/w/index.php?title=Special:Blockip&ip=' + editlk, 'block');

// To open the block page and block log simultaneously, replace the above line with: // addlilink(tabs, 'javascript:blockpage_and_log("' + editlk + '")', 'Block'); // and uncomment the blockpage_and_log function above.

// add "blocklog" tab addlilink(tabs, '/w/index.php?title=Special%3ALog&type=block&user=&page=User%3A' + editlk, 'log');

}

function do_onload { if (document.title.indexOf('User:') == 0      || document.title.indexOf('User talk:') == 0) add_block_tab; else if (document.title.indexOf('Block user') == 0) // could stand to be more robust do_blockip_stuff; }

//From User:Func if (window.addEventListener) window.addEventListener("load", do_onload, false); else if (window.attachEvent) window.attachEvent("onload", do_onload);

if ( document.createElement && window.addEventListener ) { function SoFixItInit // pre-load, (don't want to slow down loading of article's content, though) {

}

function SoFixItLoad // post-load { UserMenu = new PortletMenu( 'p-personal'  ); PageMenu = new PortletMenu( 'p-cactions'  ); NavMenu = new PortletMenu( 'p-navigation' ); //ToolMenu = new PortletMenu( 'p-tb'        );

// This is inefficient and not particularly robust. // This comes first, I want this link to come up as // fast as possible. // function GetByClass( sElem, sClass ) { var i, a2 = [], a = document.getElementsByTagName( sElem ); for ( i = 0; i < a.length; i++ ) if ( a[ i ].className == sClass ) a2.push( a[ i ] ); return a2; } var a, td = GetByClass( 'td', 'diff-otitle' ); if ( ( td = td[ 0 ] ) && ( a = td.getElementsByTagName( 'a' )[ 0 ] ) ) a.href = a.href + '&action=edit'; // need to change text, later

var userName = UserMenu.getText( 'pt-userpage' );

// personal (top-most) menu // // Celestianpower Háblame  Prefs  Watchlist  Contribs  Kate  VAN  ESP  Log out   // UserMenu.setText( 'pt-mytalk'   , 'Talk'  ); UserMenu.setText( 'pt-preferences', 'Preferences' ); UserMenu.setText( 'pt-watchlist', 'Watchlist' ); UserMenu.setText( 'pt-mycontris', 'Contributions' ); UserMenu.setText( 'pt-logout'   , 'Log out'   ); // UserMenu.setHref( 'pt-mycontris', 'http://en.wikipedia.org/w/index.php?title=Special:Contributions&target=' + userName + '&offset=0&limit=50' ); // // // it seems there is a stylesheet that makes them lowercase // // ok, the lowercased menu items are starting to really bug me: // document.getElementById( 'p-personal' ).getElementsByTagName( 'ul' )[0].style.textTransform = 'none'; // UserMenu.insertBefore( 'pt-esp', 'pt-vandal', 'Status', 'http://en.wikipedia.org/w/index.php?title=User:FireFox/Status&action=edit' ); if(document.getElementById('ca-edit')) document.getElementById('ca-edit').firstChild.innerHTML = 'Edit'; // so I always know what time it is in UTC land: // UserMenu.append( 'pt-utc', UTCTime, 'javascript:void UserMenu.setText("pt-utc",UTCTime)' );

// article-actions menu, (the "tabs") // if ( PageMenu[ 'ca-history' ] ) // theory: if it has a history tab, then it's purgable { PageMenu.insertBefore( 'ca-history', 'ca-lastdiff', 'last', PageMenu.getHref( 'ca-history' ).replace( /action=history/, 'diff=0' ) );

PageMenu.getHref( 'ca-history' ).replace( /action=history/, 'action=purge');

PageMenu.setText( 'ca-edit'   , 'Edit this page'   );

PageMenu.setText( 'ca-history'   , 'History'   );

PageMenu.setText( 'ca-delete'   , 'Delete'   ); }

var x = 1; NavMenu.append( 'n-' + x++, 'monobook.js', 'http://en.wikipedia.org/w/index.php?title=User:' + userName + '/monobook.js&action=edit' ); NavMenu.append( 'n-' + x++, 'monobook.css', 'http://en.wikipedia.org/w/index.php?title=User:' + userName + '/monobook.css&action=edit' ); NavMenu.append( 'n-' + x++, 'AfDs to be closed', 'http://en.wikipedia.org/wiki/Wikipedia:Articles_for_deletion/Old' ); NavMenu.append( 'n-' + x++, 'Todays AfDs', 'http://en.wikipedia.org/wiki/Wikipedia:Articles_for_deletion/Log/Today' ); NavMenu.append( 'n-' + x++, 'Speedy deletions', 'http://en.wikipedia.org/wiki/CAT:CSD' ); NavMenu.append( 'n-' + x++, 'RfA and RfB', 'http://en.wikipedia.org/wiki/WP:RFA' ); NavMenu.append( 'n-' + x++, 'Helpme', 'http://en.wikipedia.org/wiki/Category:Wikipedians looking for help' ); NavMenu.append( 'n-' + x++, 'Unblock', 'http://en.wikipedia.org/wiki/Category:Requests for unblock' ); NavMenu.append( 'n-' + x++, 'New users', 'http://en.wikipedia.org/w/index.php?title=Special:Log&type=newusers&user=&page=&limit=20&offset=0' ); NavMenu.append( 'n- ' + x++, 'Purge', 'http://en.wikipedia.org/w/index.php?title=' + getPname + '&action=purge' ); }

function PortletMenu( id ) // constructor { this.menu = document.getElementById( id ); this.list = this.menu.getElementsByTagName( 'ul' )[ 0 ]; // bypass " Views ", etc.

// sigh...as far as I can figure, there is empty whitespace being treated // as TextNodes.... // var LIs = this.list.getElementsByTagName( 'li' );

for ( var i = 0; i < LIs.length; i++ ) { this[ LIs[ i ].id ] = LIs[ i ]; }

this.newItem = function( id, txt, url ) { var li = document.createElement( 'li' ); li.id  = id; var a = document.createElement( 'a'  );  a.href = url;

a.appendChild( document.createTextNode( txt ) ); li.appendChild( a );

this[ id ] = li; // watch this!!!

return li; }

this.append = function( id, txt, url ) { this.list.appendChild( this.newItem( id, txt, url ) ); } this.insertBefore = function( old, id, txt, url ) { this.list.insertBefore( this.newItem( id, txt, url ), this[ old ] ); }

// the ByTagName here is a bit annoying, but in Safari, I was picking // up TextNodes by using this[ id ].firstChild.firstChild // this.getText = function( id     ) { return this[ id ].getElementsByTagName( 'a' )[ 0 ].firstChild.data } this.setText = function( id, txt ) {       this[ id ].getElementsByTagName( 'a' )[ 0 ].firstChild.data = txt }

this.getHref = function( id     ) { return this[ id ].getElementsByTagName( 'a' )[ 0 ].href       } this.setHref = function( id, url ) {       this[ id ].getElementsByTagName( 'a' )[ 0 ].href = url } // I add em as I need em.... }

function RemoveNode( id ) { var node = document.getElementById( id ) node.parentNode.removeChild( node ); }

function UTCTime { // Get a date stamp for the time in UTC-land. // // for the future: a format arg // var s = '', d = new Date, a = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' '); return d.getUTCDate + ' ' + a[ d.getUTCMonth ] + ' ' + d.getUTCFullYear + ' ' + ( '0' + d.getUTCHours  ).substr( -2 ) + ':' + ( '0' + d.getUTCMinutes ).substr( -2 ) + ' ' + 'UTC'; }

SoFixItInit; window.addEventListener( 'load', SoFixItLoad, false ); }

function NUPatrol { if ( ( window.location.href.indexOf( 'Special%3ALog&type=newusers' ) == -1 ) && ( window.location.href.indexOf( 'Special:Log/newusers'       ) == -1 )  ) return; // make more robust???

var items, item, i, links, user, name, talk, contribs, insertLoc, link;

items = document.getElementById( 'bodyContent' ).getElementsByTagName( 'ul' )[ 0 ].getElementsByTagName( 'li' );

function NewLink( txt, url, plainlinks, linkColor ) { var a = document.createElement( 'a' ); a.appendChild( document.createTextNode( txt ) ); a.href = url; if ( plainlinks ) a.className = 'plainlinks'; if ( linkColor ) { if ( typeof linkColor == "string" ) a.style.color = linkColor; else a.style.color = '#FF0000'; // old default behavior } return a; }

for ( i = 0; i < items.length; i++ ) { item = items[ i ]; links = item.getElementsByTagName( 'a' );

user = links[ 0 ]; name = user.firstChild.nodeValue; talk = links[ 2 ]; talk.firstChild.nodeValue = 'talk'; // lowercase 'Talk' for consistency contribs = links[ 3 ];

insertLoc = user.nextSibling; // ' newusers '

item.insertBefore( document.createTextNode( ' ( ' ), insertLoc );

item.insertBefore( talk, insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc );

item.insertBefore( contribs, insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc );

item.insertBefore( NewLink( 'actions', '/w/index.php?title=Special%3ALog&user=' + name, true, '#000088' ), insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc );

item.insertBefore( NewLink( 'blocks', '/w/index.php?title=Special%3ALog&type=block&page=User%3A' + name, true, '#008800' ), insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc );

item.insertBefore( NewLink( 'is blocked?', '/wiki/Special:Ipblocklist?action=search&ip=' + name, true, '#888800' ), insertLoc ); item.insertBefore( document.createTextNode( ', ' ), insertLoc );

item.insertBefore( NewLink( 'do block!', '/w/index.php?title=Special:Blockip&ip=' + name, true, '#880000' ), insertLoc );

item.insertBefore( document.createTextNode( ' )' ), insertLoc );

item.removeChild( insertLoc.nextSibling ); // should remove the span item.removeChild( insertLoc ); // should remove ' newusers ' text } } if ( window.addEventListener ) window.addEventListener( 'load', NUPatrol, false ); else if ( window.attachEvent ) window.attachEvent( 'onload', NUPatrol );

function addEditSection0{ if(!document.getElementById) return; var x = document.getElementById('ca-edit'); if(!x) return; var y = document.createElement('LI'); y.id = 'ca-edit-0'; if(x.className == 'selected'){ if(/&action=edit&section=0$/.test(window.location.href)){ x.className = 'istalk'; y.className = 'selected'; } else { x.className = 'selected istalk'; }   } else if(x.className == 'selected istalk'){ if(/&action=edit&section=0$/.test(window.location.href)){ x.className = 'istalk'; y.className = 'selected istalk'; } else { y.className = 'istalk'; }   } else { y.className = x.className; x.className = 'istalk'; }   var z = document.createElement('A'); if(x.children){ z.href = x.children[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').children[1].insertBefore(y,x.nextSibling); }else{ z.href = x.childNodes[0].href + '&section=0'; z.appendChild(document.createTextNode('0')); y.appendChild(z); document.getElementById('p-cactions').childNodes[3].insertBefore(y,x.nextSibling); }   z.title = 'Edit the zeroth section of this page'; akeytt; }

/*

This tool hits the RSS feed for recent changes every 30 seconds or so and checks for common vandalism. It does not make a separate server request for every edit.

Currently, the RSS feed is full of holes and so this may miss many edits. http://bugzilla.wikimedia.org/show_bug.cgi?id=3942

//

//DOWNLOADER

recent2={};

recent2.download=function(bundle) { // mandatory: bundle.url // bundle.onSuccess // bundle.onFailure // bundle.otherStuff OK too

var x = window.XMLHttpRequest ? new XMLHttpRequest : window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : false;

if (x) { x.onreadystatechange=function { x.readyState==4 && recent2.downloadComplete(x,bundle); };   x.open("GET",bundle.url,true); // x.setRequestHeader('Accept','text/*'); x.send(null); } }

recent2.downloadComplete=function(x,bundle) { x.status==200 && ( bundle.onSuccess && bundle.onSuccess(x,bundle) || true ) || ( bundle.onFailure && bundle.onFailure(x,bundle) || alert(x.statusText)); }

window.gettingBadWords=false; window.badWords=null; recent2.getBadWords=function { window.gettingBadWords=true; recent2.download( { url: 'http://en.wikipedia.org/w/index.php?title=User:Lupin/badwords&action=raw&ctype=text/css',             onSuccess: recent2.processBadWords, onFailure: function  { recent2.runOnce(recent2.getBadWords, 15000); return true;}}); } recent2.processBadWords=function(d) { var data=d.responseText.split('\n'); var ret=[]; for (var i=0; i.*?(([^-{}.\\s'=wI:*#0-9A-F])\\2{2,}|\\b(" + ret.join('|') + "))(\\b|[|]).* ", 'im'); }

window.gettingWatchlist=false; window.watchlist=null; window.getWatchlist=function { window.gettingWatchlist=true; recent2.download({url: 'http://en.wikipedia.org/wiki/Special:Watchlist/edit',              onSuccess: processWatchlist, onFailure: function  { recent2.runOnce(getWatchlist, 15000); return true; }}); } window.processWatchlist=function(req, bundle) { var watchlist={}; var lines=req.responseText.split('\n'); for (var i=0; i -1) { var article=lines[i].replace(/.*title="(.*?)">.*/, '$1'); watchlist[article]=true; } }  window.watchlist=watchlist; }

recent2.runOnce=function(f, time) { var i=recent2.runOnce.timers.length; var ff = function { clearInterval(recent2.runOnce.timers[i]); f }; var timer=setInterval(ff, time); recent2.runOnce.timers.push(timer); } recent2.runOnce.timers=[];

var feed='http://en.wikipedia.org/w/index.php?title=Special:Recentchanges&feed=rss';

window.newOutputDiv=function(klass, position, immortal) { var h1=document.getElementsByTagName('h1')[0]; var ret=document.createElement('div'); if (klass) ret.className=klass; if (!position) position='bottom'; switch(position) { case 'top': h1.parentNode.insertBefore(ret, h1.nextSibling); break; case 'bottom': h1.parentNode.appendChild(ret); break; default: if (!newOutputDiv.alerted) { alert('Unknown position '+position+' in recent2.js, newOutputDiv'); window.newOutputDiv.alerted=true; }   return newOutputDiv(klass, 'bottom'); } if (!immortal) { ret.id=newOutputDiv.uid++; } window.outputDivs.push(ret); return ret; } window.newOutputDiv.alerted=false; window.newOutputDiv.uid=0; window.outputDivs=[];

window.grabRecentChanges=function(feed) { if (! window.badWords && recent2.filter_badwords ) { if ( ! window.gettingBadWords ) recent2.getBadWords; return recent2.runOnce(function{grabRecentChanges(feed);}, 500); } if (! window.watchlist && recent2.filter_watchlist) { if (! window.gettingWatchlist ) getWatchlist; return recent2.runOnce(function{grabRecentChanges(feed);}, 500); } var pos=recent2.outputPosition; if (recent2.outputPosition=='top') { var output=newOutputDiv('recent2.lines', pos); var status=newOutputDiv('recent2.status', pos); } else { var status=newOutputDiv('recent2.status', pos); var output=newOutputDiv('recent2.lines', pos); } status.style.borderStyle='solid'; status.style.borderColor='orange'; status.innerHTML=greyFont+'(' + count + ') updating... ';

recent2.download({url: feed, onSuccess: processRecentChanges, output: output, status: status, onFailure: feedFailed}); }

var greyFont='';

window.feedFailed=function(x,bundle) { try { bundle.status.innerHTML+=greyFont+'failed: '+x.statusText + ' '; } catch (err) { bundle.status.innerHTML+=greyFont+'failed badly: '+err+' '; } return true; }

recent2.newWindows=true;

window.linkmaker=function(url, text) { var s='' + text + ''; return s; }

recent2.ipUserRegex=RegExp('(User:)?((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])');

window.processRecentChanges=function(req, bundle){ var initialId=processRecentChanges.id; var doc=req.responseXML.documentElement; var items=doc.getElementsByTagName('item'); var latest=processRecentChanges.lastDate; var output=[]; // '; for (var i=0; i< items.length; ++i) { var timestamp = Date.parse(getFirstTagContent(items[i],'pubDate')); if (timestamp <= processRecentChanges.lastDate) continue; latest = (timestamp > latest) ? timestamp : latest; var diffText=getFirstTagContent(items[i],'description').split(' ').join(' \n'); var editSummary=diffText.replace(RegExp('^ (.*?) [\\s\\S]*'), '$1'); var editor=getFirstTagContent(items[i], 'creator') || getFirstTagContent(items[i], 'dc:creator'); if (recent2.filter_anonsOnly && !recent2.ipUserRegex.test(editor)) continue;

var articleTitle=getFirstTagContent(items[i], 'title'); if (! recent2.show_talkpages && articleTitle && /^Talk:|^[^:]*?[_ ]talk:/.test(articleTitle)) continue; if (recent2.filter_watchlist && articleTitle &&        ! window.watchlist[articleTitle.replace(/^Talk:/, '').replace(/[ _]talk:/, ':')]) continue; if (recent2.filter_badwords) { var badMatch=null; if (window.vandals[editor] > 0) badMatch=['', '[previously rolled back this editor]']; else badMatch=badWords.test(diffText); // .test is meant to be faster than a full match if (badMatch) { badMatch=diffText.match(badWords); var article=getFirstTagContent(items[i], 'link'); articleTitle=getFirstTagContent(items[i], 'title'); var id=processRecentChanges.id; // highlighting badMatch[0]=badMatch[0].split(badMatch[1]).join(' '+badMatch[1]+' '); output.push(recent2.doLine({timestamp: timestamp, article:article, articleTitle:articleTitle, editor:editor, id:id, badWord:badMatch[1], badDiffFragment:badMatch[0], diff:diffText, summary:editSummary})); processRecentChanges.id++; }   }    else { var article=getFirstTagContent(items[i], 'link'); var articleTitle=getFirstTagContent(items[i], 'title'); if (recent2.CustomFilter &&          ! recent2.CustomFilter({timestamp:timestamp, article:article, articleTitle:articleTitle, editor:editor, diff:diffText, summary:editSummary})) continue; var id=processRecentChanges.id; output.push(recent2.doLine({timestamp: timestamp, article:article, articleTitle:articleTitle, editor:editor, id:id, diff:diffText, summary:editSummary})); processRecentChanges.id++; }

} /* end for loop */ //output+=''; var outputString=''; if (recent2.outputPosition=='top') { outputString=output.join(''); } else { for (var i=output.length-1; i>=0; --i) { outputString+=output[i]; } }  bundle.output.innerHTML+=outputString; recent2.runOnce(function {recent2.doPopups(bundle.output)}, 300); processRecentChanges.lastDate=latest; // - 1; // overlap better than missing some out, i think; FIXME do this properly var statusTail=greyFont+'done up to ' + formatTime(latest) + ' '; if (processRecentChanges.id > initialId) { statusTail+=' toggle these details |'; } statusTail += ' remove earlier output'; statusTail+=' '; bundle.status.innerHTML+=statusTail; } processRecentChanges.lastDate=0; processRecentChanges.id=0;

window.deleteEarlierOutputDivs=function(cur) { for(var i=0; i= 0 && outputDivs[i].id < cur) { // FIXME BUG: if we go from the bottom up, then we'll delete one too many or too few, or something :-)     outputDivs[i].parentNode.removeChild(outputDivs[i]);      outputDivs[i]=null;    }  }  // scroll to the top if we're appending output to the bottom, to keep the div we've clicked visible after the deletions  if (recent2.outputPosition!='top') document.location='#'; }

window.showHideDetailRange=function(start,end) { // use the first div to see if we should show or hide var div=document.getElementById('diff_div_' + start); if (!div) return; var state=false; // hide if (div.style.display=='none') state=true; // show for (var i=start; i<end; ++i) { showHideDetail(i, true, state); } }

window.toggleSysopEdits=function { var divs=document.getElementsByTagName('div'); for (var i=0; i<divs.length; ++i) { if (divs[i].className=='sysop_edit_line') divs[i].style.display= ( toggleSysopEdits.hidden ? 'none' : 'inline' ); } toggleSysopEdits.hidden = ! toggleSysopEdits.hidden; }

window.bundles={};

window.vandalColour = function(vandal) { var num=window.vandals[vandal]; if (!num) return ''; switch (num) { case 1: return '#DDFFDD'; case 2: return '#BBFFBB'; } var i= 9-(num - 3) *2; if (i < 0) i=0; return '#' + i + i + 'FF' + i + i; }

window.clickDetails=function(action, max) { if(!action) action='show'; if (!max) max = document.links.length; var count=0; for (var i=0; i<document.links.length && count < max; ++i) { if(document.links[i].innerHTML==action + ' details' && document.links[i].href.indexOf('javascript:') == 0) { ++count; eval(document.links[i].href.replace('javascript:', '')); } } }

recent2.pendingLines=[];

recent2.togglePausedOutput=function { if (!recent2.pausedOutput) { recent2.pausedOutput = true; return true; } else recent2.pausedOutput=false; var outputBuffer=''; while (recent2.pendingLines.length) { outputBuffer+=recent2.doLine(recent2.pendingLines.pop); } var pos=recent2.outputPosition; var output=newOutputDiv('recent2.lines', pos); output.innerHTML=outputBuffer; return false; }

recent2.togglePaused=function { if(!recent2.paused) { recent2.paused=true; return true; } recent2.paused=false; loopRecentChanges(loopRecentChanges.url, loopRecentChanges.iterations); return false; }

recent2.doLine=function(bundle) { if (recent2.pausedOutput) { recent2.pendingLines.push(bundle); return ''; } var wikiBase='http://en.wikipedia.org/wiki/'; var sysop = null; if (typeof sysops != 'undefined') sysop=sysops.test(bundle.editor); var lastDiffPage=bundle.article + '?diff=cur&oldid=prev'; bundle.url=lastDiffPage; saveBundle(bundle); var div=''; if (window.vandals[bundle.editor] > 0) { div=''} else if (sysop) {div=''}; return div + '<li>' + formatTime(bundle.timestamp) + ' ' + //latest + ' ' + processRecentChanges.lastDate + ' ' + linkmaker(lastDiffPage, bundle.articleTitle) + ( bundle.badWord ? ' matched ' + bundle.badWord + ' . . ' : ' . . ') + linkmaker(wikiBase + 'User:' + bundle.editor,          bundle.editor)     + ' ('  +  linkmaker(wikiBase + 'User_talk:' + bundle.editor,             'talk')     + ' | ' +  linkmaker(wikiBase + 'User_talk:' + bundle.editor + '?action=edit' + '&autoedit=s#$#\\n' + bundle.articleTitle + '%20~#&autosummary=Your%20recent%20edits', 'warn')    + ' | ' +  linkmaker(wikiBase + 'Special:Contributions/' + bundle.editor, 'contribs') + ' | ' +  linkmaker(wikiBase + 'Special:Blockip/' + bundle.editor,       'block')    +  '). . ' + ( bundle.summary ? '('+bundle.summary+') . . ' : '') + '<a href="javascript:showHideDetail(' + bundle.id + ')" id="showdiff_link_' + bundle.id + '">show details</a>' + ' [<a href="javascript:tryRollback(' + bundle.id + ')">rollback</a>]' + ' <div id="diff_div_' + bundle.id + '" style="display: none">' + ' </li>' + ( div ? ' ' : '') ; }

window.saveBundle= function(bundle) { var z={}; for (var prop in bundle) { z[prop]=bundle[prop]; } window.bundles[bundle.id]=z; }

window.vandals={}

window.tryRollback=function(id) { var b=window.bundles[id]; var vandal=b.editor; if (window.vandals[vandal]==null) window.vandals[vandal]=1; else window.vandals[vandal]++; if (!b) { alert('No bundle! Please tell Lupin how to reproduce this error - it should not really happen.'); return; } var onSuccess=function (x, bundle) { var rollRe=RegExp('<a href="(/w/index.php[^"]*?action=rollback[^"]*?from=([^&]*)[^"]*?)".*? (<span[^>]*>)?(.*?)? ');   // match[0]: useless    // match[1]: url (escaped)    // match[2]: last editor (escaped)    // match[4]: last edit summary (wikiText - FIXME strip this to plain text)    var match=rollRe.exec(x.responseText);    if (!match) {      alert('No rollback link found.\nSadly rollback is only available to admins. Alternatively, this may be a bug.');      return;    }    var lastEditor=match[2].split('+').join(' ');    var lastSummary=match[4];    // var vandal=b.editor; // from the closure    if (lastEditor != vandal) {      var summary=lastSummary.replace(RegExp('<[^>]*?>','g'),'');      if (!summary) summary=lastSummary;      alert( 'Could not rollback - someone else has edited since the vandal.\n\nPage: '+ b.articleTitle +             '\nVandal: '+vandal+'\nLast editor: '+lastEditor+'\nEdit summary: '+summary); return; }   var rollbackUrl=match[1].split('&').join('&'); // confirm('Rollback edits by '+vandal + ' to '+b.articleTitle+'?') && window.open(rollbackUrl, '_blank'); } var onFailure = function(x,bundle) { alert('HTTP failed when trying to get rollback link in url\n' + bundle.url +         '\n\nHTTP status text: ' + x.statusText); return true; } recent2.download({ url:b.url, onSuccess: onSuccess, id: b.id, onFailure:onFailure}); }

recent2.doPopups=function(div) { if (typeof(mouseOverWikiLink)!='undefined' &&      typeof(mouseOutWikiLink) !='undefined' &&       typeof(killPopup)        !='undefined') { var anchors=div.getElementsByTagName('A'); for (var i=0; i<anchors.length; ++i) { var a=anchors[i]; if (a.href.indexOf('javascript')==0) continue; a.onmouseover=mouseOverWikiLink; a.onmouseout= mouseOutWikiLink; a.onclick= killPopup; } } }

window.formatTime=function(timestamp) { var date=new Date(timestamp); nums=[date.getHours, date.getMinutes, date.getSeconds]; for (var i=0; i<nums.length; ++i) if (nums[i]<10) nums[i]='0'+nums[i]; return nums.join(':'); }

window.showHideDetail = function(id, force, state) { var div=document.getElementById('diff_div_' + id); var lk=document.getElementById('showdiff_link_' + id); if (!div) return; var bundle=window.bundles[id]; if (!div.innerHTML) div.innerHTML= ( bundle.badDiffFragment ? bundle.badDiffFragment:'') + bundle.diff; if ((force && state==true) || (!force && div.style.display=='none')) { div.style.display='inline'; lk.innerHTML='hide details'; } else { div.style.display='none';  lk.innerHTML='show details'; } }

window.getFirstTagContent=function(parent, tag) { var e=parent.getElementsByTagName(tag); if (e && (e=e[0]) ) { var ret = e.firstChild.nodeValue || e.nodeValue; if (typeof ret != typeof ) return ; return ret; } }

recent2.controlUI=function { recent2.controls=newOutputDiv('recent2.controls', 'top', true); var talk=document.createElement('input'); talk.type='checkbox'; talk.checked=!recent2.show_talkpages; talk.onclick=function{ recent2.show_talkpages=!this.checked; } recent2.controls.appendChild(talk); recent2.controls.talk=talk; var label=document.createElement('label'); label.innerHTML='Hide talk pages'; recent2.controls.appendChild(label); }

var count=0; window.loopRecentChanges=function(url, iterations) { if (!iterations) iterations=20; loopRecentChanges.iterations=iterations; loopRecentChanges.url=url; grabRecentChanges(url); recent2.runOnce(function {     if (recent2.paused) {++count; return; }    if (++count >= iterations && ! confirm('Continue monitoring recent changes?') ) return;    count %= iterations; loopRecentChanges(url, iterations);  }, 30000); } window.marvin=function { window.sysops=RegExp("^(\\-\\- April|23skidoo|A Man In Black|ABCD|ALoan|Academic Challenger|Acetic Acid|Adam Bishop|Ahoerstemeier|Alabamaboy|Alai|AlainV|Alex S|Alex756|AlistairMcMillan|Alkivar|Allen3|AllyUnion|Alteripse|Ambi|Ams80|Andres|Andrevan|Andrew Yong|Andrewa|Andris|Android79|Angela|Angr|Antandrus|Anthere|AntonioMartin|Aranel|Arcadian|Aris Katsaris|Arminius|Arvindn|Arwel Parry|Asbestos|AstroNomer|Ausir|AxelBoldt|BanyanTree|BaronLarf|Bcorr|Bdesham|Bearcat|Beland|Benc|Bhadani|Biekko|BillyH|Bishonen|Bkonrad|Blankfaze|Bluemoose|Bmicomp|Bovlb|Bratsche|Brian Kendig|Brian0918|BrianSmithson|Briangotts|Brighterorange|Brion VIBBER|Brockert|BrokenSegue|Brookie|Bryan Derksen|Bumm13|Burgundavia|CJCurrie|COGDEN|CSTAR|CYD|Cacycle|Caltrop|CambridgeBayWeather|Camembert|Canderson7|Capitalistroadster|Carbonite|Carnildo|Catbar|CatherineMunro|Cburnett|Cdc|Cecropia|Cedar\\-Guardian|Celestianpower|CesarB|Cgs|Chadloder|Chancemill|Changlc|Charles Matthews|Chmod007|Chris 73|Chris Roy|ChrisO|Christopher Mahan|Chuck SMITH|Chuq|Cimon avaro|Clarkk|Clifford Adams|ClockworkSoul|Commander Keane|ContiE|Cool Hand Luke|Cprompt|Craigy144|Cryptic|CryptoDerk|Curps|Cutler|Cyan|Cyberjunkie|CyborgTosser|Cyp|Cyrius|DESiegel|DF08|DJ Clayworth|Dale Arnett|Dan100|DanKeshet|Daniel Quinlan|DanielCD|Danny|Dante Alighieri|Darwinek|Dave souza|David Gerard|David Newton|David\\.Monniaux|DavidLevinson|DavidWBrooks|Davidcannon|Davodd|Dbachmann|Dbenbenn|Dbiv|Dcoetzee|Deb|Decumanus|Delirium|Denelson83|Denni|Derek Ross|Dgrant|Diberri|Dieter Simon|Dino|Dmcdevit|Dmn|Doc glasgow|Docu|Dori|Dpbsmith|DrBob|DragonflySixtyseven|Dragons flight|Drini|DropDeadGorgias|Duk|Duncharris|Durin|Dvyost|Dwheeler|Dysprosia|Earl Andrew|Ed Poor|Ed g2s|Edcolins|Edward|Efghij|Egil|El C|Elf|Ellsworth|Eloquence|Enchanter|Essjay|Eugene van der Pijll|Evercat|Everyking|Evil Monkey|Evil saltine|Evilphoenix|Exploding Boy|Ezhiki|FCYTravis|Fabiform|Fantasy|Fastfission|Fawcett5|Feco|FeloniousMonk|Fennec|Ferkelparade|Fernando Rizo|Ffirehorse|Filiocht|Finlay McWalter|Fire Star|FireFox|Flcelloguy|Flockmeal|Francs2000|Frazzydee|Fred Bauder|Fredrik|Freestylefrappe|FreplySpang|Friday|Func|Furrykef|Fuzheado|Fvw|G\\-Man|Gabbe|Gadfium|Gamaliel|Garzo|Gaz|Gdr|GeneralPatton|Geni|Gentgeen|Geogre|Gerald Farinas|Goatasaur|Golbez|Graft|GregAsche|GregRobson|Grenavitar|Grm wnr|Ground Zero|Grue|Grunt|Grutness|Gtrmp|Guettarda|Gwalla|Gyrofrog|Hadal|Hajor|Hall Monitor|HappyCamper|Hashar|Hawstom|Hcheney|Hedley|Hemanshu|Henrygb|Hephaestos|Hermione1980|Heron|Homeontherange|Humblefool|Hyacinth|Icairns|IceKarma|Ihcoyc|Ike9898|Ilyanep|Improv|Imran|Infrogmation|Ingoolemo|Inter|Isomorphic|Ixfd64|J\\.J\\.|JCarriker|JHK|JIP|JRM|JYolkowski|Jake Nelson|Jallan|JamesTeterenko|Jamesday|Jasonr|Jaxl|Jay|Jayjg|Jcw69|Jdavidb|Jdforrester|JeLuF|Jeffrey O\\. Gustafson|Jengod|JeremyA|Jeronimo|Jerzy|JesseW|Jfdwolff|Jiang|Jimbo Wales|Jimfbleak|Jimregan|Jinian|Jitse Niesen|Jmabel|Jnc|Jni|JoJan|John Kenney|JohnOwens|Johnleemk|Johntex|JonMoore|Jondel|Joolz|Josh Grosse|Jossifresco|Journalist|Joy|Joy Stovall|Jpgordon|Jrdioko|Jredmond|Jtdirl|Jtkiefer|Justinc|Jwrosenzweig|K1Bond007|KF|Kaihsu|Kaldari|Karada|Karen Johnson|Karmafist|Katefan0|Kbdank71|Kelly Martin|Khaosworks|Khendon|Khym Chanur|Kingturtle|Kirill Lokshin|Kmccoy|Knowledge Seeker|Kosebamse|Ktsquare|Kwamikagami|Kzollman|LC|Lachatdelarue|Lacrimosus|Lectonar|Lee Daniel Crocker|Lexor|Linuxbeak|LittleDan|Llywrch|Lommer|Longhair|Lord Emsworth|LordAmeth|LouI|Lowellian|Lucky 6\\.9|Ludraman|Lupin|Lupo|MC MasterChef|MacGyverMagic|Mackensen|Mackeriv|Madchester|Magnus Manske|Mailer diablo|Mairi|Malcolm Farmer|Manning Bartlett|Marianocecowski|Marine 69\\-71|Mark|Mark Christensen|Mark Dingemanse|Mark Richards|MarkSweep|Markalexander100|Marshman|Marudubshinki|Marumari|Master Thief Garrett|Matt Crypto|Maury Markowitz|Maveric149|Maximus Rex|Mbecker|Meelar|Mel Etitis|Menchi|Merovingian|Merphant|Mic|Michael Hardy|Michael Snow|Mike Halterman|Mikkalai|Mindspillage|Minesweeper|Mintguy|Mirv|Mirwin|Mkmcconn|Mkweise|Modemac|Moink|Moncrief|Montrealais|Moriori|Morven|Morwen|Mulad|Mustafaa|MyRedDice|MykReeve|Mysekurity|Mzajac|Nabla|Nandesuka|Nanobug|Necrothesp|Neutrality|Ngb|Nichalp|NicholasTurnbull|Nickptar|Nickshanks|Niteowlneils|Nohat|Noldoaran|Notheruser|Nufy8|Nunh\\-huh|Nv8200p|Oberiko|OldakQuill|Oleg Alexandrov|Oliver Pereira|Olivier|Omegatron|Optim|Ortolan88|Oven Fresh|OwenX|PFHLai|PMA|PRueda29|PZFUN|Pakaran|Pamri|Patrick|Paul A|Paul August|Pcb21|PedanticallySpeaking|Petaholmes|Peter Winnberg|Pfortuny|Pharos|Phil Bordelon|Phil Boswell|Phils|Philwelch|Phroziac|Physchim62|PierreAbbat|Piotrus|Pjacobi|Pollinator|Poor Yorick|Postdlf|Pratyeka|Premeditated Chaos|Proteus|Psy guy|Qaz|Quadell|Quercusrobur|R\\. fiend|R3m0t|RHaworth|RJFJR|RN|Radiant\\!|RadicalBender|Ragib|Ral315|Ram\\-Man|Rama|Ramallite|Ran|Raul654|Rbrwr|Rd232|Rdsmith4|RedWolf|RedWordSmith|Redux|Redwolf24|Refdoc|Reflex Reaction|Rfl|Rhobite|Rholton|Rhymeless|Rich Farmbrough|Rick Block|RickK|Rje|Rlandmann|Rlquall|Rmhermen|Roadrunner|RobLa|Robchurch|Robert Merkel|RobertG|Robin Patterson|RobyWayne|Roozbeh|RoseParks|Rossami|RoyBoy|RoySmith|Rx StrangeLove|Ryan Delaney|SD6\\-Agent|SWAdair|Salsa Shark|Sam Hocevar|Sam Korn|Sango123|Sannse|Sarge Baldy|Sasquatch|Schissel|Schneelocke|Scimitar|Scipius|Scott Burley|ScottDavis|Seabhcan|Sebastiankessel|Secretlondon|Seglea|Sesel|Seth Ilys|Sfoskett|Shanes|Shauri|Sheldon Rampton|Shimgray|SimonP|Siroxo|Sj|Sjakkalle|Sjc|Slambo|SlimVirgin|Slowking Man|Slrubenstein|Smith03|Sn0wflake|Snowspinner|Snoyes|Solipsist|Someone else|Sortior|Spangineer|Spencer195|Splash|Ssd|Stan Shebs|Starblind|Stevenj|Stevertigo|Stewartadcock|Stormie|Sugarfish|Sundar|Sverdrup|TPK|TUF\\-KAT|Ta bu shi da yu|Talrias|Tannin|Tarquin|Taw|Taxman|TenOfAllTrades|Texture|Thames|The Anome|The Cunctator|The Epopt|The Singing Badger|The wub|TheCoffee|TheoClarke|Theresa knott|Thryduulf|Thue|Thunderbrand|Tillwe|Tim Ivorson|Tim Starling|Timc|Timrollpickering|Timshell|Timwi|Titoxd|Tkinias|Toby Bartels|Tom\\-|Tomf688|Tompagenet|Tony Sidaway|Topbanana|Tregoweth|Trevor macinnis|Triddle|Trilobite|Tristanb|Ugen64|Ulayiti|Uncle G|UninvitedCompany|Urhixidur|Utcursch|UtherSRG|Vague Rant|VampWillow|Vancouverguy|Vaoverland|Viajero|Vicki Rosenzweig|Violetriga|Visorstuff|Voice of All\\(MTG\\)|Vsmith|Waltpohl|Wapcaplet|Warofdreams|Wayward|Wernher|Wesley|WhisperToMe|Who|Wiglaf|Wikiacc|Wikibofh|Wile E\\. Heresiarch|Wilfried Derksen|Willmcw|Woggly|WojPob|Woohookitty|Worldtraveller|Ww|Wwoods|XJamRastafire|Xezbeth|Y0u|Yacht|Zanimum|Zero0000|Zippy|Zocky|Zoe|Zoicon5|Zoney|Zscout370|Zzyzx11)$"); recent2.show_talkpages=true;  recent2.controlUI;  loopRecentChanges(feed, 200); }

// ************************************************** // Installation // **************************************************

recent2.addlilink=function(tabs, url, name, id, title, key){ var na = document.createElement('a'); na.href = url; na.appendChild(document.createTextNode(name)); var li = document.createElement('li'); if(id) li.id = id; li.appendChild(na); tabs.appendChild(li); if(id) { if(key && title) ta[id] = [key, title]; else if(key)    ta[id] = [key, '']; else if(title)  ta[id] = ['', title]; }   // re-render the title and accesskeys from existing code in wikibits.js    akeytt; return li; }

recent2.addToolboxLink=function(url, name, id){ var tb = document.getElementById('p-tb').getElementsByTagName('ul')[0]; recent2.addlilink(tb, url, name, id); }

window.addMarvin=function { recent2.addToolboxLink('http://en.wikipedia.org/wiki/User:Lupin/Filter_recent_changes', 'Filter recent changes', 'toolbox_filter_changes'); recent2.addToolboxLink('http://en.wikipedia.org/wiki/User:Lupin/All_recent_changes', 'All recent changes', 'toolbox_all_changes'); recent2.addToolboxLink('http://en.wikipedia.org/wiki/User:Lupin/Recent_IP_edits', 'Recent IP edits', 'toolbox_IP_edits'); recent2.addToolboxLink('http://en.wikipedia.org/wiki/User:Lupin/Monitor_my_watchlist', 'Monitor my watchlist', 'toolbox_watchlist_edits'); //document.getElementById('toolbox_filter_changes').onclick=marvin; }

window.maybeStart=function { var loc=document.location.href; if (RegExp('User:Lupin/Filter[_ ]recent[_ ]changes','i').test(loc)) { recent2.filter_badwords=true; recent2.runOnce(marvin, 1000); } else if (RegExp('User:Lupin/All[_ ]recent[_ ]changes','i').test(loc)) { recent2.filter_badwords=false; recent2.runOnce(marvin, 1000); } else if (RegExp('User:Lupin/Recent[_ ]IP[_ ]edits','i').test(loc)) { recent2.filter_anonsOnly=true; recent2.runOnce(marvin, 1000); } else if (RegExp('User:Lupin/Monitor[_ ]my[_ ]watchlist', 'i').test(loc)) { recent2.filter_watchlist=true; recent2.runOnce(marvin, 1000); } }

// adds a 'logs for this page' link to the navigation bar // if the page is a user's page, talk page or subpage, the link will go to logs for the user instead // if the page is a special page, then no link is displayed

$(function {

// get page title var pagetitleRe=/[^:]*:\/\/en\.wikipedia\.org\/(wiki\/|w\/index\.php\?title=)([^&?#]*)/; ptitle = pagetitleRe.exec(decodeURI(location.href))[2].split('_').join(' '); // if this is a user, show the logs for the user rather than the page if( (window.location.href.indexOf("User:") != -1) || (window.location.href.indexOf("User_talk:") != -1) ) { regDropSubpages = /[User|User_talk]:([^&?\/]*)[\/]?.*/; user = regDropSubpages.exec(ptitle)[1]; url = "http://en.wikipedia.org/w/index.php?title=Special%3ALog&user=" + user; } else if(window.location.href.indexOf("Special:") != -1) { // don't display link for special pages return; } else { url = "http://en.wikipedia.org/w/index.php?title=Special%3ALog&page=" + ptitle; } tabs = document.getElementById('p-tb').getElementsByTagName('ul')[0]; l = addlilink(tabs, url, "Logs", "pt-logs");

});

//

// inline style sheet to keep this whole thing self-contained: document.write('<style type="text/css">' +   ' .xdiff { width: 100%; background: white; }' +    ' .xdiff-row { width: 100%; margin: 0 0 3px 0; overflow: hidden; }' +    ' .xdiff-col { width: 49%; margin: 0; float: left; clear: none; position: relative; }' +    ' .xdiff-sign, .xdiff-outer, .xdiff-inner { display: block; margin: 0; }' +    ' .xdiff-sign { position: absolute; top: 0; left: 0; width: 2em; text-align: center; }' +    ' .xdiff-outer { padding: 0 0 0 2em; }' +    ' .xdiff-inner { overflow: auto; overflow-y: visible; width: 100%; }' +    ' .xdiff-inner.diff-addedline { font-size: 85%; background: #cfc; }' +    ' .xdiff-inner.diff-deletedline { font-size: 85%; background: #ffa; }' +    ' .xdiff-inner.diff-context { font-size: 85%; background: #eee; }' +    (!document.recalc ? '' : // IE kluge: ' * html .xdiff-inner { padding-bottom: expression(this.scrollWidth > this.offsetWidth ? "16px" : 0); }' + ' * html .xdiff-sign { top: expression((this.parentNode.clientHeight - this.offsetHeight)/2 + "px"); }') +   '<'+'/style>');

//

// onload $(maybeStart); $(addMarvin);

//

/// Local Variables: /// /// mode:c /// /// fill-prefix:"// " /// /// End: ///

$(function {    var query_prefix = "title=Special:Watchlist&action=submit&remove=1&id[]=";    //var query_prefix = "action=unwatch&title=";

if (window.location.href.indexOf("Special:Watchlist") == -1) return; var links = document.getElementById('content').getElementsByTagName('a'); for (var i = 0; i < links.length; i++) { if (links[i].href.substring(links[i].href.length-15) != '&action=history') continue; var unwatch = document.createElement('a'); unwatch.href = "/w/index.php?" + query_prefix + encodeURIComponent(links[i].title); unwatch.title = "Unwatch "+links[i].title; unwatch.appendChild(document.createTextNode("unwatch")); links[i].parentNode.insertBefore(unwatch, links[i].nextSibling); // kluge to handle case where "diff" is unlinked: var delim = links[i].previousSibling; delim = (delim.nodeType == 3 ? delim.nodeValue : ""); links[i].parentNode.insertBefore(document.createTextNode(delim.replace(/^.*diff/, "")), unwatch); } });

//Interiot's javascript edit counter if (document.title.indexOf('User:Interiot/Tool2/code.js') != -1) { mw.loader.load('https://en.wikipedia.org/w/index.php?title=User:Interiot/Tool2/code.js&action=raw&ctype=text/javascript'); }

//

title: User:49TL/monobook/old.js


text:
Talk:CCDF

— J I P | Talk 13:15, 9 October 2005 (UTC)

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: Talk:CCDF


text:
User talk:Marcsandler

G'Day
Welcome!

Hello,, and welcome to Wikipedia! Thank you for your contributions. I hope you like the place and decide to stay. Here are a few good links for newcomers: I hope you enjoy editing here and being a Wikipedian! Please sign your name on talk pages using four tildes (~~); this will automatically produce your name and the date. If you need help, check out Where to ask a question, ask me on my talk page, or place  on your talk page and someone will show up shortly to answer your questions. Again, welcome! Karmafist 13:14, 9 October 2005 (UTC)
 * The five pillars of Wikipedia
 * How to edit a page
 * Help pages
 * Tutorial
 * How to write a great article
 * Manual of Style

title: User talk:Marcsandler


text:
Vaspurakan

Vaspurakan (Վասպուրական, Western Armenian pronunciation: Vasbouragan) was the eighth province of the ancient kingdom of Armenia, which later became an independent kingdom during the Middle Ages, centered on Lake Van. Located in what is now southeastern Turkey and northwestern Iran, the region is considered to be the cradle of Armenian civilization.

Name
The name Vaspurakan is of Iranian origin. It is related of the Middle Persian word vāspuhr, meaning "senior, heir, prince". In Middle Persian, vāspuhrakān referred to the top nobility of the Sasanian Empire. In Armenian, vaspurakan was also rarely used as an adjective meaning "noble"; for example, vaspurakan gund ("army/troop of nobles"). Thus, Vaspurakan can be translated as "noble land" or "land of princes". Alternative interpretations of the name include "having a special position" or "royal domain". Armenologist Heinrich Hübschmann considered it likely that the name originated as a shortening of the koghmn Vaspurakan Gndin ("land of the army/troop of nobles") mentioned by the 7th-century historian Sebeos.

Some scholars believe that Vaspurakan is mentioned by Strabo as Basoropeda (Βασοροπέδα). Hübschmann argues that if the province was already commonly called Vaspurakan by Strabo's time (1st century BC-1st century AD), then it should also be found in the works of the early Armenian historians, but it is not mentioned by most of them. Movses Khorenatsi (traditionally dated to the 5th century) is the first to refer to the province by that name, and only on one occasion. Later Armenian historians (e.g. Łewond, Hovhannes Draskhanakerttsi, Tovma Artsruni) refer to the province more frequently, especially after the emergence of the Artsruni-ruled principality in Vaspurakan.

History

From the 9th century BC, Vaspurakan was part of Urartu. In the 6th century BC, it became part of Satrapy of Armenia. From 189 BC, it became one of Greater Armenia's provinces. Then it became part of Arsacid dynasty of Armenia. After the division of 387, it was included into Persian Armenia. In the 8th century, it fell under Arab control. Many rebellions took place in Vaspurakan. In 885, within the territory of Kingdom of Armenia, it became free.

During most of its history, it was ruled by the Ardzruni dynasty, which first managed to create a principality in the area. At its greatest extent Vaspurakan comprised the lands between Lake Van and Lake Urmia (also known as Kaputan) in 908. In 908 Gagik I of Vaspurakan was recognized King of Armenia by the Abbasid Caliph in competition to the Bagratids, but soon he was reconciled with Ashot II, who recognized him as the King of Vaspurakan. In 1021, Seneqerim Ardzruni gave Vaspurakan to the Byzantine Empire, receiving estates in Sebasteia and surroundings in exchange.

After Vaspurakan was ceded to the Byzantine Empire (Vasprakia Βασπρακία, in Byzantine Greek), it was conquered by Seljuq Turks. Later it was ruled by Ahlatshahs, Ayyubids and Sultanate of Rum successively. In the beginning of the 13th century, part of Vaspurakan was liberated by the Zakarians, but was then conquered by the Mongols, Seljuks, Kara Koyunlu, Iranian Safavids, and then by the Ottoman Turks (though Nader Shah regained it during his short lived Afsharid dynasty).

Cantons (Gavars)
Vaspurakan's territory was 40870 km2 and was divided into 35 cantons. They usually took the name of the local nakharar (canton chief) that ruled them:

Sites of interest

 * The old city of Van
 * Armenian Cathedral of the Holy Cross, former Armenian Catholicosate of Aghtamar on the Isle of Aghtamar
 * Varagavank, an Armenian monastery on the slopes of Mt. Varag (9 km. east of Van), founded by King Sennacherib-John early in his reign (1003–1024). It became the richest and most celebrated monastery of the Lake Van area.  Here, Khrimian Hayrik founded Arciv Vaspurakani (The Eagle of Vaspurakan), the first newspaper ever printed in Armenia.  The archbishop of Van resided here until the late 19th century.
 * Chapel of Dzordzor
 * The Monastery of Saint Gregory the Illuminator, near Mount Varag
 * Naregavank, a destroyed 10th-century Armenian monastery where Krikor Naregatsi is buried
 * Karmravank, a 10th-century Armenian monastery on the shores of Lake Van
 * Saint Gregory of Goms monastery, on the southern shores of Lake Van
 * Saint Thomas Monastery, near the shores of Lake Van
 * Saint Bartholomew Monastery
 * The Church of the Holy Cross at Soradir
 * Hayots Dzor (now Gürpınar plain), the valley in which the Armenian progenitor Hayk defeated the Assyrian king Bel
 * Haykaberd, the castle constructed by Hayk in Hayots Dzor
 * Plain of Avarayr
 * Saint Thaddeus Monastery
 * Saint Stepanos Monastery

Notable people

 * Khrimian Hayrik
 * Aram Manukian

title: Vaspurakan