﻿/*
*This script makes zebra stipes (grey background for alternate table rows).
*Script courtesy of http://www.alistapart.com/articles/zebratables 
*/

var id ="";

/*
*this function is needed to work around 
* a bug in IE related to element attributes
*/
function hasClass(obj) {
	var result = false;
	if (obj.getAttributeNode("class") != null) {
		result = obj.getAttributeNode("class").value;
	}
	return result;
}   

function stripe(id) {
	/*
	*the flag we'll use to keep track of 
	*whether the current row is odd or even
	*/
    var even = false;
  
	/*
	*if arguments are provided to specify the colours
	*of the even & odd rows, then use the them;
	*otherwise use the following defaults:
	*/
    var evenColor = arguments[1] ? arguments[1] : "#F2E5DA";
    var oddColor = arguments[2] ? arguments[2] : "#F9F9F7";
  
	/*
	*obtain a reference to the desired table
	*if no such table exists, abort
	*/
    var table = document.getElementById(id);

    if (!table) { return; }
    
    // by definition, tables can have more than one tbody
    // element, so we'll have to get the list of child
    // &lt;tbody&gt;s 
    var tbodies = table.getElementsByTagName("tbody");

	/*
	*and iterate through them...
	*/
    for (var h = 0; h < tbodies.length; h++) { 
		/*
		*find all the &lt;tr&gt; elements... 
		 */
		var trs = tbodies[h].getElementsByTagName("tr");
      
		/*
		*and iterate through them
		*/
		for (var i = 0; i < trs.length; i++) {

		/*
		*avoid rows that have a class attribute
		*or backgroundColor style
		*/
        if (! hasClass(trs[i]) && ! trs[i].style.backgroundColor) {
			/*
			*get all the cells in this row...
			*/
			var tds = trs[i].getElementsByTagName("td");
        
			/*
			*and iterate through them...
			*/
			for (var j = 0; j < tds.length; j++) {
        
	            var mytd = tds[j];

				/*
				*avoid cells that have a class attribute
				* or backgroundColor style
				*/
	            if (! hasClass(mytd) && ! mytd.style.backgroundColor) {
					mytd.style.backgroundColor = even ? evenColor : oddColor
	            }
			}
        }
		/*
		*flip from odd to even, or vice-versa
		*/
        even =  ! even;
      }
    }
  }
  
function fn_main() {
	if (!document.getElementById) {	return false; }		//Disable script for older browsers.
	var tableids = document.getElementsByTagName("table");
	for (i=0; i<tableids.length; i++)
	{
		tableid = tableids[i].getAttribute("id");
		if(tableid !== 'id_thumbnails_table') {
			stripe(tableid);
		}
	}

	if (typeof val_other_onload == "function") {
		val_other_onload();
	}
}
							
var val_other_onload = window.onload;
window.onload = fn_main;