Date._DN=new Array
("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");Date._SDN=new Array
("Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun");Date._MN=new Array
("January","February","March","April","May","June","July","August","September","October","November","December");Date._SMN=new Array
("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");Date._MD=new Array(31,28,31,30,31,30,31,31,30,31,30,31);Date.SECOND=1000;Date.MINUTE=60*Date.SECOND;Date.HOUR=60*Date.MINUTE;Date.DAY=24*Date.HOUR;Date.WEEK=7*Date.DAY;Date.parseDate=function(str,fmt){var today=new Date();var y=0;var m=-1;var d=0;var a=str.split(/\W+/);var b=fmt.match(/%./g);var i=0,j=0;var hr=0;var min=0;for(i=0;i<a.length;++i){if(!a[i])
continue;switch(b[i]){case"%d":case"%e":d=parseInt(a[i],10);break;case"%m":m=parseInt(a[i],10)-1;break;case"%Y":case"%y":y=parseInt(a[i],10);(y<100)&&(y+=(y>29)?1900:2000);break;case"%b":case"%B":for(j=0;j<12;++j){if(Date._MN[j].substr(0,a[i].length).toLowerCase()==a[i].toLowerCase()){m=j;break;}}
break;case"%H":case"%I":case"%k":case"%l":hr=parseInt(a[i],10);break;case"%P":case"%p":if(/pm/i.test(a[i])&&hr<12)
hr+=12;else if(/am/i.test(a[i])&&hr>=12)
hr-=12;break;case"%M":min=parseInt(a[i],10);break;}}
if(isNaN(y))y=today.getFullYear();if(isNaN(m))m=today.getMonth();if(isNaN(d))d=today.getDate();if(isNaN(hr))hr=today.getHours();if(isNaN(min))min=today.getMinutes();if(y!=0&&m!=-1&&d!=0)
return new Date(y,m,d,hr,min,0);y=0;m=-1;d=0;for(i=0;i<a.length;++i){if(a[i].search(/[a-zA-Z]+/)!=-1){var t=-1;for(j=0;j<12;++j){if(Date._MN[j].substr(0,a[i].length).toLowerCase()==a[i].toLowerCase()){t=j;break;}}
if(t!=-1){if(m!=-1){d=m+1;}
m=t;}}else if(parseInt(a[i],10)<=12&&m==-1){m=a[i]-1;}else if(parseInt(a[i],10)>31&&y==0){y=parseInt(a[i],10);(y<100)&&(y+=(y>29)?1900:2000);}else if(d==0){d=a[i];}}
if(y==0)
y=today.getFullYear();if(m!=-1&&d!=0)
return new Date(y,m,d,hr,min,0);return today;};Date.prototype.getMonthDays=function(month){var year=this.getFullYear();if(typeof month=="undefined"){month=this.getMonth();}
if(((0==(year%4))&&((0!=(year%100))||(0==(year%400))))&&month==1){return 29;}else{return Date._MD[month];}};Date.prototype.getDayOfYear=function(){var now=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var then=new Date(this.getFullYear(),0,0,0,0,0);var time=now-then;return Math.floor(time/Date.DAY);};Date.prototype.getWeekNumber=function(){var d=new Date(this.getFullYear(),this.getMonth(),this.getDate(),0,0,0);var DoW=d.getDay();d.setDate(d.getDate()-(DoW+6)%7+3);var ms=d.valueOf();d.setMonth(0);d.setDate(4);return Math.round((ms-d.valueOf())/(7*864e5))+1;};Date.prototype.equalsTo=function(date){return((this.getFullYear()==date.getFullYear())&&(this.getMonth()==date.getMonth())&&(this.getDate()==date.getDate())&&(this.getHours()==date.getHours())&&(this.getMinutes()==date.getMinutes()));};Date.prototype.setDateOnly=function(date){var tmp=new Date(date);this.setDate(1);this.setFullYear(tmp.getFullYear());this.setMonth(tmp.getMonth());this.setDate(tmp.getDate());};Date.prototype.__msh_oldSetFullYear=Date.prototype.setFullYear;Date.prototype.setFullYear=function(y){var d=new Date(this);d.__msh_oldSetFullYear(y);if(d.getMonth()!=this.getMonth())
this.setDate(28);this.__msh_oldSetFullYear(y);};Date.prototype.print=function(str){var m=this.getMonth();var d=this.getDate();var y=this.getFullYear();var wn=this.getWeekNumber();var w=this.getDay();var s={};var hr=this.getHours();var pm=(hr>=12);var ir=(pm)?(hr-12):hr;var dy=this.getDayOfYear();if(ir==0)
ir=12;var min=this.getMinutes();var sec=this.getSeconds();s["%a"]=Date._SDN[w];s["%A"]=Date._DN[w];s["%b"]=Date._SMN[m];s["%B"]=Date._MN[m];s["%C"]=1+Math.floor(y/100);s["%d"]=(d<10)?("0"+d):d;s["%e"]=d;s["%H"]=(hr<10)?("0"+hr):hr;s["%I"]=(ir<10)?("0"+ir):ir;s["%j"]=(dy<100)?((dy<10)?("00"+dy):("0"+dy)):dy;s["%k"]=hr;s["%l"]=ir;s["%m"]=(m<9)?("0"+(1+m)):(1+m);s["%M"]=(min<10)?("0"+min):min;s["%n"]="\n";s["%p"]=pm?"PM":"AM";s["%P"]=pm?"pm":"am";s["%s"]=Math.floor(this.getTime()/1000);s["%S"]=(sec<10)?("0"+sec):sec;s["%t"]="\t";s["%U"]=s["%W"]=s["%V"]=(wn<10)?("0"+wn):wn;s["%u"]=w+1;s["%w"]=w;s["%y"]=(''+y).substr(2,2);s["%Y"]=y;s["%%"]="%";var re=/%./g;var a=str.match(re);for(var i=0;i<a.length;i++){var tmp=s[a[i]];if(tmp){re=new RegExp(a[i],'g');str=str.replace(re,tmp);}}
return str;};Date.prototype.dateEqualsTo=function(date){return((this.getFullYear()==date.getFullYear())&&(this.getMonth()==date.getMonth())&&(this.getDate()==date.getDate()));};Ext.ux.XmlTreeLoader=Ext.extend(Ext.tree.TreeLoader,{XML_NODE_ELEMENT:1,XML_NODE_TEXT:3,processResponse:function(response,node,callback){var xmlData=response.responseXML;var root=xmlData.documentElement||xmlData;try{node.beginUpdate();node.appendChild(this.parseXml(root));node.endUpdate();if(typeof callback=="function"){callback(this,node);}}catch(e){this.handleFailure(response);}},parseXml:function(node){var nodes=[];Ext.each(node.childNodes,function(n){if(n.nodeType==this.XML_NODE_ELEMENT){var treeNode=this.createNode(n);if(n.childNodes.length>0){var child=this.parseXml(n);if(typeof child=='string'){treeNode.attributes.innerText=child;}else{treeNode.appendChild(child);}}
nodes.push(treeNode);}
else if(n.nodeType==this.XML_NODE_TEXT){var text=n.nodeValue.trim();if(text.length>0){return nodes=text;}}},this);return nodes;},createNode:function(node){var attr={tagName:node.tagName};Ext.each(node.attributes,function(a){attr[a.nodeName]=a.nodeValue;});this.processAttributes(attr);return Ext.ux.XmlTreeLoader.superclass.createNode.call(this,attr);},processAttributes:Ext.emptyFn});var spServerName="";var detailsText;var spTreePanel;var btnSharePointImportAttach;var spTreeMutex=false;function setSPServerName(serverName){spServerName=serverName;}
function spAttachItem(){var newHtml="";if($('dURL').innerHTML!=="na"){var sUrl=$('dURL').innerHTML;newHtml='<br/><a href="'+sUrl+'">SharePoint: ';newHtml+=sUrl.substr(sUrl.lastIndexOf('/')+1)+'</a>';tinyMCE.execCommand('mceSetContent',false,tinyMCE.activeEditor.getContent()+newHtml);}else if($('dDATA').innerHTML!=="na"){newHtml="<br/>"+$('dNAME').innerHTML+"<br/>";newHtml+=$('dDATA').innerHTML.replace(/\|\|/g,"<br/>");tinyMCE.execCommand('mceSetContent',false,tinyMCE.activeEditor.getContent()+newHtml);}}
Ext.app.spListLoader=Ext.extend(Ext.ux.XmlTreeLoader,{processAttributes:function(attr){if(attr.tagName==="web"){attr.text=attr.title;if(attr.description){attr.text=attr.text;}
attr.iconCls='sp-web';attr.loaded=true;attr.expanded=true;}
else if(attr.tagName==="view"){attr.text=attr.list;attr.iconCls='sp-view';attr.loaded=true;}
else if(attr.tagName==="item"){attr.text=attr.name;attr.iconCls='sp-item';attr.leaf=true;}}});function createSpTree(svrurl){try
{if(spTreeMutex){return;}
spTreeMutex=true;if(typeof(svrurl)==="string"){spServerName=svrurl.replace(/^htt.*:\/\//i,'');}
Ext.Ajax.timeout=120000;detailsText='<p>Loading...  <img src="/images/indicator.gif"></p>';var tpl=new Ext.Template('<div class="k-ratings-text"><b>Name:</b> <span id="dNAME">{name}</span>','<br/><b>URL:</b> <span id="dURL">{url:defaultValue("na")}</span>','<br/><b>Data:</b> <span id="dDATA">{data:defaultValue("na")}</span></div>');tpl.compile();btnSharePointImportAttach=new Ext.Toolbar.Button({id:'btnEmbed',text:'Attach',icon:"/images/send_sm.gif",cls:"x-btn-text-icon",disabled:true,handler:spAttachItem});var tbTreePanel=new Ext.Toolbar();spTreePanel=new Ext.Panel({title:'Server: '+spServerName,renderTo:'tree',layout:'border',collapsible:true,height:420,items:[{xtype:'treepanel',id:'tree-panel',region:'center',margins:'2 2 0 2',tbar:tbTreePanel,autoScroll:true,rootVisible:false,root:new Ext.tree.AsyncTreeNode(),loader:new Ext.app.spListLoader({dataUrl:'/convs/get_sharepoint_lists'}),listeners:{'render':function(tp){tp.getSelectionModel().on('selectionchange',function(tree,node){var el=Ext.getCmp('details-panel').body;if(node.leaf){tpl.overwrite(el,node.attributes);btnSharePointImportAttach.enable();}else{btnSharePointImportAttach.disable();el.update("<p>Select an item to attach...</p>");}});},'load':function(thenode){var el=Ext.getCmp('details-panel').body;el.update("<p>Select an item to attach...</p>");}}},{region:'south',title:'Details',id:'details-panel',autoScroll:true,collapsible:false,split:true,margins:'0 2 2 2',cmargins:'2 2 2 2',height:120,html:detailsText}]});tbTreePanel.addButton(btnSharePointImportAttach);if($(tinymce)!==null){if($('pwiki_content_edit')!==null){if($('pwiki_content_edit').visible()){if(typeof(console)!=="undefined"){console.log("createSpTree(1) all conditions true");}
btnSharePointImportAttach.show();}else{if(typeof(console)!=="undefined"){console.log("createSpTree(2) pwiki editor exists, but hidden");}
btnSharePointImportAttach.hide();}}else{if(typeof(console)!=="undefined"){console.log("createSpTree(3) tinymce exists, pwiki editor does not");}
btnSharePointImportAttach.show();}}else{if(typeof(console)!=="undefined"){console.log("createSpTree(4) no tinymce");}
btnSharePointImportAttach.hide();}}catch(err){if(typeof(console)!=="undefined"){console.error("createSpTree(): "+err.name+": ln("+err.lineNumber+"): "+err.message);for(var i in err){console.log(i+' = '+err[i]);}}else{window.status="createSpTree(): "+err.name+": en("+(err.number&0xffff)+"): "+err.description;}}finally{Ext.Ajax.timeout=30000;spTreeMutex=false;reloadViewport();}}
Ext.dynamic=function(){var msgCt;function createBox(t,s){return['<div class="msg">','<div class="x-box-tl"><div class="x-box-tr"><div class="x-box-tc"></div></div></div>','<div class="x-box-ml"><div class="x-box-mr"><div class="x-box-mc"><h3>',t,'</h3>',s,'</div></div></div>','<div class="x-box-bl"><div class="x-box-br"><div class="x-box-bc"></div></div></div>','</div>'].join('');}
return{msg:function(title,format){if(!msgCt){msgCt=Ext.DomHelper.insertFirst(document.body,{id:'msg-div'},true);}
msgCt.alignTo(document,'t-t');var s=String.format.apply(String,Array.prototype.slice.call(arguments,1));var m=Ext.DomHelper.append(msgCt,{html:createBox(title,s)},true);m.slideIn('t').pause(1).ghost("t",{remove:true});},init:function(){var t=Ext.get('exttheme');if(!t){return;}
var theme=Cookies.get('exttheme')||'aero';if(theme){t.dom.value=theme;Ext.getBody().addClass('x-'+theme);}
t.on('change',function(){Cookies.set('exttheme',t.getValue());setTimeout(function(){window.location.reload();},250);});var lb=Ext.get('lib-bar');if(lb){lb.show();}}};}();Ext.onReady(Ext.dynamic.init,Ext.dynamic);function dateChanged(date){setupAgenda(date);};function todayClicked(calendar){today=new Date();refreshCalendar(today,calendar);setupAgenda(today);}
function refreshCalendar(date,calendar){$('loading-calendar-widget').show();if(meeting_cache[current_year]==undefined){meeting_cache[current_year]=new Array();}
if(meeting_cache[current_year][current_month]==undefined){meeting_cache[current_year][current_month]=new Array();}
meeting_cache[current_year][current_month]['meeting_agenda']=meeting_agenda;meeting_cache[current_year][current_month]['DAYS_WITH_PUBLISHED_CONVS']=DAYS_WITH_PUBLISHED_CONVS;today=new Date();month=date.getMonth();year=date.getFullYear();if(meeting_cache[year]==undefined||meeting_cache[year][month]==undefined){new Ajax.Request('/convs/month_agenda',{asynchronous:true,evalScripts:true,onComplete:function(response){meeting_data=response.responseText.evalJSON();DAYS_WITH_PUBLISHED_CONVS=meeting_data.dates_list;meeting_agenda=meeting_data.meetings_min;$('loading-calendar-widget').hide();current_year=year;current_month=month-1;calendar.refreshCalendarGrid();},parameters:{month:month+1,day:date.getDay(),year:year}});}else{meeting_agenda=meeting_cache[year][month]['meeting_agenda'];DAYS_WITH_PUBLISHED_CONVS=meeting_cache[year][month]['DAYS_WITH_PUBLISHED_CONVS'];$('loading-calendar-widget').hide();current_year=year;current_month=month;calendar.refreshCalendarGrid();}}
function setupAgenda(calendar_date){var m=calendar_date.getMonth();var d=calendar_date.getDate();if(m!=current_month)return;today=new Date()
if(today.dateEqualsTo(calendar_date)){printed_date=calendar_date.print("%a, %b %e")+" (Today)";}else{printed_date=calendar_date.print("%a, %b %e");}
$('k-agenda-day').innerHTML=printed_date;$('k-agenda-list').innerHTML='';resetMeetingData();if(meeting_agenda[d]==undefined){$('k-agenda-list').innerHTML="<div id=\"k-agenda-no-items\">No Meetings Scheduled</div>";}else{meeting_agenda[d].each(function(m,i){row=i%2?"even":"odd";attending=m['attending']?"attending":"";attending_text=m['attending']?" (attending)":"";time="<div class=\"k-agenda-time\">"+determineCalendarTimeFormat(m,calendar_date)+"</div>"
name="<div class=\"k-agenda-name\" onclick=\"loadCalendarMeetingData("+d+","+m['id']+")\">"+m['name']+attending_text+"</div>"
$('k-agenda-list').insert("<div class=\"k-agenda-item "+attending+" "+row+"\">"+time+name+"<div style=\"clear:both;height:1px;\"></div></div>");});}}
function determineCalendarTimeFormat(item,date){offset=((date.getTimezoneOffset()*60)+item['utc_offset'])*1000;start_date=new Date(item['start_date']);start_date.setTime(start_date.getTime()+offset)
end_date=new Date(item['end_date']);end_date.setTime(end_date.getTime()+offset)
if(item["all_day"]){return"All Day";}
else if(item["multiday"]){if(date.dateEqualsTo(start_date)){return"Starts "+item['start_time_string'];}else if(date.dateEqualsTo(end_date)){return"Ends "+item['end_time_string'];}
return"sdfsdf";}
else if(item['end_date']!=null){return"<span class='k-tf-start_date'>"+item['start_time_string']+" - </span><span class='k-tf-start_date'>"+item['end_time_string']+"</span>";}
else{return item['start_time_string'];}}
function loadCalendarMeetingData(day,meeting_id){resetMeetingData();meeting_agenda[day].each(function(item){if(item['id']==meeting_id){today=new Date();start_date=new Date(item['start_date']);end_date=new Date(item['end_date']);$('k-cmd-name').innerHTML=item['name'];$('k-cmd-name').href="/meetings/show/"+item['id'];$('k-cmd-ics').href="/meetings/show/"+item['id']+".ics";if(item['all_day']&&!item['multiday']){$('k-cmd-all-day').show();}
if(!item['all_day']||item['multiday']){$('k-cmd-start-date').innerHTML="Start Date: "+item['start_time_string']+', '+item['start_date_string'];$('k-cmd-start-date').show();}
if((!item['all_day']||item['multiday'])&&item['end_date']!=null){$('k-cmd-end-date').innerHTML="End Date: "+item['end_time_string']+', '+item['end_date_string'];$('k-cmd-end-date').show();}
if($("k-cmd-join")!=null&&end_date>today){if(KALIVO.current_user_id&&item['created_by']!=KALIVO.current_user_id){if(item['attending']){$("k-cmd-leave").show();}else{$("k-cmd-join").show();$('k-cmd-join-img').title=item['invited']?'Accept Invitation':'Request Meeting Invitation';}}}
$("k-calender-meeting-data").show();getMeetingData(meeting_id);return;}});}
function resetMeetingData(){$("k-calender-meeting-data").hide();$("k-cmd-all-day").hide();$("k-cmd-start-date").hide();$("k-cmd-end-date").hide();$("k-cmd-description").hide();$("k-cmd-num_of_attendees").hide();if($("k-cmd-join")!=null){$("k-cmd-join").hide();};if($("k-cmd-leave")!=null){$("k-cmd-leave").hide();};}
var meeting_data_cache;function getMeetingData(id){if(meeting_data_cache==undefined)meeting_data_cache=new Array();$('loading-calendar-meeting-data').show();$('k-cmd-meeting-id').value=id;if(meeting_data_cache[id]==undefined){new Ajax.Request('/meetings/meeting_data',{asynchronous:true,evalScripts:true,onComplete:function(response){meetings_data=response.responseText.evalJSON();meeting_data_cache[id]=meetings_data;loadMeetingData(meetings_data);},parameters:{id:id}});}else{loadMeetingData(meeting_data_cache[id]);}}
function loadMeetingData(md){$('loading-calendar-meeting-data').hide();$('k-cmd-description').innerHTML=md['description'];$('k-cmd-num_of_attendees').innerHTML="Number of Attendees: "+md['num_of_attendees'];$("k-cmd-description").show();$("k-cmd-num_of_attendees").show();}
function leaveMeeting(id,join,leave,indicator){indicator.show();leave.hide();new Ajax.Request('/meetings/leave',{asynchronous:true,evalScripts:true,onComplete:function(response){indicator.hide();join.show();},parameters:{id:id}});}
function joinMeeting(id,join,leave,indicator){indicator.show();join.hide();new Ajax.Request('/meetings/join',{asynchronous:true,evalScripts:true,onComplete:function(response){indicator.hide();if(leave!=null){leave.show();}},parameters:{id:id}});}
function dateIsSpecial(year,month,day){var m=DAYS_WITH_PUBLISHED_CONVS[month];if(!m)return false;for(i=0;i<m.length;i++){if(m[i]==day)return true;}
return false;}
function loadAgendaDate(month,day,cal_day){$$('.k-ma-active-day').each(function(element){element.removeClassName('k-ma-active-day')});var month_day=$('k-ma-day-'+month+'-'+day);if(month_day){$('k-ma-day-'+month+'-'+day).addClassName('k-ma-active-day');if(cal_day!=null){cal_day.className=cal_day.className+" k-ma-active-day";}
scrollDiv($('k-meetings-agenda'),$('k-ma-day-'+month+'-'+day));}}
var meeting_calendar_cache=new Array();function loadMonth(month,year,current_month,current_year){$('loading-meeting-calendar').show();if(meeting_calendar_cache[year]==undefined){meeting_calendar_cache[year]=new Array();}
if(meeting_calendar_cache[current_year]==undefined){meeting_calendar_cache[current_year]=new Array();}
meeting_calendar_cache[current_year][current_month]=$('k-meetings-calendar-container').innerHTML;if(meeting_calendar_cache[year][month]==undefined){new Ajax.Request('/meetings/meeting_calendar',{asynchronous:true,evalScripts:true,onComplete:function(response){meetings_calendar=response.responseText;$('loading-meeting-calendar').hide();$('k-meetings-calendar-container').innerHTML=meetings_calendar;},parameters:{month:month,year:year}});}else{$('k-meetings-calendar-container').innerHTML=meeting_calendar_cache[year][month];$('loading-meeting-calendar').hide();}}
var meeting_details_loaded;function loadMeetingDetails(id,date,toggle){if(meeting_details_loaded==undefined)meeting_details_loaded=new Array();if(meeting_details_loaded[date+'-'+id]===true){$('k-ma-meeting-details-'+date+'-'+id).toggle();if($('k-ma-meeting-details-'+date+'-'+id).visible()){$(toggle).src="/images/close_details.png";}else{$(toggle).src="/images/open_details.png";}}else{$('k-ma-meeting-details-'+date+'-'+id).show();$(toggle).src="/images/close_details.png";$('k-ma-meeting-details-'+date+'-'+id).innerHTML="<img class=\"k-md-indicator\" src=\"/images/indicator.gif\" alt=\"Loading ... Please wait\"/>";new Ajax.Request('/meetings/meeting_details',{asynchronous:true,evalScripts:true,onComplete:function(response){meetings_details=response.responseText;meeting_details_loaded[date+'-'+id]=true;$('k-ma-meeting-details-'+date+'-'+id).innerHTML=meetings_details;},parameters:{id:id}});}}
function updateEndDate(start_date_id,end_date_id,format){sd_el=$(start_date_id);ed_el=$(end_date_id);start_date=false;end_date=false;if(sd_el.value){start_date=Date.parseFormattedString(sd_el.value,format);}
if(ed_el.value){end_date=Date.parseFormattedString(ed_el.value,format);}
if(start_date&&(!end_date||start_date>end_date)){start_date.setHours(start_date.getHours()+1);ed_el.value=start_date.print(format);}}
function checkEndDate(start_date_id,end_date_id,format){sd_el=$(start_date_id);ed_el=$(end_date_id);start_date=false;end_date=false;if(sd_el.value){start_date=Date.parseFormattedString(sd_el.value,format);}
if(ed_el.value){end_date=Date.parseFormattedString(ed_el.value,format);}
if(end_date){if(!start_date){end_date.setHours(end_date.getHours()-1);sd_el.value=end_date.print(format);}else if(start_date>end_date){alert("End Date can not before Start Date")
new CalendarDateSelect(ed_el,{after_close:function(param){return checkEndDate(start_date_id,end_date_id,format);},popup:'force',time:true,year_range:10});}}}
function calDateFormat(format){switch(format){case'int':date_format="%Y-%m-%d";break;case'us_friend':date_format="%b %d, %Y";break;case'euro':date_format="%d/%m/%Y";break;default:date_format="%m/%d/%Y";break;}
return date_format;}
function calTimeFormat(format){switch(format){case'mil':time_format="%H:%M";break;default:time_format="%I:%M %p";break;}
return time_format;}
Date.prototype.kalivoToFormattedString=function(include_time,date,time){dateFormat=calDateFormat(date);timeFormat=calTimeFormat(time);return include_time?this.print(dateFormat+' '+timeFormat):this.print(dateFormat);}
function kalivoParseFormattedString(string,date,time){dateFormat=calDateFormat(date);timeFormat=calTimeFormat(time);return Date.parseDate(string,dateFormat+' '+timeFormat);}
function findPos(obj){var curleft=0;var curtop=0;if(obj.offsetParent){do{curleft+=obj.id=='kalivo_lightwindow'?0:obj.offsetLeft;curtop+=obj.offsetTop;obj=obj.offsetParent;}
while(obj);}
return[curleft,curtop];}
if(typeof Prototype=='undefined')alert("CalendarDateSelect Error: Prototype could not be found. Please make sure that your application's layout includes prototype.js (.g. <%= javascript_include_tag :defaults %>) *before* it includes calendar_date_select.js (.g. <%= calendar_date_select_includes %>).");if(Prototype.Version<"1.6")alert("Prototype 1.6.0 is required.  If using earlier version of prototype, please use calendar_date_select version 1.8.3");Element.addMethods({purgeChildren:function(element){$A(element.childNodes).each(function(e){$(e).remove();});},build:function(element,type,options,style){var newElement=Element.build(type,options,style);element.appendChild(newElement);return newElement;}});Element.build=function(type,options,style)
{var e=$(document.createElement(type));$H(options).each(function(pair){eval("e."+pair.key+" = pair.value");});if(style)
$H(style).each(function(pair){eval("e.style."+pair.key+" = pair.value");});return e;};nil=null;Date.one_day=24*60*60*1000;Date.weekdays=$w("S M T W T F S");Date.first_day_of_week=0;Date.months=$w("January February March April May June July August September October November December");Date.padded2=function(hour){var padded2=parseInt(hour,10);if(hour<10)padded2="0"+padded2;return padded2;}
Date.prototype.getPaddedMinutes=function(){return Date.padded2(this.getMinutes());}
Date.prototype.getAMPMHour=function(){var hour=this.getHours();return(hour==0)?12:(hour>12?hour-12:hour)}
Date.prototype.getAMPM=function(){return(this.getHours()<12)?"AM":"PM";}
Date.prototype.stripTime=function(){return new Date(this.getFullYear(),this.getMonth(),this.getDate());};Date.prototype.daysDistance=function(compare_date){return Math.round((compare_date-this)/Date.one_day);};Date.prototype.toFormattedString=function(include_time){var hour,str;str=Date.months[this.getMonth()]+" "+this.getDate()+", "+this.getFullYear();if(include_time){hour=this.getHours();str+=" "+this.getAMPMHour()+":"+this.getPaddedMinutes()+" "+this.getAMPM()}
return str;}
Date.parseFormattedString=function(string){return new Date(string);}
Math.floor_to_interval=function(n,i){return Math.floor(n/i)*i;}
window.f_height=function(){return([window.innerHeight?window.innerHeight:null,document.documentElement?document.documentElement.clientHeight:null,document.body?document.body.clientHeight:null].select(function(x){return x>0}).first()||0);}
window.f_scrollTop=function(){return([window.pageYOffset?window.pageYOffset:null,document.documentElement?document.documentElement.scrollTop:null,document.body?document.body.scrollTop:null].select(function(x){return x>0}).first()||0);}
_translations={"OK":"OK","Now":"Now","Today":"Today"}
SelectBox=Class.create();SelectBox.prototype={initialize:function(parent_element,values,html_options,style_options){this.element=$(parent_element).build("select",html_options,style_options);this.populate(values);},populate:function(values){this.element.purgeChildren();var that=this;$A(values).each(function(pair){if(typeof(pair)!="object"){pair=[pair,pair]};that.element.build("option",{value:pair[1],innerHTML:pair[0]})});},setValue:function(value){var e=this.element;var matched=false;$R(0,e.options.length-1).each(function(i){if(e.options[i].value==value.toString()){e.selectedIndex=i;matched=true;};});return matched;},getValue:function(){return $F(this.element)}}
CalendarDateSelect=Class.create();CalendarDateSelect.prototype={initialize:function(target_element,options){this.target_element=$(target_element);if(!this.target_element){alert("Target element "+target_element+" not found!");return false;}
if(this.target_element.tagName!="INPUT")this.target_element=this.target_element.down("INPUT")
this.target_element.calendar_date_select=this;this.last_click_at=0;this.options=$H({embedded:false,popup:nil,time:false,buttons:true,year_range:10,close_on_click:nil,minute_interval:5,popup_by:this.target_element,month_year:"dropdowns",onchange:this.target_element.onchange,valid_date_check:nil}).merge(options||{});this.use_time=this.options.get("time");this.parseDate();this.callback("before_show")
this.initCalendarDiv();if(!this.options.get("embedded")){this.positionCalendarDiv()
Event.observe(document,"mousedown",this.closeIfClickedOut_handler=this.closeIfClickedOut.bindAsEventListener(this));Event.observe(document,"keypress",this.keyPress_handler=this.keyPress.bindAsEventListener(this));}
this.callback("after_show")},positionCalendarDiv:function(){var above=false;var c_pos=this.calendar_div.cumulativeOffset(),c_left=c_pos[0],c_top=c_pos[1],c_dim=this.calendar_div.getDimensions(),c_height=c_dim.height,c_width=c_dim.width;var w_top=window.f_scrollTop(),w_height=window.f_height();var e_dim=findPos(this.options.get("popup_by")),e_top=e_dim[1],e_left=e_dim[0],e_height=$(this.options.get("popup_by")).getDimensions().height,e_bottom=e_top+e_height;if(((e_bottom+c_height)>(w_top+w_height))&&(e_bottom-c_height>w_top))above=true;var left_px=e_left.toString()+"px",top_px=(above?(e_top-c_height):(e_top+e_height)).toString()+"px";this.calendar_div.style.left=left_px;this.calendar_div.style.top=top_px;this.calendar_div.setStyle({visibility:""});if(navigator.appName=="Microsoft Internet Explorer")this.iframe=$(document.body).build("iframe",{src:"javascript:false",className:"ie6_blocker"},{left:left_px,top:top_px,height:c_height.toString()+"px",width:c_width.toString()+"px",border:"0px"})},initCalendarDiv:function(){if(this.options.get("embedded")){var parent=this.target_element.parentNode;var style={}}else{var parent=document.body
var style={position:"absolute",visibility:"hidden",left:0,top:0}}
this.calendar_div=$(parent).build('div',{className:"calendar_date_select"},style);var that=this;$w("top header body buttons footer bottom").each(function(name){eval("var "+name+"_div = that."+name+"_div = that.calendar_div.build('div', { className: 'cds_"+name+"' }, { clear: 'left'} ); ");});this.initHeaderDiv();this.initButtonsDiv();this.initCalendarGrid();this.updateFooter("&#160;");this.refresh();this.setUseTime(this.use_time);},initHeaderDiv:function(){var header_div=this.header_div;this.close_button=header_div.build("a",{innerHTML:"x",href:"#",onclick:function(){this.close();return false;}.bindAsEventListener(this),className:"close"});this.next_month_button=header_div.build("a",{innerHTML:"&gt;",href:"#",onclick:function(){this.navMonth(this.date.getMonth()+1);return false;}.bindAsEventListener(this),className:"next"});this.prev_month_button=header_div.build("a",{innerHTML:"&lt;",href:"#",onclick:function(){this.navMonth(this.date.getMonth()-1);return false;}.bindAsEventListener(this),className:"prev"});if(this.options.get("month_year")=="dropdowns"){this.month_select=new SelectBox(header_div,$R(0,11).map(function(m){return[Date.months[m],m]}),{className:"month",onchange:function(){this.navMonth(this.month_select.getValue())}.bindAsEventListener(this)});this.year_select=new SelectBox(header_div,[],{className:"year",onchange:function(){this.navYear(this.year_select.getValue())}.bindAsEventListener(this)});this.populateYearRange();}else{this.month_year_label=header_div.build("span")}},initCalendarGrid:function(){var body_div=this.body_div;this.calendar_day_grid=[];var days_table=body_div.build("table",{cellPadding:"0px",cellSpacing:"0px",width:"100%"})
var weekdays_row=days_table.build("thead").build("tr");Date.weekdays.each(function(weekday){weekdays_row.build("th",{innerHTML:weekday});});var days_tbody=days_table.build("tbody")
var row_number=0,weekday;for(var cell_index=0;cell_index<42;cell_index++)
{weekday=(cell_index+Date.first_day_of_week)%7;if(cell_index%7==0)days_row=days_tbody.build("tr",{className:'row_'+row_number++});(this.calendar_day_grid[cell_index]=days_row.build("td",{calendar_date_select:this,onmouseover:function(){this.calendar_date_select.dayHover(this);},onmouseout:function(){this.calendar_date_select.dayHoverOut(this)},onclick:function(){this.calendar_date_select.updateSelectedDate(this,true);},className:(weekday==0)||(weekday==6)?" weekend":""})).build("div");this.calendar_day_grid[cell_index];}},initButtonsDiv:function()
{var buttons_div=this.buttons_div;if(this.options.get("time"))
{var blank_time=$A(this.options.get("time")=="mixed"?[[" - ",""]]:[]);buttons_div.build("span",{innerHTML:"@",className:"at_sign"});var t=new Date();this.hour_select=new SelectBox(buttons_div,blank_time.concat($R(0,23).map(function(x){t.setHours(x);return $A([t.getAMPMHour()+" "+t.getAMPM(),x])})),{calendar_date_select:this,onchange:function(){this.calendar_date_select.updateSelectedDate({hour:this.value});},className:"hour"});buttons_div.build("span",{innerHTML:":",className:"seperator"});var that=this;this.minute_select=new SelectBox(buttons_div,blank_time.concat($R(0,59).select(function(x){return(x%that.options.get('minute_interval')==0)}).map(function(x){return $A([Date.padded2(x),x]);})),{calendar_date_select:this,onchange:function(){this.calendar_date_select.updateSelectedDate({minute:this.value})},className:"minute"});}else if(!this.options.get("buttons"))buttons_div.remove();if(this.options.get("buttons")){buttons_div.build("span",{innerHTML:"&#160;"});if(this.options.get("time")=="mixed"||!this.options.get("time"))b=buttons_div.build("a",{innerHTML:_translations["Today"],href:"#",onclick:function(){this.today(false);return false;}.bindAsEventListener(this)});if(this.options.get("time")=="mixed")buttons_div.build("span",{innerHTML:" | ",className:"button_seperator"})
if(this.options.get("time"))b=buttons_div.build("a",{innerHTML:_translations["Now"],href:"#",onclick:function(){this.today(true);return false}.bindAsEventListener(this)});if(!this.options.get("embedded"))
{buttons_div.build("span",{innerHTML:"&#160;"});buttons_div.build("a",{innerHTML:_translations["OK"],href:"#",onclick:function(){this.close();return false;}.bindAsEventListener(this)});}}},refresh:function()
{this.refreshMonthYear();this.refreshCalendarGrid();this.setSelectedClass();this.updateFooter();},refreshCalendarGrid:function(){this.beginning_date=new Date(this.date).stripTime();this.beginning_date.setDate(1);this.beginning_date.setHours(12);var pre_days=this.beginning_date.getDay()
if(pre_days<3)pre_days+=7;this.beginning_date.setDate(1-pre_days+Date.first_day_of_week);var iterator=new Date(this.beginning_date);var today=new Date().stripTime();var this_month=this.date.getMonth();vdc=this.options.get("valid_date_check");for(var cell_index=0;cell_index<42;cell_index++)
{day=iterator.getDate();month=iterator.getMonth();cell=this.calendar_day_grid[cell_index];Element.remove(cell.childNodes[0]);div=cell.build("div",{innerHTML:day});if(this.options.get("special_days")){special_days=eval(this.options.get("special_days"));if((month==this_month)&&special_days[this_month]&&special_days[this_month].indexOf(day)>=0){cell.addClassName("special_day");}else{cell.removeClassName("special_day");}}
if(month!=this_month)div.className="other";cell.day=day;cell.month=month;cell.year=iterator.getFullYear();if(vdc){if(vdc(iterator.stripTime()))cell.removeClassName("disabled");else cell.addClassName("disabled")};iterator.setDate(day+1);}
if(this.today_cell)this.today_cell.removeClassName("today");if($R(0,41).include(days_until=this.beginning_date.stripTime().daysDistance(today))){this.today_cell=this.calendar_day_grid[days_until];this.today_cell.addClassName("today");}},refreshMonthYear:function(){var m=this.date.getMonth();var y=this.date.getFullYear();if(this.options.get("month_year")=="dropdowns")
{this.month_select.setValue(m,false);var e=this.year_select.element;if(this.flexibleYearRange()&&(!(this.year_select.setValue(y,false))||e.selectedIndex<=1||e.selectedIndex>=e.options.length-2))this.populateYearRange();this.year_select.setValue(y);}else{this.month_year_label.update(Date.months[m]+" "+y.toString());}},populateYearRange:function(){this.year_select.populate(this.yearRange().toArray());},yearRange:function(){if(!this.flexibleYearRange())
return $R(this.options.get("year_range")[0],this.options.get("year_range")[1]);var y=this.date.getFullYear();return $R(y-this.options.get("year_range"),y+this.options.get("year_range"));},flexibleYearRange:function(){return(typeof(this.options.get("year_range"))=="number");},validYear:function(year){if(this.flexibleYearRange()){return true;}else{return this.yearRange().include(year);}},dayHover:function(element){var hover_date=new Date(this.selected_date);hover_date.setYear(element.year);hover_date.setMonth(element.month);hover_date.setDate(element.day);this.updateFooter(hover_date.toFormattedString(this.use_time));},dayHoverOut:function(element){this.updateFooter();},clearSelectedClass:function(){if(this.selected_cell)this.selected_cell.removeClassName("selected");},setSelectedClass:function(){if(!this.selection_made)return;this.clearSelectedClass()
if($R(0,42).include(days_until=this.beginning_date.stripTime().daysDistance(this.selected_date.stripTime()))){this.selected_cell=this.calendar_day_grid[days_until];this.selected_cell.addClassName("selected");}},reparse:function(){this.parseDate();this.refresh();},dateString:function(){return(this.selection_made)?this.selected_date.toFormattedString(this.use_time):"&#160;";},parseDate:function()
{var value=$F(this.target_element).strip()
this.selection_made=(value!="");this.date=value==""?NaN:Date.parseFormattedString(this.options.get("date")||value);if(isNaN(this.date))this.date=new Date();if(!this.validYear(this.date.getFullYear()))this.date.setYear((this.date.getFullYear()<this.yearRange().start)?this.yearRange().start:this.yearRange().end);this.selected_date=new Date(this.date);this.use_time=/[0-9]:[0-9]{2}/.exec(value)?true:false;this.date.setDate(1);},updateFooter:function(text){if(!text)text=this.dateString();this.footer_div.purgeChildren();this.footer_div.build("span",{innerHTML:text});},updateSelectedDate:function(partsOrElement,via_click){var parts=$H(partsOrElement);if((this.target_element.disabled||this.target_element.readOnly)&&this.options.get("popup")!="force")return false;if(parts.get("day")){var t_selected_date=this.selected_date,vdc=this.options.get("valid_date_check");for(var x=0;x<=3;x++)t_selected_date.setDate(parts.get("day"));t_selected_date.setYear(parts.get("year"));t_selected_date.setMonth(parts.get("month"));if(vdc&&!vdc(t_selected_date.stripTime())){return false;}
this.selected_date=t_selected_date;this.selection_made=true;}
if(!isNaN(parts.get("hour")))this.selected_date.setHours(parts.get("hour"));if(!isNaN(parts.get("minute")))this.selected_date.setMinutes(Math.floor_to_interval(parts.get("minute"),this.options.get("minute_interval")));if(parts.get("hour")===""||parts.get("minute")==="")
this.setUseTime(false);else if(!isNaN(parts.get("hour"))||!isNaN(parts.get("minute")))
this.setUseTime(true);this.updateFooter();this.setSelectedClass();if(this.selection_made)this.updateValue();if(this.closeOnClick()){this.close();}
if(via_click&&!this.options.get("embedded")){if((new Date()-this.last_click_at)<333)this.close();this.last_click_at=new Date();}},closeOnClick:function(){if(this.options.get("embedded"))return false;if(this.options.get("close_on_click")===nil)
return(this.options.get("time"))?false:true
else
return(this.options.get("close_on_click"))},navMonth:function(month){(target_date=new Date(this.date)).setMonth(month);return(this.navTo(target_date));},navYear:function(year){(target_date=new Date(this.date)).setYear(year);return(this.navTo(target_date));},navTo:function(date){if(!this.validYear(date.getFullYear()))return false;this.date=date;this.callback("before_navigate",this.date);this.date.setDate(1);this.refresh();this.callback("after_navigate",this.date);return true;},setUseTime:function(turn_on){this.use_time=this.options.get("time")&&(this.options.get("time")=="mixed"?turn_on:true)
if(this.use_time&&this.selected_date){var minute=Math.floor_to_interval(this.selected_date.getMinutes(),this.options.get("minute_interval"));var hour=this.selected_date.getHours();this.hour_select.setValue(hour);this.minute_select.setValue(minute)}else if(this.options.get("time")=="mixed"){this.hour_select.setValue("");this.minute_select.setValue("");}},updateValue:function(){var last_value=this.target_element.value;this.target_element.value=this.dateString();if(last_value!=this.target_element.value)this.callback("onchange");},today:function(now){var d=new Date();this.date=new Date();var o=$H({day:d.getDate(),month:d.getMonth(),year:d.getFullYear(),hour:d.getHours(),minute:d.getMinutes()});if(!now)o=o.merge({hour:"",minute:""});this.updateSelectedDate(o,true);this.refresh();this.callback("after_today");},close:function(){if(this.closed)return false;this.callback("before_close");this.target_element.calendar_date_select=nil;Event.stopObserving(document,"mousedown",this.closeIfClickedOut_handler);Event.stopObserving(document,"keypress",this.keyPress_handler);this.calendar_div.remove();this.closed=true;if(this.iframe)this.iframe.remove();if(this.target_element.type!="hidden")this.target_element.focus();this.callback("after_close");},closeIfClickedOut:function(e){if(!$(Event.element(e)).descendantOf(this.calendar_div))this.close();},keyPress:function(e){if(e.keyCode==Event.KEY_ESC)this.close();},callback:function(name,param){if(this.options.get(name)){this.options.get(name).bind(this.target_element)(param);}}}
Date.prototype.toFormattedString=function(include_time)
{return this.kalivoToFormattedString(include_time,KALIVO.global_cal_date_format,KALIVO.global_cal_time_format);}
Date.parseFormattedString=function(string)
{return kalivoParseFormattedString(string,KALIVO.global_cal_date_format,KALIVO.global_cal_time_format);}
var ConvFunctions={updateDraftStatus:function(json){var d=new Date();var hour=d.getHours();var minute=d.getMinutes();if(hour===0){hour=12;}
if(minute<10){minute="0"+minute;}
var draft_message=$('k-draft-message');draft_message.innerHTML=json.text.replace('TIME',hour+":"+minute);draft_message.style.display='inline';draft_message.show();$('conv_id').value=json.draft_id;},resizeableConv:function(width){var parent_conv=new Ext.Resizable('parent_conv',{pinned:true,wrap:true,dynamic:true,width:width,handles:'s'});},ajaxConvUpdater:function(save_action,editor){var params=$('k-conv-form').serialize();var tmfb=$('conv_body').value;if(tinyMCE&&tinyMCE.activeEditor){tmfb=encodeURIComponent(tinyMCE.activeEditor.getContent());}
params+='&tinymce_force_body='+tmfb;var rVal=new Ajax.Updater('serverspit','/convs/'+save_action,{asynchronous:true,evalScripts:true,evalJSON:'force',onSuccess:function(request){ConvFunctions.updateDraftStatus(request.responseJSON);},onFailure:function(request){if($('conv_id')){$('conv_id').value='';}},parameters:params});},startDrafting:function(is_draft,save_drft,editor,save_action,interval){if(is_draft===''){ConvFunctions.ajaxConvUpdater(save_action,editor);var rVal=new PeriodicalExecuter(function(){if(save_drft===true){ConvFunctions.ajaxConvUpdater(save_action,editor);}},interval);}},loadConvEditTabs:function(tabs_dom_id,items){var tabs=new Ext.TabPanel({id:'k-convs-option-tab-panel',renderTo:tabs_dom_id,activeTab:0,plain:true,enableTabScroll:false,defaults:{autoHeight:true,bodyStyle:'margin-top: 10px; padding: 4px'},items:items});},embedDocInConv:function(user_id,conv_id,file,existing_embed_code){if(tinyMCE||$('resourced_conv_file')){var a=new Ajax.Request('/doc/raw_doc_html.json',{method:'get',asynchronous:true,evalJSON:'force',onSuccess:function(request){var data=Ext.util.JSON.decode(request.responseText);if($('resourced_conv_file')){$('repository_resource_id').value=data.id;if($('flash_upload_div_holder')){$('flash_upload_div_holder').hide();}
if($('resource_chosen_holder')){$('resource_chosen_holder').hide();}
if($('k-edit-add-resource')){$('k-edit-add-resource').hide();}
if($('k-edit-edit-resource')){$('k-edit-edit-resource').show();}
var raw_html=data.raw_html;if(data.raw_thumbnail_html){raw_html=data.raw_thumbnail_html+'<p style="font-size:10px">(thumbnail view)</p>';}
$('resourced_conv_file').removeClassName('loading-indicator');$('resourced_conv_file').removeClassName('nothing');$('resourced_conv_file').addClassName('resource_container');var tpl=new Ext.Template("<p>Document ready. Click 'Publish' to publish this document or <a href='#' "+"id='remove_resourced_conv_file-{resourceId}-{conv}'>remove and upload a "+"new document.</a></p><p>"+"{html}</p><p><strong>file name</strong>: {file}<br/><strong>type</strong>: {type}</p>");tpl.overwrite('resourced_conv_file',{resourceId:data.id,html:raw_html,file:data.file_name,type:data.content_type,conv:conv_id});$('resourced_conv_file').show();if($('conv_embed_code')){if(data.auto_play){if(!existing_embed_code||existing_embed_code==='false'){$('conv_embed_code').value=raw_html;}
$('conv_embed_code').enable();}else{$('conv_embed_code').value='';$('conv_embed_code').disable();}}
$('remove_resourced_conv_file-'+data.id+'-'+conv_id).observe('click',ConvFunctions.clearResource);ConvFunctions.doToSubmitButtons('enable');}else{tinyMCE.execCommand('mceInsertContent',false,data.raw_html);}},onFailure:function(request){alert('Failed to embed the document! Please try again.');if($('resourced_conv_file')){$('resourced_conv_file').removeClassName('loading-indicator');$('resourced_conv_file').addClassName('nothing');}},parameters:{user_id:user_id,file:file,conv_id:conv_id}});}},clearResource:function(event){var idArray=this.id.gsub('remove_resourced_conv_file-','').split('-');var resourceId=idArray[0];var convId=idArray[1];if(resourceId){$('repository_resource_id').value='';$('conv_embed_code').value='';$('resourced_conv_file').innerHTML='';$('resourced_conv_file').hide();$('conv_embed_code').enable();if($('flash_upload_div_holder')){$('flash_upload_div_holder').show();}
if($('resource_chosen_holder')){$('resource_chosen_holder').show();}
if($('k-edit-add-resource')){$('k-edit-add-resource').show();}
if($('k-edit-edit-resource')){$('k-edit-edit-resource').hide();}}
return false;},redirectQuickCreate:function(action,parent_conv){var conv_body=$$('.k-conv_body');conv_body[0].value=tinyMCE.activeEditor.getContent();var form=document.createElement("form");form.setAttribute("method",'post');form.setAttribute("action",'../reply');var params={id:parent_conv,'conv[subject]':$('conv_subject').value,'conv[body]':$('conv_body').value};for(var key in params){var hiddenField=document.createElement("input");hiddenField.setAttribute("type","hidden");hiddenField.setAttribute("name",key);hiddenField.setAttribute("value",params[key]);form.appendChild(hiddenField);}
document.body.appendChild(form);form.submit();},saveQuickCreate:function(opts){$('k-qc-form').hide();$('k-qc-form-msg').hide();$('k-qc-form-saving').show();var conv_body=$$('.k-conv_body');conv_body[0].value=tinyMCE.activeEditor.getContent();var rVal=new Ajax.Request('/convs/create.json',{asynchronous:true,evalScripts:true,evalJSON:'force',onComplete:function(request){var conv=request.responseJSON;if(conv.id){showFlash(conv.msg);if(opts.post_action==='edit'){if(opts.new_window){var url='http://'+window.location.host+'/convs/edit/'+conv.id;var ref=window.open(url,null);if(ref===null){showFlash('The edit window has not launched. <span onclick="window.open(\''+url+'\',null);">Click to here launch editor</span>');}}else{window.location='/convs/edit/'+conv.id;return;}}
KALIVO.dirty=false;switch(opts.reload_page){case'reload':window.location.reload();break;case'load_comment':myLightWindow.deactivate();var insert_id='k-conv-replies-for-'+$('conv_parent_id').value;$(insert_id).insert(conv.reply);location.href='#comment-'+conv.id;var rVal=new Effect.Highlight('k-comment-'+conv.id);lightwindowInit();break;case'reload_widget':myLightWindow.deactivate();refreshPortlet(null,null,opts.widget_to_reload);default:myLightWindow.deactivate();break;}}else{$('k-qc-form').show();$('k-qc-form-saving').hide();$('k-qc-form-msg').innerHTML=conv.msg;$('k-qc-form-msg').show();}},parameters:$('k-conv-form').serialize()});},doToSubmitButtons:function(action){switch(action){case'enable':ConvFunctions.enablePost();break;case'disable':ConvFunctions.disablePost();break;}},removeTinyMCE:function(){var conv_body=$$('.k-conv_body');if(conv_body!==undefined&&conv_body[0]!==undefined){var htmlElementID=conv_body[0].id;try{ApplicationFunctions.unloadTinyMCE(htmlElementID);}catch(e){}}
KALIVO.beforeDeactivate=null;},setupSharingComboBoxes:function(){var combo_width=200;var user_combo=getFilterUser();user_combo.addListener("select",ConvFunctions.writeUser);user_combo.emptyText="Search for user...";user_combo.setWidth(combo_width);user_combo.render('user-selector-ext');var group_combo=getFilterGroup();group_combo.addListener('select',ConvFunctions.writeGroup);group_combo.emptyText="Search for group...";group_combo.setWidth(combo_width);group_combo.render('group-selector-ext');},writeUser:function writeUser(cb,record,index){try{var userId=record.get('user_id');var name=record.get('user');var avatar=record.get('avatar');var jobTitle=record.get('job_title');var li_template="<li id='invitee_#{user_id}' class='selected'><span class='informal'>"+"<input id='invitee_user_id_#{user_id}' type='checkbox' checked=''"+"name='invitee[user_id][#{user_id}]' value='1'>"+"#{avatar} </span>#{name} <span class='informal'>#{jobtitle}</span></li>";var li=li_template.interpolate({user_id:userId,avatar:avatar,name:name,jobtitle:jobTitle});$('sharees').innerHTML=$('sharees').innerHTML+li;cb.clearValue();cb.initComponent();ConvFunctions.setIsOnly();}catch(err){}},writeGroup:function(cb,record,index){try{var groupId=record.get('id');var name=record.get('name');var avatar=record.get('avatar');var li_template="<li id='invitee_group_#{group_id}' class='selected'><span class='informal'>"+"<input id='invitee_group_id_#{group_id}' type='checkbox' checked=''"+"name='invitee[group_id][#{group_id}]' value='1'>"+"#{avatar} </span>#{name}</li>";var li=li_template.interpolate({group_id:groupId,avatar:avatar,name:name});$('group_sharees').innerHTML=$('group_sharees').innerHTML+li;cb.clearValue();cb.initComponent();ConvFunctions.setIsOnly();}catch(err){}},setIsOnly:function(){var isOnlyValue=$('k-conv-form').serialize().toQueryParams().is_only;if(isOnlyValue===undefined){$('rb_share_with').checked='checked';}
if($('div_not_shared')){$('div_not_shared').innerHTML="Click 'Post' to share with the selected user(s) or group(s)";}},cancelConv:function(id,url){ConvFunctions.killDraft(id);window.location=url;},enablePost:function(){$$('.k-edit-publish').each(function(button){button.observe('click',ConvFunctions.saveConv);button.removeClassName('k-edit-publish-saving');});},disablePost:function(){$$('.k-edit-publish').each(function(button){button.stopObserving('click');button.addClassName('k-edit-publish-saving');});},saveConv:function(tag_list_save){var save_draft=false;$$('.k-edit-publish').each(function(button){button.stopObserving('click');button.innerHTML='Publishing...';button.addClassName('k-edit-publish-saving');});$('tag_list').value=Object.toJSON(tag_list_save);$('conv_published').value="1";$('k-conv-form').submit();},draftConv:function(tag_list_save){var save_draft=false;$$('.k-edit-draft').each(function(button){button.stopObserving('click');button.innerHTML='Saving...';button.addClassName('k-edit-publish-saving');});$('tag_list').value=Object.toJSON(tag_list_save);$('conv_published').value="0";$('k-conv-form').submit();},killDraft:function(id){var rVal=new Ajax.Updater('formspitter','/convs/kill_draft',{asynchronous:true,evalScripts:true,parameters:{id:id}});},setupTagSearch:function(opts){var combo_width=200;var tag_combo=getFilterTag();tag_combo.id='tag-search-'+opts.guid;var f;if(opts.save){f=function(cb,record,index){if(opts.tag_list[record.json.id]){}else{ConvFunctions.saveTag({guid:opts.guid,type:'Conv',cb:cb,tag:record.json.tag,id:record.json.id,removeable:true,tag_list:opts.tag_list,save:opts.save});}};}else{f=function(cb,record,index){ConvFunctions.findTag(cb,record,index,opts);};}
tag_combo.store.baseParams.task=ConvFunctions.task_mode;tag_combo.addListener("select",f);tag_combo.forceSelection=false;tag_combo.emptyText="Search for Tag...";tag_combo.setWidth(combo_width);tag_combo.style="display:inline;";tag_combo.render('tag-selector-ext-'+opts.guid);return tag_combo;},findGroupName:function(tag){var groups=$$('.gl_group');for(var group in groups){if(groups[group].innerHTML&&groups[group].innerHTML.strip()==tag.strip()){if(groups[group].id.include('addgl')){groups[group].onclick();}else{showFlash(tag+' is already on the selected groups list');}
return true;}}
return false;},addTag:function(opts){if(opts.tag){if(opts.tag==="Search for Tag..."){return;}
if(ConvFunctions.findGroupName(opts.tag)){return;}
if(!opts.id){opts.id=Math.floor(Math.random()*10000000);opts.new_tag=true;}
ConvFunctions.writeTag(opts);if(ConvFunctions.keywordExecutor){ConvFunctions.keywordExecutor.execute();}}
var ptag=$('k-edit-ptag-'+opts.guid+'-'+opts.ptag);if(ptag){ptag.hide();}},task_mode:false,addGroupTag:function(group){if(ConvFunctions.task_mode&&group.type=='project'&&ConvFunctions.hasProject(group)){return;}
var secure=group.secure?' <img src="/images/lock_xsm.gif">':'';$('selected_group_list').insert('<div title="Click to Remove (will re-appear at the bottom of the Available Groups list)" class="gl_group"'+' id="removegl_'+group.id+'" onclick=\'ConvFunctions.removeGroupTag('+Object.toJSON(group)+')\'>'+
group.name+secure+'</div>');$('addgl_'+group.id).remove();if(ConvFunctions.task_mode&&group.type=='project'){$('project_milestones_error').hide();ConvFunctions.getMilestones(group);$$('.glg_project').each(function(project){project.addClassName('gl_disabled');});}
KALIVO.tag_list[group.guid][group.tag_id]={tag:group.name,id:group.tag_id,group_id:group.id,type:group.type};},hasProject:function(group){for(var tag in KALIVO.tag_list[group.guid]){if(KALIVO.tag_list[group.guid][tag].type=='project'){return true;}}
return false;},getMilestones:function(project){var ind=$('project_milestones_ind');ind.show();new Ajax.Request('/projects/'+project.id+'/milestones',{evalJSON:true,method:'get',onSuccess:function(response){$('project_milestones').show();var select=$('conv_milestone_id');select.innerHTML='';select.insert('<option value="0">Select a Milestone</option>');var milestones=response.responseJSON;milestones.each(function(milestone){select.insert('<option value="'+milestone.id+'">'+milestone.name+'</option>');});select.value='0';},onFailure:function(response){js_growl.addMessage({msg:response.responseJSON.msg,sticky:true});$('project_milestones_error').show();},onComplete:function(){ind.hide();}});},removeGroupTag:function(group,guid){var secure=group.secure?' <img src="/images/lock_xsm.gif">':'';$('avail_group_list').insert('<div title="Click to Add" class="gl_group glg_'+group.type+'"'+' id="addgl_'+group.id+'" onclick=\'ConvFunctions.addGroupTag('+Object.toJSON(group)+')\'>'+
group.name+secure+'</div>');$('removegl_'+group.id).remove();delete KALIVO.tag_list[group.guid][group.tag_id];if(ConvFunctions.task_mode&&!ConvFunctions.hasProject(group)){$('project_milestones_error').hide();$('project_milestones').hide();$$('.glg_project').each(function(project){project.removeClassName('gl_disabled');});}},toggleLockTag:function(cb,tag){if(cb.checked){KALIVO.tag_list[tag.guid][tag.id]={tag:tag.name,id:tag.id};}else{delete KALIVO.tag_list[tag.guid][tag.id];}},saveTag:function(opts){if(opts.tag=='Search for Tag...'){return;}
var ind=$('k-add-tag-'+opts.guid);ind.show();new Ajax.Request('/convs/tag/',{asynchronous:true,evalScripts:true,method:'post',onSuccess:function(response){ind.hide();var data=response.responseText.evalJSON();;opts.tag=data.tag;opts.id=data.tag_id;opts.is_secured=data.is_secured;opts.is_group=data.is_group;opts.group_controller=data.group_controller;opts.group_id=data.group_id;opts.group_icon=data.group_icon;ConvFunctions.writeTag(opts);},onFailure:function(response){var data=response.responseText.evalJSON();showFlash(data.msg);ind.hide();},parameters:{id:opts.guid,taggable_type:opts.type,tag_list:opts.tag,touch:true}});return false;},saveUntag:function(opts){var confirm_message=opts.secure?'Removing this tag may affect the security of this item.  ':'';confirm_message=confirm_message+"Are you sure you want to remove '"+opts.tag+"'";if(opts.confirm&&!confirm(confirm_message)){return;}
var ind=$('k-add-tag-'+opts.guid);ind.show();ConvFunctions.removeTag(opts);new Ajax.Request('/convs/untag/',{asynchronous:true,evalScripts:true,method:'post',onSuccess:function(response){ind.hide();var data=response.responseText.evalJSON();;opts.id=data.tag_id;showFlash("'"+data.tag+"' has been removed.");},onFailure:function(response){var data=response.responseText.evalJSON();showFlash(data.msg);ind.hide();},parameters:{id:opts.guid,taggable_type:opts.type,tag_list:opts.tag,touch:true}});return false;},findTag:function(cb,record,index,opts){try{opts.tag_list=opts.tag_list?opts.tag_list:KALIVO.tag_list[opts.guid];if(opts.tag_list[record.json.id]){if($('removegl_'+record.json.group_id)){showFlash(record.json.tag+' is already on the selected groups list');}}else{if(record.json.group_id&&$('addgl_'+record.json.group_id)){ConvFunctions.addGroupTag({name:record.json.tag,id:record.json.group_id,tag_id:record.json.id,secure:record.json.is_secured,guid:opts.guid});}else{ConvFunctions.writeTag({cb:cb,tag:record.json.tag,id:record.json.id,removeable:true,is_secured:record.json.is_secured,is_group:record.json.is_group,group_controller:record.json.group_controller,group_id:record.json.group_id,group_icon:record.json.group_icon,guid:opts.guid,tag_list:opts.tag_list,save:opts.save});}}}catch(err){}},writeTag:function(opts){if(!(opts.tag_list)){opts.tag_list=KALIVO.tag_list[opts.guid];}
var write_tag_list=opts.tag_list;if(write_tag_list[opts.id]){return;}
var tag=opts.tag;if(tag){tag=tag.gsub(/\?|\\|\/'|'|"|\//,'');}else{return;}
if(!tag||tag===''){return;}
write_tag_list[opts.id]={tag:tag,id:opts.id,group_id:opts.group_id,new_tag:opts.new_tag,ptag:opts.ptag};var notag=$('k-edit-no-tags-'+opts.guid);if(notag){notag.remove();}
var removeTag="";if(opts.removeable){var untag_action=opts.save?'ConvFunctions.saveUntag({guid: "'+opts.guid+'",id: "'+opts.id+'", tag_list: KALIVO.tag_list["'+opts.guid+'"], type: "Conv", tag:"'+tag+'", secure: '+(opts.is_secured?'true':'false')+' });':'ConvFunctions.removeTag({guid: "'+opts.guid+'",id: "'+opts.id+'", tag_list: KALIVO.tag_list["'+opts.guid+'"]});';removeTag="<img src='/images/remove_tag.png' class='k-edit-remove-tag' onclick='"+untag_action+"'>";}
var secureTag='';if(opts.is_secured){secureTag='<img class="k-tag-modifier" border="0" title="Secured" src="/images/lock_xsm.gif"/>';}
var groupTag='';if(opts.is_group){groupTag=' <a href="/'+opts.group_controller+'/show/'+opts.group_id+'">'+'<img class="k-tag-modifier" border="0" src="/images/'+opts.group_icon+'"/></a>';}
var tag_link="<a href='/search/search?tag="+tag+"'>"+tag+"</a>";$('k-edit-taglist-'+opts.guid).insert("<li  class=\"k-tl-tag\" id=\"k-et-item-"+opts.guid+"-"+opts.id+"\">"+removeTag+
tag_link+groupTag+secureTag+"</li>");showFlash("'"+opts.tag+"' has been added.");if(opts.cb){opts.cb.clearValue();opts.cb.initComponent();}},removeTag:function(opts){if(!(opts.tag_list)){opts.tag_list=KALIVO.tag_list[opts.guid];}
var tag_field=$('k-et-item-'+opts.guid+'-'+opts.id);if(tag_field){tag_field.remove();}
var ptag=$('k-edit-ptag-'+opts.tag_list[opts.id].ptag);if(ptag){ptag.show();}
delete opts.tag_list[opts.id];},securityClearGroups:function(opts){var tag_list_scg=KALIVO.tag_list[opts.guid];var group_list={};for(var t in tag_list_scg){if(tag_list_scg[t].group_id){group_list[tag_list_scg[t].group_id]=t;}}
opts.ids.each(function(id){var tag_id=group_list[id];if(tag_id){var rm_opts={guid:opts.guid,id:tag_id,tag_list:tag_list_scg};ConvFunctions.removeTag(rm_opts);}});},securityAddGroup:function(opts){var selector=$("secure_group_selector");var selected=Element.extend(selector[selector.selectedIndex]);var name=selected.readAttribute('name');var group_tag=selected.readAttribute('value').evalJSON();ConvFunctions.addTag({tag_list:opts.tag_list,save:false,guid:opts.guid,tag:name,id:group_tag.tag_id,group_id:group_tag.group_id,is_secured:true,is_group:true,removeable:true,group_controller:group_tag.group_controller,group_icon:group_tag.group_icon});$('group_secure_tag_option').checked=true;$('group_secure_tag_option').focus();selector.value='none';},addGroupTellAFriend:function(opts){var group_item="<li id=\"k-etag-group-"+opts.gid+"-"+opts.cid+"\"><img src='/images/remove_tag.png' onclick='ConvFunctions.removeGroupTellAFriend({gid: "+opts.gid+", cid: \""+opts.cid+"\"});' class='k-edit-remove-tag'>"+opts.name;var hidden_input="<input id=\"hidden-group-group-"+opts.gid+"-"+opts.cid+"\" style=\"display:none;\" type=\"checkbox\" value=\""+opts.gid+"\" name=\"groups_to_add[]\" checked=\"checked\"/></li>";$('group_list_to_tell_'+opts.cid).insert(group_item+hidden_input);$('k-taf-group-'+opts.gid+"-"+opts.cid).hide();$('k-edit-taf-groups').show();},removeGroupTellAFriend:function(opts){$('k-etag-group-'+opts.gid+"-"+opts.cid).remove();$('k-taf-group-'+opts.gid+"-"+opts.cid).show();},requestAccess:function(id){var a=new Ajax.Request('/convs/request_access',{method:'get',asynchronous:true,evalJSON:'force',onSuccess:function(request){var toReplace=$('request-access-'+id);if(toReplace){toReplace.innerHTML='';}
showFlash('Your request for access was sent.');},onFailure:function(request){},parameters:{id:id}});},startKeywordExecutor:function(editor,initialInterval,postInterval){function mergeCounts(c1,c2){$H(c2).each(function(w){if(c1[w.key]){c1[w.key].count+=w.value.count;}
else{c1[w.key]=w.value;}});return c1;}
ConvFunctions.keywordExecutor=new PeriodicalExecuter(function(){var subjectWordCount={};var contentWordCount={};var tagWordCount={};if($('conv_subject')&&$('conv_subject').value){var subject=$('conv_subject').value;subjectWordCount=Stemmer.stemmedWordsCount(subject,5);}
if(editor&&editor.activeEditor){var content=editor.activeEditor.getContent();if(content&&content.length>0){var contentWordCount=Stemmer.stemmedWordsCount(content);}}
if(KALIVO.tag_list){$H(KALIVO.tag_list).each(function(tags){$H(tags.value).each(function(tag){var tagName=tag.value.tag;var stemmed=Stemmer.stemmedWords(tagName);if(stemmed&&stemmed.length>0){stemmed=stemmed[0];if(tagWordCount[stemmed.stem]){tagWordCount[stemmed.stem].count+=10;}
else{tagWordCount[stemmed.stem]={orig:tagName,count:10};}}});});}
var wordCount=mergeCounts(mergeCounts(tagWordCount,subjectWordCount),contentWordCount);var max=null;$H(wordCount).each(function(w){if(!max||w.value.count>max.count){max=w.value;}});if(max&&max.count>10){if(!KALIVO.conv_keywords||KALIVO.conv_keywords[0]!=max.orig){gadgets.pubsubrouter.publish('conv_keywords',{keywords:[max.orig]});if(!KALIVO.conv_keywords){ConvFunctions.keywordExecutor.stop();ConvFunctions.keywordExecutor=new PeriodicalExecuter(ConvFunctions.keywordExecutor.callback,postInterval);}
KALIVO.conv_keywords=[max.orig];}}},initialInterval);},startSuggesting:function(){if($('conv_subject')){new Form.Element.Observer($('conv_subject'),4,ConvFunctions.getSuggetions);KALIVO.tinyMCEKeydown=ConvFunctions.tinyMCEObserver;}},tmce_timeout:0,tinyMCEObserver:function(editor,event){clearTimeout(ConvFunctions.tmce_timeout);ConvFunctions.tmce_timeout=setTimeout(ConvFunctions.getSuggetions,2000);},suggestText:'',getting_suggestions:false,getSuggetions:function(){if(ConvFunctions.getting_suggestions){return;}
ConvFunctions.getting_suggestions=true;var text=$('conv_subject').value+tinyMCE.activeEditor.getContent();if(text!=ConvFunctions.suggestText){ConvFunctions.suggestText=text;$('ind_suggest').show();new Ajax.Request('/convs/content_suggest',{onSuccess:function(response){$('suggestions_on_text_body').innerHTML=response.responseText;},onFailure:function(response){$('suggestions_on_text_body').innerHTML='No Suggestions Found';},onComplete:function(){$('ind_suggest').hide();ConvFunctions.getting_suggestions=false;},parameters:{text:ConvFunctions.suggestText}});}},SuggBodyShow:function(id){if($('body_'+id)){$('suggestion_body').innerHTML='<div class="sugg_header">Content Preview</div><div class="sugg_body">'+$('body_'+id).innerHTML+'</div>';$('suggestion_body').show();}},SuggBodyHide:function(id){$('suggestion_body').hide();}};var SWFUpload;if(SWFUpload==undefined){SWFUpload=function(settings){this.initSWFUpload(settings);};}
SWFUpload.prototype.initSWFUpload=function(settings){try{this.customSettings={};this.settings=settings;this.eventQueue=[];this.movieName="SWFUpload_"+SWFUpload.movieCount++;this.movieElement=null;SWFUpload.instances[this.movieName]=this;this.initSettings();this.loadFlash();this.displayDebugInfo();}catch(ex){delete SWFUpload.instances[this.movieName];throw ex;}};SWFUpload.instances={};SWFUpload.movieCount=0;SWFUpload.version="2.2.0 Beta 5 2008-01-29";SWFUpload.QUEUE_ERROR={QUEUE_LIMIT_EXCEEDED:-100,FILE_EXCEEDS_SIZE_LIMIT:-110,ZERO_BYTE_FILE:-120,INVALID_FILETYPE:-130};SWFUpload.UPLOAD_ERROR={HTTP_ERROR:-200,MISSING_UPLOAD_URL:-210,IO_ERROR:-220,SECURITY_ERROR:-230,UPLOAD_LIMIT_EXCEEDED:-240,UPLOAD_FAILED:-250,SPECIFIED_FILE_ID_NOT_FOUND:-260,FILE_VALIDATION_FAILED:-270,FILE_CANCELLED:-280,UPLOAD_STOPPED:-290};SWFUpload.FILE_STATUS={QUEUED:-1,IN_PROGRESS:-2,ERROR:-3,COMPLETE:-4,CANCELLED:-5};SWFUpload.BUTTON_ACTION={SELECT_FILE:-100,SELECT_FILES:-110,START_UPLOAD:-120};SWFUpload.CURSOR={ARROW:-1,HAND:-2};SWFUpload.WINDOW_MODE={WINDOW:"window",TRANSPARENT:"transparent",OPAQUE:"opaque"};SWFUpload.prototype.initSettings=function(){this.ensureDefault=function(settingName,defaultValue){this.settings[settingName]=(this.settings[settingName]==undefined)?defaultValue:this.settings[settingName];};this.ensureDefault("upload_url","");this.ensureDefault("file_post_name","Filedata");this.ensureDefault("post_params",{});this.ensureDefault("use_query_string",false);this.ensureDefault("requeue_on_error",false);this.ensureDefault("http_success",[]);this.ensureDefault("file_types","*.*");this.ensureDefault("file_types_description","All Files");this.ensureDefault("file_size_limit",0);this.ensureDefault("file_upload_limit",0);this.ensureDefault("file_queue_limit",0);this.ensureDefault("flash_url","swfupload.swf");this.ensureDefault("prevent_swf_caching",true);this.ensureDefault("button_image_url","");this.ensureDefault("button_width",1);this.ensureDefault("button_height",1);this.ensureDefault("button_text","");this.ensureDefault("button_text_style","color: #000000; font-size: 16pt;");this.ensureDefault("button_text_top_padding",0);this.ensureDefault("button_text_left_padding",0);this.ensureDefault("button_action",SWFUpload.BUTTON_ACTION.SELECT_FILES);this.ensureDefault("button_disabled",false);this.ensureDefault("button_placeholder_id","");this.ensureDefault("button_cursor",SWFUpload.CURSOR.ARROW);this.ensureDefault("button_window_mode",SWFUpload.WINDOW_MODE.WINDOW);this.ensureDefault("debug",false);this.settings.debug_enabled=this.settings.debug;this.settings.return_upload_start_handler=this.returnUploadStart;this.ensureDefault("swfupload_loaded_handler",null);this.ensureDefault("file_dialog_start_handler",null);this.ensureDefault("file_queued_handler",null);this.ensureDefault("file_queue_error_handler",null);this.ensureDefault("file_dialog_complete_handler",null);this.ensureDefault("upload_start_handler",null);this.ensureDefault("upload_progress_handler",null);this.ensureDefault("upload_error_handler",null);this.ensureDefault("upload_success_handler",null);this.ensureDefault("upload_complete_handler",null);this.ensureDefault("debug_handler",this.debugMessage);this.ensureDefault("custom_settings",{});this.customSettings=this.settings.custom_settings;if(!!this.settings.prevent_swf_caching){this.settings.flash_url=this.settings.flash_url+(this.settings.flash_url.indexOf("?")<0?"?":"&")+"preventswfcaching="+new Date().getTime();}
delete this.ensureDefault;};SWFUpload.prototype.loadFlash=function(){var targetElement,tempParent;if(document.getElementById(this.movieName)!==null){throw"ID "+this.movieName+" is already in use. The Flash Object could not be added";}
targetElement=document.getElementById(this.settings.button_placeholder_id);if(targetElement==undefined){throw"Could not find the placeholder element: "+this.settings.button_placeholder_id;}
tempParent=document.createElement("div");tempParent.innerHTML=this.getFlashHTML();targetElement.parentNode.replaceChild(tempParent.firstChild,targetElement);if(window[this.movieName]==undefined){window[this.movieName]=this.getMovieElement();}};SWFUpload.prototype.getFlashHTML=function(){return['<object id="',this.movieName,'" type="application/x-shockwave-flash" data="',this.settings.flash_url,'" width="',this.settings.button_width,'" height="',this.settings.button_height,'" class="swfupload">','<param name="wmode" value="',this.settings.button_window_mode,'" />','<param name="movie" value="',this.settings.flash_url,'" />','<param name="quality" value="high" />','<param name="menu" value="false" />','<param name="allowScriptAccess" value="always" />','<param name="flashvars" value="'+this.getFlashVars()+'" />','</object>'].join("");};SWFUpload.prototype.getFlashVars=function(){var paramString=this.buildParamString();var httpSuccessString=this.settings.http_success.join(",");return["movieName=",encodeURIComponent(this.movieName),"&amp;uploadURL=",encodeURIComponent(this.settings.upload_url),"&amp;useQueryString=",encodeURIComponent(this.settings.use_query_string),"&amp;requeueOnError=",encodeURIComponent(this.settings.requeue_on_error),"&amp;httpSuccess=",encodeURIComponent(httpSuccessString),"&amp;params=",encodeURIComponent(paramString),"&amp;filePostName=",encodeURIComponent(this.settings.file_post_name),"&amp;fileTypes=",encodeURIComponent(this.settings.file_types),"&amp;fileTypesDescription=",encodeURIComponent(this.settings.file_types_description),"&amp;fileSizeLimit=",encodeURIComponent(this.settings.file_size_limit),"&amp;fileUploadLimit=",encodeURIComponent(this.settings.file_upload_limit),"&amp;fileQueueLimit=",encodeURIComponent(this.settings.file_queue_limit),"&amp;debugEnabled=",encodeURIComponent(this.settings.debug_enabled),"&amp;buttonImageURL=",encodeURIComponent(this.settings.button_image_url),"&amp;buttonWidth=",encodeURIComponent(this.settings.button_width),"&amp;buttonHeight=",encodeURIComponent(this.settings.button_height),"&amp;buttonText=",encodeURIComponent(this.settings.button_text),"&amp;buttonTextTopPadding=",encodeURIComponent(this.settings.button_text_top_padding),"&amp;buttonTextLeftPadding=",encodeURIComponent(this.settings.button_text_left_padding),"&amp;buttonTextStyle=",encodeURIComponent(this.settings.button_text_style),"&amp;buttonAction=",encodeURIComponent(this.settings.button_action),"&amp;buttonDisabled=",encodeURIComponent(this.settings.button_disabled),"&amp;buttonCursor=",encodeURIComponent(this.settings.button_cursor)].join("");};SWFUpload.prototype.getMovieElement=function(){if(this.movieElement==undefined){this.movieElement=document.getElementById(this.movieName);}
if(this.movieElement===null){throw"Could not find Flash element";}
return this.movieElement;};SWFUpload.prototype.buildParamString=function(){var postParams=this.settings.post_params;var paramStringPairs=[];if(typeof(postParams)==="object"){for(var name in postParams){if(postParams.hasOwnProperty(name)){paramStringPairs.push(encodeURIComponent(name.toString())+"="+encodeURIComponent(postParams[name].toString()));}}}
return paramStringPairs.join("&amp;");};SWFUpload.prototype.destroy=function(){try{this.cancelUpload(null,false);var movieElement=null;movieElement=this.getMovieElement();if(movieElement&&typeof(movieElement.CallFunction)==="unknown"){for(var i in movieElement){try{if(typeof(movieElement[i])==="function"){movieElement[i]=null;}}catch(ex1){}}
try{movieElement.parentNode.removeChild(movieElement);}catch(ex){}}
window[this.movieName]=null;SWFUpload.instances[this.movieName]=null;delete SWFUpload.instances[this.movieName];this.movieElement=null;this.settings=null;this.customSettings=null;this.eventQueue=null;this.movieName=null;return true;}catch(ex2){return false;}};SWFUpload.prototype.displayDebugInfo=function(){this.debug(["---SWFUpload Instance Info---\n","Version: ",SWFUpload.version,"\n","Movie Name: ",this.movieName,"\n","Settings:\n","\t","upload_url:               ",this.settings.upload_url,"\n","\t","flash_url:                ",this.settings.flash_url,"\n","\t","use_query_string:         ",this.settings.use_query_string.toString(),"\n","\t","requeue_on_error:         ",this.settings.requeue_on_error.toString(),"\n","\t","http_success:             ",this.settings.http_success.join(", "),"\n","\t","file_post_name:           ",this.settings.file_post_name,"\n","\t","post_params:              ",this.settings.post_params.toString(),"\n","\t","file_types:               ",this.settings.file_types,"\n","\t","file_types_description:   ",this.settings.file_types_description,"\n","\t","file_size_limit:          ",this.settings.file_size_limit,"\n","\t","file_upload_limit:        ",this.settings.file_upload_limit,"\n","\t","file_queue_limit:         ",this.settings.file_queue_limit,"\n","\t","debug:                    ",this.settings.debug.toString(),"\n","\t","prevent_swf_caching:      ",this.settings.prevent_swf_caching.toString(),"\n","\t","button_placeholder_id:    ",this.settings.button_placeholder_id.toString(),"\n","\t","button_image_url:         ",this.settings.button_image_url.toString(),"\n","\t","button_width:             ",this.settings.button_width.toString(),"\n","\t","button_height:            ",this.settings.button_height.toString(),"\n","\t","button_text:              ",this.settings.button_text.toString(),"\n","\t","button_text_style:        ",this.settings.button_text_style.toString(),"\n","\t","button_text_top_padding:  ",this.settings.button_text_top_padding.toString(),"\n","\t","button_text_left_padding: ",this.settings.button_text_left_padding.toString(),"\n","\t","button_action:            ",this.settings.button_action.toString(),"\n","\t","button_disabled:          ",this.settings.button_disabled.toString(),"\n","\t","custom_settings:          ",this.settings.custom_settings.toString(),"\n","Event Handlers:\n","\t","swfupload_loaded_handler assigned:  ",(typeof this.settings.swfupload_loaded_handler==="function").toString(),"\n","\t","file_dialog_start_handler assigned: ",(typeof this.settings.file_dialog_start_handler==="function").toString(),"\n","\t","file_queued_handler assigned:       ",(typeof this.settings.file_queued_handler==="function").toString(),"\n","\t","file_queue_error_handler assigned:  ",(typeof this.settings.file_queue_error_handler==="function").toString(),"\n","\t","upload_start_handler assigned:      ",(typeof this.settings.upload_start_handler==="function").toString(),"\n","\t","upload_progress_handler assigned:   ",(typeof this.settings.upload_progress_handler==="function").toString(),"\n","\t","upload_error_handler assigned:      ",(typeof this.settings.upload_error_handler==="function").toString(),"\n","\t","upload_success_handler assigned:    ",(typeof this.settings.upload_success_handler==="function").toString(),"\n","\t","upload_complete_handler assigned:   ",(typeof this.settings.upload_complete_handler==="function").toString(),"\n","\t","debug_handler assigned:             ",(typeof this.settings.debug_handler==="function").toString(),"\n"].join(""));};SWFUpload.prototype.addSetting=function(name,value,default_value){if(value==undefined){return(this.settings[name]=default_value);}else{return(this.settings[name]=value);}};SWFUpload.prototype.getSetting=function(name){if(this.settings[name]!=undefined){return this.settings[name];}
return"";};SWFUpload.prototype.callFlash=function(functionName,argumentArray){argumentArray=argumentArray||[];var movieElement=this.getMovieElement();var returnValue,returnString;try{returnString=movieElement.CallFunction('<invoke name="'+functionName+'" returntype="javascript">'+__flash__argumentsToXML(argumentArray,0)+'</invoke>');returnValue=eval(returnString);}catch(ex){throw"Call to "+functionName+" failed";}
if(returnValue!=undefined&&typeof returnValue.post==="object"){returnValue=this.unescapeFilePostParams(returnValue);}
return returnValue;};SWFUpload.prototype.selectFile=function(){this.callFlash("SelectFile");};SWFUpload.prototype.selectFiles=function(){this.callFlash("SelectFiles");};SWFUpload.prototype.startUpload=function(fileID){this.callFlash("StartUpload",[fileID]);};SWFUpload.prototype.cancelUpload=function(fileID,triggerErrorEvent){if(triggerErrorEvent!==false){triggerErrorEvent=true;}
this.callFlash("CancelUpload",[fileID,triggerErrorEvent]);};SWFUpload.prototype.stopUpload=function(){this.callFlash("StopUpload");};SWFUpload.prototype.getStats=function(){return this.callFlash("GetStats");};SWFUpload.prototype.setStats=function(statsObject){this.callFlash("SetStats",[statsObject]);};SWFUpload.prototype.getFile=function(fileID){if(typeof(fileID)==="number"){return this.callFlash("GetFileByIndex",[fileID]);}else{return this.callFlash("GetFile",[fileID]);}};SWFUpload.prototype.addFileParam=function(fileID,name,value){return this.callFlash("AddFileParam",[fileID,name,value]);};SWFUpload.prototype.removeFileParam=function(fileID,name){this.callFlash("RemoveFileParam",[fileID,name]);};SWFUpload.prototype.setUploadURL=function(url){this.settings.upload_url=url.toString();this.callFlash("SetUploadURL",[url]);};SWFUpload.prototype.setPostParams=function(paramsObject){this.settings.post_params=paramsObject;this.callFlash("SetPostParams",[paramsObject]);};SWFUpload.prototype.addPostParam=function(name,value){this.settings.post_params[name]=value;this.callFlash("SetPostParams",[this.settings.post_params]);};SWFUpload.prototype.removePostParam=function(name){delete this.settings.post_params[name];this.callFlash("SetPostParams",[this.settings.post_params]);};SWFUpload.prototype.setFileTypes=function(types,description){this.settings.file_types=types;this.settings.file_types_description=description;this.callFlash("SetFileTypes",[types,description]);};SWFUpload.prototype.setFileSizeLimit=function(fileSizeLimit){this.settings.file_size_limit=fileSizeLimit;this.callFlash("SetFileSizeLimit",[fileSizeLimit]);};SWFUpload.prototype.setFileUploadLimit=function(fileUploadLimit){this.settings.file_upload_limit=fileUploadLimit;this.callFlash("SetFileUploadLimit",[fileUploadLimit]);};SWFUpload.prototype.setFileQueueLimit=function(fileQueueLimit){this.settings.file_queue_limit=fileQueueLimit;this.callFlash("SetFileQueueLimit",[fileQueueLimit]);};SWFUpload.prototype.setFilePostName=function(filePostName){this.settings.file_post_name=filePostName;this.callFlash("SetFilePostName",[filePostName]);};SWFUpload.prototype.setUseQueryString=function(useQueryString){this.settings.use_query_string=useQueryString;this.callFlash("SetUseQueryString",[useQueryString]);};SWFUpload.prototype.setRequeueOnError=function(requeueOnError){this.settings.requeue_on_error=requeueOnError;this.callFlash("SetRequeueOnError",[requeueOnError]);};SWFUpload.prototype.setHTTPSuccess=function(http_status_codes){if(typeof http_status_codes==="string"){http_status_codes=http_status_codes.replace(" ","").split(",");}
this.settings.http_success=http_status_codes;this.callFlash("SetHTTPSuccess",[http_status_codes]);};SWFUpload.prototype.setDebugEnabled=function(debugEnabled){this.settings.debug_enabled=debugEnabled;this.callFlash("SetDebugEnabled",[debugEnabled]);};SWFUpload.prototype.setButtonImageURL=function(buttonImageURL){if(buttonImageURL==undefined){buttonImageURL="";}
this.settings.button_image_url=buttonImageURL;this.callFlash("SetButtonImageURL",[buttonImageURL]);};SWFUpload.prototype.setButtonDimensions=function(width,height){this.settings.button_width=width;this.settings.button_height=height;var movie=this.getMovieElement();if(movie!=undefined){movie.style.width=width+"px";movie.style.height=height+"px";}
this.callFlash("SetButtonDimensions",[width,height]);};SWFUpload.prototype.setButtonText=function(html){this.settings.button_text=html;this.callFlash("SetButtonText",[html]);};SWFUpload.prototype.setButtonTextPadding=function(left,top){this.settings.button_text_top_padding=top;this.settings.button_text_left_padding=left;this.callFlash("SetButtonTextPadding",[left,top]);};SWFUpload.prototype.setButtonTextStyle=function(css){this.settings.button_text_style=css;this.callFlash("SetButtonTextStyle",[css]);};SWFUpload.prototype.setButtonDisabled=function(isDisabled){this.settings.button_disabled=isDisabled;this.callFlash("SetButtonDisabled",[isDisabled]);};SWFUpload.prototype.setButtonAction=function(buttonAction){this.settings.button_action=buttonAction;this.callFlash("SetButtonAction",[buttonAction]);};SWFUpload.prototype.setButtonCursor=function(cursor){this.settings.button_cursor=cursor;this.callFlash("SetButtonCursor",[cursor]);};SWFUpload.prototype.queueEvent=function(handlerName,argumentArray){if(argumentArray==undefined){argumentArray=[];}else if(!(argumentArray instanceof Array)){argumentArray=[argumentArray];}
var self=this;if(typeof this.settings[handlerName]==="function"){this.eventQueue.push(function(){this.settings[handlerName].apply(this,argumentArray);});setTimeout(function(){self.executeNextEvent();},0);}else if(this.settings[handlerName]!==null){throw"Event handler "+handlerName+" is unknown or is not a function";}};SWFUpload.prototype.executeNextEvent=function(){var f=this.eventQueue?this.eventQueue.shift():null;if(typeof(f)==="function"){f.apply(this);}};SWFUpload.prototype.unescapeFilePostParams=function(file){var reg=/[$]([0-9a-f]{4})/i;var unescapedPost={};var uk;if(file!=undefined){for(var k in file.post){if(file.post.hasOwnProperty(k)){uk=k;var match;while((match=reg.exec(uk))!==null){uk=uk.replace(match[0],String.fromCharCode(parseInt("0x"+match[1],16)));}
unescapedPost[uk]=file.post[k];}}
file.post=unescapedPost;}
return file;};SWFUpload.prototype.testExternalInterface=function(){try{return this.callFlash("TestExternalInterface");}catch(ex){return false;}};SWFUpload.prototype.flashReady=function(){var movieElement=this.getMovieElement();if(!movieElement){this.debug("Flash called back ready but the flash movie can't be found.");return;}
this.cleanUp(movieElement);this.queueEvent("swfupload_loaded_handler");};SWFUpload.prototype.cleanUp=function(movieElement){try{if(this.movieElement&&typeof(movieElement.CallFunction)==="unknown"){this.debug("Removing Flash functions hooks (this should only run in IE and should prevent memory leaks)");for(var key in movieElement){try{if(typeof(movieElement[key])==="function"){movieElement[key]=null;}}catch(ex){}}}}catch(ex1){}
window["__flash__removeCallback"]=function(instance,name){try{if(instance){instance[name]=null;}}catch(flashEx){}};};SWFUpload.prototype.fileDialogStart=function(){this.queueEvent("file_dialog_start_handler");};SWFUpload.prototype.fileQueued=function(file){file=this.unescapeFilePostParams(file);this.queueEvent("file_queued_handler",file);};SWFUpload.prototype.fileQueueError=function(file,errorCode,message){file=this.unescapeFilePostParams(file);this.queueEvent("file_queue_error_handler",[file,errorCode,message]);};SWFUpload.prototype.fileDialogComplete=function(numFilesSelected,numFilesQueued){this.queueEvent("file_dialog_complete_handler",[numFilesSelected,numFilesQueued]);};SWFUpload.prototype.uploadStart=function(file){file=this.unescapeFilePostParams(file);this.queueEvent("return_upload_start_handler",file);};SWFUpload.prototype.returnUploadStart=function(file){var returnValue;if(typeof this.settings.upload_start_handler==="function"){file=this.unescapeFilePostParams(file);returnValue=this.settings.upload_start_handler.call(this,file);}else if(this.settings.upload_start_handler!=undefined){throw"upload_start_handler must be a function";}
if(returnValue===undefined){returnValue=true;}
returnValue=!!returnValue;this.callFlash("ReturnUploadStart",[returnValue]);};SWFUpload.prototype.uploadProgress=function(file,bytesComplete,bytesTotal){file=this.unescapeFilePostParams(file);this.queueEvent("upload_progress_handler",[file,bytesComplete,bytesTotal]);};SWFUpload.prototype.uploadError=function(file,errorCode,message){file=this.unescapeFilePostParams(file);this.queueEvent("upload_error_handler",[file,errorCode,message]);};SWFUpload.prototype.uploadSuccess=function(file,serverData){file=this.unescapeFilePostParams(file);this.queueEvent("upload_success_handler",[file,serverData]);};SWFUpload.prototype.uploadComplete=function(file){file=this.unescapeFilePostParams(file);this.queueEvent("upload_complete_handler",file);};SWFUpload.prototype.debug=function(message){this.queueEvent("debug_handler",message);};SWFUpload.prototype.debugMessage=function(message){if(this.settings.debug){var exceptionMessage,exceptionValues=[];if(typeof message==="object"&&typeof message.name==="string"&&typeof message.message==="string"){for(var key in message){if(message.hasOwnProperty(key)){exceptionValues.push(key+": "+message[key]);}}
exceptionMessage=exceptionValues.join("\n")||"";exceptionValues=exceptionMessage.split("\n");exceptionMessage="EXCEPTION: "+exceptionValues.join("\nEXCEPTION: ");SWFUpload.Console.writeLine(exceptionMessage);}else{SWFUpload.Console.writeLine(message);}}};SWFUpload.Console={};SWFUpload.Console.writeLine=function(message){var console,documentForm;try{console=document.getElementById("SWFUpload_Console");if(!console){documentForm=document.createElement("form");document.getElementsByTagName("body")[0].appendChild(documentForm);console=document.createElement("textarea");console.id="SWFUpload_Console";console.style.fontFamily="monospace";console.setAttribute("wrap","off");console.wrap="off";console.style.overflow="auto";console.style.width="700px";console.style.height="350px";console.style.margin="5px";documentForm.appendChild(console);}
console.value+=message+"\n";console.scrollTop=console.scrollHeight-console.clientHeight;}catch(ex){alert("Exception: "+ex.name+" Message: "+ex.message);}};var SWFUpload;if(typeof(SWFUpload)==="function"){SWFUpload.queue={};SWFUpload.prototype.initSettings=(function(oldInitSettings){return function(){if(typeof(oldInitSettings)==="function"){oldInitSettings.call(this);}
this.queueSettings={};this.queueSettings.queue_cancelled_flag=false;this.queueSettings.queue_upload_count=0;this.queueSettings.user_upload_complete_handler=this.settings.upload_complete_handler;this.queueSettings.user_upload_start_handler=this.settings.upload_start_handler;this.settings.upload_complete_handler=SWFUpload.queue.uploadCompleteHandler;this.settings.upload_start_handler=SWFUpload.queue.uploadStartHandler;this.settings.queue_complete_handler=this.settings.queue_complete_handler||null;};})(SWFUpload.prototype.initSettings);SWFUpload.prototype.startUpload=function(fileID){this.queueSettings.queue_cancelled_flag=false;this.callFlash("StartUpload",[fileID]);};SWFUpload.prototype.cancelQueue=function(){this.queueSettings.queue_cancelled_flag=true;this.stopUpload();var stats=this.getStats();while(stats.files_queued>0){this.cancelUpload();stats=this.getStats();}};SWFUpload.queue.uploadStartHandler=function(file){var returnValue;if(typeof(this.queueSettings.user_upload_start_handler)==="function"){returnValue=this.queueSettings.user_upload_start_handler.call(this,file);}
returnValue=(returnValue===false)?false:true;this.queueSettings.queue_cancelled_flag=!returnValue;return returnValue;};SWFUpload.queue.uploadCompleteHandler=function(file){var user_upload_complete_handler=this.queueSettings.user_upload_complete_handler;var continueUpload;if(file.filestatus===SWFUpload.FILE_STATUS.COMPLETE){this.queueSettings.queue_upload_count++;}
if(typeof(user_upload_complete_handler)==="function"){continueUpload=(user_upload_complete_handler.call(this,file)===false)?false:true;}else if(file.filestatus===SWFUpload.FILE_STATUS.QUEUED){continueUpload=false;}else{continueUpload=true;}
if(continueUpload){var stats=this.getStats();if(stats.files_queued>0&&this.queueSettings.queue_cancelled_flag===false){this.startUpload();}else if(this.queueSettings.queue_cancelled_flag===false){this.queueEvent("queue_complete_handler",[this.queueSettings.queue_upload_count]);this.queueSettings.queue_upload_count=0;}else{this.queueSettings.queue_cancelled_flag=false;this.queueSettings.queue_upload_count=0;}}};}
function FileProgress(file,targetID){this.fileProgressID=file.id;this.opacity=100;this.height=0;this.fileProgressWrapper=document.getElementById(this.fileProgressID);if(!this.fileProgressWrapper){this.fileProgressWrapper=document.createElement("div");this.fileProgressWrapper.className="progressWrapper";this.fileProgressWrapper.id=this.fileProgressID;this.fileProgressElement=document.createElement("div");this.fileProgressElement.className="progressContainer";var progressCancel=document.createElement("a");progressCancel.className="progressCancel";progressCancel.href="#";progressCancel.style.visibility="hidden";progressCancel.appendChild(document.createTextNode(" "));var progressText=document.createElement("div");progressText.className="progressName";progressText.appendChild(document.createTextNode(file.name));var progressBar=document.createElement("div");progressBar.className="progressBarInProgress";var progressStatus=document.createElement("div");progressStatus.className="progressBarStatus";progressStatus.innerHTML="&nbsp;";this.fileProgressElement.appendChild(progressCancel);this.fileProgressElement.appendChild(progressText);this.fileProgressElement.appendChild(progressStatus);this.fileProgressElement.appendChild(progressBar);this.fileProgressWrapper.appendChild(this.fileProgressElement);document.getElementById(targetID).appendChild(this.fileProgressWrapper);}else{this.fileProgressElement=this.fileProgressWrapper.firstChild;this.reset();}
this.height=this.fileProgressWrapper.offsetHeight;this.setTimer(null);}
FileProgress.prototype.setTimer=function(timer){this.fileProgressElement["FP_TIMER"]=timer;};FileProgress.prototype.getTimer=function(timer){return this.fileProgressElement["FP_TIMER"]||null;};FileProgress.prototype.reset=function(){this.fileProgressElement.className="progressContainer";this.fileProgressElement.childNodes[2].innerHTML="&nbsp;";this.fileProgressElement.childNodes[2].className="progressBarStatus";this.fileProgressElement.childNodes[3].className="progressBarInProgress";this.fileProgressElement.childNodes[3].style.width="0%";this.appear();};FileProgress.prototype.setProgress=function(percentage){this.fileProgressElement.className="progressContainer green";this.fileProgressElement.childNodes[3].className="progressBarInProgress";this.fileProgressElement.childNodes[3].style.width=percentage+"%";this.appear();};FileProgress.prototype.setComplete=function(){this.fileProgressElement.className="progressContainer blue";this.fileProgressElement.childNodes[3].className="progressBarComplete";this.fileProgressElement.childNodes[3].style.width="";var oSelf=this;this.setTimer(setTimeout(function(){oSelf.disappear();},10000));};FileProgress.prototype.setError=function(){this.fileProgressElement.className="progressContainer red";this.fileProgressElement.childNodes[3].className="progressBarError";this.fileProgressElement.childNodes[3].style.width="";var oSelf=this;this.setTimer(setTimeout(function(){oSelf.disappear();},5000));};FileProgress.prototype.setCancelled=function(){this.fileProgressElement.className="progressContainer";this.fileProgressElement.childNodes[3].className="progressBarError";this.fileProgressElement.childNodes[3].style.width="";var oSelf=this;this.setTimer(setTimeout(function(){oSelf.disappear();},2000));};FileProgress.prototype.setStatus=function(status){this.fileProgressElement.childNodes[2].innerHTML=status;};FileProgress.prototype.toggleCancel=function(show,swfUploadInstance){this.fileProgressElement.childNodes[0].style.visibility=show?"visible":"hidden";if(swfUploadInstance){var fileID=this.fileProgressID;this.fileProgressElement.childNodes[0].onclick=function(){swfUploadInstance.cancelUpload(fileID);return false;};}};FileProgress.prototype.appear=function(){if(this.getTimer()!==null){clearTimeout(this.getTimer());this.setTimer(null);}
if(this.fileProgressWrapper.filters){try{this.fileProgressWrapper.filters.item("DXImageTransform.Microsoft.Alpha").opacity=100;}catch(e){this.fileProgressWrapper.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity=100)";}}else{this.fileProgressWrapper.style.opacity=1;}
this.fileProgressWrapper.style.height="";this.height=this.fileProgressWrapper.offsetHeight;this.opacity=100;this.fileProgressWrapper.style.display="";};FileProgress.prototype.disappear=function(){var reduceOpacityBy=15;var reduceHeightBy=4;var rate=30;if(this.opacity>0){this.opacity-=reduceOpacityBy;if(this.opacity<0){this.opacity=0;}
try{if(this.fileProgressWrapper&&this.fileProgressWrapper.filters){try{this.fileProgressWrapper.filters.item("DXImageTransform.Microsoft.Alpha").opacity=this.opacity;}catch(e){this.fileProgressWrapper.style.filter="progid:DXImageTransform.Microsoft.Alpha(opacity="+this.opacity+")";}}else{this.fileProgressWrapper.style.opacity=this.opacity/100;}}catch(e){}}
if(this.height>0){this.height-=reduceHeightBy;if(this.height<0){this.height=0;}
this.fileProgressWrapper.style.height=this.height+"px";}
if(this.height>0||this.opacity>0){var oSelf=this;this.setTimer(setTimeout(function(){oSelf.disappear();},rate));}else{this.fileProgressWrapper.style.display="none";this.setTimer(null);}};function fileQueued(file){try{var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setStatus("Pending...");progress.toggleCancel(true,this);}catch(ex){this.debug(ex);}}
function fileQueueError(file,errorCode,message){try{if(errorCode===SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED){alert("You have attempted to queue too many files.\n"+(message===0?"You have reached the upload limit.":"You may select "+(message>1?"up to "+message+" files.":"one file.")));return;}
if(errorCode===SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT){alert("You have attempted to upload a file that exceeds the file size limit for uploads.");return;}
var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setError();progress.toggleCancel(false);switch(errorCode){case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:progress.setStatus("File is too big.");this.debug("Error Code: File too big, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:progress.setStatus("Cannot upload Zero Byte files.");this.debug("Error Code: Zero byte file, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:progress.setStatus("Invalid File Type.");this.debug("Error Code: Invalid File Type, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;default:if(file!==null){progress.setStatus("Unhandled Error");}
this.debug("Error Code: "+errorCode+", File name: "+file.name+", File size: "+file.size+", Message: "+message);break;}}catch(ex){this.debug(ex);}}
function fileDialogComplete(numFilesSelected,numFilesQueued){try{if(numFilesSelected>0){}
if($('resourced_conv_file')){ConvFunctions.doToSubmitButtons('disable');if($('conv_embed_code')){$('conv_embed_code').innerHTML='';}}
this.startUpload();}catch(ex){this.debug(ex);}}
function uploadStart(file){try{if($(this.customSettings.progressTarget)){$(this.customSettings.progressTarget).show();}
var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setStatus("Uploading...");if(file.type.include('.htm')){alert("You can not upload HTML files.");return false;}
if($('existing_repository_id')){var val=$RF('existing_repository_id');if(val){if(val!="new"){if(confirm('Are you sure you want to overwrite the selected document?')){this.addPostParam('existing_repository_id',val);}else{clearCheckedRadios('existing_repository_id');this.cancelUpload();return false;}}else{this.addPostParam('existing_repository_id',val);}}}}
catch(ex){}
return true;}
function uploadProgress(file,bytesLoaded,bytesTotal){try{var percent=Math.ceil((bytesLoaded/bytesTotal)*100);var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setProgress(percent);progress.setStatus("Uploading...");}catch(ex){this.debug(ex);}}
function uploadSuccess(file,serverData){try{var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setComplete();progress.setStatus("Complete.");progress.toggleCancel(false);if(this.customSettings.embedTinyMCE){ConvFunctions.embedDocInConv(this.settings.post_params.id,this.customSettings.conv_id,file.name);}}catch(ex){this.debug(ex);}}
function uploadError(file,errorCode,message){try{var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setError();switch(errorCode){case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:progress.setStatus("Upload Error: "+message);this.debug("Error Code: HTTP Error, File name: "+file.name+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:progress.setStatus("Upload Failed.");this.debug("Error Code: Upload Failed, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.IO_ERROR:progress.setStatus("Server (IO) Error");this.debug("Error Code: IO Error, File name: "+file.name+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:progress.setStatus("Security Error");this.debug("Error Code: Security Error, File name: "+file.name+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:progress.setStatus("Upload limit exceeded.");this.debug("Error Code: Upload Limit Exceeded, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:progress.setStatus("Failed Validation.  Upload skipped.");this.debug("Error Code: File Validation Failed, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:if(this.getStats().files_queued===0){document.getElementById(this.customSettings.cancelButtonId).disabled=true;}
progress.setStatus("Cancelled");progress.setCancelled();break;case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:progress.setStatus("Stopped");break;default:progress.setStatus("Unhandled Error: "+errorCode);this.debug("Error Code: "+errorCode+", File name: "+file.name+", File size: "+file.size+", Message: "+message);break;}}catch(ex){this.debug(ex);}}
function uploadComplete(file){if(this.getStats().files_queued===0){}}
function clearCheckedRadios(el){if($(el)&&$RF(el)){$(el).form.getInputs('radio',el).each(function(s){s.checked=false;})}}
function queueComplete(numFilesUploaded){var status=document.getElementById("divStatus");status.innerHTML=numFilesUploaded+" file"+(numFilesUploaded===1?"":"s")+" uploaded.";clearCheckedRadios('existing_repository_id');if($(this.customSettings.progressTarget)){$(this.customSettings.progressTarget).hide();}
if($('file_repository')){refreshPortlet(undefined,undefined,'file_repository');}
if($('resourced_conv_file')){$('resourced_conv_file').removeClassName('nothing');$('resourced_conv_file').addClassName('loading-indicator');}}
var UserStatus={keyCheck:function(e){if(ApplicationFunctions.checkEnter(e)){UserStatus.update();return false;}
else
{return true;}},showInput:function(){if(!KALIVO.mobile_version){$('k-pu-status').hide();}
$('k-pu-status-update').show();},hideInput:function(){if(!KALIVO.mobile_version){$('k-pu-status').show();}
$('k-pu-status-update').hide();},updateTextfield:function(status){var status_field=$('k-pu-status');stat=KALIVO.mobile_version?status:"Status: "+status;if(status){stat+="<div class='when'>&nbsp;-&nbsp;a moment ago</div>";}
status_field.innerHTML=stat;status_field.show();status_field.highlight({duration:2.5});},clear:function(){$('k-pu-user-status').value='';UserStatus.update();},update:function(status){var updating=true;$('k-pu-status-indicator').show();if(!KALIVO.mobile_version){$('k-pu-status-update').hide();$('k-pu-status').hide();}
status=$('k-pu-user-status').value;var retval=new Ajax.Request('/account/update_status',{asynchronous:true,evalScripts:true,onComplete:function(request){$('k-pu-status-indicator').hide();if(KALIVO.mobile_version){$('current_status').innerHTML=status;$('k-pu-status-update').hide();alert("Status Updated");}
if($('k-pu-status')){UserStatus.updateTextfield(status);}},parameters:{status:status}});}};var Project={current_tab:null,current_widget:null,content_cache:{},milestones:null,loading_ind:'<div class="loading_widget"></div>',loading:{},task_template:null,task_template_no_edit:null,milestone_template:null,milestone_header_template:null,status_template:null,misc_box_template:'<div id="misc_box" style="visibility:hidden"><div onclick="Project.hideMiscBox()" id="close_misc_box"></div><div id="misc_box_content"><div></div>',misc_box:null,status_states:{},loadBody:function(tab,widget_name,loadFunction){Project.hideMiscBox();Project.misc_box=null;Project.misc_box_content=null;if(Project.loading[tab]){return;}
Project.loading[tab]=true;var body=$('widget_body_column_'+tab);var current_widget=null;$$('#widget_left_column_'+tab+' .lc_selected').each(function(s){current_widget=s.id.substring(3);s.removeClassName('lc_selected');});Project.content_cache[current_widget]=body.innerHTML;body.innerHTML=Project.loading_ind;if($('lc_'+widget_name)){$('lc_'+widget_name).addClassName('lc_selected');}
if(Project.content_cache[widget_name]&&false){body.innerHTML=Project.content_cache[widget_name];Project.loading[tab]=false;lightwindowInit();}else{loadFunction(tab,body,widget_name);}},loadWidget:function(tab,body,widget_name){var params=KALIVO.global_params;params.id=widget_name;new Ajax.Request('/portals/widget',{evalScripts:false,asynchronous:true,parameters:params,onComplete:function(response){body.innerHTML=response.responseText;Project.loading[tab]=false;response.responseText.evalScripts();lightwindowInit();}});},loadMilestone:function(tab,body,milestone_id){var milestone=Project.milestones[milestone_id];var body_html='<div class="milestone">';body_html=body_html+Project.createMSInfoHTML(milestone);body_html=body_html+'<table class="ms_tasks">';body_html=body_html+Project.createMSHeaderHTML(milestone);milestone.tasks.each(function(task){body_html=body_html+Project.createTaskHTML(task);});body.innerHTML=body_html+'</table></div>';Project.loading[tab]=false;lightwindowInit();var hash=parseHash();window.location.hash="tab_"+hash[0]+"_xxx_milestone_"+milestone_id;},createMSInfoHTML:function(milestone){var html=new Template(Project.milestone_template).evaluate(milestone);html=html.replace(/script_id/g,milestone.id);return html;},createMSHeaderHTML:function(milestone){return new Template(Project.milestone_header_template).evaluate(milestone);;},createTaskHTML:function(task){if(!Project.task_template_no_edit){Project.task_template_no_edit=Project.task_template;Project.task_template_no_edit=Project.task_template_no_edit.replace('"pt_status"','"pt_status_no_access"');Project.task_template_no_edit=Project.task_template_no_edit.replace("Project.editStatus(script_id,'#{tab}')",'');}
var template=task.can_edit?Project.task_template:Project.task_template_no_edit;var html=new Template(template).evaluate(task);html=html.replace(/assignee_id/g,task.assignee_id);html=html.replace(/script_id/g,task.id);return html;},submitTaskCreation:function(form,taskId,projectId,milestoneId)
{var url='/tasks';var method='post';if(projectId&&milestoneId){url='/projects/'+projectId+'/milestones/'+milestoneId+'/tasks';}
if(taskId){method='put';url+="/"+taskId;}
var params=form.serialize();var tmfb='';if($('conv_body')){tmfb=$('conv_body').value;}
if(tinyMCE&&tinyMCE.activeEditor){tmfb=encodeURIComponent(tinyMCE.activeEditor.getContent());}
params+='&tinymce_force_body='+tmfb;myLightWindow.showIndicator();var rVal=new Ajax.Request(url,{asynchronous:true,evalScripts:true,parameters:params,evalJSON:true,method:method,onFailure:function(response){myLightWindow.hideIndicator();Project.showErrorMsg(response.responseJSON.msg);},onSuccess:function(response){myLightWindow.hideIndicator();myLightWindow.deactivate();Project.resetTabs(['project_tasks','project_milestones','group_activities','project_team']);}});},submitMilestone:function(form,action)
{var url='/projects/'+form.project_id.value+'/milestones/';var method='post';if(action=='update'||action=='delete'){url=url+form.milestone_id.value;method='put';if(action=='delete'){method='delete';}}
myLightWindow.showIndicator();var rVal=new Ajax.Request(url,{asynchronous:true,evalJSON:true,method:method,parameters:form.serialize(),onSuccess:function(response){Project.current_date=null;myLightWindow.hideIndicator();myLightWindow.deactivate();Project.resetTabs(['project_tasks','project_milestones']);if(method=='delete'){refreshPortlet(null,null,'project_milestones');}},onFailure:function(response){myLightWindow.hideIndicator();Project.showErrorMsg(response.responseJSON.msg);}});},showErrorMsg:function(msg){var error_msg=$('k-qc-form-msg');error_msg.innerHTML=msg;error_msg.show();},initMilestone:function(){var hash=parseHash();if(hash[1]){var id=hash[1].split('_');if(Project.milestones[id]){Project.loadBody('project_milestones',id[1],Project.loadMilestone)}}},tab_panel:null,resetTabs:function(tabs){if(!Project.tab_panel){Project.tab_panel=viewport.findById('project_widgets_container');}
var active_tab=Project.tab_panel.getActiveTab();tabs.each(function(tab){if(tab==active_tab.id){refreshPortlet(null,null,tab);}else{PortalFunctions.resetTab(tab);}});},status_field:null,status_task_id:0,editStatus:function(task_id,tab){if(Project.status_field){Project.status_field.style.zIndex=0;}
var element=$('pt_status_'+task_id+'_'+tab);if(Project.status_menu){Project.status_menu=null;}
element.insert(Project.statusMenuHTML(task_id,tab));Project.status_menu=$('status_menu_'+task_id);Project.status_task_id=task_id;Project.status_field=element;Project.status_field.style.zIndex=10;},statusMenuHTML:function(id,tab){var current_state=$('pt_status_label_'+id+'_'+tab).readAttribute('status');var html='<ul id="status_menu_'+id+'" class="status_menu" onmouseover="Project.overStatus()" onmouseout="Project.closeStatus()">';html=html+'<li class="task_status" onclick="Project.hideStatus();">'+current_state.replace(/_/g,' ')+'</li>';Project.status_states[current_state].each(function(state){html=html+'<li class="task_status" onclick="Project.setStatus(\''+state+'\', \''+tab+'\');">'+state.replace(/_/g,' ')+'</li>';});return html+'</ul>';},overStatus:function(){clearTimeout(Project.closeTO);},hideStatus:function(){Project.status_menu.remove();Project.status_menu=null;},closeStatus:function(){Project.closeTO=setTimeout(Project.hideStatus,100);},setStatus:function(status,tab){Project.status_task_id;var label=$('pt_status_label_'+Project.status_task_id+'_'+tab);label.writeAttribute('status',status);label.innerHTML=status.replace(/_/g,' ');Project.hideStatus();new Ajax.Request('/tasks/update_task_status',{evalJSON:true,parameters:{id:Project.status_task_id,status:status},onFailure:function(response){js_growl.addMessage({msg:response.responseJSON.msg,sticky:true});label.style.color='red';label.innerHTML='Save Error';}});},setupMiscBox:function(top,tab){if(!Project.tab_panel){Project.tab_panel=viewport.findById('project_widgets_container');}
var active_tab=Project.tab_panel.getActiveTab();if(!(['project_milestones','project_tasks'].include(active_tab.id))){return;}
if(!Project.misc_box){$('pw-'+active_tab.id).insert(Project.misc_box_template);Project.misc_box=$('misc_box');Project.misc_box_content=$('misc_box_content');}
Project.misc_box.style.top=top+'px';var widgetWidth=$('pw-'+active_tab.id).offsetWidth;var taskRowWidth=710;var diff=widgetWidth-taskRowWidth;var width;var right=0;if(diff<200){width=200;}else if(diff>400){width=400;right=diff-400;}else{width=diff;}
Project.misc_box.style.width=width+'px';Project.misc_box.style.right=right+'px';},hideMiscBox:function(){if(Project.misc_box){Project.misc_box.style.visibility='hidden';Project.misc_box_content.innerHTML='';window.onresize=null;}},showTask:function(id){return;Project.setupMiscBox($('task_'+id).offsetTop);Project.misc_box_content.innerHTML='task '+id;Project.misc_box.style.visibility='visible';window.onresize=function(){Project.setupMiscBox();};},current_date:null,checkDate:function(date_field){$('date_task_list').hide();var current_value=new Date(ApplicationFunctions.fix_eurodate(Project.current_date));var new_value=new Date(ApplicationFunctions.fix_eurodate($F(date_field)));if(new_value<current_value){$('date_task_list').show();$('dt_list').innerHTML='<div class="indicator"></div>';$('project_save_button').disable();Project.getTasks($F(date_field));}},getTasks:function(date){new Ajax.Updater('dt_list','/milestones/date_task_list/'+$F('milestone_id'),{evalScripts:true,parameters:{date:escape(date)}});},setDate:function(date_field){if(!Project.current_date){Project.current_date=$F(date_field);}},acceptDate:function(){$('project_save_button').enable();$('date_task_list').hide();},revertDate:function(){$('milestone_end_date').value=Project.current_date;$('project_save_button').enable();$('date_task_list').hide();}}
var Scroller={setup:function(container_selector,item_selector){var width=0;$$('.action').each(function(e){width=width+e.offsetWidth});$$(container_selector)[0].style.width=(width+100)+'px';},scrolling:null,on:function(direction,section){Scroller.scroll(direction,section);Scroller.scrolling=setTimeout(function(){Scroller.on(direction,section);},100);},off:function(){clearTimeout(Scroller.scrolling);},v_step:40,h_step:200,scroll:function(direction,section){var al=$(section+'_links');var dir=direction=='up'||direction=='left'?-1:1;var scroll_step=0;if(direction=='up'||direction=='down'){scroll_step=al.scrollTop+(Scroller.v_step*dir);scroll_step=scroll_step?scroll_step:0;al.scrollTop=scroll_step;}else{scroll_step=al.scrollLeft+(Scroller.h_step*dir);scroll_step=scroll_step?scroll_step:0;al.scrollLeft=scroll_step;}}};var Action={clearStatus:function(){if(!$$('#status_update textarea')[0].hasClassName('field_cleared')){var ta=$$('#status_update textarea')[0];ta.value='';ta.addClassName('field_cleared');ta.style.color='#000';}},statusToggle:function(){var su=$('status_update');if(su.visible()){su.hide();$$('.a_status_item')[0].removeClassName('status_active');}else{su.show();$$('.a_status_item')[0].addClassName('status_active');}},updateStatus:function(){new Ajax.Request('/account/update_status',{parameters:{status:$$('#status_update textarea')[0].value},onComplete:Action.confirmStatus})
Action.statusToggle();},confirmStatus:function(response){$('current_status').innerHTML='Current Status: '+$$('#status_update textarea')[0].value;$$('#status_update textarea')[0].value='';js_growl.addMessage({msg:'Status Updated'});}};var Tooltip=Class.create();Tooltip.prototype={initialize:function(element,tool_tip){var options=Object.extend({default_css:false,margin:"0px",padding:"5px",backgroundColor:"#d6d6fc",delta_x:5,delta_y:5,zindex:1000},arguments[1]||{});this.element=$(element);this.tool_tip=$(tool_tip);this.options=options;this.tool_tip.hide();this.eventMouseOver=this.showTooltip.bindAsEventListener(this);this.eventMouseOut=this.hideTooltip.bindAsEventListener(this);this.registerEvents();},destroy:function(){Event.stopObserving(this.element,"mouseover",this.eventMouseOver);Event.stopObserving(this.element,"mouseout",this.eventMouseOut);},registerEvents:function(){Event.observe(this.element,"mouseover",this.eventMouseOver);Event.observe(this.element,"mouseout",this.eventMouseOut);},showTooltip:function(event){Event.stop(event);var mouse_x=Event.pointerX(event);var mouse_y=Event.pointerY(event);var dimensions=Element.getDimensions(this.tool_tip);var element_width=dimensions.width;var element_height=dimensions.height;if((element_width+mouse_x)>=(this.getWindowWidth()-this.options.delta_x)){mouse_x=mouse_x-element_width;mouse_x=mouse_x-this.options.delta_x;}else{mouse_x=mouse_x+this.options.delta_x;}
if((element_height+mouse_y)>=(this.getWindowHeight()-this.options.delta_y)){mouse_y=mouse_y-element_height;mouse_y=mouse_y-this.options.delta_y;}else{mouse_y=mouse_y+this.options.delta_y;}
this.setStyles(mouse_x,mouse_y);new Element.show(this.tool_tip);},setStyles:function(x,y){Element.setStyle(this.tool_tip,{position:'absolute',top:y+"px",left:x+"px",zindex:this.options.zindex});if(this.options.default_css){Element.setStyle(this.tool_tip,{margin:this.options.margin,padding:this.options.padding,backgroundColor:this.options.backgroundColor,zindex:this.options.zindex});}},hideTooltip:function(event){new Element.hide(this.tool_tip);},getWindowHeight:function(){var innerHeight;if(navigator.appVersion.indexOf('MSIE')>0){innerHeight=document.body.clientHeight;}else{innerHeight=window.innerHeight;}
return innerHeight;},getWindowWidth:function(){var innerWidth;if(navigator.appVersion.indexOf('MSIE')>0){innerWidth=document.body.clientWidth;}else{innerWidth=window.innerWidth;}
return innerWidth;}}
var Help={start:'<div id="#{name}_text" class="qtip qtip-stylename" style="display:none;">'+'<div class="qtip-wrapper"><div class="qtip-contentWrapper">',label:'<div class="qtip-title">#{label}</div>',text:'<div class="qtip-content">#{text}</div>',end:'</div></div></div>',add:function(tooltip){var template=tooltip.label?Help.start+Help.label+Help.text+Help.end:Help.start+Help.text+Help.end;document.body.insert(new Template(template).evaluate(tooltip));new Tooltip(tooltip.name,tooltip.name+'_text');}}
var ie7=navigator.userAgent.indexOf('MSIE 7.0')>=0;if(ie7){var getElementsByClassName=function(className,tag,elm){if(document.evaluate){getElementsByClassName=function(className,tag,elm){tag=tag||"*";elm=elm||document;var classes=className.split(" "),classesToCheck="",xhtmlNamespace="http://www.w3.org/1999/xhtml",namespaceResolver=(document.documentElement.namespaceURI===xhtmlNamespace)?xhtmlNamespace:null,returnElements=[],elements,node;for(var j=0,jl=classes.length;j<jl;j+=1){classesToCheck+="[contains(concat(' ', @class, ' '), ' "+classes[j]+" ')]";}
try{elements=document.evaluate(".//"+tag+classesToCheck,elm,namespaceResolver,0,null);}
catch(e){elements=document.evaluate(".//"+tag+classesToCheck,elm,null,0,null);}
while((node=elements.iterateNext())){returnElements.push(node);}
return returnElements;};}
else{getElementsByClassName=function(className,tag,elm){tag=tag||"*";elm=elm||document;var classes=className.split(" "),classesToCheck=[],elements=(tag==="*"&&elm.all)?elm.all:elm.getElementsByTagName(tag),current,returnElements=[],match;for(var k=0,kl=classes.length;k<kl;k+=1){classesToCheck.push(new RegExp("(^|\\s)"+classes[k]+"(\\s|$)"));}
for(var l=0,ll=elements.length;l<ll;l+=1){current=elements[l];match=false;for(var m=0,ml=classesToCheck.length;m<ml;m+=1){match=classesToCheck[m].test(current.className);if(!match){break;}}
if(match){returnElements.push(current);}}
return returnElements;};}
return getElementsByClassName(className,tag,elm);};document.documentElement.getElementsByClassName=getElementsByClassName;document.getElementsByClassName=getElementsByClassName;}
var Search={user_combo:null,ind:'<p style="width: 100%;text-align:center;font-size:1.2em"><img src="/images/loading.gif"/></p>',clear:function(search_bar){if(search_bar.readAttribute('cleared')=='false'){search_bar.value='';Search.prepare_search(search_bar);}},input:function(search_bar){if(search_bar.readAttribute('cleared')=='false'){Search.prepare_search(search_bar);}},prepare_search:function(search_bar){search_bar.style.color='#000'
search_bar.writeAttribute('cleared',true);},submit:function(event,search_bar){if(ApplicationFunctions.checkEnter(event)){window.location='/search/search?keyword_list='+escape(search_bar.value);return false;}else{return true;}},keyword_search:function(event,keyword){if(ApplicationFunctions.checkEnter(event)){Search.filter({});return false;}else{return true;}},filter:function(opts){opts=opts||{};$('results').innerHTML=Search.ind;var params={keyword_list:$("filter_keyword").value,'salient_terms[]':Search.salientTerms(),page:'page'in opts?opts.page:1,by_user_id:Search.getUserId(),since:$('filter_since').value,ptag_search_name:$('ptag_search_name').value};params=Search.getFilterCheckParams(params);new Ajax.Request('/search/search_results',{asynchronous:true,parameters:params,onComplete:function(request){$('results').innerHTML=request.responseText;setTimeout(reloadViewport,250);}});},urlEncode:function(){document.location="http://"+document.location.host+"/search/search?"+document.search_form.serialize();},getUserId:function(){if($('my_content')&&$('my_content').checked){return $('filter_user_id').value;}else{return $('filter_user-control').value==Search.user_combo.lastSelectionText?$('filter_user_id').value:null;}},paginate:function(page){Search.filter({page:page})},toggleType:function(checked,selector){$$(selector+' input').each(function(cb){cb.checked=checked;})},salientTerms:function(){var terms=[];$$('.salient_term_filter').each(function(term){terms.push(term.value);})
return terms;},getFilterCheckParams:function(params){var checks=[];var inputs=$$('.filter_type input');for(var i=0;i<inputs.length;i++){if(inputs[i].name=="filter_checks[]"&&inputs[i].checked)
checks.push(inputs[i].value);}
for(var j=0;j<checks.length;j++){params["filter_checks["+j+"]"]=checks[j];}
return params;},addSalientTerm:function(phrase){$('filter_terms').insert('<div class="filter_term">'+'<input type="hidden" class="salient_term_filter" name="salient_term_filter[]" value="'+phrase+'">'+'<img src="/images/remove_filter.png" onclick="Search.removeSalientTerm(this);">'+
phrase+'</div>');scroll(0,0);Search.filter({});},removeSalientTerm:function(el){el.parentNode.remove();Search.filter({});},toggleMyContent:function(cb,user_id){if(cb.checked){$('filter_user_id').value=user_id;Search.user_combo.disable();}else{$('filter_user_id').value=null;Search.user_combo.enable();}}}