// generic function
function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		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;
}


//////////////////////////////////////////////////////////////////////////////
// GENERIC addEvent allows JS to be linked to html elements without markup in the html
//////////////////////////////////////////////////////////////////////////////
function addEvent(elm, evType, fn,useCapture) {
    if(elm.addEventListener) {
        elm.addEventListener(evType, fn, useCapture);
        return true;
    }
    else if (elm.attachEvent) {
        var r = elm.attachEvent('on' + evType, fn);
        return r;
    } else {
        elm['on' + evType] = fn;
    }
}


///////////////////////////////////////////////////////////////////////////////////
// autoHideLabels hides a form element's label and instead displays it in the textbox
///////////////////////////////////////////////////////////////////////////////////
function textboxControl () {
    if (!document.getElementsByTagName || !document.getElementById) return;
    var inputs = document.getElementsByTagName("input");
	inputs.push = document.getElementsByTagName("textarea");
    for (var i=0, l=inputs.length; i<l; i++) {
        if (inputs[i].className.match("formbut")) {			
            var input = inputs[i];
            input.placeholder_value=input.defaultValue;
			input.onfocus = function () {
				if (this.value == this.placeholder_value) {
					this.value = "";
				}
			};
			input.onblur = function () {
				if (this.value == "") {
					this.value = this.placeholder_value;
				}
			};
        }
    }
}
addEvent(window, "load", textboxControl);


function textboxControl2 () {
    if (!document.getElementsByTagName || !document.getElementById) return;
    var inputs = document.getElementsByTagName("textarea");
    for (var i=0, l=inputs.length; i<l; i++) {
        if (inputs[i].className.match("formbut")) {			
            var input = inputs[i];
            input.placeholder_value=input.defaultValue;
			input.onfocus = function () {
				if (this.value == this.placeholder_value) {
					this.value = "";
				}
			};
			input.onblur = function () {
				if (this.value == "") {
					//alert(this.innerHTML);
					this.value = this.placeholder_value;
				}
			};
        }
    }
}
addEvent(window, "load", textboxControl2);


// used to fire to social bookmarking sites
function sets(name) {
	var url = window.location.href;
	var docname = document.title;
	switch(name){
		case "digg":
			var fireURL = "http://digg.com/submit?phase=2&url="+url+"&title="+docname;
			break;    
		case "facebook":
			var fireURL = "http://www.facebook.com/sharer.php?u="+url;
			break;
		case "reddit":
			var fireURL = "http://reddit.com/submit?url="+url;
			break;
		case "delicious":
			var fireURL = "http://del.icio.us/post?url="+url+"&title="+docname;
			break;
		case "stumbleupon":
			var fireURL = "http://www.stumbleupon.com/submit?url="+url+"&title="+docname;
			break;
		case "simpy":
			var fireURL = "http://www.simpy.com/simpy/LinkAdd.do?href="+url+"&title="+docname;
			break;
		default:
			var fireURL = "#";
	}										
	location.href = fireURL;								
}



$(document).ready(function() {			
// Preload all rollovers
$(".watchRollImg").each(function() {
	// Set the original src
	rollsrc = $(this).attr("src");
	rollON = rollsrc.replace(/.png$/ig,"_over.png");
	$("<img>").attr("src", rollON);			
});

// Navigation rollovers
$(".watchRoll").mouseover(function(){
	imgsrc = $(this).children("img").attr("src");
	matches = imgsrc.match(/_over/);
	
	// don't do the rollover if state is already ON
	if (!matches) {			
	imgsrcON = imgsrc.replace(/.png$/ig,"_over.png"); // strip off extension
	$(this).children("img").attr("src", imgsrcON);
	}
	
});
$(".watchRoll").mouseout(function(){
	$(this).children("img").attr("src", imgsrc);
});	
});


// function to load video player dynamically
function loadVid(vidID, realMed) {
	// remake swfobject call with new video ID
	window.location = "#"+vidID;
	var so = new SWFObject("swf/player.swf?paraText="+ vidID +"&amp;paraPlace=/northernireland/irish/imeallgeal/xml/video/", "BBC Sound Video Player", "404", "270", "8", "#000000");
	so.write("feature");
	
	// change the href of the realmedialink
	$("#realMedLink").attr('href', realMed); 
}

// if page has been loaded from a bookmark, the vid file may not be right. So change it
function reloadVid(vidID) {
	bitAfterHash = window.location.href.split('#');
	if(vidID!=bitAfterHash[1]) {
		loadVid(bitAfterHash[1]);
	}
}	

$(document).ready(function() {
	if(document.getElementById('embedlink')){
		$("a", document.getElementById('embedlink')).toggle(
			function () { 
				$(".embedcode").show();					
			},
			function () { 
				$(".embedcode").hide();
			}
		);
	}
	
});