try {
var public_track = [];

var ItemLoad = function(file,itemid,elm,p){
	try {
	if(!Extensions.isEmpty(arguments[5])) var fnc = arguments[5];
	var zindex= $(elm)._zindex;
	$(elm).setStyle("z-index: "+zindex+";");
	if(!Extensions.isEmpty($(elm)._params)){
		var paramstring = Object.toJSON($(elm)._params);
		paramstring = paramstring.replace(/\"/g,'');
		paramstring = paramstring.replace(/ /g,'');
		paramstring = paramstring.replace(/\{/,'');
		paramstring = paramstring.replace(/\}/,'');
	}else{
		paramstring = '';
	}
	new Ajax.Request(file,{
		method: 'post',
		parameters: {
			'id': itemid,
			'elm': elm,
			'p': p,
			'param': paramstring
		},
		onCreate: function(){
			try {
				var img = new Element('img', {
					'src': 'http://www.wgte.org/modules/leafbase/images/38.gif'
				});
				$(elm).appendChild(img);
			} catch(e) {
				Extensions.error(e);
			}
		},
		onSuccess: function(){
			try {
				$(elm).innerHTML = '';
			} catch(e) {
				Extensions.error(e);
			}
		},
		onComplete: function(){
			try {
				if(!Extensions.isEmpty(fnc)) fnc($(elm));
			} catch(e) {
				Extensions.error(e);
			}
		}
	});
	} catch(e) {
		Extensions.error(e);
	}
}

var set_page_height = function(){
	try {
		var area = $('tm_construction');
		var render = $('content');
		var pageSize = Extensions.getPageSize();
		render.setStyle('height:' + (pageSize[1]) + 'px');
		area.setStyle('height:' + (pageSize[1]) + 'px');
	} catch(e) {
		Extensions.error(e);
	}
}

var resizeByRatio = function(elm,nh,nw){
	try {
		var oh = elm._imgheight;
		var ow = elm._imgwidth;
		var o_ratio = (ow>oh)?oh/ow:ow/oh;
		var o_largest = (ow>oh)?'w':'h';
		var n_ratio = (nw>nh)?nh/nw:nw/nh;
		var n_largest = (nw>nh)?'w':'h';
		
		if(n_largest != o_largest){
			rw = (n_largest == 'h')?nw:ow*(nh/oh);
			rh = (n_largest == 'w')?nh:oh*(nw/ow);
		}else{
			if(n_ratio > o_ratio){
				rw = (n_largest == 'w')?nw:ow*(nh/oh);
				rh = (n_largest == 'h')?nh:oh*(nw/ow);
			}else{
				rw = (n_largest == 'w')?ow*(nh/oh):nw;
				rh = (n_largest == 'h')?oh*(nw/ow):nh;
			}
		}
		
		return [rh,rw];
	} catch(e) {
		Extensions.error(e);
	}
}
var resizeByRatio_lowest = function(elm,nh,nw){
	try {
		var oh = elm._imgheight;
		var ow = elm._imgwidth;
		var o_ratio = (ow>oh)?oh/ow:ow/oh;
		var o_largest = (ow>oh)?'w':'h';
		var n_ratio = (nw>nh)?nh/nw:nw/nh;
		var n_largest = (nw>nh)?'w':'h';
		
		if(n_largest != o_largest){
			rw = (n_largest == 'h')?ow*(nh/oh):nw;
			rh = (n_largest == 'w')?oh*(nw/ow):nh;
		}else{
			if(n_ratio > o_ratio){
				rw = (n_largest == 'w')?ow*(nh/oh):nw;
				rh = (n_largest == 'h')?oh*(nw/ow):nh;
			}else{
				rw = (n_largest == 'w')?nw:ow*(nh/oh);
				rh = (n_largest == 'h')?nh:oh*(nw/ow);
			}
		}
		return [rh,rw];
	} catch(e) {
		Extensions.error(e);
	}
}

var doctype_image = function(ext){
	try {
		switch(ext)
		{
			case "flv":
				docimage = "flash-file.gif";
				break;
			case "fla":
				docimage = "flash-file.gif";
				break;
			case "swf":
				docimage = "flash-file.gif";
				break;
			case "doc":
				docimage = "ms-word.gif";
				break;
			case "txt":
				docimage = "text-file.gif";
				break;
			case "zip":
				docimage = "zip-file.gif";
				break;
			case "pdf":
				docimage = "pdf.gif";
				break;
			case "exe":
				docimage = "exe-file.gif";
				break;
			case "dll":
				docimage = "exe-file.gif";
				break;
			case "psd":
				docimage = "photoshop-file.gif";
				break;
			case "ai":
				docimage = "illustrator-file.gif";
				break;
			case "mov":
				docimage = "quicktime-movie-file.gif";
				break;
			default:
				docimage = "file.gif";
				break;
		}
		
		return 'http://www.wgte.org/modules/leafbase/images/'+docimage;
	} catch(e) {
		Extensions.error(e);
	}
}

var type_image = function(t){
	try {
		var image = '';
		switch(parseFloat(t)){
			case 1:
				image = 'audio.png';
				break;
			case 2:
				image = 'film.png';
				break;
			case 3:
				image = 'images.png';
				break;
			case 4:
				image = 'digital.png';
				break;
			case 14:
			case 5:
				image = 'text.png';
				break;
			default:
				break;
		}
		return 'http://www.wgte.org/modules/leafbase/images/'+image;
	} catch(e) {
		Extensions.error(e);
	}
};

Event.observe(window, 'load', function() {
	try {
		set_page_height();
	} catch(e) {
		Extensions.error(e);
	}
});

function drawContent(element){
	try {
		var resizeByRatio = function(elm,nh,nw){
			try {
				var oh = elm._imgheight;
				var ow = elm._imgwidth;
				var o_ratio = (ow>oh)?oh/ow:ow/oh;
				var o_largest = (ow>oh)?'w':'h';
				var n_ratio = (nw>nh)?nh/nw:nw/nh;
				var n_largest = (nw>nh)?'w':'h';
				
				if(n_largest != o_largest){
					rw = (n_largest == 'h')?nw:ow*(nh/oh);
					rh = (n_largest == 'w')?nh:oh*(nw/ow);
				}else{
					if(n_ratio > o_ratio){
						rw = (n_largest == 'w')?nw:ow*(nh/oh);
						rh = (n_largest == 'h')?nh:oh*(nw/ow);
					}else{
						rw = (n_largest == 'w')?ow*(nh/oh):nw;
						rh = (n_largest == 'h')?oh*(nw/ow):nh;
					}
				}
				
				return [rh,rw];
			} catch(e) {
				Extensions.error(e);
			}
		}
		var resizeByRatio_lowest = function(elm,nh,nw){
			try {
				var oh = elm._imgheight;
				var ow = elm._imgwidth;
				var o_ratio = (ow>oh)?oh/ow:ow/oh;
				var o_largest = (ow>oh)?'w':'h';
				var n_ratio = (nw>nh)?nh/nw:nw/nh;
				var n_largest = (nw>nh)?'w':'h';
				
				if(n_largest != o_largest){
					rw = (n_largest == 'h')?ow*(nh/oh):nw;
					rh = (n_largest == 'w')?oh*(nw/ow):nh;
				}else{
					if(n_ratio > o_ratio){
						rw = (n_largest == 'w')?ow*(nh/oh):nw;
						rh = (n_largest == 'h')?oh*(nw/ow):nh;
					}else{
						rw = (n_largest == 'w')?nw:ow*(nh/oh);
						rh = (n_largest == 'h')?nh:oh*(nw/ow);
					}
				}
				return [rh,rw];
			} catch(e) {
				Extensions.error(e);
			}
		}
	
		var event = 'resize';
		if(!Extensions.isEmpty(arguments[1])){
			event = arguments[1];
		}
		
		var resize_type = 'full';
		if(!Extensions.isEmpty(arguments[2])){
			resize_type = arguments[2];
		}
		
		if(event == 'resize'){
			for (var i = 0; i < $(element).childElements().length; i++) {
				var elm = $(element).childElements()[i];
				if(elm.className.indexOf('static') < 0){
					if(!Extensions.isset(newWidth)){
						var newWidth = element._width;
					}
					if(!Extensions.isset(newHeight)){
						var newHeight = element._height;
					}
					
					var height = 0;
					var width = 0;
					
					var text = $(elm)._imgheight+'|'+$(elm)._height;
					var resize = (resize_type == 'full')?resizeByRatio($(element), parseInt(newHeight - (($(element)._descheight)?$(element)._descheight:0)),newWidth):resizeByRatio_lowest($(element), parseInt(newHeight - (($(element)._descheight)?$(element)._descheight:0)),newWidth);
					height = parseInt(resize[0]);
					width = parseInt(resize[1]);
					
					var margintop = 0;
					var marginleft = 0;
					
					if( newWidth > width ){
						margintop = 0;
						marginleft = parseInt((newWidth-width)/2);
					}else if( newHeight > height ){
						margintop = parseInt((newHeight-(height+(($(element)._descheight)?$(element)._descheight:0)))/2);
						marginleft = 0;
					}
					var text = 'newHeight:'+newHeight+'/';
					text = text + 'height:'+height+'/';
					text = text + 'newWidth:'+newWidth+'/';
					text = text + 'width:'+width+'/';
					text = text + 'margintop:'+margintop;
					
					style = 'height:'+height+'px;width:'+width+'px;margin: '+margintop+'px 0px 0px '+marginleft+'px';
					if ($(elm).down('.im_caption')){
						descstyle = 'margin: 0px '+marginleft+'px 0px '+marginleft+'px';
						$(elm).down('.im_caption').setStyle(descstyle);
					}
					if ($(elm).down('.im_social')){
						descstyle = 'margin: 0px '+marginleft+'px 0px '+marginleft+'px';
						$(elm).down('.im_social').setStyle(descstyle);
					}	
					$(elm).setStyle(style);
				}
			}
		}
	} catch(e) {
		Extensions.error(e);
	}
}

var showrating = function(divid, itemid, userid){
	if(divid.indexOf('rating_') >= 0){
	
		var url = '/modules/leafbase/components/core/rating_load.php';
		new Ajax.Request(url, {
			method: 'post',
			parameters: {
				userid: userid,
				elm: divid,
				itemid: itemid
			},
			onComplete: function(transport){
				var obj = $(divid);
				
				Extensions.log(obj);
				
				//FLASH VERSION
				var flash = '<'+'object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"';
				flash += 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" ';
				flash += 'width="75" ';
				flash += 'height="15" ';
				flash += 'id="ratingFlash" ';
				flash += 'align="middle">';
				flash += '<'+'param name="allowScriptAccess" value="sameDomain" />';
				flash += '<'+'param name="movie" value="/modules/leafbase/components/core/rating.swf?';
					flash += 'rating=' + $(divid)._ratingAverage;
					flash += '&amp;tag=' + divid;
					flash += '&amp;itemid=' + itemid;
					flash += '&amp;userid=' + userid;
					flash += '&amp;yours=' + $(obj)._userSet;
					flash += '&amp;color=' + window.accent_color;
					flash += '" />';
				flash += '<'+'param name="quality" value="high" />';
				flash += '<'+'param name="bgcolor" value="#ffffff" />';
				flash += '<'+'param name="wmode" value="transparent" />';
				flash += '<'+'param name="scale" value="default" />';
				flash += '<'+'param name="swliveconnect" value="true" />';
				flash += '<'+'embed src="/modules/leafbase/components/core/rating.swf?';
					flash += 'rating=' + $(obj)._ratingAverage;
					flash += '&amp;tag=' + divid;
					flash += '&amp;itemid=' + itemid;
					flash += '&amp;userid=' + userid;
					flash += '&amp;yours=' + $(obj)._userSet;
					flash += '&amp;color=' + window.accent_color;
					flash += '" ';
				flash += 'quality="high" ';
				flash += 'bgcolor="#ffffff" ';
				flash += 'width="75" ';
				flash += 'height="15" ';
				flash += 'name="ratingFlash" ';
				flash += 'wmode="transparent" ';
				flash += 'scale="default" ';
				flash += 'align="middle" ';
				flash += 'allowScriptAccess="sameDomain" ';
				flash += 'type="application/x-shockwave-flash" ';
				flash += 'pluginspage="http://www.macromedia.com/go/getflashplayer" ';
				flash += 'swliveconnect="true" />';
				flash += '<'+'/object>';
				
				//NON FLASH VERSION
				var monolith = "";
				for(var x = 1; x <= 5; x++){				
					var link = "rate(\'"+userid+"\',\'"+divid+"\',"+x+")";
					
					if(x <= $(divid)._ratingAverage){
						monolith += '<'+'a href="javascript:'+link+'" style="width:14px;height:14px;">';
						monolith += '<'+'img src="/modules/leafbase/images/bluestar.png" width="14" height="14" alt="" border="0" onclick="';
						monolith += link;
						monolith += '"/>';
						monolith += '<'+'/a>';
					}else{
						monolith += '<'+'a href="javascript:'+link+'" style="width:14px;height:14px;">';
						monolith += '<'+'img src="/modules/leafbase/images/greystar.png" width="14" height="14" alt="" border="0" onclick="';
						monolith += link;
						monolith += '"/>';
						monolith += '<'+'/a>';
					}
				}
				
				var nonflash = '<'+'div style="width:75px;height:15px;">'+monolith+'<'+'/div>';
				
				//PLACE CORRECT VERSION
				obj.innerHTML = ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)))?non_flash_obj:flash;
			}
		});
	}else{
		var url = '/modules/leafbase/components/core/rating_load.php';
		new Ajax.Request(url, {
			method: 'post',
			parameters: {
				userid: userid,
				elm: divid,
				itemid: itemid
			},
			onComplete: function(transport){
				var obj = $(divid).down('.im_rating');
				
				//FLASH VERSION
				var flash = '<'+'object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"';
				flash += 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" ';
				flash += 'width="75" ';
				flash += 'height="15" ';
				flash += 'id="ratingFlash" ';
				flash += 'align="middle">';
				flash += '<'+'param name="allowScriptAccess" value="sameDomain" />';
				flash += '<'+'param name="movie" value="/modules/leafbase/components/core/rating.swf?';
					flash += 'rating=' + $(divid)._ratingAverage;
					flash += '&amp;tag=' + divid;
					flash += '&amp;itemid=' + itemid;
					flash += '&amp;userid=' + userid;
					flash += '&amp;yours=' + $(divid)._userSet;
					flash += '&amp;color=' + window.accent_color;
					flash += '" />';
				flash += '<'+'param name="quality" value="high" />';
				flash += '<'+'param name="bgcolor" value="#ffffff" />';
				flash += '<'+'param name="wmode" value="transparent" />';
				flash += '<'+'param name="scale" value="default" />';
				flash += '<'+'param name="swliveconnect" value="true" />';
				flash += '<'+'embed src="/modules/leafbase/components/core/rating.swf?';
					flash += 'rating=' + $(divid)._ratingAverage;
					flash += '&amp;tag=' + divid;
					flash += '&amp;itemid=' + itemid;
					flash += '&amp;userid=' + userid;
					flash += '&amp;yours=' + $(divid)._userSet;
					flash += '&amp;color=' + window.accent_color;
					flash += '" ';
				flash += 'quality="high" ';
				flash += 'bgcolor="#ffffff" ';
				flash += 'width="75" ';
				flash += 'height="15" ';
				flash += 'name="ratingFlash" ';
				flash += 'wmode="transparent" ';
				flash += 'scale="default" ';
				flash += 'align="middle" ';
				flash += 'allowScriptAccess="sameDomain" ';
				flash += 'type="application/x-shockwave-flash" ';
				flash += 'pluginspage="http://www.macromedia.com/go/getflashplayer" ';
				flash += 'swliveconnect="true" />';
				flash += '<'+'/object>';
				
				//NON FLASH VERSION
				var monolith = "";
				for(var x = 1; x <= 5; x++){				
					var link = "rate(\'"+userid+"\',\'"+divid+"\',"+x+")";
					
					if(x <= $(divid)._ratingAverage){
						monolith += '<'+'a href="javascript:'+link+'" style="width:14px;height:14px;">';
						monolith += '<'+'img src="/modules/leafbase/images/bluestar.png" width="14" height="14" alt="" border="0" onclick="';
						monolith += link;
						monolith += '"/>';
						monolith += '<'+'/a>';
					}else{
						monolith += '<'+'a href="javascript:'+link+'" style="width:14px;height:14px;">';
						monolith += '<'+'img src="/modules/leafbase/images/greystar.png" width="14" height="14" alt="" border="0" onclick="';
						monolith += link;
						monolith += '"/>';
						monolith += '<'+'/a>';
					}
				}
				
				var nonflash = '<'+'div style="width:75px;height:15px;">'+monolith+'<'+'/div>';
				
				//PLACE CORRECT VERSION
				obj.innerHTML = ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)))?non_flash_obj:flash;
			}
		});
	}
};
var logout = function(){
	var url = '/modules/leafbase/components/login/logout.php';
	new Ajax.Request(url, {
		method:'post',
		onComplete: function(transport){
				window.location.href = window.location.href;
		}
	});
};

