
COLUMN_TYPE=1;COLUMN_LENGTH=2;COLUMN_WIDTH=3;COLUMN_CAPTION=4;COLUMN_GROUP=5;COLUMN_SORT=6;COLUMN_ALIGN=7;COLUMN_FORMAT=8;COLUMN_DECIMALS=9;COLUMN_CASE=10;COLUMN_TOTAL=11;COLUMN_DATA=12;COLUMN_DESCRIPTION=13;COLUMN_VALIDATE_FUNCTION=14;COLUMN_EVENT=20;COLUMN_VALIDATE=26;ELEMENT_HIDDEN=1;ELEMENT_CHAR=2;ELEMENT_TEXT=3;ELEMENT_PASSWORD=4;ELEMENT_INTEGER=5;ELEMENT_HEX=6;ELEMENT_FLOAT=7;ELEMENT_DATE=8;ELEMENT_TIME=9;ELEMENT_TIMESTAMP=10;ELEMENT_SELECT=11;ELEMENT_SELECT_MULTI=12;ELEMENT_CHECKBOX=13;ELEMENT_RADIOBUTTON=14;ELEMENT_LINK=15;ELEMENT_FILE=16;ELEMENT_BLOB=17;ELEMENT_BLOB_HANDLE=18;ELEMENT_IPADDRESS=19;ELEMENT_ELAPSED_TIME=20;ELEMENT_EMAIL=21;ELEMENT_CREDITCARD=22;ELEMENT_CHECKBOX_MULTI=23;ELEMENT_TEXTBOX=24;ELEMENT_CAPTCHA=25;ELEMENT_FILE_MULTI=26;ELEMENT_HTML=27;ELEMENT_DATE_TZ=28;ELEMENT_FILE_FLASH=29;FORMAT_HIDDEN=0x0001;FORMAT_MANDATORY=0x0002;FORMAT_NOEDIT=0x0004;FORMAT_TOTAL_SUM=0x0100;FORMAT_TOTAL_AVG=0x0200;FORMAT_TOTAL_MIN=0x0400;FORMAT_TOTAL_MAX=0x0800;var max_file_size='1 Mb';function UpdateMap(form_id,field_x,field_y,e){var eventObj=(e)?e:event;var x=eventObj.offsetX;var y=eventObj.offsetY;var form_obj=document.getElementById(form_id+"_form");for(var i=0;i<form_obj.length;i++){if(form_obj.elements[i].name==field_x){form_obj.elements[i].value=x;}
if(form_obj.elements[i].name==field_y){form_obj.elements[i].value=y;}}}
var ProgressUpdate=null;var update_timer=null;var post_working=null;function UploadProgressUpdate_callback(ProgressUpdate,xmlhttp){if(ProgressUpdate&&ProgressUpdate[xmlhttp.params["upload_id"]]){var bar=document.getElementById(xmlhttp.params["id"]+'_bar');if(bar){bar.style.width=ProgressUpdate[xmlhttp.params["upload_id"]]['percent']+'%';}
var status=document.getElementById(xmlhttp.params["id"]+'_status');if(status){status.innerHTML=ProgressUpdate[xmlhttp.params["upload_id"]]['percent']+'%';}
var message=document.getElementById(xmlhttp.params["id"]+'_message');if(message){message.innerHTML='Estimated remaining time: '+ProgressUpdate[xmlhttp.params["upload_id"]]['time_left'];}
if(ProgressUpdate[xmlhttp.params["upload_id"]]['error']){alert(ProgressUpdate[xmlhttp.params["upload_id"]]['error']);if(post_working){HideWorking(post_working);post_working=null;}}
else{update_timer=setTimeout("UploadProgressUpdate('"+xmlhttp.params["id"]+"', '"+xmlhttp.params["upload_id"]+"')",1000);}}}
function UploadProgressUpdate(id,upload_id){if(update_timer){clearTimeout(update_timer);update_timer=null;}
var bar=document.getElementById(id+'_bar');if(bar){var params={"id":id,"upload_id":upload_id};var HTTPobj=new XMLHttp(UploadProgressUpdate_callback,params);HTTPobj.setVerbose(false);HTTPobj.GetJSON('/upload_progress.php?upload_id='+upload_id);}}
function UploadProgressInit(form_id,id,mode){var form_obj=document.getElementById(form_id+'_form');if(form_obj){post_working=ShowWorking(form_obj.parentNode);for(var i=0;i<form_obj.length;i++){if(mode&&form_obj.elements[i].id=="Mode"){form_obj.elements[i].value=mode;}
switch(form_obj.elements[i].type){case'hidden':if(form_obj.elements[i].name=="MAX_FILE_SIZE"){max_file_size=form_obj.elements[i].value;}
break;case'undefined':break;case'radio':break;case'select-one':break;case'select-multiple':break;case'checkbox':if(form_obj.elements[i].name.match(/Link\[/)){if(!form_obj.elements[i].checked){form_obj.elements[i].checked=true;form_obj.elements[i].value=0;}}
break;case'file':if(!$.browser.msie&&form_obj.elements[i].files[0]){var size=form_obj.elements[i].files[0].fileSize;if(size>max_file_size){alert('The file is too big! Please make sure each file is smaller than '+max_file_size+' bytes.');if(post_working){HideWorking(post_working);post_working=null;}
return;}}
break;default:if(!ValidateInput(form_id,form_obj.elements[i].id,form_obj.elements[i])){if(post_working){HideWorking(post_working);post_working=null;}
return;}
break;}}
ProgressUpdate=null;if(form_obj.UPLOAD_IDENTIFIER){var upload_id=form_obj.UPLOAD_IDENTIFIER.value;if(upload_id&&!update_timer){update_timer=setTimeout("UploadProgressUpdate('"+id+"', '"+upload_id+"')",1000);}}
form_obj.submit();}}
function UpdateContentOnLoad(iframe,id,URL){var obj=document.getElementById(iframe);if(obj){if(obj.contentDocument){var d=obj.contentDocument;}
else if(obj.contentWindow){var d=obj.contentWindow.document;}
else{var d=window.frames[iframe].document;}
if(d.location.href=="about:blank"){return;}
if(d.body.innerHTML.match(/DONE/)){if(post_working){HideWorking(post_working);post_working=null;}
UpdateContent(id,URL.replace('%Id%',d.body.innerHTML.replace('DONE;','')));}
var err_no=0;var err_code=null;if((err_no=d.body.innerHTML.match(/ERROR: (\d)/))){if(post_working){HideWorking(post_working);post_working=null;}
switch(parseInt(err_no[1])){case 1:err_code="The file exeeded the upload_max_filesize value in php.ini.";break;case 2:err_code="The file exeeded the max_file_size value in post form.";break;case 3:err_code="The file The uploaded file was only partially uploaded.";break;case 4:err_code="No file was uploaded.";break;case 6:err_code="Missing a temporary folder.";break;case 7:err_code="Failed to write file to disk.";break;case 8:err_code="File upload stopped by extension.";break;}
alert(err_code);}
if((err_code=d.body.innerHTML.match(/ERROR: (.*)/))){if(post_working){HideWorking(post_working);post_working=null;}
alert(err_code[1]);}}}
function ParseDate(DateValue,for_input){var year;var month;var day;var hour=0;var min=0;var sec=0;var parts=DateValue.split(/ |-|\/|:/);if(parts.length>=3&&parts.length<=7){for(var i=0;i<parts.length;i++){if(parts[i].charAt(0)=='0'){parts[i]=parts[i].substring(1);}}
var arrMonthsShort={"Jan":1,"Feb":2,"Mar":3,"Apr":4,"May":5,"Jun":6,"Jul":7,"Aug":8,"Sep":9,"Oct":10,"Nov":11,"Dec":12};var arrMonthsLong={"January":1,"Feburay":2,"March":3,"April":4,"May":5,"June":6,"July":7,"August":8,"September":9,"October":10,"November":11,"December":12};var format=for_input?prefs['Core']['Date Format Input']:prefs['Core']['Date Format'];switch(format){case'd-m-Y':year=parseInt(parts[2]);month=parseInt(parts[1]);day=parseInt(parts[0]);break;case'd M Y':year=parseInt(parts[2]);month=arrMonthsShort[parts[1]];day=parseInt(parts[0]);break;case'd F Y':year=parseInt(parts[2]);month=arrMonthsLong[parts[1]];day=parseInt(parts[0]);break;case'Y/m/d':year=parseInt(parts[0]);month=parseInt(parts[1]);day=parseInt(parts[2]);break;case'l F d, Y':year=parseInt(parts[4]);month=arrMonthsLong[parts[1]];day=parseInt(parts[2]);break;case'F dS Y':year=parseInt(parts[2]);month=arrMonthsLong[parts[0]];day=parseInt(parts[1]);break;case'm/d/Y':default:year=parseInt(parts[2]);month=parseInt(parts[0]);day=parseInt(parts[1]);break;}
if(parts.length>3){var format=for_input?prefs['Core']['Time Format Input']:prefs['Core']['Time Format'];switch(format){case"H:i:s":hour=parseInt(parts[3]);min=parseInt(parts[4]);sec=parseInt(parts[5]);break;case"H:i":hour=parseInt(parts[3]);min=parseInt(parts[4]);break;}}
return{"year":year,"month":month,"day":day,"hour":hour,"min":min,"sec":sec};}
else{return null;}}
function CheckDate(DateValue,for_input){var parts=ParseDate(DateValue,for_input);if(parts){var d=new Date();if(parts["year"]<1902||parts["year"]>2038){return null;}
d.setFullYear(parts["year"],parts["month"]-1,parts["day"]);if(d.getFullYear()==parts["year"]&&d.getMonth()==parts["month"]-1&&d.getDate()==parts["day"]){return d;}
else{return null;}}
else{return null;}}
function CheckEmail(emailStr){var checkTLD=1;var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;var emailPat=/^(.+)@(.+)$/;var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";var validChars="\[^\\s"+specialChars+"\]";var quotedUser="(\"[^\"]*\")";var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;var atom=validChars+'+';var word="("+atom+"|"+quotedUser+")";var userPat=new RegExp("^"+word+"(\\."+word+")*$");var domainPat=new RegExp("^"+atom+"(\\."+atom+")*$");var matchArray=emailStr.trim().match(emailPat);if(matchArray==null){return false;}
var user=matchArray[1];var domain=matchArray[2];for(i=0;i<user.length;i++){if(user.charCodeAt(i)>127){return false;}}
for(i=0;i<domain.length;i++){if(domain.charCodeAt(i)>127){return false;}}
if(user.match(userPat)==null){return false;}
var IPArray=domain.match(ipDomainPat);if(IPArray!=null){for(var i=1;i<=4;i++){if(IPArray[i]>255){return false;}}
return true;}
var atomPat=new RegExp("^"+atom+"$");var domArr=domain.split(".");var len=domArr.length;for(i=0;i<len;i++){if(domArr[i].search(atomPat)==-1){return false;}}
if(checkTLD&&domArr[domArr.length-1].length!=2&&domArr[domArr.length-1].search(knownDomsPat)==-1){return false;}
if(len<2){return false;}
return true;}
function ValidateCreditCard(ccnum){var type=null;ccnum=ccnum.replace(/[ -]/g,"");var re=/^XXXX\d{4}$/;if(!type&&re.test(ccnum)){type='Masked';}
var re=/^4\d{15}$/;if(re.test(ccnum)){type='Visa';}
var re=/^4\d{12}$/;if(!type&&re.test(ccnum)){type='Visa';}
var re=/^5[1-5]\d{14}$/;if(!type&&re.test(ccnum)){type='Mastercard';}
var re=/^6011\d{12}$/;if(!type&&re.test(ccnum)){type='Discover';}
var re=/^3[4,7]\d{13}$/;if(!type&&re.test(ccnum)){type='Amex';}
var re=/^3\d{15}$/;if(!type&&re.test(ccnum)){type='JCB';}
var re=/^[2131|1800]\d{11}$/;if(!type&&re.test(ccnum)){type='JCB';}
var re=/^3[0,6,8]\d{12}$/;if(!type&&re.test(ccnum)){type='Diners';}
if(type&&type!='Masked'){var checksum=0;for(var i=(2-(ccnum.length%2));i<=ccnum.length;i+=2){checksum+=parseInt(ccnum.charAt(i-1));}
for(var i=(ccnum.length%2)+1;i<ccnum.length;i+=2){var digit=parseInt(ccnum.charAt(i-1))*2;if(digit<10){checksum+=digit;}
else{checksum+=(digit-9);}}
if((checksum%10)!=0){type=null;}}
return type;}
function ValidateCaptcha(value,id){var HTTPobj=new XMLHttp();return HTTPobj.GetJSON('/securimage.php?Validate='+value+'&Id='+id);}
function ValidateInput(form_id,field_edit_id,form_obj,ignore_defaults){var form=form_id+'_form';var arrInfo=window[form_id+'_info'];if(!arrInfo){return true;}
var arrGroupIndex=window[form_id+'_groupindex'];if(field_edit_id.match(/Edit_/)){var field_name=field_edit_id.substring(5,field_edit_id.length);}
else if(field_edit_id.match(/Filter_/)){var field_name=field_edit_id.substring(7,field_edit_id.length);}
else{var field_name=field_edit_id;}
if(form_obj.disabled){return true;}
if(arrInfo&&arrInfo[field_name]){if((arrInfo[field_name][COLUMN_FORMAT]&FORMAT_MANDATORY)==FORMAT_MANDATORY){if(!form_obj.value||(form_obj.value==form_obj.defaultValue&&ignore_defaults)){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\' may not be blank','Input error',form_obj);if(arrGroupIndex){TabSelect(form_id,arrGroupIndex[arrInfo[field_name][COLUMN_GROUP]]);}
SetFocus(form,field_edit_id);return false;}}
var invalid=false;switch(parseInt(arrInfo[field_name][COLUMN_TYPE])){case ELEMENT_INTEGER:if(form_obj.value.length){if(isNaN(parseInt(form_obj.value))||parseInt(form_obj.value)!=form_obj.value){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid integer value','Input error');invalid=true;}}
break;case ELEMENT_HEX:if(form_obj.value.length){if(isNaN(parseInt(form_obj.value,16))){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid hex value','Input error');invalid=true;}}
break;case ELEMENT_FLOAT:if(form_obj.value.length){if(isNaN(parseFloat(form_obj.value))||parseFloat(form_obj.value)!=form_obj.value){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid floating point value','Input error');invalid=true;}}
break;case ELEMENT_DATE:case ELEMENT_DATE_TZ:if(form_obj.value.length){var valid=CheckDate(form_obj.value,true);if(!valid){var expected_format='';switch(prefs['Core']['Date Format Input']){case'm/d/Y':expected_format=' MM/DD/YYYY';break;case'd-m-Y':expected_format=' DD-MM-YYYY';break;case'Y/m/d':expected_format=' YYYY/MM/DD';break;}
MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid date'+expected_format,'Input error');invalid=true;}}
break;case ELEMENT_EMAIL:if(form_obj.value.length&&form_obj.value!=form_obj.defaultValue){if(!CheckEmail(form_obj.value)){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid email address','Input error');invalid=true;}}
break;case ELEMENT_PASSWORD:if((arrInfo[field_name][COLUMN_FORMAT]&FORMAT_MANDATORY)==FORMAT_MANDATORY&&form_obj.value.length<5){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Password must be at least 5 characters long','Input error');invalid=true;}
break;case ELEMENT_CREDITCARD:if(form_obj.value.length){var valid=ValidateCreditCard(form_obj.value);if(!valid){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': Please enter a valid credit card number','Input error');invalid=true;}}
break;case ELEMENT_HTML:$('#'+field_edit_id).htmlarea('updateTextArea')
break;case ELEMENT_CHAR:if(arrInfo[field_name][COLUMN_VALIDATE]&&form_obj.value){if(typeof(arrInfo[field_name][COLUMN_VALIDATE])=='string'){var re=new RegExp(arrInfo[field_name][COLUMN_VALIDATE]);if(!form_obj.value.match(re)){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': The entered data does not match a valid pattern','Input error');invalid=true;}}
else if(typeof(arrInfo[field_name][COLUMN_VALIDATE])=='object'){var valid=false;for(var i=0;i<arrInfo[field_name][COLUMN_VALIDATE].length;i++){var re=new RegExp(arrInfo[field_name][COLUMN_VALIDATE][i]);if(form_obj.value.match(re)){valid=true;}}
if(!valid){MsgBox('\''+arrInfo[field_name][COLUMN_CAPTION]+'\': The entered data does not match a valid pattern','Input error');invalid=true;}}}
break;case ELEMENT_CAPTCHA:var id=0;if(form_obj.previousSibling.id==field_edit_id+'_captcha'){var id=form_obj.previousSibling.value;}
if(!ValidateCaptcha(form_obj.value,id)){MsgBox('\'CAPTCHA\': The entered value does not match the image','Input error');invalid=true;}
break;default:break;}
if(!invalid&&arrInfo[field_name][COLUMN_VALIDATE_FUNCTION]){if(window[arrInfo[field_name][COLUMN_VALIDATE_FUNCTION]]){invalid=window[arrInfo[field_name][COLUMN_VALIDATE_FUNCTION]](form_obj.value);}}
if(invalid){if(arrGroupIndex){TabSelect(form_id,arrGroupIndex[arrInfo[field_name][COLUMN_GROUP]]);}
SetFocus(form,field_edit_id);return false;}}
return true;}
function ValidateForm(id,URL,form_id,ret_value,callback,callback_params,timeout,ignore_defaults){var form_obj=document.getElementById(form_id+"_form");if(form_obj){for(var i=0;i<form_obj.length;i++){switch(form_obj.elements[i].type){case'hidden':break;case'undefined':break;case'radio':break;case'select-one':break;case'select-multiple':break;case'checkbox':break;default:if(!ValidateInput(form_id,form_obj.elements[i].id,form_obj.elements[i],ignore_defaults)){if(ret_value){return false;}
else{return;}}
break;}}
PostContent(id,URL,form_id,callback,callback_params,timeout,ignore_defaults);if(ret_value){return true;}}
else{MsgBox('\''+form_id+'\': is not a valid HTML form.','Input error');if(ret_value){return false;}}}
function ValidateSimpleForm(id,URL,form_id){ValidateForm(id,URL,form_id,false,null,null,null,true);}
function UpdateAllLinks(obj,name){var new_value=obj.checked;var all=document.getElementsByName(name);for(var i=0;i<all.length;i++){all[i].checked=new_value;}}
function CheckLinkSelected(form_id,link_name){var checked=false;var form_obj=document.getElementById(form_id+"_form");if(form_obj){var reg=new RegExp(link_name+"\[[0-9]*\]","im");for(var i=0;i<form_obj.length;i++){if(form_obj.elements[i].name.match(reg)&&form_obj.elements[i].checked){checked=true;break;}}}
return checked;}
function autoComplete(id,values,forcematch){var field=document.getElementById(id);if(field){var found=false;for(var i=0;i<values.length;i++){if(values[i].toUpperCase().indexOf(field.value.toUpperCase())==0){found=true;break;}}
if(field.createTextRange){if(forcematch&&!found){field.value=field.value.substring(0,field.value.length-1);return;}
var cursorKeys="8;46;37;38;39;40;33;34;35;36;45;";if(cursorKeys.indexOf(event.keyCode+";")==-1){var r1=field.createTextRange();var oldValue=r1.text;var newValue=found?values[i]:oldValue;if(newValue!=field.value){field.value=newValue;var rNew=field.createTextRange();rNew.moveStart('character',oldValue.length);rNew.select();}}}}}
function UpdateValue(id,value){var obj=document.getElementById(id);if(obj){if(obj.value==value){obj.value=null;}
else{obj.value=value;}}}
function ToggleValue(id,value){var obj=document.getElementById(id);if(obj){if(obj.value){obj.value='';}
else{obj.value=value;}}}
var CurrentDataField=null;function DateSelector_callback(resp,xmlhttp){if(UpdateContent_callback(resp,xmlhttp,true)){MoveTo("DateSelector",xmlhttp.params.left,xmlhttp.params.top);$('#DateSelector').fadeIn();}}
function ShowDateSelector(link,form_id,field_id){var form_obj=document.getElementById(form_id+"_form");if(form_obj){var sibling=$(link).siblings('#'+field_id);if(sibling){var year;var month;var d=new Date();year=d.getFullYear();month=d.getMonth()+1;var parts=ParseDate(sibling.val(),true);if(parts){if(parts["year"]>1902&&parts["year"]<2038){year=parts["year"];month=parts["month"];}}
var DateSelectorPopup=CreatePopUp("DateSelector","StandardPopUp","body","Date Selector");CurrentDataField=sibling;var params=sibling.offset();UpdateContent('DateSelector_Body','/date_selector.php?Year='+year+'&Month='+month,DateSelector_callback,params);}}}
function SelectDate(year,month,day){if(CurrentDataField){var datevalue=CurrentDataField.val().split(" ");if(month<10)month='0'+month;if(day<10)day='0'+day;switch(prefs['Core']['Date Format Input']){case'd-m-Y':datevalue[0]=day+'-'+month+'-'+year;break;case'Y/m/d':datevalue[0]=year+'/'+month+'/'+day;break;default:case'm/d/Y':datevalue[0]=month+'/'+day+'/'+year;break;}
CurrentDataField.val(datevalue.join(" "));CurrentDataField=null;}
BoxHide("DateSelector");}
function ShowRows(EditId,value){var e_all=EditId+'_all';var e_can_hide=EditId+'_can_hide';try{var edit_all=eval(e_all);var edit_can_hide=eval(e_can_hide);for(var i=0;i<edit_all.length;i++){var obj=document.getElementById(EditId+"_row_"+edit_all[i]);if(obj){if($.inArray(edit_all[i],edit_can_hide[value])!=-1){obj.style.display='block';}
else{obj.style.display='none';}}}}
catch(e){return;}}
function ClearForm(form_id,focus_field){var form=document.getElementById(form_id+'_form');form.reset();if(focus_field){SetFocus(form_id+'_form',focus_field);}}
function SubmitForm_callback(resp,xmlhttp){alert(resp);}
function SubmitForm(form_id,form_url,alert_text){var form=document.getElementById(form_id+'_form');var params={"form_id":form_id,"alert_text":alert_text};var HTTPobj=new XMLHttp(SubmitForm_callback,params);HTTPobj.PostContent(form_url,form_id);}
function AddSelectedFilter(filter_id){var column=$('#'+filter_id+'_add').val();var arrInfo=window[filter_id+'_info'];if(arrInfo&&arrInfo[column]){$('#'+filter_id+'_form').append(arrInfo[column][COLUMN_DATA]);}}
function RemoveFilter(filter){$(filter).parent().remove();}
function ClearSelectedFilter(filter_id,css_class){$('#'+filter_id+'_form .'+css_class).remove();}
function UpdateLinkedDropdown(main_id,linked_id,url){var obj_main=document.getElementById(main_id);var obj_linked=document.getElementById(linked_id);if(obj_main&&obj_linked){var main_value=obj_main.options[obj_main.selectedIndex].value;if(main_value=="NULL"){obj_linked.selectedIndex=0;}
else{UpdateContent(linked_id,url+main_value);}}}
function UpdateLinkedInput(main_id,linked_id,url){var obj_main=document.getElementById(main_id);var obj_linked=document.getElementById(linked_id);if(obj_main&&obj_linked){var main_value=obj_main.options[obj_main.selectedIndex].value;obj_linked.disabled=GetJSON(url+main_value);}}
function FileUpload(FilePostName,FilePostURL,ButtonPlaceholderId){var swfu=new SWFUpload({upload_url:FilePostURL,file_post_name:FilePostName,file_size_limit:"1 GB",file_types:"*.*",file_types_description:"All Files",file_upload_limit:"0",file_queue_limit:"0",swfupload_loaded_handler:swfUploadLoaded,file_dialog_start_handler:fileDialogStart,file_queued_handler:fileQueued,file_queue_error_handler:fileQueueError,file_dialog_complete_handler:fileDialogComplete,upload_progress_handler:uploadProgress,upload_error_handler:uploadError,upload_success_handler:uploadSuccess,upload_complete_handler:uploadComplete,button_image_url:"XPButtonUploadText_61x22.png",button_placeholder_id:ButtonPlaceholderId,button_width:61,button_height:22,flash_url:"/swfupload.swf",custom_settings:{progress_target:"fsUploadProgress",upload_successful:false},debug:false});return swfu;};var CurrentFileField=null;var CurrentFileParams={'Format':'_#_','Value':4};function FileSelector_callback(resp,xmlhttp){if(UpdateContent_callback(resp,xmlhttp,true)){$('#FileSelector').center().fadeIn();}}
function ShowFileSelector(form_id,field_id,FileParams){var form_obj=document.getElementById(form_id+"_form");if(form_obj){for(var i=0;i<form_obj.length;i++){if(form_obj.elements[i].id==field_id){var FileSelectorPopup=CreatePopUp("FileSelector","StandardPopUp","body","File Selector");CurrentFileField=form_obj.elements[i];if(FileParams){CurrentFileParams=$.extend(CurrentFileParams,FileParams);}
var params={"field":form_obj.elements[i].id};UpdateContent('FileSelector_Body','/file_selector.php',FileSelector_callback,params);}}}}
function SelectFile(file_xid,Source){if(CurrentFileField){var result=GetJSON("/file_selector.php?Mode=GetFileName&Source="+Source+"&FileId="+file_xid+"&Value="+CurrentFileParams.Value);CurrentFileField.value=CurrentFileParams.Format.replace('_#_',result);CurrentFileField=null;CurrentFileParams={'Format':'_#_','Value':4};}
BoxHide("FileSelector");}
