// JavaScript Document

//ADD EVENT TO AN OBJECT
var addEventSimple = function(el, evt, fn) {
	if (el.addEventListener) {
		el.addEventListener(evt, fn, false);
	} else if (el.attachEvent) {
		el.attachEvent('on' + evt, fn);
	}
};


//UTILITIES
var addEvent = addEventSimple;

// Add/remove/has class functions from http://snipplr.com/view/3561/addclass-removeclass-hasclass/
var hasClass = function(ele,cls) {
  return ele.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'));
}

var addClass = function(ele,cls) {
  if (!hasClass(ele,cls)) {
    ele.className += " " + cls;
  }
}

var removeClass = function(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className = ele.className.replace(reg,' ');
  }
}

// getElementsByClass function from ddiaz
var getElementsByClass = function(searchClass,node,tag) {
	var classElements = [];
	if (!node) {
		node = document;
	}
	if (!tag) {
		tag = '*';
	}
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if (pattern.test(els[i].className)) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
};


//TOGGLE STAR IMAGE
img1 = "images/star_yellow.png"; 
img2 = "images/star_clear.png"; 
function toggleStar(c_img) { 
	//BOOK ID
		var book_id = c_img.name.substr(4);
		//alert (book_id);
		var action; //INDICATES WHETHER CLEARING OR MARKING A STAR YELLOW
	//TOGGLE STAR IMAGE
		if (c_img.src.indexOf(img1)!= -1) {
			c_img.src = img2;
			action = 'clear_star';
		}
		else {
			c_img.src = img1; 
			action = 'yellow_star';
		}
	//MAKE AJAX
		if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
		  xmlhttp=new XMLHttpRequest();
		}
		else {// code for IE6, IE5
		  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
		xmlhttp.open("GET","star_save_to_db.php?id=" + book_id + "&action=" + action,true);
		xmlhttp.send();	
}