var login = function(){
	if ($$('#loginBox').length == 0){
		loginBoxThing = new Element('div',{'id':'loginBox','style':'width:200px; height:70px; display:none;'});
		document.body.appendChild(loginBoxThing);
	}
	lightwindow.load('#loginBox', {'height': '80','width': '200'},function(){
	elmArr = $$('.lw_container');
	
	elm = elmArr[(elmArr.length-1)]
	var form = new Element('div', {
        'id': 'loginForm'
    });
    var fusername = new Element('input', {
        'type': 'text',
        'class': 'fusername',
        'value': 'Username',
        'name': 'username',
        'style': 'display:block; margin-left: auto; margin-right: auto; border: solid 1px; margin-top:2px;'
    });
    var fakepassword = new Element('input', {
        'type': 'text',
        'class': 'fakePassword',
        'value': 'Password',
        'name': 'fakePassword',
        'style': 'display:block; margin-left: auto; margin-right: auto; border: solid 1px; margin-top:2px;'
    });
    var fpassword = new Element('input', {
        'type': 'password',
        'class': 'fpassword',
        'name': 'password',
        'style': 'margin-left: auto; margin-right: auto; border: solid 1px; margin-top:2px; display:none;'
    });
    var fsubmit = new Element('input', {
        'type': 'submit',
        'value': 'Login',
        'style': 'display:block; margin-left: auto; margin-right: auto; border: solid 1px; margin-top:3px;'
    
    });
    var fredirect = new Element('input', {
        'type': 'hidden',
        'name': 'redirect',
        'value': window.location.href
    });
    $(elm).appendChild(form);
    form.appendChild(fusername);
    form.appendChild(fakepassword);
    form.appendChild(fpassword);
    form.appendChild(fsubmit);	
    form.appendChild(fredirect);
    
    Event.observe(fakepassword, 'focus', function(event){
        $(fakepassword).setStyle('display:none;');
        $(fpassword).setStyle('display:block;');
        $(fpassword).activate();
    });
    Event.observe(fsubmit, 'click', function(event){
        var elm = event.element().up(1);
        
        var passwd = $(elm).down('.fpassword').value;
        var usernm = $(elm).down('.fusername').value;
		login_submit(usernm, passwd);
        
    });
    Event.observe(fpassword, 'blur', function(event){
        if ($(fpassword).value == "") {
            $(fpassword).setStyle('display:none;');
            $(fakepassword).setStyle('display:block;');
        }
    });
    Event.observe(fusername, 'focus', function(event){
        if ($(fusername).value == "Username") {
            $(fusername).value = "";
        }
    });
    Event.observe(fusername, 'blur', function(event){
        if ($(fusername).value == "") {
            $(fusername).value = "Username";
        }
    });
	});
};

