User:Eleazaros/tagger.js

From Lotro-Wiki.com
Jump to navigation Jump to search

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
// <pre>
//add a <li> mark to the tabs menu.
function addlimenu(tabs, name, id, href, position) {
    var na, mn;
    var li;

    if (!id)  id = name;
    if (!href) href = '#';

    na = document.createElement("a");
    na.appendChild(document.createTextNode(name));
    na.href = href;
    mn = document.createElement("ul");
    li = document.createElement("li");
    li.appendChild(na);
    li.appendChild(mn);
    if (id) li.id = id;
    li.className = 'tabmenu';

    if (position) {
        tabs.insertBefore(li, position);
    } else {
        tabs.appendChild(li);
    }

    return mn; 
}
// </pre>

// <pre>
// Function to add a popup list of stubs to a new tab marker called "tags".  
// Just click the stub name and it adds it to the page you are editing.  
// (must be editing the page to do this.).  
// Yes, you can add multiple tags to a single page.
function addStubTag(n) {
	text = document.editform.wpTextbox1.value;
	date = new Date();

	switch(n) {
	case 'Cleanup':
		text = '{' + '{' + 'Stub/Cleanup' + '}' + '}\n\n' + text;
		summary='Added Cleanup request stub to page.';
		break;
	case 'Quest':
		text = '{' + '{' + 'Stub/Quest' + '}' + '}\n\n' + text;
		summary='Added Quest stub to page.';
		break;
	case 'Item':
		text = '{' + '{' + 'Stub/Item' + '}' + '}\n\n' + text;
		summary='Added Item stub to page.';
		break;
	case 'NPC':
		text = '{' + '{' + 'Stub/NPC' + '}' + '}\n\n' + text;
		summary='Added NPC stub to page.';
		break;
	case 'Mob':
		text = '{' + '{' + 'Stub/Mob' + '}' + '}\n\n' + text;
		summary='Added Monster stub to page.';
		break;
	case 'Location':
		text = '{' + '{' + 'Stub/Location' + '}' + '}\n\n' + text;
		summary='Added Location stub to page.';
		break;
	case 'Kinship':
		text = '{' + '{' + 'Stub/Kinship' + '}' + '}\n\n' + text;
		summary='Added Kinship stub to page.';
		break;
	case 'Player':
		text = '{' + '{' + 'Stub/Player' + '}' + '}\n\n' + text;
		summary='Added Player stub to page.';
		break;
	case 'Delete':
		text = '{' + '{' + 'Delete Page' + '}' + '}\n\n' + text;
		summary='Added Delete Page stub to page.';
		break;
	case 'Lore':
		text = '{' + '{' + 'Stub/Lore' + '}' + '}\n\n' + text;
		summary='Added Lore stub to page.';
		break;
	case 'Accuracy':
		text = '{' + '{' + 'Stub/Accuracy' + '}' + '}\n\n' + text;
		summary='Added Accuracy validation request stub to page.';
		break;
	case 'Category':
		text = '{' + '{' + 'Stub/Category' + '}' + '}\n\n' + text;
		summary='Added Category stub to page.';
		break;
	case 'Expansion':
		text = '{' + '{' + 'Stub/Expansion' + '}' + '}\n\n' + text;
		summary='Added Expansion information stub to page.';
		break;
	case 'Other':
		text = '{' + '{' + 'Stub/Other' + '}' + '}\n\n' + text;
		summary='Added Other type stub to page.';
		break;
	}
	document.editform.wpSummary.value = summary;
	document.editform.wpTextbox1.value = text;
}

// Function to actually insert the tags on a page from the "tags" tab menu.
function addPageTag() {
	if ( document.editform ) {
		var tabs = document.getElementById( 'p-cactions' ).getElementsByTagName( 'ul' )[0];
		addlimenu(tabs, "tags", "tags" );
		addPortletLink("tags", "javascript:addStubTag('Cleanup')", "Cleanup", "Cleanup", "Add Cleanup stub", "");
		addPortletLink("tags", "javascript:addStubTag('Quest')", "Quest", "Quest", "Add Quest stub", "");
		addPortletLink("tags", "javascript:addStubTag('Item')", "Item", "Item", "Add  Item stub", "");
		addPortletLink("tags", "javascript:addStubTag('NPC')", "NPC", "NPC", "Add NPC stub", "");
		addPortletLink("tags", "javascript:addStubTag('Mob')", "Mob", "Mob", "Add Mob stub", "");
		addPortletLink("tags", "javascript:addStubTag('Location')", "Location", "Location", "Add Location stub", "");
		addPortletLink("tags", "javascript:addStubTag('Kinship')", "Kinship", "Kinship", "Add Kinship stub", "");
		addPortletLink("tags", "javascript:addStubTag('Player')", "Player", "Player", "Add Player stub", "");
		addPortletLink("tags", "javascript:addStubTag('Delete')", "Delete", "Delete", "Add Delete stub", "");
		addPortletLink("tags", "javascript:addStubTag('Lore')", "Lore", "Lore", "Add Lore stub", "");
		addPortletLink("tags", "javascript:addStubTag('Accuracy')", "Accuracy", "Accuracy", "Add Accuracy stub", "");
		addPortletLink("tags", "javascript:addStubTag('Expansion')", "Expansion", "Expansion", "Add Expansion stub", "");
		addPortletLink("tags", "javascript:addStubTag('Other')", "Other", "Other", "Add Other type stub", "");
	}
}
// </pre>