User:Segjin/monobook.js: Difference between revisions

From Wiki
Jump to navigation Jump to search
Segjin (talk | contribs)
mNo edit summary
Segjin (talk | contribs)
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" : "");
 
    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;
    var dc = document.cookie;
} else {
    var prefix = name + "=";
begin += 2;
    var begin = dc.indexOf("; " + prefix);
}


var end = document.cookie.indexOf(";", begin);
    if (begin == -1)
    {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    }
    else
    {
        begin += 2;
    }


if (end == -1) {
    var end = document.cookie.indexOf(";", begin);
end = dc.length;
    if (end == -1)
}
    {
        end = dc.length;
    }


return unescape(dc.substring(begin + prefix.length, end));
    return unescape(dc.substring(begin + prefix.length, end));
}
}


function deleteCookie(name, path, domain) {
function deleteCookie(name, path, domain) {
if (getCookie(name)) {
    if (getCookie(name)) {
document.cookie = name + "=" + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-7000:00:01 GMT";
        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 objSearch = document.getElementById("p-search");
var div = objSearch.getElementsByTagName("div")[0];
  var header = objSearch.getElementsByTagName("h5")[0];
var indicator;
  var div = objSearch.getElementsByTagName("div")[0];
 
  var indicator;


if (div.style.display == "none") {
  if (div.style.display == "none") {
div.style.display = "block";
      div.style.display = "block";
indicator = "hide";
      indicator = "hide";
} else {
  } else {
div.style.display = "none";
      div.style.display = "none";
indicator = "show";
      indicator = "show";
}
  }


setSearchIndicator(indicator);
  setSearchIndicator(indicator);  
}
}


function setSearchIndicator(indicator) {
function setSearchIndicator(indicator) {
var navLink = document.getElementById("searchToggler");


if (navLink) {
  var navLink = document.getElementById("searchToggler");
navLink.innerHTML = indicator;
 
} else {
  if (navLink) {
var objSearch = document.getElementById("p-search");
      navLink.innerHTML = indicator;
var header = objSearch.getElementsByTagName("h5")[0];
  } else {
header.innerHTML += ("&nbsp;<span id='toggleSearch'>[<a href='javascript:toggleSearch();'><span id='searchToggler'>" + indicator + "</span></a>]</span>");
 
}
      var objSearch = document.getElementById("p-search");
      var header = objSearch.getElementsByTagName("h5")[0];
 
      header.innerHTML += ("&nbsp;<span id='toggleSearch'>[<a href='javascript:toggleSearch();'><span id='searchToggler'>" +  
                          indicator + "</span></a>]</span>");
  }


setCookie("searchIndicator", indicator);
  // setCookie("searchIndicator", indicator);
}
}


function GetText(obj) {
function GetText(obj) {
 
  if (obj.title)
if (obj.title)  
      return obj.title;
return obj.title;
  else if (obj.alt)
else if (obj.alt)  
      return obj.alt;
return obj.alt;  
  else if (obj.innerText)
else if (obj.innerText)  
      return obj.innerText;
return obj.innerText;  
  else if (obj.textContent)
else if (obj.textContent)  
      return obj.textContent
return obj.textContent
  else
else  
      return obj.innerHTML;
return obj.innerHTML;
}
}


function ChildCount(obj) {
function ChildCount(obj) {
var count = 0;
  var count = 0;
 
 
if (obj.children) {
  if (obj.children) {
count = obj.children.length;
      count = obj.children.length;
} else if (obj.childNodes) {
  }
for (var i = 0; i < obj.childNodes.length; i++) {
  else if (obj.childNodes) {
if (obj.childNodes[i].nodeType == 1) {
      for (var i = 0; i < obj.childNodes.length; i++) {
count++;
        if (obj.childNodes[i].nodeType == 1) {
}
            count++;
}
        }
}
      }
  }


return count;
  return count;
}
}


function SetupSearch() {
function SetupSearch() {
toggleSearch()
  //var searchIndicator = getCookie("searchIndicator");
 
  //if (!searchIndicator) {
      toggleSearch();
  //} else {
  //  setSearchIndicator(searchIndicator);
  //}
}
}


function MoveFooter() {
function MoveFooter() {
var footer = document.getElementById('footer');
  var footer = document.getElementById('footer');
var content = document.getElementById('column-content');
  var content = document.getElementById('column-content');
 
footer.parentNode.removeChild(footer);
  footer.parentNode.removeChild(footer);
content.appendChild(footer);
  content.appendChild(footer);
 
}
}


function MoveActions() {
function MoveActions() {
var contents = document.getElementById('column-content');
  var contents = document.getElementById('column-content');
var tabs = document.getElementById('p-cactions');
  var tabs     = document.getElementById('p-cactions');
 
tabs.parentNode.removeChild(tabs);
  tabs.parentNode.removeChild (tabs);
contents.insertBefore(tabs, contents.firstChild);
  contents.insertBefore(tabs, contents.firstChild);
}
}


function MoveLogo() {
function MoveLogo() {
var logo = document.getElementById('p-logo');
  var logo = document.getElementById('p-logo');
var content = document.getElementsByTagName('BODY')[0];
  var content = document.getElementsByTagName('BODY')[0];
 
logo.parentNode.removeChild(logo);
  logo.parentNode.removeChild(logo);
content.insertBefore(logo, content.firstChild);
  content.insertBefore(logo, content.firstChild);
}
}


function AddBottomImage() {
function AddBottomImage() {
var footer = document.getElementById('globalWrapper');
  var footer = document.getElementById('globalWrapper');
var footerImage = document.getElementById('footerImage');
  var footerImage = document.getElementById('footerImage');


if (!footerImage) {
  if (!footerImage) {
footer.innerHTML += "<img id='footerImage' src='/images/land2.jpg' width='799' height='144' />";
      footer.innerHTML += "<img id='footerImage' src='/images/land2.jpg' width='799' height='144' />";
}
  }
}
}


function ModifyCactions() {
function ModifyCactions() {
var div = document.getElementById('p-cactions');
  var div = document.getElementById('p-cactions');
var li = div.getElementsByTagName('li');
  var li = div.getElementsByTagName('li');
var spacer = "<img src='/images/star_spacer.gif' width='30' height='20' border='0'>";
  var spacer = "<img src='/images/star_spacer.gif' width='30' height='20' border='0'>";


if (li) {
  if (li) {
if (li.length) {
      if (li.length) {
var i;
        var i;
for (i = 0; i < (li.length - 1); i++) {
        for (i = 0; i < (li.length - 1); i++) {
li[i].innerHTML = li[i].innerHTML + spacer;
            li[i].innerHTML = li[i].innerHTML + spacer;
}
        }
}
      }
}
  }
}
}


function MangleImages() {
function MangleImages() {
var images = document.getElementsByTagName('IMG');
  var images = document.getElementsByTagName('IMG');
 
  if (images) {
if (images) {
      if (images.length) {
if (images.length) {
        for (var i = 0; i < images.length; i++) {
for (var i = 0; i < images.length; i++) {
            MangleImage(images[i]);
MangleImage(images[i]);
        }
}
      } else {
} else {
        MangleImage(images);
MangleImage(images);
      }
}
  }
}
}
}


function MangleImage(image) {
function MangleImage(image) {
if (image) {
  if (image) {
if (image.alt && (image.alt.length > 0) && (!image.title || image.title.length == 0)) {
      if (image.alt && (image.alt.length > 0) && (!image.title || image.title.length == 0)) {
image.title = image.alt;
        image.title = image.alt;
}
      }
}
  }
}
}


function MangleLinks() {
function MangleLinks() {
var links = document.getElementsByTagName('A');
  var links = document.getElementsByTagName('A');
 
  if (links) {
if (links) {
      if (links.length) {
if (links.length) {
        for (var i = 0; i < links.length; i++) {
for (var i = 0; i < links.length; i++) {
            MangleLink(links[i]);
MangleLink(links[i]);
        }
}
      } else {
} else {
        MangleLink(links);
MangleLink(links);
      }
}
  }
}
}
}


function MangleLink(link) {
function MangleLink(link) {
var statusText = "";


if (link) {
  var statusText = "";
//link.className = "link";  
 
link.onmouseover = function() {
  if (link) {
hashTable[link] = new Array(link.style.color);
      //link.className = "link";
link.style.color = '#FFFF99';
 
      link.onmouseover = function() {  


if (ChildCount(link) == 0) {
        hashTable[link] = new Array( link.style.color );
statusText = link.title = GetText(link);
        link.style.color = '#FFFF99';
}


window.status = statusText;
        if (ChildCount(link) == 0) {
return true;
            statusText = link.title = GetText(link);
};
        }


link.onmouseout = function() {
        window.status = statusText;
if (hashTable[link] && hashTable[link].length && hashTable[link].length > 0) {
        return true;
link.style.color = hashTable[link][0];
      };
hashTable[link] = null;
}


window.status = '';
      link.onmouseout = function() {
return true;
};
}
}


function MoveElement(elem, parent, before) {
        if (hashTable[link] && hashTable[link].length && hashTable[link].length > 0) {
if (before == null) {
            link.style.color = hashTable[link][0];
before = parent.firstChild;
            hashTable[link] = null;
}
        }
elem.parentNode.removeChild(elem);
parent.insertBefore(elem, before);
}


function MoveElements() {
        window.status = '';
var global = document.getElementById('globalWrapper');
        return true;
var logo = document.getElementById('p-logo');
      };
var columnContent = document.getElementById('column-content');
var columnOne = document.getElementById('column-one');
  }
var actions = document.getElementById('p-cactions');
var footer = document.getElementById('footer');
var table;
var table2;
var row;
var cell;
// --------------------------
// Table 2
// --------------------------
table2 = document.createElement('table');
table2.setAttribute('id', 'table-content');
table2.setAttribute('width', '100%');
table2.appendChild(document.createElement('tbody'));
table2.tBodies[0].appendChild(document.createElement('tr'));
// Row 2, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-column-one');
cell.setAttribute('valign', 'top');
table2.tBodies[0].rows[0].appendChild(cell);
MoveElement(columnOne, cell, null);
// Row 2, Cell 1
cell = document.createElement('td');
cell.setAttribute('id', 'cell-column-content');
cell.setAttribute('valign', 'top');
cell.setAttribute('width', '100%');
table2.tBodies[0].rows[0].appendChild(cell);
MoveElement(columnContent, cell, null);
// --------------------------
// Table 1
// --------------------------
table = document.createElement('table');
table.setAttribute('id', 'table-layout');
table.setAttribute('width', '100%');
table.appendChild(document.createElement('tbody'));
for (var i = 0; i < 5; i++)
table.tBodies[0].appendChild(document.createElement('tr'));
// Row 0, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-logo');
cell.setAttribute('width', '100%');
cell.setAttribute('valign', 'top');
table.tBodies[0].rows[0].appendChild(cell);
MoveElement(logo, cell, null);
// Row 1, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-actions');
cell.setAttribute('width', '100%');
cell.setAttribute('valign', 'top');
table.tBodies[0].rows[1].appendChild(cell);
MoveElement(actions, cell, null);
// Row 2, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-innertable');
cell.setAttribute('width', '100%');
cell.setAttribute('valign', 'top');
cell.setAttribute('align', 'left');
table.tBodies[0].rows[2].appendChild(cell);
cell.appendChild(table2);
// Row 3, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-footer');
cell.setAttribute('width', '100%');
cell.setAttribute('valign', 'top');
table.tBodies[0].rows[3].appendChild(cell);
MoveElement(footer, cell, null);
// Row 4, Cell 0
cell = document.createElement('td');
cell.setAttribute('id', 'cell-footer-image');
cell.setAttribute('width', '100%');
cell.setAttribute('valign', 'top');
table.tBodies[0].rows[4].appendChild(cell);
cell.innerHTML = "<img id='footerImage' src='/images/land2.jpg' width='799' height='144' />";
global.insertBefore(table, global.firstChild);
}
}


function PerformLoad() {  
function PerformLoad() {
MoveElements();  
  MoveActions();
ModifyCactions();
  MoveLogo();
SetupSearch();
  SetupSearch();
MangleLinks();
  AddBottomImage();
MangleImages();
  ModifyCactions();
  MangleLinks();
  MangleImages();
}
}


if (window.addEventListener) {  
if (window.addEventListener) {
window.addEventListener("load", PerformLoad, false);
  window.addEventListener("load", PerformLoad, false);
} else if (window.attachEvent) {  
} else if (window.attachEvent) {
window.attachEvent("onload", PerformLoad);
  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 += ("&nbsp;<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);
}