var login_submit = function(username,password){
	if (username){
		if (password){
			var url = '/modules/leafbase/components/login/process.php';
			new Ajax.Request(url, {
				method:'post',
				parameters: {
					username: username,
					password: password
				},
				onComplete: function(transport){
					var reply = transport.responseText;
					if (reply == "1"){
						window.location.href = window.location.href;
						window.location.reload();
						history.go(0);
					}else{
						$('loginForm').innerHTML = "";
						var errorElm = new Element('div');
						$('loginForm').appendChild(errorElm);
						errorElm.setStyle("height:50%; top:50%; color:#FFFFFF;");
						errorElm.innerHTML = "There was an error with your Login.<br>Please <span style='color: #aaaaff; text-decoration: underline; cursor: pointer;' onclick='login();'>try again</span>.";
						window.sendback = 0;
					}				
				}
			});
		}
	}
	return window.sendback;
};

var rate = function(userid, itemid, divid, rating, set){
	if(userid){
		if(!set){
			var url = '/modules/leafbase/components/core/rating_process.php';
			new Ajax.Request(url, {
				method: 'post',
				parameters: {
					userid: userid,
					rating: rating,
					itemid: itemid
				},
				onComplete: function(transport){
					showrating(divid, itemid, userid);
				}
			});
			//alert('Submitting Login');
		}else{
			//alert('You have already rated this item');
		}
	}else{
		//alert('Login First');
		login();
	}
};

} catch(e) {
	Extensions.error(e);
}