//**********************************************************************************************************
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//**********************************************************************************************************
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
//**********************************************************************************************************
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
//**********************************************************************************************************
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//**********************************************************************************************************
function initDialog() {
	$('#dialog').dialog({
		autoOpen:false
	});
	return false;
}
//**********************************************************************************************************
function showResponse(msg){
	$('.response').remove();	
	$('#msg').append('<div class="response">'+msg+'</div>');
	$('.response').fadeIn('fast');
	var t=setTimeout(function(){ $('.response').fadeOut('slow'); }, 7000);
	return false;
}
//**********************************************************************************************************
function addLoader(objID){
	remLoader(objID);
	$(objID).append('<img src="graphics/ajax-loader.gif" class="loader" width="24" height="24" />');
	return false;
}
//**********************************************************************************************************
function fadeOutLoader(objID){
	$(objID+' img.loader').fadeOut(700,function(){$(this).remove()});
	return false;
}
//**********************************************************************************************************
function remLoader(objID){
	$(objID+' img.loader').remove();
	return false;
}
//**********************************************************************************************************
function checkNum(){
	var carCode = event.keyCode;
	if ((carCode < 46) || (carCode > 57) || (carCode == 47)){
		event.cancelBubble = true
		event.returnValue = false;
	}
	return false;
}
//**********************************************************************************************************
function checkString(evnt, forbiddenChars){
	var browser = (navigator.appName != 'Microsoft Internet Explorer')?'Other':'IE';
	var carCode = (browser!='IE')?evnt.charCode:event.keyCode;
	//alert(carCode);
	//********Uppercase Letters*****************Lower Case Letters*****************Numbers***************************Backspace
	if(carCode >= 65 && carCode <= 90 || carCode >= 97 && carCode <= 122 || carCode >= 48 && carCode <= 57 || carCode == 8 || carCode == 0){
		return false;
	}else{
		var specialChars = '! "#$%&\'()*+,-./:;=?@\\^_`~';
		var c = '';
		var i = 0;
		if(forbiddenChars != ''){
			for(i = 0; i < forbiddenChars.length; i++){
				c = forbiddenChars.substr(i, 1);
				specialChars = specialChars.replace(c, '');
			}
		}
		var char = String.fromCharCode(carCode); //alert(char);
		c = '';
		for(i = 0; i < specialChars.length; i++){
			c = specialChars.substr(i, 1);
			if(c == char){
				return false;
			}
		}
		if(browser!='IE'){
			evnt.stopPropagation();
			evnt.preventDefault();
		}else{
			event.cancelBubble = true;
			event.returnValue = false;
		}
	}
	return false;
	
	
	var specialChars = '!@#$%& *+';
	if(forbiddenChars != ''){
		var char = '';
		for(var i = 0; i < forbiddenChars.length(); i++){
			char = forbiddenChars.substr(i, 1);
			specialChars = specialChars.replace(char, '');
		}
	}
	var alphaExp = /^[0-9a-zA-Z]+$/;
	alert(str);
	if(str.match(alphaExp)){
		return true;
	}else{
		alert('failed!!');
		return false;
	}
}
//**********************************************************************************************************
function ucFirst(str){
    str += '';
    var f = str.charAt(0).toUpperCase();
    return f + str.substr(1);
}
//**********************************************************************************************************
function thisMovie(appName) {
   if (navigator.appName.indexOf("Microsoft") != -1) {
	   return window[appName];
   } else {
	   return document[appName];
   }
}
//**********************************************************************************************************
function addRowToList(listID, rowID){
	if($('#'+listID).length < 1){ showResponse('addRowToList(listID['+listID+'] rowID['+rowID+')-> Could not find List to Update.'); return false; }
	
	if($('#'+listID).val() == ''){
		$('#'+listID).val(rowID);
		return false;
	}
	var list = String($('#'+listID).val()).split(':');
	list.push(rowID);
	$('#'+listID).val(list.join(':'));
	return false;
}
//**********************************************************************************************************
function remRowFromList(listID, rowID){
	if($('#'+listID).length < 1){ showResponse('remRowFromList(listID['+listID+'] rowID['+rowID+')-> Could not find List to Update.'); return false; }
	var list = String($('#'+listID).val()).split(':');
	var newList = Array();
	for(var i = 0; i < list.length; i++){
		if(list[i] != rowID){
			newList.push(list[i]);
		}
	}
	$('#'+listID).val(newList.join(':'));
	return false;
}
//**********************************************************************************************************
function checkForRowInList(listID, rowID){
	if($('#'+listID).length < 1){ showResponse('checkForRowInList(listID['+listID+'] rowID['+rowID+')-> Could not find List to Check.'); return false; }
	if($('#'+listID).val() == ''){ return false; }
	var list = String($('#'+listID).val()).split(':');
	for(var i = 0; i < list.length; i++){
		if(rowID == list[i]){
			return true;
		}
	}
	return false;
}
//**********************************************************************************************************
function checkAll(rowListID, checkboxPrefix){
	var row = String($('#'+rowListID).val()).split(':');
	if($('.selectAllLink:first').attr('innerHTML') == 'Select All'){
		$('.selectAllLink').attr('innerHTML', 'De-Select All');
		for(var i = 0; i < row.length; i++){
			$('#'+checkboxPrefix+row[i]).attr('checked', 'checked');
		}
	}else{
		$('.selectAllLink').attr('innerHTML', 'Select All');
		for(var i = 0; i < row.length; i++){
			$('#'+checkboxPrefix+row[i]).attr('checked', '');
		}
	}
	return false;
}
var finishUploadTask;
//**********************************************************************************************************
function initSwfUpload(btnID, progBarID, cencelBtnID, path, max_w, max_h, create_thumb, thumb_w, thumb_h, finishTask, oid){
	finishUploadTask = finishTask;
	var urlVars = '';
	if(parseInt(max_w) > 0 && parseInt(max_w).toString() != 'NaN'){
		urlVars += '&maxw='+max_w+'&maxh='+max_h;
	}
	if(create_thumb == 'yes'){
		urlVars += '&thumb='+create_thumb+'&thumb_w='+thumb_w+'&thumb_h='+thumb_h;
	}
	if(finishTask != ''){
		//urlVars += '&finishTask='+finishTask+'&oid='+oid;
	}
	return new SWFUpload({
		// Backend Settings
		upload_url: 'include/upload/upload.php?mtd=swfImageUpload'+urlVars,
		//post_params: {"PHPSESSID" : "die7i7vco9td7mkblg858h0u51"},
		post_params: {'path' : path},
	
		// File Upload Settings
		file_size_limit : "102400",	// 100MB
		file_types : "*.jpg;*.jpeg;*.png;*.gif",
		file_types_description : "Image Files",
		file_upload_limit : "10",
		file_queue_limit : "0",
	
		// Event Handler Settings (all my handlers are in the Handler.js file)
		file_dialog_start_handler : fileDialogStart,
		file_queued_handler : fileQueued,
		file_queue_error_handler : fileQueueError,
		file_dialog_complete_handler : fileDialogComplete,
		upload_start_handler : uploadStart,
		upload_progress_handler : uploadProgress,
		upload_error_handler : uploadError,
		upload_success_handler : uploadSuccess,
		upload_complete_handler : fileUploadComplete,
	
		// Button Settings
		button_image_url : 'graphics/uploadBtn.png',
		button_placeholder_id : btnID,
		button_width: 61,
		button_height: 22,
		
		// Flash Settings
		flash_url : 'flex/swfUpload/swfupload.swf',
	
		custom_settings : {
			progressTarget : progBarID,
			cancelButtonId : cencelBtnID
		},
		
		// Debug Settings
		debug: false
	});
}
//**********************************************************************************************************
function fileUploadComplete(file) {
	try {
		/*  still queed file */
		if (this.getStats().files_queued > 0) {
			//this.startUpload();
		} else {
			/*var progress = new FileProgress(file,  this.customSettings.upload_target);
			progress.setComplete();
			progress.setStatus("All images received.");
			progress.toggleCancel(false);*/
			eval(finishUploadTask);
		}
	} catch (ex) { alert('shit');
		this.debug(ex);
	}
}
//**********************************************************************************************************
