function zc_click(idNum) {
	var txt, mov
	txt = document.getElementById('zc_code_' + idNum).innerHTML
	mov = document.getElementById("ZeroClipboard_" + idNum)
	mov.setText(txt)

	//zc_msg(txt + 'copied. Movie ' + idNum + ' clicked.') // copied message
	document.getElementById('zc_status_' + idNum).innerHTML = 'copied!';
}

function zc_events(idNum, eventName, args) {
	var style
	if(eventName=='mouseDown') {  // clicked down on the button
	   zc_click(idNum)
	   style = document.getElementById('zc_code_'+idNum).style
	   style['backgroundColor'] = '#e1e1e1'
	}
	else if(eventName=='mouseUp') {  // Clicked up on the button
	   style = document.getElementById('zc_code_'+idNum).style
	   if (document.getElementById('zc_status_'+idNum).innerHTML != 'copied!')
	   	style['backgroundColor'] = '#f1f1f1'
	}
	else if(eventName=='complete') {
	   my_complete(idNum, args)
	}
}

function my_complete(idNum, text) {
	uri = document.getElementById('zc_url_' + idNum).value
	window.open(uri, '_blank')
}

function zc_onload() {
	var func = zc_start
	if(!document.getElementById) { // Old browser
	   return
	}
	//zc_load_notice('on')
	if(window.addEventListener && !window.opera) {
	   // Firefox 1.5+, Gecko-1.0.1+, Mozilla, Konqueror, Safari, iCab
	   window.addEventListener('load', func, false)
	}
	else if(window.attachEvent) {
	   // Microsoft IE 5+, Opera 8.0+
   	   window.attachEvent('onload', func)
	}
	else { // Incomplete solution
	   // Add func to any existing window.onload.
	   // Any later inconsiderate window.onload can wipe us out.
	   var o=window.onload
	   window.onload = function() { !o ? func : o();func() }
	}
}

function zc_start() {
	var idNum // integer id of movie, one movie per DOM element button. Start at 1.
	// Reset input boxes and textarea
	//zc_setDefaultValues('zc_demo')
	// Setup a movie over each button link
	for(idNum=1; idNum<=ZeroClipboard.total_buttons; ++idNum) {
	   zc_setMovie(idNum)
	}
	// Remove the loading notice
	//zc_load_notice('off')
}

function zc_load_notice(turn) {
	var loadNotice = document.getElementById('zc_loading')
	if(turn == 'on') {
	   // Turn notice on
	   loadNotice.style.border = '2px solid red'
	   loadNotice.innerHTML = "Please wait, loading..."
	}
	else {
	   // Turn notice off
	   loadNotice.style.border = '0'
	   loadNotice.innerHTML = ''
	}
}

function zc_setMovie(idNum) {

	var Pos = zc_pos('zc_code_' + idNum)
	var width = Pos.width
	var height = Pos.height
	
	var div = document.getElementById('zc_div_' + idNum)
	var flashvars, movieId, html, protocol
	flashvars = "id=" +idNum+ "&width=" +width+ "&height=" +height
	movieId = "ZeroClipboard_" + idNum
	if (navigator.userAgent.match(/MSIE/)) {
	   // IE gets an OBJECT tag
	   protocol = location.href.match(/^https/i) ? 'https://' : 'http://'
	   html = '<object id="'+movieId+'" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="'+protocol+'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+width+'" height="'+height+'" align="middle"><param name="movie" value="'+ZeroClipboard.moviePath+'" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="'+flashvars+'"/><param name="wmode" value="transparent"/></object>'
	}
	else { // all other browsers get an EMBED tag
	   html = '<embed src="'+ZeroClipboard.moviePath+'" id="'+movieId+'" name="'+movieId+'" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="'+width+'" height="'+height+'" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="'+flashvars+'" wmode="transparent" />';
	}
	
	// Put the movie html in the div
	div.innerHTML = html
}

function zc_pos(elemId) {
	var elem, Pos
	elem = document.getElementById(elemId)
	// Calculate relative position
	Pos = {left:0, top:0, width:elem.width ? elem.width : elem.offsetWidth, height:elem.height ? elem.height : elem.offsetHeight}
	
	// Calculate absolute position
	while (elem) {
	   Pos.left += elem.offsetLeft
	   Pos.top += elem.offsetTop
	   elem = elem.offsetParent
	}
	return Pos
}