User:Segjin/monobook.js: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
mNo edit summary |
||
| Line 2: | Line 2: | ||
function setCookie(name, value, expires, path, domain, secure) { | function setCookie(name, value, expires, path, domain, secure) { | ||
document.cookie= name + "=" + escape(value) + | |||
((expires) ? "; expires=" + expires.toGMTString() : "") + | |||
((path) ? "; path=" + path : "") + | |||
((domain) ? "; domain=" + domain : "") + | |||
((secure) ? "; secure" : ""); | |||
} | } | ||
function getCookie(name) { | function getCookie(name) { | ||
var dc = document.cookie; | |||
var prefix = name + "="; | |||
var begin = dc.indexOf("; " + prefix); | |||
if (begin == -1) | |||
{ | |||
begin = dc.indexOf(prefix); | |||
if (begin != 0) return null; | |||
} | |||
else | |||
{ | |||
begin += 2; | |||
} | |||
var end = document.cookie.indexOf(";", begin); | |||
if (end == -1) | |||
{ | |||
end = dc.length; | |||
} | |||
return unescape(dc.substring(begin + prefix.length, end)); | |||
} | } | ||
function deleteCookie(name, path, domain) { | function deleteCookie(name, path, domain) { | ||
if (getCookie(name)) { | |||
document.cookie = name + "=" + | |||
((path) ? "; path=" + path : "") + | |||
((domain) ? "; domain=" + domain : "") + | |||
"; expires=Thu, 01-Jan-70 00:00:01 GMT"; | |||
} | |||
} | } | ||
function toggleSearch() { | function toggleSearch() { | ||
var objSearch = document.getElementById("p-search"); | |||
var header = objSearch.getElementsByTagName("h5")[0]; | |||
var div = objSearch.getElementsByTagName("div")[0]; | |||
var indicator; | |||
if (div.style.display == "none") { | |||
div.style.display = "block"; | |||
indicator = "hide"; | |||
} else { | |||
div.style.display = "none"; | |||
indicator = "show"; | |||
} | |||
setSearchIndicator(indicator); | |||
} | } | ||
function setSearchIndicator(indicator) { | function setSearchIndicator(indicator) { | ||
var navLink = document.getElementById("searchToggler"); | |||
if (navLink) { | |||
navLink.innerHTML = indicator; | |||
} else { | |||
var objSearch = document.getElementById("p-search"); | |||
var header = objSearch.getElementsByTagName("h5")[0]; | |||
header.innerHTML += (" <span id='toggleSearch'>[<a href='javascript:toggleSearch();'><span id='searchToggler'>" + | |||
indicator + "</span></a>]</span>"); | |||
} | |||
// setCookie("searchIndicator", indicator); | |||
} | } | ||
function GetText(obj) { | function GetText(obj) { | ||
if (obj.title) | |||
return obj.title; | |||
else if (obj.alt) | |||
return obj.alt; | |||
else if (obj.innerText) | |||
return obj.innerText; | |||
else if (obj.textContent) | |||
return obj.textContent | |||
else | |||
return obj.innerHTML; | |||
} | } | ||
function ChildCount(obj) { | function ChildCount(obj) { | ||
var count = 0; | |||
if (obj.children) { | |||
count = obj.children.length; | |||
} | |||
else if (obj.childNodes) { | |||
for (var i = 0; i < obj.childNodes.length; i++) { | |||
if (obj.childNodes[i].nodeType == 1) { | |||
count++; | |||
} | |||
} | |||
} | |||
return count; | |||
} | } | ||
function SetupSearch() { | function SetupSearch() { | ||
//var searchIndicator = getCookie("searchIndicator"); | |||
//if (!searchIndicator) { | |||
toggleSearch(); | |||
//} else { | |||
// setSearchIndicator(searchIndicator); | |||
//} | |||
} | } | ||
function MoveFooter() { | function MoveFooter() { | ||
var footer = document.getElementById('footer'); | |||
var content = document.getElementById('column-content'); | |||
footer.parentNode.removeChild(footer); | |||
content.appendChild(footer); | |||
} | } | ||
function MoveActions() { | function MoveActions() { | ||
var contents = document.getElementById('column-content'); | |||
var tabs = document.getElementById('p-cactions'); | |||
tabs.parentNode.removeChild (tabs); | |||
contents.insertBefore(tabs, contents.firstChild); | |||
} | } | ||
function MoveLogo() { | function MoveLogo() { | ||
var logo = document.getElementById('p-logo'); | |||
var content = document.getElementsByTagName('BODY')[0]; | |||
logo.parentNode.removeChild(logo); | |||
content.insertBefore(logo, content.firstChild); | |||
} | } | ||
function AddBottomImage() { | function AddBottomImage() { | ||
var footer = document.getElementById('globalWrapper'); | |||
var footerImage = document.getElementById('footerImage'); | |||
if (!footerImage) { | |||
footer.innerHTML += "<img id='footerImage' src='/images/land2.jpg' width='799' height='144' />"; | |||
} | |||
} | } | ||
function ModifyCactions() { | function ModifyCactions() { | ||
var div = document.getElementById('p-cactions'); | |||
var li = div.getElementsByTagName('li'); | |||
var spacer = "<img src='/images/star_spacer.gif' width='30' height='20' border='0'>"; | |||
if (li) { | |||
if (li.length) { | |||
var i; | |||
for (i = 0; i < (li.length - 1); i++) { | |||
li[i].innerHTML = li[i].innerHTML + spacer; | |||
} | |||
} | |||
} | |||
} | } | ||
function MangleImages() { | function MangleImages() { | ||
var images = document.getElementsByTagName('IMG'); | |||
if (images) { | |||
if (images.length) { | |||
for (var i = 0; i < images.length; i++) { | |||
MangleImage(images[i]); | |||
} | |||
} else { | |||
MangleImage(images); | |||
} | |||
} | |||
} | } | ||
function MangleImage(image) { | function MangleImage(image) { | ||
if (image) { | |||
if (image.alt && (image.alt.length > 0) && (!image.title || image.title.length == 0)) { | |||
image.title = image.alt; | |||
} | |||
} | |||
} | } | ||
function MangleLinks() { | function MangleLinks() { | ||
var links = document.getElementsByTagName('A'); | |||
if (links) { | |||
if (links.length) { | |||
for (var i = 0; i < links.length; i++) { | |||
MangleLink(links[i]); | |||
} | |||
} else { | |||
MangleLink(links); | |||
} | |||
} | |||
} | } | ||
function MangleLink(link) { | function MangleLink(link) { | ||
var statusText = ""; | |||
if (link) { | |||
//link.className = "link"; | |||
link.onmouseover = function() { | |||
hashTable[link] = new Array( link.style.color ); | |||
link.style.color = '#FFFF99'; | |||
if (ChildCount(link) == 0) { | |||
statusText = link.title = GetText(link); | |||
} | |||
window.status = statusText; | |||
return true; | |||
}; | |||
link.onmouseout = function() { | |||
if (hashTable[link] && hashTable[link].length && hashTable[link].length > 0) { | |||
link.style.color = hashTable[link][0]; | |||
hashTable[link] = null; | |||
} | |||
} | |||
window.status = ''; | |||
return true; | |||
}; | |||
} | |||
} | } | ||
function PerformLoad() { | function PerformLoad() { | ||
MoveActions(); | |||
MoveLogo(); | |||
SetupSearch(); | |||
AddBottomImage(); | |||
ModifyCactions(); | |||
MangleLinks(); | |||
MangleImages(); | |||
} | } | ||
if (window.addEventListener) { | if (window.addEventListener) { | ||
window.addEventListener("load", PerformLoad, false); | |||
} else if (window.attachEvent) { | } else if (window.attachEvent) { | ||
window.attachEvent("onload", PerformLoad); | |||
} | } | ||
Revision as of 06:31, 11 December 2005
var hashTable = new Object();
function setCookie(name, value, expires, path, domain, secure) {
document.cookie= name + "=" + escape(value) +
((expires) ? "; expires=" + expires.toGMTString() : "") +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
((secure) ? "; secure" : "");
}
function getCookie(name) {
var dc = document.cookie;
var prefix = name + "=";
var begin = dc.indexOf("; " + prefix);
if (begin == -1)
{
begin = dc.indexOf(prefix);
if (begin != 0) return null;
}
else
{
begin += 2;
}
var end = document.cookie.indexOf(";", begin);
if (end == -1)
{
end = dc.length;
}
return unescape(dc.substring(begin + prefix.length, end));
}
function deleteCookie(name, path, domain) {
if (getCookie(name)) {
document.cookie = name + "=" +
((path) ? "; path=" + path : "") +
((domain) ? "; domain=" + domain : "") +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}
function toggleSearch() {
var objSearch = document.getElementById("p-search");
var header = objSearch.getElementsByTagName("h5")[0];
var div = objSearch.getElementsByTagName("div")[0];
var indicator;
if (div.style.display == "none") {
div.style.display = "block";
indicator = "hide";
} else {
div.style.display = "none";
indicator = "show";
}
setSearchIndicator(indicator);
}
function setSearchIndicator(indicator) {
var navLink = document.getElementById("searchToggler");
if (navLink) {
navLink.innerHTML = indicator;
} else {
var objSearch = document.getElementById("p-search");
var header = objSearch.getElementsByTagName("h5")[0];
header.innerHTML += (" <span id='toggleSearch'>[<a href='javascript:toggleSearch();'><span id='searchToggler'>" +
indicator + "</span></a>]</span>");
}
// setCookie("searchIndicator", indicator);
}
function GetText(obj) {
if (obj.title)
return obj.title;
else if (obj.alt)
return obj.alt;
else if (obj.innerText)
return obj.innerText;
else if (obj.textContent)
return obj.textContent
else
return obj.innerHTML;
}
function ChildCount(obj) {
var count = 0;
if (obj.children) {
count = obj.children.length;
}
else if (obj.childNodes) {
for (var i = 0; i < obj.childNodes.length; i++) {
if (obj.childNodes[i].nodeType == 1) {
count++;
}
}
}
return count;
}
function SetupSearch() {
//var searchIndicator = getCookie("searchIndicator");
//if (!searchIndicator) {
toggleSearch();
//} else {
// setSearchIndicator(searchIndicator);
//}
}
function MoveFooter() {
var footer = document.getElementById('footer');
var content = document.getElementById('column-content');
footer.parentNode.removeChild(footer);
content.appendChild(footer);
}
function MoveActions() {
var contents = document.getElementById('column-content');
var tabs = document.getElementById('p-cactions');
tabs.parentNode.removeChild (tabs);
contents.insertBefore(tabs, contents.firstChild);
}
function MoveLogo() {
var logo = document.getElementById('p-logo');
var content = document.getElementsByTagName('BODY')[0];
logo.parentNode.removeChild(logo);
content.insertBefore(logo, content.firstChild);
}
function AddBottomImage() {
var footer = document.getElementById('globalWrapper');
var footerImage = document.getElementById('footerImage');
if (!footerImage) {
footer.innerHTML += "<img id='footerImage' src='/images/land2.jpg' width='799' height='144' />";
}
}
function ModifyCactions() {
var div = document.getElementById('p-cactions');
var li = div.getElementsByTagName('li');
var spacer = "<img src='/images/star_spacer.gif' width='30' height='20' border='0'>";
if (li) {
if (li.length) {
var i;
for (i = 0; i < (li.length - 1); i++) {
li[i].innerHTML = li[i].innerHTML + spacer;
}
}
}
}
function MangleImages() {
var images = document.getElementsByTagName('IMG');
if (images) {
if (images.length) {
for (var i = 0; i < images.length; i++) {
MangleImage(images[i]);
}
} else {
MangleImage(images);
}
}
}
function MangleImage(image) {
if (image) {
if (image.alt && (image.alt.length > 0) && (!image.title || image.title.length == 0)) {
image.title = image.alt;
}
}
}
function MangleLinks() {
var links = document.getElementsByTagName('A');
if (links) {
if (links.length) {
for (var i = 0; i < links.length; i++) {
MangleLink(links[i]);
}
} else {
MangleLink(links);
}
}
}
function MangleLink(link) {
var statusText = "";
if (link) {
//link.className = "link";
link.onmouseover = function() {
hashTable[link] = new Array( link.style.color );
link.style.color = '#FFFF99';
if (ChildCount(link) == 0) {
statusText = link.title = GetText(link);
}
window.status = statusText;
return true;
};
link.onmouseout = function() {
if (hashTable[link] && hashTable[link].length && hashTable[link].length > 0) {
link.style.color = hashTable[link][0];
hashTable[link] = null;
}
window.status = '';
return true;
};
}
}
function PerformLoad() {
MoveActions();
MoveLogo();
SetupSearch();
AddBottomImage();
ModifyCactions();
MangleLinks();
MangleImages();
}
if (window.addEventListener) {
window.addEventListener("load", PerformLoad, false);
} else if (window.attachEvent) {
window.attachEvent("onload", PerformLoad);
}