
(function($){var active_popup_params={};var formControls={};$(document).keydown(function(e){if(e.which!=27)return;if($('#j_dim_screen').attr('required'))return;$.popup.close(active_popup_params.callback);if(window.parent&&typeof(window.parent.boxnet_close_popup)=='function')
{window.parent.boxnet_close_popup();}});$.dim={start:function(modal){this.stop();var dim=$('<div id="j_dim_screen"></div>').appendTo(document.body);var height=Math.max($(window).height(),$(document).height());var width=Math.min($(window).width(),$(document).width());dim.height(height).width(width).removeAttr('required');if(!modal)dim.click($.popup.close);return dim;},stop:function(){$('#j_dim_screen').remove();}};$.popup={add_instructions:function(input,instructions)
{if(!instructions)return;input.focus(function()
{if(input.val()==instructions)
{input.val('').css('color','#000000');}}).blur(function()
{if(!$.trim(input.val()))
{input.val(instructions).css('color','#777777');}});input.blur();},alert:function(title,message,params){params=params||{};if(params.close)setTimeout($.popup.close,params.close);params.zindex=10000;return $.popup.form(title,[{type:'html',data:message},{type:'buttons',items:{okay:[params.okayButton||$t('Okay','popup_button_okay'),$.popup.close]}}],params);},confirm:function(title,message,params,callback){if($.isFunction(params)){callback=params;params=null;}
params=params||{};if(!params.help)
{params.help={hide:true};}
active_popup_params.callback=callback;if(typeof callback!='function')return;return $.popup.form(title,[{type:'html',data:message},{type:'buttons',items:{okay:[params.okayButton||$t('Okay','popup_button_okay'),function(){if(!params.leaveOpen){$.popup.close(function(){callback(true);});}
else{callback(true);}}],cancel:[params.cancelButton||$t('Cancel','popup_button_cancel'),function(){if(!params.leaveOpen){$.popup.close(function(){callback(false);});}
else{callback(false);}}]}}],params);},prompt:function(title,message,defaultMessage,params,callback){if(typeof params=='function'){callback=params;params=null;}
params=params||{};active_popup_params.callback=callback;if(typeof callback!='function')return;return $.popup.form(title,[{type:'input',label:message,linebreak:true,name:'prompt',value:defaultMessage},{type:'buttons',items:{okay:[params.okayButton||$t('Okay','popup_button_okay'),function(data){$.popup.close(function(){callback(data.prompt);});}],cancel:[params.cancelButton||$t('Cancel','popup_button_cancel'),function(){$.popup.close(function(){callback(null);});}]}}],params);},addControl:function(control,callback){formControls[control]=callback;},renderControl:function(controlName,params){if(controlName==null)return;if(typeof controlName=='string'){params=params||{};params.oldType=params.type;}
else if(typeof controlName=='object'){params=controlName;controlName=params.type||params[0];}
if(params==null)return null;if(params.constructor==Array&&typeof params[0]!='string'){return $.popup.renderControl({type:'section',contents:params});}
if(controlName.substr(controlName.length-1)=='/'){controlName=controlName.substr(0,controlName.length-1);}
var control=formControls[controlName](params);if(params.css)
{control.css(params.css);}
return control;},_collectData:function()
{var values={};$('#j_popup_form').find('input, button, textarea, select').each(function(){if(!this.name)return;if(this.type=='radio'&&!this.checked){return;}
if(this.type=='checkbox'){values[this.name]=this.checked?1:'';return;}
var val=(this.tagName!='BUTTON')?this.value:$('span span',this).text();if(this.type=='text'||this.type=='textarea')
{var j_this=$(this).focus();val=j_this.val();j_this.blur();}
if(typeof values[this.name]=='undefined'){values[this.name]=val;}
else if(typeof values[this.name]=='string'){values[this.name]=[values[this.name],val];}else{values[this.name].push(val);}});return values;},form:function(title,data,params){params=params||{};$.popup.title=title;$.popup.data=data;$.popup.params=params;$.popup.selected_tab=null;var contents=createControls(data);var popup=$.popup.open(title,contents,params);return popup;},get:function(){return $('#j_popup');},data:null,params:null,title:null,selected_tab:null,open:function(title,contents,params){params=params||{};$.popup.loading=false;var is_existing_popup=$.popup.get().is(':visible');var favicon_url=params.favicon_url||null;var favicon_class=params.favicon_class||null;var height=params.height||'auto';var left=typeof params.left!='undefined'?params.left:'auto';var required=params.required||false;var top=typeof params.top!='undefined'?params.top:'auto';var use_dim=typeof params.use_dim!='undefined'?params.use_dim:true;var width=params.width||408;var help=params.help||{};if(!help.href)help.href="/help/new";if(!help.text)help.text=$t('HELP','popup_help');if(!is_existing_popup){var html='<div id="j_popup" style="position:absolute;">'
+' <div id="j_popup_top">'
+'  <div id="j_popup_top_left"></div>'
+'  <div id="j_popup_top_middle"></div>'
+'  <div id="j_popup_top_right"></div>'
+' </div>'
+' <table id="j_popup_table"><tr id="j_popup_body">'
+'  <td id="j_popup_body_shadow_left"></td>'
+'  <td id="j_popup_body_main">'
+'   <div id="j_popup_title">'
+'    <div id="j_popup_title_text" '+(params.title_class?'class="'+params.title_class+'" ':'')+'>'+(title||'Message')+'</div>'
+(!help.hide?' <a id="j_popup_title_help" href="'+help.href+'" target="_blank">'+help.text+'</a>':'')
+'    <div class="clearer"/>'
+'    <ul id="j_popup_tabs"></ul>'
+'   </div>'
+'   <div id="j_popup_body_contents"></div>'
+'  </td>'
+'  <td id="j_popup_body_shadow_right"></td>'
+' </tr></table>'
+' <div id="j_popup_bottom">'
+'  <div id="j_popup_bottom_left"></div>'
+'  <div id="j_popup_bottom_middle"></div>'
+'  <div id="j_popup_bottom_right"></div>'
+' </div>'
+'</div>';var popup=$(html).appendTo(document.body);if(params.zindex)popup.css('z-index',params.zindex);}else{var popup=$.popup.get();if(title)$('#j_popup_title_text').text(title);}
var tabs=contents.find('> li.j_popup_tab');$('ul#j_popup_tabs').empty().append(tabs);if(!tabs.length)$('ul#j_popup_tabs').css('padding',0);popup.find('#j_popup_body_contents').empty().append(contents);$('#j_popup_top').css('width',width+6);$('#j_popup_top_middle').css('width',width);$('#j_popup_body_main').css('height',height).css('width',width-3);$('#j_popup_bottom').css('width',width+6);$('#j_popup_bottom_middle').css('width',width);var windowHeight=$(window).height();if(left=='auto')left=($(window).width()-popup.outerWidth())/2;if(top=='auto')top=171;left+=$(window).scrollLeft();top+=$(window).scrollTop();if(favicon_url){$('#j_popup_title_text').css('background-image','url('+favicon_url+')');}
if(favicon_class){$('#j_popup_title_text').addClass('popup_header_favicon_'+favicon_class);}
if(use_dim){var dim=$.dim.start(params.modal);if(required)$.popup.require();}
popup.css({left:left,top:top});if($.isFunction(popup.draggable)){popup.draggable({handle:'#j_popup_top, #j_popup_title',end:params.drag_callback});}
var controls=popup.find('input[type!="submit"], select, button, textarea').filter(':visible');if(controls.size()==0)return;if(params.default_focus)
{var element=controls.filter('[name='+params.default_focus+']');}
if(!element||element.size()==0)
{var element=controls.slice(0,1);}
element.focus();if(!element.hasClass('button')&&element.get(0).select)element.get(0).select();if($.popup.selected_tab&&typeof($.popup.selected_tab.init_callback)=='function')$.popup.selected_tab.init_callback(popup);$(window).trigger('popup.open');return popup;},require:function(){$('#j_dim_screen').unbind('click').click(function(){return false;}).attr('required','true');},setContents:function(popup,contents){popup.find('#j_popup_body_contents').empty().append(contents);},close:function(callback,force){$(window).trigger('popup.close');var popup=$.popup.get();var doAfter=function(){popup.remove();$.dim.stop();if(typeof callback=='function')callback();};if(popup.size()==0||force)return doAfter();return popup.unbind().fadeOut('fast',doAfter);}};var createControls=function(contents){var container=$('<form id="j_popup_form" method="post" enctype="multipart/form-data"></form>');var first_tab=null;for(var i=0;i<contents.length;i++){if(contents[i]&&contents[i].type=='tab')
{var tab=contents[i];if(!first_tab)
{first_tab=tab;}
if(tab.selected)
{if($.popup.selected_tab)
{tab.selected=false;}
else
{$.popup.selected_tab=tab;}}}}
if(!$.popup.selected_tab&&first_tab)
{first_tab.selected=true;$.popup.selected_tab=first_tab;}
for(var i=0;i<contents.length;i++){var control=$.popup.renderControl(contents[i]);if(control)
{control.appendTo(container);}}
if(container.find('input[type=image], input[type=submit]').size()==0){$('<input type="submit" value="Submit" />').css({left:-10000,position:'absolute'}).prependTo(container);}
container.submit(function(){container.find('.button_control:first').click();return false;});return container;};$.popup.addControl('base',function(params){var el=$('<div></div>');var label=params.label?$('<strong class="label"></strong>').append(params.label):null;if(params.label&&params.label_width)
{$j(label).css('width',params.label_width);}
var linebreak=params.linebreak;if(typeof params.linebreak=='undefined'&&params.oldType)linebreak=(params.oldType.substr(params.oldType.length-1)=='/');if(label){el.append(label);linebreak?el.append('<br />'):el.addClass('same_line clearfix');}
if(params.hidden)el.css('display','none');if(params.base_id)el.attr('id',params.base_id);return el;});$.popup.addControl('html',function(params){if(params.constructor==Array){params={data:params[1],type:params[0]};}
return $('<div'+(params.base_id?' id="'+params.base_id+'"':'')+'></div>').html(params.data);});$.popup.addControl('text',function(params){if(params.constructor==Array){params={data:params[1],type:params[0]}}
return $('<div></div>').text(params.data);});$.popup.addControl('input',function(params){if(params.constructor==Array){params={label:params[1],name:params[2],type:params[0],value:params[3],instructions:params[4]};}
var input=$('<input type="text" />').attr({name:params.name,value:params.value});$.popup.add_instructions(input,params.instructions);return $.popup.renderControl('base',params).append(input);});$.popup.addControl('readonly',function(params){var el=$.popup.renderControl('input',params);el.children('input').attr('readonly','readonly').click(function(e){this.select();});return el;});$.popup.addControl('password',function(params){if(params.constructor==Array){params={label:params[1],name:params[2],type:params[0],value:params[3]};}
var input=$('<input type="password" />').attr({name:params.name,value:params.value});return $.popup.renderControl('base',params).append(input);});$.popup.addControl('hidden',function(params){if(params.constructor==Array){params={name:params[1],type:params[0],value:params[2]};}
var input=$('<input type="hidden" />').attr({name:params.name,value:params.value});return $('<div></div>').append(input);});$.popup.addControl('file',function(params){if(params.constructor==Array){params={label:params[1],name:params[2],type:params[0]};}
var input=$('<input type="file" />').attr('name',params.name);return $.popup.renderControl('base',params).append(input);});$.popup.addControl('textarea',function(params){if(params.constructor==Array){params={label:params[1],name:params[2],type:params[0],value:params[3],instructions:params[4],readonly:params[5]};}
var cols=params.cols||30;var rows=params.rows||4;var textarea=$('<textarea cols="'+cols+'" rows="'+rows+'">'+(params.value||'')+'</textarea>').attr('name',params.name);if(params.readonly)textarea.attr('readonly','true');if(params.maxLength)
{var maxLength=params.maxLength;textarea.bind("click mouseup blur keyup input",function(e)
{var length=this.value.length;if(length>=maxLength)
{this.value=this.value.substr(0,maxLength-1);alert("This message cannot exceed "+maxLength+" characters");}});}
if(params.instructions)
{textarea.focus(function()
{if(textarea.val()==params.instructions)
{textarea.val('').css('color','#000000');}}).blur(function()
{if(!$.trim(textarea.val()))
{textarea.val(params.instructions).css('color','#777777');}});textarea.blur();}
if(params.auto_resize)
{var min=params.min_rows||1;var max=params.max_rows||999;function calculate_rows(o)
{j_o=$j(o);if(typeof(j_test_div_autoresize)=='undefined'||!j_test_div_autoresize)
{j_test_div_autoresize=$j('<div></div>').css({width:j_o.css('width'),position:'absolute','left':'-10000px',padding:j_o.css('padding'),'font-size':j_o.css('font-size'),'font-family':j_o.css('font-family')}).appendTo('body');}
var one_row_height=j_test_div_autoresize.text('one').height();var current_height=j_test_div_autoresize.html($j.text(j_o.val()).replace(/\n/g,'<br>').replace(/\s{2}/g,' &nbsp;')).height();if(!current_height)return 0;return(Math.ceil(current_height/one_row_height));}
textarea.keyup(function()
{var me=this;setTimeout(function()
{if(!me.rows||me.rows<min)me.rows=min;if(me.rows==1&&min==1&&max>min&&me.value)min=2;while((me.clientHeight>=me.scrollHeight&&me.rows>1&&me.rows<=max)||me.rows>max)
{me.rows-=1;}
while((me.clientHeight<me.scrollHeight||me.rows<min)&&me.rows<max)
{me.rows+=1;}
if((me.rows>=2&&me.rows+1<=max&&me.rows==calculate_rows(me)))
{me.rows+=1;}
if(me.rows==max&&me.clientHeight<me.scrollHeight)
{$j(me).css({'overflow':'scroll','overflow-y':'scroll','overflow-x':'hidden'}).get(0).focus();if($j.browser.mozilla)$j(me).scrollTop($j(me).scrollTop()+16);}
else
{$j(me).css({'overflow':'hidden','overflow-y':'hidden'}).get(0).focus();}},0);}).keyup();}
return $.popup.renderControl('base',params).append(textarea);});$.popup.addControl('radio',function(params){if(params.constructor==Array){params={items:params[4],label:params[1],name:params[2],type:params[0],value:params[3]};}
var el=$.popup.renderControl('base',params);var checked_item=0;for(var j=0;j<params.items.length;j++){if(!params.items[j])continue;if(params.items[j].value!=params.value)continue;checked_item=j;}
for(var j=0;j<params.items.length;j++){if(!params.items[j])continue;var radio_item=params.items[j];var radio='<input type="radio" name="'+params.name+'"';var id=radio_item.id?radio_item.id:'rl_'+name+'_'+radio_item.value;radio+=' style="display:inline;width:auto;border:0;'+(params.input_style?params.input_style:'')+'"';radio+=' value="'+radio_item.value+'"';radio+=' id="'+id+'"';if(j==checked_item)radio+=' checked="checked"';if(radio_item.disabled)radio+=' disabled="true"';radio+=' />';radio=$(radio);var label=$('<label for="'+id+'"'+(params.label_style?'style="'+params.label_style+'"':'')+(radio_item.disabled?'class="label_disabled" ':'')+'></label>').html(radio_item.label).prepend(radio).appendTo(el);if(params.linebreak&&!radio_item.nobr)label.append('<br />');if($.isFunction(radio_item.click))radio.click(radio_item.click);}
return el;});$.popup.addControl('dropdown',function(params){if(params.constructor==Array){params={type:params[0],label:params[1],name:params[2],value:params[3],items:params[4],id:params[5],disabled:params[6],label_width:params[7]}}
var el=$.popup.renderControl('base',params);if(params.left_indent)el.addClass('left_indent');var dropdown=$('<select name="'+params.name+'"></select>');if(params.disabled)dropdown.attr('disabled',params.disabled);if(params.id)dropdown.attr('id',params.id);var option_to_select=null;for(var j=0;j<params.items.length;j++){var dropdown_item=params.items[j];if(dropdown_item.label==null||dropdown_item.value==null)continue;var option=$('<option></option>').val(dropdown_item.value).text(dropdown_item.label).appendTo(dropdown);if(j==0||dropdown_item.value==params.value)option_to_select=option;}
if(option_to_select)option_to_select[0].selected=true;el.append(dropdown);return el;});$.popup.addControl('checkbox',function(params){if(params.constructor==Array){params={checked:params[3],label:params[1],name:params[2],type:params[0]}}
var el=$('<div></div>');if(params.inline)el.css('display','inline');if(params.linebreak)el.append($j('<br/>'));if(params.name=='skip_popup')
{var checkbox=$('<label></label>').css({color:'#999',display:'block',fontSize:11,fontWeight:'normal',textAlign:'center'});$('<input type="checkbox" />').attr('name','skip_popup').css({border:0,width:'auto'}).val(1).appendTo(checkbox);$('<span></span>').text(params.label).appendTo(checkbox);el.append(checkbox);}
else
{var span_style=[];if(!$j.browser.msie)span_style.push('vertical-align:bottom');if(params.alignment)span_style.push('position:relative;top:3px');var checkbox='<label style="line-height:15px;'+(params.style?params.style:'')+'"><input type="checkbox"';checkbox+=' style="width: auto;vertical-align:middle;border:0;position:relative;top:1px'+(params.alignment?';float:left':'')+'"';checkbox+=' name="'+params.name+'"';if(params.checked)checkbox+=' checked="checked"';if(params.disabled)checkbox+=' disabled="true"';checkbox+=' /><span'+(span_style.length?' style="'+span_style.join(';')+'">':'>')+params.label+'</span></label>';var j_checkbox=$(checkbox);j_checkbox.appendTo(el);if(params.click)el.click(params.click);if(params.tooltip)
{el.hover(function(e)
{box_new_tooltip.show(this,params.tooltip.body,params.tooltip.title);},function(e)
{box_new_tooltip.hide()});}}
return el;});$.popup.addControl('datepicker',function(params){var el=$.popup.renderControl('input',params).addClass('datepicker');el.find('input').attr('readonly','readonly');var datepicker=el.find('input');$('<img src="'+images_url+'calender_drop.gif" />').click(function(){if(params.disabled)return;datepicker.datepicker('show');}).appendTo(el);if(params.disabled)
{datepicker.attr('readonly','true');}
var delete_icon=$('<img src="'+images_url+'icon_menu_delete_o.gif" class="delete_date" />').click(function(){datepicker.val('');delete_icon.hide();}).appendTo(el);if(datepicker.val()=='')delete_icon.css('display','none');datepicker.change(function(e){if(datepicker.val()==''){delete_icon.click();return;}
delete_icon.show();});if(!params.disabled)
{$(window).one('popup.open',function(){datepicker.datepicker({changeFirstDay:false,changeMonth:false,changeYear:false,hideIfNoPrevNext:true,mandatory:true,minDate:new Date(),showOn:'click'});});}
return el;});$.popup.addControl('button',function(params){if(params.constructor==Array){params={click:params[2],getValues:params[3],notSubmit:params[4],type:params[0],value:params[1]}};var el=$('<button class="button"></button>').click(function(e){e.preventDefault();$(window).trigger('popup.submit');if(!params.getValues){params.click.call(this);return;}
var values=$.popup._collectData();params.click.call(this,values,this.form);});if(!params.notSubmit)el.addClass('button_control');el.hover(function(e){$(this).addClass('button_hover');},function(e){$(this).removeClass('button_hover');});if(params.wide)
{$('<span style="padding-left:10px"></span>').append($('<span style="padding-right:10px"></span>').text(params.value||'')).appendTo(el);}
else
{$('<span></span>').append($('<span></span>').text(params.value||'')).appendTo(el);}
return el;});$.popup.addControl('section',function(params){var el=$('<div class="field_group"></div>');if(params.left_indent)el.addClass('left_indent');if(params.id)el.attr('id',params.id);var group=$('<div></div>').appendTo(el);if(params['class'])el.addClass(params['class']);if(!params.contents)params.contents=[];if(params.label||params.handle){if(params.label){if(params.collapsable){var handle=$('<a href="#"></a>').text(params.label)
$('<label></label>').append(handle).prependTo(el);}else{$('<label></label>').text(params.label).prependTo(el);}}else{var handle=$(params.handle);}
if(params.collapsable){handle.click(function(e){group.toggle();return false;});}}
if(params.collapsed)group.css('display','none');if(params.fill)
{var filler=$('<div id="options_filler"></div>');filler.get(0).style.height=params.fill;if(!params.collapsed)filler.hide();el.append(filler);}
$.each(params.contents,function(i){var control=$.popup.renderControl(params.contents[i]);if(control)control.appendTo(group);});if(params.align)group.css('text-align',params.align);return el;});$.popup.addControl('buttons',function(params){var controls=[];$.popup.loading=false;var active_button=null;$.each(params.items,function(i){var click=params.items[i];if(!click)return;var name=i;if(click.constructor==Array){name=click[0];click=click[1];}
if(!$.isFunction(click))return;controls.push({type:'button',value:name,getValues:true,click:function(data,form){if($.popup.loading)return;$.popup.loading=true;active_button=[this,$(this).find('span span').text()];if(!params.notSubmit)
{$(this).find('span span').text($t('Loading...','popup_button_loading'));}
$.popup.require();click.call(this,data,form);},wide:params.wide,notSubmit:params.notSubmit});});$.popup.revert=function(new_focus){$('#j_dim_screen').unbind('click').click($.popup.close).removeAttr('required');$.popup.loading=false;if(active_button)
{$(active_button[0]).find('span span').text(active_button[1]);active_button=null;}
if(new_focus)
{$('#j_popup_form').find('input[name="'+new_focus+'"]').focus();}};return $.popup.renderControl({type:'section',align:'center',contents:controls});});$.popup.addControl('tab',function(params){var j_tab=$('<li class="j_popup_tab"><a '+(params.id?'id="'+params.id+'" ':'')+'class="j_popup_tab_link" href="#">'+(params.favicon?'<img alt="" src="'+params.favicon+'"/>':'')+params.label+'</a></li>');if(params.selected)
{$.popup.selected_tab=params;j_tab.addClass('selected');controls=createControls(params.contents);j_tab.click(function(){return false;});j_tab=controls.prepend(j_tab).children();}
else
{j_tab.click(function()
{var values=$.popup._collectData();var types=['input','textarea','checkbox','boxFolderSelector'];for(var t in $.popup.data)
{if($.popup.data[t].label==params.label)
{$.popup.selected_tab.values=values;}
for(var c in $.popup.data[t].contents)
{var control=$.popup.data[t].contents[c];for(var i in control)
{var input=control[i];if(!input||!input.type)continue;if($j.inArray(input.type,types)!=-1)
{if(input.type=='boxFolderSelector')
{var j_folder_selector=$.popup.get().find('button[name=box_folder_selector]');var temp_id=j_folder_selector.attr('rel');if(temp_id)
{input.defaultFolderID=temp_id;input.defaultFolderName=j_folder_selector.find('span span').text();}
if($j('#folder_tree').is(':visible'))$j(document.body).click();}
else if(typeof(values[input.name])!='undefined')
{if(input.type=='input'||input.type=='textarea')
{input.value=values[input.name];}
else if(input.type=='checkbox')
{input.checked=values[input.name]?'checked':'';}}}}}}
$.popup.selected_tab.selected=false;$.popup.selected_tab=params;$.popup.selected_tab.selected=true;$.popup.form($.popup.title,$.popup.data,$.popup.params);return false;});}
return j_tab;});})(jQuery);