// Copyright 2008 Cloud Engines

if(!CE)var CE={};CE.CEUI=new function()
{var NPERPAGE=500;var NPERPAGE_SLIDEALB=500;var LOADALBDELAYMS=1000;var UI_POLL_INTERVAL=300*1000;var that=this;var g_headtab='';var g_warnmessage=null;var g_slideshowObj=null;var g_slideshowStartPlaying;var g_slideshowStartLastIdx;var g_slideshowStartFullscreen;var g_slideshowCurFile;var g_deleteconfirm=null;var g_removeshareconfirm=null;var g_videoSupport=null;var g_deleteshareconfirm=null;var g_lastRename=null;var g_uploadfiles=null;var g_slideAlbMode=null;var g_slideAlbImages=[];var g_slideAlbMusic=[];var g_ejectservicedialog=null;var g_ejectedsvc=null;var g_inited=false;var g_isIE=false;var g_initops=0;var g_sbops=0;var g_mousedisp=null;var g_curmousepos={x:0,y:0};var g_curdrag=null;var g_diddrag=false;var g_dragorigin=null;var g_sidebarDragEl;var g_sidebarOrder=[];var g_lastViewSize;var g_lastViewMode;var g_curcustui='';var g_custui={};var g_custuiArgs=[];var g_custuiLoaded=false;var g_orphans={};var g_subdevs={};
var g_printers=[];var g_docPrevCache={};var g_albummapReady=false;var g_sharemapReady=false;var g_lnkmapReady=false;var g_cursearch=null;var g_helpsearch='';var g_helpforumids=[];var g_helpfaqid=null;var g_curscrit=null;var g_searchCache={};var g_curpath=[];var g_curpage={};var g_curpageByShid={'celist':{}};var g_curpageoffset={'celist':0};var g_curtotalcount={'celist':0};var g_topleveloffset=0;var g_selrect=null;var g_jumpToShare=null;var g_checkMediaProcessingTimer=null;var g_mediaCurrtasks=[];var g_snapchat;var g_searchkeytimer=null;var g_noneOnline=true;var g_forceSoft=false;var g_showedtrialwarning=false;var g_sortable=false;var g_sortcrit="none";var g_audioPlayer=null;var FS_FLAGS_SORTABLE=0x2000;var HIDDEN_ACTIONS=['previewfolder','zoomfolder','rename','copy','move'];var TAB_SIDEITEMS={'cesearch_artists':'music','cesearch_albums':'music','cesearch_genres':'music','cesearch_audio':'music','cesearch_movietime':'movies','cesearch_video':'movies','cesearch_imagetime':'photos','cesearch_image':'photos','cesearch_slidedirs':'photos'};var FLASH_VIDEO_MIME_TYPES=["video/mp4","video/x-flv","video/x-m4v","video/3gpp","video/quicktime"];var FLASH_AUDIO_MIME_TYPES=["audio/mp4a-latm","audio/mp4","audio/mp3","audio/aac","audio/aacp","audio/mpg","audio/mpeg"];var DOC_MIME_TYPES=["text/plain","text/html","text/xml","text/css","text/javascript","application/pdf","application/msword","application/rtf","application/vnd.ms-excel","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document"];var DOC_EXTENSIONS=["apf","awd","bfx","bib","cal","csv","dbf","dcx","dif","doc","docx","fmf","fxd","fxm","fxr","fxs","g3f","gp4","html","ig4","img","ltx","mil","ods","odt","ott","pdb","pdf","psw","pts","pxl","qfx","ras","rtf","sdc","sdw","slk","stc","stw","sxc","sxw","txt","vor","xhtml","xls","xlsx","xlt","xml","met","odd","odg","odp","pct","pot","ppt","pptx","pwp","ras","sda","sdd","sti","stp","svg","svm","sxi","wmf","xpm"];this.g_cursvc=null;this.g_curalbum=null;this.g_curmsvc=null;this.g_sharetoken=null;this.g_renameEvts={};this.g_newfolder=null;this.g_isSlideAlb=false;this.g_sharedfolders={};this.g_sharedfiles={};this.g_viewsize='medium';this.g_wasSearch=false;function TempSlideshowWizard(m_chooseTimeline){var m_dlg,m_pane;var m_butCancel,m_butBack,m_butNext,m_butSkip,m_butFinish;var m_prevStep,m_nextStep;var m_timeline,m_music;function onShow(){m_dlg.hide();if(m_timeline){showTempSlideshow(false,0,true,true);var co={id:m_timeline.fileid,name:m_timeline.filename,file:m_timeline};CE.CEUI.onEventContent(co,{type:'click'});}else{showTempSlideshow(false,0,true);}
if(m_music&&m_music.length){var pending=0;var music=[];for(var i=0;i<m_music.length;++i){if(CE.CEUI.isAudioFile(m_music[i])){music.push(m_music[i]);}else if(CE.CEI.isDescendableMetaFile(m_music[i])){++pending;CE.CEI.reloadSearchContent({grd:'tmpslide'},0,'+name',1000,m_music[i],true,true,function(r){for(var j=0;j<r.files.length;++j){if(CE.CEUI.isAudioFile(r.files[j])){music.push(r.files[j]);}}
--pending;});}}
CE.CEU.poll(500,function(){return(pending==0);},function(){if(music.length){if(authPlayMedia(CE.CEI.getCurSvc(music[0]),music[0])){playAudioFiles(music,0);}}});}}
function showPaneChooseMusic(){m_dlg.setHeader(CE.STRTAB.lookup('viewslideshow.choosemusic'));CE.rac(m_pane);CE.mCN(m_butBack,'hidden',!m_chooseTimeline);CE.mCN(m_butCancel,'hidden',m_chooseTimeline);CE.rCN(m_butSkip,'hidden');CE.aCN(m_butFinish,'hidden');CE.aCN(m_butNext,'hidden');m_prevStep=showPaneChooseTimeline;m_nextStep=onShow;var first=true;var chooser=new CE.CEI.MediaChooser(['music'],true,true,false,false);chooser.createPane(m_pane,function(selfiles){m_music=selfiles;CE.mCN(m_butSkip,'hidden',(m_music.length!=0));CE.mCN(m_butFinish,'hidden',(m_music.length==0));},function(loadType,numItems){if(first&&numItems==0){m_nextStep();}
first=false;});}
function showPaneChooseTimeline(){m_dlg.setHeader(CE.STRTAB.lookup('viewslideshow.choosetimeline'));CE.rac(m_pane);CE.rCN(m_butCancel,'hidden');CE.rCN(m_butNext,'hidden');CE.aCN(m_butBack,'hidden');CE.aCN(m_butNext,'cedisabled');CE.aCN(m_butSkip,'hidden');CE.aCN(m_butFinish,'hidden');m_nextStep=showPaneChooseMusic;var chooser=new CE.CEI.MediaChooser(['photos'],true,false,false,true);chooser.createPane(m_pane,function(selfiles){m_timeline=selfiles.length?selfiles[0]:null;CE.mCN(m_butNext,'cedisabled',!m_timeline);});}
function onNext(){if(m_nextStep&&(CE.hCN(m_butNext,'hidden')||!CE.hCN(m_butNext,'cedisabled'))&&(CE.hCN(m_butFinish,'hidden')||!CE.hCN(m_butFinish,'cedisabled')))
m_nextStep();}
function onBack(){if(m_prevStep&&!CE.hCN(m_butBack,'cedisabled'))
m_prevStep();}
function onCancel(){m_dlg.hide();return'abort';}
this.show=function(){var div=CE.dce('div');m_pane=div.appendChild(CE.dce('div',null,'cewizpane med'));var buttons=div.appendChild(CE.dce('div'));m_butCancel=buttons.appendChild(CE.dca({onEvent:onCancel},null,'ceredbut hidden'));m_butBack=buttons.appendChild(CE.dca({onEvent:onBack},null,'ceredbut hidden'));m_butNext=buttons.appendChild(CE.dca({onEvent:onNext},null,'ceredbut right-float cedisabled hidden'));m_butSkip=buttons.appendChild(CE.dca({onEvent:onNext},null,'ceredbut right-float hidden'));m_butFinish=buttons.appendChild(CE.dca({onEvent:onNext},null,'ceredbut right-float hidden'));m_butCancel.appendChild(CE.STRTAB.lookupel('button.cancel'));m_butBack.appendChild(CE.STRTAB.lookupel('view.back'));m_butNext.appendChild(CE.STRTAB.lookupel('view.next'));m_butSkip.appendChild(CE.STRTAB.lookupel('viewslideshow.skipmusic'));m_butFinish.appendChild(CE.STRTAB.lookupel('slidedir.viewbut'));m_dlg=new CE.CEU.Dialog('',div,[],null,null,'CEUDialog_narrow1double',null,null,onCancel);if(!CE.CEI.g_svcmap||CE.CEU.structlen(CE.CEI.g_svcmap)==0){onShow();}else{m_dlg.show();if(m_chooseTimeline)
showPaneChooseTimeline();else
showPaneChooseMusic();}};}
function CustomSlideshowWizard(){var m_dlg,m_pane;var m_butCancel,m_butBack,m_butNext,m_butFinish;var m_creating,m_prevStep,m_nextStep;var m_name='';var m_photos=[];var m_music=[];function onCreate(){m_dlg.setHeader(CE.STRTAB.lookup('slidealb.wiz.create'));CE.rac(m_pane);CE.aCN(m_butBack,'hidden');CE.aCN(m_butFinish,'hidden');CE.aCN(m_butNext,'hidden');CE.aCN(m_butCancel,'hidden');m_creating=true;var aniDiv=m_pane.appendChild(CE.dce('div',null,'ceanifinish'));aniDiv.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));(aniDiv.appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupel('slidealb.wiz.creating'));aniDiv.style.paddingTop=(parseInt((m_pane.offsetHeight-aniDiv.offsetHeight)/2)+20)+'px';CE.CEU.makeLoadingAniInvisible(true);CE.CEU.svc.asyncRPC('POST','createAlbum',['name',m_name,'albumtype',CE.FILE_TYPE_SLIDEALBUM],function(r){CE.CEUI.reloadAlbumsIShare(function(){activateAlbum(r.album.albumid,false,null,function(){var files=m_photos.concat(m_music);onSlideAlbDropFolder({'files':files},{},null,function(){m_dlg.hide();CE.CEU.makeLoadingAniInvisible(false);CE.CEUI.reloadContentCWD();});});});},CE.CEI.onGenericFailure);}
function showPaneChooseMusic(){m_dlg.setHeader(CE.STRTAB.lookup('slidealb.wiz.choosemusic'));CE.rac(m_pane);CE.rCN(m_butBack,'hidden');CE.rCN(m_butFinish,'hidden');CE.aCN(m_butNext,'hidden');CE.aCN(m_butCancel,'hidden');m_prevStep=showPaneChoosePhotos;m_nextStep=onCreate;var chooser=new CE.CEI.MediaChooser(['music'],true,true,false,false);chooser.createPane(m_pane,function(selfiles){m_music=selfiles;});}
function showPaneChoosePhotos(){m_dlg.setHeader(CE.STRTAB.lookup('slidealb.wiz.choosephotos'));CE.rac(m_pane);CE.rCN(m_butBack,'hidden');CE.rCN(m_butNext,'hidden');CE.aCN(m_butFinish,'hidden');CE.aCN(m_butCancel,'hidden');m_prevStep=showPaneChooseName;m_nextStep=showPaneChooseMusic;var chooser=new CE.CEI.MediaChooser(['photos','movies'],true,true,false,false);chooser.createPane(m_pane,function(selfiles){m_photos=selfiles;});}
function showPaneChooseName(){m_dlg.setHeader(CE.STRTAB.lookup('slidealb.wiz.choosename'));CE.rac(m_pane);CE.rCN(m_butCancel,'hidden');CE.rCN(m_butNext,'hidden');CE.mCN(m_butNext,'cedisabled',(!m_name||m_name.length==0));CE.aCN(m_butBack,'hidden');CE.aCN(m_butFinish,'hidden');m_nextStep=showPaneChoosePhotos;var nameDiv=m_pane.appendChild(CE.dce('div',null,'cecenteralign'));(nameDiv.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('view.enterslidedirname'));var input=(nameDiv.appendChild(CE.dce('div'))).appendChild(CE.dce('input',null,'cefield'));input.value=m_name;CE.CEU.attachEvent(input,'keyup',{onEvent:function(){m_name=CE.CEU.stripBadFnChars(input.value);CE.mCN(m_butNext,'cedisabled',(m_name.length==0));}});input.focus();nameDiv.style.paddingTop=(parseInt((m_pane.offsetHeight-nameDiv.offsetHeight)/2)-12)+'px';}
function onNext(){if(m_nextStep&&(CE.hCN(m_butNext,'hidden')||!CE.hCN(m_butNext,'cedisabled'))&&(CE.hCN(m_butFinish,'hidden')||!CE.hCN(m_butFinish,'cedisabled')))
{m_nextStep();}}
function onBack(){if(m_prevStep&&!CE.hCN(m_butBack,'cedisabled'))
m_prevStep();}
function onCancel(){if(!m_creating){CE.CEU.promptYesNo(CE.STRTAB.lookup('sharewiz.choosefiles.cancel.title'),CE.STRTAB.lookup('sharewiz.choosefiles.cancel.msg'),function(){m_dlg.hide();return true;});}
return'abort';}
this.show=function(){var hasSvc=false;for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].online&&CE.CEI.g_svcmap[s].online=='1'){hasSvc=true;break;}}
if(!hasSvc){CE.CEU.showMessage(CE.STRTAB.lookup('ceui.createslidedir.title'),CE.STRTAB.lookup('ceui.createslidedir.nosvc'));return;}
var div=CE.dce('div');m_pane=div.appendChild(CE.dce('div',null,'cewizpane med'));var buttons=div.appendChild(CE.dce('div'));m_butCancel=buttons.appendChild(CE.dca({onEvent:onCancel},null,'ceredbut hidden'));m_butBack=buttons.appendChild(CE.dca({onEvent:onBack},null,'ceredbut hidden'));m_butNext=buttons.appendChild(CE.dca({onEvent:onNext},null,'ceredbut right-float cedisabled hidden'));m_butFinish=buttons.appendChild(CE.dca({onEvent:onCreate},null,'ceredbut right-float hidden'));m_butCancel.appendChild(CE.STRTAB.lookupel('button.cancel'));m_butBack.appendChild(CE.STRTAB.lookupel('view.back'));m_butNext.appendChild(CE.STRTAB.lookupel('view.next'));m_butFinish.appendChild(CE.STRTAB.lookupel('view.finish'));m_dlg=new CE.CEU.Dialog('',div,[],null,null,'CEUDialog_narrow1double',null,null,onCancel);m_dlg.show();showPaneChooseName();};};function DocumentPreview(file,parentDiv){var m_file=file;var m_parent=parentDiv||CE.CEU.$('cecontentmain');var m_conv=null;var m_zoom=100;var m_multi=2;var m_pageImg=null;var m_butPageNum,m_butNumPages,m_butPrev,m_butNext,m_butDocPages1,m_butDocPages2,m_docPrevDiv,m_docDiv;function showPrintingStatus(r,d){CE.CEI.Hinter().showHintBrief('print-queued',CE.STRTAB.lookupelh('print.dlg.queued.hint'));if(r.jobid){var statusDiv;var waitPane=CE.dce('div');var waitDlg=new CE.CEU.Dialog(CE.STRTAB.lookup('print.dlg.status.title'),waitPane,[{name:'cancel',label:CE.STRTAB.lookup('button.cancel'),callback:function(){CE.CEU.svc.asyncRPC('PRINT','cancelJob',['deviceid',d.deviceid,'serviceid',d.serviceid,'jobid',r.jobid]);statusDiv=null;waitDlg.hide();return true;}},{name:'hide',label:CE.STRTAB.lookup('print.dlg.status.hide'),callback:function(){statusDiv=null;waitDlg.hide();return true;}}],null,true);statusDiv=waitPane.appendChild(CE.dce('div'));statusDiv.appendChild(CE.STRTAB.lookupel('print.dlg.status.msg'));statusDiv.appendChild(CE.STRTAB.lookupel('print.dlg.status.ul'));var progress=(waitPane.appendChild(CE.dce('div',null,'ceprogressbar'))).appendChild(CE.dce('div',null,'ceprogress'));var aniDiv=waitPane.appendChild(CE.dce('div',null,'ceaniwait'));aniDiv.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));waitDlg.show();var updateStatus=function(){if(statusDiv){CE.CEU.svc.asyncRPC('PRINT','getJobs',['deviceid',d.deviceid,'serviceid',d.serviceid],function(rj){for(var i=0;i<rj.jobs.length;++i){if(rj.jobs[i].jobid==r.jobid&&rj.jobs[i].status&&statusDiv){if(rj.jobs[i].status==9){waitDlg.hide();return;}else{CE.rac(statusDiv);statusDiv.appendChild(CE.STRTAB.lookupel('print.dlg.status.msg'));statusDiv.appendChild(CE.STRTAB.lookupel('print.queue.status.'+rj.jobs[i].status));switch(parseInt(rj.jobs[i].status)){case 10:progress.style.width='25%';break;case 0:case 2:case 3:progress.style.width='50%';break;case 4:case 5:progress.style.width='50%';break;case 6:case 7:case 8:progress.style.width='75%';break;}}
break;}}
setTimeout(updateStatus,1000);},function(){setTimeout(updateStatus,1000);});}};setTimeout(updateStatus,2000);}}
function onPrintDoc(d){var printer=g_printers[d.printers.selectedIndex];var fromRange=parseInt(d.pageFrom.value);var toRange=parseInt(d.pageTo.value);if(d.pageRadioFrom.checked){if(d.pageFrom.value==''||d.pageTo.value==''||isNaN(fromRange)||isNaN(toRange)||fromRange<1||toRange<1||fromRange>toRange){CE.CEU.showMessage(CE.STRTAB.lookup('print.rangeerror.title'),CE.STRTAB.lookup('print.rangeerror.msg'));return false;}}
var fileUrl,docTitle;if(!m_conv||!m_conv.fullurl||(m_file.name.length>4&&m_file.name.substr(m_file.name.length-4).toLowerCase()=='.pdf')){var fileSvc=CE.CEI.getCurSvc(m_file);fileUrl='pp://'+fileSvc.deviceid+':'+fileSvc.serviceid+':'+m_file.fileid;}else{fileUrl=m_conv.fullurl;docTitle=m_file.name;}
var args=['deviceid',printer.deviceid,'serviceid',printer.serviceid,'filedurl',fileUrl,'numcopies',(d.numCopies.value!='')?parseInt(d.numCopies.value):'1','collate',d.colCheck.checked?'1':'0','pageorientation',CE.hCN(d.orientAuto,'selected')?'0':(CE.hCN(d.orientPortrait,'selected')?'3':'4'),'fittopage',d.fitCheck.checked?'1':'0','grayscale',d.grayscale.checked?'1':'0'];if(docTitle)
args.push('title',docTitle);if(d.papers.length>0)
args.push('papersize',d.papers.options[d.papers.selectedIndex].value);if(!d.fitCheck.checked)
args.push('scaling',parseInt(d.scale.value));if(d.pageRadioFrom.checked)
args.push('pagerange',(fromRange==toRange)?fromRange:fromRange+'-'+toRange);CE.CEU.svc.asyncRPC('PRINT','printFile',args,showPrintingStatus,CE.CEI.onGenericFailure,{'deviceid':printer.deviceid,'serviceid':printer.serviceid});return true;}
function onShowPrintDoc(){var d={printers:null,numCopies:null,colCheck:null,pageRadioAll:null,pageRadioFrom:null,pageFrom:null,pageTo:null,papers:null,papersLabel:null,orientAuto:null,orientPortrait:null,orientLandscape:null,scale:null,fitCheck:null,grayscale:null};var content=CE.dce('div');var table=(content.appendChild(CE.dce('table',null,'ceprinttable'))).appendChild(CE.dce('tbody'));var tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td',null,'cerightalign'))).appendChild(CE.STRTAB.lookupel('print.dlg.printer'));d.printers=(tr.appendChild(CE.dce('td'))).appendChild(CE.dce('select'));for(var i=0;i<g_printers.length;++i){d.printers.appendChild(CE.dco(g_printers[i].name,''));}
tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td',null,'cerightalign'))).appendChild(CE.STRTAB.lookupel('print.dlg.copies'));var td=tr.appendChild(CE.dce('td'));d.numCopies=CE.dce('input');d.numCopies.type='text';d.numCopies.value='1';d.numCopies.size=4;td.appendChild(d.numCopies);d.colCheck=CE.dce('input','colcheck','ceprintcheck');d.colCheck.type='checkbox';d.colCheck.checked=true;td.appendChild(d.colCheck);(td.appendChild(CE.dcl('colcheck'))).appendChild(CE.STRTAB.lookupel('print.dlg.collated'));tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td',null,'cerightalign'))).appendChild(CE.STRTAB.lookupel('print.dlg.pages'));td=tr.appendChild(CE.dce('td'));var tmpdiv=td.appendChild(CE.dce('div'));d.pageRadioAll=CE.dce('input','pageradioall','ceprintcheck');d.pageRadioAll.type='radio';d.pageRadioAll.name='pageopt';d.pageRadioAll.checked=true;tmpdiv.appendChild(d.pageRadioAll);(tmpdiv.appendChild(CE.dcl('pageradioall'))).appendChild(CE.STRTAB.lookupel('print.dlg.pagesall'));tmpdiv=td.appendChild(CE.dce('div'));d.pageRadioFrom=CE.dce('input','pageradiofrom','ceprintcheck');d.pageRadioFrom.type='radio';d.pageRadioFrom.name='pageopt';tmpdiv.appendChild(d.pageRadioFrom);(tmpdiv.appendChild(CE.dcl('pageradiofrom'))).appendChild(CE.STRTAB.lookupel('print.dlg.pagesfrom'));d.pageFrom=CE.dce('input');d.pageFrom.type='text';d.pageFrom.value='1';d.pageFrom.size=4;tmpdiv.appendChild(d.pageFrom);tmpdiv.appendChild(CE.STRTAB.lookupel('print.dlg.pagesto'));d.pageTo=CE.dce('input');d.pageTo.type='text';d.pageTo.value=(m_conv&&m_conv.numpages)?m_conv.numpages:'1';d.pageTo.size=4;tmpdiv.appendChild(d.pageTo);tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td',null,'cerightalign'))).appendChild(CE.STRTAB.lookupel('print.dlg.paper'));td=tr.appendChild(CE.dce('td'));d.papers=td.appendChild(CE.dce('select'));var updatePrinterOptions=function(){CE.CEU.showLoadingAni(true);var printer=g_printers[d.printers.selectedIndex];CE.CEU.svc.asyncRPC('PRINT','getPrinterOptions',['deviceid',printer.deviceid,'serviceid',printer.serviceid],function(r){CE.rac(d.papers);var papes=r.pagesizelist||[];var defpape='';for(var i=0;i<papes.length;++i){var pos=papes[i].indexOf('/');if(pos!=-1){d.papers.appendChild(CE.dco(papes[i].substr(pos+1),papes[i].substr(0,pos)));}
pos=papes[i].indexOf(':DEFAULT');if(pos!=-1){defpape=papes[i].substr(0,pos);}}
if(d.papers.options.length>0){d.papers.selectedIndex=0;for(var i=0;i<d.papers.options.length;++i){if(d.papers.options[i].value==defpape){d.papers.selectedIndex=i;break;}}}
CE.CEU.showLoadingAni(false);},function(r,d,m){if(r['HB-EXCEPTION']&&r['HB-EXCEPTION'].ecode==823){CE.CEU.showMessage(CE.STRTAB.lookup('print.dlg.unsup.title'),CE.STRTAB.lookup('print.dlg.unsup.msg'));CE.CEU.showLoadingAni(false);}else{return CE.CEI.onGenericFailure(r,d,m);}});};CE.CEU.attachEvent(d.printers,'change',{onEvent:updatePrinterOptions});updatePrinterOptions();tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td',null,'cerightalign'))).appendChild(CE.STRTAB.lookupel('print.dlg.orientation'));td=tr.appendChild(CE.dce('td',null,'ceopt-group'));d.orientAuto=td.appendChild(CE.dca({onEvent:function(){CE.CEU.checkOpt('orient_auto');}},'orient_auto','cebutton ceopt ceprintbut selected'));d.orientAuto.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'orientation-auto.png'));d.orientAuto.title=CE.STRTAB.lookup('print.dlg.orientation.auto');td.appendChild(CE.dctn(' '));d.orientPortrait=td.appendChild(CE.dca({onEvent:function(){CE.CEU.checkOpt('orient_portrait');}},'orient_portrait','cebutton ceopt ceprintbut'));d.orientPortrait.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'orientation-portrait.png'));td.appendChild(CE.dctn(' '));d.orientLandscape=td.appendChild(CE.dca({onEvent:function(){CE.CEU.checkOpt('orient_landscape');}},'orient_landscape','cebutton ceopt ceprintbut'));d.orientLandscape.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'orientation-landscape.png'));td.appendChild(CE.STRTAB.lookupel('print.dlg.orientation.scale'));d.scale=CE.dce('input');d.scale.type='text';d.scale.value='100';d.scale.size=3;td.appendChild(d.scale);td.appendChild(CE.STRTAB.lookupelh('print.dlg.orientation.scale.post'));td=(table.appendChild(CE.dce('tr'))).appendChild(CE.dce('td'));td.colSpan=2;td.appendChild(CE.dce('hr'));tr=table.appendChild(CE.dce('tr'));td=tr.appendChild(CE.dce('td',null,'nopad'));td=tr.appendChild(CE.dce('td',null,'nopad'));d.grayscale=CE.dce('input','grayscale','ceprintcheck');d.grayscale.type='checkbox';d.grayscale.checked=false;td.appendChild(d.grayscale);(td.appendChild(CE.dcl('grayscale'))).appendChild(CE.STRTAB.lookupel('print.dlg.grayscale'));tr=table.appendChild(CE.dce('tr'));td=tr.appendChild(CE.dce('td'));td=tr.appendChild(CE.dce('td'));d.fitCheck=CE.dce('input','fitcheck','ceprintcheck');d.fitCheck.type='checkbox';d.fitCheck.checked=true;td.appendChild(d.fitCheck);(td.appendChild(CE.dcl('fitcheck'))).appendChild(CE.STRTAB.lookupel('print.dlg.scalefit'));CE.CEU.attachEvent(d.scale,'keyup',{onEvent:function(){if(d.scale.value!='100')
d.fitCheck.checked=false;}});CE.CEU.attachEvent(d.fitCheck,'change',{onEvent:function(){if(d.fitCheck.checked)
d.scale.value='100';}});CE.CEU.attachEvent(d.pageFrom,'keyup',{onEvent:function(){d.pageRadioFrom.checked=true;}});CE.CEU.attachEvent(d.pageTo,'keyup',{onEvent:function(){d.pageRadioFrom.checked=true;}});var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('print.dlg.title'),content,[{name:'ok',label:CE.STRTAB.lookup('button.print'),callback:function(){return onPrintDoc(d);}},{name:'cancel',label:CE.STRTAB.lookup('button.cancel'),callback:function(){dlg.hide();}}]);dlg.show();}
function onNewWin(){var args=['docprev_fileid',m_file.fileid];var svc=CE.CEI.getCurSvc(m_file);if(svc&&svc.deviceid){args.push('docprev_deviceid',svc.deviceid);args.push('docprev_serviceid',svc.serviceid);}
if(CE.CEU.getSearchParam('sharetoken')||CE.CEUI.g_sharetoken){args.push('sharetoken',CE.CEU.getSearchParam('sharetoken')||CE.CEUI.g_sharetoken);}
var url=window.location.protocol+'//'+window.location.host+window.location.pathname+'?';for(var i=0;i<(args.length-1);i+=2){if(i!=0)url+='&';url+=args[i]+'='+encodeURIComponent(args[i+1]);}
window.open(url);}
function onDownload(){downloadfile(m_file);}
function onSinglePage(){CE.aCN(m_butDocPages1,'selected');CE.rCN(m_butDocPages2,'selected');showPage();}
function onMultiPage(){CE.rCN(m_butDocPages1,'selected');CE.aCN(m_butDocPages2,'selected');showPage();}
function onZoomOut(){if(CE.hCN(m_butDocPages1,'selected')&&m_pageImg&&m_zoom>25){m_zoom-=25;m_pageImg.style.width=m_zoom+'%';}else if(!CE.hCN(m_butDocPages1,'selected')){++m_multi;if(m_multi>4)
m_multi=4;showPage();}}
function onZoomIn(){if(CE.hCN(m_butDocPages1,'selected')&&m_pageImg){m_zoom+=25;m_pageImg.style.width=m_zoom+'%';}else if(!CE.hCN(m_butDocPages1,'selected')){if(m_multi==2){onSinglePage();}else{--m_multi;showPage();}}}
function onGotoPageNum(e){m_conv.pagenum=e.num;onSinglePage();}
function onGotoPage(){CE.CEU.showMultiInputDialog('docprev.page.goto',[{message:'docprev.page.goto.num',dflt:m_conv.pagenum,inputcls:'std-field-wide',inputid:'pagenum',inputtype:'text',twoline:false}],'button.ok',function(){var num=parseInt(CE.CEU.$('pagenum').value);if(isNaN(num)||num<1||num>m_conv.numpages){CE.CEU.showMessage(CE.STRTAB.lookup('docprev.page.goto'),CE.STRTAB.lookup('docprev.page.goto.invalid',m_conv.numpages));return false;}
m_conv.pagenum=num;showPage();return true;});}
function onPrevPage(){if(m_conv.pagenum>1){if(CE.hCN(m_butDocPages1,'selected')){--m_conv.pagenum;}else{m_conv.pagenum-=(m_multi*m_multi);if(m_conv.pagenum<1)
m_conv.pagenum=1;}
showPage();}}
function onNextPage(){if(CE.hCN(m_butDocPages1,'selected')){if(m_conv.pagenum<m_conv.numpages){++m_conv.pagenum;showPage();}}else{m_conv.pagenum+=(m_multi*m_multi);if(m_conv.pagenum>m_conv.numpages)
m_conv.pagenum=m_conv.numpages;showPage();}}
function updateToolbar(){m_butPageNum.appendChild(CE.dctn(m_conv.pagenum));m_butNumPages.appendChild(CE.dctn(m_conv.numpages));if(m_conv.pagenum>1)
CE.rCN(m_butPrev,'cedisabled');else
CE.aCN(m_butPrev,'cedisabled');if((CE.hCN(m_butDocPages1,'selected')&&m_conv.pagenum<m_conv.numpages)||(CE.hCN(m_butDocPages2,'selected')&&m_conv.pagenum<(m_conv.numpages-1)))
CE.rCN(m_butNext,'cedisabled');else
CE.aCN(m_butNext,'cedisabled');}
function showToolbar(el){if(g_printers.length){(el.appendChild(CE.dca({onEvent:onShowPrintDoc},null,'cebutton',CE.STRTAB.lookup('view.hint.print')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-print-dark-small.png'));}
m_butPrev=el.appendChild(CE.dca({onEvent:onPrevPage},'cedocpageprev','cebutton',CE.STRTAB.lookup('docprev.page.prev')));m_butPrev.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-prev.png'));m_butPageNum=el.appendChild(CE.dce('span','cedocpagenum'));el.appendChild(CE.dctn(' / '));m_butNumPages=el.appendChild(CE.dce('span','cedocnumpages'));m_butNext=el.appendChild(CE.dca({onEvent:onNextPage},'cedocpagenext','cebutton ceflushright',CE.STRTAB.lookup('docprev.page.next')));m_butNext.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-next.png'));(el.appendChild(CE.dca({onEvent:onGotoPage},'cedocgoto','cebutton ceflushleft',CE.STRTAB.lookup('docprev.page.goto')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-goto.png'));el=el.appendChild(CE.dce('span',null,'ceright'));(el.appendChild(CE.dca({onEvent:onZoomOut},'cedoczoomout','cebutton ceflushright',CE.STRTAB.lookup('docprev.zoom.out')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-zoom-out.png'));(el.appendChild(CE.dca({onEvent:onZoomIn},'cedoczoomin','cebutton ceflushleft',CE.STRTAB.lookup('docprev.zoom.in')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-zoom-dark-small.png'));m_butDocPages1=el.appendChild(CE.dca({onEvent:onSinglePage},'cedocpages1','cebutton ceflushright selected',CE.STRTAB.lookup('docprev.pages.1')));m_butDocPages1.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-1page.png'));m_butDocPages2=el.appendChild(CE.dca({onEvent:onMultiPage},'cedocpages2','cebutton ceflushleft',CE.STRTAB.lookup('docprev.pages.2')));m_butDocPages2.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-2pages.png'));var alb=getAlbum(m_file);if(!alb||!alb.perms||alb.perms!='2'){(el.appendChild(CE.dca({onEvent:onDownload},null,'cebutton',CE.STRTAB.lookup('docprev.download')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-download-dark-small.png'));}
if(CE.CEU.isLoggedIn()){(el.appendChild(CE.dca({onEvent:onNewWin},null,'cebutton',CE.STRTAB.lookup('docprev.fullscreen')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-fullscreen.png'));}}
function showPage(){if(!m_docPrevDiv){m_docPrevDiv=m_parent.appendChild(CE.dce('div','cedocprev'));if(!parentDiv){CE.CEUI.onPageResize();}
showToolbar(m_docPrevDiv.appendChild(CE.dce('div',null,'cedoctools')));m_docDiv=m_docPrevDiv.appendChild(CE.dce('div','cedocpane','cedoc'));}else{CE.rac(m_docDiv);CE.rac(m_butPageNum);CE.rac(m_butNumPages);}
var pageUrl='/svc/api/convertGetPDFPage'+'?source='+encodeURIComponent(m_conv.fullurl)+'&pageno=';if(CE.hCN(m_butDocPages1,'selected')){m_pageImg=m_docDiv.appendChild(CE.dci(pageUrl+m_conv.pagenum,null,'cesinglepage'));m_pageImg.style.width=m_zoom+'%';}else{m_pageImg=null;for(var row=0;row<m_multi;++row){var rowDiv=m_docDiv.appendChild(CE.dce('div',null,'cedocrow'));for(var col=0;col<m_multi;++col){var pageNum=m_conv.pagenum+(row*m_multi)+col;if(pageNum<=m_conv.numpages){var img=rowDiv.appendChild(CE.dci(pageUrl+pageNum,null,'cemulti-'+m_multi+'-'+(col+1)));CE.CEU.attachEvent(img,'click',{onEvent:onGotoPageNum,num:pageNum});}}}}
updateToolbar();CE.CEU.showLoadingAni(false);}
function getPdfInfo(waitDlg,progress,cb){CE.CEU.svc.asyncRPC('POST','convertGetPDFInfo',['source',m_conv.fullurl]);var updateProgress=function(){if(!m_conv.aborted){CE.CEU.svc.asyncRPC('POST','convertGetPDFInfoProgress',['source',m_conv.fullurl],function(r){if(!m_conv.aborted&&progress){if(r.npages){waitDlg.hide();m_conv.pagenum=1;m_conv.numpages=r.npages;cb();}else{progress.style.width=(50+parseInt(r.percent/2.0))+'%';setTimeout(updateProgress,1000);}}},function(){waitDlg.hide();if(!m_conv.aborted){m_conv.aborted=true;CE.CEU.showMessage(CE.STRTAB.lookup('docprev.converror.title'),CE.STRTAB.lookup('docprev.converror.msg'),function(){CE.CEUI.reloadContentCWD();return true;});}});}};setTimeout(updateProgress,1000);}
function initConv(cb){var svc=CE.CEI.getCurSvc(m_file);var dlUrl;if(CE.CEU.isLoggedIn()){dlUrl='/svc/files/'+svc.deviceid+'/'+svc.serviceid+'/'+m_file.fileid+'/dl/'+encodeURIComponent(m_file.name);}else if(CE.CEU.getSearchParam('sharetoken')){dlUrl='/svc/files/'+CE.CEU.getSearchParam('sharetoken')+'/'
+svc.deviceid+'/'+svc.serviceid+'/'+m_file.fileid+'/dl/'+encodeURIComponent(m_file.name);}else{dlUrl='/share/'+CE.CEUI.g_sharetoken+'/'+m_file.fileid+'/dl/'+encodeURIComponent(m_file.name);}
if((dlUrl.substr(dlUrl.length-4)).toLowerCase()=='.pdf'){dlUrl+=Math.floor(Math.random()*1000)+'.pdf';}
var cacheKey=m_file.fileid+m_file.mtime;if(!g_docPrevCache[cacheKey])
g_docPrevCache[cacheKey]={};m_conv=g_docPrevCache[cacheKey];if(m_conv.numpages){m_conv.pagenum=1;cb();}else{m_conv.aborted=false;var waitPane=CE.dce('div');var waitDlg=new CE.CEU.Dialog(CE.STRTAB.lookup('docprev.wait.title'),waitPane,[{name:'cancel',label:CE.STRTAB.lookup('button.cancel'),callback:function()
{m_conv.aborted=true;CE.CEUI.reloadContentCWD();return true;}}],null,true);waitPane.appendChild(CE.STRTAB.lookupel('docprev.wait.msg'));var progress=(waitPane.appendChild(CE.dce('div',null,'ceprogressbar'))).appendChild(CE.dce('div',null,'ceprogress'));var aniDiv=waitPane.appendChild(CE.dce('div',null,'ceaniwait'));aniDiv.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));waitDlg.show();if(m_file.name.length>4&&m_file.name.substr(m_file.name.length-4).toLowerCase()=='.pdf'){m_conv.fullurl=dlUrl;getPdfInfo(waitDlg,progress,cb);}else{CE.CEU.svc.asyncRPC('POST','convertDoc',['docurl',dlUrl]);var updateProgress=function(){if(!m_conv.aborted){CE.CEU.svc.asyncRPC('POST','convertDocGetProgress',['docurl',dlUrl],function(r){if(!m_conv.aborted&&progress){progress.style.width=parseInt(r.progress/2.0)+'%';if(r.filename){m_conv.fullurl=r.fileurl+'/'+r.filename;getPdfInfo(waitDlg,progress,cb);}else{setTimeout(updateProgress,1000);}}else{waitDlg.hide();}},function(){waitDlg.hide();if(!m_conv.aborted){m_conv.aborted=true;CE.CEU.showMessage(CE.STRTAB.lookup('docprev.converror.title'),CE.STRTAB.lookup('docprev.converror.msg'),function(){CE.CEUI.reloadContentCWD();return true;});}});}else if(waitDlg){waitDlg.hide();}};setTimeout(updateProgress,1000);}}}
this.show=function(){CE.CEUI.clearContent('celist');CE.aCN('cetoptools','hidden');initConv(showPage);};this.print=function(){onShowPrintDoc();};}
function TransferFiles(){var that=this;var m_move,m_type;var m_sourceFiles,m_numFiles;var m_progresssvc,m_progressid,m_progressfid;var m_progressDlg;var m_statusDiv,m_progressBar;var m_cancel;function showProgressDlg(){var waitPane=CE.dce('div');m_progressDlg=new CE.CEU.Dialog(CE.STRTAB.lookup('transferfiles.dlg.status.title'),waitPane,[{name:'cancel',label:CE.STRTAB.lookup('button.cancel'),callback:function(){m_cancel=true;m_statusDiv=null;m_progressBar=null;if(m_progressDlg){m_progressDlg.hide();m_progressDlg=null;}
if(m_progresssvc&&m_progressid){CE.API.cancelOperation(null,null,null,m_progresssvc,m_progressid);}
return true;}},{name:'ok',label:CE.STRTAB.lookup('transferfiles.dlg.status.hide'),callback:function(){m_statusDiv=null;m_progressBar=null;if(m_progressDlg){m_progressDlg.hide();m_progressDlg=null;}
return true;}}],null,true);m_statusDiv=waitPane.appendChild(CE.dce('div'));m_progressBar=(waitPane.appendChild(CE.dce('div',null,'ceprogressbar'))).appendChild(CE.dce('div',null,'ceprogress'));var aniDiv=waitPane.appendChild(CE.dce('div',null,'ceaniwait'));aniDiv.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));m_progressDlg.show();}
function promptOverwrite(sourceFile,cb){var msg=CE.dce('div');(msg.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.dctn(CE.STRTAB.lookup('view.overwrite.prompt',CE.CEI.getDispFn(sourceFile))));var checkDiv=msg.appendChild(CE.dce('div'));var check=CE.dce('input','apply_all','cecheck');check.type='checkbox';checkDiv.appendChild(check);(checkDiv.appendChild(CE.dcl('apply_all'))).appendChild(CE.STRTAB.lookupel('view.overwrite.applyall'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.overwrite.title'),msg,[{name:'yes',label:CE.STRTAB.lookup('view.yes'),callback:function(){cb(true,check.checked);return true;}},{name:'no',label:CE.STRTAB.lookup('view.no'),callback:function(){cb(false,check.checked);return true;}}]);dlg.show();}
function onTransferFailure(r,d){if(d.file.finish_stub)
d.file.finish_stub.transfer_errors=true;CE.CEU.showMessage(CE.STRTAB.lookup('transferfiles.error.transfer.title'),CE.STRTAB.lookup('transferfiles.error.transfer.msg',d.file.filename),function(){d.nextCb();return true;});}
function onDeleteFailure(r,d){CE.CEU.showMessage(CE.STRTAB.lookup('transferfiles.error.delete.title'),CE.STRTAB.lookup('transferfiles.error.delete.msg',d.file.filename),function(){d.nextCb();return true;});}
function updateFileProgress(r,source,cbDone){m_progresssvc=source.svc;m_progressid=(r&&r.progressid)?r.progressid:null;m_progressfid=source.fileid;if(m_progressid){CE.API.transferProgress(function(rtp){var copied;var total;if(rtp){copied=rtp.copiedsize||rtp.offset;total=rtp.totalsize||rtp.length;}
if(!rtp||(rtp.done&&rtp.done!='0')){if(copied&&total&&copied!=total){onTransferFailure(null,{file:source,nextCb:function(){cbDone(true);}});}else{cbDone();}}else{if(copied&&total&&m_progressBar){var percent=parseInt(((m_numFiles-m_sourceFiles.length-1)/m_numFiles)*100)
+parseInt((copied/total)*(100/m_numFiles));m_progressBar.style.width=percent+'%';}
if(rtp&&rtp.name&&m_statusDiv){CE.rac(m_statusDiv);m_statusDiv.appendChild(CE.STRTAB.lookupel('transferfiles.dlg.status.'+m_type,rtp.name));}
setTimeout(function(){updateFileProgress(r,source,cbDone);},600);}},null,null,m_progresssvc,m_progressid,m_progressfid);}else{cbDone();}}
function transferFile(source,mightOverwrite,cbDone){if(source.just_finish){if(m_move&&!source.transfer_errors){CE.API.removeFile(cbDone,onDeleteFailure,{file:source,nextCb:cbDone},source.svc,source.fileid,true,source.svc.albumid);}else{cbDone();}}else if(!mightOverwrite&&m_move&&source.svc.deviceid==source.dest.svc.deviceid&&source.svc.serviceid==source.dest.svc.serviceid){CE.API.moveFile(cbDone,onTransferFailure,{file:source,nextCb:cbDone},source.svc,source.fileid,source.dest.file.fileid,source.filename);}else{CE.API.copyFile(function(r){updateFileProgress(r,source,function(failure){if(!failure&&m_move){CE.API.removeFile(cbDone,onDeleteFailure,{file:source,nextCb:cbDone},source.svc,source.fileid,true,source.svc.albumid);}else{cbDone();}});},onTransferFailure,{file:source,nextCb:cbDone},source.svc,source.fileid,source.dest.svc,source.dest.file.fileid);}}
function prepDirCopy(source,existingDest,cbDone){if(!CE.CEI.isDescendableFile(existingDest)){CE.CEU.showMessage(CE.STRTAB.lookup('transferfiles.error.transfer.title'),CE.STRTAB.lookup('transferfiles.error.mismatch.msg',d.file.filename),function(){cbDone();return true;});return;}
CE.CEU.svc.asyncRPC('POST','listFiles',['deviceid',source.svc.deviceid,'serviceid',source.svc.serviceid,'parentid',source.fileid,'maxcount','32000'],function(r){var finishStub=source;finishStub.just_finish=true;finishStub.transfer_errors=false;m_sourceFiles.push(finishStub);var newDest={file:existingDest,svc:source.dest.svc};for(var i=0;i<r.files.length;++i){var newSource=r.files[i];newSource.svc=source.svc;newSource.dest=newDest;newSource.finish_stub=finishStub;m_sourceFiles.push(newSource);}
cbDone();},function(){CE.CEU.showMessage(CE.STRTAB.lookup('transferfiles.error.transfer.title'),CE.STRTAB.lookup('transferfiles.error.list.msg',d.file.filename),function(){cbDone();return true;});});}
function beginTransfer(){var overopt={};var processNext=function(){if(m_statusDiv&&m_progressBar){var percent=parseInt(((m_numFiles-m_sourceFiles.length)/m_numFiles)*100);m_progressBar.style.width=percent+'%';CE.rac(m_statusDiv);}
if(m_cancel||m_sourceFiles.length==0){m_statusDiv=m_progressBar=null;if(m_progressDlg){m_progressDlg.hide();m_progressDlg=null;}
if(m_move){CE.CEUI.reloadContentCWD(function(){CE.CEI.Hinter().showHintBrief('move-file',CE.STRTAB.lookupel('transferfiles.complete.move.hint'));});}else{CE.CEI.Hinter().showHintBrief('copy-file',CE.STRTAB.lookupel('transferfiles.complete.copy.hint'));}
return;}
var source=m_sourceFiles.pop();var isDir=CE.CEI.isDescendableFile(source);if(m_statusDiv){m_statusDiv.appendChild(CE.STRTAB.lookupel('transferfiles.dlg.status.'+m_type,source.filename));}
if((!isDir&&overopt.overwrite&&overopt.always)||source.just_finish){transferFile(source,true,processNext);}else{CE.API.getFile(function(r){if(!overopt.overwrite&&overopt.always){if(source.finish_stub)
source.finish_stub.transfer_errors=true;processNext();}else if(isDir&&overopt.overwrite&&overopt.always){prepDirCopy(source,r.file,processNext);}else{promptOverwrite(source,function(overwrite,always){overopt.overwrite=overwrite;overopt.always=always;if(overwrite){if(isDir){prepDirCopy(source,r.file,processNext);}else{transferFile(source,true,processNext);}}else{if(source.finish_stub)
source.finish_stub.transfer_errors=true;processNext();}});}},function(){transferFile(source,true,processNext);},null,source.dest.svc,null,source.filename,source.dest.file.fileid);}};showProgressDlg();processNext();}
this.transferFiles=function(sourceFiles,destFolder,move,cbStarted,cbCantStart){m_move=move;m_type=move?'move':'copy';m_sourceFiles=sourceFiles;m_numFiles=m_sourceFiles.length;CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','getFile',['deviceid',destFolder.svc.deviceid,'serviceid',destFolder.svc.serviceid,'fileid',destFolder.fileid],function(r){var badParents=[];for(var i=0;i<sourceFiles.length;++i){if(sourceFiles[i].svc.deviceid==destFolder.svc.deviceid&&sourceFiles[i].svc.serviceid==destFolder.svc.serviceid&&(sourceFiles[i].parentid==destFolder.fileid||sourceFiles[i].parentid==r.file.fileid)){CE.CEU.showLoadingAni(false);CE.CEU.showMessage(CE.STRTAB.lookup('choosefolder.descendanterr.title'),CE.STRTAB.lookup('choosefolder.descendanterr.msg'));if(cbCantStart)cbCantStart();return;}
if(sourceFiles[i].type==CE.FILE_TYPE_DIRECTORY)
badParents.push({svc:sourceFiles[i].svc,file:sourceFiles[i]});}
function checkParent(){if(!badParents.length){CE.CEU.showLoadingAni(false);if(cbStarted)cbStarted();var dest={file:destFolder,svc:destFolder.svc};for(var i=0;i<m_sourceFiles.length;++i){m_sourceFiles[i].dest=dest;}
beginTransfer();}else{CE.CEU.isDescendant(badParents.pop(),{file:destFolder,svc:destFolder.svc},function(){CE.CEU.showLoadingAni(false);CE.CEU.showMessage(CE.STRTAB.lookup('choosefolder.descendanterr.title'),CE.STRTAB.lookup('choosefolder.descendanterr.msg'));if(cbCantStart)cbCantStart();},checkParent);}};checkParent();},CE.CEI.onGenericFailure);};this.promptDestTransfer=function(canMove,sourceFiles,msgDiv){var dest=[];var div=CE.dce('div');if(msgDiv)
div.appendChild(msgDiv);var buttons=CE.dce('div');var butMove=null;if(canMove){butMove=buttons.appendChild(CE.dca({onEvent:onOk,'move':true},null,'ceredbut cerightfloat cedisabled'));butMove.appendChild(CE.STRTAB.lookupel('view.hint.move'));}
var butCopy=buttons.appendChild(CE.dca({onEvent:onOk,'move':false},null,'ceredbut cerightfloat cedisabled'));butCopy.appendChild(CE.STRTAB.lookupel('view.hint.copy'));m_butCancel=buttons.appendChild(CE.dca({onEvent:function(){dlg.hide();return false;}},null,'ceredbut'));m_butCancel.appendChild(CE.STRTAB.lookupel('button.cancel'));var chooser=new CE.CEI.MediaChooser(['service','shares'],true,false,true,false);chooser.createPane(div,function(files){dest=files;CE.mCN(butCopy,'cedisabled',!dest.length);if(butMove)
CE.mCN(butMove,'cedisabled',!dest.length);});div.appendChild(buttons);var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('transferfiles.dlg.title.'+(canMove?'move':'copy')),div,[],null,null,'CEUDialog_narrow1double');dlg.show();function onOk(d){m_type=d.move?'move':'copy';that.transferFiles(sourceFiles,dest[0],d.move,function(){dlg.hide();});return false;}};}
function EjectConfirmDialog(){var that=this;var m_pane=CE.dce('div');var m_dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.eject.title'),m_pane,null,null,true);var m_waitDlg=null;var m_svc=null;function onEjectSuccess(r,data,method){g_ejectedsvc=m_svc;m_waitDlg.hide();m_waitDlg=null;m_svc=null;m_success=null;CE.CEUI.g_cursvc=null;reloadSidebar();}
function onEjectFailure(r,data,method){m_waitDlg.hide();m_waitDlg=null;m_svc=null;return CE.CEI.onGenericFailure(r,data,method);}
function onEjectOkClick(){var waitPane=CE.dce('div');var prn=(m_svc&&m_svc.type&&m_svc.type.indexOf(':printer')!=-1);m_waitDlg=new CE.CEU.Dialog(CE.STRTAB.lookup(prn?'settings.ejectprn.dlgtitle':'ceui.eject.title'),waitPane,null,null,true);waitPane.appendChild(CE.STRTAB.lookupel(prn?'ceui.eject.prn.wait':'ceui.eject.wait'));var aniPane=CE.dce('div',null,'ceaniwait');waitPane.appendChild(aniPane);aniPane.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));m_waitDlg.show();if(m_svc.device&&m_svc.device.type&&m_svc.device.type.indexOf(':subdev')!=-1){CE.CEU.svc.asyncRPC('POST','unregisterDevice',['deviceid',m_svc.device.deviceid],onEjectSuccess,onEjectFailure);}else{var args=["deviceid",m_svc.deviceid,"serviceid",m_svc.serviceid];CE.CEU.svc.asyncRPC("POST","ejectService",args,onEjectSuccess,onEjectFailure);}
return true;}
function onEjectCancelClick(){m_svc=null;m_success=null;return true;}
(function(){m_dlg.addButton('ok',CE.STRTAB.lookup('ceui.ok'),onEjectOkClick);m_dlg.addButton('cancel',CE.STRTAB.lookup('ceui.cancel'),onEjectCancelClick);})();this.show=function(svc){m_svc=svc;CE.rac(m_pane);if(m_svc.type&&m_svc.type.indexOf(':printer')!=-1){m_pane.appendChild(CE.STRTAB.lookupel('ceui.eject.printer',CE.CEI.getDispFn(m_svc.name)))
m_dlg.setHeader(CE.STRTAB.lookup('settings.ejectprn.dlgtitle'));}else{m_pane.appendChild(CE.STRTAB.lookupel('ceui.eject.service',CE.CEI.getDispFn(m_svc.name)))}
m_dlg.show(true);}}
function DeleteConfirmDialog(){var that=this;var pane=CE.dce('div');var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.delete.title'),pane,null,null,true);var m_file=null;var m_share=false;function onRemoveSuccess(r,data,method){m_file=null;CE.CEUI.reloadContentCWD(function(){CE.CEI.Hinter().showHintBrief('del-file',CE.STRTAB.lookupel('ceui.delete.complete.hint'));});}
function onRemoveFailure(r,data,method){CE.CEU.showLoadingAni(false);m_file=null;var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceu.error.title'),CE.STRTAB.lookupel("view.removefailure"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;}
function removeFile(){var args=[];var svc=CE.CEI.getCurSvc(m_file);args.push("deviceid");args.push(svc.deviceid);args.push("serviceid");args.push(svc.serviceid);args.push("fileid");args.push(m_file.fileid);args.push("recurse");args.push("1");if(CE.CEUI.g_curalbum){args.push("albumid");args.push(CE.CEUI.g_curalbum.albumid);}
trackEvent('Delete',null,m_file);CE.CEI.g_searchResults['celist']=null;if(g_cursearch&&g_searchCache[g_cursearch]&&!g_curpath.length)
delete g_searchCache[g_cursearch];CE.CEU.svc.asyncRPC("POST","removeFile",args,onRemoveSuccess,onRemoveFailure);}
function onRemoveOkClick(){CE.CEU.showLoadingAni(true);dlg.hide();var completeRemove=function(){if(isShared(m_file)){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(m_file,true)),CE.STRTAB.lookup('removeshare.warn.msg',CE.STRTAB.lookup('removeshare.warn.delete'),CE.CEI.getObjType(m_file),m_file.name),function(){CE.CEU.showLoadingAni(true);removeShare(m_file,function(){CE.CEI.Hinter().showHintBrief('share-del',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.complete.hint')));removeFile();CE.CEUI.reloadAlbumsIShare();});return true;});}else{removeFile();}};var devid=m_file.deviceid||CE.CEI.getCurSvc(m_file).deviceid;if(g_subdevs[devid]&&g_subdevs[devid][m_file.fileid]){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(m_file,true)),CE.STRTAB.lookup('removeshare.warn.sub.msg',CE.STRTAB.lookup('removeshare.warn.delete'),CE.CEI.getObjType(m_file),m_file.name),function(){CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','multiuserDestroyDevice',['deviceid',devid,'subdevid',g_subdevs[devid][m_file.fileid]],function(){completeRemove();},function(){completeRemove();});return true;});}else{completeRemove();}}
function onRemoveCancelClick(){m_file=null;dlg.hide();}
(function(){dlg.addButton('ok',CE.STRTAB.lookup('ceui.ok'),onRemoveOkClick);dlg.addButton('cancel',CE.STRTAB.lookup('ceui.cancel'),onRemoveCancelClick);})();this.show=function(file,share){m_file=file;m_share=share;CE.rac(pane);if(m_file.albumid){pane.appendChild(CE.STRTAB.lookupel('ceui.delete.msg',CE.CEI.getDispFn(file)));}else{pane.appendChild(CE.STRTAB.lookupel('ceui.delete.msg',CE.CEI.getDispFn(file)));}
dlg.show(true);}}
function RemoveShareDialog(){var that=this;var pane=CE.dce('div');var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup("view.removesharecaps.withme"),pane,null,null,true);var m_share=null;var m_noPrompt,m_noRefresh,m_cb;function onRemoveSuccess(){if(m_share.albumtype==CE.FILE_TYPE_PRINTALBUM){CE.CEI.Hinter().showHintBrief('shareme-delp',CE.dctn(CE.STRTAB.lookup('shareme.delete.printer.complete.hint')));}else{CE.CEI.Hinter().showHintBrief('shareme-del',CE.dctn(CE.STRTAB.lookup('shareme.delete.complete.hint')));}
m_share=null;if(!m_noRefresh){reloadAlbumsSharedWithMe(function(){if(CE.CEUI.isSharedFoldersListing()){CE.CEUI.reloadContentCWD();if(m_cb)m_cb();}});}else{if(m_cb)m_cb();}}
function onRemoveFailure(r,data,method){m_share=null;CE.CEI.onGenericFailure(r,data,method);if(m_cb)m_cb();}
function onRemoveOkClick(){if(CE.CEU.user){var emails=[];if(!CE.CEU.user.emails||CE.CEU.user.emails.length<1){if(CE.CEU.user.email)
emails.push({'address':CE.CEU.user.email});}else{for(var i=0;i<CE.CEU.user.emails.length;++i){emails.push(CE.CEU.user.emails[i]);}}
var removeNextAddress=function(){if(emails.length>0){var email=emails.pop();CE.CEU.svc.asyncRPC("POST","removeAlbumShare",["albumid",m_share.albumid,"email",email.address],removeNextAddress,onRemoveFailure);}else{onRemoveSuccess();}};removeNextAddress();}
dlg.hide();}
function onRemoveCancelClick(){m_share=null;dlg.hide();}
(function(){dlg.addButton('ok',CE.STRTAB.lookup('ceui.ok'),onRemoveOkClick);dlg.addButton('cancel',CE.STRTAB.lookup('ceui.cancel'),onRemoveCancelClick);})();this.show=function(share,noPrompt,noRefresh,cb){m_share=share;m_noPrompt=noPrompt;m_noRefresh=noRefresh;m_cb=cb;CE.rac(pane);var type=CE.CEI.getObjType(m_share);pane.appendChild(CE.STRTAB.lookupel('view.stopshare.withme',type,CE.CEI.getDispFn(m_share.name)));if(!m_noPrompt){dlg.show(true);}else{onRemoveOkClick();}}}
function DeleteShareDialog(){var that=this;var pane=CE.dce('div');var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.removesharecaps'),pane,null,null,true,null,null,null,null,null,null,null,true);var m_share=null;var m_delSlideAlb=false;var m_noPrompt=false;var m_noRefresh=false;var m_cb=null;var m_type;function onRemoveSuccess(){if(m_type==CE.STRTAB.lookup('view.printer'))
CE.CEI.Hinter().showHintBrief('share-delp',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.printer.complete.hint')));else if(m_type==CE.STRTAB.lookup('view.slideshow'))
CE.CEI.Hinter().showHintBrief('share-dels',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.slideshow.complete.hint')));else
CE.CEI.Hinter().showHintBrief('share-del',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.complete.hint')));m_share=null;if(!m_noRefresh){reloadAlbums(function(){CE.CEU.showLoadingAni(false);CE.CEUI.reloadContentCWD();if(m_cb){m_cb();}});}else{if(m_cb){m_cb();}}}
function onRemoveFailure(r,data,method){m_share=null;CE.CEI.onGenericFailure(r,data,method);if(m_cb){m_cb();}}
function onRemoveOkClick(){if(CE.CEU.user&&CE.CEU.user.email){CE.CEU.showLoadingAni(true);if(!m_delSlideAlb&&m_share.albumtype==CE.FILE_TYPE_SLIDEALBUM){removeAllInvitations(m_share.albumid);CE.CEI.setOption('slideshare_'+m_share.albumid,false);onRemoveSuccess();}else{var sh=m_share.root?m_share.root:m_share;shareDisableNotify(sh.serviceid,sh.deviceid,m_share.albumid,function(r,d){CE.CEU.svc.asyncRPC("POST","deleteAlbum",["albumid",m_share.albumid],onRemoveSuccess,onRemoveFailure);});}}
dlg.hide();}
function onRemoveCancelClick(){m_share=null;dlg.hide();}
(function(){dlg.addButton('ok',CE.STRTAB.lookup('ceui.ok'),onRemoveOkClick);dlg.addButton('cancel',CE.STRTAB.lookup('ceui.cancel'),onRemoveCancelClick);})();this.show=function(share,deleteSlideAlb,noPrompt,noRefresh,cb){m_delSlideAlb=deleteSlideAlb;m_noPrompt=noPrompt;m_noRefresh=noRefresh;m_cb=cb;if(!share)
return;m_share=share;CE.rac(pane);m_type=CE.CEI.getObjType(m_share);if(m_delSlideAlb&&m_share.albumtype==CE.FILE_TYPE_SLIDEALBUM){dlg.setHeader(CE.STRTAB.lookup('view.removesharecaps.slidealb'));pane.appendChild(CE.STRTAB.lookupel('view.stopshare.slidealb',CE.CEI.getDispFn(m_share.name)));}else if((!m_share.albumid||!CE.CEI.g_albummap[m_share.albumid])&&!CE.CEI.isOwnedSvc(m_share)){dlg.setHeader(CE.STRTAB.lookup('view.removesharecaps.withme'));pane.appendChild(CE.STRTAB.lookupel('view.stopshare.withme',m_type,CE.CEI.getDispFn(m_share.name)));}else{dlg.setHeader(CE.STRTAB.lookup('view.removesharecaps.this'));pane.appendChild(CE.STRTAB.lookupel('view.stopshare',m_type,CE.CEI.getDispFn(m_share.name)));CE.CEU.showLoadingAni(true);isCustomUiImgShare(m_share,function(isCustomImg){if(isCustomImg){(pane.appendChild(CE.dce('div',null,'extramargintop'))).appendChild(CE.STRTAB.lookupelh('view.stopshare.customimg.html'));}
CE.CEU.showLoadingAni(false);});}
if(!m_noPrompt){dlg.show(true);}else{onRemoveOkClick();}}}
function appendNTFSMountFailMessage(msgbody){var div=msgbody;var p=CE.dce("p");p.appendChild(CE.STRTAB.lookupel('view.problems.intro'));div.appendChild(p);p=CE.dce("p");p.appendChild(CE.STRTAB.lookupel("view.problems.one"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.problems.two"));div.appendChild(p);p=CE.dce("p");p.appendChild(CE.STRTAB.lookupel("view.OR"));div.appendChild(p);p=CE.dce("p");p.appendChild(CE.STRTAB.lookupel("view.OR.one"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.two"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.three"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.four"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.five"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.six"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.seven"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.eight"));p.appendChild(CE.dce("br"));p.appendChild(CE.STRTAB.lookupel("view.OR.nine"));p.appendChild(CE.dce("br"));div.appendChild(p);p=CE.dce("p");p.appendChild(CE.STRTAB.lookupel("view.problems.persists"));var a=CE.dce("a");a.href=CE.STRTAB.lookup("supporturl");a.target="_blank";a.appendChild(CE.STRTAB.lookupel("view.clickhere"));p.appendChild(a);p.appendChild(CE.STRTAB.lookupel("view.problems.contact"));div.appendChild(p);}
function appendMessageToElem(msgbody,messages,curmsgnum){switch(messages[curmsgnum-1].msgcode){case'1000':msgbody.appendChild(CE.STRTAB.lookupel("view.problems.notrecognized"));var a=CE.dce("a");a.href=CE.STRTAB.lookup("supporturl");a.target="_blank";a.appendChild(CE.STRTAB.lookupel("view.clickspace"));msgbody.appendChild(a);msgbody.appendChild(CE.STRTAB.lookupel("view.problems.contact"));break;case'1001':msgbody.appendChild(CE.STRTAB.lookupel("view.problems.nospace"));break;case"1002":if(messages[curmsgnum-1].details.FSTYPE=="ntfs"&&that.g_cursvc&&that.g_cursvc.serviceid.indexOf("XXX")==0&&that.g_cursvc.version.indexOf("0.9.9.90")!=-1){appendNTFSMountFailMessage(msgbody);}else{msgbody.appendChild(CE.STRTAB.lookupel("view.problems.notsupported"));var a=CE.dce("a");a.href=CE.STRTAB.lookup("supporturl");a.target="_blank";a.appendChild(CE.STRTAB.lookupel("view.clickspace"));msgbody.appendChild(a);msgbody.appendChild(CE.STRTAB.lookupel("view.problems.contact"));}
break;case"1003":if(messages[curmsgnum-1].details){if(messages[curmsgnum-1].details.FSTYPE=="hfsj"||messages[curmsgnum-1].details.FSTYPE=="hfsplus"){msgbody.appendChild(CE.STRTAB.lookupel("view.problems.hfsnowrite"));var a=CE.dce("a");a.href=CE.STRTAB.lookup("supporturl");a.target="_blank";a.appendChild(CE.dctn("click here "));msgbody.appendChild(a);msgbody.appendChild(CE.STRTAB.lookupel("view.problems.contact"));break;}}
msgbody.appendChild(CE.STRTAB.lookupel("view.problems.cantwrite"));var a=CE.dce("a");a.href=CE.STRTAB.lookup("supporturl");a.target="_blank";a.appendChild(CE.STRTAB.lookupel("view.clickspace"));msgbody.appendChild(a);msgbody.appendChild(CE.STRTAB.lookupel("view.problems.contact"));break;case"1004":if(messages[curmsgnum-1].details){if(messages[curmsgnum-1].details.FSTYPE=="hfsplus"){var div=CE.dce("div");div.appendChild(CE.STRTAB.lookupel('view.problems.notsafelyremoved'));var ul=CE.dce("ul");div.appendChild(ul);var li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.notsafelyremoved'));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.diskutility'));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel("view.problems.clickrepair"));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.reinsert'));ul.appendChild(li);msgbody.appendChild(div);break;}}
var div=CE.dce("div");div.appendChild(CE.STRTAB.lookupel('view.problems.notsafelyremoved'));var ul=CE.dce("ul");div.appendChild(ul);var li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.reinsert'));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel("view.problems.chkdsk"));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.clickrepair'));ul.appendChild(li);li=CE.dce("li");li.appendChild(CE.STRTAB.lookupel('view.problems.reattach'));ul.appendChild(li);msgbody.appendChild(div);break;default:msgbody.appendChild(CE.dctn(messages[curmsgnum-1].description));}}
function WarnMessageDialog(){var that=this;var pane=CE.dce('div');var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup("view.warmsgstitle"),pane);var messages;var curmsgnum;var sname;var dname;var cmsg;var nmsgs;var msgbody;var svc;var hidefunc;function updateDisplay(){CE.rac(cmsg);cmsg.appendChild(CE.dctn(''+curmsgnum));CE.rac(nmsgs);nmsgs.appendChild(CE.dctn(''+messages.length));if(!messages)return;CE.rac(msgbody);if(curmsgnum>0){appendMessageToElem(msgbody,messages,curmsgnum);}else{msgbody.appendChild(CE.STRTAB.lookupel("ceui.nomoremsgs"));}}
function onGetMessagesSuccess(r,data,method){if(dlg.isShowing()){CE.rac(msgbody);if(r.messages){messages=r.messages;curmsgnum=1;updateDisplay();}else{if(svc)
svc.msgpending=0;dlg.hide();}}}
function onGetMessagesFailure(r,data,method){if(dlg.isShowing()){message=null;curmsgnum=-1;}}
function onPrevClick(){if(curmsgnum>1){curmsgnum--;updateDisplay();}}
function onClearClick(eh){if(messages){if(svc.msgpending>0){var args=['deviceid',svc.deviceid,'serviceid',svc.serviceid,'cmd','clearmessages','messageindex',""+(curmsgnum-1)];CE.CEU.svc.asyncRPC('POST','sendServiceCommand',args);messages.splice(curmsgnum-1,1);if(curmsgnum>messages.length){curmsgnum=messages.length;}
svc.msgpending--;if(messages.length>0){updateDisplay();return false;}}}
return true;}
function onNextClick(){if(messages){if(curmsgnum<messages.length){curmsgnum++;updateDisplay();}}}
function onHide(){if(hidefunc){hidefunc({service:svc});}}
(function(){var d=CE.dce('div',null,'section');var s=CE.dce('span');s.appendChild(CE.dctn('Drive '));d.appendChild(s);s=null;sname=CE.dce('span');d.appendChild(sname);var s=CE.dce('span');s.appendChild(CE.dctn(' on '));d.appendChild(s);s=null;dname=CE.dce('span');d.appendChild(dname);pane.appendChild(d);d=null;var d=CE.dce('div',null,'section');var s=CE.dce('span');s.appendChild(CE.STRTAB.lookupel('view.msgspace'));d.appendChild(s);s=null;cmsg=CE.dce('span');d.appendChild(cmsg);var s=CE.dce('span');s.appendChild(CE.dctn(' of '));d.appendChild(s);s=null;nmsgs=CE.dce('span');d.appendChild(nmsgs);pane.appendChild(d);d=null;d=CE.dce('div',null,'section');msgbody=CE.dce('div',null,'msgbody');d.appendChild(msgbody);pane.appendChild(d);d=null;dlg.addButton('prev',CE.STRTAB.lookup('view.previous'),onPrevClick);dlg.addButton('clear',CE.STRTAB.lookup('view.clear'),onClearClick);dlg.addButton('next',CE.STRTAB.lookup('view.next'),onNextClick);dlg.onhide=onHide;})();this.show=function(eh){if(!dlg.isShowing()){CE.rac(sname);sname.appendChild(CE.dctn(eh.name));CE.rac(dname);dname.appendChild(CE.dctn(eh.device.name));messages=null;curmsgnum=1;CE.rac(cmsg);cmsg.appendChild(CE.dctn(''+curmsgnum));CE.rac(nmsgs);nmsgs.appendChild(CE.dctn(''+eh.service.msgpending));CE.rac(msgbody);msgbody.appendChild(CE.STRTAB.lookupel('view.loading'));svc=eh.service;hidefunc=eh.onHide;var args=['deviceid',eh.service.deviceid,'serviceid',eh.service.serviceid,'cmd','getmessages'];CE.CEU.svc.asyncRPC('POST','sendServiceCommand',args,onGetMessagesSuccess,onGetMessagesFailure);dlg.show(true);}}}
function trackEvent(action,actionType,file){}
function startDrag(srcobj,srcevt,srctel)
{g_curdrag={src:srcobj};g_diddrag=false;g_dragorigin={x:g_curmousepos.x,y:g_curmousepos.y};g_curdrag.d=CE.dce('div','cedrag');var go=CE.CEU.shallowCopy(srcobj.go);if(go.viewmode==1){go.viewmode=0;go.viewsize='small';CE.aCN(g_curdrag.d,'small');}else if(go.grd=='celist'){CE.aCN(g_curdrag.d,CE.CEUI.g_viewsize);}
var gid=CE.CEI.getGid(go.grd,srcobj.id,srcobj.file);CE.CEI.appendFileIcon(g_curdrag.d,srcobj,false,go,gid);var sel=CE.getByClass(CE.CEU.$(gid),'div','selectcheck');if(sel.length>0&&CE.hCN(sel[0],'selected')){(g_curdrag.d.appendChild(CE.dce('div',null,'multiple'))).appendChild(CE.STRTAB.lookupel('view.selectcheck.multiple'));}
g_curdrag.d.style.position='fixed';g_curdrag.d.style.left=''+(g_curmousepos.x+1)+'px';g_curdrag.d.style.top=''+(g_curmousepos.y+1)+'px';var el=CE.CEU.$('debug-drag');if(el)el.value=''+g_curdrag.src.name;el=null;CE.CEDBG.println('CEUI: Drag Possible: '+g_curdrag.src.name+' ('+g_curdrag.src.id+')');}
function stopDrag()
{if(g_curdrag){CE.CEDBG.println('CEUI: Drag Stop: '+g_curdrag.src.name+' ('+g_curdrag.src.id+')');if(g_diddrag){document.body.removeChild(g_curdrag.d);}
g_curdrag.d=null;g_curdrag=null;g_diddrag=false;g_dragorigin=null;var el=CE.CEU.$('debug-drag');if(el)el.value='';el=null;}}
function updateSelRect(ev){var page=CE.$('cepage');var scrltop=page.scrollTop;var clientY=ev.clientY-page.offsetTop;if(!g_selrect.touched){if(Math.abs(ev.clientX-g_selrect.startX)<3&&Math.abs((clientY+scrltop)-g_selrect.startY)<3)
return;g_selrect.div=page.appendChild(CE.dce('div',null,'ceselrect'));g_selrect.touched=true;createCSSClass('*','-webkit-user-select:none;-moz-user-select:none;');}
var left=g_selrect.startX;var width=ev.clientX-g_selrect.startX;var top=g_selrect.startY-scrltop;var height=(clientY+scrltop)-g_selrect.startY;if(width<0){left=ev.clientX;width=-width;}
if(height<0){top=clientY;height=-height;}
var mainDiv,mainPos,mainWidth,mainHeight;if(g_selrect.grd=='celist'){var sidebar=CE.$('cesidebar');var tabs=CE.$('cehead_tabs');mainPos={};mainPos.x=CE.CEU.getAbsPos(sidebar).x+sidebar.offsetWidth;mainPos.y=CE.CEU.getAbsPos(tabs).y+tabs.offsetHeight;mainWidth=page.scrollWidth-mainPos.x-2;mainHeight=page.offsetHeight-mainPos.y-2;}else{mainDiv=CE.CEU.$(g_selrect.grd).parentNode.parentNode;mainWidth=mainDiv.offsetWidth-5;mainHeight=mainDiv.offsetHeight-5;mainPos=CE.CEU.getAbsPos(mainDiv);mainPos.x+=3;mainPos.y+=3;mainHeight-=3;mainWidth-=3;}
if(left<mainPos.x){var diff=mainPos.x-left;left+=diff;width-=diff;if(width<0)
width=0;}
if(top<mainPos.y){var diff=mainPos.y-top;top+=diff;height-=diff;if(height<0)
height=0;}
if((left+width)>=(mainPos.x+mainWidth)){width=Math.max((mainPos.x+mainWidth)-left,0);}
if((top+height)>(mainPos.y+mainHeight)){height-=(top+height)-(mainPos.y+mainHeight);}
g_selrect.div.style.top=(scrltop+top)+'px';g_selrect.div.style.height=Math.abs(height)+'px';g_selrect.div.style.left=left+'px';g_selrect.div.style.width=Math.abs(width)+'px';var previds=g_selrect.fileids;g_selrect.fileids={};var items=CE.CEU.$(g_selrect.grd).getElementsByTagName('tr');if(!items||!items.length||items.length<1)
items=CE.CEU.$(g_selrect.grd).getElementsByTagName('div');if(items&&items.length){for(var i=0;i<items.length;++i){if(!items[i].id)
continue;var sel=CE.getByClass(items[i],'div','selectcheck');if(sel.length==0)
continue;var inRect=true;var pos=CE.CEU.getAbsPos(items[i]);if(pos.x>(left+width))
inRect=false;if((pos.x+items[i].offsetWidth)<left)
inRect=false;if(pos.y>(top+height))
inRect=false;if((pos.y+items[i].offsetHeight)<top)
inRect=false;if(inRect){g_selrect.fileids[items[i].id]=true;if(!previds[items[i].id]){var evt=CE.CEU.getEventObj(sel[0],'click');evt.onEvent(evt);}}else{if(previds[items[i].id]){var evt=CE.CEU.getEventObj(sel[0],'click');evt.onEvent(evt);}}}}
var pageHeight=page.offsetHeight;if((pageHeight-clientY)<10&&pageHeight<page.scrollHeight){page.scrollTop=scrltop+10;}else if(clientY<10&&scrltop>10){page.scrollTop=scrltop-10;}}
function onMouseMove(ev)
{if(!ev){ev=window.event;}
g_curmousepos.x=ev.clientX;g_curmousepos.y=ev.clientY-$('cepage').offsetTop;if(g_slideshowObj&&CE.CEU.$('slide_flv')){g_slideshowObj.showController();}
if(g_selrect&&!g_mousedisp){updateSelRect(ev);return false;}
var el=CE.CEU.$('debug-mouse-x');if(el)el.value=''+g_curmousepos.x;el=CE.CEU.$('debug-mouse-y');if(el)el.value=''+g_curmousepos.y;el=null;if(g_curdrag&&g_curdrag.src){if(!g_diddrag){var dx=g_curmousepos.x-g_dragorigin.x;var dy=g_curmousepos.y-g_dragorigin.y;if(dx>5||dx<-5||dy>5||dy<-5){CE.CEDBG.println('CEUI: Drag Start: '+g_curdrag.src.name+' ('+g_curdrag.src.id+')');g_diddrag=true;document.body.appendChild(g_curdrag.d);}}
g_curdrag.d.style.left=''+(g_curmousepos.x+1)+'px';g_curdrag.d.style.top=''+(g_curmousepos.y+1)+'px';return false;}
if(g_mousedisp){return g_mousedisp(ev,g_curmousepos);}
return true;}
function cancelSelRect(){if(g_selrect){document.body.ondragstart=null;document.body.onselectstart=null;CE.CEU.$(g_selrect.grd).style.MozUserSelect=null;CE.CEU.$(g_selrect.grd).parentNode.style.MozUserSelect=null;if(g_selrect.div){g_selrect.div.parentNode.removeChild(g_selrect.div);createCSSClass('*','-webkit-user-select:auto;-moz-user-select:auto;');}
var touched=g_selrect.touched;g_selrect=null;if(touched)
return false;}}
function onMouseUp(ev)
{cancelSelRect();if(g_audioPlayer){if(g_audioPlayer.onDragStop())
return false;}
if(!ev)ev=window.event;if(!ev.target)ev.target=ev.srcElement;if(!ev.ctrlKey){closeContextMenu(ev);}
if(g_curdrag&&g_diddrag){var nnotify=0;var tel;if(ev.target){tel=ev.target;}else{tel=ev.srcElement;}
CE.CEDBG.println('CEUI: Drop occurred on: '+tel.nodeName+' (ONCEDROP: '+(tel.oncedrop?'yes':'no')+' ID: '+tel.id+' CLASS: '+tel.className+')');if(!tel||!tel.oncedrop||tel.oncedrop(g_curdrag,ev,tel)){while(tel&&!tel.oncedrop){tel=tel.parentNode;if(tel){CE.CEDBG.println('CEUI:   -- Try Parent: '+tel.nodeName+' (ONCEDROP: '+(tel.oncedrop?'yes':'no')+' ID: '+tel.id+' CLASS: '+tel.className+')');if(tel.oncedrop){nnotify++;if(!tel.oncedrop(g_curdrag,ev,tel)){break;}}}}}
CE.CEDBG.println('CEUI: Found and notified '+nnotify+' callbacks');}
stopDrag();return true;}
function findFolderShare(f){var share=null;if(f){if(f.album){share=CE.CEI.g_albummap[f.album.albumid];}else{var svc=CE.CEI.getCurSvc(f);if(svc){share=CE.CEUI.g_sharedfolders[CE.CEI.getShareId(f,svc)];}}}
return share;}
function findFileShare(f){if(f){var svc=CE.CEI.getCurSvc(f);if(svc){return CE.CEUI.g_sharedfiles[CE.CEI.getShareId(f,svc)];}}
return null;}
this.findShare=function(f){var share=findFolderShare(f);if(!share)share=findFileShare(f);return share;}
function activateDevice(id){updateSidebarState(id);enterDeviceMode();that.g_curalbum=that.g_cursvc=this.g_curmsvc=null;CE.CEU.releaseAllEvents(CE.CEU.$("celist"),'click',true);var did=id;if(did.indexOf(':')!=-1)
did=did.substr(0,did.indexOf(':'));if(!CE.CEI.g_devmap[did]||!CE.CEI.g_devmap[did].type||CE.CEI.g_devmap[did].type.indexOf('xce:pppc')==-1){showEmptyContentDiv("drives");}else{showEmptyContentDiv("drives-pppc");}
enableDisableToolbarButtons();updateCustomUi();return true;}
function jumpToFolder(){var deviceid=CE.CEU.getSearchParam('jump_did');var serviceid=CE.CEU.getSearchParam('jump_sid');var fileid=CE.CEU.getSearchParam('jump_fid');var svc=CE.CEI.g_svcmap[deviceid+':_:'+serviceid];if(!svc||!fileid)
return false;CE.CEU.svc.asyncRPC('POST','getFile',['deviceid',deviceid,'serviceid',serviceid,'fileid',fileid],function(r){r.file.svc=svc;if(r.file.name=='.'){r.file.name=svc.name;r.file.filename=svc.name;}
if(r.file.type==CE.FILE_TYPE_ALBUM||r.file.type==CE.FILE_TYPE_ARTIST||r.file.type==CE.FILE_TYPE_GENRE){CE.CEUI.onClickHeadTab('music');shareIt();}else if(r.file.type==CE.FILE_TYPE_IMGTIMELINE){CE.CEUI.onClickHeadTab('photos');shareIt();}else if(r.file.type==CE.FILE_TYPE_MOVIETIMELINE){CE.CEUI.onClickHeadTab('movies');shareIt();}else{if(r.file.type!=CE.FILE_TYPE_DIRECTORY)
fileid=r.file.parentid;handleParentFolderAction({'svc':svc,'file':{'parentid':fileid},'jumpcb':shareIt});}
function shareIt(){if(CE.CEU.getSearchParam('doshare')=='1'||CE.CEU.getSearchParam('dolink')=='1'){CE.CEU.showLoadingAni(true);ensureAlbumsLoaded(function(){CE.CEU.showLoadingAni(false);var doLink=(CE.CEU.getSearchParam('dolink')=='1'||r.file.type!=CE.FILE_TYPE_DIRECTORY);(new CE.CEI.SendShare(r.file,CE.CEUI.findShare(r.file))).show(!doLink);});}}},CE.CEI.onGenericFailure);return true;}
function jumpToActiveCopy(){var srcDid=CE.CEU.getSearchParam('newac_did')||'';var srcSid=CE.CEU.getSearchParam('newac_sid')||'';var srcFid=CE.CEU.getSearchParam('newac_fid')||'';var url='settings?'
+'newac_did='+encodeURIComponent(srcDid)+'&'
+'newac_sid='+encodeURIComponent(srcSid)+'&'
+'newac_fid='+encodeURIComponent(srcFid)
+'#cC12HpOaR4JlW5rq4e15';window.location.replace(url);}
function activateSomething(oobeok){var foundsomething=false;if(!CE.CEU.$("cesidebar")){return;}
if(CE.CEU.getSearchParam('help')=='1'){CE.CEUI.showLearningCenter();return;}else if(CE.CEU.getSearchParam('activecopy')=='1'){jumpToActiveCopy();return;}else if(CE.CEU.getSearchParam('jump_did')){if(jumpToFolder())
return;}
if(!foundsomething){for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].online&&CE.CEI.g_svcmap[s].online=='1'&&CE.CEI.g_svcmap[s].type.indexOf('xce:printer')==-1){foundsomething=true;CE.CEUI.onClickHeadTab('files',false,true);break;}}}
if(!foundsomething){for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].online&&CE.CEI.g_svcmap[s].online=='1'&&CE.CEI.g_svcmap[s].type.indexOf('xce:printer')!=-1){foundsomething=activateService(s);break;}}}
if(!foundsomething)CE.CEDBG.println("No Services to activate!");if(!foundsomething){for(var d in CE.CEI.g_devmap){foundsomething=activateDevice(d);break;}}
var finishActivate=function(){if(!foundsomething){for(var a in CE.CEI.g_albummap){foundsomething=activateAlbum(a,false);break;}}
if(!foundsomething)CE.CEDBG.println("No Albums to activate!");if(!foundsomething){for(var a in CE.CEI.g_sharemap){if(CE.CEI.g_sharemap[a].albumtype==CE.FILE_TYPE_PRINTALBUM)
continue;CE.CEUI.onClickHeadTab('sharing',true,true);g_cursearch='celibshares_collab';updateSidebarState(g_cursearch);CE.CEUI.showSharedFolders('collab','celist',null,null,true);foundsomething=true;break;}}
if(!foundsomething){for(var a in CE.CEI.g_sharemap){if(CE.CEI.g_sharemap[a].albumtype!=CE.FILE_TYPE_PRINTALBUM)
continue;CE.CEUI.onClickHeadTab('sharing',true,true);CE.CEUI.showSharedFolders('collab','celist',null,true,true);foundsomething=true;break;}}
if(!foundsomething)CE.CEDBG.println("No Shares to activate!");if(oobeok){if(tryOOBE()){foundsomething=true;}else{CE.CEDBG.println("No OOBE to show!");}}
if(!foundsomething){for(var d in g_orphans){foundsomething=activateDevice(d);break;}}
if(!foundsomething)CE.CEDBG.println("No Empty Devices to activate!");if(!foundsomething){updateCustomUi();CE.CEUI.onClickHeadTab('files',false,true);}else{}};if(!foundsomething){ensureAlbumsLoaded(finishActivate);}else{finishActivate();}}
this.showDlPppcChoice=function(signoutLnk){if(CE.$('cepcdldlg')||CE.$('cepcdldlg-choice')||CE.$('cepcdldlg-instruct'))
return;g_forceSoft=true;var content=CE.dce('div','cepcdldlg-choice','cepcdldlg');var radsDiv=content.appendChild(CE.dce('div'));var dlDiv=radsDiv.appendChild(CE.dce('div',null,'extramarginbottom24'));var dlRad=dlDiv.appendChild(CE.dcr('ceraddl','cecheck','pppchoice',true));(dlDiv.appendChild(CE.dcl('ceraddl'))).appendChild(CE.STRTAB.lookupel('pppc.dl.choice.ready'));var alreadyDiv=radsDiv.appendChild(CE.dce('div',null,'extramarginbottom'));var alreadyRad=alreadyDiv.appendChild(CE.dcr('ceradalready','cecheck','pppchoice',false));(alreadyDiv.appendChild(CE.dcl('ceradalready'))).appendChild(CE.STRTAB.lookupel('pppc.dl.choice.already'));var butDiv=content.appendChild(CE.dce('div',null,'buts'));(butDiv.appendChild(CE.dca({onEvent:onNext},null,'ceredbut right-float'))).appendChild(CE.STRTAB.lookupel('view.next'));if(signoutLnk){var extraButs=content.appendChild(CE.dce('div',null,'signout'));(extraButs.appendChild(CE.dca({onEvent:function(){dlg.hide();CE.CEUI.showLearningCenter();}}))).appendChild(CE.STRTAB.lookupel('view.help'));extraButs.appendChild(CE.STRTAB.lookupelh('view.dotspace.html'));(extraButs.appendChild(CE.dca({onEvent:function(){CE.CEU.logoutUser([null,null,'/signin']);}}))).appendChild(CE.STRTAB.lookupel('cesns.logout'));}else{var extraButs=content.appendChild(CE.dce('div',null,'signout'));(extraButs.appendChild(CE.dca({onEvent:onClose}))).appendChild(CE.STRTAB.lookupel('ceu.close'));}
var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('pppc.dl.setup.title'),content,null,null,true,'CEUDialog_wide1');dlg.show();radsDiv.style.marginTop=parseInt((content.offsetHeight-butDiv.offsetHeight)/2-radsDiv.offsetHeight/2)+'px';CE.aCN('nofiles','ceinvisible');function onNext(){dlg.hide();if(dlRad.checked){that.showDlPppc(signoutLnk,function(){that.showDlPppcChoice(signoutLnk);});}else{var content=CE.dce('div','cepcdldlg-instruct','cepcdldlg');(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupelh('pppc.dl.instruct.html'));var butDiv=content.appendChild(CE.dce('div',null,'buts'));(butDiv.appendChild(CE.dca({onEvent:function(){dlg.hide();that.showDlPppcChoice(signoutLnk);}},null,'ceredbut'))).appendChild(CE.STRTAB.lookupel('view.back'));(butDiv.appendChild(CE.dca({onEvent:onFinish},null,'ceredbut right-float'))).appendChild(CE.STRTAB.lookupel('pppc.dl.instruct.finish'));if(signoutLnk){var extraButs=content.appendChild(CE.dce('div',null,'signout'));(extraButs.appendChild(CE.dca({onEvent:function(){dlg.hide();CE.CEUI.showLearningCenter();}}))).appendChild(CE.STRTAB.lookupel('view.help'));extraButs.appendChild(CE.STRTAB.lookupelh('view.dotspace.html'));(extraButs.appendChild(CE.dca({onEvent:function(){CE.CEU.logoutUser([null,null,'/signin']);}}))).appendChild(CE.STRTAB.lookupel('cesns.logout'));}else{var extraButs=content.appendChild(CE.dce('div',null,'signout'));(extraButs.appendChild(CE.dca({onEvent:onClose}))).appendChild(CE.STRTAB.lookupel('ceu.close'));}
dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('pppc.dl.choice.title'),content,null,null,true,'CEUDialog_wide1');dlg.show();}
return false;}
function onFinish(){CE.CEU.showLoadingAni(true);CE.CEUI.reloadAll(function(){if(CE.CEU.structlen(CE.CEI.g_svcmap)!=0){g_forceSoft=false;activateSomething();onClose();}else{CE.aCN('nofiles','hidden');CE.CEU.showLoadingAni(false);CE.CEU.showMessage(CE.STRTAB.lookup('pppc.dl.choice.title'),CE.STRTAB.lookup('pppc.dl.ensurerunning'));}});return false;}
function onClose(){CE.CEU.showLoadingAni(false);g_forceSoft=false;dlg.hide();return false;}};function startSoftwareDl(name){var url='';if(navigator.appVersion.indexOf('Win')!=-1){url='http://download.pogoplug.com/install/pc/'+name+'.exe';}else{url='http://download.pogoplug.com/install/mac/'+name+'.pkg';}
if(frames&&frames['secretiframe']){var dlframe=frames['secretiframe'];dlframe.location.href=url;}else{var dlframe=CE.CEU.$('secretiframe');if(dlframe){dlframe.src=url;}}
return false;}
this.showDlPppc=function(signoutLnk,backCb){if(CE.$('cepcdldlg')||CE.$('cepcdldlg-choice')||CE.$('cepcdldlg-instruct'))
return;var content=CE.dce('div','cepcdldlg','cepcdldlg');(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('pppc.dl.beginning'));var div=content.appendChild(CE.dce('div',null,'extramarginbottom24'))
div.appendChild(CE.STRTAB.lookupel('pppc.dl.ifnot.1'));(div.appendChild(CE.dca({onEvent:function(){startSoftwareDl('pogopluginstall')}}))).appendChild(CE.STRTAB.lookupel('pppc.dl.ifnot.lnk'));div.appendChild(CE.STRTAB.lookupel('pppc.dl.ifnot.2'));(content.appendChild(CE.dce('div',null,'cecenteralign extramarginbottom24'+(signoutLnk?'':' ceinvisible')))).appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));div=content.appendChild(CE.dce('div',null,'extramarginbottom'))
div.appendChild(CE.STRTAB.lookupel('pppc.dl.finish.1'));(div.appendChild(CE.dca({onEvent:checkFinished}))).appendChild(CE.STRTAB.lookupel('pppc.dl.finish.lnk'));div.appendChild(CE.STRTAB.lookupel(signoutLnk?'pppc.dl.finish.2':'pppc.dl.finish.2.useit'));var butDiv=content.appendChild(CE.dce('div',null,'buts'));if(backCb){(butDiv.appendChild(CE.dca({onEvent:function(){dlg.hide();backCb();}},null,'ceredbut'))).appendChild(CE.STRTAB.lookupel('view.back'));}
if(signoutLnk){var extraButs=content.appendChild(CE.dce('div',null,'signout'));(extraButs.appendChild(CE.dca({onEvent:function(){dlg.hide();CE.CEUI.showLearningCenter();}}))).appendChild(CE.STRTAB.lookupel('view.help'));extraButs.appendChild(CE.STRTAB.lookupelh('view.dotspace.html'));(extraButs.appendChild(CE.dca({onEvent:function(){CE.CEU.logoutUser([null,null,'/signin']);}}))).appendChild(CE.STRTAB.lookupel('cesns.logout'));}else{((content.appendChild(CE.dce('div',null,'signout'))).appendChild(CE.dca({onEvent:function(){CE.rCN('nofiles','hidden');dlg.hide();return false;}},null,'big'))).appendChild(CE.STRTAB.lookupel('ceu.close'));}
var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('pppc.dl.title'),content,null,null,true,'CEUDialog_wide1');dlg.show();CE.aCN('nofiles','hidden');function checkFinished(){CE.CEU.showLoadingAni(true);CE.CEUI.reloadAll(function(){if(CE.CEU.structlen(CE.CEI.g_svcmap)!=0){CE.CEU.showLoadingAni(false);dlg.hide();g_forceSoft=false;activateSomething();}else{g_forceSoft=false;CE.aCN('nofiles','hidden');CE.CEU.showLoadingAni(false);CE.CEU.showMessage(CE.STRTAB.lookup('pppc.dl.choice.title'),CE.STRTAB.lookup('pppc.dl.ensurerunning'));}});return false;}
startSoftwareDl('pogopluginstall');};this.hidePppcHint=function(){CE.CEI.setOption('hide_pppchint',true);};function initOpDone(){if(!g_inited){g_initops--;CE.CEDBG.println('CEUI: Init Op Done: '+g_initops);if(g_initops<=0){g_inited=true;CE.CEUI.onClickHeadTab('files',true,true);if(!CE.CEU.getSearchParam('docprev_fileid')){CE.CEDBG.println('CEUI: Init Complete, turning on UI bits...');if(!g_jumpToShare){CE.CEU.showLoadingAni(false);var albumid=CE.CEU.getSearchParam("albumid");if(!albumid){albumid=window.location.hash;}
if(albumid){ensureAlbumsLoaded(function(){if(!activateAlbum(albumid,true)){if(!activateAlbum(albumid,false)){activateSomething(true);}}});}else{activateSomething(true);}}
el=CE.CEU.$('cehead_controls');if(el)CE.rCN(el,'hidden');el=CE.CEU.$('cehead_tabs');if(el)CE.rCN(el,'hidden');el=CE.CEU.$('cemain');if(el)CE.rCN(el,'hidden');if(g_headtab)
CE.CEUI.onClickHeadTab(g_headtab,true,true);CE.CEUI.onPageResize();}else{var fileid=CE.CEU.getSearchParam('docprev_fileid');var deviceid=CE.CEU.getSearchParam('docprev_deviceid');var serviceid=CE.CEU.getSearchParam('docprev_serviceid');if(deviceid&&serviceid){CE.CEU.svc.asyncRPC('POST','getFile',['deviceid',deviceid,'serviceid',serviceid,'fileid',fileid],function(r){CE.aCN(document.body,'cedocprevfull');var docdiv=document.body.appendChild(CE.dce('div',null,'cedocprevfull'));r.file.svc=CE.CEI.g_svcmap[deviceid+':_:'+serviceid]||{'deviceid':deviceid,'serviceid':serviceid};r.file.deviceid=deviceid;r.file.serviceid=serviceid;var docprev=new DocumentPreview(r.file,docdiv);docprev.show();updateCustomUi();},CE.CEI.onGenericFailure);}}
document.onmousemove=onMouseMove;document.onmouseup=onMouseUp;document.onkeydown=onDocKeyDown;document.onkeypress=onDocKeyPress;}}}
function onDocKeyPress(e){e=e||window.event;if(CE.$('celoading')&&!CE.hCN('celoading','hidden')){e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();return false;}}
function onDocKeyDown(e){e=e||window.event;if(CE.$('celoading')&&!CE.hCN('celoading','hidden')){e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();return false;}
var menu=CE.$('cecontextmenu');if(menu&&(e.keyCode==40||e.keyCode==38)){var items=CE.getByClass(menu,'div','cecontextitem');var iOld=-1,iNew=0;for(var i=0;i<items.length;++i){if(items[i].focused){iOld=i;if(e.keyCode==40){if((i+1)<items.length)
iNew=i+1;else
iNew=0;}else if(e.keyCode==38){if(i!=0)
iNew=i-1;else
iNew=items.length-1;}
break;}}
if(iOld!=-1){items[iOld].focused=false;}
if(items.length){items[iNew].focused=true;items[iNew].focus();}
e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();return false;}
return true;}
function updateServiceMessageCount(eh){var grd=CE.CEU.$("cemylib_devices")
var svc=eh.service;if(!svc)return;if(!svc.id){svc.id=svc.deviceid+":_:"+svc.serviceid;}
appendSidebarItem(grd,{onEvent:onClickSidebar,id:svc.id,name:svc.name,type:'service',device:svc.device,service:svc,owner:svc.device.owner,disabled:!svc.online||svc.online=="0"});}
function onClickWarningMessages(eh,evt,tel){CE.CEDBG.println('CEUI: User clicked on warning messages: "'+eh.eh.name+'" ('+eh.eh.id+')');if(!g_warnmessage){g_warnmessage=new WarnMessageDialog();}
eh.eh.onHide=updateServiceMessageCount;g_warnmessage.show(eh.eh);return false;}
function onServiceEjectSuccess(s){reloadSidebar();}
function onEjectServiceClick(eh,evt,tel){if(!g_ejectservicedialog){g_ejectservicedialog=new EjectConfirmDialog();}
g_ejectservicedialog.show(eh.eh.service,onServiceEjectSuccess);}
function onEjectCloudServiceClick(e){if(!e.eh.disconnecting){e.eh.disconnecting=true;CE.CEU.promptYesNo(CE.STRTAB.lookup('settings.unregcloud.dlgtitle'),CE.STRTAB.lookup('ceui.unregcloud.device',e.eh.name),function(){e.eh.disconnecting=false;CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','unregisterDevice',['deviceid',e.eh.device.deviceid],function(){CE.CEU.showLoadingAni(false);reloadSidebar();});return true;},function(){e.eh.disconnecting=false;return true;});}}
function leaveAppMode(){CE.aCN('ceappcontent','hidden');var f=CE.CEU.$('ceappframe');if(f){f.src='about:blank';f=null;}
CE.rCN('cecontent','hidden');}
function enterDeviceMode(){enterServiceMode();}
function onClickSidebar(eh,evt,tel){CE.CEDBG.println('CEUI: User clicked on "'+eh.name+'" ('+eh.id+')');if(!CE.hCN('cemylib','editorder')){CE.CEUI.useLastViewMode(true);var e=CE.CEU.$("cesearch_entry");if(e)e.value='';that.applySearch(null,null,true);if(eh.service){activateService(eh.id);}else if(eh.services){activateMultiService(eh);}else if(eh.device){activateDevice(eh.id);}else{CE.CEDBG.println('CEUI: Unknown Sidebar Click!');}
showUpgradeLink();}
return false;}
this.onClickHeadTab=function(type,noActivate,noReload){if(!noReload&&(type=='files'||type=='printers')){reloadSidebar(true,function(){that.onClickHeadTab(type,noActivate,true);});return;}
g_headtab=type;var tabs=CE.getByClass(CE.CEU.$('cehead_tabs'),'div','ceheadtab');for(var i=0;i<tabs.length;++i){var pos=tabs[i].id.lastIndexOf('_');if(pos!=-1){var tabtype=tabs[i].id.substr(pos+1);CE.rCN('cesidebar','cesidebar_'+tabtype);CE.rCN('cebody','cecontent_'+tabtype);var els=CE.getByClass(document.body,['div','a','li'],'ceshowfor_'+tabtype);for(var e=0;e<els.length;++e)
CE.aCN(els[e],'hidden');}
CE.rCN(tabs[i],'active');}
CE.aCN('cehead_tab_'+type,'active');CE.aCN('cesidebar','cesidebar_'+type);CE.aCN('cebody','cecontent_'+type);CE.aCN('cesidebar_nothing','hidden');var els=CE.getByClass(document.body,['div','a','li'],'ceshowfor_'+type);for(var e=0;e<els.length;++e)
CE.rCN(els[e],'hidden');var sidePos=CE.CEU.getAbsPos(CE.$('cesidebar'));var contentPos=CE.CEU.getAbsPos(CE.$('cecontentmain'));CE.$('cecontentmain').style.minHeight=(CE.$('cesidebar').offsetHeight-(contentPos.y-sidePos.y))+'px';if(CE.CEU.isLoggedIn())
CE.rCN('cetoptools','hidden');if(!noActivate){CE.CEU.showLoadingAni(true);that.useLastViewMode(true);CE.CEUI.clearContent('celist',null,true);}
var found=false;function selIt(el,ignoreDisabled){if(!el)
return false;if(ignoreDisabled){if(CE.hCN(el,'disabled')||(el.firstChild&&CE.hCN(el.firstChild,'disabled')))
return false;}
var evt=CE.CEU.getEventObj(el,'click');if(evt&&evt.onEvent){if(!noActivate)
evt.onEvent(evt);found=true;return true;}else if(el.onclick){if(!noActivate)
el.onclick();found=true;return true;}else{return false;}}
function selFirst(ignoreDisabled){var lis=CE.getByClass(CE.$('cesidebar'),'li','ceshowfor_'+type);for(var i=0;i<lis.length;++i){if(selIt(lis[i],ignoreDisabled)){break;}}
if(!found){var as=CE.getByClass(CE.$('cesidebar'),'a','ceshowfor_'+type);for(var i=0;i<as.length;++i){if(selIt(as[i],ignoreDisabled)){break;}}}}
var defid=CE.CEI.getOption(type+'_def');if(defid&&defid!='')selIt(CE.$(defid),true);if(!found)selFirst(true);if(!found)selFirst(false);if(!found){if(!noActivate)
showEmptyContentDiv('no'+type);CE.aCN('ceviewmode','hidden');CE.aCN('cetoptools','hidden');CE.rac('cebc');CE.aCN('cespaceusage','hidden');CE.rac('cesidebar_nothing');(CE.$('cesidebar_nothing').appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupel('sidebar.nothing.'+type));CE.rCN('cesidebar_nothing','hidden');CE.aCN('ceeditside','hidden');CE.CEU.showLoadingAni(false);}
showUpgradeLink();};function getCommonActions(files){var actions=null;for(var i=0;i<files.length;++i){var factions=that.getActionTypesForFile(files[i]);if(!actions){actions=factions;}else{for(var j=actions.length-1;j>=0;--j){if(factions.indexOf(actions[j])==-1){actions.splice(j,1);}}}}
return actions||[];}
this.showMoreActions=function(menu){var butel=CE.$('cetool_otheracts');if(!CE.hCN('cetoptools_slidealb','hidden'))
butel=CE.$('cetool_slide_otheracts')
var butpos=CE.CEU.getAbsPos(butel);if(!menu){var page=$('cepage');var scrollTop=page.scrollTop;menu=page.appendChild(CE.dce('div','cecontextmenu','otheract'));menu.style.left=butpos.x+'px';menu.style.top=(scrollTop-page.offsetTop+butpos.y+butel.offsetHeight)+'px';}
var photoFold=isPhotoListing();var movieFold=isMovieListing();var musicFold=that.isMusicListing();if(CE.CEU.structlen(CE.CEI.g_selfiles['celist'])>0){var areFilesIShare=CE.CEUI.isSharedFoldersListing();var areSharedWithMe=CE.CEUI.isSharedFoldersListing();var files=[];for(var f in CE.CEI.g_selfiles['celist']){var file=CE.CEI.g_selfiles['celist'][f];var owned=CE.CEI.isOwnedFile(file)||(file.svc&&file.svc.albumid&&CE.CEI.g_albummap[file.svc.albumid]);areFilesIShare=(areFilesIShare&&owned);areSharedWithMe=(areSharedWithMe&&!owned);files.push(CE.CEI.g_selfiles['celist'][f]);}
var actions=getCommonActions(files);function setItemEvent(item,f){CE.CEU.attachEvent(item,'mouseup',{onEvent:function(d,e){e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();f(d,e);}});}
if(CE.CEUI.isEnabledLinksListing()){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('view.hint.share_dislnks'));setItemEvent(item,disableShareLinks);}else if(CE.CEUI.g_isSlideAlb){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('view.hint.removeslide'));setItemEvent(item,removeSelectedSlides);}else if(CE.CEUI.isSlideAlbListing()){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('view.delsel.trashslidealb.title'));setItemEvent(item,CE.CEUI.deleteSelected);}else if(areFilesIShare){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('view.delsel.trashmyshare.title'));setItemEvent(item,CE.CEUI.deleteSelected);}else if(areSharedWithMe){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('view.delsel.trashshare.title'));setItemEvent(item,CE.CEUI.deleteSelected);}else{if(actions.indexOf('play')!=-1){var item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('music.sel.play'));setItemEvent(item,playSelectedSongs);}
if(actions.indexOf('queuemusic')!=-1&&g_audioPlayer){var item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('music.sel.queue'));setItemEvent(item,queueSelectedSongs);}
if(actions.indexOf('copy')!=-1){var item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel((actions.indexOf('move')==-1)?'moreact.copyfiles':'moreact.copymovefiles'));setItemEvent(item,function(){promptTransferFiles();});}
if(!photoFold&&!movieFold&&!musicFold){if(getTrashAction(actions)){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('moreact.deletefiles'));setItemEvent(item,CE.CEUI.deleteSelected);}}
if(actions.indexOf('download')!=-1){item=menu.appendChild(CE.dce('div',null,'cecontextitem noicon'));item.appendChild(CE.STRTAB.lookupel('moreact.download'));setItemEvent(item,CE.CEUI.downloadSelected);}}
if(!menu.hasChildNodes()){(menu.appendChild(CE.dce('div',null,'cecontextitem noicon disabled'))).appendChild(CE.STRTAB.lookupel('moreact.nocommon'));}}else{(menu.appendChild(CE.dce('div',null,'cecontextitem noicon disabled'))).appendChild(CE.STRTAB.lookupel('moreact.nosel'));}
return false;};this.onSelFiles=function(){var validSvc=(g_headtab!='files'||CE.CEUI.isFilteredListing()||that.g_cursvc||that.g_curmsvc);var numSel=CE.CEU.structlen(CE.CEI.g_selfiles['celist']);var musicThumb;for(var gid in CE.CEI.g_selfiles['celist']){var f=CE.CEI.g_selfiles['celist'][gid];if(!CE.CEUI.isAudioFile(f)&&f.type!=CE.FILE_TYPE_ALBUM&&f.type!=CE.FILE_TYPE_ARTIST&&f.type!=CE.FILE_TYPE_GENRE){musicThumb=null;break;}
if(!musicThumb||musicThumb.indexOf('/images/')!=-1){musicThumb=CE.CEI.getFileThumbnail(f).url;if(musicThumb.indexOf('/images/')!=-1)
musicThumb=CE.STRTAB.lookup('imgbase')+'folder-album.png';}}};function promptTransferFiles(f){var sourceFiles=[];if(f){var file=CE.CEU.shallowCopy(f);file.svc=file.svc||CE.CEI.getCurSvc(file);sourceFiles=[file];}else{var sourceSvc=CE.CEUI.g_cursvc||CE.CEUI.g_curalbum;for(var sid in CE.CEI.g_selfiles['celist']){var file=CE.CEU.shallowCopy(CE.CEI.g_selfiles['celist'][sid]);file.svc=file.svc||sourceSvc;sourceFiles.push(file);}}
var canMove=(getCommonActions(sourceFiles).indexOf('move')!=-1);var msg=CE.dce('div',null,'extramarginbottom');msg.appendChild(CE.STRTAB.lookupel((f?'transferfile.dlg.msg.':'transferfiles.dlg.msg.')+(canMove?'move':'copy'),f?file.name:null));var xfer=new TransferFiles();xfer.promptDestTransfer(canMove,sourceFiles,msg);}
function onRemoveFolderShareClick(e,noPrompt,noRefresh,cb){if(!g_removeshareconfirm){g_removeshareconfirm=new RemoveShareDialog();}
if(e&&e.album){g_removeshareconfirm.show(e.album,noPrompt,noRefresh,cb);}}
function onDeleteFolderShareClick(e,evt,el,deleteSlideAlb,noPrompt,noRefresh,cb){if(!g_deleteshareconfirm){g_deleteshareconfirm=new DeleteShareDialog();}
if(e&&e.albumid){g_deleteshareconfirm.show(CE.CEUI.getAlbum(e.albumid),deleteSlideAlb,noPrompt,noRefresh,cb);}}
function checkServiceMessagesStillValid(eh){if(eh.service.readonly)
return;CE.CEU.svc.asyncRPC('POST','sendServiceCommand',['deviceid',eh.service.deviceid,'serviceid',eh.service.serviceid,'cmd','getmessages'],function(r){if(r&&r.messages){var numRemoved=0;for(var i=r.messages.length-1;i>=0;--i){if(r.messages[i].msgcode=='1003'||r.messages[i].msgcode=='1004'){CE.CEU.svc.asyncRPC('POST','sendServiceCommand',['deviceid',eh.service.deviceid,'serviceid',eh.service.serviceid,'cmd','clearmessages','messageindex',''+i]);++numRemoved;}}
if(numRemoved==r.messages.length){eh.service.msgpending=0;updateServiceMessageCount(eh);}}});}
this.editSidebarOrder=function(edit){CE.mCN('cemylib','editorder',edit);CE.mCN('ceeditorder','hidden',edit);CE.mCN('ceeditorderdone','hidden',!edit);if(!edit){var devsdone={};var lis=CE.getByClass(CE.$('cemylib'),'li',['ceshowfor_files']);for(var i=0;i<lis.length;++i){var svc=CE.CEI.g_svcmap[lis[i].id];var input=CE.getByClass(lis[i],'input','svc');if(svc&&input&&input.length>0&&svc.name!=input[0].value){if(!input[0].value.length){input[0].value=svc.name;}else{svc.name=input[0].value;CE.CEU.svc.asyncRPC('POST','updateService',['deviceid',svc.deviceid,'serviceid',svc.serviceid,'name',input[0].value]);var a=lis[i].getElementsByTagName('a');if(a&&a.length)
a[0].title=CE.CEI.getDispFn(svc.name);var spn=CE.getByClass(lis[i],'span','svc');if(spn&&spn.length){CE.rac(spn[0]);spn[0].appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(svc.name),17)));}}}
var did=(lis[i].id.indexOf(':_:DEVPC')==-1)?lis[i].id:lis[i].id.substr(0,lis[i].id.indexOf(':_:DEVPC'));var dev=svc?svc.device:CE.CEI.g_devmap[did];input=CE.getByClass(lis[i],'input','dev');if(dev&&input&&input.length>0&&dev.name!=input[0].value&&!devsdone[dev.deviceid]){if(!input[0].value.length){input[0].value=dev.name;}else{devsdone[dev.deviceid]=true;dev.name=input[0].value;CE.CEU.svc.asyncRPC('POST','updateDevice',['deviceid',dev.deviceid,'name',input[0].value]);var spn=CE.getByClass(lis[i],'span','svc_dev');if(!spn||!spn.length)
spn=CE.getByClass(lis[i],'span','dev');if(spn&&spn.length){CE.rac(spn[0]);spn[0].appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(dev.name),17)));}}}}}};function saveSidebarOrder(){g_sidebarOrder=[];var lis=CE.getByClass(CE.$('cesidebar'),'li',['ceshowfor_files']);for(var i=0;i<lis.length;++i){if(lis[i].id){var prev=CE.CEI.getOption('sb_'+i);if(!prev||prev!=lis[i].id){CE.CEI.setOption('sb_'+i,lis[i].id);}
g_sidebarOrder.push(lis[i].id);}}}
function setSidebarDragStatus(activeEl,overTop){if(activeEl){CE.mCN(activeEl,'cedragover-top',overTop);CE.mCN(activeEl,'cedragover-bot',!overTop);}
var lis=CE.getByClass(CE.$('cesidebar'),'li',['cedragover-top','cedragover-bot']);for(var i=0;i<lis.length;++i){if(lis[i]!=activeEl){CE.rCN(lis[i],'cedragover-top');CE.rCN(lis[i],'cedragover-bot');}}}
function isOverSidebarItemTop(item,e){var pos=CE.CEU.getAbsPos(item);var height=item.offsetHeight;return(e.clientY<(pos.y+(height/2)));}
function onSidebarDragStart(d,e){g_sidebarDragEl=d.el;}
function onSidebarDragEnd(){setSidebarDragStatus();}
function onSidebarDrag(d,e){if(g_sidebarDragEl&&d.el!=g_sidebarDragEl){setSidebarDragStatus(d.el,isOverSidebarItemTop(d.el,e));if(e.preventDefault)e.preventDefault();return false;}else{setSidebarDragStatus();}}
function onSidebarDrop(d,e){setSidebarDragStatus();if(g_sidebarDragEl){if(isOverSidebarItemTop(d.el,e)){d.el.parentNode.insertBefore(g_sidebarDragEl,d.el);}else{if(d.el.nextSibling)
d.el.parentNode.insertBefore(g_sidebarDragEl,d.el.nextSibling);else
d.el.parentNode.appendChild(g_sidebarDragEl);}
g_sidebarDragEl=null;saveSidebarOrder();}}
function onSidebarContext(d,e){if(e.which&&e.which!=1){var file=CE.CEU.shallowCopy(d.svc);file.svc=d.svc;file.fileid='0';if(d.svc.type.indexOf(':printer')!=-1){file.isPrinter=true;}else{file.type=CE.FILE_TYPE_DIRECTORY;}
var items=[];items.push({label:CE.STRTAB.lookup('view.hint.share_publnk'),cb:function(){showLinkDlg({'album':CE.CEUI.findShare(file),'file':file,'cb':bcUpdateShareIcons});}});items.push({label:CE.STRTAB.lookup('view.hint.share_send'),cb:function(){var sender=new CE.CEI.SendShare(file,CE.CEUI.findShare(file));sender.show(false,bcUpdateShareIcons);}});if(!!CE.CEI.g_lnkmap[CE.CEI.getShareId(file)]){items.push({label:CE.STRTAB.lookup('view.hint.share_dislnk'),cb:function(){disableShareLinks({'file':file,'cb':bcUpdateShareIcons});}});}
items.push({label:CE.STRTAB.lookup('view.hint.share_collab'),cb:function(){(new CE.CEI.SendShare(file,CE.CEUI.findShare(file))).show(true,function(){CE.CEUI.reloadAlbumsIShare(function(){CE.CEU.showLoadingAni(false);bcUpdateShareIcons();});});}});var share=CE.CEUI.findShare(file);if(share&&parseInt(share.nsharees||'0')){items.push({label:CE.STRTAB.lookup('view.hint.share_perms'),cb:function(){showCollabPermsDlg({'album':CE.CEUI.findShare(file),'file':file,'cb':bcUpdateShareIcons});}});}
items.push({label:CE.STRTAB.lookup('view.hint.rename'),cb:function(){CE.CEUI.editSidebarOrder(true);}});if(!d.svc.device||!d.svc.device.type||d.svc.device.type.indexOf(':cloud')==-1)
items.push({label:CE.STRTAB.lookup('view.hint.eject'),cb:function(){onEjectServiceClick(d,e);}});CE.CEUI.showContextMenu(null,e,null,null,null,null,null,CE.$('cepage'),items);return CE.CEU.stopevt(e);}}
function isCloudSvc(svc){return(svc.device&&svc.device.type.indexOf(':cloud')!=-1);}
function appendSidebarItem(grd,eh){var li,a,updateonly=false,didmsgs=false;li=CE.CEU.$(eh.id);if(li){updateonly=true;CE.rac(li);if(eh.onEvent&&eh.type=='devpc'){CE.CEU.releaseAllEvents(li,'click');CE.CEU.attachEvent(li,'click',eh);}}else{li=CE.dce('li',eh.id);if(eh.onEvent){CE.CEU.attachEvent(li,'click',eh);}
if(eh.service){CE.CEU.attachEvent(li,'mousedown',{onEvent:onSidebarContext,svc:eh.service,'eh':eh});CE.CEU.attachEvent(li,'mouseup',{onEvent:function(d,e){CE.CEU.stopevt(e)}});}
if(eh.onCEDrop){li.oncedrop=eh.onCEDrop;}}
a=CE.dce('a');a.href='#';var dispLen=17;if(eh.album&&eh.album.feedid&&eh.album.feedid!='')
dispLen=13;a.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'blank.gif',null,'icon '+CE.CEI.getServiceIconType(eh.device,eh.service)));CE.aCN(li,'ceshowfor_files');CE.mCN(li,'hidden',g_headtab!='files');CE.CEU.attachEvent(li,'dragstart',{onEvent:onSidebarDragStart,el:li});CE.CEU.attachEvent(li,'dragend',{onEvent:onSidebarDragEnd});CE.CEU.attachEvent(li,'dragover',{onEvent:onSidebarDrag,el:li});CE.CEU.attachEvent(li,'dragenter',{onEvent:onSidebarDrag,el:li});CE.CEU.attachEvent(li,'drop',{onEvent:onSidebarDrop,el:li});var isPppc=(eh.device&&eh.device.type.indexOf('xce:pppc')!=-1);var isOffline=(eh.device&&!eh.device.version);var noneName=CE.STRTAB.lookup((isPppc||isOffline)?'view.device.offline':'view.device.nodrive');var multidev=false;if(eh.album){var sp=CE.dce('span','dispname_'+eh.album.albumid);(sp.appendChild(CE.dce('span'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.name),dispLen)));a.appendChild(sp);}else if(!eh.service){if(eh.device&&eh.name==noneName){(a.appendChild(CE.dce('span',null,'svc_dev dv'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.device.name),dispLen)));(a.appendChild(CE.dce('span',null,'dev dv'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.name),25)));}else{multidev=true;(a.appendChild(CE.dce('span',null,'dev'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.name),dispLen)));}}else{(a.appendChild(CE.dce('span',null,'svc_dev'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.device.name),dispLen)));(a.appendChild(CE.dce('span',null,'svc'))).appendChild(CE.dctn(CE.CEU.trimstring(CE.CEI.getDispFn(eh.name),dispLen)));}
a.title=CE.CEI.getDispFn(eh.name);if(eh.service&&eh.service.msgpending){var nmsg=0;try{nmsg=parseInt(eh.service.msgpending);}catch(e){}
if(nmsg>0){var d=CE.dce('div',null,'msgpending');d.appendChild(CE.dctn(' '));CE.CEU.attachEvent(d,'click',{onEvent:onClickWarningMessages,eh:eh});a.appendChild(d);didmsgs=true;checkServiceMessagesStillValid(eh);}}
if(!didmsgs&&eh.type=='service'){if(!eh.service.device||!eh.service.device.type||eh.service.device.type.indexOf(':cloud')==-1){var d=CE.dce('div',null,'ejectservice');d.appendChild(CE.dctn(' '));if(!isCloudSvc(eh.service)){CE.CEU.attachEvent(d,'click',{onEvent:onEjectServiceClick,eh:eh});d.title=CE.STRTAB.lookup("view.hint.safelyremove");}else{CE.CEU.attachEvent(d,'click',{onEvent:onEjectCloudServiceClick,eh:eh});d.title=CE.STRTAB.lookup("view.hint.safelyremove.cloud");}
a.appendChild(d);}}
if(eh.disabled)CE.aCN(a,"disabled");li.appendChild(a);a=null;if(!multidev){(li.appendChild(CE.dce('input',null,'dev'+((eh.name==noneName)?' dv':'')))).value=eh.device.name;if(eh.name!=noneName){(li.appendChild(CE.dce('input',null,'svc'))).value=eh.name;}}else{(li.appendChild(CE.dce('input',null,'dev multi'))).value=eh.device.name;}
if(!updateonly){var pos=g_sidebarOrder.indexOf(li.id);var found;for(var i=pos-1;i>=0;--i){var prevEl=CE.$(g_sidebarOrder[i]);if(prevEl){if(prevEl.nextSibling)
grd.insertBefore(li,prevEl.nextSibling);else
grd.appendChild(li);found=true;break;}}
if(!found&&pos!=-1){var lis=grd.getElementsByTagName('li');if(lis&&lis.length){grd.insertBefore(li,lis[0]);found=true;}}
if(!found)
grd.appendChild(li);li=null;}}
function updatePrintersFromSvcs(){var printers=[];for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].online){if(CE.CEI.g_svcmap[s].type){if(CE.CEI.g_svcmap[s].type.indexOf("xce:printer")==0){printers.push(CE.CEI.g_svcmap[s]);}}}}
for(var i=0;i<g_printers.length;++i){if(g_printers[i].isSharedWithMe){printers.push(g_printers[i]);}}
g_printers=printers;}
function initialAlbumFileListSuccess(r,go){if(!g_inited){g_initops--;if(g_initops<=0){initOpDone();}}
if(r.album){that.g_curalbum=r.album;if(go)go.album=r.album;updateCustomUi(null,that.g_curalbum.albumid);}
if(!CE.CEUI.g_isSlideAlb&&r&&r.files&&r.files.length==1&&CE.CEI.isDescendableFile(r.files[0])){reloadContent(r.files[0].id,go);}else{populateContent(r,go);}
if(go&&go.cbok){go.cbok();}}
function initialAlbumFileListFailure(r,go){showEmptyContentDiv("albumdrive");}
function fixAlbumFiles(r,d,nextOp){if(r.files){for(var i=0;i<r.files.length;++i){var file=r.files[i];if((!file.stream||file.stream=='')&&file.mimetype&&file.mimetype.substr(0,6)=='video/'){file.stream=file.preview;}}}
if(nextOp){nextOp(r,d);}}
function loadInitialAlbumFiles(a,openshare,ismetashare,cbOk){var go={album:a,viewmode:CE.CEI.g_viewmode,viewsize:'medium',grd:'celist',actions:true,shared:openshare,metashare:ismetashare,cbok:cbOk};if((a&&a.albumtype==CE.FILE_TYPE_FILEALBUM)||(a&&a.root&&!CE.CEI.isDescendableFile(a.root))){initialAlbumFileListSuccess({'album':a,'files':[a.root]},go);}else if(a&&a.albumtype!=CE.FILE_TYPE_SLIDEALBUM&&a.root){if(!g_inited){g_initops--;if(g_initops<1){}}
go.pid=a.root.fileid;reloadContent(a.root.id,go,a.root.cousins?a.root:null);}else if(a&&a.albumtype!=CE.FILE_TYPE_SLIDEALBUM&&a.files){var root=CE.CEU.shallowCopy(a.files[0]);root.svc={deviceid:root.deviceid,serviceid:root.serviceid};root.cousins=[];for(var i=1;i<a.files.length;++i){a.files[i].svc={deviceid:a.files[i].deviceid,serviceid:a.files[i].serviceid};root.cousins.push(a.files[i]);}
reloadContent(null,go,root);}else{var numPerPage=NPERPAGE;if(a&&a.albumtype==CE.FILE_TYPE_SLIDEALBUM){CE.CEUI.g_isSlideAlb=true;numPerPage=NPERPAGE_SLIDEALB;}
var args=[];if(a)
args.push('albumid',a.albumid);args.push("pageoffset",0);args.push("maxcount",numPerPage);if(that.g_sharetoken)
args.push("sharetoken",that.g_sharetoken);var el=CE.CEU.$('celist');CE.CEU.releaseAllEvents(el,'mousedown',false);CE.CEU.releaseAllEvents(el,'mousemove',false);CE.CEU.releaseAllEvents(el,'click',true);CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC("POST","listAlbumFiles",args,function(r,d){fixAlbumFiles(r,d,initialAlbumFileListSuccess);},initialAlbumFileListFailure,go);}}
function onCheckReadOnlyFSSuccess(r,a){if(a&&a.root){a.root.readonly=false;if(r){if(r.flags&1){a.root.readonly=true;if(a.perms&&a.perms!='0'){CE.rCN("cereadonly","hidden");}}
if(r.flags&FS_FLAGS_SORTABLE){a.root.sortable=true;g_sortable=true;}else{g_sortable=false;}}}}
function onCheckReadOnlyFSFailure(r,a){if(a&&a.root){a.root.readonly=true;if(a.perms&&a.perms!='0'){CE.rCN("cereadonly","hidden");}}}
function activateAlbum(id,isshare,ismetashare,cbOk){if(!isshare&&disallowedShareWarning()){return false;}
var shareMap=isshare?CE.CEI.g_sharemap:CE.CEI.g_albummap;var a=shareMap[id]?CE.CEU.shallowCopy(shareMap[id]):null;if(a){CE.CEDBG.println('CEUI: Activating album: '+a.name+' ['+id+']');if(a.albumtype==CE.FILE_TYPE_SLIDEALBUM&&!isshare){CE.CEUI.onClickHeadTab('photos',true,true);}else{CE.CEUI.onClickHeadTab('sharing',true,true);}
if(a.albumtype==CE.FILE_TYPE_FILEALBUM){CE.CEUI.showSharedFolders('collab','celist',null,null,true);if(cbOk)cbOk();return true;}else if(isshare&&a.albumtype==CE.FILE_TYPE_PRINTALBUM){CE.CEUI.showSharedFolders('collab','celist',null,true,true);if(cbOk)cbOk();return true;}
if(a.files&&a.files.length>0){a=CE.CEU.shallowCopy(a);a.root=CE.CEU.shallowCopy(a.files[0]);a.root.cousins=null;a.root.svc={deviceid:a.root.deviceid,serviceid:a.root.serviceid};for(var i=1;i<a.files.length;++i){if(!a.root.cousins)
a.root.cousins=[];var cuz=CE.CEU.shallowCopy(a.files[i]);cuz.svc={deviceid:cuz.deviceid,serviceid:cuz.serviceid};a.root.cousins.push(cuz);}}
that.g_cursvc=null;that.g_curmsvc=null;that.g_curalbum=a;updateCustomUi(null,that.g_curalbum.albumid);g_cursearch=(!isshare&&a.albumtype==CE.FILE_TYPE_SLIDEALBUM)?'cesearch_slidedirs':'celibshares_collab';g_curscrit=null;CE.CEUI.g_wasSearch=true;CE.CEI.g_searchResults['celist']=null;g_curpageoffset['celist']=0;updateSidebarState(g_cursearch);CE.CEUI.clearContent('celist');bcFlush();var f;if(a.albumtype==CE.FILE_TYPE_SLIDEALBUM){f={album:a,fileid:'-1',name:a.name,type:CE.FILE_TYPE_SLIDEALBUM};}else{f=a.root;f.svc=a;}
var co={file:f,go:{actions:true,grd:'celist',noresort:true,viewmode:CE.CEI.g_viewmode},id:f.fileid,name:a.name,cb:cbOk};that.onEventContent(co,{type:'click'});return true;}else{CE.CEDBG.println('CEUI: activateAlbum: Cannot find album with id: '+id);if(!that.g_cursvc&&!that.g_curalbum){activateSomething();}}
return false;}
function enterServiceMode(){leaveAppMode();CE.rCN("cecontent_controls","hidden");}
function updateCustomUi(deviceid,albumid){if(CE.CEI.getOption('defcustui')&&CE.CEI.getOption('defcustui')!=''){deviceid=CE.CEI.getOption('defcustui');albumid=null;}
if(!deviceid&&!albumid&&!that.g_sharetoken){var firstDid;var allSubdevs=true;for(var did in CE.CEI.g_devmap){firstDid=firstDid||did;allSubdevs=allSubdevs&&(CE.CEI.g_devmap[did].type.indexOf('xce:subdev')!=-1);}
if(firstDid&&allSubdevs){deviceid=firstDid;}else if(allSubdevs){var owner;var firstAlbum;var allSameOwn=true;for(var s in CE.CEI.g_sharemap){if(!owner)owner=CE.CEI.g_sharemap[s].ownerid;firstAlbum=firstAlbum||CE.CEI.g_sharemap[s].albumid;allSameOwn=allSameOwn&&(CE.CEI.g_sharemap[s].ownerid==owner);}
if(allSameOwn&&firstAlbum){albumid=firstAlbum;}}}
var newcustui=deviceid||albumid||that.g_sharetoken;if(g_curcustui==newcustui){g_custuiLoaded=true;return;}
g_curcustui=newcustui;var customui={};customui['maintextcolor']=[{ids:['celist'],style:'color: $1;'}];customui['mainbgcolor']=[{ids:['cecontent'],style:'background-color: $1; background-image:none;'},{ids:['cepage'],style:'background-color: $1; background-image:none;'},{ids:['cebody'],style:'background-color:#B7B7B7;'},{ids:['celist'],extras:[' div.celist_lv'],style:'opacity:0.8; filter:alpha(opacity=80); -ms-filter:alpha(opacity=80);'}];customui['topbgcolor']=[{ids:['cehead'],style:'background-color: $1; background-image:none;'}];customui['mainbgimg']=[{ids:['cecontent'],style:'background-image:url($1); background-repeat:repeat; background-position:0px -5px;'},{ids:['cebody'],style:'background-color:#B7B7B7;'},{ids:['celist'],extras:[' div.celist_lv'],style:'opacity:0.8; filter:alpha(opacity=80); -ms-filter:alpha(opacity=80);'}];customui['logo']=[{ids:['celogo'],style:CE.STRTAB.lookup('index.logo.style')}];customui['leftbgcolor']=[{ids:['cesidebar'],style:'background-color:$1; background-image:none;'}];customui['helphidetops']=[];customui['helphidequest']=[];customui['helphidecmnty']=[];customui['helphidetickt']=[];customui['helphidefaq']=[];customui['title']=[];customui['hidemediatabs']=[];var newArgs=[];if(deviceid&&deviceid.length>0)newArgs.push('deviceid',deviceid);if(albumid&&albumid.length>0)newArgs.push('albumid',albumid);if(that.g_sharetoken&&that.g_sharetoken.length>0)newArgs.push('sharetoken',that.g_sharetoken);if(newArgs.length||!g_custuiArgs.length||g_custuiArgs[0]!='deviceid')
g_custuiArgs=newArgs;var removeCustomUi=function(){g_custui={};g_custuiArgs=[];document.title=CE.STRTAB.lookup(CE.CEU.isLoggedIn()?'view.title':'share.title');CE.CEU.$('celogo').style.visibility='hidden';CE.CEU.$('celogo').src='';CE.CEU.$('celogo').onload=function(){CE.CEU.$('celogo').style.visibility='visible';};CE.CEU.$('celogo').src=CE.STRTAB.lookup('imgbase')+CE.STRTAB.lookup('index.logo');CE.CEU.releaseEvent(CE.CEU.$('celogo'),'click');CE.aCN('celogo-powered','hidden');CE.rCN('cehead_tab_learningcenter','hidden');CE.rCN('cehead_tab_music','hidden');CE.rCN('cehead_tab_photos','hidden');CE.rCN('cehead_tab_movies','hidden');CE.rCN(document.body,'cecustomui');for(var k in customui){var custs=customui[k]||[];for(var i=0;i<custs.length;++i){if(custs[i].ids){for(var j=0;j<custs[i].ids.length;++j){var id=custs[i].ids[j];var extra=(custs[i].extras&&custs[i].extras.length>j)?custs[i].extras[j]:'';createCSSClass('#'+id+'.cecustomui_'+k+i+extra,'');}}}}
g_custuiLoaded=true;};CE.CEU.svc.asyncRPC('POST','getCustomUI',g_custuiArgs,function(r){if(!r.customui)r.customui={};g_custui=r.customui;var isenabled=false;for(var k in customui){if(r.customui[k]&&r.customui[k]!=''&&r.customui[k]!='0'){isenabled=true;break;}}
if(isenabled){var num=0;var showHelp=false;for(var k in customui){if(k.indexOf('helphide')!=-1&&(!r.customui[k]||r.customui[k]=='0'))
showHelp=true;var custs=customui[k]||[];for(var i=0;i<custs.length;++i){for(var j=0;j<custs[i].ids.length;++j){var id=custs[i].ids[j];var extra=(custs[i].extras&&custs[i].extras.length>j)?custs[i].extras[j]:'';if(r.customui[k]&&r.customui[k]!=''){var style=custs[i].style.replace('$1',r.customui[k]);createCSSClass('#'+id+'.cecustomui_'+k+i+extra,style);CE.aCN(id,'cecustomui_'+k+i);}else{createCSSClass('#'+id+'.cecustomui_'+k+i+extra,'');}}}}
if(!r.customui.title)
document.title=CE.STRTAB.lookup(CE.CEU.isLoggedIn()?'view.title':'share.title');else
document.title=CE.STRTAB.lookup((CE.CEU.isLoggedIn()?'view':'share')+'.title.custom',r.customui.title);CE.CEU.$('celogo').src=r.customui.logo||CE.STRTAB.lookup('imgbase')+CE.STRTAB.lookup('index.logo');CE.CEU.$('celogo').style.visibility='visible';CE.aCN(document.body,'cecustomui');CE.mCN('celogo-powered','hidden',!r.customui.logo);CE.mCN('cehead_tab_music','hidden',r.customui.hidemediatabs=='1');CE.mCN('cehead_tab_photos','hidden',r.customui.hidemediatabs=='1');CE.mCN('cehead_tab_movies','hidden',r.customui.hidemediatabs=='1');if(showHelp){CE.rCN('cehead_tab_learningcenter','hidden');}else{CE.CEU.svc.asyncRPC('POST','getCustomHelpText',g_custuiArgs,function(r){showHelp=(r&&r.helptext&&r.helptext.html&&r.helptext.active=='1');CE.mCN('cehead_tab_learningcenter','hidden',!showHelp);});}
if(r.customui.logolink){CE.CEU.attachEvent(CE.CEU.$('celogo'),'click',{onEvent:function(){window.open(r.customui.logolink);}});}else{CE.CEU.releaseEvent(CE.CEU.$('celogo'),'click');}}else{removeCustomUi();}
g_custuiLoaded=true;},removeCustomUi);}
function activateService(id,noreload){var s=CE.CEI.g_svcmap[id];if(s){CE.CEDBG.println('CEUI: Activating service: '+s.name+' ['+id+']');CE.CEDBG.println('CEUI:   -- Service Type:  '+s.type);CE.CEDBG.println('CEUI:   -- Service Class: '+s.sclass);switch(s.sclass){case 1:case'1':CE.CEDBG.println('CEUI:   -- Using Folder-View UI: '+s.id);that.g_cursvc=s;that.g_curmsvc=null;that.g_curalbum=null;updateSidebarState(that.g_cursvc.id);updateCustomUi(that.g_cursvc.deviceid);var svcType=(s.type.indexOf('xce:printer')!=-1)?'printers':'files';CE.CEUI.onClickHeadTab(svcType,true,true);if(s.online&&s.online!='0'){if(CE.CEI.getOption(svcType+'_def')!=id){CE.CEI.setOption(svcType+'_def',id);}
if(s.flags){var flags=parseInt(s.flags);if(flags&FS_FLAGS_SORTABLE){g_sortable=true;}else{g_sortable=false;}}else{g_sortable=false;}}
enterServiceMode();if(s.readonly){CE.rCN("cereadonly","hidden");}
g_curpageoffset['celist']=0;bcFlush();if(!noreload)reloadContent();return true;default:CE.CEDBG.println("Service Class not supprted for: "+s.name+"class: "+s.sclass);break;}}else{CE.CEDBG.println('CEUI: activateService: Cannot find service with id: '+id);}
return false;}
function showMultiService(grd,viewmode,msvc,cb){var files=[];for(var i=0;i<msvc.services.length;++i){var service=msvc.services[i];var file={fileid:'0',filename:service.name,name:service.name,mimetype:'application/octet-stream',size:'0',type:'1',svc:service,deviceid:service.deviceid,serviceid:service.serviceid,multisvc:true};files.push(file);}
var go={viewmode:viewmode,'grd':grd,actions:true};populateContent({'files':files,'totalcount':files.length,'pageoffset':0},go,null,null,cb);}
function activateMultiService(eh){CE.CEUI.g_cursvc=null;CE.CEUI.g_curalbum=null;CE.CEUI.g_curmsvc=eh.device;updateSidebarState(eh.id);updateCustomUi(eh.device.deviceid);CE.CEUI.onClickHeadTab('files',true,true);if(CE.CEI.getOption('files_def')!=eh.id){CE.CEI.setOption('files_def',eh.id);}
bcFlush();CE.CEUI.clearContent('celist');reloadContent();}
function activateSidebar(id,grd){var el=CE.CEU.$(grd);if(el){if(el.hasChildNodes()){var c=el.childNodes;for(var i=c.length-1;i>=0;i--){var e=c[i];var eid=e.id;if((!eid||eid!=id)&&e.hasChildNodes()){var as=e.getElementsByTagName('a');if(as&&as.length>0)
eid=as[0].id;}
if(eid&&eid==id){CE.aCN(e,'active');}else{CE.rCN(e,'active');}}}}}
function updateSidebarState(id){CE.CEDBG.println('updateSidebarState');if(id){activateSidebar(id,'cemylib_devices');activateSidebar(id,'cemylib_shares');activateSidebar(id,'cemusic_ss');activateSidebar(id,'cemovies_ss');activateSidebar(id,'cephotos_ss');activateSidebar(id,'cemylib_ss_text');}else{activateSidebar(that.g_cursvc?that.g_cursvc.id:null,'cemylib_devices');activateSidebar(null,'cemylib_shares');activateSidebar(null,'cemusic_ss');activateSidebar(null,'cemovies_ss');activateSidebar(null,'cephotos_ss');activateSidebar(null,'cemylib_ss_text');}}
function hasBizDev(){for(var did in CE.CEI.g_devmap){if(CE.CEI.isBizDev(CE.CEI.g_devmap[did]))
return true;}
return false;}
function isCustomUiImgShare(share,cb){if(share.albumtype!=CE.FILE_TYPE_FILEALBUM||!share.publicid||!share.root||!CE.CEU.isImageFile(share.root)){cb(false);return;}
var isCustomImg=false;var count=CE.CEU.structlen(CE.CEI.g_devmap);for(var did in CE.CEI.g_devmap){if(!CE.CEI.isBizDev(CE.CEI.g_devmap[did])){--count;}else{CE.CEU.svc.asyncRPC('POST','getCustomUI',['deviceid',did],function(r){var custui=r.customui||{};for(var k in custui){if(custui[k].indexOf('/'+share.publicid+'/')!=-1){isCustomImg=true;break;}}
--count;},function(){--count;});}}
CE.CEU.poll(200,function(){return(isCustomImg||count==0);},function(){cb(isCustomImg);});}
function showSlider(lnk,content,cbShown){var tr=getParentByTag(lnk,'tr');var td=getParentByTag(lnk,'td');CE.aCN(lnk,'popped');var lnkPos=CE.CEU.getAbsPos(lnk);var div=td.appendChild(CE.dce('div','ceslider','ceslider'));var mask=div.appendChild(CE.dce('div',null,'mask'));mask.style.width=lnk.offsetWidth+'px';mask.style.right=(div.offsetWidth-(lnkPos.x-CE.CEU.getAbsPos(tr).x-div.offsetLeft+lnk.offsetWidth+1))+'px';div.appendChild(content);CE.aCN(tr,'itemactive');CE.aCN(tr,'activating');var slideFader={'style':'opacity','el':div,'from':0,'to':1,'type':''};if(g_isIE&&BrowserDetect.version<=8)
slideFader={'style':'filter','el':div,'from':0,'to':100,'prefix':'"progid:DXImageTransform.Microsoft.Alpha(Opacity=','type':')"'}
CE.CEU.fadeStyle([{'style':'height','el':tr,'from':tr.offsetHeight,'to':(tr.offsetHeight+div.offsetHeight),'type':'px'},slideFader],5,300,function(){CE.rCN(tr,'activating');if(cbShown)
cbShown();});}
function closeSlider(oldTdId){var oldSlider=$('ceslider');if(oldSlider){var lnks=CE.getByClass($('celist'),'div',['popped','lnk'],true);var td=null;if(lnks.length){td=getParentByTag(lnks[0],'td');var tr=td.parentNode;if(CE.hCN(tr,'activating'))
return true;tr.style.height=(tr.offsetHeight-oldSlider.offsetHeight)+'px';CE.rCN(tr,'itemactive');}
CE.rac(oldSlider,true);if(lnks.length){CE.rCN(lnks[0],'popped');if(td.id&&td.id.indexOf('_')!=-1){var closedShareId=td.id.substr(td.id.indexOf('_')+1);CE.CEUI.showShareStatus(closedShareId);}
if((td.id&&td.id==oldTdId)||oldTdId==-1)
return true;}}
return false;}
this.showShareStatus=function(shareid,statusEl,socialEl,file){var album=CE.CEUI.g_sharedfolders[shareid]||CE.CEUI.g_sharedfiles[shareid];var file=g_curpageByShid['celist'][shareid]||(album?(album.root||album.files[0]):null);var hasLink=!!CE.CEI.g_lnkmap[shareid];var table=false;statusEl=statusEl||$('tdshare_'+shareid);if(statusEl&&statusEl.tagName.toLowerCase()=='td'&&!CE.getByClass(statusEl,'div',['lnk','popped'],true).length){table=true;if(CE.hCN(getParentByTag(statusEl,'tr'),'activating'))
return;var permSpan;var lnkDiv=CE.getByClass(statusEl,'div','lnk');if(lnkDiv.length){lnkDiv=lnkDiv[0];CE.CEU.releaseEvents(lnkDiv);permSpan=CE.getByClass(statusEl,'span','permics')[0];CE.rac(permSpan);}else{CE.rac(statusEl);var div=statusEl.appendChild(CE.dce('div',null,'shared'));lnkDiv=div.appendChild(CE.dce('div',null,'lnk'));if(file.type==CE.FILE_TYPE_DIRECTORY){(lnkDiv.appendChild(CE.dca())).appendChild(CE.STRTAB.lookupel('view.lnk.collab'));lnkDiv.title=CE.STRTAB.lookup('share.hint.enable');}else{lnkDiv.appendChild(CE.STRTAB.lookupel('view.lnk.collab'));CE.aCN(lnkDiv,'novis');}
permSpan=div.appendChild(CE.dce('span',null,'permics'));permSpan.title=CE.STRTAB.lookup('share.hint.perms');}
if(album&&parseInt(album.nsharees)){var collabSpan=permSpan.appendChild(CE.dce('span'));(collabSpan.appendChild(CE.dce('div',null,'num'))).appendChild(CE.dctn(album.nsharees));CE.CEU.attachEvent(collabSpan,'click',{onEvent:showCollabPermsDlg,'album':album,'file':file});}
CE.mCN(lnkDiv,'enabled',album&&parseInt(album.nsharees));CE.CEU.attachEvent(lnkDiv,'click',{onEvent:showCollabSlider,'lnk':lnkDiv,'shareid':shareid,'album':album,'file':file,'td':statusEl});}
socialEl=socialEl||$('tdsocial_'+shareid);if(socialEl&&socialEl.tagName.toLowerCase()=='td'&&!CE.getByClass(socialEl,'div',['lnk','popped'],true).length){table=true;if(CE.hCN(getParentByTag(socialEl,'tr'),'activating'))
return;var lnk=CE.getByClass(socialEl,'div','lnk');if(lnk.length){lnk=lnk[0];CE.CEU.releaseEvents(lnk);}else{CE.rac(socialEl);lnk=socialEl.appendChild(CE.dce('div',null,'lnk'));var icons=lnk.appendChild(CE.dce('span'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-facebook-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-twitter-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-gplus-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-email-12px.png',null,'icon'));}
CE.mCN(lnk,'enabled',hasLink);lnk.title=CE.STRTAB.lookup('share.social'+(hasLink?'.enabled':''));CE.CEU.attachEvent(lnk,'click',{onEvent:showPublinkSlider,'lnk':lnk,'shareid':shareid,'album':album,'file':file,'td':socialEl});}
if(!table){var iconDiv=statusEl||$('shareicons_'+shareid);if(iconDiv&&iconDiv.tagName.toLowerCase()!='td'){if((album&&parseInt(album.nsharees))||hasLink){CE.rac(iconDiv);if(hasLink){var lnkSpan=iconDiv.appendChild(CE.dce('span'));(lnkSpan.appendChild(CE.dce('div',null,'icon-link'))).appendChild(CE.STRTAB.lookupelh('view.space.h'));CE.CEU.attachEvent(lnkSpan,'click',{onEvent:showLinkDlg,'album':album,'file':file});lnkSpan.title=CE.STRTAB.lookup('share.social.enabled');}
if(album&&parseInt(album.nsharees)){var collabSpan=iconDiv.appendChild(CE.dce('span'));(collabSpan.appendChild(CE.dce('div',null,'icon-ishare'))).appendChild(CE.STRTAB.lookupelh('view.space.h'));(collabSpan.appendChild(CE.dce('div',null,'num'))).appendChild(CE.dctn(album.nsharees));CE.CEU.attachEvent(collabSpan,'click',{onEvent:showCollabPermsDlg,'album':album,'file':file});collabSpan.title=CE.STRTAB.lookup('share.hint.perms');}
CE.rCN(iconDiv,'hidden');}else{CE.aCN(iconDiv,'hidden');}
socialEl=socialEl||$('socialicons_'+shareid);if(socialEl){CE.rac(socialEl);CE.CEU.releaseEvents(socialEl);var icons=socialEl.appendChild(CE.dce('span'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-facebook-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-twitter-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-gplus-12px.png',null,'icon'));icons.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-email-12px.png',null,'icon'));CE.CEU.attachEvent(socialEl,'click',{onEvent:showLinkDlg,'album':album,'file':file});socialEl.title=CE.STRTAB.lookup('share.perms.pubonly.title');CE.rCN(socialEl,'hidden');}}}};function showCollabSlider(d,e){if(closeSlider('tdshare_'+d.shareid)){CE.CEU.stopevt(e);return true;}
var div=$('ceincubator').appendChild(CE.dce('div'));var addrLine=div.appendChild(CE.dce('div',null,'line'));addrLine.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'share-icon-collab.png',null,'icon'));(addrLine.appendChild(CE.dce('div',null,'leftmsg'))).appendChild(CE.STRTAB.lookupelh('share.popup.userswrite.html',d.file.name));var contactsDiv=addrLine.appendChild(CE.dce('div',null,'ceborderedtxt'));var contacts=new CE.CEI.ContactsField();contacts.init(contactsDiv,'view.enteraddrs',updateHeight,function(){CE.CEU.triggerEvent(sendbut,'click')});var buts=(div.appendChild(CE.dce('div',null,'butline'))).appendChild(CE.dce('div',null,'buts'));var sendbut=buts.appendChild(CE.dca({onEvent:function(){if(contacts.getEmails().length){(new CE.CEI.SendShare(d.file,d.album)).sendCollab(contacts.getEmails(),null,null,'upload',function(){closeSlider();CE.CEUI.reloadAlbumsIShare(function(){CE.CEU.showLoadingAni(false);CE.CEI.Hinter().showHintBrief('share-created',CE.STRTAB.lookupel('share.send.complete',CE.CEI.getObjType(d.file)));});});}else{(new CE.CEI.SendShare(d.file,d.album)).show(true);}
return true;}},null,'cebutton inl thin red'));sendbut.appendChild(CE.STRTAB.lookupel('share.but.invitecollabs'));var advlnk=buts.appendChild(CE.dce('div',null,'advlnk'));advlnk.style.right=sendbut.offsetWidth+'px';(advlnk.appendChild(CE.dca({onEvent:function(){(new CE.CEI.SendShare(d.file,d.album)).show(true);}}))).appendChild(CE.STRTAB.lookupel('share.popup.advanced'));advlnk.appendChild(CE.CEU.createInlineHint('share.popup.advanced.collab.tip'));showSlider(d.lnk,div);CE.CEU.stopevt(e);function updateHeight(){var prevLineHeight=addrLine.offsetHeight;var newLineHeight=contactsDiv.offsetHeight;addrLine.style.height=newLineHeight+'px';var tr=d.td.parentNode;tr.style.height=(tr.offsetHeight+(newLineHeight-prevLineHeight))+'px';}}
function showPublinkSlider(d,e){if(closeSlider('tdsocial_'+d.shareid)){CE.CEU.stopevt(e);return true;}
CE.CEU.showLoadingAni(true);var svc=CE.CEI.getCurSvc(d.file);CE.CEI.enablePubLink(d.file,svc,function(r){CE.CEU.showLoadingAni(false);var div=$('ceincubator').appendChild(CE.dce('div'));var line=div.appendChild(CE.dce('div',null,'line'));line.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'share-icon-link.png',null,'icon'));(line.appendChild(CE.dce('div',null,'leftmsg'))).appendChild(CE.STRTAB.lookupelh('share.popup.sharealink.html',d.file.name));var input=(line.appendChild(CE.dce('div',null,'ceborderedtxt tool'))).appendChild(CE.dce('input'));input.readOnly=true;input.value=r.url;var optLnk=line.appendChild(CE.dce('div',null,'optgear'));optLnk.title=CE.STRTAB.lookup('view.hint.options');CE.CEU.attachEvent(optLnk,'click',{onEvent:function(dd,e){var items=[{label:CE.STRTAB.lookup('view.hint.share_dislnk'),cb:function(){disableShareLinks({'file':d.file,'closeslider':true})}}];var pos={right:'0px',top:(optLnk.offsetTop+optLnk.offsetHeight)+'px'};CE.CEUI.showContextMenu(null,e,pos,null,null,null,null,line,items);}});var buts=div.appendChild(CE.dce('div',null,'line'));var social=buts.appendChild(CE.dce('div',null,'social'));div.appendChild(CE.dce('div',null,'sep'));var addrLine=div.appendChild(CE.dce('div',null,'line'));(addrLine.appendChild(CE.dce('div',null,'leftmsg'))).appendChild(CE.STRTAB.lookupel('share.popup.sharealink.sendlabel'));var contactsDiv=addrLine.appendChild(CE.dce('div',null,'ceborderedtxt'));var contacts=new CE.CEI.ContactsField();contacts.init(contactsDiv,'view.enteraddrs',updateHeight,function(){CE.CEU.triggerEvent(sendbut,'click')});var buts=(div.appendChild(CE.dce('div',null,'butline'))).appendChild(CE.dce('div',null,'buts'));var sendbut=buts.appendChild(CE.dca({onEvent:function(dd,e){if(contacts.getEmails().length){(new CE.CEI.SendShare(d.file,d.album)).sendLink(contacts.getEmails(),null,null,function(){closeSlider();CE.CEU.showLoadingAni(false);CE.CEI.Hinter().showHintBrief('share-created',CE.STRTAB.lookupel('share.send.lnk.complete',CE.CEI.getObjType(d.file)));});}else{(new CE.CEI.SendShare(d.file,d.album)).show(false);}
CE.CEU.stopevt(e);return true;}},null,'cebutton inl thin red'));sendbut.appendChild(CE.STRTAB.lookupel('share.but.sendlnk'));var advlnk=buts.appendChild(CE.dce('div',null,'advlnk'));advlnk.style.right=sendbut.offsetWidth+'px';(advlnk.appendChild(CE.dca({onEvent:function(dd,e){(new CE.CEI.SendShare(d.file,d.album)).show(false);CE.CEU.stopevt(e);}}))).appendChild(CE.STRTAB.lookupel('share.popup.advanced'));advlnk.appendChild(CE.CEU.createInlineHint('share.popup.advanced.lnk.tip'));showSlider(d.lnk,div,function(){input.focus();input.select();});showSocialButtons(social,d.file,svc,r.url);function updateHeight(){var prevLineHeight=addrLine.offsetHeight;var newLineHeight=contactsDiv.offsetHeight;addrLine.style.height=newLineHeight+'px';var tr=d.td.parentNode;tr.style.height=(tr.offsetHeight+(newLineHeight-prevLineHeight))+'px';}});CE.CEU.stopevt(e);}
function showLinkDlg(d){CE.CEU.showLoadingAni(true);var svc=CE.CEI.getCurSvc(d.file);var shareid=CE.CEI.getShareId(d.file,svc);CE.CEI.enablePubLink(d.file,svc,function(rPublink){var pane=$('ceincubator').appendChild(CE.dce('div',null,'ceshareperms'));var div=pane.appendChild(CE.dce('div'));(div.appendChild(CE.dce('div',null,'extramarginbottom16'))).appendChild(CE.STRTAB.lookupel('share.perms.linkonly.msg',d.file.name));var line=div.appendChild(CE.dce('div',null,'line'));var input=(line.appendChild(CE.dce('div',null,'ceborderedtxt tool extramarginbottom6'))).appendChild(CE.dce('input'));input.value=rPublink.url;input.readOnly=true;var optLnk=line.appendChild(CE.dce('div',null,'optgear'));optLnk.title=CE.STRTAB.lookup('view.hint.options');CE.CEU.attachEvent(optLnk,'click',{onEvent:function(dd,e){var items=[{label:CE.STRTAB.lookup('view.hint.share_dislnk'),cb:function(){disableShareLinks({'file':d.file,'closeslider':true,'cb':function(){dlg.hide();dlg=null;closeCb();}})}}];var pos={right:'0px',top:(optLnk.offsetTop+optLnk.offsetHeight)+'px'};CE.CEUI.showContextMenu(null,e,pos,null,null,null,null,line,items);}});var socialLine=div.appendChild(CE.dce('div',null,'extramarginbottom24'));showSocialButtons(socialLine,d.file,svc,rPublink.url);div.appendChild(CE.dce('div',null,'sep extramarginbottom16'));(div.appendChild(CE.dce('div',null,'extramarginbottom6'))).appendChild(CE.STRTAB.lookupel('share.popup.sharealink.sendlabel'));var addrLine=div.appendChild(CE.dce('div',null,'line'));var contactsDiv=addrLine.appendChild(CE.dce('div',null,'ceborderedtxt'));var contacts=new CE.CEI.ContactsField();contacts.init(contactsDiv,'view.enteraddrs',updateHeight,function(){CE.CEU.triggerEvent(sendbut,'click')});var buts=(div.appendChild(CE.dce('div',null,'butline'))).appendChild(CE.dce('div',null,'buts'));var sendbut=buts.appendChild(CE.dca({onEvent:function(dd,e){if(contacts.getEmails().length){(new CE.CEI.SendShare(d.file,d.album)).sendLink(contacts.getEmails(),null,null,function(){closeSlider();CE.CEU.showLoadingAni(false);CE.CEI.Hinter().showHintBrief('share-created',CE.STRTAB.lookupel('share.send.lnk.complete',CE.CEI.getObjType(d.file)));});}else{(new CE.CEI.SendShare(d.file,d.album)).show(false);}
dlg.hide();CE.CEU.stopevt(e);return true;}},null,'cebutton inl thin red'));sendbut.appendChild(CE.STRTAB.lookupel('share.but.sendlnk'));var advlnk=buts.appendChild(CE.dce('div',null,'advlnk'));advlnk.style.right=sendbut.offsetWidth+'px';(advlnk.appendChild(CE.dca({onEvent:function(dd,e){(new CE.CEI.SendShare(d.file,d.album)).show(false);CE.CEU.stopevt(e);}}))).appendChild(CE.STRTAB.lookupel('share.popup.advanced'));advlnk.appendChild(CE.CEU.createInlineHint('share.popup.advanced.lnk.tip'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('share.perms.pubonly.title'),pane,null,null,false,'CEUDialog_wide2 CEUDialog_overflow',null,null,closeCb);dlg.show();CE.CEU.showLoadingAni(false);input.focus();input.select();function closeCb(){CE.CEUI.showShareStatus(shareid,null,null,d.file);if(d.cb)
d.cb();}
function updateHeight(){dlg.center();}});}
this.getLnkForCur=function(){var folder;if(g_curpath.length){folder=g_curpath[g_curpath.length-1].file;}else if(that.g_cursvc){folder={fileid:'0',filename:that.g_cursvc.name,name:that.g_cursvc.name,type:'1','svc':that.g_cursvc};}
showLinkDlg({'file':folder});};function disableShareLinks(d){var files=[];var msg=null;if(d&&d.file){files.push(d.file);var promptId=(d.file.type==CE.FILE_TYPE_DIRECTORY)?'share.perms.disablelnk.prompt.folder':'share.perms.disablelnk.prompt';msg=CE.STRTAB.lookupel(promptId,CE.CEI.getObjType(d.file));}else{msg=CE.dce('div',null,'confirmlist');msg.appendChild(CE.STRTAB.lookupel('share.perms.disablelnks.prompt'));var listDiv=msg.appendChild(CE.dce('ul'));for(var f in CE.CEI.g_selfiles['celist']){var file=CE.CEI.g_selfiles['celist'][f];files.push(file);(listDiv.appendChild(CE.dce('li'))).appendChild(CE.dctn(file.name));}}
if(!files.length)
return;CE.CEU.promptYesNo(CE.STRTAB.lookup('share.perms.disablelnk.title'),msg,function(){CE.CEU.showLoadingAni(true);if(d.closeslider)
closeSlider();var joiner=new CE.CEU.Joiner();for(var i=0;i<files.length;++i){var file=files[i];++joiner.count;CE.CEI.disablePubLink(file,CE.CEI.getCurSvc(file),joiner.join);}
joiner.finish(function(){CE.CEU.showLoadingAni(false);if(d.cb)
d.cb();if(CE.CEUI.isEnabledLinksListing())
CE.CEUI.reloadContentCWD();});return true;});}
function showCollabPermsDlg(d){CE.CEU.showLoadingAni(true);var changes=false;CE.CEU.svc.asyncRPC('POST','listAlbumShares',['albumid',d.album.albumid],function(rAlbum){var accAvail=CE.CEI.getAvailableShareAccess(d.album.files||[d.album.root],(d.album.albumtyp==CE.FILE_TYPE_SLIDEALBUM),(d.album.albumtyp==CE.FILE_TYPE_PRINTALBUM));var hasViewer=false;for(var i=0;i<accAvail.length;++i){if(accAvail[i].value=='viewonly')
hasViewer=true;}
var pane=CE.dce('div',null,'ceshareperms');if(rAlbum&&rAlbum.shares&&rAlbum.shares.length){CE.CEU.attachEvent(pane,'click',{onEvent:closeMenu});var msg=pane.appendChild(CE.dce('div',null,'msg extramarginbottom16'));msg.appendChild(CE.STRTAB.lookupel('share.perms.msg',d.album.name));msg.appendChild(CE.CEU.createInlineHint('share.send.access.tip','ceaccesstip'+(hasViewer?'':' noviewer')));var usersDiv=pane.appendChild(CE.dce('div',null,'users'));usersDiv.appendChild(CE.STRTAB.lookupel('share.perms.users'));var list=usersDiv.appendChild(CE.dce('div',null,'list'));showList();}
var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('share.perms.title'),pane,null,null,false,'CEUDialog_wide2 CEUDialog_overflow',null,null,closeCb);dlg.show();CE.CEU.showLoadingAni(false);function showList(){CE.rac(list);for(var i=0;i<rAlbum.shares.length;++i){var item=list.appendChild(CE.dce('div',null,'row'+((i%2)?' odd':'')));item.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'share-icon-collab.png'));(item.appendChild(CE.dce('div',null,'perm'))).appendChild(CE.STRTAB.lookupel(CE.SHARE_ACCESS_MAP[rAlbum.shares[i].perms].nameid));var dropper=item.appendChild(CE.dce('div',null,'dropper'));item.appendChild(CE.dctn(rAlbum.shares[i].user.email));CE.CEU.attachEvent(item,'click',{onEvent:showMenu,'item':item,'dropper':dropper,'sharee':rAlbum.shares[i],'i':i});}}
function showMenu(dr,e){if(closeMenu(dr.dropper))
return;CE.aCN(dr.dropper,'dropped');var dropList=dr.dropper.appendChild(CE.dce('div',null,'cedropdown_list'));dropList.appendChild(CE.dce('div',null,'mask'));for(var i=0;i<accAvail.length;++i){var item=dropList.appendChild(CE.dce('div',null,'itm'+((accAvail[i].access==dr.sharee.perms)?' selected':'')));(item.appendChild(CE.dce('span',null,'check'))).appendChild(CE.STRTAB.lookupelh('view.dropdown.check.html'));item.appendChild(CE.dctn(accAvail[i].name));CE.CEU.attachEvent(item,'click',{onEvent:setAccess,'item':dr.item,'dropper':dr.dropper,'sharee':dr.sharee,'acc':accAvail[i]});}
dropList.appendChild(CE.dce('div',null,'sep'));var item=dropList.appendChild(CE.dce('div',null,'itm'));(item.appendChild(CE.dce('span',null,'check'))).appendChild(CE.STRTAB.lookupelh('view.dropdown.check.html'));item.appendChild(CE.STRTAB.lookupel('share.perms.removeacc'));CE.CEU.attachEvent(item,'click',{onEvent:removeSharee,'item':dr.item,'dropper':dr.dropper,'sharee':dr.sharee,'i':dr.i});CE.CEU.stopevt(e);}
function closeMenu(curDropper){var oldMenus=CE.getByClass(list,'div',['dropper','dropped'],true);for(var i=0;i<oldMenus.length;++i){CE.rac(oldMenus[i]);CE.rCN(oldMenus[i],'dropped');if(oldMenus[i]==curDropper)
return true;}}
function removeSharee(dr,e){CE.CEU.promptYesNo(CE.STRTAB.lookup('share.perms.removeacc'),CE.STRTAB.lookup('share.perms.removeacc.msg'),function(){changes=true;CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','removeAlbumShare',['albumid',d.album.albumid,'email',dr.sharee.user.email],function(){d.album.nsharees=(parseInt(d.album.nsharees)-1)+'';rAlbum.shares.splice(dr.i,1);showList();if(!parseInt(d.album.nsharees)){CE.CEU.svc.asyncRPC('POST','deleteAlbum',['albumid',d.album.albumid]);if(CE.CEI.g_albummap[d.album.albumid])
delete CE.CEI.g_albummap[d.album.albumid];if(CE.CEUI.g_sharedfolders[CE.CEI.getShareId(d.file)])
delete CE.CEUI.g_sharedfolders[CE.CEI.getShareId(d.file)];if(CE.CEUI.g_sharedfiles[CE.CEI.getShareId(d.file)])
delete CE.CEUI.g_sharedfiles[CE.CEI.getShareId(d.file)];dlg.hide();dlg=null;closeCb();}
CE.CEU.showLoadingAni(false);},CE.CEI.onGenericFailure);return true;});closeMenu();CE.CEU.stopevt(e);}
function setAccess(dr,e){changes=true;CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','updateAlbumShare',['albumid',d.album.albumid,'email',dr.sharee.user.email,'perms',dr.acc.value],function(){dr.sharee.perms=dr.acc.access;showList();CE.CEU.showLoadingAni(false);},CE.CEI.onGenericFailure);CE.CEU.stopevt(e);}
function closeCb(){if(changes){CE.CEUI.showShareStatus(CE.CEI.getShareId(d.file),null,null,d.file);if(CE.CEUI.isSharedFoldersListing())
CE.CEUI.reloadContentCWD();if(d.cb)
d.cb();}}},CE.CEI.onGenericFailure);}
this.showCollabCur=function(){var folder;if(g_curpath.length){folder=g_curpath[g_curpath.length-1].file;}else if(that.g_cursvc){folder={fileid:'0',filename:that.g_cursvc.name,name:that.g_cursvc.name,type:'1','svc':that.g_cursvc};}
(new CE.CEI.SendShare(folder,CE.CEUI.findShare(folder))).show(true);};function showSocialButtons(el,file,svc,shortUrl){var twitButs=el.appendChild(CE.dce('span',null,'cesocialbut twitter'));loadScript('cetwitwidg','//platform.twitter.com/widgets.js',null,'twttr.widgets.load',function(){var twit=twitButs.appendChild(CE.dce('a',null,'twitter-share-button hidden'));twit.setAttribute('href','https://twitter.com/share');twit.setAttribute('data-url',shortUrl);twit.setAttribute('data-count','horizontal');twit.setAttribute('data-text',CE.STRTAB.lookup('share.twitter.msg',CE.trims2(file.name,14)));twit.appendChild(CE.STRTAB.lookupel('share.twitter.tweet'));twttr.widgets.load();});var gplusButs=el.appendChild(CE.dce('span',null,'cesocialbut google'));loadScript('cegplusone','//apis.google.com/js/plusone.js','{"parsetags":"explicit"}','gapi.plusone.go',function(){var gplus=gplusButs.appendChild(CE.dce('g:plusone'));gplus.setAttribute('size','medium');gplus.setAttribute('href',shortUrl);gapi.plusone.go();});var fbButs=el.appendChild(CE.dce('span',null,'cesocialbut facebook'));var fb=new CE.CEI.Facebook();fb.init(false,function(){var fblike=fbButs.appendChild(CE.dce('fb:like'));fblike.setAttribute('href',shortUrl);fblike.setAttribute('send','true');fblike.setAttribute('layout','button_count');fblike.setAttribute('width','90');FB.XFBML.parse(fbButs);});}
function loadScript(scriptId,hostPath,extraContent,neededFunc,cbReady){try{if(typeof(eval(neededFunc))=='function')
return cbReady();}catch(e){};if(!$(scriptId)){var script=CE.dce('script',scriptId);if(extraContent){try{script.innerHTML=extraContent;}catch(e){};}
script.type='text/javascript';script.src=((document.location.protocol=='https:')?'https:':'http:')+hostPath;var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(script,s);}
CE.CEU.poll(200,function(){try{return(typeof(eval(neededFunc))=='function');}catch(e){};return false;},cbReady);}
function areAlbumsLoaded(){return(g_albummapReady&&g_sharemapReady&&g_lnkmapReady);}
function ensureAlbumsLoaded(cb){CE.CEU.poll(500,function(){return(g_albummapReady&&g_sharemapReady&&g_lnkmapReady);},cb);}
function reloadAlbums(cb){var joiner=new CE.CEU.Joiner(3);CE.CEUI.reloadAlbumsIShare(joiner.join);reloadAlbumsSharedWithMe(joiner.join);reloadPublicLinks(joiner.join);joiner.finish(function(){bcUpdateShareIcons();if(cb)
cb();});}
this.reloadAlbumsIShare=function(cb){CE.CEU.svc.asyncRPC('POST','listOwnerAlbums',null,function(r){CE.CEI.g_albummap={};CE.CEUI.g_sharedfolders={};CE.CEUI.g_sharedfiles={};for(var i=0;i<r.albums.length;++i){fixAlbumtype(r.albums[i]);var id=r.albums[i].albumid;var shareid=null;if(r.albums[i].albumtype!=CE.FILE_TYPE_SLIDEALBUM){if(r.albums[i].files){CE.CEI.g_albummap[id]=r.albums[i];for(var ir=0;ir<r.albums[i].files.length;++ir){var ar=r.albums[i].files[ir];shareid=CE.CEI.getShareId(ar);if(r.albums[i].albumtype==CE.FILE_TYPE_FILEALBUM)
CE.CEUI.g_sharedfiles[shareid]=r.albums[i];else
CE.CEUI.g_sharedfolders[shareid]=r.albums[i];CE.CEUI.showShareStatus(shareid);}}else if(r.albums[i].root){if(!r.albums[i].root.name)
r.albums[i].root.name=r.albums[i].name;if(r.albums[i].albumtype==CE.FILE_TYPE_PRINTALBUM){r.albums[i].root.isPrinter=true;}
CE.CEI.g_albummap[id]=r.albums[i];var ar=r.albums[i].root;shareid=CE.CEI.getShareId(ar);if(r.albums[i].albumtype==CE.FILE_TYPE_FILEALBUM)
CE.CEUI.g_sharedfiles[shareid]=r.albums[i];else
CE.CEUI.g_sharedfolders[shareid]=r.albums[i];CE.CEUI.showShareStatus(shareid);}}else{CE.CEI.g_albummap[id]=r.albums[i];}}
g_albummapReady=true;if(cb){cb();}},CE.CEI.onGenericFailure);};function reloadAlbumsSharedWithMe(cb){CE.CEU.svc.asyncRPC('POST','listSharedAlbums',null,function(r){CE.CEI.g_sharemap={};var printers=[];for(var i=0;i<g_printers.length;++i){if(!g_printers[i].isSharedWithMe){printers.push(g_printers[i]);}}
var pending=0;for(var i=0;i<r.albums.length;++i){fixAlbumtype(r.albums[i]);var id=r.albums[i].albumid;if(r.albums[i].albumtype==CE.FILE_TYPE_PRINTALBUM&&r.albums[i].root&&!CE.CEI.isOwnedSvc(r.albums[i].root)){var printer=r.albums[i].root;printer.isPrinter=true;printer.isSharedWithMe=true;++pending;CE.CEU.svc.asyncRPC('PRINT','getPrinterOptions',['deviceid',printer.deviceid,'serviceid',printer.serviceid],function(r,d){printers.push(d.printer);--pending;},function(){--pending;},{'printer':printer});}
CE.CEI.g_sharemap[id]=r.albums[i];}
CE.CEU.poll(500,function(){return!pending},function(){g_printers=printers;g_sharemapReady=true;if(cb){cb();}});},CE.CEI.onGenericFailure);}
function reloadPublicLinks(cb){CE.CEU.svc.asyncRPC('POST','listShares',[],function(r){CE.CEI.g_lnkmap={};for(var i=0;i<r.shares.length;++i){var shareid=CE.CEI.getShareId(r.shares[i]);CE.CEI.g_lnkmap[shareid]=r.shares[i];CE.CEUI.showShareStatus(shareid);}
g_lnkmapReady=true;if(cb)
cb();},CE.CEI.onGenericFailure);}
function populateSidebar(r,psd){var grd=psd.grd;var el=CE.CEU.$(grd);if(r&&r.devices&&el){CE.CEI.g_svcmap={};CE.CEI.g_devmap={};g_subdevs={};var printers=[];g_noneOnline=true;for(var i=0;i<r.devices.length;i++){
CE.CEI.g_devmap[r.devices[i].deviceid]=r.devices[i];var showdev=true;var d=r.devices[i];var devversion=d.version||'';if(devversion.indexOf('POGOVIDEO')!=-1||devversion.indexOf('POGOPROHD')!=-1){var div=CE.dce('div');div.style.overflow='auto';div.innerHTML='<p>Dear Pogoplug Video User,</p><p>Cloud Engines, Inc. is recalling all Pogoplug Video units (Pogo-P11, Pogo-P12, Pogo-P13, and Pogo-P14) that it has distributed.  We have received reliable reports that units have overheated, with flames possibly issuing from the unit in at least one instance.  We do not know whether this condition affects some or all units and therefore are seeking the immediate return of all units in distributor and retailer inventory and from consumers.  Please safely eject your hard drives and unplug your unit immediately.  Note that this recall does not affect any other Pogoplug products, including Pogoplug, Pogoplug Pro, or Pogoplug Biz.  For more detail, please see: http://blog.pogoplug.com/.</p><p>For those of you who purchased Pogoplug Video, please collect your proof of purchase and device.  We will be in touch shortly regarding the return process.  Please address any questions to videorecall@cloudengines.com.</p><p>We sincerely apologize for any inconvenience this recall may cause you, and want you to know that we are committed to delivering safe, reliable and compelling products.  Thank you for your support and patience.</p><p>Best,</p><p>The Pogoplug Team</p>';var dlg=new CE.CEU.Dialog('Pogoplug Video Recall',div,[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();}
g_subdevs[r.devices[i].deviceid]={};if(CE.CEI.isBizDev(r.devices[i])){CE.CEU.svc.asyncRPC('POST','multiuserList',['deviceid',r.devices[i].deviceid],function(r){var subdevs=r.musubdevs||[];for(var i=0;i<subdevs.length;++i){g_subdevs[subdevs[i].deviceid][subdevs[i].fileid]=subdevs[i].subdevid;}});}
var multiSvc=isMultiSvc(r.devices[i]);if(r.devices[i].services&&r.devices[i].services.length>=1){var services=r.devices[i].services;if(typeof services=='string'){continue;}
for(var m=0;m<services.length;++m){if(g_ejectedsvc&&g_ejectedsvc.deviceid==r.devices[i].deviceid&&g_ejectedsvc.serviceid==services[m].serviceid){services[m].online='0';}
if(services[m].online&&services[m].online=='1'){g_noneOnline=false;}}
g_ejectedsvc=null;for(var j=0;j<services.length;j++){if(services[j].type.indexOf('xce:printer')==-1){showdev=false;}
if(!services[j].name){services[j].name=CE.STRTAB.lookup("view.svc.unnamed");}
var id;if(services[j].id){id=services[j].id;}else{id=r.devices[i].deviceid+':_:'+services[j].serviceid;services[j].id=id;}
services[j].device=r.devices[i];CE.CEI.g_svcmap[id]=services[j];if(g_noneOnline||(services[j].online&&services[j].online=='1')){var evtInfo={onEvent:onClickSidebar,id:id,name:services[j].name,type:'service',device:r.devices[i],service:services[j],owner:r.devices[i].owner,disabled:!services[j].online||services[j].online=="0"};if(services[j].type.indexOf('xce:printer')!=-1){printers.push({'el':el,'evtInfo':evtInfo});}else if(!multiSvc){appendSidebarItem(el,evtInfo);}}}
if(multiSvc){id=r.devices[i].deviceid+':_:DEVPC';var evtInfo={onEvent:onClickSidebar,id:id,name:r.devices[i].name,type:'devpc',device:r.devices[i],services:r.devices[i].services,owner:r.devices[i].owner,disabled:false};appendSidebarItem(el,evtInfo);}}
if(showdev){var id=multiSvc?(r.devices[i].deviceid+':_:DEVPC'):r.devices[i].deviceid;var isOffline=!r.devices[i].version;g_orphans[id]=r.devices[i];var noneNameId=((r.devices[i].type.indexOf('xce:pppc')!=-1)||isOffline)?'view.device.offline':'view.device.nodrive';appendSidebarItem(el,{onEvent:onClickSidebar,id:id,name:CE.STRTAB.lookup(noneNameId),type:'device',device:r.devices[i],service:null,owner:r.devices[i].owner,disabled:true});}}}
showUpgradeLink();g_sbops--;CE.CEDBG.println('CEUI: populateSidebar: dec(SBOPS) - '+g_sbops);if(g_sbops==0){updatePrintersFromSvcs();}
if(!g_inited){initOpDone();if(g_jumpToShare&&g_sbops==0){ensureAlbumsLoaded(function(){var shareId=g_jumpToShare;g_jumpToShare=null;activateAlbum(shareId,true);});}}else if(g_sbops==0){CE.CEU.showLoadingAni(false);if(!psd.rl){if(g_jumpToShare){ensureAlbumsLoaded(function(){var shareId=g_jumpToShare;g_jumpToShare=null;activateAlbum(shareId,true);});}else{var foundsomething=false;if(g_cursearch&&g_cursearch!=''){updateSidebarState(g_cursearch);foundsomething=true;}else if(that.g_cursvc!=null){var id=that.g_cursvc.deviceid+':_:'+that.g_cursvc.serviceid;CE.CEDBG.println('CEUI: populateSidebar: calling activateService('+id+')');foundsomething=activateService(id);}else if(that.g_curalbum!=null){CE.CEDBG.println('CEUI: populateSidebar: calling activateAlbum('+that.g_curalbum.albumid+')');ensureAlbumsLoaded(function(){foundsomething=activateAlbum(that.g_curalbum.albumid,false);if(!foundsomething){foundsomething=activateAlbum(that.g_curalbum.albumid,true);}
if(!foundsomething){activateSomething(false);}
if(g_sbops==0&&psd.cb){psd.cb();}});return;}
if(!foundsomething){activateSomething(false);}}}}
if(g_sbops==0&&psd.cb){psd.cb();}}
function showUpgradeLink(){var hasFree=false;var hasPaid=false;for(var d in CE.CEI.g_devmap){if(CE.CEI.g_devmap[d].type&&CE.CEI.g_devmap[d].type.indexOf('xce:pppc')!=-1&&CE.CEI.g_devmap[d].authorized!='1'){hasFree=true;}else{hasPaid=true;}}
if(!hasFree){CE.aCN('cepppcupgrade','hidden');}else if(!hasPaid){CE.rCN('cepppcupgrade','hidden');}else if(g_headtab!='files'||(!CE.CEUI.g_cursvc&&!CE.CEUI.g_curmsvc)){CE.aCN('cepppcupgrade','hidden');}else{var device=CE.CEUI.g_curmsvc||CE.CEUI.g_cursvc.device;var isFree=(device.type&&device.type.indexOf('xce:pppc')!=-1&&device.authorized!='1');CE.mCN('cepppcupgrade','hidden',!isFree);}}
function retrieveDevFeatures(rdevs,psd){var hasSvc=false;var hasCloud=false;if(rdevs&&rdevs.devices){var pendingFeatures=0;for(var i=0;i<rdevs.devices.length;i++){rdevs.devices[i].type=rdevs.devices[i].type||'';for(var j=0;j<rdevs.devices[i].services.length;++j){hasSvc=(hasSvc||(rdevs.devices[i].services[j].type.indexOf(':plugfs')!=-1));hasCloud=(hasCloud||(rdevs.devices[i].services[j].type.indexOf(':plugfs')!=-1&&rdevs.devices[i].type.indexOf(':cloud')!=-1));}
CE.CEI.g_features[rdevs.devices[i].deviceid]=CE.CEI.g_features[rdevs.devices[i].deviceid]||[];pendingFeatures++;CE.CEU.svc.asyncRPC('POST','listFeatures',['deviceid',rdevs.devices[i].deviceid],function(r,d){CE.CEI.g_features[d.device.deviceid]=(r&&r.features&&r.features.length)?r.features:[];--pendingFeatures;if(CE.CEI.g_features[d.device.deviceid].indexOf('xcode')!=-1){for(var s=0;s<d.device.services.length;++s){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','getMode','deviceid',d.device.deviceid,'serviceid',d.device.services[s].serviceid],function(rx,dx){if(rx&&rx.shortduration&&rx.shortduration!='-1'&&rx.stream=='always'){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','setMode','tasktype','stream','value','never','shortduration','-1','deviceid',dx.service.deviceid,'serviceid',dx.service.serviceid]);CE.CEI.setOption('stream_ask_'+dx.service.deviceid+'_'+dx.service.serviceid,true);rx.stream='never';}
dx.service.xcodeStream=rx?rx.stream:null;dx.service.xcodeFeat='xcode';},null,{service:d.device.services[s]});}}else if(CE.CEI.g_features[d.device.deviceid].indexOf('xcode2')!=-1){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode2','command','getMode','deviceid',d.device.deviceid],function(rx){for(var s=0;s<d.device.services.length;++s){d.device.services[s].xcodeStream=rx?rx.stream:null;d.device.services[s].xcodeFeat='xcode2';}});}},function(){--pendingFeatures;},{device:rdevs.devices[i]});}}
if(hasSvc&&!hasCloud&&!psd.dontCreateCloud){psd.dontCreateCloud=true;CE.CEU.svc.asyncRPC('POST','provisionCloudDrive',[],function(){CE.CEU.svc.asyncRPC('POST','listDevices',null,retrieveDevFeatures,CE.CEI.onGenericFailure,psd);var msg=CE.dce('div',null,'cloudmsg');(msg.appendChild(CE.dce('div',null,'txt'))).appendChild(CE.STRTAB.lookupelh('cloud.added.msg.h'));CE.CEU.attachEvent(msg.appendChild(CE.dce('div',null,'getulbut')),'click',{onEvent:CE.CEU.showDlHint});var dlg=new CE.CEU.Dialog(null,msg,null,null,false,'cecloudcongrats',null,true);dlg.show();},finish);}else{finish();}
function finish(){populateSidebar(rdevs,psd);}}
function reloadSidebar(rl,cb){var grd='cemylib_devices';var el=CE.CEU.$(grd);g_sbops=0;if(el){if(!g_inited)g_initops++;g_sbops++;CE.CEDBG.println('CEUI: reloadSidebar: inc(SBOPS, services) - '+g_sbops);CE.CEU.releaseAllEvents(el,'click',true);CE.CEU.svc.asyncRPC('POST','listDevices',null,retrieveDevFeatures,CE.CEI.onGenericFailure,{'grd':grd,'rl':rl,'cb':cb});}else{if(cb)cb();}
if(g_sbops>0){CE.CEU.showLoadingAni(true);}}
function showEmptyContentDiv(id,hidePagination){if(hidePagination){CE.aCN('cepagination','hidden');}else{CE.rac(CE.CEU.$('cepagination'));CE.rCN('cepagination','hidden');}
CE.aCN('cebuttons_preview','hidden');CE.rCN('cebcdiv','hidden');var e=CE.$('ceempty');CE.aCN(e,'hidden');if(id=='folder'&&CE.CEUI.g_cursvc&&g_curpath.length==0){CE.rac('celist');var box=CE.$('celist').appendChild(CE.dce('div','ceemptydrive'));(box.appendChild(CE.dce('div',null,'title'))).appendChild(CE.STRTAB.lookupel('toupload.title'));(box.appendChild(CE.dce('div',null,'step1'))).appendChild(CE.STRTAB.lookupelh('toupload.step1.h'));(box.appendChild(CE.dce('div',null,'step2'))).appendChild(CE.STRTAB.lookupelh('toupload.step2.h'));(box.appendChild(CE.dce('div',null,'step3'))).appendChild(CE.STRTAB.lookupelh('toupload.step3.h'));if(!CE.CEI.getOption('emptydrv_dled')){startSoftwareDl('pogoplugbrowser');CE.CEI.setOption('emptydrv_dled',true);}}else if(id){CE.rac('celist');for(var c=e.firstChild;c!=null;c=c.nextSibling)
CE.mCN(c,'hidden',c.id!=id);CE.rCN(e,'hidden');}}
function removeAllInvitations(albumid){CE.CEU.svc.asyncRPC('POST','listAlbumShares',['albumid',albumid],function(r){if(r&&r.shares){for(var i=0;i<r.shares.length;++i){CE.CEU.svc.asyncRPC("POST","removeAlbumShare",['albumid',albumid,'email',r.shares[i].user.email]);}
if(CE.CEI.g_albummap[albumid])
CE.CEI.g_albummap[albumid].nsharees=null;}});}
function bcClick(bco,evt,tel){CE.CEDBG.println('CEUI: bcClick: bco: '+CE.CEDBG.serialize(bco));var go=null;if(bco.pageoffset){go={};g_curpageoffset['celist']=go.pageoffset=bco.pageoffset;}
if(bco.id){if(bcPopTo(bco.id)){if(bco.file.svc){if(!go)go={};go.svc=bco.file.svc;go.viewmode=CE.CEI.g_viewmode;go.actions=true;if(g_curscrit)
go.scrit=g_curscrit;}
reloadContent(bco.id,go,bco.file);}}else{if(CE.CEUI.g_curmsvc){bcFlush();g_curpageoffset['celist']=g_topleveloffset;reloadContent(null,go);}else if(CE.CEUI.g_curalbum||CE.CEUI.g_cursvc){bcFlush();g_curpageoffset['celist']=g_topleveloffset;reloadContent(null,go);}else if(g_cursearch&&g_cursearch.indexOf('celibshares_')!=-1&&g_curpath.length==0){CE.CEUI.showSharedFolders(g_cursearch.substr(12),'celist',null,null,true);}else{CE.CEUI.reloadAll();}}
return false;}
function bcUpdateSpaceUsage(){var usage=null;var hasFreeCloud=false;if(CE.CEUI.g_cursvc&&CE.CEUI.g_cursvc.space&&CE.CEUI.g_cursvc.space!='0/0'&&CE.CEUI.g_cursvc.space.indexOf('/')!=-1&&g_headtab=='files'){var svc=CE.CEUI.g_cursvc;var pos=svc.space.indexOf('/');var total=parseInt(svc.space.substr(pos+1));var used=total-parseInt(svc.space);usage={'used':used,'total':total};hasFreeCloud=isCloudSvc(svc)&&svc.device.sku&&svc.device.sku.name=='POGOCLOUD-FREE';}else if(g_headtab=='music'||g_headtab=='photos'||g_headtab=='movies'||g_headtab=='sharing'){for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].space&&CE.CEI.g_svcmap[s].space!='0/0'&&CE.CEI.g_svcmap[s].space.indexOf('/')!=-1){var svc=CE.CEI.g_svcmap[s];usage=usage||{'used':0,'total':0};var pos=svc.space.indexOf('/');var tmpTotal=parseInt(svc.space.substr(pos+1));usage.total+=tmpTotal;usage.used+=tmpTotal-parseInt(svc.space);hasFreeCloud=hasFreeCloud||(isCloudSvc(svc)&&svc.device.sku&&svc.device.sku.name=='POGOCLOUD-FREE');}}}
if(usage){var spaceuse=$('cespaceusage');CE.rac('cespaceusage_txt');var str=CE.STRTAB.lookup('ceui.used')+CE.CEU.getSizeStr(usage.used)+' / '+CE.CEU.getSizeStr(usage.total);if(spaceuse)$('cespaceusage_txt').appendChild(CE.dctn(str));if(spaceuse)$('cespaceusage_progress').style.width=parseInt((usage.used/usage.total)*100)+'%';CE.mCN('cespaceusage_addmore','hidden',!hasFreeCloud);CE.rCN('cespaceusage','hidden');}else{CE.aCN('cespaceusage','hidden');}}
function bcFlush(){var li,a;var bc=CE.CEU.$('cebc');CE.CEU.releaseAllEvents(bc,'click',true);CE.aCN('cespaceusage','hidden');g_curpath=[];g_curpageoffset['celist']=0;li=CE.dce('li','cebc_root','node cebc_keep last');a=CE.dca({onEvent:bcClick});if(g_cursearch){CE.CEUI.g_curalbum=null;CE.CEUI.g_cursvc=null;CE.CEUI.g_curmsvc=null;a.appendChild(CE.dctn(CE.CEUI.getScritName(g_cursearch)));}else if(CE.CEUI.g_curmsvc){CE.CEUI.g_cursvc=null;a.appendChild(CE.dctn(CE.CEI.getDispFn(CE.CEUI.g_curmsvc.name)));}else if(CE.CEUI.g_curalbum){a.appendChild(CE.dctn(CE.CEI.getDispFn(CE.CEUI.g_curalbum.name)));}else if(CE.CEUI.g_cursvc){a.appendChild(CE.dctn(CE.CEI.getDispFn(CE.CEUI.g_cursvc.name)));}else{a.appendChild(CE.STRTAB.lookupel("view.toplevel"));}
bcUpdateSpaceUsage();li.appendChild(a);bc.appendChild(li);li=CE.dce('li','cebc_r','cebc_keep hidden');bc.appendChild(li);bcUpdateShareIcons(true);CE.aCN("cebc","hidden");}
function bcAppend(co){var li,a;var bc=CE.CEU.$('cebc');var bcr=CE.CEU.$('cebc_r');var beforeLast=CE.getByClass(bc,'li','beforelast');if(beforeLast.length)
CE.rCN(beforeLast[0],'beforelast');var previousLast=CE.getByClass(bc,'li','last');if(previousLast.length){CE.rCN(previousLast[0],'last');CE.aCN(previousLast[0],'beforelast');}
var bco={onEvent:bcClick,id:co.id,name:co.name,pageoffset:0,file:co.file};if(g_curpath.length>0){var pbco=g_curpath[g_curpath.length-1];if(pbco){pbco.pageoffset=g_curpageoffset['celist'];}}else{g_topleveloffset=g_curpageoffset['celist'];}
g_curpath.push(bco);var name=CE.CEI.getDispFn(bco.file);li=CE.dce('li','cebc_'+bco.id,'node last');a=CE.dca(bco);a.appendChild(CE.dctn(CE.trims(name,15)));li.appendChild(a);bc.insertBefore(li,bcr);bcUpdateSpaceUsage();CE.rCN("cebc","hidden");bcUpdateShareIcons(true);bcShowFittingCrumbsOnly();}
function bcShowFittingCrumbsOnly()
{var bcUl=CE.CEU.$('cebc');var bcRoot=CE.CEU.$('cebc_root');var lis=bcUl.childNodes;var elip=CE.CEU.$('cebc_elip');var pagin=CE.CEU.$('cepagination');if(!elip){elip=CE.dce('li','cebc_elip','child');elip.appendChild(CE.dctn("..."));bcUl.insertBefore(elip,bcRoot.nextSibling);}
elip.style.display='block';var spaceuse=$('cespaceusage');var addmore=$('cespaceusage_addmore');var maxWidth=$('cebcdiv').offsetWidth-(spaceuse?spaceuse.offsetWidth:0)-(addmore?addmore.offsetWidth:0);var totalWidth=bcRoot.offsetWidth+elip.offsetWidth;elip.style.display='none';if(pagin)
totalWidth+=pagin.offsetWidth;totalWidth+=CE.CEU.$('cebuttons_right').offsetWidth;var i;for(i=lis.length-2;i>1;i--){if(lis[i].id=="cebc_elip")
break;lis[i].style.display='block';if(maxWidth<=(totalWidth+lis[i].offsetWidth)){elip.style.display='block';break;}
totalWidth+=lis[i].offsetWidth;}
for(;i>1;i--){if(lis[i].id=="cebc_elip")
break;lis[i].style.display='none';}}
function bcUpdateShareIcons(lastOnly){var shtypes=['collab','link'];var start=lastOnly?(g_curpath.length-1):-1;for(var i=start;i<g_curpath.length;++i){var li,f,imgId;if(i==-1){li=CE.CEU.$('cebc_root');f=(g_headtab=='files')?{fileid:'0'}:{};imgId='cebc_shico_';}else{var bco=g_curpath[i];f=bco.file;li=CE.$('cebc_'+bco.id);imgId='cebc_shico_'+bco.id+'_';}
var share=findFolderShare(f);var hasShare={};hasShare['collab']=(share&&share.nsharees&&parseInt(share.nsharees));hasShare['link']=CE.CEI.g_lnkmap[CE.CEI.getShareId(f)];for(var t=0;t<shtypes.length;++t){var img=CE.$(imgId+shtypes[t]);if(hasShare[shtypes[t]]){if(!img){li.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'share-icon-'+shtypes[t]+'.png',imgId+shtypes[t],'sh'+shtypes[t]),li.firstChild);CE.aCN(li,'sh'+shtypes[t]);}}else{if(img){if(img.parentNode)
img.parentNode.removeChild(img);CE.rCN(li,'sh'+shtypes[t]);}}}}}
function bcPopTo(id){var r=false;g_curpageoffset['celist']=0;for(var i=g_curpath.length-1;i>=0;i--){if(g_curpath[i].id==id){if(g_curpath[i].pageoffset){g_curpageoffset['celist']=g_curpath[i].pageoffset;}
g_curpath.splice(i+1,g_curpath.length-i);var bc=CE.CEU.$('cebc');var found=false;CE.CEU.releaseAllEvents(bc,'click',true,function(x){if(!found){if(x.id=='cebc_'+id){found=true;}else if(CE.hCN(x,'cebc_keep')){}else{return true;}}
return false;});var lis=CE.getByClass(bc,'li','node');if(lis.length){CE.rCN(lis[lis.length-1],'beforelast');CE.aCN(lis[lis.length-1],'last');}
if(lis.length>1)
CE.aCN(lis[lis.length-2],'beforelast');bc=null;r=true;break;}}
bcUpdateSpaceUsage();bcShowFittingCrumbsOnly();return r;}
function canDoPreview(f){if(CE.CEUI.isVideoFile(f)||CE.CEUI.isAudioFile(f)){return true;}else if(f.preview&&!CE.CEI.isDescendableFile(f)){return true;}else if(CE.CEU.isImageFile(f)){return true;}else if(CE.CEUI.isDocFile(f)){return true;}
return false;}
function getNameForMime(mime){var n=CE.MIME_NAME_MAP[mime];if(n)return CE.STRTAB.lookup(n[0]);}
function isFilePrintable(f){if(f.mimetype){var n=CE.MIME_NAME_MAP[f.mimetype];if(n)return n[2];}
return false;}
function getAlbum(file){var svc=CE.CEI.getCurSvc(file);if(svc){if(svc.svc&&svc.svc.albumid&&svc.svc.perms){return svc.svc;}
for(var id in CE.CEI.g_sharemap){if(CE.CEI.g_sharemap[id].deviceid==svc.deviceid&&CE.CEI.g_sharemap[id].serviceid==svc.serviceid){if(CE.CEI.g_sharemap[id].root&&CE.CEI.g_sharemap[id].root.fileid==file.fileid){return CE.CEI.g_sharemap[id];}else if(CE.CEI.g_sharemap[id].files){for(var i=0;i<CE.CEI.g_sharemap[id].files.length;++i){if(CE.CEI.g_sharemap[id].files[i].fileid==file.fileid)
return CE.CEI.g_sharemap[id];}}}}}
var deviceid=svc?svc.deviceid:file.deviceid;var serviceid=svc?svc.serviceid:file.serviceid;if(CE.CEU.structlen(CE.CEI.g_sharemap)==0&&CE.CEUI.g_curalbum&&CE.CEUI.g_curalbum.root&&CE.CEUI.g_curalbum.root.serviceid==serviceid&&CE.CEUI.g_curalbum.root.deviceid==deviceid){return CE.CEUI.g_curalbum;}
return null;}
function canDoEditTypeActions(file,outinf){if(file){var svc=CE.CEI.getCurSvc(file);if(CE.CEI.isOwnedSvc(svc))
return true;var alb=getAlbum(file);if(alb){if(outinf)outinf.perms=alb.perms;return(CE.CEU.isLoggedIn()&&alb.perms=='1');}}
var share=getCurShare();if(share&&CE.CEU.user&&share.ownerid==CE.CEU.user.userid){return CE.CEU.isLoggedIn();}else if(share){if(outinf)outinf.perms=share.perms;return(CE.CEU.isLoggedIn()&&share.perms=='1');}else{return(that.g_cursvc!=null);}}
function getTrashAction(actions){for(var i=0;i<actions.length;++i){if(actions[i].substr(0,5)=='trash')
return actions[i];}
return null;}
function hasTrashAction(actions){return(getTrashAction(actions)!=null);}
function getTrashActionForFiles(fileStruct){var lastAct=null;for(var f in fileStruct){var action=getTrashAction(CE.CEUI.getActionTypesForFile(fileStruct[f],CE.CEUI.g_isSlideAlb));if(action==null){return null;}else if(lastAct==null){lastAct=action;}else if(lastAct!=action){return null;}}
return lastAct;}
this.getActionTypesForFile=function(file,isSlideFile){var actions=[];var didzoom=false;var perminf={};var canEdit=canDoEditTypeActions(file,perminf)&&!that.isMusicListing();var share=CE.CEUI.findShare(file);var publnk=!!CE.CEI.g_lnkmap[CE.CEI.getShareId(file)];var isAudio=CE.CEUI.isAudioFile(file);var folder=(file.type==CE.FILE_TYPE_DIRECTORY);var foldery=CE.CEI.isDescendableFile(file);var owned=(file.fileid=='-1'&&file.album&&CE.CEI.g_albummap[file.album.albumid])||CE.CEI.isOwnedFile(file);if(isAudio||file.type==CE.FILE_TYPE_ALBUM||file.type==CE.FILE_TYPE_ARTIST||file.type==CE.FILE_TYPE_GENRE){actions.push('play');if(g_audioPlayer){actions.push('queuemusic');}}
if(!CE.CEUI.isSharedFoldersListing()){if(g_printers.length&&isFilePrintable(file)){actions.push('print');}else if(!isAudio&&((!isSlideFile&&canDoPreview(file))||foldery)){actions.push(foldery?'zoomfolder':'zoom');didzoom=true;}
if(!foldery||folder){if(perminf.perms!='2'){actions.push('download');if(CE.CEU.isLoggedIn()&&!that.g_isSlideAlb)
actions.push('copy');}
if(canEdit&&!that.g_isSlideAlb&&!file.multisvc){actions.push('move');}}
if(canEdit&&(folder||!foldery)&&!file.multisvc){actions.push('rename');actions.push(isSlideFile?'trashslide':'trash');}
if(that.g_curalbum&&CE.CEU.user&&!isSlideFile){if(that.g_curalbum.ownerid==CE.CEU.user.userid){actions.push('share_publnk');actions.push('share_send');if(folder)actions.push('share_collab');}}else if(file.svc&&file.svc.device&&file.svc.device.ownerid&&CE.CEU.user&&!isSlideFile){if(file.svc.device.ownerid==CE.CEU.user.userid){actions.push('share_publnk');actions.push('share_send');if(folder)actions.push('share_collab');}}else if(that.g_cursvc&&!isSlideFile){actions.push('share_publnk');actions.push('share_send');if(folder)actions.push('share_collab');}
if(g_cursearch&&(!foldery||folder)&&owned&&!isSlideFile){actions.push('folder');}}else{var offline=false;if(!owned&&file.svc&&file.svc.albumid&&CE.CEI.g_albummap[file.svc.albumid]){offline=true;owned=true;}
if(g_printers.length&&isFilePrintable(file)&&!owned){actions.push('print');}else if(!isAudio&&((!isSlideFile&&canDoPreview(file))||foldery)){actions.push(foldery?'zoomfolder':'zoom');didzoom=true;}
if(!offline&&file.svc&&(!file.svc.albumtype||file.svc.albumtype=='0'||file.svc.albumtype==CE.FILE_TYPE_DIRECTORY||file.svc.albumtype==CE.FILE_TYPE_FILEALBUM)){if(perminf.perms!='2'&&!owned)
actions.push('download');}
if(!owned){actions.push('trashshare');actions.push('mail');}else if(CE.CEUI.isSlideAlbListing()){actions.push('trashslidealb');}
if(CE.CEUI.isSlideAlbListing()){if(file.album&&(file.album.ownerid==CE.CEU.user.userid)){actions.splice(0,0,'editshow');actions.push('rename');actions.push('share_send');if(folder)actions.push('share_collab');}}else if(owned&&!isSlideFile){if(!offline){actions.push('share_publnk');actions.push('share_send');if(folder)
actions.push('share_collab');else
actions.push('trashmyshare');}else{actions.push('trashmyshare');}}
if(owned&&!offline){var deviceid=file.svc?file.svc.deviceid:file.deviceid;deviceid=deviceid||((file.svc&&file.svc.root)?file.svc.root.deviceid:null);if(deviceid&&CE.CEI.g_devmap[deviceid]&&CE.CEI.isBizDev(CE.CEI.g_devmap[deviceid])){actions.push('stats');}}}
var pos=actions.indexOf('move');if(pos!=-1){actions.splice(pos+1,0,'copy_move');}else{pos=actions.indexOf('copy');if(pos!=-1)
actions.splice(pos+1,0,'copy_copy');}
var pos=actions.indexOf('share_collab');if(pos!=-1&&(share&&parseInt(share.nsharees)))
actions.splice(pos+1,0,'share_perms');pos=actions.indexOf('share_send');if(pos!=-1&&publnk)
actions.splice(pos+1,0,'share_dislnk');if(!isAudio&&!didzoom&&((!isSlideFile&&canDoPreview(file))||foldery)){actions.push(foldery?'zoomfolder':'zoom');}
if(canEdit&&CE.CEUI.isVideoFile(file,true)){var svc=CE.CEI.getCurSvc(file);if(svc)svc=CE.CEI.g_svcmap[svc.deviceid+':_:'+svc.serviceid];var pos=actions.indexOf('zoom');if(pos!=-1)
actions.splice(pos,1);if((svc&&CE.CEI.hasFeature('xcode2',svc.deviceid))||hasFullStream(file)||(svc&&svc.xcodeStream=='never')){actions.splice(0,0,'zoommovie');}else{actions.splice(1,0,'zoommovie');}}
return actions;}
this.onDropActions=function(e,evt){if(CE.hCN('cecontentmain','cemultsel'))
return;CE.aCN(e.el,'itemactive');var posel=e.posel||e.el;var elPos=CE.CEU.getAbsPos(posel);var page=CE.$('cepage');var position,clsname,maskfile;if(e.el.tagName.toLowerCase()=='tr'){clsname='dropped';position={top:(page.scrollTop-page.offsetTop+elPos.y+posel.offsetHeight+1)+'px',right:(page.scrollWidth-(elPos.x+posel.offsetWidth)-2)+'px'};}else if(CE.hCN(e.el,'item')){clsname='dropped-icon-md';position={top:(page.scrollTop-page.offsetTop+elPos.y+27)+'px',left:(elPos.x+5)+'px'};}else{maskfile='blank.gif';clsname='dropped-icon-md';position={top:(page.scrollTop-page.offsetTop+elPos.y+17)+'px',right:(page.scrollWidth-(elPos.x+e.el.offsetWidth)+1)+'px'};}
CE.CEUI.showContextMenu(e.co,evt,position,clsname,maskfile,true,function(){CE.rCN(e.el,'itemactive');},CE.$('cepage'));};this.onRenameStart=function(evt,e,t,newName){if(showReadOnlyError(CE.STRTAB.lookup('view.rename.title'),CE.STRTAB.lookupel("view.onreadonlydrive")))
return;var edit=evt.el.appendChild(CE.dce('input','cerenamefield','rename'));edit.type='text';edit.value=newName?newName:evt.file.name;var dotPos=edit.value.lastIndexOf('.');if(dotPos==-1)
dotPos=edit.value.length;if(!CE.CEUI.g_isSlideAlb&&edit.createTextRange){var selRange=edit.createTextRange();selRange.collapse(true);selRange.moveStart('character',0);selRange.moveEnd('character',dotPos);selRange.select();}else if(!CE.CEUI.g_isSlideAlb&&edit.setSelectionRange){edit.setSelectionRange(0,dotPos);}else if(!CE.CEUI.g_isSlideAlb&&edit.selectionStart){edit.selectionStart=0;edit.selectionEnd=dotPos;}else{edit.select();}
edit.focus();var posY=CE.CEU.getAbsPos(edit).y;var scrollTop=CE.CEU.getScrollTop();var winHeight=window.innerHeight||((document.documentElement&&document.documentElement.clientHeight)?document.documentElement.clientHeight:document.body.clientHeight);if(posY<0||(posY+edit.offsetHeight)>(scrollTop+winHeight)){edit.scrollIntoView();}
if(evt.itemel)
CE.aCN(evt.itemel,'itemactive');var eventInfo={onEvent:onRenameApply,'file':evt.file,'el':edit,'renevt':evt};CE.CEU.attachEvent(edit,'blur',eventInfo);CE.CEU.attachEvent(edit,'keydown',{onEvent:function(p,e,t){if(e.keyCode==27){CE.CEU.releaseAllEvents(edit,'blur',false);CE.CEU.releaseAllEvents(edit,'keydown',false);evt.el.removeChild(edit);if(evt.itemel)
CE.rCN(evt.itemel,'itemactive');}else if(e.keyCode==13){eventInfo.onEvent(eventInfo);}}});};function onRenameApply(evt){if(evt.el&&evt.el.parentNode){var div=evt.el.parentNode;var newName=CE.CEU.stripBadFnChars(evt.el.value);CE.CEU.releaseAllEvents(evt.el,'blur',false);CE.CEU.releaseAllEvents(evt.el,'keydown',false);div.removeChild(evt.el);if(evt.renevt.itemel)
CE.rCN(evt.renevt.itemel,'itemactive');if(newName==evt.file.name||newName==''||newName.substr(0,1)=='.')
return;CE.CEU.showLoadingAni(true);var doIt=function(){var svc=CE.CEI.getCurSvc(evt.file);var args=['filename',newName,'name',newName];if(svc)
args.push('deviceid',svc.deviceid,'serviceid',svc.serviceid);if(evt.file.fileid&&evt.file.fileid!='-1')
args.push('fileid',evt.file.fileid);if(evt.file.album&&evt.file.album.albumtype==CE.FILE_TYPE_SLIDEALBUM)
args.push('albumid',evt.file.album.albumid);else if(CE.CEUI.g_curalbum)
args.push('albumid',CE.CEUI.g_curalbum.albumid);var method=(CE.CEUI.g_curalbum&&CE.CEUI.g_curalbum.albumtype==CE.FILE_TYPE_SLIDEALBUM)?'renameAlbumFile':((evt.file.album&&evt.file.album.albumtype==CE.FILE_TYPE_SLIDEALBUM)?'renameAlbum':'moveFile');CE.CEU.svc.asyncRPC('POST',method,args,function(r){CE.CEU.showLoadingAni(false);if(evt.file.album&&evt.file.album.albumtype==CE.FILE_TYPE_SLIDEALBUM&&r.album)
CE.CEI.g_albummap[r.album.albumid]=r.album;if(CE.CEUI.g_viewsize=='photo')
CE.CEUI.g_lastRename=newName;if(evt.file.albumid)
CE.CEUI.reloadAll();else
CE.CEUI.reloadContentCWD();},onRenameFail,{'file':evt.file,'newname':newName,'renevt':evt.renevt});};var completeRename=function(){if(isShared(evt.file)&&(!evt.file.album||evt.file.album.albumtype!=CE.FILE_TYPE_SLIDEALBUM)){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(evt.file,true)),CE.STRTAB.lookup('removeshare.warn.msg',CE.STRTAB.lookup('removeshare.warn.rename'),CE.CEI.getObjType(evt.file),evt.file.name),function(){CE.CEU.showLoadingAni(true);removeShare(evt.file,function(){if(CE.CEI.getObjType(evt.file)!=CE.STRTAB.lookup('view.printer'))
CE.CEI.Hinter().showHintBrief('share-del',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.complete.hint')));else
CE.CEI.Hinter().showHintBrief('share-delp',CE.dctn(CE.STRTAB.lookup('sharewiz.delete.printer.complete.hint')));doIt();CE.CEUI.reloadAlbumsIShare();});return true;});}else{doIt();}};var devid=evt.file.deviceid||CE.CEI.getCurSvc(evt.file).deviceid;if(g_subdevs[devid]&&g_subdevs[devid][evt.file.fileid]){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(evt.file,true)),CE.STRTAB.lookup('removeshare.warn.sub.msg',CE.STRTAB.lookup('removeshare.warn.rename'),CE.CEI.getObjType(evt.file),evt.file.name),function(){CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','multiuserDestroyDevice',['deviceid',devid,'subdevid',g_subdevs[devid][evt.file.fileid]],function(){completeRename();},function(){completeRename();});return true;});}else{completeRename();}}}
function onRenameFail(r,d){CE.CEU.showLoadingAni(false);var svc=CE.CEI.getCurSvc(d.file);var args=['deviceid',svc?svc.deviceid:'','serviceid',svc?svc.serviceid:'','filename',d.newname,'parentid',d.file.parentid?d.file.parentid:'0'];CE.CEU.svc.asyncRPC('POST','getFile',args,function(){CE.CEI.Hinter().showHint('ren1',CE.STRTAB.lookupel('view.error.exists'),true);},function(){CE.CEI.Hinter().showHint('ren2',CE.dctn(r['HB-EXCEPTION'].message),true);});if(!d.renevt.lastAttempt||d.renevt.lastAttempt!=d.newname){d.renevt.lastAttempt=d.newname;d.renevt.onEvent(d.renevt,null,null,d.newname);}}
function doPrevLink(eh){if(g_curpageoffset['celist']>0){if(g_slideshowObj){if(eh&&eh.maintainState){g_slideshowStartPlaying=!g_slideshowObj.isPaused();g_slideshowStartFullscreen=CE.hCN(document.body,'cefullwinslid');}
if(eh&&eh.startAtLastIndex){g_slideshowStartLastIdx=true;}}
g_curpageoffset['celist']--;reloadContent();}}
function doPageLink(eh){if(g_slideshowObj){if(eh&&eh.maintainState){g_slideshowStartPlaying=!g_slideshowObj.isPaused();g_slideshowStartFullscreen=CE.hCN(document.body,'cefullwinslid');}
if(eh&&eh.startAtLastIndex){g_slideshowStartLastIdx=true;}}
g_curpageoffset['celist']=eh.po;reloadContent();}
function doNextLink(eh){if(g_slideshowObj){if(eh&&eh.maintainState){g_slideshowStartPlaying=!g_slideshowObj.isPaused();g_slideshowStartFullscreen=CE.hCN(document.body,'cefullwinslid');}
if(eh&&eh.startAtLastIndex){g_slideshowStartLastIdx=true;}}
g_curpageoffset['celist']++;reloadContent();}
function figureOutPagination(r){var pagdiv=CE.CEU.$('cepagination');CE.rac(pagdiv);CE.rCN(pagdiv,'hidden');var numPerPage=CE.CEUI.g_isSlideAlb?NPERPAGE_SLIDEALB:NPERPAGE;var info=CE.CEI.calcPagination(r,numPerPage);if(info){var a;if(info.prev){a=CE.dca({onEvent:doPrevLink},'ceprevlnk','cepage-link-p');a.appendChild(CE.STRTAB.lookupel('view.prev'));pagdiv.appendChild(a);}
pagdiv.appendChild(CE.dca({onEvent:doPageLink,'po':0},'cefirstlnk','hidden'));pagdiv.appendChild(CE.dca({onEvent:doPageLink,'po':info.totalPages-1},'celastlnk','hidden'));for(var i=0;i<info.pages.length;++i){if(info.pages[i]==info.curPage){a=CE.dce('span',null,'cepage-link');}else{a=CE.dca({onEvent:doPageLink,'po':info.pages[i]},null,'cepage-link');}
a.appendChild(CE.dctn(''+(info.pages[i]+1)));pagdiv.appendChild(a);}
if(info.next){a=CE.dca({onEvent:doNextLink},'cenextlnk','cepage-link-n');a.appendChild(CE.STRTAB.lookupel('view.next'));pagdiv.appendChild(a);}}
return info;}
this.isNothingAvailable=function(){return(!CE.hCN('ceempty','hidden')&&(!CE.hCN('albumdriveerror','hidden')||!CE.hCN('driveerror','hidden')||!CE.hCN('drives','hidden')||!CE.hCN('drives-pppc','hidden')));}
function updateSortCriteria(sortcrit,skipsel,skipprefs,skiprl){g_sortcrit=sortcrit;CE.CEI.g_searchResults['celist']=null;if(!g_cursearch&&!skipprefs){updateUserViewPrefs();}
if(!skiprl){reloadContent();}}
function onSortHeaderClick(e){switch(e.sortcrit){case'name':if(g_sortcrit=="+name"){updateSortCriteria("-name");}else{updateSortCriteria("+name");}
break;case'size':if(g_sortcrit=="+size"){updateSortCriteria("-size");}else{updateSortCriteria("+size");}
break;case'date':if(g_sortcrit=="+mtime"){updateSortCriteria("-mtime");}else{updateSortCriteria("+mtime");}
break;case'type':if(g_sortcrit=="+mimetype"){updateSortCriteria("-mimetype");}else{updateSortCriteria("+mimetype");}
break;}}
function addSortHeader(td,field,val,upval,dnval){if(!g_sortable){(td.appendChild(CE.dce('span'))).appendChild(CE.dctn(field));}else{if(val){var a=CE.dca({onEvent:onSortHeaderClick,sortcrit:val});a.appendChild(CE.dctn(field));td.appendChild(a);if(g_sortcrit==upval){td.appendChild(CE.dci(CE.STRTAB.lookup("imgbase")+"up.png",null,"cesortarrow"));}else if(g_sortcrit==dnval){td.appendChild(CE.dci(CE.STRTAB.lookup("imgbase")+"dn.png",null,"cesortarrow"));}}else{(td.appendChild(CE.dce('span'))).appendChild(CE.dctn(field));}}}
this.populateContentWithSlideshow=function(el,files,go,fullwin,startPaused,trueImgOnly,startIndex,isSlideAlb,hideControls){if(g_slideshowStartPlaying)
startPaused=false;g_slideshowStartPlaying=false;var data={};var selItem=0;var lastIndex=0;for(var i=0;i<files.length;++i){var nf=files[i];var svc=CE.CEI.getCurSvc(nf);var urlPrefix=CE.CEI.getDataStreamPrefix(nf);var thumb=CE.CEI.getFileThumbnail(nf,"?fixed");var thumbUrl=thumb.url;var thumbShare=null;var imageUrl;var fullResImageUrl=null;if(CE.CEU.isImageFile(nf)){fullResImageUrl=urlPrefix+nf.fileid+"/"+encodeURIComponent(nf.name);if(nf.preview&&(!fullwin||CE.CEI.getOption('lanhighres')!='1'||!svc||svc.onlan!='1'))
imageUrl=urlPrefix+nf.preview+"/"+encodeURIComponent(nf.name);else
imageUrl=fullResImageUrl;if(fullResImageUrl==imageUrl)
fullResImageUrl=null;}else if(!nf.thumbnail){if(CE.CEI.isDescendableFile(nf)){imageUrl=thumbUrl+"&"+Math.floor(Math.random()*1000)+"&f="+encodeURIComponent(nf.name);}else if(nf.mimetype&&CE.MIME_NAME_MAP[nf.mimetype]){imageUrl=CE.STRTAB.lookup("imgbase")+CE.MIME_NAME_MAP[nf.mimetype][1]+"?"+Math.floor(Math.random()*1000)+"&f="+encodeURIComponent(nf.name);}else{imageUrl=CE.STRTAB.lookup("imgbase")+"page.png?"+Math.floor(Math.random()*1000)+"&f="+encodeURIComponent(nf.name);}}else{imageUrl=urlPrefix+nf.thumbnail+"/"+encodeURIComponent(nf.name);}
if(that.g_lastRename&&that.g_lastRename==nf.name)
selItem=i;var extraIcon=null;var dispFunc=null;if(CE.CEUI.isVideoFile(nf)){dispFunc=showMediaInSlideshow;imageUrl=CE.STRTAB.lookup("imgbase")+"blank.gif?"+Math.floor(Math.random()*1000)+"&f="+encodeURIComponent(nf.name);}else if(CE.CEUI.isAudioFile(nf)){dispFunc=showMediaInSlideshow;}
var co={onAction:onActionContent,onDisplay:dispFunc,id:nf.fileid,go:go,name:nf.name,file:nf}
var dirFunc=null;if(CE.CEI.isDescendableFile(nf))
dirFunc=function(cof){CE.CEUI.onEventContent(cof,{'type':'click'});};fullResImageUrl=null;var caption=CE.CEI.getDispFn(nf);if(CE.CEUI.isMusicListing()&&nf.properties&&nf.properties.title)
caption=nf.properties.title;var actions=CE.CEUI.getActionTypesForFile(nf,isSlideAlb);var hasRename=(actions.indexOf('rename')!=-1);var hasEdit=hasTrashAction(actions);var hasDownload=(actions.indexOf('download')!=-1);var hasPrint=(actions.indexOf('print')!=-1);var hasShare=(actions.indexOf('share')!=-1);if(nf.cachepad){if(imageUrl){imageUrl+=(imageUrl.indexOf('?')==-1)?'?':'&';imageUrl+=nf.cachepad;}
if(thumbUrl){thumbUrl+=(thumbUrl.indexOf('?')==-1)?'?':'&';thumbUrl+=nf.cachepad;}}
data[imageUrl]={fullres:fullResImageUrl,'caption':caption,thumbnail:thumbUrl,thumbnailFolder:thumb.folder,thumbnailShare:thumbShare,extraaction:co,hasshare:hasShare,hasdownload:hasDownload,hasprint:hasPrint,hasedit:hasEdit,hasrename:hasRename,dirfunc:dirFunc,extraicon:extraIcon,trueimg:CE.CEU.isImageFile(nf)};if(!trueImgOnly||data[imageUrl].trueimg)
lastIndex=i;}
var width=el.offsetWidth;var height=el.offsetHeight-110;var thumbPos=null;var showDiv=CE.dce('div',"show_div",'');if(!fullwin){el.appendChild(showDiv);}else{var nextsib=CE.CEU.$('cetools_fullscreenprev');nextsib.parentNode.insertBefore(showDiv,nextsib);width=window.innerWidth?window.innerWidth:((document.documentElement&&document.documentElement.clientWidth)?document.documentElement.clientWidth:document.body.clientWidth);height=window.innerHeight?window.innerHeight:((document.documentElement&&document.documentElement.clientHeight)?document.documentElement.clientHeight:document.body.clientHeight);thumbPos={'top':(height-160)+'px','left':'47px','width':(width-94)+'px','height':'115px'};CE.aCN(document.body,'cefullwinslid');CE.rCN('cetools_fullscreenprev','hidden');}
if(startIndex)
selItem=startIndex;if(g_slideshowStartLastIdx){selItem=lastIndex;g_slideshowStartLastIdx=false;}
g_slideshowObj=new Slideshow('show_div',data,{loader:null,slide:selItem,controller:true,extracontrol:false,'width':width,'height':height,thumbnails:true,thumbsize:50,overlap:false,resize:'length',thumbclass:'thumbnails-extra',canedit:true,canshare:true,thumbpos:thumbPos,thumbfade:fullwin,paused:startPaused?true:false,trueimgonly:trueImgOnly,hidecontrols:hideControls,loadedcb:function(f){return onSlideLoaded(f,fullwin);}});that.g_lastRename=null;if(g_slideshowStartFullscreen){g_slideshowStartFullscreen=false;that.showFullScreenPreview();}
if(fullwin){showDiv.style.position='fixed';showDiv.style.top='0px';showDiv.style.left='0px';showDiv.style.width=width+'px';showDiv.style.height=height+'px';showDiv.style.background='#000000';}};this.closeFullscreenSlideshow=function(){if(that.g_curalbum&&that.g_curalbum.ownerid==CE.CEU.user.userid){g_slideAlbMode='edit';CE.CEUI.reloadContentCWD();}else if(that.g_curalbum&&that.g_curalbum.ownerid!=CE.CEU.user.userid){CE.CEUI.showSharedFolders('collab','celist',null,null,true);}else{CE.CEUI.reloadContentCWD();}
return false;};this.closeFullscreenPreview=function(){if(!CE.CEU.isLoggedIn()&&that.g_curalbum&&that.g_curalbum.albumtype==CE.FILE_TYPE_SLIDEALBUM){bcFlush();CE.CEUI.clearContent('celist');var falb=CE.CEU.shallowCopy(that.g_curalbum);falb.fileid='-1';falb.type=CE.FILE_TYPE_SLIDEALBUM;falb.album=that.g_curalbum;var go={viewmode:CE.CEI.g_viewmode,'grd':'celist',actions:true,noresort:true};populateContent({'files':[falb],'totalcount':1,'pageoffset':0},go);}else{CE.CEUI.reloadContentCWD();}};this.showFullScreenPreview=function(){var files=g_curpage['celist'];var curIndex=0;var paused=true;if(g_slideshowObj){curIndex=g_slideshowObj.getCurSlide();paused=g_slideshowObj.isPaused();}
CE.aCN('cebuttons_preview','hidden');CE.rCN('cebcdiv','hidden');CE.CEUI.clearContent('celist',true);var celist=CE.CEU.$('celist');var slideDiv=CE.dce('div');var winHeight=window.innerHeight||((document.documentElement&&document.documentElement.clientHeight)?document.documentElement.clientHeight:document.body.clientHeight);slideDiv.style.width='100%';slideDiv.style.height=(winHeight-CE.CEU.getAbsPos(CE.CEU.$('cecontent')).y-64)+'px';slideDiv.style.paddingTop='5px';celist.appendChild(slideDiv);CE.CEUI.populateContentWithSlideshow(slideDiv,files,null,true,paused,true,curIndex);};this.showSlideshowHere=function(){var chooseTimelines=(CE.CEUI.isTopLevelFilteredListing()&&g_cursearch=='cesearch_imagetime');var tmpshow=new TempSlideshowWizard(chooseTimelines);tmpshow.show();};this.showFullResSlide=function(){CE.aCN('cetool_showfullres_but','hidden');CE.rac('cetool_showfullres_ani');if(g_slideshowObj&&!g_slideshowObj.isPaused())
g_slideshowObj.pause(1);var div=CE.getByClass(CE.$('show_div'),'div','slideshow-images');if(!div.length)
return;var imgs=div[0].getElementsByTagName('img');if(!imgs||!imgs.length)
return;var img;for(var i=0;i<imgs.length;++i){if(imgs[i].style.visibility=='visible'){img=imgs[i];break;}}
if(!img)
return;var ani=CE.$('cetool_showfullres_ani').appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));var tmpImg=CE.dci();tmpImg.onload=loadComplete;var fullUrl=CE.CEI.getDataStreamPrefix(g_slideshowCurFile)+g_slideshowCurFile.fileid+'/'+encodeURIComponent(g_slideshowCurFile.name);tmpImg.src=fullUrl;function loadComplete(){if(img&&img.parentNode&&img.style.visibility=='visible'&&ani&&ani.parentNode){img.src=fullUrl;CE.rac('cetool_showfullres_ani');}}};this.printCurSlide=function(){var docprev=new DocumentPreview(g_slideshowCurFile);docprev.print();return false;};this.downloadSlide=function(){downloadfile(g_slideshowCurFile);return false;};this.getSlideLink=function(){if(g_slideshowObj&&!g_slideshowObj.isPaused())
g_slideshowObj.pause(1);showLinkDlg({'album':CE.CEUI.findShare(g_slideshowCurFile),'file':g_slideshowCurFile,'cb':function(){onSlideLoaded(g_slideshowCurFile,CE.hCN(document.body,'cefullwinslid'));}});};function onSlideLoaded(file,fullwin){g_slideshowCurFile=file;var gid=CE.CEI.getGid('celist',file.fileid,file);CE.CEI.g_selfiles['celist']={gid:file};if(!fullwin){var perminf={};canDoEditTypeActions(file,perminf);var lnk=CE.CEI.g_lnkmap[CE.CEI.getShareId(file)];if(lnk){CE.rac('cetool_socialbuts');showSocialButtons($('cetool_socialbuts'),file,CE.CEI.getCurSvc(file),lnk.url);}
CE.mCN('cetool_dlslide','hidden',perminf.perms=='2');CE.mCN('cetool_shareslide','hidden',!CE.CEI.isOwnedFile(file));CE.mCN('cetool_printslide','hidden',CE.CEUI.getActionTypesForFile(file).indexOf('print')==-1);CE.mCN('cetool_socialbuts','hidden',!lnk);}else{var hideFullRes=(!CE.CEU.isImageFile(g_slideshowCurFile)||!g_slideshowCurFile.preview)
if(!hideFullRes){var svc=CE.CEI.getCurSvc(g_slideshowCurFile);hideFullRes=(CE.CEI.getOption('lanhighres')=='1'&&svc&&svc.onlan=='1');}
CE.rac('cetool_showfullres_ani');CE.mCN('cetool_showfullres','hidden',hideFullRes);CE.mCN('cetool_showfullres_but','hidden',hideFullRes);}}
function Htm5AudioPlayer(){var m_audio;this.play=function(url){if(url){m_audio.src=url;m_audio.load();}else{m_audio.play();}};this.clear=function(){m_audio.src='';m_audio.load();};this.getDuration=function(){return(!isNaN(m_audio.duration))?m_audio.duration:0;};this.isEnded=function(){return m_audio.ended;};this.getPosition=function(){return(!isNaN(m_audio.currentTime))?m_audio.currentTime:0;};this.setPosition=function(posSec){return m_audio.currentTime=posSec;};this.isPaused=function(){return m_audio.paused;};this.pause=function(){return m_audio.pause();};this.getVolume=function(){return m_audio.volume;};this.setVolume=function(fraction){return m_audio.volume=fraction;};this.isMuted=function(){return m_audio.muted;};this.setMuted=function(muted){return m_audio.muted=muted;};this.setOnTrackStart=function(cb){m_audio.addEventListener('play',cb,false);};this.setOnTrackFinish=function(cb){m_audio.addEventListener('ended',cb,false);};this.setOnPause=function(cb){m_audio.addEventListener('pause',cb,false);};this.init=function(cbReady){m_audio=document.body.appendChild(CE.dce('audio'));m_audio.addEventListener('canplay',function(){m_audio.play();},false);if(cbReady)
cbReady();};}
function FlashAudioPlayer(){var that=this;var m_pausedCb,m_startCb,m_finishCb;var m_muted=false;var m_volume=100;var m_paused=false;var m_ended=false;var m_hasTrack=false;this.play=function(url){if(url){var playlist='<playlist><item><title>-</title><filename>'+CE.CEU.xmlEncode(url)+'</filename></item></playlist>';CE.CEU.poll(200,function(){return wimpy_amReady_ask()},function(){m_hasTrack=true;wimpy_clearPlaylist();wimpy_appendPlaylist(playlist,false);wimpy_gotoTrack(0);});}else if(!m_hasTrack){return;}
m_paused=false;wimpy_play();if(!url){m_paused=false;m_ended=false;if(m_pausedCb)
m_pausedCb();}};this.clear=function(){if(m_hasTrack)
that.pause();m_hasTrack=false;wimpy_clearPlaylist();};this.getDuration=function(){if(!m_hasTrack)
return 0;var state=wimpy_getPlayerState();if(!state||!state.duration)
return 0;else
return parseInt(state.duration/1000);};this.isEnded=function(){return m_ended;};this.getPosition=function(){if(!m_hasTrack)
return 0;var pos=wimpy_getPlayheadSeconds();return(!isNaN(pos))?pos:0;};this.setPosition=function(posSec){wimpy_setPlayheadSeconds(posSec);};this.isPaused=function(){return m_paused;};this.pause=function(){m_paused=true;wimpy_pause();if(m_pausedCb)
m_pausedCb();};this.getVolume=function(){return m_volume/100.0;};this.setVolume=function(fraction){m_volume=parseInt(fraction*100);wimpy_setVolume(m_volume);};this.isMuted=function(){return m_muted;};this.setMuted=function(muted){m_muted=muted;wimpy_setMuteState(muted?'on':'off');};this.setOnTrackStart=function(cb){m_startCb=cb;};this.setOnTrackFinish=function(cb){m_finishCb=cb;};this.setOnPause=function(cb){m_pausedCb=cb;};this.init=function(cbReady){var regCode='NjZSVFlUUCUyQ2YlN0ZVNXolM0M4JTdCciUzQm93NzdRMjFKbyU4MVElMjlO';if(document.domain.toLowerCase().indexOf('cloudengines.com')!=-1)
regCode='NDYyV1plMllyJTdFSE0lM0FiN0YlM0IlNDBMUSU3QjFSRCUzQUV5Y1NhUCU1RVFRJTdC';document.body.appendChild(CE.dce('div','cehiddenwimp'));var wimpyPlayer=new Object();wimpyPlayer.wimpySwf=CE.STRTAB.lookup('wimpydir')+'rave.swf';wimpyPlayer.wimpyWidth=1;wimpyPlayer.wimpyHeight=1;wimpyPlayer.wimpyReg=regCode;wimpyPlayer.wimpySkin=CE.STRTAB.lookup('wimpydir')+'skins/tray-player/skin_tray-player-smalltray.xml';wimpyPlayer.startPlayingOnload='yes';wimpyPlayer.autoAdvance='no';wimpyPlayer.setAspectRatio='maintain';makeWimpyPlayer(wimpyPlayer,'cehiddenwimp',null,'wimpy');wimpy_setTrackStartedCb(function(){m_paused=false;m_ended=false;if(m_startCb)
m_startCb();});wimpy_setTrackDoneCb(function(){m_ended=true;if(m_finishCb)
m_finishCb();});CE.CEU.poll(200,function(){return wimpy_amReady_ask()},function(){if(cbReady)
cbReady();});};}
function AudioPlayerUi(){var that=this;var m_playlist=[];var m_index=0;var m_player=null;var m_parent,m_controls,m_art,m_artImg,m_artInf,m_butPause,m_butMute,m_posNib,m_volNib;var m_elapsed,m_duration,m_tracks;var m_hideArt=false;var m_dragCtrl=null;var m_mouseStartX=0;var m_posStartX=0;var m_updateTimer=null;function onDragStart(evt,d)
{if((d.ctrl==m_posNib)&&m_player.getDuration()==0)
return;m_dragCtrl=d.ctrl;if((!evt.which||evt.which==1)&&(!evt.button||evt.button==1)){m_posStartX=m_dragCtrl.offsetLeft;m_mouseStartX=evt.clientX;CE.CEUI.addMouseHandler(onDragMove);m_dragCtrl.ondragstart=function(){return false;};document.onselectstart=function(){return false;};m_dragCtrl.focus();}}
this.onDragStop=function()
{if(m_dragCtrl){CE.CEUI.removeMouseHandler(onDragMove);document.onselectstart=null;m_dragCtrl.focus();m_dragCtrl=null;updatePos();return true;}else{return false;}}
function onDragMove(evt)
{if(!evt)evt=window.event;var newX=m_posStartX+(evt.clientX-m_mouseStartX);if(newX<0)
newX=0;if(newX>(m_dragCtrl.parentNode.offsetWidth-2-m_dragCtrl.offsetWidth))
newX=m_dragCtrl.parentNode.offsetWidth-2-m_dragCtrl.offsetWidth;m_dragCtrl.style.left=newX+'px';m_dragCtrl.focus();var fraction=newX/(m_dragCtrl.parentNode.offsetWidth-2-m_dragCtrl.offsetWidth);var type='';if((m_dragCtrl==m_posNib)&&m_player.getDuration()!=0){type='time';}else if(m_dragCtrl==m_volNib){type='vol';}
if(m_updateTimer){clearTimeout(m_updateTimer);m_updateTimer=null;}
m_updateTimer=setTimeout(function(){if(type=='time'){m_player.setPosition(parseInt(m_player.getDuration()*fraction));}else if(type=='vol'){m_player.setVolume(fraction);CE.CEI.setOption('music_vol',fraction);}},200);}
function updatePos(){CE.rac(m_elapsed);CE.rac(m_duration);var position=m_player.getPosition();var duration=m_player.getDuration();if(duration!=0){var fmtc=(position>=(60*60))?'h:MM:ss':'MM:ss';var fmt=(duration>=(60*60))?'h:MM:ss':'MM:ss';var pos=position/duration;var time=new Date(2010,0,1,0,0,parseInt(position));var dur=new Date(2010,0,1,0,0,parseInt(duration));try{m_elapsed.appendChild(CE.dctn(time.format(fmtc)));}catch(e){}
try{m_duration.appendChild(CE.dctn(dur.format(fmt)));}catch(e){}
if(m_dragCtrl!=m_posNib){m_posNib.style.left=parseInt(((m_posNib.parentNode.offsetWidth-2)-m_posNib.offsetWidth)*pos)+'px';m_posNib.title=CE.STRTAB.lookup('view.audio.pos',time.format(fmtc));m_posNib.parentNode.title=m_posNib.title;}}
if(m_dragCtrl!=m_volNib){m_volNib.style.left=parseInt(((m_volNib.parentNode.offsetWidth-2)-m_volNib.offsetWidth)*m_player.getVolume())+'px';CE.mCN(m_butMute,'on',m_player.isMuted());m_volNib.title=CE.STRTAB.lookup('view.audio.vol',parseInt(m_player.getVolume()*100));m_volNib.parentNode.title=m_volNib.title;}}
function updateDisplay(){if(m_player.isPaused()||m_player.isEnded()){CE.aCN(m_butPause,'play');CE.rCN(m_butPause,'pause');CE.aCN(m_art,'paused');}else{CE.aCN(m_butPause,'pause');CE.rCN(m_butPause,'play');CE.rCN(m_art,'paused');}
CE.mCN(m_art,'hidden',(m_player.isEnded()||m_hideArt||!m_playlist.length));if(CE.hCN(m_art,'hidden'))CE.aCN(m_tracks,'hidden');updatePos();}
function updateTrackInfo(){var tnurl,file;if(m_index>=0&&m_index<m_playlist.length){file=m_playlist[m_index].file;tnurl=CE.CEI.getFileThumbnail(m_playlist[m_index].file).url;var props=file.properties||{};var title=props.title||file.name||file.filename;CE.rac(m_artInf);m_artInf.appendChild(CE.STRTAB.lookupel('view.audio.nowpl',title));var sel=CE.getByClass(m_tracks,'div','selected');if(sel.length)CE.rCN(sel[0],'selected');var track=CE.$('cemusicpanel_track_'+m_index);if(track){CE.aCN(track,'selected');if(track.offsetTop<m_tracks.scrollTop)
m_tracks.scrollTop=track.offsetTop;else if((track.offsetTop+track.offsetHeight)>(m_tracks.scrollTop+m_tracks.offsetHeight))
m_tracks.scrollTop=track.offsetTop+track.offsetHeight-m_tracks.offsetHeight;}}
if(file&&file.thumbnail){m_artImg.src=tnurl;}else{m_artImg.src=CE.STRTAB.lookup('imgbase')+'folder-album.png';}}
function updateTrackListing(){CE.rac(m_tracks);for(var i=0;i<m_playlist.length;++i){var file=m_playlist[i].file;var props=file.properties||{};var title=props.title||file.name||file.filename;var div=m_tracks.appendChild(CE.dce('div','cemusicpanel_track_'+i,'track'))
var removeBut=div.appendChild(CE.dce('div',null,'remove'));removeBut.title=CE.STRTAB.lookup('view.hint.remove');div.appendChild(CE.dctn(title));(function(i){removeBut.onclick=function(e){removeTrack(i);};div.onclick=function(e){that.play(i);};})(i);}}
function removeTrack(i){m_playlist.splice(i,1);CE.mCN(m_parent,'disabled',!m_playlist.length);if(!m_playlist.length){CE.aCN(m_tracks,'hidden');CE.aCN(m_art,'hidden');}
var startPlay=false;if(m_index==i){startPlay=that.isPlaying();if(m_index>=m_playlist.length)
m_index=0;}else if(m_index>i){--m_index;}
updateTrackListing();updateTrackInfo();if(!m_playlist.length){m_player.clear();}
if(that.isPlaying()&&!m_playlist.length)
that.pause();else if(startPlay)
that.play(m_index);}
function prev(evt){if(m_playlist.length>0){--m_index;if(m_index<0)
m_index=0;m_player.play(m_playlist[m_index].filename);m_hideArt=false;updateTrackInfo();}}
function next(evt){updateDisplay();if(m_playlist.length>0){++m_index;if(m_index>=m_playlist.length){m_index=0;if(!evt||!evt.force)
return;}
m_player.play(m_playlist[m_index].filename);m_hideArt=false;updateTrackInfo();}}
function mute(){var cur=CE.hCN(m_butMute,'on');CE.mCN(m_butMute,'on',!cur);m_player.setMuted(!cur);}
function onShuffle(evt){m_playlist.sort(function(){return 0.5-Math.random()});updateTrackListing();that.play(0);}
this.getCurFile=function(){if(m_player.isEnded()||!m_playlist.length){return null;}else{return m_playlist[m_index].file;}};this.refreshCurFile=function(){var idx=m_index;if(idx<m_playlist.length){var plf=m_playlist[idx];var svc=CE.CEI.getCurSvc(plf.file);CE.CEU.svc.asyncRPC('POST','getFile',['deviceid',svc.deviceid,'serviceid',svc.serviceid,'fileid',plf.file.fileid],function(r){plf.file=r.file;if(idx==m_index){if(plf.file&&plf.file.thumbnail){m_artImg.src=CE.CEI.getFileThumbnail(plf.file).url;}else{m_artImg.src=CE.STRTAB.lookup('imgbase')+'folder-album.png';}}});}};this.isPlaying=function(){return(m_playlist.length&&!m_player.isPaused()&&!m_player.isEnded());};this.pause=function(evt){if((m_player.isPaused()||m_player.isEnded())&&(!evt||!evt.force)){m_player.play();m_hideArt=false;updateDisplay();}else{m_player.pause();}};this.queue=function(playlist){m_playlist=playlist;CE.mCN(m_parent,'disabled',!m_playlist.length);if(!m_playlist.length){CE.aCN(m_tracks,'hidden');CE.aCN(m_art,'hidden');}
updateTrackListing();};this.appendQueue=function(moreTracks){m_playlist=m_playlist.concat(moreTracks);CE.mCN(m_parent,'disabled',!m_playlist.length);if(m_playlist.length&&m_playlist.length==moreTracks.length){that.play(0);}
updateTrackListing();updateTrackInfo();};this.play=function(trackIndex){if(typeof(trackIndex)!='undefined'&&m_playlist.length>trackIndex){m_index=trackIndex;m_player.play(m_playlist[m_index].filename);m_hideArt=false;updateTrackInfo();updateDisplay();}else{m_player.play();m_hideArt=false;updateDisplay();}};this.show=function(parent){m_parent=parent;CE.aCN(m_parent,'disabled');m_controls=m_parent.appendChild(CE.dce('div',null,'audio_tray_controls'));var buttons=m_controls.appendChild(CE.dce('div',null,'buttons'));var butPrev=buttons.appendChild(CE.dce('div',null,'but prev'));butPrev.title=CE.STRTAB.lookup('view.audio.prev');butPrev.onclick=prev;var butNext=buttons.appendChild(CE.dce('div',null,'but next'));butNext.title=CE.STRTAB.lookup('view.audio.next');butNext.onclick=function(){next({force:true});};m_butPause=buttons.appendChild(CE.dce('div',null,'but pause'));m_butPause.title=CE.STRTAB.lookup('view.audio.pause');m_butPause.onclick=that.pause;var posSlider=m_controls.appendChild(CE.dce('div',null,'pos_slider'));m_posNib=posSlider.appendChild(CE.dce('div',null,'pos_nib'));m_posNib.onmousedown=function(e){onDragStart(e,{ctrl:m_posNib});};m_posNib.onmouseup=that.onDragStop;var volSlider=m_controls.appendChild(CE.dce('div',null,'vol_slider'));m_volNib=volSlider.appendChild(CE.dce('div',null,'vol_nib'));m_volNib.onmousedown=function(e){onDragStart(e,{ctrl:m_volNib});};m_volNib.onmouseup=that.onDragStop;m_butMute=m_controls.appendChild(CE.dce('div',null,'mute'));m_butMute.title=CE.STRTAB.lookup('view.audio.mute');m_butMute.onclick=mute;m_elapsed=m_controls.appendChild(CE.dce('div',null,'elapsed'));m_duration=m_controls.appendChild(CE.dce('div',null,'duration'));m_art=CE.$('audioplayer_art');m_artImg=CE.$('audioplayer_art_img');m_artInf=CE.$('audioplayer_nowinfo');m_tracks=m_art.appendChild(CE.dce('div',null,'ceaudiotracks hidden'));CE.CEU.attachEvent(CE.$('audioplayer_nowinfo_div'),'click',{onEvent:function(){CE.mCN(m_tracks,'hidden',!CE.hCN(m_tracks,'hidden'));}});CE.CEU.attachEvent(m_artImg,'click',{onEvent:function(){CE.mCN(m_tracks,'hidden',!CE.hCN(m_tracks,'hidden'));}});CE.CEU.attachEvent(CE.$('audioplayer_nowinfo_close'),'click',{onEvent:function(){m_hideArt=true;updateDisplay();}});if(hasHtml5Audio()){m_player=new Htm5AudioPlayer();}else{m_player=new FlashAudioPlayer();}
m_player.init(function(){if(CE.CEI.getOption('music_vol')){m_player.setVolume(parseFloat(CE.CEI.getOption('music_vol')));}});m_player.setOnPause(updateDisplay);m_player.setOnTrackStart(updateDisplay);m_player.setOnTrackFinish(next);setInterval(updatePos,500);CE.rCN(m_parent,'hidden');CE.mCN(m_art,'hidden',!that.isPlaying());if(!that.isPlaying())CE.aCN(m_tracks,'hidden');CE.aCN('cepage','bottompad');};function hasHtml5Audio(){if(CE.CEI.getOption('disablehtml5audio')=='1')
return false;var a=document.createElement('audio');if(a&&a.canPlayType){var can=a.canPlayType('audio/mp3');if(can=='probably'||can=='maybe')
return true;can=a.canPlayType('audio/mpeg');if(can=='probably'||can=='maybe')
return true;}
return false;}}
function playAudioFiles(files,curFile,appendQueue){var fileNum=0;var playlistArray=[];var trackIndex=0;for(var i=0;i<files.length;++i){nf=files[i];if(!CE.CEUI.isAudioFile(nf))
continue;if(curFile==i)
trackIndex=fileNum;++fileNum;var urlPrefix=CE.CEI.getDataStreamPrefix(nf);var mediaUrl=urlPrefix+nf.fileid+"/"+encodeURIComponent(nf.name);var thumbUrl='';if(nf.thumbnail)
thumbUrl=urlPrefix+nf.thumbnail+"/"+encodeURIComponent(nf.name);else if(nf.preview)
thumbUrl=urlPrefix+nf.preview+"/"+encodeURIComponent(nf.name);playlistArray.push({title:CE.CEU.padInt(fileNum,5)+' '+CE.CEI.getDispFn(nf),file:nf,filename:mediaUrl,image:thumbUrl});}
if(!g_audioPlayer){CE.rCN('audioplayer','hidden');g_audioPlayer=new AudioPlayerUi();g_audioPlayer.show(CE.$('audioplayer'));}
if(appendQueue){g_audioPlayer.appendQueue(playlistArray);}else{g_audioPlayer.queue(playlistArray);g_audioPlayer.play(trackIndex);}}
this.pauseAudio=function(){if(g_audioPlayer){g_audioPlayer.pause({force:true});}};this.playAudioGroup=function(d,appendQueue){if(CE.CEUI.isAudioFile(d.file)){playAudioFiles([d.file],0,appendQueue);}else{CE.CEU.showLoadingAni(true);var go={grd:'ceplaytmp'};CE.CEI.reloadSearchContent(go,0,'+name',NPERPAGE,d.file,null,null,function(r){var groupedFiles={};var artistNames=[];var albumArt={};normalizeSongListing(groupedFiles,artistNames,albumArt,r.files);var files=[];for(var iArtist=0;iArtist<artistNames.length;++iArtist){var artist=groupedFiles[artistNames[iArtist].toLowerCase()];var albumNames=[];for(var albName in artist)
albumNames.push(albName);albumNames.sort(function(l,r){if(l==r)return 0;if(l==CE.STRTAB.lookup('music.album.unknown'))return-1;return natcompare(l.toLowerCase(),r.toLowerCase());});for(var iAlbum=0;iAlbum<albumNames.length;++iAlbum){var album=artist[albumNames[iAlbum]];for(var iTrack=0;iTrack<album.length;++iTrack){if(album[iTrack].isPremium)
files.push(album[iTrack]);}}}
playAudioFiles(files,0,appendQueue);CE.CEU.showLoadingAni(false);});}}
function getLivestreamInfo(file){var formats=CE.CEUI.hasVideoSupport();if(file.livestream&&file.livestream!=''&&formats.indexOf('m3u8')!=-1){return{id:file.livestream,type:'html5'};}
if(file.flvstream&&file.flvstream!=''&&formats.indexOf('flash')!=-1){return{id:file.flvstream,type:'flash'};}
return{id:null,type:'none'};}
function getLivestream(file){return getLivestreamInfo(file).id;}
function hasFullStream(file){return((file.stream||getLivestream(file))&&(!file.streamtype||file.streamtype=='full'||file.streamtype==''));}
function promptTranscode(file,svc,markOrig,showProgressDlg,cbSuccess,cbCancel){var alreadyGoing=false;for(var i=0;i<g_mediaCurrtasks.length;++i){var cur=g_mediaCurrtasks[i];if(cur.task&&cur.task.taskdata&&cur.task.taskdata.fileid==file.fileid){alreadyGoing=true;break;}}
if(alreadyGoing||file.stream_generating){nextStep();return;}
var remChoice=CE.CEI.getOption('genstrm_choice');if(remChoice||file.stream_orig){doIt(remChoice||'n',false);}else if(file.stream_live){doIt('l',false);}else{var div=CE.dce('div');(div.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('video.ondemand.msg'));var buttons=div.appendChild(CE.dce('div',null,'extramarginbottom'));(buttons.appendChild(CE.dca({onEvent:function(){doIt('c',check.checked);dlg.hide();}},null,'ceredbut'))).appendChild(CE.STRTAB.lookupel('ceui.cancel'));(buttons.appendChild(CE.dca({onEvent:function(){doIt('y',check.checked);dlg.hide();}},null,'ceredbut cerightfloat'))).appendChild(CE.STRTAB.lookupel('video.ondemand.butgen'));var checkDiv=div.appendChild(CE.dce('div',null,'extramarginbottom'));var check=checkDiv.appendChild(CE.dcc('remsel','cecheck'));(checkDiv.appendChild(CE.dcl('remsel'))).appendChild(CE.STRTAB.lookupel('video.ondemand.rem'));((div.appendChild(CE.dce('div',null,'cedlgbotlnk'))).appendChild(CE.dca({onEvent:function(){window.location.replace('settings#jd0hZpEM3gX6kc5lEJnm');return false;}},null,'cesmall'))).appendChild(CE.STRTAB.lookupel('video.ondemand.mediasettings'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('video.ondemand.title'),div,null,null,true,'CEUDialog_wide1');dlg.show();}
function doIt(choice,remember){if(remember&&choice!='c')
CE.CEI.setOption('genstrm_choice',choice);if(choice=='c'){cbCancel();}else if(choice=='n'){if(markOrig)
file.stream_orig=true;cbSuccess(file.fileid);}else{if(svc.xcodeFeat=='xcode2'){if(markOrig)
file.stream_live=true;cbSuccess(getLivestream(file));}else{CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','addQueue','deviceid',svc.deviceid,'serviceid',svc.serviceid,'fileid',file.fileid,'tasktype','stream','priority','-999'],nextStep,CE.CEI.onGenericFailure);}}}
function nextStep(){if(showProgressDlg){showProgress();}else{file.stream_generating=true;cbSuccess();}}
function showProgress(){var div=CE.dce('div');(div.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('video.generating.msg'));var progressBar=div.appendChild(CE.dce('div',null,'ceprogressbar'));var progress=progressBar.appendChild(CE.dce('div',null,'ceprogress'));((div.appendChild(CE.dce('div',null,'extramargintop'))).appendChild(CE.dca({onEvent:function(){dlg.hide();dlg=null;}},null,'ceredbut'))).appendChild(CE.STRTAB.lookupel('video.generating.hide'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('video.generating.title'),div,null,null,true);dlg.show();updateTranscodeProgress(svc,file,progressBar,progress,cbSuccess);}}
function updateTranscodeProgress(svc,file,progressBar,progress,cbSuccess){var percent=0;function updateProgress(){setTimeout(function(){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','listQueue','deviceid',svc.deviceid],function(r){if(!progressBar.parentNode)
return;if(!r||!r.currtask||!r.currtask.taskdata||r.currtask.taskdata.fileid!=file.fileid){if(percent){checkFile();}}else{percent=parseInt(r.currtask.taskdata.progress||'0');progress.style.width=percent+'%';updateProgress();}
function checkFile(){CE.CEU.svc.asyncRPC('POST','getFile',['deviceid',svc.deviceid,'serviceid',svc.serviceid,'fileid',file.fileid],function(r){if(hasFullStream(r.file)){file.stream=r.file.stream;file.streamtype=r.file.streamtype;cbSuccess(r.file.stream);}else{updateProgress();}},CE.CEI.onGenericFailure);}},CE.CEI.onGenericFailure);},2000);}
updateProgress();}
function authPlayMedia(svc,file,silent){var isAudio=CE.CEUI.isAudioFile(file);if(svc&&svc.device&&svc.device.authorized=='0'&&(!isAudio||svc.onlan!='1')){if(!silent){var typ=isAudio?'aud':'vid';var content=CE.dce('div',null,'cepcdldlg small');var msgDiv=content.appendChild(CE.dce('div'));msgDiv.appendChild(CE.STRTAB.lookupelh('pppc.unauth.'+typ+'.msg.html'));var butDiv=content.appendChild(CE.dce('div',null,'buts'));(butDiv.appendChild(CE.dca({onEvent:function(){dlg.hide();return false;}},null,'ceredbut right-float'))).appendChild(CE.STRTAB.lookupel('view.ok'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('pppc.unauth.'+typ+'.title'),content);dlg.show();msgDiv.style.marginTop=parseInt((content.offsetHeight-butDiv.offsetHeight)/2-msgDiv.offsetHeight/2)+'px';}
return false;}
return true;}
function showMediaInSlideshow(el,nf,slideobj,iconUrl,startPaused){if(startPaused&&g_lastViewSize){startPaused=false;}
var svc;if(CE.CEUI.isVideoFile(nf)){CE.CEUI.pauseAudio();svc=CE.CEI.getCurSvc(nf);if(!authPlayMedia(svc,nf))
return;var urlPrefix=CE.CEI.getDataStreamPrefix(nf);var mediaUrl=urlPrefix+nf.fileid+"/"+encodeURIComponent(nf.name);var thumbUrl='';if(nf.thumbnail)
thumbUrl=urlPrefix+nf.thumbnail+"/"+encodeURIComponent(nf.name);else if(nf.preview)
thumbUrl=urlPrefix+nf.preview+"/"+encodeURIComponent(nf.name);var oldVid=CE.$('slide_flv');if(oldVid){if(oldVid.pause&&typeof(oldVid.pause)=='function'&&!oldVid.paused&&!oldVid.ended){oldVid.pause();oldVid.setAttribute('src','');}
if(oldVid.sendEvent&&typeof(oldVid.sendEvent)=='function'){oldVid.sendEvent('stop');oldVid.sendEvent('load',new Array());}
CE.rac(oldVid);oldVid.parentNode.removeChild(oldVid);oldVid=null;}
var oldExtra=CE.$('slideshow_extra_div');if(oldExtra){CE.rac(oldExtra);oldExtra.parentNode.removeChild(oldExtra);}
var showDiv=CE.dce('div',"slideshow_extra_div",'');showDiv.style.zIndex=500;el.appendChild(showDiv);var hasStream=hasFullStream(nf);var livestrm=getLivestreamInfo(nf);var vidElType;if(livestrm.id){vidElType=livestrm.type;mediaUrl=urlPrefix+livestrm.id;CE.CEDBG.println('Using Livestream: '+mediaUrl);finish();}else if(hasStream&&((!svc.xcodeStream||svc.xcodeStream=='always'||!canPlayVideoType(nf.mimetype))||CE.CEI.getOption('stream_ask_'+svc.deviceid+'_'+svc.serviceid))){mediaUrl=urlPrefix+nf.stream+'/'+encodeURIComponent(nf.name)+'.mp4';finish();}else if(!hasStream&&CE.CEI.getOption('stream_ask_'+svc.deviceid+'_'+svc.serviceid)){if(nf.stream_generating){showTranscodeProgress();}else{promptTranscode(nf,svc,false,false,function(newstream){mediaUrl=urlPrefix+newstream+'/'+encodeURIComponent(nf.name)+'.mp4';showTranscodeProgress();},function(){});}}else{mediaUrl=urlPrefix+nf.fileid+'/'+encodeURIComponent(nf.name);finish();}}else if(!startPaused){var files=[];var index=0;var pos=0;for(var i=0;i<g_curpage['celist'].length;++i){if(CE.CEUI.isAudioFile(g_curpage['celist'][i])){files.push(g_curpage['celist'][i]);if(g_curpage['celist'][i].fileid==nf.fileid)
index=pos;++pos;}}
if(files.length){svc=CE.CEI.getCurSvc(files[0]);if(!authPlayMedia(svc,files[0]))
return;}
playAudioFiles(files,index);}
var progressBar,progress;function showTranscodeProgress(){progressBar=showDiv.appendChild(CE.dce('div',null,'ceprogressbar'));progress=progressBar.appendChild(CE.dce('div',null,'ceprogress'));(progressBar.appendChild(CE.dce('div',null,'desc'))).appendChild(CE.STRTAB.lookupel('view.hint.queuetranscode.processing'));updateTranscodeProgress(svc,nf,progressBar,progress,finish);}
function finish(){if(progressBar){CE.rac(progressBar);if(progressBar.parentNode){progressBar.parentNode.removeChild(progressBar);}
progressBar=null;}
CE.CEUI.createVideoEl(showDiv,'slide_flv',mediaUrl,el.offsetWidth,el.offsetHeight,!startPaused,false,CE.CEUI.onSlidePreviewVideoComplete,true,'opaque',thumbUrl,null,vidElType);}}
function saveSlideAlbOrder(cb){if(g_slideAlbImages.length==0&&g_slideAlbMusic.length==0){if(cb)cb();return;}
var appendFiles=function(outFiles,inFiles,baseIndex){for(var i=0;i<inFiles.length;++i){var file=[];file.push('albumindex',baseIndex+((i+1)*100));file.push('deviceid',inFiles[i].deviceid);file.push('serviceid',inFiles[i].serviceid);file.push('fileid',inFiles[i].fileid);file.push('filename',inFiles[i].filename);if(inFiles[i].mimetype)file.push('mimetype',inFiles[i].mimetype);if(inFiles[i].mtime)file.push('mtime',inFiles[i].mtime);if(inFiles[i].size)file.push('size',inFiles[i].size);if(inFiles[i].type)file.push('type',inFiles[i].type);if(inFiles[i].thumbnail)file.push('thumbnail',inFiles[i].thumbnail);if(inFiles[i].preview)file.push('preview',inFiles[i].preview);if(inFiles[i].stream)file.push('stream',inFiles[i].stream);outFiles.push(file);inFiles[i].albumindex=baseIndex+((i+1)*100);}}
var files=[];appendFiles(files,g_slideAlbImages,0);appendFiles(files,g_slideAlbMusic,1000000);CE.CEU.svc.asyncRPC("POST","updateAlbumFiles",['albumid',that.g_curalbum.albumid,'files',files],cb,CE.CEI.onGenericFailure);}
function onSlideAlbDropInsertFile(newFile,dropIndex,cb){var list=CE.CEUI.isAudioFile(newFile)?g_slideAlbMusic:g_slideAlbImages;var svc=CE.CEI.getCurSvc(newFile);if(!newFile.deviceid)newFile.deviceid=svc.deviceid;if(!newFile.serviceid)newFile.serviceid=svc.serviceid;if(dropIndex>=0&&dropIndex<list.length){var prevIndex,nextIndex;if((dropIndex-1)>=0){prevIndex=parseInt(list[dropIndex-1].albumindex);nextIndex=parseInt(list[dropIndex].albumindex);newFile.albumindex=prevIndex+Math.floor((nextIndex-prevIndex)/2);}else{prevIndex=0;nextIndex=parseInt(list[dropIndex].albumindex);newFile.albumindex=Math.floor(nextIndex/2);}
if(newFile.albumindex<=prevIndex||newFile.albumindex>=nextIndex){return saveSlideAlbOrder(function(){onSlideAlbDropInsertFile(newFile,dropIndex,cb);});}
list.splice(dropIndex,0,newFile);}else{newFile.albumindex=(list.length>0)?parseInt(list[list.length-1].albumindex)+100:100;list.push(newFile);}
var args=['name',newFile.name,'albumindex',newFile.albumindex,'albumid',that.g_curalbum.albumid,'deviceid',svc.deviceid,'serviceid',svc.serviceid,'fileid',newFile.fileid,'filename',newFile.filename,'type',newFile.type,'fsize',newFile.size,'mime',newFile.mimetype,'mtime',newFile.mtime,'thumbnail',newFile.thumbnail,'preview',newFile.preview,'stream',newFile.stream];CE.CEU.svc.asyncRPC("POST","addAlbumFile",args,cb,CE.CEI.onGenericFailure);}
function onSlideAlbDropFolder(r,d,t,cb){var i=0;var metaPrompted,metaPromptDeny;var insertNextFile=function(){CE.CEU.showLoadingAni(true);if(r.files&&r.files.length>i){if(CE.CEUI.isAudioFile(r.files[i])||CE.CEU.isImageFile(r.files[i])||CE.CEUI.isVideoFile(r.files[i])){if(!r.files[i].svc)
r.files[i].svc=d.svc;++i;onSlideAlbDropInsertFile(r.files[i-1],-1,insertNextFile);}else if(CE.CEI.isDescendableFile(r.files[i])&&(!d.subf||!CE.CEI.isDescendableMetaFile(r.files[i]))){var descendInsert=function(){CE.CEU.showLoadingAni(true);var svc=r.files[i].svc?r.files[i].svc:d.svc
var args=['deviceid',svc.deviceid,'serviceid',svc.serviceid,'maxcount',NPERPAGE_SLIDEALB,'parentid',r.files[i].fileid];CE.CEU.svc.asyncRPC('POST','listFiles',args,function(r1){onSlideAlbDropFolder(r1,{'drag':d.drag,'evt':d.evt,'tel':d.tel,'svc':svc,'subf':true},null,insertNextFile);},insertNextFile);++i;return true;};if(CE.CEI.isDescendableMetaFile(r.files[i])&&!metaPrompted){metaPrompted=true;CE.CEU.showLoadingAni(false);CE.CEU.promptYesNo(CE.STRTAB.lookup('drag.filegrp.slide.title'),CE.STRTAB.lookup('drag.filegrp.slide.msg'),descendInsert,function(){metaPromptDeny=true;++i;insertNextFile();return true;});}else if(CE.CEI.isDescendableMetaFile(r.files[i])&&metaPrompted&&metaPromptDeny){++i;insertNextFile();}else{descendInsert();}}else{++i;insertNextFile();}}else if(cb){cb();}else{populateSlideAlbEditRow(CE.CEU.$('slidedir_music'),'music',g_slideAlbMusic);populateSlideAlbEditRow(CE.CEU.$('slidedir_images'),'images',g_slideAlbImages);CE.CEU.showLoadingAni(false);}};insertNextFile();}
function onSlideAlbDrop(drag,evt,tel){var srcFile=CE.CEU.shallowCopy(drag.src.file);if(tel.id.indexOf('slidedir_place_')==-1){tel=tel.previousSibling;if(!tel||tel.id.indexOf('slidedir_place_')==-1){if(!CE.CEUI.isAudioFile(srcFile)&&!CE.CEU.isImageFile(srcFile)&&!CE.CEUI.isVideoFile(srcFile))
return;if(drag&&drag.src&&drag.src.slidedir)
return;return onSlideAlbDropInsertFile(srcFile,-1,function(){populateSlideAlbEditRow(CE.CEU.$('slidedir_music'),'music',g_slideAlbMusic);populateSlideAlbEditRow(CE.CEU.$('slidedir_images'),'images',g_slideAlbImages);});}}
var isAudio=(tel.id.indexOf('_music_')!=-1);var indexPos=tel.id.lastIndexOf('_');if(indexPos==-1)
return;var dropIndex=parseInt(tel.id.substr(indexPos+1));if(drag&&drag.src&&srcFile){if(CE.CEUI.isAudioFile(srcFile)!=isAudio)
return;if(!CE.CEUI.isAudioFile(srcFile)&&!CE.CEU.isImageFile(srcFile)&&!CE.CEUI.isVideoFile(srcFile))
return;if(!drag.src.go||!drag.src.go.slidedir){return onSlideAlbDropInsertFile(srcFile,dropIndex,function(){if(isAudio)
populateSlideAlbEditRow(CE.CEU.$('slidedir_music'),'music',g_slideAlbMusic);else
populateSlideAlbEditRow(CE.CEU.$('slidedir_images'),'images',g_slideAlbImages);});}else{var files=isAudio?g_slideAlbMusic:g_slideAlbImages;var newFiles=[];for(var i=0;i<files.length;++i){if(i==dropIndex)
newFiles.push(srcFile);if(srcFile.filename==files[i].filename&&srcFile.albumindex==files[i].albumindex)
continue;newFiles.push(files[i]);}
if(dropIndex>=files.length)
newFiles.push(srcFile);if(isAudio)
g_slideAlbMusic=newFiles;else
g_slideAlbImages=newFiles;if(isAudio)
populateSlideAlbEditRow(CE.CEU.$('slidedir_music'),'music',newFiles);else
populateSlideAlbEditRow(CE.CEU.$('slidedir_images'),'images',newFiles);saveSlideAlbOrder();}}}
function appendSlideAlbPlaceholder(el,type,num){var placeholder=CE.dce('div','slidedir_place_'+type+'_'+num,'slidedir_placeholder');placeholder.oncedrop=onSlideAlbDrop;el.appendChild(placeholder);}
function populateSlideAlbEditRow(rowDiv,type,files){var scrollPos=rowDiv.scrollLeft;CE.rac(rowDiv);var imageDiv=rowDiv.appendChild(CE.dce('div',null,'holder'));var imgRow=((imageDiv.appendChild(CE.dce('table'))).appendChild(CE.dce('tbody'))).appendChild(CE.dce('tr'));for(var i=0;i<files.length;++i){appendSlideAlbPlaceholder(imgRow.appendChild(CE.dce('td')),type,i);var co={onEvent:CE.CEUI.onEventContent,onAction:onActionContent,file:files[i],id:files[i].fileid,name:files[i].filename,slidedir:true,go:{slidedir:true,actions:true}};var item=CE.CEI.appendListingIcon(imgRow.appendChild(CE.dce('td')),co,co.go,i+1).icon;item.oncedrop=onSlideAlbDrop;}
appendSlideAlbPlaceholder(imgRow.appendChild(CE.dce('td')),type,i);if(files.length>0)
CE.aCN('slidedir_emptyhint','hidden');rowDiv.scrollLeft=scrollPos;}
function populateContentWithSlideAlbEdit(el,go){var rowDiv=CE.dce('div','slidedir_images','slidedir_edit_row');populateSlideAlbEditRow(rowDiv,'images',g_slideAlbImages);var outDiv=CE.dce('div',null,'slidedir_edit_row_photocont');outDiv.style.marginBottom='10px';outDiv.appendChild(rowDiv);el.appendChild(outDiv);if(g_slideAlbImages.length==0&&g_slideAlbMusic.length==0){((outDiv.appendChild(CE.dce('div','slidedir_emptyhint'))).appendChild(CE.dce('div',null,'cehintbubble'))).innerHTML=CE.STRTAB.lookup('slidedir.emptyhint');}
rowDiv=CE.dce('div','slidedir_music','slidedir_edit_row');populateSlideAlbEditRow(rowDiv,'music',g_slideAlbMusic);outDiv=CE.dce('div',null,'slidedir_edit_row_audiocont');outDiv.appendChild(rowDiv);el.appendChild(outDiv);if(go.metashare)
delete go.metashare;}
function populateContentWithSlideAlbView(el,go){if(g_slideAlbMusic.length>0){var svc=CE.CEI.getCurSvc(g_slideAlbMusic[0]);if(authPlayMedia(svc,g_slideAlbMusic[0])){playAudioFiles(g_slideAlbMusic,0);}}
if(g_slideAlbImages.length>0)
CE.CEUI.populateContentWithSlideshow(el,g_slideAlbImages,go,true,false,false,null,true);else
showEmptyContentDiv("slideshow");}
this.onSlideAlbEdit=function(){g_slideAlbMode='edit';CE.aCN('ceslidedir_edit','selected');CE.rCN('ceslidedir_view','selected');CE.CEUI.reloadContentCWD();}
this.onSlideAlbView=function(){g_slideAlbMode='view';CE.rCN('ceslidedir_edit','selected');CE.aCN('ceslidedir_view','selected');CE.CEUI.reloadContentCWD();}
this.addToSlideAlbum=function(){var files=[];var div=CE.dce('div');var pane=div.appendChild(CE.dce('div',null,'cewizpane med'));var chooser=new CE.CEI.MediaChooser(['photos','movies','music'],true,true,false,false);chooser.createPane(pane,function(selfiles){files=selfiles;CE.mCN(butOk,'cedisabled',files.length==0);});var buttons=div.appendChild(CE.dce('div'));(buttons.appendChild(CE.dca({onEvent:function(){dlg.hide();}},null,'ceredbut'))).appendChild(CE.STRTAB.lookupel('ceui.cancel'));var butOk=buttons.appendChild(CE.dca({onEvent:function(){dlg.hide();CE.CEU.showLoadingAni(true);onSlideAlbDropFolder({'files':files},{});}},null,'ceredbut right-float cedisabled'));butOk.appendChild(CE.STRTAB.lookupel('view.slidealb.add.ok'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.slidealb.add.title'),div,[],null,null,'CEUDialog_narrow1double');dlg.show();};function populateContentWithSlideAlbConfig(el,go){if(that.g_curalbum&&CE.CEI.g_albummap[that.g_curalbum.albumid]){if(!g_slideAlbMode)
g_slideAlbMode=(that.g_curalbum.ownerid==CE.CEU.user.userid)?'edit':'view';CE.rCN('ceslidedir_edit','selected');CE.rCN('ceslidedir_view','selected');CE.aCN((g_slideAlbMode=='edit')?'ceslidedir_edit':'ceslidedir_view','selected');var slideDiv=CE.dce('div');slideDiv.style.width='100%';slideDiv.style.paddingTop='5px';el.appendChild(slideDiv);if(g_slideAlbMode=='edit'){slideDiv.oncedrop=onSlideAlbDrop;populateContentWithSlideAlbEdit(slideDiv,go);}else{var winHeight=window.innerHeight||((document.documentElement&&document.documentElement.clientHeight)?document.documentElement.clientHeight:document.body.clientHeight);slideDiv.style.height=(winHeight-CE.CEU.getAbsPos(CE.CEU.$('cecontent')).y-64)+'px';slideDiv.oncedrop=function(){};populateContentWithSlideAlbView(slideDiv,go);}}else{var slideDiv=CE.dce('div');var winHeight=window.innerHeight||((document.documentElement&&document.documentElement.clientHeight)?document.documentElement.clientHeight:document.body.clientHeight);slideDiv.style.height=(winHeight-CE.CEU.getAbsPos(CE.CEU.$('cecontent')).y-64)+'px';slideDiv.style.width='100%';el.appendChild(slideDiv);slideDiv.oncedrop=function(){};populateContentWithSlideAlbView(slideDiv,go);}
CE.CEU.showLoadingAni(false);}
function populateContentWithSlideAlb(el,files,go,cb){g_slideAlbImages=[];g_slideAlbMusic=[];mainloop:for(var i=0;i<files.length;++i){var orderedList;if(CE.CEU.isImageFile(files[i])||CE.CEUI.isVideoFile(files[i]))
orderedList=g_slideAlbImages;else if(CE.CEUI.isAudioFile(files[i]))
orderedList=g_slideAlbMusic;else
continue;for(var j=0;j<orderedList.length;++j){if(parseInt(files[i].albumindex)<parseInt(orderedList[j].albumindex)){orderedList.splice(j,0,files[i]);continue mainloop;}}
orderedList.push(files[i]);}
populateContentWithSlideAlbConfig(el,go);if(cb)cb();}
this.isMusicListing=function(){var search=g_cursearch;return(search&&(search=='cesearch_albums'||search=='cesearch_artists'||search=='cesearch_genres'||search=='cesearch_audio'));}
function isPhotoListing(){var search=g_cursearch;return(search&&(search=='cesearch_imagetime'||search=='cesearch_image'));}
this.isPhotoTimelineListing=function(){return(g_cursearch&&g_cursearch=='cesearch_imagetime'&&g_curpath.length==0);}
function isMovieListing(){var search=g_cursearch;return(search&&(search=='cesearch_movietime'||search=='cesearch_video'));}
this.isMovieTimelineListing=function(){return(g_cursearch&&g_cursearch=='cesearch_movietime'&&g_curpath.length==0);}
function getCurShare(){if(g_curpath.length>0){var cur=g_curpath[g_curpath.length-1];if(cur.file&&cur.file.deviceid&&cur.file.serviceid&&cur.file.fileid){var maps=[CE.CEI.g_sharemap,CE.CEI.g_albummap];for(var m=0;m<maps.length;++m){var map=maps[m];for(var i in map){var shareFiles=map[i].files;if(!shareFiles&&map[i].root)
shareFiles=[map[i].root];if(!shareFiles)
continue;for(var iSf=0;iSf<shareFiles.length;++iSf){if(shareFiles[iSf].fileid==cur.file.fileid&&shareFiles[iSf].deviceid==cur.file.deviceid&&shareFiles[iSf].serviceid==cur.file.serviceid){return map[i];}}}}}}
return that.g_curalbum;}
function enableDisableToolbarButtons(disable,grd){var hasImages=false;if(grd&&g_curpage[grd]){for(var i=0;i<g_curpage[grd].length;++i){if(CE.CEU.isImageFile(g_curpage[grd][i])){hasImages=true;break;}}}
if(!CE.CEU.isLoggedIn()){CE.mCN('cetool_showslidehere','hidden',(!hasImages||that.g_viewsize=='photo'));CE.mCN('cetoptools','hidden',(!hasImages||that.g_viewsize=='photo'));}else if(that.g_viewsize=='photo'){CE.aCN('cetool_upload','hidden');CE.aCN('cetool_createdir','hidden');CE.aCN('cetool_otheracts','hidden');CE.aCN('cetool_createslideshow','hidden');CE.aCN('cetool_showslidehere','hidden');CE.aCN('cetool_shareprinter','hidden');CE.rCN('cetoptools','hidden');}else{var svc,dev,noPerms,notOwner,filtered,search,photoFilt,photos,movieFilt,movies,musicFilt,songs,slideFilt,readOnly,nothing,hasSvc,nonCuzSearch,canSort,validSyncSource,multisvc,validSvc;if(!disable){svc=that.g_cursvc;if(!svc&&that.g_curalbum&&that.g_curalbum.root)
svc=CE.CEI.g_svcmap[that.g_curalbum.root.deviceid+":_:"+that.g_curalbum.root.serviceid];if(!svc&&that.g_curalbum)
svc=that.g_curalbum.root;dev=svc?svc.device:null;noPerms=(that.g_curalbum&&CE.CEU.user&&that.g_curalbum.ownerid!=CE.CEU.user.userid&&that.g_curalbum.perms!='1');notOwner=(!that.g_cursvc&&(!that.g_curalbum||(CE.CEU.user&&that.g_curalbum.ownerid!=CE.CEU.user.userid)));filtered=CE.CEUI.isFilteredListing();search=(filtered&&g_cursearch=='cesearch_name');photoFilt=((filtered&&(g_cursearch=='cesearch_image'||g_cursearch=='cesearch_imagetime'))||(g_curpath.length&&g_curpath[g_curpath.length-1].file.type==CE.FILE_TYPE_IMGTIMELINE));photos=(photoFilt&&(g_cursearch=='cesearch_image'||g_curpath.length));movieFilt=((filtered&&(g_cursearch=='cesearch_video'||g_cursearch=='cesearch_movietime'))||(g_curpath.length&&g_curpath[g_curpath.length-1].file.type==CE.FILE_TYPE_MOVIETIMELINE));movies=(movieFilt&&(g_cursearch=='cesearch_video'||g_curpath.length));musicFilt=((filtered&&(g_cursearch=='cesearch_albums'||g_cursearch=='cesearch_audio'||g_cursearch=='cesearch_artists'||g_cursearch=='cesearch_genres'))||(g_curpath.length&&((g_curpath[g_curpath.length-1].file.type==CE.FILE_TYPE_ALBUM)||(g_curpath[g_curpath.length-1].file.type==CE.FILE_TYPE_ARTIST)||(g_curpath[g_curpath.length-1].file.type==CE.FILE_TYPE_GENRE))));songs=(musicFilt&&(g_cursearch=='cesearch_audio'||g_curpath.length));slideFilt=(filtered&&g_cursearch=='cesearch_slidedirs');readOnly=(svc&&svc.readonly);nothing=CE.CEUI.isNothingAvailable();validSyncSource=(svc&&svc.type.indexOf('xce:plugfs')==0&&CE.CEI.hasFeature('foldersync',svc.deviceid));multisvc=(that.g_curmsvc&&!that.g_cursvc);canSort=((svc&&svc.type.indexOf('xce:plugfs:cloud:gdocs')==-1)||multisvc);validSvc=(g_headtab!='files'||filtered||that.g_cursvc||that.g_curmsvc);for(var s in CE.CEI.g_svcmap){if(CE.CEI.g_svcmap[s].online&&CE.CEI.g_svcmap[s].online=='1'){hasSvc=true;break;}}
if(CE.CEUI.g_wasSearch){var folder=getCurrentFolder();if(!((g_curpath.length>0&&g_curpath[g_curpath.length-1].file&&g_curpath[g_curpath.length-1].file.cousins&&g_curpath[g_curpath.length-1].file.cousins.length>0)||(folder&&folder.cousins))){nonCuzSearch=true;}}}
CE.aCN('cetool_createslideshow','hidden');if(slideFilt){CE.rCN('cetool_createslideshow','hidden');}
if(disable||noPerms||filtered||readOnly||nothing){CE.aCN('cetool_upload','hidden');CE.aCN('cetool_createdir','hidden');}else{CE.rCN('cetool_upload','hidden');CE.rCN('cetool_createdir','hidden');}
CE.mCN('cetool_upload','cedisabled',multisvc);CE.mCN('cetool_createdir','cedisabled',multisvc);CE.mCN('cetool_otheracts','cedisabled',disable||noPerms||readOnly||nothing);if(CE.CEUI.isSharedFoldersListing()){CE.rCN('cetool_otheracts','cedisabled');}
CE.mCN('cetool_otheracts','hidden',(musicFilt&&!songs)||(photoFilt&&!photos)||(movieFilt&&!movies));CE.mCN('cetool_reload','hidden',!((photoFilt||movieFilt||musicFilt)&&!g_curpath.length));if(disable||!hasSvc){CE.aCN('cetool_createslideshow','cedisabled');}else{CE.rCN('cetool_createslideshow','cedisabled');}
if(!canSort){g_sortable=false;}else{g_sortable=true;}
CE.mCN('cetool_showslidehere','hidden',(!photoFilt&&filtered)||!hasImages);CE.mCN('cetool_shareprinter','cedisabled',!g_printers.length);CE.rCN('cetoptools','hidden');}}
function normalizeSongListing(outGroupedFiles,outArtistNames,outAlbumArt,origFiles,forceSingleAlbum){for(var i=0;i<origFiles.length;++i){if(!CE.CEUI.isAudioFile(origFiles[i]))
continue;var svc=CE.CEI.getCurSvc(origFiles[i]);origFiles[i].isPremium=(!svc||svc.onlan=='1'||!svc.device||!svc.device.type||svc.device.type.indexOf('xce:pppc')==-1||svc.device.authorized=='1');var props=origFiles[i].properties||{};var artistName=props.artist||CE.STRTAB.lookup('music.artist.unknown');var artistKey=artistName.toLowerCase();var albumKey=(props.album||CE.STRTAB.lookup('music.album.unknown')).toLowerCase();if(!outGroupedFiles[artistKey]){outArtistNames.push(artistName);outGroupedFiles[artistKey]={};}
if(!outGroupedFiles[artistKey][albumKey])
outGroupedFiles[artistKey][albumKey]=[];outGroupedFiles[artistKey][albumKey].push(origFiles[i]);if(!outAlbumArt[artistKey+':'+albumKey]&&origFiles[i].thumbnail){outAlbumArt[artistKey+':'+albumKey]=CE.CEI.getFileThumbnail(origFiles[i]).url;}}
if(forceSingleAlbum&&outArtistNames.length>1){var singleAlbum=[];for(var artist in outGroupedFiles){for(var album in outGroupedFiles[artist]){singleAlbum=singleAlbum.concat(outGroupedFiles[artist][album]);delete outGroupedFiles[artist][album];if(outAlbumArt[artist+':'+album]&&!outAlbumArt[CE.STRTAB.lookup('music.artist.unknown').toLowerCase()+':'+album]){outAlbumArt[CE.STRTAB.lookup('music.artist.unknown').toLowerCase()+':'+album]=outAlbumArt[artist+':'+album];}}}
outGroupedFiles[CE.STRTAB.lookup('music.artist.unknown').toLowerCase()]={};outGroupedFiles[CE.STRTAB.lookup('music.artist.unknown').toLowerCase()][album]=singleAlbum;outArtistNames.splice(0,outArtistNames.length);outArtistNames.push(CE.STRTAB.lookup('music.artist.unknown'));}
outArtistNames.sort(function(l,r){if(l==r)return 0;if(l==CE.STRTAB.lookup('music.artist.unknown'))return-1;return natcompare(l.toLowerCase(),r.toLowerCase());});function songCmp(l,r){var lp=l.properties||{};var rp=r.properties||{};if(lp.album&&rp.album&&lp.album.toLowerCase()==rp.album.toLowerCase()){var lt=parseInt(lp.originalTrackNumber||-1);var rt=parseInt(rp.originalTrackNumber||-1);if(lt<rt)return-1;if(rt<lt)return 1;}
var ln=(lp.title||l.name||l.filename).toLowerCase();var rn=(rp.title||r.name||r.filename).toLowerCase();if(ln==rn&&l.isPremium!=r.isPremium)
return l.isPremium?-1:1;return natcompare(ln.toLowerCase(),rn.toLowerCase());}
for(var iArtist=0;iArtist<outArtistNames.length;++iArtist){var artistKey=outArtistNames[iArtist].toLowerCase();for(var albKey in outGroupedFiles[artistKey]){var album=outGroupedFiles[artistKey][albKey];album.sort(songCmp);var newAlbum=[album[0]];for(var iTrack=1;iTrack<album.length;++iTrack){var propsPrev=album[iTrack-1].properties||{};var propsCur=album[iTrack].properties||{};if(propsCur.originalTrackNumber&&propsCur.title&&propsCur.originalTrackNumber==propsPrev.originalTrackNumber&&propsCur.title==propsPrev.title){continue;}
if(!propsCur.originalTrackNumber&&!propsPrev.originalTrackNumber){if((propsCur.title&&propsCur.title==propsPrev.title)||(!propsCur.title&&album[iTrack].name==album[iTrack-1].name)&&album[iTrack].size==album[iTrack-1].size){continue;}}
newAlbum.push(album[iTrack]);}
outGroupedFiles[artistKey][albKey]=newAlbum;}}
for(var iArtist=0;iArtist<outArtistNames.length;++iArtist){var artistKey=outArtistNames[iArtist].toLowerCase();var artist=outGroupedFiles[artistKey];var singles=[];for(var albKey in artist){if(artist[albKey].length==1)
singles.push(albKey);}
var miscName=CE.STRTAB.lookup('music.album.unknown').toLowerCase();if(singles.length>1||artist[miscName]){if(!artist[miscName])
artist[miscName]=[];for(var iSing=0;iSing<singles.length;++iSing){if(singles[iSing]==miscName)
continue;artist[miscName].push(artist[singles[iSing]][0]);delete artist[singles[iSing]];if(!outAlbumArt[artistKey+':'+miscName])
outAlbumArt[artistKey+':'+miscName]=outAlbumArt[artistKey+':'+singles[iSing]];}}}
var singles=[];for(var iArtist=0;iArtist<outArtistNames.length;++iArtist){var artistName=outArtistNames[iArtist];var artistKey=artistName.toLowerCase();var artist=outGroupedFiles[artistKey];for(var albKey in artist){if(artist[albKey].length==1)
singles.push({'artistname':artistName,'artistkey':artistKey,'albkey':albKey});}}
if(singles.length>1){var miscArtist=CE.STRTAB.lookup('music.artist.multi').toLowerCase();var miscName=CE.STRTAB.lookup('music.album.unknown').toLowerCase();if(!outGroupedFiles[miscArtist]){outGroupedFiles[miscArtist]={};outArtistNames.push(CE.STRTAB.lookup('music.artist.multi'));}
if(!outGroupedFiles[miscArtist][miscName])
outGroupedFiles[miscArtist][miscName]=[];for(var iSing=0;iSing<singles.length;++iSing){if(singles[iSing].artistkey==miscArtist&&singles[iSing].albkey==miscName)
continue;outGroupedFiles[miscArtist][miscName].push(outGroupedFiles[singles[iSing].artistkey][singles[iSing].albkey][0]);delete outGroupedFiles[singles[iSing].artistkey][singles[iSing].albkey];if(CE.CEU.structlen(outGroupedFiles[singles[iSing].artistkey])==0){delete outGroupedFiles[singles[iSing].artistkey];outArtistNames.splice(outArtistNames.indexOf(singles[iSing].artistname),1);if(!outAlbumArt[miscArtist+':'+miscName])
outAlbumArt[miscArtist+':'+miscName]=outAlbumArt[singles[iSing].artistkey+':'+singles[iSing].albkey];}}}
for(var iArtist=0;iArtist<outArtistNames.length;++iArtist){var artistKey=outArtistNames[iArtist].toLowerCase();for(var albKey in outGroupedFiles[artistKey]){outGroupedFiles[artistKey][albKey].sort(songCmp);}}}
function selectAllSongs(d){var checks=CE.getByClass(d.parent,'div','selectcheck');if(checks.length){var select=!CE.hCN(checks[0],'selected');for(var i=0;i<checks.length;++i){if(CE.hCN(checks[i],'selected')!=select){CE.CEU.triggerEvent(checks[i],'click');}}}
return false;}
function playSelectedSongs(d,evt){if(!d||!d.gid||CE.CEI.g_selfiles['celist'][d.gid]){var iStart=0;var tracks=[];var trs=CE.getByClass(CE.$('celist'),'tr','track');if(trs.length){for(var i=0;i<trs.length;++i){if(CE.CEI.g_selfiles['celist'][trs[i].id]&&CE.CEI.g_selfiles['celist'][trs[i].id].isPremium){tracks.push(CE.CEI.g_selfiles['celist'][trs[i].id]);if(d&&d.gid&&d.gid==trs[i].id)
iStart=tracks.length-1;}}}else{for(var fid in CE.CEI.g_selfiles['celist']){var svc=CE.CEI.getCurSvc(CE.CEI.g_selfiles['celist'][fid]);var isPremium=(!svc||svc.onlan=='1'||!svc.device||!svc.device.type||svc.device.type.indexOf('xce:pppc')==-1||svc.device.authorized=='1');if(isPremium)
tracks.push(CE.CEI.g_selfiles['celist'][fid]);}}
playAudioFiles(tracks,iStart);}else if(d&&d.lst){playAudioFiles(d.lst,d.idx);}
closeContextMenu();if(evt)evt.cancelBubble=true;if(evt&&evt.stopPropagation)evt.stopPropagation();}
function queueSelectedSongs(d,evt){if(!d||!d.file){var tracks=[];var trs=CE.getByClass(CE.$('celist'),'tr','track');if(trs.length){for(var i=0;i<trs.length;++i){if(CE.CEI.g_selfiles['celist'][trs[i].id]&&CE.CEI.g_selfiles['celist'][trs[i].id].isPremium){tracks.push(CE.CEI.g_selfiles['celist'][trs[i].id]);}}}else{for(var fid in CE.CEI.g_selfiles['celist']){var svc=CE.CEI.getCurSvc(CE.CEI.g_selfiles['celist'][fid]);var isPremium=(!svc||svc.onlan=='1'||!svc.device||!svc.device.type||svc.device.type.indexOf('xce:pppc')==-1||svc.device.authorized=='1');if(isPremium)
tracks.push(CE.CEI.g_selfiles['celist'][fid]);}}
playAudioFiles(tracks,null,true);}else{CE.CEUI.playAudioGroup(d,true);}
closeContextMenu();if(evt)evt.cancelBubble=true;if(evt&&evt.stopPropagation)evt.stopPropagation();}
function onSelSong(file,ticked,gid){CE.mCN(gid,'selected',ticked)
that.onSelFiles();}
function onSongMouseDown(co,evt){closeContextMenu(evt);if((evt.which&&evt.which!=1)||(evt.button&&evt.button!=1)||evt.ctrlKey){CE.CEUI.showContextMenu(co,evt,null,null,null,null,null,CE.$('cepage'));CE.CEU.stopevt(evt);}}
function populateContentWithSongListing(go,origFiles,search){var groupedFiles={};var artistNames=[];var albumArt={};normalizeSongListing(groupedFiles,artistNames,albumArt,origFiles,(search=='cesearch_albums'));g_curpage[go.grd]=[];g_curpageByShid[go.grd]={};var playing=g_audioPlayer?g_audioPlayer.getCurFile():null;var playingSvc=playing?CE.CEI.getCurSvc(playing):null;var table=(CE.$(go.grd).appendChild(CE.dce('table',null,'cemusic'))).appendChild(CE.dce('tbody'));for(var iArtist=0;iArtist<artistNames.length;++iArtist){var artistKey=artistNames[iArtist].toLowerCase();var artist=groupedFiles[artistKey];var albumNames=[];for(var albName in artist)
albumNames.push(albName);albumNames.sort(function(l,r){if(l==r)return 0;if(l==CE.STRTAB.lookup('music.album.unknown').toLowerCase())return-1;return natcompare(l,r);});for(var iAlbum=0;iAlbum<albumNames.length;++iAlbum){if(iArtist!=0||iAlbum!=0){var sepTd=(table.appendChild(CE.dce('tr'))).appendChild(CE.dce('td',null,'sep'));sepTd.colSpan=2;}
var album=artist[albumNames[iAlbum]];var trAlb=table.appendChild(CE.dce('tr'));var td=trAlb.appendChild(CE.dce('td',null,'albumart'));var artUrl=albumArt[artistKey+':'+albumNames[iAlbum]]||(CE.STRTAB.lookup('imgbase')+'folder-album.png');var albumIcon=(td.appendChild(CE.dce('div'))).appendChild(CE.dci(artUrl));CE.CEU.attachEvent(albumIcon,'click',{onEvent:selectAllSongs,'parent':trAlb});(td.appendChild(CE.dce('div'))).appendChild(CE.dctn(artistNames[iArtist]));var realAlbumName=albumNames[iAlbum];if(album.length)
realAlbumName=(album[0].properties&&album[0].properties.album)?album[0].properties.album:CE.STRTAB.lookup('music.album.unknown');(td.appendChild(CE.dce('div'))).appendChild(CE.dctn(realAlbumName));td=(trAlb.appendChild(CE.dce('td',null,'tracks'))).appendChild(CE.dce('div',null,'tracktable'));var trackTable=(td.appendChild(CE.dce('table',null,'cetracks'))).appendChild(CE.dce('tbody'));for(var iTrack=0;iTrack<album.length;++iTrack){var svc=CE.CEI.getCurSvc(album[iTrack]);var shareid=null;if(album[iTrack].isPremium){shareid=CE.CEI.getShareId(album[iTrack],svc);g_curpage[go.grd].push(album[iTrack]);g_curpageByShid[go.grd][shareid]=album[iTrack];}
var gid='cetrack_'+svc.deviceid+'_'+svc.serviceid+'_'+album[iTrack].fileid;album[iTrack].gid=gid;var tr=trackTable.appendChild(CE.dce('tr',gid,album[iTrack].isPremium?'item track':'item track nostream'));CE.CEU.attachEvent(tr,'mousedown',{onEvent:onSongMouseDown,file:album[iTrack],onAction:onActionContent,go:{'grd':'celist'}});CE.CEU.attachEvent(tr,'mouseup',{onEvent:function(d,e){CE.CEU.stopevt(e);}});if(playingSvc&&playing.fileid==album[iTrack].fileid&&playingSvc.deviceid==svc.deviceid&&playingSvc.serviceid==svc.serviceid)
CE.aCN(tr,g_audioPlayer.isPlaying()?'playing':'paused');var name=(album[iTrack].properties&&album[iTrack].properties.title)?album[iTrack].properties.title:album[iTrack].name;td=(tr.appendChild(CE.dce('td',null,'sel'))).appendChild(CE.dce('div',null,'cont'))
var check=td.appendChild(CE.dce('div',null,'selectcheck'));check.title=CE.STRTAB.lookup('view.selectcheck',name);check.tabIndex=0;CE.CEU.attachEvent(check,'click',{onEvent:CE.CEI.onSelectFile,'co':{file:album[iTrack],onSelect:onSelSong},'gid':gid,'grd':'celist'});CE.CEU.attachEnterPressedEvent(check,{onEvent:CE.CEI.onSelectFile,'co':{file:album[iTrack],onSelect:onSelSong},'gid':gid,'grd':'celist'});td=tr.appendChild(CE.dce('td',null,'play'));if(album[iTrack].isPremium){var playBut=td.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-play-dark-small.png',null,'play'));playBut.title=CE.STRTAB.lookup('view.hint.play');CE.CEU.attachEvent(playBut,'click',{onEvent:playSelectedSongs,lst:g_curpage[go.grd],idx:g_curpage[go.grd].length-1,'gid':gid});var resumeBut=td.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-play-dark-small.png',null,'resume'));resumeBut.title=CE.STRTAB.lookup('view.hint.resume');CE.CEU.attachEvent(resumeBut,'click',{onEvent:function(){g_audioPlayer.play();}});var pauseBut=td.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-pause-dark-small.png',null,'pause'));pauseBut.title=CE.STRTAB.lookup('view.hint.pause');CE.CEU.attachEvent(pauseBut,'click',{onEvent:function(){g_audioPlayer.pause();}});}else{var playBut=td.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'icon-play-dark-small.png',null,'play'));playBut.title=CE.STRTAB.lookup('view.hint.play');CE.CEU.attachEvent(playBut,'click',{onEvent:function(d){authPlayMedia(CE.CEI.getCurSvc(d.file),d.file);},'file':album[iTrack]});}
var num=(album[iTrack].properties&&album[iTrack].properties.originalTrackNumber)?CE.CEU.padInt(parseInt(album[iTrack].properties.originalTrackNumber),2):'';(tr.appendChild(CE.dce('td',null,'num'))).appendChild(CE.dctn(num));(tr.appendChild(CE.dce('td',null,'name'))).appendChild(CE.dctn(name));if(artistNames[iArtist]==CE.STRTAB.lookup('music.artist.multi')){var artistName=(album[iTrack].properties&&album[iTrack].properties.artist)?album[iTrack].properties.artist:'';(tr.appendChild(CE.dce('td',null,'artist'))).appendChild(CE.dctn(artistName));}else if(albumNames[iAlbum]==CE.STRTAB.lookup('music.album.unknown')){var albumName=(album[iTrack].properties&&album[iTrack].properties.album)?album[iTrack].properties.album:'';(tr.appendChild(CE.dce('td',null,'album'))).appendChild(CE.dctn(albumName));}
tr.appendChild(CE.dce('td'));td=tr.appendChild(CE.dce('td',null,'social'));if(CE.CEI.isOwnedFile(album[iTrack])){shareid=shareid||CE.CEI.getShareId(album[iTrack],svc);td.id='tdsocial_'+shareid;CE.CEUI.showShareStatus(shareid,null,td,album[iTrack]);}
td=tr.appendChild(CE.dce('td',null,'actdrop'));var divPopper=td.appendChild(CE.dce('div',null,'popper'));divPopper.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'act-dropper.png',null,'cepopsmenu'));var co={onAction:onActionContent,file:album[iTrack],go:{'grd':'celist'}};CE.CEU.attachEvent(td,'click',{onEvent:CE.CEUI.onDropActions,'el':tr,'posel':divPopper,'co':co});CE.CEU.attachEnterPressedEvent(td,{onEvent:CE.CEUI.onDropActions,'el':tr,'posel':divPopper,'co':co});td.title=CE.STRTAB.lookup('view.col.actdrop',co.file.name);td.tabIndex=0;}
if(albumNames.length==1&&artistNames.length==1){selectAllSongs({'parent':trAlb});if(g_isIE){CE.aCN('cesidebar_content','hidden');setTimeout(function(){CE.rCN('cesidebar_content','hidden');},0);}}}}}
function populateContent(r,go,x,popdiv,cb){CE.CEDBG.println('CEUI: Populating Content: '+CE.CEDBG.serialize(go));var el=popdiv||CE.CEU.$(go.grd);if(go.clearcontentui)
CE.CEUI.clearContentUi(go.grd);g_curtotalcount[go.grd]=r.totalcount;if(r&&r.files){var alb=go.album||go.svc;if(alb&&alb.root&&alb.root.apiurl){for(var i=0;i<r.files.length;++i){r.files[i].apiurl=r.files[i].apiurl||alb.root.apiurl;}}
if(!go.noresort)
CE.CEI.resortFiles(r.files,g_sortcrit);if(!go.norempage){if(!go.inline)
g_curpage[go.grd]=r.files;else
g_curpage[go.grd]=g_curpage[go.grd].concat(r.files);for(var i=0;i<r.files.length;++i){if(!r.files[i].deviceid){var svc=CE.CEI.getCurSvc(r.files[i]);r.files[i].deviceid=svc.deviceid;r.files[i].serviceid=svc.serviceid;}
g_curpageByShid[go.grd][CE.CEI.getShareId(r.files[i])]=r.files[i];}}}
if(go.grd=='celist'){if(g_jumpToShare){ensureAlbumsLoaded(function(){var shareId=g_jumpToShare;g_jumpToShare=null;activateAlbum(shareId,true,null,cb);});return;}
if(r&&r.files&&CE.CEUI.g_newfolder){var found=false;for(var i=0;i<r.files.length;++i){if(r.files[i].fileid==CE.CEUI.g_newfolder.fileid){found=true;break;}}
if(!found){r.files.push(CE.CEUI.g_newfolder);}}
if(go.shared){var share=null;if(go.pid){share=findFolderShare({fileid:go.pid});}
if(!share&&go.album){share=CE.CEI.g_albummap[go.album.albumid];}
if(share&&(!CE.CEUI.g_isSlideAlb||go.metashare))
(new CE.CEI.SendShare(share.root,share)).show(true);delete go.shared;}
CE.rCN("cebc","hidden");CE.aCN('cetools_fullscreenprev','hidden');enableDisableToolbarButtons(false,go.grd);if(CE.CEUI.g_isSlideAlb){CE.aCN('cetoptools_default','hidden');CE.rCN('cetoptools_slidealb','hidden');CE.aCN('ceviewmode','hidden');figureOutPagination(r,go);populateContentWithSlideAlb(el,r.files,go,cb);return;}else{g_slideAlbMode=null;CE.rCN('cetoptools_default','hidden');CE.aCN('cetoptools_slidealb','hidden');}}
var search=g_cursearch;var viewMode=CE.CEI.g_viewmode;var path=g_curpath;var postfix='';if(el){var tbody=null;if(go.grd=='celist')
showEmptyContentDiv(null);var paginf=figureOutPagination(r,go);bcShowFittingCrumbsOnly();if(r&&r.files&&r.files.length){if((CE.CEUI.isMusicListing(go.grd)&&(!path||path.length<1)&&search!='cesearch_audio')||CE.CEUI.isMovieTimelineListing()||CE.CEUI.isPhotoTimelineListing()){go.viewmode=0;go.viewsize='medium';}else if((isMovieListing()&&!CE.CEUI.isMovieTimelineListing())||(isPhotoListing()&&!CE.CEUI.isPhotoTimelineListing())){go.viewmode=0;go.viewsize='medium';}
if(CE.CEUI.isMusicListing(go.grd)&&((path&&path.length)||search=='cesearch_audio')){populateContentWithSongListing(go,r.files,search);}else if(CE.CEUI.g_viewsize=='photo'){CE.rCN('cebuttons_preview','hidden');CE.aCN('cebcdiv','hidden');if(g_lastViewSize)
CE.rCN('cebuttons_preview_close','hidden');else
CE.aCN('cebuttons_preview_close','hidden');var slideDiv=CE.dce('div');el.appendChild(slideDiv);var winHeight=CE.$('cepage').offsetHeight;slideDiv.style.height=(winHeight-CE.CEU.getAbsPos(CE.$('celist')).y-12)+'px';CE.CEUI.populateContentWithSlideshow(slideDiv,r.files,go,null,go.autoplay?false:true,true,go.useslideindex?go.slideindex:-1);}else{if(go.viewmode==1){var div=CE.dce('div',null,'celist_lv');var table=CE.dce('table');tbody=CE.dce('tbody');if(!go.inline){var tr=CE.dce('tr',null,'head');var td=CE.dce('td',null,'head icon');tr.appendChild(td);if(g_cursearch&&CE.CEUI.isMusicListing()){td=CE.dce('td',null,'head name');addSortHeader(td,CE.STRTAB.lookup('view.col.name'),'name','+name','-name');tr.appendChild(td);td=CE.dce('td',null,'head artist');addSortHeader(td,CE.STRTAB.lookup('view.col.artist'));tr.appendChild(td);td=CE.dce('td',null,'head album');addSortHeader(td,CE.STRTAB.lookup('view.col.album'));tr.appendChild(td);td=CE.dce('td',null,'head genre');addSortHeader(td,CE.STRTAB.lookup('view.col.genre'));tr.appendChild(td);}else{if(g_cursearch&&CE.CEUI.isPhotoTimelineListing()){td=CE.dce('td',null,'head name');addSortHeader(td,CE.STRTAB.lookup('view.col.name'),'name','+name','-name');tr.appendChild(td);}else{td=CE.dce('td',null,'head name');addSortHeader(td,CE.STRTAB.lookup('view.col.filename'),'name','+name','-name');tr.appendChild(td);}
if(go.grd=='celist'&&CE.CEU.isLoggedIn()){td=tr.appendChild(CE.dce('td',null,'head social'));td=tr.appendChild(CE.dce('td',null,'head share'));}
var collabs=(go.grd=='celist'&&CE.CEUI.isSharedFoldersListing());if(collabs){td=tr.appendChild(CE.dce('td',null,'head access'));addSortHeader(td,CE.STRTAB.lookup('view.col.access'));}else{td=tr.appendChild(CE.dce('td',null,'head size'));addSortHeader(td,CE.STRTAB.lookup('view.col.size'),'size','+size','-size');}
td=CE.dce('td',null,'head date');addSortHeader(td,CE.STRTAB.lookup('view.col.date'),'date','+mtime','-mtime');tr.appendChild(td);}
td=CE.dce('td',null,'head actdrop');tr.appendChild(td);tbody.appendChild(tr);}
table.appendChild(tbody);div.appendChild(table);el.appendChild(div);}
var hasChecks=false;CE.CEDBG.println('CEUI: Content Set Page Size: '+r.files.length);for(var i=0;i<r.files.length;i++){var id;if(r.files[i].fileid){id=r.files[i].fileid;}else{CE.CEDBG.println('CEUI: no id for file: ['+r.files[i]+']');continue;}
if(go.album){if(!r.files[i].deviceid){if(g_curpath.length>0){if(g_curpath[g_curpath.length-1].file){if(g_curpath[g_curpath.length-1].file.deviceid){r.files[i].deviceid=g_curpath[g_curpath.length-1].file.deviceid;}
if(g_curpath[g_curpath.length-1].file.deviceid){r.files[i].serviceid=g_curpath[g_curpath.length-1].file.serviceid;}}}}}
var co={onEvent:CE.CEUI.onEventContent,onAction:onActionContent,id:id,go:go,name:r.files[i].name,file:r.files[i]}
if(co.go.svc&&r.files[i].svc)
co.go.svc=r.files[i].svc;if(CE.CEI.appendListingItem(tbody||el,co,go,i))
hasChecks=true;}
if(hasChecks){CE.rCN('cetool_selall','hidden');CE.CEI.g_selall[go.grd]=CE.$('cetool_selall_check');CE.CEI.g_selall[go.grd].checked=false;CE.CEU.releaseEvents(CE.CEI.g_selall[go.grd]);CE.CEU.attachEvent(CE.CEI.g_selall[go.grd],'click',{onEvent:CE.CEI.selectAllFiles,grd:go.grd});}
if(paginf&&paginf.totalPages>(paginf.curPage+1)){showAutoPageLoader(el,paginf);}else{el.appendChild(CE.dce('div',null,'afterclear'))}
go.inline=false;}}else if(go.album){if(go.grd=='celist'){if(!g_cursearch&&g_curpath.length==0){if(CE.CEI.g_albummap[go.album.albumid]){showEmptyContentDiv("albumowned");}else{showEmptyContentDiv("albumshared");}}else if(g_cursearch=='cesearch_albums'){showEmptyContentDiv("albums");}else if(g_cursearch=='cesearch_audio'){showEmptyContentDiv("songs");}else if(g_cursearch=='cesearch_artists'){showEmptyContentDiv("artists");}else if(g_cursearch=='cesearch_genres'){showEmptyContentDiv("genres");}else if(g_cursearch=='cesearch_playlists'){showEmptyContentDiv("playlists");}else if(g_cursearch=='cesearch_slidedirs'){showEmptyContentDiv("slidedirs");}else if(g_cursearch=='cesearch_video'||g_cursearch=='cesearch_movietime'){showEmptyContentDiv("movies");}else if(g_cursearch=='cesearch_image'||g_cursearch=='cesearch_imagetime'){showEmptyContentDiv("photos");}else if(g_cursearch&&g_cursearch!=''){showEmptyContentDiv("searchres");}else{showEmptyContentDiv("folder");}}}else{if(go.grd=='celist'){if(r.pageoffset>0){g_curpageoffset[go.grd]=r.pageoffset-1;reloadContent();}else if(g_cursearch=='cesearch_albums'){showEmptyContentDiv("albums");}else if(g_cursearch=='cesearch_audio'){showEmptyContentDiv("songs");}else if(g_cursearch=='cesearch_artists'){showEmptyContentDiv("artists");}else if(g_cursearch=='cesearch_genres'){showEmptyContentDiv("genres");}else if(g_cursearch=='cesearch_playlists'){showEmptyContentDiv("playlists");}else if(g_cursearch=='cesearch_slidedirs'){showEmptyContentDiv("slidedirs");}else if(g_cursearch=='cesearch_video'||g_cursearch=='cesearch_movietime'){showEmptyContentDiv("movies");}else if(g_cursearch=='cesearch_image'||g_cursearch=='cesearch_imagetime'){showEmptyContentDiv("photos");}else if(g_cursearch&&g_cursearch=='celibshares_share'&&!that.g_curalbum){showEmptyContentDiv("nosharedwithme");}else if(g_cursearch&&g_cursearch=='celibshares_collab'&&!that.g_curalbum){showEmptyContentDiv("nocollabs");}else if(g_cursearch&&g_cursearch=='celibshares_lnks'&&!g_curpath.length){showEmptyContentDiv("nolnks");}else if(g_cursearch&&g_cursearch=='celibshares_album'&&!that.g_curalbum){showEmptyContentDiv("nofilesishare");}else if(g_cursearch&&g_cursearch!=''&&g_cursearch!='celibshares_share'&&g_cursearch!='celibshares_album'&&g_cursearch!='celibshares_collab'&&g_cursearch!='celibshares_lnks'){showEmptyContentDiv("searchres");}else if(canDoEditTypeActions()){showEmptyContentDiv("folder");}else{showEmptyContentDiv("folder_nowrite");}}}
CE.CEU.showLoadingAni(false);el=null;}
for(var i=0;i<g_mediaCurrtasks.length;++i){showMediaProcessingProgress(g_mediaCurrtasks[i].task,g_mediaCurrtasks[i].deviceid);}
CE.CEUI.onPageResize();if(cb)cb();}
function showAutoPageLoader(el,paginf){var div=el.appendChild(CE.dce('div',null,'ceautopageloader'));var page=CE.$('cepage');function check(){var pos=CE.CEU.getAbsPos(div);if(!div||!div.parentNode)
return;var winHeight=page.offsetHeight;if(page.scrollTop+winHeight<(pos.y-100)){setTimeout(check,200);}else{div.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'loading.gif'));div.appendChild(CE.STRTAB.lookupel('view.loading.more'));var go={inline:true,viewmode:CE.CEI.g_viewmode,actions:true,scrit:g_curscrit,stype:g_cursearch,pageoffset:paginf.curPage+1};reloadContent(null,go,null,function(){CE.rac(div);if(div.parentNode)
div.parentNode.removeChild(div);});}}
setTimeout(check,200);}
function downloadfile(file,frameName){trackEvent('Download',null,file);frameName=frameName||'secretiframe';var dlpath;dlpath=CE.CEI.getDataStreamPrefix(file);dlpath+=file.fileid+"/dl/"+encodeURIComponent(file.name);if(CE.CEI.isDescendableFile(file))
dlpath+=".zip";if(frames&&frames[frameName]){var dlframe=frames[frameName];CE.CEDBG.println('CEUI: Setting secret iframe href to '+dlpath);dlframe.location.href=dlpath;}else{var dlframe=CE.CEU.$(frameName);if(dlframe){dlframe.src=dlpath;}}}
function onDropFiles(drag,evt,tel){if(!drag||!drag.src||!drag.src.file||!g_curpage['celist'])
return false;var sourceFiles=[];var sel=CE.getByClass(CE.$(CE.CEI.getGid('celist',drag.src.id,drag.src.file)),'div','selectcheck');if(sel.length>0&&CE.hCN(sel[0],'selected')){for(var sid in CE.CEI.g_selfiles['celist']){var file=CE.CEU.shallowCopy(CE.CEI.g_selfiles['celist'][sid]);file.svc=file.svc||CE.CEI.getCurSvc(file);sourceFiles.push(file);}}else{var file=CE.CEU.shallowCopy(drag.src.file);file.svc=file.svc||CE.CEI.getCurSvc(file);sourceFiles.push(file);}
var destFolder;var dropEl=evt.target;while(dropEl&&dropEl.id!='cemain'){var prefLen=!dropEl.id?-1:dropEl.id.indexOf('_');var prefix=(prefLen==-1)?'':dropEl.id.substr(0,prefLen);if(prefix=='cecnt'){for(var i=0;i<g_curpage['celist'].length;++i){var gid=CE.CEI.getGid('celist',g_curpage['celist'][i].fileid,g_curpage['celist'][i]);if(dropEl.id==gid){if(g_curpage['celist'][i].type==CE.FILE_TYPE_DIRECTORY)
destFolder=CE.CEU.shallowCopy(g_curpage['celist'][i]);break;}}
break;}
dropEl=dropEl.parentNode;}
if(!destFolder)
return;destFolder.svc=destFolder.svc||CE.CEI.getCurSvc(destFolder);if(!canDoEditTypeActions(destFolder)){CE.CEU.showMessage(CE.STRTAB.lookup('view.copycaps'),CE.STRTAB.lookup('view.copy.nowrite'));return;}
var xfer=new TransferFiles();xfer.transferFiles(sourceFiles,destFolder);return false;}
function handleTrashAlbumFile(co){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.slidedir.delete.title'),CE.STRTAB.lookup('ceui.slidedir.delete.msg',CE.CEI.getDispFn(co.file)),[{name:'yes',label:CE.STRTAB.lookup("view.yes"),callback:function(){CE.CEU.svc.asyncRPC('POST',"removeAlbumFile",['albumid',that.g_curalbum.albumid,'deviceid',co.file.deviceid,'serviceid',co.file.serviceid,'fileid',co.file.fileid,'albumindex',(co.file.albumindex?co.file.albumindex:'')],function(){CE.CEUI.reloadContentCWD();},CE.CEI.onGenericFailure);return true;}},{name:'no',label:CE.STRTAB.lookup("view.no")}]);dlg.show();}
function handleTrashAction(co){var owned=(co.file.fileid=='-1'&&co.file.album&&CE.CEI.g_albummap[co.file.album.albumid])||CE.CEI.isOwnedFile(co.file);var shlst=CE.CEUI.isSharedFoldersListing();var myshare=(shlst&&owned);var sharedwith=(shlst&&!owned);if(!sharedwith&&co.file.svc&&co.file.svc.albumid&&CE.CEI.g_albummap[co.file.svc.albumid]){var album=CE.CEI.g_albummap[co.file.svc.albumid];if(album.root&&album.root.fileid==co.file.fileid){onDeleteFolderShareClick({albumid:co.file.svc.albumid},null,null,CE.CEUI.isSlideAlbListing());return;}else if(album.files){for(var i=0;i<album.files.length;++i){if(album.files[i].fileid==co.file.fileid){onDeleteFolderShareClick({albumid:co.file.svc.albumid},null,null,CE.CEUI.isSlideAlbListing());return;}}}}else if(!sharedwith&&co.file.album&&CE.CEI.g_albummap[co.file.album.albumid]){onDeleteFolderShareClick({albumid:co.file.album.albumid},null,null,CE.CEUI.isSlideAlbListing());return;}else if(!myshare&&co.file.svc&&co.file.svc.albumid&&CE.CEI.g_sharemap[co.file.svc.albumid]){var share=CE.CEI.g_sharemap[co.file.svc.albumid];if(share.root&&share.root.fileid==co.file.fileid){onRemoveFolderShareClick({album:share});return;}else if(share.files){for(var i=0;i<share.files.length;++i){if(share.files[i].fileid==co.file.fileid){onRemoveFolderShareClick({album:share});return;}}}}else if(!myshare&&co.file.album&&CE.CEI.g_sharemap[co.file.album.albumid]){onRemoveFolderShareClick({album:co.file.album});return;}
if(that.g_curalbum&&that.g_curalbum.albumtype==CE.FILE_TYPE_SLIDEALBUM){return handleTrashAlbumFile(co);}
if(showReadOnlyError(CE.STRTAB.lookup('view.delete'),CE.STRTAB.lookupel("view.onreadonlydrive"))){return;}
if(!g_deleteconfirm){g_deleteconfirm=new DeleteConfirmDialog();}
g_deleteconfirm.show(co.file);}
function disallowedShareWarning(noShow){var dvc=null;if(that.g_cursvc){dvc=that.g_cursvc.device;}else if(that.g_curalbum&&that.g_curalbum.root&&that.g_curalbum.root.deviceid){var svc=CE.CEI.g_svcmap[that.g_curalbum.root.deviceid+":_:"+that.g_curalbum.root.serviceid];if(svc){dvc=svc.device;}}
if(dvc&&dvc.sku&&dvc.sku.terms!=0){if(dvc.sku.terms&1){var now=new Date();if((dvc.valstart+dvc.valend)<now.getTime()){if(!noShow)CE.rCN("cetrialexpired","hidden");return true;}
if(!g_showedtrialwarning){if((dvc.valstart+dvc.valend)<(now.getTime()+(4*24*60*60*1000))){if(!noShow){g_showedtrialwarning=true;CE.rCN('cetrialwarn',"hidden");}
return true;}}}}
return false;}
function handleParentFolderAction(co){CE.CEU.showLoadingAni(true);var folders=[];var svc=co.svc||CE.CEI.getCurSvc(co.file);if(svc.deviceid&&svc.serviceid&&CE.CEI.g_svcmap[svc.deviceid+':_:'+svc.serviceid])
svc=CE.CEI.g_svcmap[svc.deviceid+':_:'+svc.serviceid];var multiDev=(svc.device&&svc.device.type&&svc.device.type.indexOf(':pppc')!=-1)?svc.device:null;var postOp=function(){if(folders.length){CE.CEUI.onClickHeadTab('files',true,true);g_cursearch=null;g_curscrit=null;if(folders[0].fileid==0&&svc.id&&CE.CEI.g_svcmap[svc.id]){CE.CEUI.g_curmsvc=multiDev;CE.CEUI.g_cursvc=CE.CEI.g_svcmap[svc.id];CE.CEUI.g_curalbum=null;updateSidebarState(multiDev?(multiDev.deviceid+':_:DEVPC'):svc.id);}else if(folders[0].fileid!=0&&svc.fileid){CE.CEUI.g_cursvc=null;for(var aid in CE.CEI.g_sharemap){if(CE.CEI.g_sharemap[aid].root.fileid==svc.fileid){CE.CEUI.g_curalbum=CE.CEI.g_sharemap[aid];updateSidebarState(CE.CEUI.g_curalbum.albumid);break;}}}
bcFlush();if(multiDev){CE.CEUI.g_cursvc=CE.CEI.g_svcmap[svc.id];bcAppend({id:'0',name:svc.name,file:{fileid:'0',filename:svc.name,name:svc.name,mimetype:'application/octet-stream',size:'0',type:'1','svc':svc,deviceid:svc.deviceid,serviceid:svc.serviceid,multisvc:true}});}
for(var i=1;i<folders.length;++i){var crumbCo={id:folders[i].fileid,name:folders[i].filename,file:folders[i]};bcAppend(crumbCo);}
CE.rCN("cebc","hidden");CE.CEUI.reloadContentCWD(co.jumpcb);}};var getParentFolder=function(parentId){if(svc.fileid&&svc.fileid==parentId){folders.unshift(svc);postOp();return;}
var args=[];args.push('deviceid',svc.deviceid);args.push('serviceid',svc.serviceid);args.push('fileid',parentId);CE.CEU.svc.asyncRPC("POST","getFile",args,function(r){folders.unshift(r.file);if(r.file.fileid==0||(svc.fileid&&r.file.fileid==svc.fileid))
postOp();else
getParentFolder(r.file.parentid);},postOp);};getParentFolder(co.file.parentid);}
function handleMailAction(co){if(co&&co.file&&co.file.svc&&co.file.svc.albumid){var div=CE.dce('div');(div.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('sharee.mailopts.msg'));var checkbox=CE.dce('input','cemailoptout','cecheck rightmarg');checkbox.type='checkbox';var checkDiv=div.appendChild(CE.dce('div'));checkDiv.appendChild(checkbox);(checkDiv.appendChild(CE.dcl('cemailoptout'))).appendChild(CE.STRTAB.lookupel('sharee.mailopts.optout'));checkbox.checked=(CE.CEI.getOption('noupd_'+co.file.svc.albumid)=='1');var onOk=function(){CE.CEI.setOption('noupd_'+co.file.svc.albumid,checkbox.checked?'1':'0');return true;};var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('sharee.mailopts.title'),div,[{name:'ok',label:CE.STRTAB.lookup('button.ok'),callback:onOk},{name:'cancel',label:CE.STRTAB.lookup('button.cancel')}]);dlg.show();}}
this.showAllShareStats=function(){CE.CEU.showLoadingAni(true);var allstats=[];var files=[];var count=0;CE.CEI.appendShareFolders(files,CE.CEI.g_albummap,false,false,'celist');for(var i=0;i<files.length;++i){if(files[i].albumtype==CE.FILE_TYPE_SLIDEALBUM&&!CE.CEI.getOption('slideshare_'+files[i].album.albumid)){++count;continue;}
var deviceid=files[i].deviceid||(files[i].svc?files[i].svc.deviceid:null);var serviceid=files[i].serviceid||(files[i].svc?files[i].svc.serviceid:null);if(!deviceid||!CE.CEI.g_devmap[deviceid]||!CE.CEI.isBizDev(CE.CEI.g_devmap[deviceid])){++count;continue;}
var args=['feature','acct','command','getAccessCounts','deviceid',deviceid,'serviceid',serviceid,'fileid',files[i].fileid];CE.CEU.svc.asyncRPC('POST','featureCommand',args,function(r,d){if(r.stats&&r.stats.length>0){if(r.stats.length>1||r.stats[0].userid!=CE.CEU.user.userid){allstats.push({'stats':r.stats,'file':d.file});}else{allstats.push({'stats':[],'file':d.file});}}else{allstats.push({'stats':[],'file':d.file});}
++count;},function(){++count;},{'file':files[i]});}
CE.CEU.poll(1000,function(){return(count==files.length);},function(){var content=CE.dce('div',null,'cemaxscroll450');var table=(content.appendChild(CE.dce('table',null,'cetable cetable100'))).appendChild(CE.dce('tbody'));var tr=table.appendChild(CE.dce('tr',null,'head'));(tr.appendChild(CE.dce('td',null,'head'))).appendChild(CE.STRTAB.lookupel('stats.share.name'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.downloads'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.views'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.streams'));allstats.sort(function(a,b){return natcompare(a.file.name.toLowerCase(),b.file.name.toLowerCase());});for(var i=0;i<allstats.length;++i){var numDownloads=0,numViews=0,numStreams=0;for(var j=0;j<allstats[i].stats.length;++j){if(allstats[i].stats[j].userid==CE.CEU.user.userid)
continue;numDownloads+=parseInt(allstats[i].stats[j].ndownloads);numViews+=parseInt(allstats[i].stats[j].nviews);numStreams+=parseInt(allstats[i].stats[j].nstreams);}
tr=table.appendChild(CE.dce('tr'));((tr.appendChild(CE.dce('td'))).appendChild(CE.dca({f:allstats[i].file,onEvent:function(e){retrieveShareStats({'file':e.f});}}))).appendChild(CE.dctn(CE.trims2(allstats[i].file.name,25)));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(numDownloads));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(numViews));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(numStreams));}
var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('stats.share.title'),content,null,null,null,'CEUDialog_wide2');dlg.show();CE.CEU.showLoadingAni(false);});};function onRetrieveShareStatsSuccess(r,d){CE.CEU.svc.asyncRPC('POST','listAlbumShares',['albumid',d.file.svc.albumid],function(ra){var numDownloads=0,numViews=0,numStreams=0;var users={};var shares=ra?(ra.shares||[]):[];if(d.file.svc.publicid&&d.file.svc.publicid!=''){shares.push({user:{userid:'00000000000000000000000000000000',email:CE.STRTAB.lookup('stats.share.public')}});}
for(var i=0;i<shares.length;++i){if(shares[i].user.userid==CE.CEU.user.userid)
continue;users[shares[i].user.userid]={'email':shares[i].user.email,'stats':{ndownloads:0,nviews:0,nstreams:0}};for(var j=0;j<r.stats.length;++j){if(r.stats[j].userid==shares[i].user.userid){users[shares[i].user.userid].stats=r.stats[j];numDownloads+=parseInt(r.stats[j].ndownloads);numViews+=parseInt(r.stats[j].nviews);numStreams+=parseInt(r.stats[j].nstreams);}}}
var content=CE.dce('div');(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('stats.share.statsfor',d.file.name));var table=((content.appendChild(CE.dce('div',null,'cemaxscroll450'))).appendChild(CE.dce('table',null,'cetable cetable100'))).appendChild(CE.dce('tbody'));var tr=table.appendChild(CE.dce('tr',null,'head'));(tr.appendChild(CE.dce('td',null,'head'))).appendChild(CE.STRTAB.lookupel('stats.share.user'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.downloads'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.views'));(tr.appendChild(CE.dce('td',null,'head w20pc'))).appendChild(CE.STRTAB.lookupel('stats.share.access.streams'));for(var uid in users){tr=table.appendChild(CE.dce('tr'));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(CE.trims2(users[uid].email,25)));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(parseInt(users[uid].stats.ndownloads)));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(parseInt(users[uid].stats.nviews)));(tr.appendChild(CE.dce('td'))).appendChild(CE.dctn(parseInt(users[uid].stats.nstreams)));}
tr=table.appendChild(CE.dce('tr'));((tr.appendChild(CE.dce('td'))).appendChild(CE.dce('span',null,'right-float'))).appendChild(CE.STRTAB.lookupel('stats.share.total'));(tr.appendChild(CE.dce('td',null,'head'))).appendChild(CE.dctn(parseInt(numDownloads)));(tr.appendChild(CE.dce('td',null,'head'))).appendChild(CE.dctn(parseInt(numViews)));(tr.appendChild(CE.dce('td',null,'head'))).appendChild(CE.dctn(parseInt(numStreams)));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('stats.share.title'),content,null,null,null,'CEUDialog_wide2');dlg.show();CE.CEU.showLoadingAni(false);},CE.CEI.onGenericFailure);}
function onRetrieveShareStatsFailure(result){var div=CE.dce('div');div.appendChild(CE.STRTAB.lookupel('stats.share.access.notavail'));var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('stats.share.title'),div);dlg.show();CE.CEU.showLoadingAni(false);}
function retrieveShareStats(co){CE.CEU.showLoadingAni(true);var deviceid=null;var serviceid=null;var fileid=null;if(co.file){if(co.file.deviceid){deviceid=co.file.deviceid;}
if(co.file.serviceid){serviceid=co.file.serviceid;}
if(co.file.fileid){fileid=co.file.fileid;}}
if(that.g_curalbum&&that.g_curalbum.root){if(deviceid==null){deviceid=that.g_curalbum.root.deviceid;}
if(serviceid==null){serviceid=that.g_curalbum.root.deviceid;}
if(fileid==null){fileid=that.g_curalbum.root.deviceid;}}
var args=['feature','acct','command','getAccessCounts','deviceid',deviceid,'serviceid',serviceid,'fileid',fileid];if(deviceid&&serviceid&&fileid){CE.CEU.svc.asyncRPC('POST','featureCommand',args,onRetrieveShareStatsSuccess,onRetrieveShareStatsFailure,{'file':co.file});}else{onRetrieveShareStatsFailure(null);}}
function onActionContent(co,action,evt,tel){CE.CEDBG.println('CEUI: onActionContent: ['+action+']');closeContextMenu();switch(action){case'zoom':case'zoomfolder':case'zoommovie':case'editshow':return CE.CEUI.onEventContent(co,evt,tel);case'download':downloadfile(co.file);break;case'print':var docprev=new DocumentPreview(co.file);docprev.print();break;case'share_publnk':showLinkDlg({'album':CE.CEUI.findShare(co.file),'file':co.file});break;case'share_dislnk':disableShareLinks({'file':co.file});break;case'share_send':var sender=new CE.CEI.SendShare(co.file,CE.CEUI.findShare(co.file));sender.show(false);break;case'share_collab':var sender=new CE.CEI.SendShare(co.file,CE.CEUI.findShare(co.file));sender.show(true);break;case'share_perms':showCollabPermsDlg({'album':CE.CEUI.findShare(co.file),'file':co.file});break;case'trash':case'trashshare':case'trashslidealb':case'trashslide':handleTrashAction(co);break;case'trashmyshare':onDeleteFolderShareClick({albumid:CE.CEUI.findShare(co.file).albumid});break;case'mail':handleMailAction(co);break;case'folder':handleParentFolderAction(co);break;case'rename':var gid=CE.CEI.getGid(co.go?co.go.grd:null,co.id,co.file);if(CE.CEUI.g_renameEvts[gid])CE.CEUI.g_renameEvts[gid].onEvent(CE.CEUI.g_renameEvts[gid]);break;case'stats':retrieveShareStats(co);break;case'copy_copy':case'copy_move':promptTransferFiles(co.file);break;case'play':CE.CEUI.playAudioGroup(co);break;case'queuemusic':queueSelectedSongs(co);break;}
return false;}
this.isDocFile=function(file){if(file.mimetype){for(var i=0;i<DOC_MIME_TYPES.length;++i){if(file.mimetype==DOC_MIME_TYPES[i])
return true;}}
var name=file.filename||file.name;for(var i=0;i<DOC_EXTENSIONS.length;++i){if(name.length>DOC_EXTENSIONS[i].length){if(name.substr(name.length-DOC_EXTENSIONS[i].length-1)==('.'+DOC_EXTENSIONS[i])){return true;}}}
return false;};function canPlayVideoType(mimetype){for(var i=0;i<FLASH_VIDEO_MIME_TYPES.length;++i){if(FLASH_VIDEO_MIME_TYPES[i]==mimetype){return true;}}
return false;}
this.isVideoFile=function(file,evenIfNoStream){if(file.mimetype){if(file.mimetype.substr(0,6)=='video/'){if(evenIfNoStream)
return true;var svc=CE.CEI.getCurSvc(file);if(svc.xcodeStream!='never'||CE.CEI.getOption('stream_ask_'+svc.deviceid+'_'+svc.serviceid)||!canPlayVideoType(file.mimetype)){if(hasFullStream(file))
return true;}}
return canPlayVideoType(file.mimetype);}
return false;};this.isAudioFile=function(file){if(file.mimetype){for(var i=0;i<FLASH_AUDIO_MIME_TYPES.length;++i){if(FLASH_AUDIO_MIME_TYPES[i]==file.mimetype){return true;}}}
return false;};this.onSlidePreviewVideoComplete=function(){if(g_slideshowObj)
g_slideshowObj.pause(false,true);};this.onPreviewVideoComplete=function(){};this.hasVideoSupport=function(){if(g_videoSupport){return g_videoSupport;}
g_videoSupport=[];if(CE.CEI.getOption('disablehtml5video')!='1'){var v=document.createElement('video');if(!!v.canPlayType){var canPlay=v.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"');if(canPlay=='maybe'||canPlay=='probably'){g_videoSupport.push('html5');}}}
if(BrowserDetect.browser&&BrowserDetect.browser.toLowerCase()=='safari'&&parseInt(BrowserDetect.version)>=5){g_videoSupport.push('m3u8');}
var version=CE.CEU.getFlashVersion();if(!(version[0]<9||(version[0]==9&&version[1]<1&&version[2]<115))){g_videoSupport.push('flash');}
if(g_videoSupport.length==0)
g_videoSupport.push('none');return g_videoSupport;};this.createVideoEl=function(parent,id,videoUrl,width,height,autoPlay,muted,endEvent,controls,wmode,image,isStreamer,vidElType){var oldVid=CE.$(id);if(oldVid){if(oldVid.pause&&typeof(oldVid.pause)=='function'&&!oldVid.paused&&!oldVid.ended){oldVid.pause();oldVid.setAttribute('src','');}
if(oldVid.sendEvent&&typeof(oldVid.sendEvent)=='function'){oldVid.sendEvent('stop');oldVid.sendEvent('load',new Array());}
CE.rac(oldVid);oldVid.parentNode.removeChild(oldVid);oldVid=null;}
if(!isStreamer&&CE.CEUI.hasVideoSupport()[0]=='none'){(parent.appendChild(CE.dce('div',null,'flashupgrade_cont'))).appendChild(CE.CEU.getFlashUpgradeHTML());return;}
if(isStreamer||vidElType=='flash'||g_videoSupport[0]=='flash'){var player=CE.STRTAB.lookup('flashbase')+'flvplayer.swf';
var so=new SWFObject(player,id,width,height,'8');so.addParam('allowfulqualitylscreen','high');so.addParam('allowfullscreen','true');so.addVariable('enablejs','true');so.addVariable('javascriptid',id);so.addVariable('file',videoUrl);so.addVariable('displayheight',height);so.addVariable('autostart',autoPlay?'true':'false');if(controls)
so.addVariable('skin',CE.STRTAB.lookup('flashbase')+'stijl.swf');else
so.addVariable('controlbar','none');so.addVariable('mute',muted?'true':'false');if(wmode)
so.addParam('wmode',wmode);if(image)
so.addVariable('image',image);
so.write(parent);return CE.CEU.$(id);}else{var vid=parent.appendChild(CE.dce('video',id,'cevideo'));if(controls)
vid.controls='true';vid.setAttribute('width',width);vid.setAttribute('height',height);vid.setAttribute('src',videoUrl);if(endEvent)
vid.addEventListener('ended',endEvent,true);if(muted){vid.addEventListener('canplay',function(){vid.muted=true;},false);}
if(autoPlay){vid.play();}else if(!controls){var playlnk=parent.appendChild(CE.dca({onEvent:function(){CE.aCN(playlnk,'hidden');vid.play();}}));playlnk.appendChild(CE.dce('div',null,'cevidplaybut'));}
return vid;}};function getParentByTag(el,tagname){while(el){if(el.tagName.toLowerCase()==tagname.toLowerCase())
return el;if(el.id=='cemain')
return null;el=el.parentNode;}
return null;}
function hasParent(el,parentIds){while(el){for(var i=0;i<parentIds.length;++i){if(el.id==parentIds[i])
return true;}
if(el.id=='cemain')
return false;el=el.parentNode;}
return false;}
this.onContextMenu=function(){return(CE.$('cecontextmenu')==null);};function closeContextMenu(ev,force,keepSlider){if(ev&&ev.target){if(!hasParent(ev.target,['cemylib_ss_opts','cesearch_dropper'])){CE.aCN('cemylib_ss_opts','hidden');}
if(CE.CEU.$('cedragmenu')&&!hasParent(ev.target,['dragmenubut1','dragmenubut2'])){CE.CEU.$('cedragmenu').parentNode.removeChild(CE.CEU.$('cedragmenu'));}}
var wasSlider=false;if(!keepSlider){var slider=$('ceslider');if(slider&&!CE.getByClass(document.body,'div','CEUDialog_hide').length){var parentTr=getParentByTag(slider,'tr');if(!ev||!ev.target||!parentTr||!hasParent(ev.target,[parentTr.id])){closeSlider();}else{wasSlider=true;}}}
var menu=CE.CEU.$('cecontextmenu');if(menu){if(force||!ev||!ev.target||!CE.hCN(ev.target,'cepopsmenu')){if(menu.cbClose)
menu.cbClose();menu.parentNode.removeChild(menu);}}
return wasSlider;}
this.showContextMenu=function(co,evt,position,extraClass,maskFilename,forceSingle,cbClose,parent,items){if(!position&&co&&co.go.grd!='celist')
return;var noSel=co?!CE.CEU.structlen(CE.CEI.g_selfiles[co.go.grd]):false;if(co&&!noSel&&!forceSingle&&co.file){var gid=CE.CEI.getGid(co.go.grd,co.file.fileid,co.file);if(!CE.CEI.g_selfiles[co.go.grd][gid])
return;}
if(!position&&!parent){if(evt.pageX||evt.pageY){position={'left':evt.pageX+'px','top':evt.pageY+'px'};}else{position={'left':(CE.CEU.getScrollLeft()+evt.clientX)+'px','top':(CE.CEU.getScrollTop()+(evt.clientY-$('cepage').offsetTop))+'px'};}}else if(!position){position={'left':(parent.scrollLeft+evt.clientX)+'px','top':(parent.scrollTop+evt.clientY-$('cepage').offsetTop)+'px'};}
var curMenu=CE.$('cecontextmenu');if(curMenu){var exists=true;for(var s in position){if(curMenu.style[s]!=position[s]){exists=false;break;}}
if(exists){closeContextMenu(evt,true);return;}}
closeContextMenu(evt,true);parent=parent||document.body;var menu=parent.appendChild(CE.dce('div','cecontextmenu',extraClass));menu.cbClose=cbClose;for(var s in position){menu.style[s]=position[s];}
CE.CEU.attachEvent(menu,'mouseup',{onEvent:function(d,e){if((e.which&&e.which!=1)||(e.button&&e.button!=1)){e.cancelBubble=true;if(e.stopPropagation)e.stopPropagation();}}});if(maskFilename)
menu.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+maskFilename,null,'mask'));var firstItem;if(items){for(var i=0;i<items.length;++i){(function(inf){if(inf.sep){menu.appendChild(CE.dce('div',null,'cecontextitem sep'));}else{var item=menu.appendChild(CE.dce('div',null,'cecontextitem'+(inf.icon?'':' noicon')+(inf.disabled?' disabled':'')));item.appendChild(CE.dctn(inf.label));item.tabIndex=0;if(inf.cb){var e={onEvent:function(eh,evt,tel){closeContextMenu(evt,true);inf.cb();evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();}};CE.CEU.attachEvent(item,'mouseup',e);CE.CEU.attachEnterPressedEvent(item,e);firstItem=firstItem||item;}}})(items[i]);}}else if(forceSingle||(co&&CE.CEU.structlen(CE.CEI.g_selfiles[co.go.grd])<=1)){var actions=CE.CEUI.getActionTypesForFile(co.file,co.slidedir);for(var i=0;i<actions.length;++i){if(HIDDEN_ACTIONS.indexOf(actions[i])!=-1)
continue;(function(i){var item=menu.appendChild(CE.dce('div',null,'cecontextitem'));item.appendChild(CE.STRTAB.lookupel('view.hint.'+actions[i]));item.tabIndex=0;var e={onEvent:function(eh,evt,tel){co.onAction(co,actions[i],{type:'mouseup'},tel);evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();},co:co,action:actions[i]};CE.CEU.attachEvent(item,'mouseup',e);CE.CEU.attachEnterPressedEvent(item,e);firstItem=firstItem||item;})(i);}}else{CE.CEUI.showMoreActions(menu);}
if(firstItem){firstItem.focus();}};function showTempSlideshow(useSlideIndex,slideIndex,autoPlay,noPopulate){g_lastViewSize=(CE.CEI.g_viewmode==1)?'list':CE.CEUI.g_viewsize;g_lastViewMode=CE.CEI.g_viewmode;CE.CEI.g_viewmode=0;CE.CEUI.g_viewsize='photo';showViewMode();if(!noPopulate){var go={viewmode:CE.CEI.g_viewmode,'grd':'celist',useslideindex:useSlideIndex,slideindex:slideIndex,autoplay:autoPlay,noresort:true};var files=g_curpage['celist'];CE.CEUI.clearContent('celist');populateContent({'files':files,'totalcount':g_curtotalcount[go.grd],'pageoffset':g_curpageoffset[go.grd]},go);}}
this.onEventContent=function(co,evt,tel){switch(evt.type){case'mouseup':if(g_selrect&&g_selrect.touched)
break;if(g_diddrag){break;}
if((evt.which&&evt.which!=1)||(evt.button&&evt.button!=1)||evt.ctrlKey){evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();break;}
case'click':if(closeSlider(-1))
break;closeContextMenu(evt);if(g_curdrag){g_curdrag=null;}
if(co.file){if(evt.shiftKey){var ico=CE.$(CE.CEI.getGid(co.go.grd,co.id,co.file));if(ico){var check=CE.getByClass(ico,'div','selectcheck');if(check.length){CE.CEU.triggerEvent(check[0],'click');evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();break;}}}
if(CE.CEI.isDescendableFile(co.file)){if(co.file.type==CE.FILE_TYPE_SLIDEALBUM&&co.file.album&&co.go&&co.go.grd&&co.go.grd=="celist"){that.g_cursvc=null;that.g_curalbum=co.file.album;co.go.album=co.file.album;pushContentStack(co);updateCustomUi(null,that.g_curalbum.albumid);}else{if(co.file.svc){if(that.g_curmsvc){that.g_cursvc=co.file.svc;}else if(co.file.svc.albumid){that.g_cursvc=null;that.g_curalbum=co.file.svc;updateCustomUi(null,that.g_curalbum.albumid);}else if(!that.g_curalbum||CE.CEU.isLoggedIn()){that.g_cursvc=co.file.svc;that.g_curalbum=null;}
if(co.go&&co.file.svc)
co.go.svc=co.file.svc;}
pushContentStack(co);}}else if(!co.go||!co.go.nopreview){if(co.broken)break;if(canDoPreview(co.file)&&g_curpage['celist']){trackEvent('Open',null,co.file);for(var i=0;i<g_curpage['celist'].length;i++){if(g_curpage['celist'][i].fileid==co.id){if(CE.CEUI.isVideoFile(g_curpage['celist'][i])){if(authPlayMedia(CE.CEI.getCurSvc(g_curpage['celist'][i]),g_curpage['celist'][i])){onClickVideo(co,i);}}else if(CE.CEU.isImageFile(g_curpage['celist'][i])){showTempSlideshow(true,i,false);}else if(CE.CEUI.isAudioFile(g_curpage['celist'][i])){if(authPlayMedia(CE.CEI.getCurSvc(g_curpage['celist'][i]),g_curpage['celist'][i])){playAudioFiles(g_curpage['celist'],i);}}else if(CE.CEUI.isDocFile(g_curpage['celist'][i])){var docprev=new DocumentPreview(g_curpage['celist'][i]);docprev.show();}
evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();break;}}}}
evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();}
break;case'mousedown':closeContextMenu(evt,false,true);if((!evt.which||evt.which==1)&&(!evt.button||evt.button==1))
startDrag(co,evt,tel);if((evt.which&&evt.which!=1)||(evt.button&&evt.button!=1)||evt.ctrlKey){CE.CEUI.showContextMenu(co,evt,null,null,null,null,null,CE.$('cepage'));evt.cancelBubble=true;if(evt.stopPropagation)evt.stopPropagation();}
break;case'mouseover':break;case'mouseout':break;}
return false;};function onClickVideo(co,fileIndex){var svc=CE.CEI.getCurSvc(co.file);var hasStream=hasFullStream(co.file);if(hasStream||co.file.stream_generating||!CE.CEI.getOption('stream_ask_'+svc.deviceid+'_'+svc.serviceid)){showTempSlideshow(true,fileIndex,false);}else if(!hasStream&&CE.CEI.getOption('stream_ask_'+svc.deviceid+'_'+svc.serviceid)){promptTranscode(co.file,svc,true,false,function(){showTempSlideshow(true,fileIndex,false);},function(){});}}
function pushContentStack(co){trackEvent('Open',null,co.file);if(co.go&&co.go.norempage)
delete co.go.norempage;if(co.go&&co.go.grd!='celist'){reloadContent(co.id,co.go,co.file);}else{bcAppend(co);g_curpageoffset['celist']=0;if(co.go)
co.go.pageoffset=0;reloadContent(co.id,co.go,co.file,co.cb);}}
function onFileFailureMessagesSuccess(r){if(r.messages){var msgbody=CE.CEU.$("driveerrormsgs");var messages=r.messages;var lastcode=0;CE.rac(msgbody);for(var curmsgnum=messages.length;curmsgnum>0;curmsgnum--){var div=CE.dce("div");if(lastcode!=messages[curmsgnum-1].msgcode){appendMessageToElem(div,messages,curmsgnum);msgbody.appendChild(div);}
lastcode=messages[curmsgnum-1].msgcode;}}}
function onFileFailureMessagesFailure(r){}
function onListFilesFailure(r,data,method){CE.CEU.showLoadingAni(false);if(!CE.CEU.isLoggedIn()&&window.location.pathname.indexOf('album.html')==-1&&window.location.pathname.indexOf('/share/')==-1){window.location.replace("/signin#logout");}
var e=r["HB-EXCEPTION"];if(e&&e.ecode){switch(e.ecode){case 815:case 816:CE.rCN("cepayment","hidden");return true;}}
if(data&&data.grd=='celist'){var args=[];if(data.scrit&&data.scrit!=''&&g_curpath.length>0){bcFlush();CE.CEUI.reloadContentCWD();return true;}
if(that.g_curalbum){showEmptyContentDiv("albumdriveerror");args.push("deviceid");args.push(that.g_curalbum.root.deviceid);args.push("serviceid");args.push(that.g_curalbum.root.serviceid);}else if(that.g_cursvc){if(that.g_cursvc.readonly&&method=="searchFiles"){}else{showEmptyContentDiv("driveerror");args.push("deviceid");args.push(that.g_cursvc.deviceid);args.push("serviceid");args.push(that.g_cursvc.serviceid);}}else if(window.location.pathname.indexOf('album.html')==-1&&window.location.pathname.indexOf('/share/')==-1){showEmptyContentDiv("albumdriveerror");}
if(args.length==4){args.push("cmd");args.push("getmessages");CE.CEU.svc.asyncRPC('POST','sendServiceCommand',args,onFileFailureMessagesSuccess,onFileFailureMessagesFailure);}}}
this.clearContent=function(grd,hidePagination,noHead){that.clearContentState(grd,hidePagination,noHead);that.clearContentUi(grd,hidePagination,noHead);};this.clearContentState=function(grd,hidePagination,noHead){g_curpage[grd]=null;g_curpageByShid[grd]={};CE.CEI.g_selall[grd]=null;CE.CEI.g_selfiles[grd]={};if(grd=='celist'){CE.CEUI.g_isSlideAlb=false;CE.CEUI.g_wasSearch=false;CE.CEUI.g_renameEvts={};}};this.clearContentUi=function(grd,hidePagination,noHead){CE.CEI.Hinter().closeOldHints();CE.rCN('cecontentmain','cemultsel');if(grd=='celist'){showEmptyContentDiv(null,hidePagination);if(!noHead)
CE.CEUI.onClickHeadTab(g_headtab,true,true);CE.aCN('cetool_selall','hidden');CE.aCN('cetool_printslide','hidden');CE.aCN('cetool_dlslide','hidden');CE.aCN('cetool_shareslide','hidden');CE.aCN('cetool_socialbuts','hidden');CE.aCN('cemyshares_grpmode','hidden');CE.aCN('cemyshares_stats','hidden');var docprev=CE.CEU.$('cedocprev');if(docprev){CE.rac(docprev);docprev.parentNode.removeChild(docprev);}
var oldVid=CE.$('slide_flv');if(oldVid){if(oldVid.pause&&typeof(oldVid.pause)=='function'&&!oldVid.paused&&!oldVid.ended){oldVid.pause();oldVid.setAttribute('src','');}
if(oldVid.sendEvent&&typeof(oldVid.sendEvent)=='function'){oldVid.sendEvent('stop');oldVid.sendEvent('load',new Array());}
CE.rac(oldVid);oldVid.parentNode.removeChild(oldVid);oldVid=null;}
var slideExtra=CE.CEU.$('slideshow_extra_div');if(slideExtra){CE.rac(slideExtra);slideExtra.parentNode.removeChild(slideExtra);}
if(g_slideshowObj){g_slideshowObj.destroy();g_slideshowObj=null;var slideDiv=CE.CEU.$('show_div');if(slideDiv){CE.rac(slideDiv);slideDiv.parentNode.removeChild(slideDiv);CE.rCN(document.body,'cefullwinslid');}
if(CE.CEUI.g_isSlideAlb)
CE.CEUI.pauseAudio();}
showEmptyContentDiv(null,hidePagination);CE.CEUI.onPageResize();}
var el=CE.$(grd);if(el)
CE.rac(el);}
function loadCachedContent(go,pageoffset,maxCount,cbDone,cbNext){if(go.grd=='celist')
that.g_wasSearch=true;if(!pageoffset&&g_searchCache[go.stype]){CE.CEU.poll(200,function(){return(!g_searchCache[go.stype]||!g_searchCache[go.stype].loading)},function(){if(!g_searchCache[go.stype])
return;if(cbDone)
cbDone(g_searchCache[go.stype],go,null,null,cbNext);});}else{if(!pageoffset)
g_searchCache[go.stype]={loading:true};var forceSort={'cesearch_artists':'+name','cesearch_albums':'+name','cesearch_genres':'+name','cesearch_audio':'+name','cesearch_imagetime':'-name','cesearch_movietime':'-name'};var sortCrit=forceSort[go.stype]||g_sortcrit;CE.CEI.reloadSearchContent(go,pageoffset,sortCrit,maxCount,null,true,false,function(r){if(!pageoffset)
g_searchCache[go.stype]=r;if(cbDone)
cbDone(r,go,null,null,cbNext);});}}
this.reloadCachedContent=function(){if(g_cursearch&&g_searchCache[g_cursearch]){delete g_searchCache[g_cursearch];}
reloadContent();};function reloadContent(pid,go,file,cb){if(!go)
go={viewmode:CE.CEI.g_viewmode,actions:true,scrit:g_curscrit,stype:g_cursearch};if(go.viewmode===undefined)
go.viewmode=CE.CEI.g_viewmode;if(!pid)
pid=go.pid;if(!go.grd)
go.grd='celist';if(go.grd=='celist'&&g_curscrit&&g_curscrit!=''&&!g_curpageoffset[go.grd])
CE.CEI.g_searchResults[go.grd]={}
if(pid===undefined||pid===null){if(g_curpath.length>0){pid=g_curpath[g_curpath.length-1].id;if(!file)
file=g_curpath[g_curpath.length-1].file;}}
go.pid=pid;if(!go.svc&&!go.album){if(that.g_cursvc){go.svc=that.g_cursvc;}else if(that.g_curalbum){go.album=that.g_curalbum;if(go.album.albumtype!=CE.FILE_TYPE_SLIDEALBUM){if(!file&&go.album.root&&go.album.root.cousins){file=go.album.root;}else if(!file&&go.album.files){file=CE.CEU.shallowCopy(go.album.files[0]);file.svc={deviceid:file.deviceid,serviceid:file.serviceid};file.cousins=[];for(var i=1;i<go.album.files.length;++i){go.album.files[i].svc={deviceid:go.album.files[i].deviceid,serviceid:go.album.files[i].serviceid};file.cousins.push(go.album.files[i]);}}}}else if(that.g_curmsvc){go.msvc=that.g_curmsvc;}}
var maxCount=NPERPAGE;var pageoffset=g_curpageoffset[go.grd];if(go.pageoffset)
pageoffset=go.pageoffset;var el=CE.CEU.$(go.grd);if(el){if(!go.inline){CE.CEU.showLoadingAni(true);go.clearcontentui=true;CE.CEUI.clearContentState(go.grd);}
if(go.grd=='celist'&&go.album&&go.album.albumtype==CE.FILE_TYPE_SLIDEALBUM&&(!go.pid||go.pid=='-1')&&!go.scrit){CE.CEUI.g_isSlideAlb=true;maxCount=NPERPAGE_SLIDEALB;CE.CEUI.onPageResize();}
if(go.album&&go.album.albumtype==CE.FILE_TYPE_FILEALBUM){return populateContent({'files':[go.album.root]},go,null,null,cb);}
if(go.grd=='celist'&&!pid&&g_cursearch&&(g_cursearch=='celibshares_album'||g_cursearch=='celibshares_share'||g_cursearch=='celibshares_collab')){if(!go.inline)
CE.CEUI.clearContentUi(go.grd);return CE.CEUI.showSharedFolders(g_cursearch.substr(12),go.grd,go.viewmode,null,true,cb);}
if(go.grd=='celist'&&!pid&&g_cursearch&&(g_cursearch=='celibshares_lnks')){if(!go.inline)
CE.CEUI.clearContentUi(go.grd);return CE.CEUI.showSentLinks(cb);}
if(go.grd=='celist'&&!pid&&g_cursearch&&g_cursearch=='cesearch_slidedirs'){if(!go.inline)
CE.CEUI.clearContentUi(go.grd);return showSlideAlbums(go.grd,go.viewmode,false,cb);}
if(go.grd=='celist'&&go.msvc){if(!go.inline)
CE.CEUI.clearContentUi(go.grd);return showMultiService(go.grd,go.viewmode,go.msvc,cb);}
if(!pid&&go.scrit&&go.scrit!=""){if(go.stype=='cesearch_name'){var incOwned=(go.grd!='celist'||CE.hCN('cemylib_ss_opts_my','selected')||CE.hCN('cemylib_ss_opts_all','selected'));var incShared=(go.grd=='celist'&&(CE.hCN('cemylib_ss_opts_shared','selected')||CE.hCN('cemylib_ss_opts_all','selected')));return CE.CEI.reloadSearchContent(go,pageoffset,g_sortcrit,maxCount,null,incOwned,incShared,populateContent,cb);}else{return loadCachedContent(go,pageoffset,maxCount,populateContent,cb);}}else if(file&&file.cousins){return CE.CEI.reloadSearchContent(go,pageoffset,g_sortcrit,maxCount,file,null,null,populateContent,cb);}else{CE.CEI.g_searchResults[go.grd]=null;}
function populateCb(r,d,x){populateContent(r,d,x,null,cb);}
if(go.svc){var args=['deviceid',go.svc.deviceid,'serviceid',go.svc.serviceid,'pageoffset',pageoffset,'sortcrit',g_sortcrit,'maxcount',maxCount];if(pid){args.push('parentid');args.push(pid);}
CE.CEU.svc.asyncRPC('POST','listFiles',args,populateCb,onListFilesFailure,go);}else if(go.album){if(pid&&pid!='-1'&&g_curpath.length>0&&g_curpath[0].file){var args=['pageoffset',pageoffset,'parentid',pid,'sortcrit',g_sortcrit,'maxcount',maxCount];if(go.album&&go.album.root){args.push('deviceid');args.push(go.album.root.deviceid);args.push('serviceid');args.push(go.album.root.serviceid);}
if(that.g_sharetoken){args.push("sharetoken");args.push(that.g_sharetoken);}
CE.CEU.svc.asyncRPC('POST','listFiles',args,populateCb,onListFilesFailure,go);}else{if(go.album.root&&go.album.albumtype!=CE.FILE_TYPE_SLIDEALBUM){var args=['deviceid',go.album.root.deviceid,'serviceid',go.album.root.serviceid,'pageoffset',pageoffset,'parentid',go.album.root.fileid,'sortcrit',g_sortcrit,'maxcount',maxCount];if(that.g_sharetoken){args.push("sharetoken");args.push(that.g_sharetoken);}
CE.CEU.svc.asyncRPC('POST','listFiles',args,populateCb,onListFilesFailure,go);}else{var args=['albumid',go.album.albumid,'pageoffset',pageoffset,'maxcount',maxCount];if(that.g_sharetoken)
args.push('sharetoken',that.g_sharetoken);CE.CEU.svc.asyncRPC('POST','listAlbumFiles',args,function(r,d){fixAlbumFiles(r,d,populateCb);},onListFilesFailure,go);}}}else if(that.g_sharetoken){var args=['sharetoken',that.g_sharetoken,'pageoffset',pageoffset];if(go.pid)
args.push('parentid',go.pid);if(pageoffset>0){args.push('maxcount',maxCount);CE.CEU.svc.asyncRPC('POST','listFiles',args,populateCb,onListFilesFailure,go);}else{go.maxcount=maxCount;args.push('maxcount',NPERPAGE_SLIDEALB);CE.CEU.svc.asyncRPC('POST','listFiles',args,function(r,d){var pageFiles=[];for(var i=0;i<r.files.length;++i){if(d.maxcount>0){--d.maxcount;pageFiles.push(r.files[i]);}}
r.files=pageFiles;populateCb(r,d);},onListFilesFailure,go);}}else{CE.CEU.showLoadingAni(false);if(cb)cb();}}
el=null;}
function showHelpEntry(d){CE.rac('celist');var ediv=CE.$('celist').appendChild(CE.dce('div',null,'cehelpentries'));if(d.backlink){((ediv.appendChild(CE.dce('div',null,'backlink'))).appendChild(CE.dca({onEvent:d.backlink}))).appendChild(CE.STRTAB.lookupel('help.main.return'));}
(ediv.appendChild(CE.dce('div',null,'entrytitle'))).appendChild(CE.dctn(d.entry.title));var body=ediv.appendChild(CE.dce('div',null,'body'));body.innerHTML=d.entry.body;return false;}
function showHelpEntries(d,entries,parentDiv,noFeedback){if(!noFeedback){var sel=CE.getByClass(CE.$('celearningside'),'a','active');for(var i=0;i<sel.length;++i)
CE.rCN(sel[i],'active');if(d.li)
CE.aCN(d.li.firstChild,'active');}
parentDiv=parentDiv||CE.$('celist');CE.rac(parentDiv);var ediv=parentDiv.appendChild(CE.dce('div',null,'cehelpentries'));if(entries&&entries.length){for(var i=0;i<entries.length;++i){(function(entry){var div=ediv.appendChild(CE.dce('div',null,'entry'));var de=CE.CEU.shallowCopy(d);delete de.__EID;de.onEvent=showHelpEntry;de.entry=entry;(div.appendChild(CE.dca(de))).appendChild(CE.dctn(entry.title));var datestr=CE.CEU.getDateTimeStr(new Date(entry.updated_at));(div.appendChild(CE.dce('div',null,'date'))).appendChild(CE.STRTAB.lookupel('help.entry.updated',datestr));})(entries[i]);}}else{(ediv.appendChild(CE.dce('div',null,'none'))).appendChild(CE.STRTAB.lookupel('help.entries.none'));}
CE.CEU.showLoadingAni(false);}
function showHelpForum(d,e,el,parentDiv,noFeedback,maxNumEntries){if(!noFeedback)
CE.CEU.showLoadingAni(true);var kb=new CE.CERPC('/svc/kb/');kb.asyncRPC('GET','forums/'+d.forum.id+'/entries.json',[],function(r){if(!d.backlink)
d.backlink=function(){showHelpForum(d,e,el,parentDiv,noFeedback);}
if(maxNumEntries&&r&&r.length&&r.length>maxNumEntries){r.splice(maxNumEntries,r.length-maxNumEntries);}
showHelpEntries(d,r,parentDiv,noFeedback);},function(){CE.CEU.showMessage(CE.STRTAB.lookup('help.error.title'),CE.STRTAB.lookup('help.error.msg'));});return false;}
function showHelpForums(){CE.rac('celearningtopics');var ul=CE.$('celearningtopics').appendChild(CE.dce('ul'));var kb=new CE.CERPC('/svc/kb/');kb.asyncRPC('GET','forums.json',[],showHelpForumsLang,function(){CE.CEU.showMessage(CE.STRTAB.lookup('help.error.title'),CE.STRTAB.lookup('help.error.msg'));});function showHelpForumsLang(r){var locale=CE.CEU.getCookie('locale')||'';if(locale.toLowerCase()=='en'||r.forceEnglish)
locale='';var forums=r||[];g_helpforumids=[];for(var i=0;i<forums.length;++i){(function(f){var forum=CE.CEU.shallowCopy(f);var isFaq=false;if(locale==''){var fpos=forum.name.toLowerCase().lastIndexOf('(faq)');if(fpos!=-1){isFaq=true;forum.name=forum.name.substr(0,fpos)+forum.name.substr(fpos+5);}}
var floc=extractForumLocale(forum.name);if(floc.locale==''&&locale!='')
return;if(floc.locale!=''&&floc.locale!=locale.toLowerCase())
return;if(forum.name.indexOf('Sharing')!=-1){g_helpfaqid=forum.id;}
if(isFaq){g_helpfaqid=forum.id;return;}
if(locale!=''&&!r.forceEnglish&&forum.description){forum.name=forum.description;}
g_helpforumids.push(forum.id);var li=ul.appendChild(CE.dce('li'));var a=li.appendChild(CE.dca({onEvent:showHelpForum,'forum':forum,'li':li},null,'smart-search'));a.appendChild(CE.dctn(forum.name));})(forums[i]);}
if(!g_helpforumids.length&&!r.forceEnglish){r.forceEnglish=true;showHelpForumsLang(r);}}
function extractForumLocale(rawName){var lpos=rawName.lastIndexOf('(');if(lpos==-1||lpos<=(rawName.length-9))
return{'name':rawName,'locale':''};var rpos=rawName.indexOf(')',lpos);if(rpos==-1)
return{'name':rawName,'locale':''};var locale=rawName.substr(lpos+1,rpos-lpos-1).toLowerCase();var name=rawName.substr(0,lpos)+rawName.substr(rpos+1);return{'name':name,'locale':locale};}}
function searchHelp(field,quick){g_helpsearch='';setTimeout(doSearch,quick?0:1000);function doSearch(){if(!field||!field.parentNode)
return;var query=field.value;if(g_helpsearch==query)
return setTimeout(doSearch,1000);setTimeout(function(){if(query!=field.value){return setTimeout(doSearch,200);}
g_helpsearch=query;if(query==''){CE.aCN('celearnresults','hidden');CE.rCN('celearnmenu','hidden');return setTimeout(doSearch,500);}
var kb=new CE.CERPC('/svc/kb/');kb.asyncRPC('GET','search.json?query='+encodeURIComponent(query),[],function(r){var results=[];for(var i=0;i<r.length;++i){if(g_helpforumids.indexOf(r[i].forum_id)!=-1){results.push(r[i]);}}
showHelpEntries({'forum':{name:query},backlink:function(){that.showLearningCenter({'query':query});return false;}},results,CE.$('celearnresultsentries'));CE.aCN('celearnmenu','hidden');CE.rCN('celearnresults','hidden');setTimeout(doSearch,500);},function(){CE.aCN('celearnresults','hidden');CE.rCN('celearnmenu','hidden');setTimeout(doSearch,500);});},200);}};function showSubmitTicketForm(d){var question=d.summary.value;CE.rac(d.parentDiv);var content=d.parentDiv.appendChild(CE.dce('div',null,'cehintbubble search extramarginbottom'));(content.appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupelh('help.subticket.shortsum'));var subject=(content.appendChild(CE.dce('div',null,'extramarginbottom16'))).appendChild(CE.dce('input',null,'cehelpsearch'));subject.value=question;(content.appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupel('help.subticket.msg'));var body=(content.appendChild(CE.dce('div',null,'extramarginbottom16'))).appendChild(CE.dce('textarea',null,'cehelpsearch'));((content.appendChild(CE.dce('div',null,'extramarginbottom16'))).appendChild(CE.dca({onEvent:submitTicket},null,'cebutton'))).appendChild(CE.STRTAB.lookupel('help.subticket.submit'));function submitTicket(){var bodyText=body.value+'\n\n---\n\n';bodyText+='Browser: '+(navigator.appCodeName||'')+' '+(navigator.appName||'')+' '+(navigator.appVersion||'')+'\n';bodyText+='Cookies: '+(navigator.cookieEnabled?'yes':'no')+'\n';bodyText+='Platform: '+(navigator.platform||'')+'\n';bodyText+='User-agent: '+(navigator.userAgent||'')+'\n';var premium=false;var firstdev;for(var did in CE.CEI.g_devmap){var dev=CE.CEI.g_devmap[did];firstdev=firstdev||dev;premium=premium||(dev.type.indexOf('xce:pppc')==-1)||(dev.authorized=='1');bodyText+='\nDevice: '+dev.name+'\n'
+'Type: '+dev.type+'\n'
+'Version: '+dev.version+'\n';for(var i=0;i<dev.services.length;++i){var svc=dev.services[i];bodyText+='---\nService: '+svc.name+'\n'
+'Type: '+svc.type+'\n'
+'Space: '+svc.space+'\n';}}
var extraFields=[{id:'140314',value:CE.CEU.user.email},{id:'140379',value:(CE.CEU.structlen(CE.CEI.g_devmap)==1)?firstdev.deviceid:''}];var tags=(CE.CEU.structlen(CE.CEI.g_devmap)==0)?['SharedUser']:(premium?['Premium']:['Free']);var data='<ticket>'
+'<subject>'+CE.CEU.xmlEncode(subject.value)+'</subject>'
+'<description>'+CE.CEU.xmlEncode(bodyText)+'</description>'
+'<priority-id>0</priority-id>'
+'<requester-email>'+CE.CEU.xmlEncode(CE.CEU.user.email)+'</requester-email>';data+='<set-tags>'
for(var i=0;i<tags.length;++i){if(i!=0)data+=' ';data+=CE.CEU.xmlEncode(tags[i]);}
data+='</set-tags>'
data+='<ticket-field-entries type="array">'
for(var i=0;i<extraFields.length;++i){data+='<ticket-field-entry>';data+='<ticket-field-id>'+extraFields[i].id+'</ticket-field-id>';data+='<value>'+CE.CEU.xmlEncode(extraFields[i].value)+'</value>';data+='</ticket-field-entry>';}
data+='</ticket-field-entries>'
data+='</ticket>';var kb=new CE.CERPC('/svc/kb/auth/');kb.asyncRPC('POST','tickets.xml',null,function(r){CE.rac(d.parentDiv);var content=d.parentDiv.appendChild(CE.dce('div',null,'cehintbubble search extramarginbottom'));(content.appendChild(CE.dce('p',null,'extramarginbottom16'))).appendChild(CE.STRTAB.lookupel('help.subticket.thanks'));((content.appendChild(CE.dce('div',null,'extramarginbottom16'))).appendChild(CE.dca({onEvent:CE.CEUI.showLearningCenter},null,'cebutton'))).appendChild(CE.STRTAB.lookupel('help.subticket.continue'));},function(){CE.CEU.showMessage(CE.STRTAB.lookup('help.subticket.error.title'),CE.STRTAB.lookup('help.subticket.error.msg'));},null,data,'application/xml');}}
function showSubmitTicketStartChat(){if(!g_snapchat){g_snapchat=true;SnapABug.initAsync('e5385419-75e0-4163-956d-201880918599');}
SnapABug.startLink();}
function showSubmitTicketHelp(helpType,defquery){CE.rac('celist');var parentDiv=CE.$('celist').appendChild(CE.dce('div',null,'celearn'));var fdiv=parentDiv.appendChild(CE.dce('div',null,'cehintbubble search extramarginbottom'));(fdiv.appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupelh('help.subticket.shortsum'));var field=(fdiv.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.dce('input',null,'cehelpsearch'));var resultsDiv=parentDiv.appendChild(CE.dce('div',null,'ceresultsbox extramarginbottom hidden'));if(defquery)
field.value=defquery;var continueBut=parentDiv.appendChild(CE.dce('div',null,'hidden'));if(helpType=='subticket'){(continueBut.appendChild(CE.dca({onEvent:showSubmitTicketForm,summary:field,'parentDiv':parentDiv},null,'cebutton'))).appendChild(CE.STRTAB.lookupel('help.subticket.butcontinue'));}else{(continueBut.appendChild(CE.dca({onEvent:showSubmitTicketStartChat},null,'cebutton'))).appendChild(CE.STRTAB.lookupel('help.chat.butcontinue'));}
setTimeout(doSearch,defquery?0:500);var query='';function doSearch(){if(!fdiv||!fdiv.parentNode)
return;if(query==field.value)
return setTimeout(doSearch,500);var tmpquery=field.value;setTimeout(function(){if(tmpquery!=field.value){return setTimeout(doSearch,200);}
query=field.value;var kb=new CE.CERPC('/svc/kb/');kb.asyncRPC('GET','search.json?query='+encodeURIComponent(query),[],function(r){showHelpEntries({'forum':{name:query},backlink:function(){showSubmitTicketHelp(helpType,query);return false;}},r,resultsDiv);CE.rCN(resultsDiv,'hidden');CE.rCN(continueBut,'hidden');setTimeout(doSearch,500);},function(){setTimeout(doSearch,500);});},200);}}
this.showLearningCenter=function(d){if(!CE.$('celivechatscript')){showHelpForums();var script=CE.dce('script','celivechatscript');script.type='text/javascript';script.src=((document.location.protocol=='https:')?'https:':'http:')+'//snapabug.appspot.com/snapabug.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(script,s);}
that.onClickHeadTab('learningcenter',true,true);var sel=CE.getByClass(CE.$('celearningside'),'a','active');for(var i=0;i<sel.length;++i)
CE.rCN(sel[i],'active');CE.aCN('celearnsidelnk','active');CE.mCN('cehelptopics','hidden',g_custui.helphidetops=='1');CE.rac(CE.$('celist'));CE.aCN('cebc','hidden');CE.aCN('cetoptools','hidden');if(d&&d.jump=='submit'){showSubmitTicketHelp('subticket');return false;}
var content=CE.$('celist').appendChild(CE.dce('div',null,'celearn'));if(g_custuiArgs.length){var custom=content.appendChild(CE.dce('div'));CE.CEU.svc.asyncRPC('POST','getCustomHelpText',g_custuiArgs,function(r){if(r&&r.helptext&&r.helptext.html&&r.helptext.active=='1'){custom.innerHTML=r.helptext.html;}});}
var fdiv=content.appendChild(CE.dce('div',null,'cehintbubble search extramarginbottom'));CE.mCN(fdiv,'hidden',g_custui.helphidequest=='1');(fdiv.appendChild(CE.dce('div'))).appendChild(CE.STRTAB.lookupelh('help.main.search'));var field=(fdiv.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.dce('input','cehelpsearch','cehelpsearch'));var resultsDiv=content.appendChild(CE.dce('div',null,'extramargintop extramarginbottom'));if(d&&d.query)
field.value=d.query;searchHelp(field,true);var results=content.appendChild(CE.dce('div','celearnresults','ceresultsbox extramarginbottom hidden'));((results.appendChild(CE.dce('div',null,'return extramarginbottom16'))).appendChild(CE.dca({onEvent:that.showLearningCenter}))).appendChild(CE.STRTAB.lookupel('help.main.return'));results.appendChild(CE.dce('div','celearnresultsentries'));var mainDiv=content.appendChild(CE.dce('div','celearnmenu',(d&&d.query)?'hidden':''))
var menu=mainDiv.appendChild(CE.dce('div',null,'ceresultsbox extramarginbottom16'));var table=(menu.appendChild(CE.dce('table'))).appendChild(CE.dce('tbody'));var tr=table.appendChild(CE.dce('tr'));if(g_custui.helphidecmnty!='1'){var td=tr.appendChild(CE.dce('td'));appendItem(td,'pogoblog');td=tr.appendChild(CE.dce('td'));appendItem(td,'communityforum');tr=table.appendChild(CE.dce('tr'));td=tr.appendChild(CE.dce('td'));appendItem(td,'downloads');}
if(g_custui.helphidetickt!='1'){td=tr.appendChild(CE.dce('td'));appendItem(td,'subticket');}
if(g_custui.helphidecmnty=='1'&&g_custui.helphidetickt=='1'){CE.aCN(menu,'hidden');}
var canChat=false;for(var d in CE.CEI.g_devmap){if(CE.CEI.g_devmap[d].type.indexOf('xce:pppc')==-1||CE.CEI.g_devmap[d].authorized=='1'){canChat=true;break;}}
if(canChat&&CE.CEU.getSearchParam('can_chat')=='1'){tr=table.appendChild(CE.dce('tr'));td=tr.appendChild(CE.dce('td'));appendItem(td,'chat');td=tr.appendChild(CE.dce('td'));}
var faqbox=mainDiv.appendChild(CE.dce('div',null,'ceresultsbox cefaq extramarginbottom'));CE.mCN(faqbox,'hidden',g_custui.helphidefaq=='1');(faqbox.appendChild(CE.dce('div',null,'title extramarginbottom16 cedir1'))).appendChild(CE.STRTAB.lookupel('help.main.faqs'));var faqs=faqbox.appendChild(CE.dce('div'));CE.CEU.poll(100,function(){return g_helpfaqid},function(){showHelpForum({forum:{id:g_helpfaqid},backlink:that.showLearningCenter},null,null,faqs,true,5);});function appendItem(td,name){var types={'videotutorials':{},'downloads':{},'communityforum':{newwin:true},'pogoblog':{newwin:true},'betaman':{newwin:true},'chat':{},'subticket':{}};var div=td.appendChild(CE.dce('div',null,'extramarginbottom16'));var lnk;lnk=div.appendChild(CE.dca({info:types[name],'name':name,onEvent:function(e){if(e.name=='subticket'||e.name=='chat'){showSubmitTicketHelp(e.name);}else if(e.name=='downloads'){CE.CEU.showDlHint();}else if(e.info.newwin){window.open(CE.STRTAB.lookup('help.'+e.name+'.url'));}else if(e.info.cb){e.info.cb();}else{var grd=CE.$('celist').appendChild(CE.dce('div',null,'celearningcenter'));CE.rac(grd);((grd.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.dca({onEvent:that.showLearningCenter},null,'bc'))).appendChild(CE.STRTAB.lookupel('help.backtolearn'));var iframe=grd.appendChild(CE.dce('iframe'));iframe.setAttribute('frameBorder','0');iframe.allowTransparency='true';iframe.style.width=CE.$('cecontentmain').offsetWidth+'px';iframe.style.height=(winHeight-CE.CEU.getAbsPos(iframe).y-12)+'px';iframe.src=CE.STRTAB.lookup('help.'+e.name+'.url');}
return false;}},null,'lnk'));lnk.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+'help-'+name+'.png'));lnk.appendChild(CE.STRTAB.lookupel('help.'+name+'.title'));}
return false;};
function tryOOBE(){if(!CE.CEU.user)return false;var hasPlug=false;var ret=false;for(var s in CE.CEI.g_svcmap){hasPlug=true;break;}
if(!hasPlug){for(var d in g_orphans){hasPlug=true;break;}}
if(hasPlug){if(!CE.CEU.user.flags||CE.CEU.user.flags.search("sawoobe")==-1){var dontCheck;var closeCb=function(){var neverAgain=dontCheck?dontCheck.checked:false;if(neverAgain){if(CE.CEU.user.flags){CE.CEU.user.flags+=",sawoobe";}else{CE.CEU.user.flags="sawoobe";}
CE.CEU.svc.asyncRPC("POST","updateUser",["flags","+sawoobe"]);}
if(!that.g_cursvc&&!that.g_curalbum){activateSomething(false);}
checkMediaProcessing(true);return true;};ret=true;}}
return ret;}
function showViewMode(){var selMode=CE.CEUI.g_viewsize;if(CE.CEI.g_viewmode==1){selMode='list';}
CE.CEU.checkOpt('ce'+selMode+'lnk');}
function setViewPrefsFromUser(user){if(user){if(user.flags){var idx=-1;idx=user.flags.indexOf("lv");if(idx>=0){CE.CEI.g_viewmode=1;CE.CEUI.g_viewsize="list";}else{CE.CEI.g_viewmode=0;idx=user.flags.indexOf("gv=");if(idx>=0){var c=user.flags.charAt(idx+3);switch(c){case's':CE.CEUI.g_viewsize="small";break;case'm':CE.CEUI.g_viewsize="medium";break;case'l':CE.CEUI.g_viewsize="large";break;case'p':CE.CEUI.g_viewsize="photo";break;}}}
idx=user.flags.indexOf("sort=");if(idx>=0){var sortcrit=user.flags.substr(idx+5);if(sortcrit.indexOf("+name")==0){sortcrit="+name";}else if(sortcrit.indexOf("-name")==0){sortcrit="-name";}else if(sortcrit.indexOf("+mtime")==0){sortcrit="+mtime";}else if(sortcrit.indexOf("-mtime")==0){sortcrit="-mtime";}else if(sortcrit.indexOf("+size")==0){sortcrit="+size";}else if(sortcrit.indexOf("-size")==0){sortcrit="-size";}else if(sortcrit.indexOf("+mimetype")==0){sortcrit="+mimetype";}else if(sortcrit.indexOf("-mimetype")==0){sortcrit="-mimetype";}else{sortcrit="none";}
updateSortCriteria(sortcrit,false,true,true);}}else{CE.CEUI.g_viewsize="medium";CE.CEI.g_viewmode=0;}}
g_lastViewSize=null;g_lastViewMode=null;showViewMode();}
function promptIfNoPassword(r,cb){if(!r||!r.np||r.np!='1'){cb();}else{var content=CE.dce('div');(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('password.set.msg'));var errDiv=content.appendChild(CE.dce('div',null,'dlgerr extramarginbottom'));(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('password.create'));var pass1=CE.dce('input',null,'field extramarginbottom');pass1.type='password';content.appendChild(pass1);(content.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('password.confirm'));var pass2=CE.dce('input',null,'field extramarginbottom');pass2.type='password';content.appendChild(pass2);var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ces.password.title'),content,[{name:'ok',label:CE.STRTAB.lookup('button.ok'),callback:function(){if(pass1.value.length<3||pass2.value.length<3){CE.rac(errDiv);errDiv.appendChild(CE.STRTAB.lookupel('password.invalid'));}else if(pass1.value!=pass2.value){CE.rac(errDiv);errDiv.appendChild(CE.STRTAB.lookupel('cloudsign.passwordmismatch'));}else{CE.CEU.svc.asyncRPC('POST','updatePassword',['password',pass1.value],function(r){if(r.valtoken)
CE.CEU.setCookieTemp('valtoken',r.valtoken,'pogoplug.com');dlg.hide();cb();},function(){CE.rac(errDiv);errDiv.appendChild(CE.STRTAB.lookupel('password.invalid'));});}
return false;}}],null,true);dlg.show();}}
function onUserChange(evt,user,r){switch(evt){case'success':promptIfNoPassword(r,function(){CE.CEI.setOptionsFromUser(user);g_sidebarOrder=[];while(CE.CEI.getOption('sb_'+g_sidebarOrder.length)){g_sidebarOrder.push(CE.CEI.getOption('sb_'+g_sidebarOrder.length));}
if(CE.CEI.getOption('fullsecure')){if(document.location.protocol!='https:'){document.location.protocol='https';return;}}else{if(document.location.protocol!='http:'){document.location.protocol='http';return;}}
setViewPrefsFromUser(user);that.reloadAll(function(){setTimeout(function(){reloadAlbums();var media=[{n:'music',v:'cesearch_albums'},{n:'photos',v:'cesearch_imagetime'},{n:'movies',v:'cesearch_movietime'}];preFetch();function preFetch(){if(!media.length)
return;var type=media.pop();var searchType=CE.CEI.getOption(type.n+'_def')||type.v;var scrit=that.getScrit(searchType);if(scrit){var go={grd:'cache_'+type.n,stype:searchType,scrit:that.getScrit(searchType)};CE.CEDBG.println("loadCachedContent: "+type.n+' - '+type.v+' - '+searchType+' - '+scrit);loadCachedContent(go,0,NPERPAGE,preFetch);}else{preFetch();}}},LOADALBDELAYMS);if(CE.CEU.structlen(CE.CEI.g_albummap)==0&&CE.CEU.structlen(CE.CEI.g_sharemap)==0&&CE.CEU.structlen(CE.CEI.g_devmap)==0){CE.aCN('cesearch_entry','cedisabled');CE.aCN('cesearch_dropper','cedisabled');}else{if(CE.CEU.getCookie('passchanged')=='1'){CE.CEU.setCookieTemp('passchanged','0');CE.CEI.Hinter().showHintBrief('passchanged',CE.STRTAB.lookupel('settings.password.upd'));}
checkMediaProcessing();}});});break;case'failure':CE.CEU.svc.asyncRPC('POST','logProblem',['subject','Login/getUser','message',CE.CEU.getValtoken()?CE.CEU.getValtoken():'--']);CE.CEU.logoutUser();window.location.replace('/signin#logout');break;}}
function isMultiSvc(device){return(device.type.indexOf('xce:pppc')!=-1);}
function devicePoll(r){var date=new Date();var now=date.getTime();var grd=CE.CEU.$("cemylib_devices");g_noneOnline=true;for(var i=0;i<r.devices.length;i++){var d=r.devices[i];d.type=d.type||'';var nosvcs=true;var multiSvc=isMultiSvc(r.devices[i]);if(r.devices[i].services){for(var m=0;m<d.services.length;++m){if(d.services[m].online&&d.services[m].online=='1'){g_noneOnline=false;}}
for(var j=0;j<d.services.length;j++){var s=d.services[j];var k=d.deviceid+':_:'+s.serviceid;s.lastheard=now;CE.CEI.g_svcmap[k]=s;s.id=k;if(!s.name)
s.name=CE.STRTAB.lookup("view.svc.unnamed");s.device=d;if(!multiSvc&&(!s.type||s.type.indexOf('xce:printer')==-1)&&(g_noneOnline||(s.online&&s.online=='1'))){appendSidebarItem(grd,{onEvent:onClickSidebar,id:k,name:s.name?s.name:CE.STRTAB.lookup("view.svc.unnamed"),type:'service',device:d,service:s,owner:d.owner,disabled:!s.online||s.online=="0"});}
nosvcs=false;}
if(multiSvc&&!nosvcs){id=r.devices[i].deviceid+':_:DEVPC';var evtInfo={onEvent:onClickSidebar,id:id,name:r.devices[i].name,type:'devpc',device:r.devices[i],services:r.devices[i].services,owner:r.devices[i].owner,disabled:false};appendSidebarItem(grd,evtInfo);}}
if(nosvcs){var isOffline=!d.version;var noneNameId=((d.type.indexOf('xce:pppc')!=-1)||isOffline)?'view.device.offline':'view.device.nodrive';if(!multiSvc){appendSidebarItem(grd,{id:d.deviceid,name:CE.STRTAB.lookup(noneNameId),device:d,service:null,owner:d.owner,disabled:true});}else{id=d.deviceid+':_:DEVPC';var evtInfo={onEvent:onClickSidebar,id:id,name:CE.STRTAB.lookup(noneNameId),type:'device',device:d,service:null,disabled:true};appendSidebarItem(grd,evtInfo);}}}
for(var k in CE.CEI.g_svcmap){var s=CE.CEI.g_svcmap[k];if((!s.lastheard||s.lastheard!=now)&&!isMultiSvc(s.device)&&(!s.type||s.type.indexOf('xce:printer')==-1)){appendSidebarItem(grd,{onEvent:onClickSidebar,id:k,name:s.name?s.name:CE.STRTAB.lookup("view.svc.unnamed"),type:'service',device:s.device,service:s,owner:s.device?s.device.owner:null,disabled:true});}}
if(that.g_cursvc&&that.g_cursvc.id&&CE.CEI.g_svcmap[that.g_cursvc.id]){that.g_cursvc=CE.CEI.g_svcmap[that.g_cursvc.id];}
updatePrintersFromSvcs();CE.rTimer(pollInterval,UI_POLL_INTERVAL);}
function pollInterval(){if(CE.CEU.svc&&!CE.CEU.svc.g_pendingRequests.length){CE.CEDBG.println("Polling for updated Sidebar state...");CE.CEU.svc.asyncRPC('POST','listDevices',null,devicePoll);checkMediaProcessing();}else{CE.CEDBG.println("Wanted to poll devices in the middle of an RPC. Waiting 5 minutes...");CE.rTimer(pollInterval,UI_POLL_INTERVAL);}}
function canLogin(){var loginval=CE.CEU.getSearchParam('canlogin');return(loginval&&(loginval.indexOf('Y')==0||loginval.indexOf('y')==0||loginval.indexOf('T')==0||loginval.indexOf('t')==0||loginval.indexOf('1')==0));}
function showAlbumLoginRequired(isPrint){if(canLogin()){CE.CEUI.loginFromAlbum(true,isPrint);}else{CE.CEUI.signupFromAlbum(true);}}
function showAlbumLoginHint(){if(canLogin()){CE.rac('cesidehint');var content=CE.$('cesidehint').appendChild(CE.dce('span'));content.appendChild(CE.STRTAB.lookupel('share.morefeaturessign'));(content.appendChild(CE.dca({onEvent:function(){CE.CEUI.loginFromAlbum();}}))).appendChild(CE.STRTAB.lookupel('share.clickherecaps'));content.appendChild(CE.STRTAB.lookupel('share.tosignin'));CE.rCN('cesidehint','hidden');}else{if(CE.CEU.getSearchParam('sharetoken')){CE.rac('cesidehint');var content=CE.$('cesidehint').appendChild(CE.dce('span'));content.appendChild(CE.STRTAB.lookupel('share.coolfeatures'));(content.appendChild(CE.dca({onEvent:function(){CE.CEUI.signupFromAlbum();}}))).appendChild(CE.STRTAB.lookupel('share.clickherecaps'));content.appendChild(CE.STRTAB.lookupel('share.createact2'));CE.rCN('cesidehint','hidden');}}}
function fixAlbumtype(album){if(album&&(!album.albumtype||album.albumtype=='0')&&album.root&&!CE.CEI.isDescendableFile(album.root)){album.albumtype=CE.FILE_TYPE_FILEALBUM;}}
function getAlbumForShareTokenSuccess(r){if(window.location.search&&window.location.search.indexOf('sharetoken')!=-1){window.location.replace('/collab-signin.html'+window.location.search);}else if(r){if(r.album){fixAlbumtype(r.album);CE.rac('cesharename');CE.$('cesharename').appendChild(CE.dctn(CE.trims2(CE.CEI.getDispFn(r.album.name),22)));if(r.album.albumtype==CE.FILE_TYPE_PRINTALBUM){showAlbumLoginRequired(true);}else if((r.album.secure=='1'||r.secureshares)&&(CE.CEU.getSearchParam('sharetoken')||!r.album.publicid)){showAlbumLoginRequired();}else{showAlbumLoginHint();initOpDone();that.g_curalbum=r.album;updateCustomUi(null,that.g_curalbum.albumid);bcFlush();loadInitialAlbumFiles(that.g_curalbum);if(that.g_curalbum.perms&&that.g_curalbum.perms=='1'){if(canLogin()){CE.rac('cesidehint');var content=CE.$('cesidehint').appendChild(CE.dce('span'));content.appendChild(CE.STRTAB.lookupel('share.uploadpermission.hasacc'));(content.appendChild(CE.dca({onEvent:function(){CE.CEUI.loginFromAlbum();}}))).appendChild(CE.STRTAB.lookupel('share.clickherecaps'));content.appendChild(CE.STRTAB.lookupel('share.tosignin'));CE.rCN('cesidehint','hidden');}else{CE.rac('cesidehint');var content=CE.$('cesidehint').appendChild(CE.dce('span'));content.appendChild(CE.STRTAB.lookupel('share.uploadpermission'));(content.appendChild(CE.dca({onEvent:function(){CE.CEUI.signupFromAlbum();}}))).appendChild(CE.STRTAB.lookupel('share.clickherecaps'));content.appendChild(CE.STRTAB.lookupel('share.createact'));CE.rCN('cesidehint','hidden');}}}}
if(r.flags){if(r.flags&FS_FLAGS_SORTABLE){g_sortable=true;}}}}
function tryToListFilesAnyway(){var go={viewmode:CE.CEI.g_viewmode,grd:'celist',actions:true};bcFlush();initOpDone();reloadContent(null,go);}
function getAlbumForShareToken(sharetoken){CE.CEU.svc.asyncRPC("POST","getAlbum",['sharetoken',sharetoken],getAlbumForShareTokenSuccess,tryToListFilesAnyway);}
function showReadOnlyError(title,msg){var svc=that.g_cursvc;if(!svc&&that.g_curalbum&&that.g_curalbum.root){svc=CE.CEI.g_svcmap[that.g_curalbum.root.deviceid+":_:"+that.g_curalbum.root.serviceid];}
if(!svc&&that.g_curalbum){svc=that.g_curalbum.root;}
if(svc&&svc.readonly){var dlg=new CE.CEU.Dialog(title,msg,[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return true;}
return false;}
this.signupFromAlbum=function(noCancel){var showSignupDialog=function(r){var infoDiv=CE.dce('div',null,'extramarginbottom16');if(noCancel){infoDiv.appendChild(CE.STRTAB.lookupel('signup.required'));}
var email=(r&&r.user&&r.user.email)?r.user.email:'';var termsDiv=CE.dce('div',null,'extramarginbottom');var termsCheck=termsDiv.appendChild(CE.dcc('termscheck','cecheck'));termsDiv.appendChild(CE.dctn(' '));(termsDiv.appendChild(CE.dca({onEvent:function(){return CE.CEU.showTermsDlg('termscheck',true,'./activate/');}}))).appendChild(CE.STRTAB.lookupel('signup.terms'));var inputDlg=CE.CEU.showMultiInputDialog("album.password.title",[{inputtype:"div",div:infoDiv},{message:"index.youremail",inputcls:"field",inputid:"emailro",inputtype:"text",disabled:true,dflt:email,twoline:true},{message:"password.create",inputcls:"field",inputid:"password1",inputtype:"password",dflt:'',twoline:true,focus:true},{message:"password.confirm",inputcls:"field",inputid:"password2",inputtype:"password",dflt:'',twoline:true},{inputtype:"div",div:termsDiv}],"button.ok",function()
{if(!termsCheck.checked){CE.rCN('ceinputdlg_error','hidden');CE.CEU.$('ceinputdlg_error').innerHTML='';CE.CEU.$('ceinputdlg_error').appendChild(CE.dctn(CE.STRTAB.lookup('activate.mustagree')));return false;}
CE.CEU.logoutUser();trackEvent('Register','Sharee');CE.CEU.updatePassword(CE.CEU.getSearchParam("token"),CE.CEU.getSearchParam("sharetoken"),CE.CEU.$('password1'),CE.CEU.$('password2'),'ceinputdlg_error',function(x,v,z){if(x=='success'){var sharetoken=CE.CEU.getSearchParam('sharetoken')||CE.CEUI.g_sharetoken;var urlextra='';if(sharetoken)
urlextra='?sharetoken='+encodeURIComponent(sharetoken);if(inputDlg&&inputDlg.hide){inputDlg.hide();inputDlg=null;}
if(z)
window.location='view'+urlextra+'#'+z;else
window.location='view'+urlextra;}});return false;},null,noCancel);};CE.CEU.svc.asyncRPC('POST','getUser',['sharetoken',CE.CEU.getSearchParam('sharetoken')||CE.CEUI.g_sharetoken],showSignupDialog,showSignupDialog);return false;}
function loginFromAlbumUser(r,d){var nocancel=(d&&d.nocancel);var isprint=(d&&d.isprint);var email='';if(r&&r.user&&r.user.email)
email=r.user.email;var infoDiv=CE.dce('div');if(nocancel){CE.aCN(infoDiv,'extramarginbottom');if(isprint){infoDiv.appendChild(CE.STRTAB.lookupel('signin.required.printer'));}else{infoDiv.appendChild(CE.STRTAB.lookupel('signin.required'));}}
CE.CEU.showMultiInputDialog("signin.title",[{inputtype:"div",div:infoDiv},{message:"index.youremail",inputcls:"field",inputid:"signin_user",inputtype:"text",dflt:email,twoline:true},{message:"index.yourpassword",inputcls:"field",inputid:"signin_pass",inputtype:"password",dflt:'',twoline:true,focus:true}],"button.ok",function()
{CE.CEU.loginUser(CE.CEU.$('signin_user'),CE.CEU.$('signin_pass'),'celogin_errmsg',function(x,v){if(x=='success'){var sharetoken=CE.CEU.getSearchParam('sharetoken')||CE.CEUI.g_sharetoken;if(!sharetoken)
window.location.replace('view');else
window.location.replace('view?sharetoken='+encodeURIComponent(sharetoken));return;}else{CE.rCN('ceinputdlg_error','hidden');CE.CEU.$('ceinputdlg_error').innerHTML='';CE.CEU.$('ceinputdlg_error').appendChild(CE.STRTAB.lookupel('ceu.usererror'));}});return false;},null,nocancel);var forgotDiv=CE.$('signin_pass').parentNode.appendChild(CE.dce('div',null,'cesmallleft'));var forgotLink=forgotDiv.appendChild(CE.dca({onEvent:function(){setTimeout(function(){window.location=CE.STRTAB.lookup('index.forgotpassword.url');},200);}}));forgotLink.appendChild(CE.STRTAB.lookupel('index.forgotpassword'));}
this.loginFromAlbum=function(noCancel,isPrint){if(!that.g_sharetoken){loginFromAlbumUser(null,{nocancel:noCancel,isprint:isPrint});}else{CE.CEU.svc.asyncRPC('POST','getUser',['sharetoken',that.g_sharetoken],loginFromAlbumUser,loginFromAlbumUser,{nocancel:noCancel,isprint:isPrint});}
return false;}
function initAlbum(){var idx=window.location.pathname.indexOf('/share/');if(idx==0){var str=window.location.pathname.slice(idx+7);idx=str.indexOf('/');if(idx!=-1){str=str.slice(0,idx);}
that.g_sharetoken=str;}else{that.g_sharetoken=CE.CEU.getSearchParam("sharetoken");}
CE.CEU.logoutUser();if(that.g_sharetoken){if(!g_inited){g_initops++;}
getAlbumForShareToken(that.g_sharetoken);}else{window.location.replace("view");return;}
var expiry=CE.CEU.getSearchParam("expiry");if(expiry){var e=CE.CEU.$("ceexpiry");if(e){if(expiry=="0"){e.innnerHTML=CE.STRTAB.lookup("view.expiry.todayonly");}else if(expiry=="1"){e.innerHTML=CE.STRTAB.lookup("view.expiry.onemoreday");}else{e.innerHTML=expiry+CE.STRTAB.lookup("view.expiry.moredays");}}}
if(that.g_sharetoken)
return;var vt=CE.CEU.getSearchParam("valtoken");if(vt){document.cookie='valtoken='+vt+';path=/';}
if(!CE.CEU.getValtoken()){return window.location.replace('/signin#logout');}
var version=CE.STRTAB.lookup('version.ui');if(version&&version.indexOf('DEBUG')>0){CE.CEDBG.enable(true);}
CE.CEU.$('cecontent').oncedrop=onDropFiles;CE.CEU.attachEvent(document.body,'mousedown',{onEvent:onStartSelRect,grd:'celist'});CE.CEU.getUser('ceusername',null,onUserChange);CE.rTimer(pollInterval,UI_POLL_INTERVAL);}
function initAlbumTokenUser(r,currentUserMail){var shareToken=CE.CEU.getSearchParam("sharetoken");if(r&&r.user&&r.user.email&&shareToken){var tokenUserMail=r.user.email.toLowerCase();if(tokenUserMail==currentUserMail){window.location.replace("view?sharetoken="+shareToken);return;}}
initAlbum();}
function initAlbumCurUser(r){var shareToken=CE.CEU.getSearchParam("sharetoken");if(!shareToken||!r.user||!r.user.email){initAlbum();}else{CE.CEU.svc.asyncRPC("POST","getUser",["sharetoken",shareToken],initAlbumTokenUser,initAlbum,r.user.email.toLowerCase());}}
function showMediaProcessingProgress(task,deviceid){if(!task.taskdata||!task.taskdata.progress||task.taskdata.progress=='')
return;var files=g_curpage['celist'];var file;if(files){for(var i=0;i<files.length;++i){var svc=CE.CEI.getCurSvc(files[i]);if(svc.deviceid==deviceid&&svc.serviceid==task.taskdata.serviceid&&files[i].fileid==task.taskdata.fileid){file=files[i];break;}}}
if(!file)
return;var gid=CE.CEI.getGid('celist',file.fileid,file);var el=CE.$(gid);if(!el)
return;var td=CE.getByClass(el,'td','date');if(td.length>0){el=td[0];CE.aCN(el,'mediaprog');}
if((CE.getByClass(el,'div','mediaprog')).length>0)
return;var progress=(el.appendChild(CE.dce('div',null,'mediaprog ceprogressbar'))).appendChild(CE.dce('div',null,'ceprogress'));function updateProgress(r){if(!r||!r.currtask||!r.currtask.taskdata||!r.currtask.taskdata.progress||r.currtask.taskdata.progress==''||r.currtask.taskdata.fileid!=file.fileid||r.currtask.taskdata.progress=='100'||!progress.parentNode){if(progress&&progress.parentNode){CE.rCN(progress.parentNode,'mediaprog');progress.parentNode.removeChild(progress);}
return;}
progress.style.width=parseInt(r.currtask.taskdata.progress)+'%';setTimeout(function(){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','listQueue','deviceid',deviceid],updateProgress,updateProgress);},2000);}
updateProgress({currtask:task});}
function checkMediaProcessing(force){if(!force&&CE.CEU.$('cewelcomemsg'))
return;if(g_checkMediaProcessingTimer){clearTimeout(g_checkMediaProcessingTimer);g_checkMediaProcessingTimer=null;}
g_mediaCurrtasks=[];var deviceids=[];for(var d in CE.CEI.g_devmap)deviceids.push(d);var checkNextDevice=function(){if(deviceids.length<1){if(g_mediaCurrtasks.length<1){CE.aCN('ceprocessingmedia','hidden');}
return;}
var did=deviceids.pop();if(!CE.CEI.hasFeature('xcode2',did)){CE.CEU.svc.asyncRPC('POST','featureCommand',['feature','xcode','command','listQueue','deviceid',did],function(r){if(r.currtask){g_mediaCurrtasks.push({task:r.currtask,deviceid:did});CE.rCN('ceprocessingmedia','hidden');g_checkMediaProcessingTimer=setTimeout(checkMediaProcessing,20000);showMediaProcessingProgress(r.currtask,did);}
checkNextDevice();},checkNextDevice);}else{checkNextDevice();}};checkNextDevice();}
this.init=function(){CE.CEU.init();checkPopBrowserWarning();g_isIE=(BrowserDetect.browser&&BrowserDetect.browser.toLowerCase()=='explorer');var dir=CE.STRTAB.lookup('lang.dir');if(dir!=''&&document.styleSheets&&document.styleSheets.length){var modstyles=['.cehintbubble','.cedir','.CEUDialog div.CEUDialog_hdr'];for(var i=0;i<document.styleSheets.length;++i){var rules=document.styleSheets[i].cssRules||document.styleSheets[i].rules;if(rules){for(var j=0;j<rules.length;++j){for(var k=0;k<modstyles.length;++k){if(rules[j].selectorText==modstyles[k]){rules[j].style['direction']=dir;}}}}}}
CE.CEU.populateLocaleList('celowerlangs','lang',true,null,1,'emptystr');var moreLangs=null;if(moreLangs=$('celowerlangs_more1')){var langs=CE.getByClass($('celowerlangs'),'span','lang');for(var i=3;i<6;++i)
moreLangs.appendChild(langs[i]);}
if(moreLangs=$('celowerlangs_more2')){for(var i=6;i<langs.length;++i)
moreLangs.appendChild(langs[i]);}
var xhrTest=new XMLHttpRequest();if(CE.$('audioplayer_art_img')&&xhrTest&&('upload'in xhrTest)&&('onprogress'in xhrTest.upload)){CE.CEU.attachEvent(CE.$('audioplayer_art_img'),'dragenter',{onEvent:onMusicArtDragEnter});CE.CEU.attachEvent(CE.$('audioplayer_art_img'),'dragleave',{onEvent:onMusicArtDragLeave});CE.CEU.attachEvent(CE.$('audioplayer_art_img'),'dragover',{onEvent:onMusicArtDragOver});CE.CEU.attachEvent(CE.$('audioplayer_art_img'),'drop',{onEvent:onMusicArtDrop});}
var e=CE.CEU.$("cesearch_entry");if(e)e.value='';if(CE.hCN(document.body,'cealbum')){if(CE.CEU.isLoggedIn())
CE.CEU.svc.getUser(initAlbumCurUser,initAlbum);else
initAlbum();return;}
var vt=CE.CEU.getSearchParam("valtoken");if(vt){document.cookie='valtoken='+vt+';path=/';}
if(!CE.CEU.getValtoken()){return window.location.replace('/signin#logout');}
var version=CE.STRTAB.lookup('version.ui');if(version&&version.indexOf('DEBUG')>0){CE.CEDBG.enable(true);}
CE.CEU.$('cecontent').oncedrop=onDropFiles;CE.CEU.attachEvent(document.body,'mousedown',{onEvent:onStartSelRect,grd:'celist'});var finishInit=function(){CE.CEU.getUser('ceusername',null,onUserChange);CE.rTimer(pollInterval,UI_POLL_INTERVAL);};var sharetoken=CE.CEU.getSearchParam("sharetoken");if(sharetoken){CE.CEU.svc.asyncRPC("POST","getAlbum",['sharetoken',sharetoken],function(r){if(r&&r.album&&r.album.shareid){fixAlbumtype(r.album);g_jumpToShare=r.album.albumid;}
finishInit();},finishInit);}else{finishInit();}};function onMusicArtDragEnter(){var file=g_audioPlayer?g_audioPlayer.getCurFile():null;if(file){var ver=CE.CEU.getVersion(CE.CEI.getCurSvc(file));if(ver.major>3||(ver.major==3&&ver.minor>=1)){CE.aCN('audioplayer_art_img','hover');}}
return false;}
function onMusicArtDragLeave(){CE.rCN('audioplayer_art_img','hover');return false;}
function onMusicArtDragOver(){var file=g_audioPlayer?g_audioPlayer.getCurFile():null;if(file){var ver=CE.CEU.getVersion(CE.CEI.getCurSvc(file));if(ver.major>3||(ver.major==3&&ver.minor>=1)){CE.aCN('audioplayer_art_img','hover');}}
return false;}
function onMusicArtDrop(d,e){CE.rCN('audioplayer_art_img','hover');var selfiles=[];var file=g_audioPlayer?g_audioPlayer.getCurFile():null;if(file){var ver=CE.CEU.getVersion(CE.CEI.getCurSvc(file));if(ver.major>3||(ver.major==3&&ver.minor>=1)){selfiles.push(file);}}
if(selfiles.length&&e.dataTransfer.files.length==1){if(e.dataTransfer.files[0].type.indexOf('image')!=-1){CE.CEU.showLoadingAni(true);var img=CE.dce('img');img.onload=function(){var destWidth=160;var destHeight=160;var w,h;if(img.width>img.height){w=destWidth;h=parseInt(destHeight*(img.height/img.width));}else{h=destHeight;w=parseInt(destWidth*(img.width/img.height));}
var tmpCanvas=CE.dce('canvas');new thumbnailer(tmpCanvas,img,w,h,1,function(){var canvas=CE.dce('canvas');canvas.width=destWidth;canvas.height=destHeight;canvas.getContext('2d').drawImage(tmpCanvas,parseInt((destWidth-w)/2),parseInt((destHeight-h)/2),w,h);var b64data=canvas.toDataURL('image/jpeg');var pos=b64data.indexOf(',');if(pos!=-1)
b64data=b64data.substr(pos+1);var decoded=window.atob(b64data);var data=decoded;var tmpReq=new XMLHttpRequest();if(!tmpReq.sendAsBinary){var binarray=new Uint8Array(new ArrayBuffer(decoded.length));for(var i=0;i<decoded.length;++i)
binarray[i]=decoded.charCodeAt(i);data=binarray.buffer;}
CE.CEU.showLoadingAni(false);var uploader=new CE.CEUI.Html5FileUploadDialog();uploader.show();CE.CEI.g_iconRand=Math.random();for(var i=0;i<selfiles.length;++i){var f=selfiles[i];var svc=CE.CEI.getCurSvc(f);var url='/svc/files/'+CE.CEU.getValtoken()+'/'+svc.deviceid+'/'+svc.serviceid+'/'+f.fileid+'/tn/'+encodeURIComponent(f.filename);uploader.upload(data,f,url,{type:'image/jpeg',fileName:f.filename,size:decoded.length},function(){if(g_audioPlayer)
g_audioPlayer.refreshCurFile();});}});};var reader=new FileReader();reader.onload=function(e){img.src=e.target.result;};reader.readAsDataURL(e.dataTransfer.files[0]);}}
return false;}
function onStartSelRect(d,e){if(!CE.CEU.$('cedocprev')&&!CE.getByClass(document.body,'div','CEUDialog_hide').length){if(closeContextMenu(e))
return;if(g_selrect&&g_selrect.div){g_selrect.div.parentNode.removeChild(g_selrect.div);createCSSClass('*','-webkit-user-select:auto;-moz-user-select:auto;');}
g_selrect=null;var page=CE.CEU.$('cepage');if(page.scrollWidth<page.offsetWidth){if(e.clientX>=page.scrollWidth)
return;}
var grd=CE.$('celist');if(!grd||!grd.firstChild)
return;var cls=grd.firstChild.className;if(cls.indexOf('celist_lv')==-1&&cls.indexOf('item')==-1)
return;g_selrect={grd:d.grd,startX:e.clientX,startY:(page.scrollTop+e.clientY-page.offsetTop)};g_selrect.touched=false;g_selrect.fileids={};document.body.ondragstart=function(){return false;};document.body.onselectstart=function(){return false;};CE.CEU.$(d.grd).style.MozUserSelect='none';CE.CEU.$(d.grd).parentNode.style.MozUserSelect='none';}}
this.onPageResize=function(){var pageWidth=document.body.offsetWidth;var pogoWidth=pageWidth-100;var maxWidth=pogoWidth-CE.CEU.$('cesidebar').offsetWidth;CE.$('cecontentmain').style.maxWidth=maxWidth+'px';CE.$('cetoptools_div').style.maxWidth=maxWidth+'px';var viewHeight=window.innerHeight||document.documentElement.clientHeight;CE.$('cecontent_pos').style.minHeight=(viewHeight-148-CE.$('loweropts').offsetHeight)+'px';};this.addMouseHandler=function(f){g_mousedisp=f;}
this.removeMouseHandler=function(f){if(g_mousedisp==f){g_mousedisp=null;}}
this.showSearchOptions=function(){var optDiv=CE.CEU.$('cemylib_ss_opts');if(CE.hCN(optDiv,'hidden')){CE.rCN(optDiv,'hidden');}else{CE.aCN(optDiv,'hidden');}};this.selSearchOption=function(){CE.aCN('cemylib_ss_opts','hidden');g_curscrit='';CE.CEI.g_searchResults['celist']=null;};function onNameSearchTimer(){g_searchkeytimer=null;if(CE.hCN('celoading','hidden')){var txt=CE.CEU.$("cesearch_entry");var crit=CE.CEU.stripBadFnChars(txt.value);if(g_cursearch!="cesearch_name"){CE.CEUI.applySearch("cesearch_name",null,true);}
if(crit.length>0){var newScrit='name contains "'+crit+'"';if(g_curscrit!=newScrit){g_curscrit=newScrit;CE.CEI.g_searchResults['celist']=null;}
g_curpageoffset['celist']=0;bcFlush();reloadContent();}}}
this.nameSearchKey=function(e){var l=CE.CEU.$("cesearch_entry");if(l.value&&l.value.length>0&&CE.hCN('celoading','hidden')){var keynum;if(window.event){keynum=e.keyCode;}else if(e.which){keynum=e.which;}
if(g_searchkeytimer){CE.uTimer(g_searchkeytimer);g_searchkeytimer=null;}
if(keynum==13){return onNameSearchTimer();}else{g_searchkeytimer=CE.rTimer(onNameSearchTimer,3000);}}};this.nameSearchFocus=function(){if(g_cursearch!="cesearch_name"){var e=CE.CEU.$("cesearch_entry");if(e)e.value="";}};this.nameSearchBlur=function(){};this.getScrit=function(scritId){var d=new Date();switch(scritId){case'cesearch_today':return'ctime>="'+(d.getTime()-(1*24*60*60*1000))+'"';case'cesearch_week':return'ctime>="'+(d.getTime()-(7*24*60*60*1000))+'"';case'cesearch_month':return'ctime>="'+(d.getTime()-(30*24*60*60*1000))+'"';case'cesearch_video':return'mediatype="video"';case'cesearch_movietime':return'type="'+CE.FILE_TYPE_MOVIETIMELINE+'"';case'cesearch_image':return'mediatype="image"';case'cesearch_imagetime':return'type="'+CE.FILE_TYPE_IMGTIMELINE+'"';case'cesearch_slidedirs':return'';case'cesearch_playlists':return'name contains ".m3u"';case'cesearch_artists':return'type="'+CE.FILE_TYPE_ARTIST+'"';case'cesearch_audio':return'mediatype="audio"';case'cesearch_albums':return'type="'+CE.FILE_TYPE_ALBUM+'"';case'cesearch_genres':return'type="'+CE.FILE_TYPE_GENRE+'"';}
return'';}
this.getScritName=function(scritId){switch(scritId){case'cesearch_today':return CE.STRTAB.lookup('view.today');case'cesearch_week':return CE.STRTAB.lookup('view.lastweek');case'cesearch_month':return CE.STRTAB.lookup('view.lastmonth');case'cesearch_video':return CE.STRTAB.lookup('view.allmovies');case'cesearch_movietime':return CE.STRTAB.lookup('view.movietime2');case'cesearch_image':return CE.STRTAB.lookup('view.allphotos');case'cesearch_imagetime':return CE.STRTAB.lookup('view.phototime');case'cesearch_slidedirs':return CE.STRTAB.lookup('view.slideshows');case'cesearch_playlists':return CE.STRTAB.lookup('view.playlists');case'cesearch_artists':return CE.STRTAB.lookup('view.artists');case'cesearch_audio':return CE.STRTAB.lookup('view.songs');case'cesearch_albums':return CE.STRTAB.lookup('view.albums');case'cesearch_genres':return CE.STRTAB.lookup('view.genres');case'celibshares_album':return CE.STRTAB.lookup('view.filesishare');case'celibshares_collab':return CE.STRTAB.lookup('view.collabs');case'celibshares_lnks':return CE.STRTAB.lookup('view.sharedlnks');case'celibshares_share':return CE.STRTAB.lookup('view.sharedwithme');}
return CE.STRTAB.lookup("view.search");}
this.applySearch=function(sn,sc,skipRefresh,skipAlbumRefresh){if(TAB_SIDEITEMS[sn]&&CE.CEI.getOption(TAB_SIDEITEMS[sn]+'_def')!=sn){CE.CEI.setOption(TAB_SIDEITEMS[sn]+'_def',sn);}
CE.CEUI.useLastViewMode(true);if(!skipRefresh&&!skipAlbumRefresh&&!areAlbumsLoaded()){ensureAlbumsLoaded(function(){that.applySearch(sn,sc,skipRefresh,skipAlbumRefresh);});return;}
CE.rCN('cecontent_controls','hidden');if(g_cursearch){if(CE.CEU.$(g_cursearch))
CE.rCN(CE.CEU.$(g_cursearch).parentNode,'active');if(g_cursearch=="cesearch_name"){var e=CE.CEU.$("cesearch_entry");if(e)e.value='';}}
g_curscrit=null;CE.CEI.g_searchResults['celist']=null;that.g_curalbum=null;that.g_cursvc=null;that.g_curmsvc=null;updateSidebarState('none');g_cursearch=sn;if(sn){if(CE.CEU.$(sn)){CE.aCN(CE.CEU.$(sn).parentNode,'active');}
if(sc){g_curscrit=sc;}else{g_curscrit=CE.CEUI.getScrit(sn);}}
if(!g_cursearch){if(CE.CEU.user){setViewPrefsFromUser(CE.CEU.user);}
if(!that.g_curalbum&&!that.g_cursvc&&sn){activateSomething(false);return;}}else{if(g_sortcrit=="+size"||g_sortcrit=="-size"){updateSortCriteria("none",false,true,true);}else{updateSortCriteria(g_sortcrit,true,true,true);}}
if(!skipRefresh){g_curpageoffset['celist']=0;bcFlush();reloadContent();}};this.toggleSidebar=function(gh,gb){var h=CE.CEU.$(gh);var b=CE.CEU.$(gb);if(h){if(h.className.indexOf('closed')==-1){CE.aCN(h,'closed');if(b)b.style.display='none';}else{CE.rCN(h,'closed');if(b)b.style.display='block';}}
return false;};this.isFilteredListing=function(){if(CE.CEUI.g_wasSearch)
return true;if(g_curpath.length<1)
return false;return CE.CEI.isDescendableMetaFile(g_curpath[g_curpath.length-1].file);};this.isTopLevelFilteredListing=function(){return(CE.CEUI.g_wasSearch&&g_curpath.length<1);};this.isSharedFoldersListing=function(){return(CE.CEUI.g_wasSearch&&(g_cursearch=='celibshares_album'||g_cursearch=='celibshares_share'||g_cursearch=='celibshares_collab'||g_cursearch=='cesearch_slidedirs')&&g_curpath.length==0);};this.isEnabledLinksListing=function(){return(CE.CEUI.g_wasSearch&&(g_cursearch=='celibshares_lnks')&&g_curpath.length==0);};this.isSlideAlbListing=function(){return(CE.CEUI.g_wasSearch&&g_cursearch=='cesearch_slidedirs'&&g_curpath.length==0);};function populateContentWithSharedFolders(files,grd,viewMode,searchType,type,cb){CE.CEUI.clearContent(grd);CE.CEU.showLoadingAni(true);CE.mCN('cemyshares_grpmode','hidden',(searchType=='cesearch_slidedirs'));CE.mCN('cemyshares_grpmode_byshare_span','hidden',(type!='album'));if(type!='album'&&CE.hCN('cemyshares_grpmode_byshare','selected')){CE.CEU.checkOpt('cemyshares_grpmode_all');}
if(type=='album'&&grd=='celist'){if(hasBizDev())
CE.rCN('cemyshares_stats','hidden');}
CE.CEI.resortFiles(files,'+name');var totalCount=files.length;var pageOffset=g_curpageoffset[grd];var go={viewmode:viewMode?viewMode:CE.CEI.g_viewmode,'grd':grd,actions:(grd=='celist'),noresort:true,norempage:true};g_curpage[grd]=[];g_curpageByShid[grd]={};if(grd=='celist'){if(files.length>NPERPAGE){files.splice(0,NPERPAGE*pageOffset);if(files.length>NPERPAGE)
files.splice(NPERPAGE,files.length-NPERPAGE);}
updateSidebarState(searchType);g_cursearch=searchType;CE.CEUI.g_wasSearch=true;bcFlush();}
if(grd=='celist'&&(CE.hCN('cemyshares_grpmode_byshare','selected')||CE.hCN('cemyshares_grpmode_byemail','selected'))){var byemail={};var publicurl=[];var nosharees=[];var emails=[];var count=files.length;for(var i=0;i<files.length;++i){var album=files[i].album||files[i].svc;var albumid=album.albumid;files[i].emails=[];if((type=='collab'&&CE.CEI.g_albummap[albumid])||type=='album'){files[i].ispublic=(album.publicid&&album.publicid!='');CE.CEU.svc.asyncRPC('POST','listAlbumShares',['albumid',albumid],function(r,d){for(var i=0;i<r.shares.length;++i){if(r.shares[i].user&&r.shares[i].user.email){var email=r.shares[i].user.email.toLowerCase();if(emails.indexOf(email)==-1)
emails.push(email);if(!byemail[email])
byemail[email]=[];byemail[email].push(d.albfile);d.albfile.emails.push(email);}}
if(d.albfile.ispublic){publicurl.push(d.albfile);}else if(r.shares.length==0){nosharees.push(d.albfile);}
--count;},function(){--count;},{albfile:files[i]});}else if((type=='collab'&&CE.CEI.g_sharemap[albumid])||type=='share'){if(CE.CEI.g_sharemap[albumid]&&CE.CEI.g_sharemap[albumid].ownerid){CE.CEU.svc.asyncRPC('POST','getUser',['userid',CE.CEI.g_sharemap[albumid].ownerid],function(r,d){if(emails.indexOf(r.user.email)==-1)
emails.push(r.user.email);if(!byemail[r.user.email])
byemail[r.user.email]=[];byemail[r.user.email].push(d.albfile);d.albfile.emails.push(r.user.email);--count;},function(){--count;},{albfile:files[i]});}else{--count;}}}
CE.CEU.poll(1000,function(){return(count==0);},function(){if(CE.hCN('cemyshares_grpmode_byemail','selected')){emails.sort();if(nosharees.length){var label=CE.STRTAB.lookup('share.noone');emails.push(label);byemail[label]=nosharees;}
if(publicurl.length){var label=CE.STRTAB.lookup('share.public');emails.push(label);byemail[label]=publicurl;}
var none=true;for(var i=0;i<emails.length;++i){var valid=false;for(var j=0;j<byemail[emails[i]].length;++j){if(byemail[emails[i]][j].fileid){valid=true;break;}}
if(!valid)
continue;if(i!=0)
CE.CEU.$(grd).appendChild(CE.dce('div',null,'cebysourcelabel_sep'));(CE.CEU.$(grd).appendChild(CE.dce('div',null,'cebysourcelabel'))).appendChild(CE.dctn(emails[i]));var el=CE.CEU.$(grd).appendChild(CE.dce('div',null,'cesublist'));populateContent({'files':byemail[emails[i]],'totalcount':totalCount,'pageoffset':pageOffset},go,null,el);g_curpage[grd]=g_curpage[grd].concat(byemail[emails[i]]);for(var j=0;j<byemail[emails[i]].length;++j){g_curpageByShid[grd][CE.CEI.getShareId(byemail[emails[i]][j])]=byemail[emails[i]][j];}
none=false;}
if(none)
populateContent({'files':[],'totalcount':totalCount,'pageoffset':pageOffset},go,null,el);}else if(CE.hCN('cemyshares_grpmode_byshare','selected')){var none=true;for(var i=0;i<files.length;++i){if(!files[i].fileid)
continue;if(i!=0)
CE.CEU.$(grd).appendChild(CE.dce('div',null,'cebysourcelabel_sep'));var el=CE.CEU.$(grd).appendChild(CE.dce('div',null,'cesublist'));populateContent({'files':[files[i]],'totalcount':totalCount,'pageoffset':pageOffset},go,null,el);g_curpage[grd]=g_curpage[grd].concat([files[i]]);g_curpageByShid[grd][CE.CEI.getShareId(files[i])]=files[i];none=false;el=CE.CEU.$(grd).appendChild(CE.dce('div',null,'cebysharemails'));for(var e=0;e<files[i].emails.length;++e){(el.appendChild(CE.dce('div'))).appendChild(CE.dctn(files[i].emails[e]));}
if(files[i].ispublic){el.appendChild(CE.STRTAB.lookupel('share.public'));}else if(!files[i].emails.length){el.appendChild(CE.STRTAB.lookupel('share.noone'));}}
if(none)
populateContent({'files':[],'totalcount':totalCount,'pageoffset':pageOffset},go,null,el);}
if(cb)cb();});}else{populateContent({'files':files,'totalcount':totalCount,'pageoffset':pageOffset},go,null,null,cb);g_curpage[grd]=g_curpage[grd].concat(files);for(var i=0;i<files.length;++i){g_curpageByShid[grd][CE.CEI.getShareId(files[i])]=files[i];}}}
this.showSentLinks=function(cb){CE.CEU.showLoadingAni(true);CE.CEU.svc.asyncRPC('POST','listShares',[],function(r){var files=[];for(var i=0;i<r.shares.length;++i){r.shares[i].svc=CE.CEI.getCurSvc(r.shares[i]);if(r.shares[i].name=='.'&&r.shares[i].fileid=='0')
r.shares[i].name=r.shares[i].svc?r.shares[i].svc.name:CE.STRTAB.lookup('view.sync.root');files.push(r.shares[i]);}
CE.CEUI.clearContent('celist');updateSidebarState('celibshares_lnks');CE.CEI.resortFiles(files,'+name');var go={viewmode:CE.CEI.g_viewmode,'grd':'celist',actions:true,noresort:true};g_curpage['celist']=[];g_curpageByShid['celist']={};g_cursearch='celibshares_lnks';CE.CEUI.g_wasSearch=true;bcFlush();populateContent({'files':files,'totalcount':files.length,'pageoffset':0},go,null,null,cb);},CE.CEI.onGenericFailure);};this.showSharedFolders=function(type,grd,viewMode,printersOnly,noReload,cb){if(type=='lnks')
return that.showSentLinks(cb);CE.CEUI.useLastViewMode(true);CE.CEU.showLoadingAni(true);ensureAlbumsLoaded(function(){if(!noReload&&type=='collab'){reloadAlbums(function(){that.showSharedFolders(type,grd,viewMode,printersOnly,true,cb);});return;}
if(!noReload&&type=='album'){CE.CEUI.reloadAlbumsIShare(function(){that.showSharedFolders(type,grd,viewMode,printersOnly,true,cb);});return;}else if(!noReload&&type=='share'){reloadAlbumsSharedWithMe(function(){that.showSharedFolders(type,grd,viewMode,printersOnly,true,cb);});return;}
CE.rCN('cecontent_controls','hidden');var searchType=printersOnly?'celibprintshares_'+type:'celibshares_'+type;var files=[];var shareMaps=(type=='collab')?[CE.CEI.g_albummap,CE.CEI.g_sharemap]:[eval('CE.CEI.g_'+type+'map')];for(var i=0;i<shareMaps.length;++i){CE.CEI.appendShareFolders(files,shareMaps[i],false,printersOnly,grd);}
populateContentWithSharedFolders(files,grd,viewMode,searchType,type,cb);updateCustomUi();});return false;};function showSlideAlbums(grd,viewMode,includeNonOwners,cb){var files=[];CE.CEI.appendShareFolders(files,CE.CEI.g_albummap,true,false,grd);if(includeNonOwners)
CE.CEI.appendShareFolders(files,CE.CEI.g_sharemap,true,false,grd);populateContentWithSharedFolders(files,grd,viewMode,'cesearch_slidedirs','',cb);}
function onUserPrefsUpdated(r){if(CE.CEU.user&&r.user){CE.CEU.user.flags=r.user.flags;}}
function updateUserViewPrefs(){var flags=null;if(CE.CEI.g_viewmode==0){if(!CE.CEUI.g_viewsize){CE.CEUI.g_viewsize="medium";}
flags="gv="+CE.CEUI.g_viewsize.charAt(0);}else{flags="lv";}
if(g_sortcrit){flags+=",sort="+g_sortcrit;}else{flags+=",sort=none";}
CE.CEU.svc.asyncRPC("POST","updateUser",["flags",flags],onUserPrefsUpdated);}
this.setViewSize=function(sz){if(CE.CEUI.isNothingAvailable())
return false;if(sz=='photo'){var hasFiles=false;if(g_curpage['celist']){for(var i=0;i<g_curpage['celist'].length;++i){if(!CE.CEI.isDescendableFile(g_curpage['celist'][i])){hasFiles=true;break;}}}
if(!hasFiles){CE.CEU.showMessage(CE.STRTAB.lookup('view.preview.nofiles.title'),CE.STRTAB.lookup('view.preview.nofiles'));return false;}}
CE.CEUI.g_viewsize=sz;switch(CE.CEUI.g_viewsize){case'small':CE.CEI.g_viewmode=0;break;case'medium':CE.CEI.g_viewmode=0;break;case'large':CE.CEI.g_viewmode=0;break;case'list':CE.CEI.g_viewmode=1;break;case'photo':CE.CEI.g_viewmode=0;break;}
g_lastViewSize=null;g_lastViewMode=null;showViewMode();updateUserViewPrefs();reloadContent();return false;}
this.useLastViewMode=function(noReload){if(g_lastViewSize){CE.CEUI.g_viewsize=g_lastViewSize;CE.CEI.g_viewmode=g_lastViewMode;g_lastViewSize=null;g_lastViewMode=null;showViewMode();if(!noReload)
CE.CEUI.reloadContentCWD();}};this.reloadAll=function(cb){reloadSidebar(null,cb);};this.reloadContentCWD=function(cb){reloadContent(null,null,null,cb);};this.uploadFiles=function(){if(that.g_curalbum&&CE.CEU.user&&that.g_curalbum.ownerid!=CE.CEU.user.userid&&that.g_curalbum.perms!='1'){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.upload'),CE.STRTAB.lookup("view.upload.noperms"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return false;}
if(CE.CEUI.isFilteredListing()){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.upload'),CE.STRTAB.lookup("view.upload.nofilter"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return false;}
if(showReadOnlyError(CE.STRTAB.lookup('ceui.upload'),CE.STRTAB.lookup("view.upload.readonly"))){return false;}
if(CE.CEUI.isNothingAvailable()){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.upload'),CE.STRTAB.lookup("view.upload.notavail"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return false;}
var uploader=g_uploadfiles;if(!g_uploadfiles){var version=CE.CEU.getFlashVersion();CE.CEDBG.println("Flash Version: "+version.join());if(!(version[0]<9||(version[0]==9&&version[1]<1&&version[2]<115))){g_uploadfiles=new CE.CEUI.FlashFileUploadDialog();uploader=g_uploadfiles;}else{uploader=new CE.CEUI.FileUploadDialog();}}
uploader.show(getCurrentFolder());return false;};this.createDir=function(){if(showReadOnlyError(CE.STRTAB.lookup('ceui.createdir.title'),CE.STRTAB.lookup('view.createdir.readonly'))){return;}
if(that.g_curalbum&&CE.CEU.user&&that.g_curalbum.ownerid!=CE.CEU.user.userid&&that.g_curalbum.perms!='1'){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.createdir.title'),CE.STRTAB.lookup("view.createdir.noperms"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return;}
if(CE.CEUI.isFilteredListing()){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.createdir.title'),CE.STRTAB.lookup('view.createdir.nofilter'),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return;}
if(CE.CEUI.isNothingAvailable()){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('ceui.createdir.title'),CE.STRTAB.lookup("view.createdir.notavail"),[{name:'ok',label:CE.STRTAB.lookup('button.ok')}]);dlg.show();dlg=null;return;}
var parentId='0';if(g_curpath.length>0)
parentId=g_curpath[g_curpath.length-1].file.fileid;else if(CE.CEUI.g_curalbum&&CE.CEUI.g_curalbum.root)
parentId=CE.CEUI.g_curalbum.root.fileid;var svc=CE.CEUI.g_cursvc?CE.CEUI.g_cursvc:CE.CEUI.g_curalbum.root;var args=['deviceid',svc.deviceid,'serviceid',svc.serviceid,'parentid',parentId,'type',CE.FILE_TYPE_DIRECTORY,'filename',CE.STRTAB.lookup('ceui.createdir.defname')];var tryNum=0;var doIt=function(){CE.CEU.svc.asyncRPC('POST','createFile',args,function(r){CE.CEUI.g_newfolder=r.file;CE.CEUI.reloadContentCWD();},function(r,d,m){if(tryNum<100){++tryNum;args[args.length-1]=CE.STRTAB.lookup('ceui.createdir.defname')+' ('+tryNum+')';doIt();}else{CE.CEI.onGenericFailure(r,d,m);}});};doIt();return false;};this.createSlideAlbum=function(){var slidewiz=new CustomSlideshowWizard();slidewiz.show();};function removeSelectedSlides(){var checks=CE.getByClass(CE.CEU.$('celist'),'div','selectcheck');var files=[];for(var i=0;i<checks.length;++i){if(CE.hCN(checks[i],'selected')){var evt=CE.CEU.getEventObj(checks[i],'click');files.push(evt.co.file);}}
var message=CE.dce('div',null,'confirmlist');message.appendChild(CE.STRTAB.lookupel('view.removeslide.confirm'));var listDiv=message.appendChild(CE.dce('ul'));for(var i=0;i<files.length;++i){(listDiv.appendChild(CE.dce('li'))).appendChild(CE.dctn(files[i].name));}
CE.CEU.promptYesNo(CE.STRTAB.lookup('view.delsel.removeslide.title'),message,function(){CE.CEU.showLoadingAni(true);var pending=0;for(var i=0;i<files.length;++i){++pending;CE.CEU.svc.asyncRPC('POST','removeAlbumFile',['albumid',that.g_curalbum.albumid,'deviceid',files[i].deviceid,'serviceid',files[i].serviceid,'fileid',files[i].fileid,'albumindex',files[i].albumindex||''],function(){--pending;},CE.CEI.onGenericFailure);}
CE.CEU.poll(200,function(){return(pending==0);},function(){CE.CEUI.reloadContentCWD();});return true;});}
this.deleteSelected=function(d,e){var checks=CE.getByClass(CE.CEU.$('celist'),'div','selectcheck');var files=[];for(var i=0;i<checks.length;++i){if(CE.hCN(checks[i],'selected')){var evt=CE.CEU.getEventObj(checks[i],'click');files.push(evt.co.file);}}
if(files.length==0){return CE.CEU.showMessage(CE.STRTAB.lookup('view.delsel.nosel.title'),CE.STRTAB.lookup('view.delsel.nosel'));}
var owned=CE.CEI.isOwnedFile(files[0])||(files[0].svc&&files[0].svc.albumid&&CE.CEI.g_albummap[files[0].svc.albumid]);var shlst=CE.CEUI.isSharedFoldersListing();var myshare=(shlst&&owned);var sharedwith=(shlst&&!owned);var type='delsel';if(CE.CEUI.isSlideAlbListing())
type='delselslide';else if(sharedwith)
type='delselshare';else if(myshare)
type='stopselshare';var action=getTrashAction(CE.CEUI.getActionTypesForFile(files[0]))||(myshare?'trashmyshare':null);var message=CE.dce('div',null,'confirmlist');message.appendChild(CE.STRTAB.lookupel('view.'+type+'.confirm'));var listDiv=message.appendChild(CE.dce('ul'));for(var i=0;i<files.length;++i){(listDiv.appendChild(CE.dce('li'))).appendChild(CE.dctn(files[i].name));}
CE.CEU.promptYesNo(CE.STRTAB.lookup('view.delsel.'+action+'.title'),message,function(){CE.CEU.showLoadingAni(true);var pending=files.length;if(CE.CEUI.isSlideAlbListing()||myshare){var iAlb=0;var delNextAlb=function(){if(iAlb>=files.length)
return;CE.CEU.showLoadingAni(true);var share=CE.CEUI.findShare(files[iAlb]);isCustomUiImgShare(share,function(isCustomImg){if(isCustomImg){CE.CEU.showLoadingAni(false);var msg=CE.dce('div');(msg.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupel('view.stopshare',CE.CEI.getObjType(share),files[iAlb].name));(msg.appendChild(CE.dce('div',null,'extramarginbottom'))).appendChild(CE.STRTAB.lookupelh('view.stopshare.customimg.html'));CE.CEU.promptYesNo(CE.STRTAB.lookup('view.removesharecaps'),msg,delAlb,function(){++iAlb;--pending;delNextAlb();return true;});}else{delAlb();}});function delAlb(){CE.CEU.showLoadingAni(true);var aid=(files[iAlb].album&&files[iAlb].album.albumid)?files[iAlb].album.albumid:files[iAlb].svc.albumid;onDeleteFolderShareClick({albumid:aid},null,null,CE.CEUI.isSlideAlbListing(),true,true,function(){--pending;++iAlb;delNextAlb();});return true;}};delNextAlb();}else if(sharedwith){var iShare=0;var delNextShare=function(){if(iShare>=files.length)
return;var alb=files[iShare].svc||files[iShare].album;var share=CE.CEI.g_sharemap[alb.albumid];onRemoveFolderShareClick({album:share},true,true,function(){--pending;++iShare;delNextShare();});};delNextShare();}else{for(var i=0;i<files.length;++i){(function(f){var svc=CE.CEI.getCurSvc(f);var completeDel=function(){trackEvent('Delete',null,f);var args=['deviceid',svc.deviceid,'serviceid',svc.serviceid,'fileid',f.fileid,'recurse','1'];if(svc.albumid)
args.push('albumid',svc.albumid);CE.CEU.svc.asyncRPC('POST','removeFile',args,function(){--pending;},function(r,d){--pending;return CE.CEU.showMessage(CE.STRTAB.lookup('view.delsel.'+action+'.title'),CE.STRTAB.lookup('view.delsel.error',d.file.name));},{'file':f});};var completeDelOuter=function(){if(isShared(f)){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(f,true)),CE.STRTAB.lookup('removeshare.warn.msg',CE.STRTAB.lookup('removeshare.warn.delete'),CE.CEI.getObjType(f),f.name),function(){removeShare(f,completeDel);return true;},function(){--pending;return true;});}else{completeDel();}};if(svc&&g_subdevs[svc.deviceid]&&g_subdevs[svc.deviceid][f.fileid]){CE.CEU.showLoadingAni(false);CE.CEU.promptOkCancel(CE.STRTAB.lookup('removeshare.warn.title',CE.CEI.getObjType(f,true)),CE.STRTAB.lookup('removeshare.warn.sub.msg',CE.STRTAB.lookup('removeshare.warn.delete'),CE.CEI.getObjType(f),f.name),function(){CE.CEU.svc.asyncRPC('POST','multiuserDestroyDevice',['deviceid',svc.deviceid,'subdevid',g_subdevs[svc.deviceid][f.fileid]],function(){completeDelOuter();},function(){completeDelOuter();});return true;},function(){--pending;return true;});}else{completeDelOuter();}})(files[i]);}}
CE.CEU.poll(100,function(){return(pending==0);},function(){CE.CEU.showLoadingAni(false);if(!CE.CEUI.isSharedFoldersListing()){CE.CEUI.reloadContentCWD(function(){CE.CEI.Hinter().showHintBrief('del-file',CE.STRTAB.lookupel('ceui.delete.complete.hint'));});}else{reloadAlbums(function(){CE.CEUI.reloadContentCWD();});}});return true;});if(e)e.cancelBubble=true;if(e&&e.stopPropagation)e.stopPropagation();};this.downloadSelected=function(){var numFiles=0;for(var s in CE.CEI.g_selfiles['celist']){var file=CE.CEI.g_selfiles['celist'][s];var actions=CE.CEUI.getActionTypesForFile(file);if(actions.indexOf('download')!=-1){var frameName='secretiframe';if(numFiles>0){frameName='secretiframe'+numFiles;if(!CE.$(frameName)){var newFrame=CE.dce('iframe',frameName);newFrame.name=frameName;newFrame.width=0;newFrame.height=0;newFrame.frameborder=0;document.body.appendChild(newFrame);}}
downloadfile(file,frameName);++numFiles;}}};this.getAlbum=function(albumId){for(var albumKey in CE.CEUI.g_sharedfolders)
if(CE.CEUI.g_sharedfolders[albumKey].albumid==albumId)
return CE.CEUI.g_sharedfolders[albumKey];if(CE.CEI.g_albummap[albumId])
return CE.CEI.g_albummap[albumId];return null;}
this.removeAlbum=function(){if(!g_deleteconfirm){g_deleteconfirm=new DeleteConfirmDialog();}
g_deleteconfirm.show(that.g_curalbum,true);return false;}
function isShared(file){var share=CE.CEUI.findShare(file);if(share&&(parseInt(share.nsharees||'0')||share.publicid))
return true;return!!CE.CEI.g_lnkmap[CE.CEI.getShareId(file)];}
function removeShare(file,cbDone){var joiner=new CE.CEU.Joiner();var svc=CE.CEI.getCurSvc(file);var share=CE.CEUI.findShare(file);if(share){++joiner.count;shareDisableNotify(svc.serviceid,svc.deviceid,share.albumid,function(){CE.CEU.svc.asyncRPC('POST','deleteAlbum',['albumid',share.albumid],joiner.join,joiner.join);});}
if(!!CE.CEI.g_lnkmap[CE.CEI.getShareId(file,svc)]){++joiner.count;CE.CEI.disablePubLink(file,svc,joiner.join)}
joiner.finish(cbDone);}
function shareDisableNotify(serviceId,deviceId,albumId,cb,d){var args=['deviceid',deviceId,'serviceid',serviceId,'albumid',albumId,'socialnotif','0','network','twitter','network1','facebook','network2','myspace','text','','msg','','url','','title','','urllabel','','autonotify','0'];CE.CEU.svc.asyncRPC('POST','updateAlbumShare',args,cb,cb,d);}
function getCurrentFolder(){var folder=null;if(g_curpath.length){var co=g_curpath[g_curpath.length-1];if(co){folder=co.file;}}
if(!folder){if(that.g_curalbum){if(that.g_curalbum.albumtype==CE.FILE_TYPE_SLIDEALBUM){folder={fileid:"-1",album:that.g_curalbum,name:that.g_curalbum.name,type:CE.FILE_TYPE_SLIDEALBUM};}else{folder=that.g_curalbum.root;}}}
if(!folder){folder={fileid:"0"};if(that.g_cursvc){folder.name=that.g_cursvc.name;folder.isPrinter=(that.g_cursvc.type&&that.g_cursvc.type.indexOf('xce:printer')!=-1);}}
return folder;}
this.getCurrentFolderID=function(){var folder=getCurrentFolder();return folder.fileid;}
this.getCurrentFolder=function(){return getCurrentFolder();}
this.getCurrentAlbum=function(){return CE.CEUI.g_curalbum;}
function onStartTrialSuccess(r){reloadSidebar();}
function onStartTrialFailure(r){}
this.startTrial=function(){CE.aCN("cepayment","hidden");if(that.g_cursvc&&that.g_cursvc.device&&that.g_cursvc.device.deviceid){CE.CEU.svc.asyncRPC("POST","updateDevice",["deviceid",that.g_cursvc.device.deviceid,"terms","1"],onStartTrialSuccess,onStartTrialFailure);}};this.gotoBilling=function(){if(that.g_cursvc&&that.g_cursvc.device&&that.g_cursvc.device.deviceid){return window.location.replace("/billing/"+that.g_cursvc.device.deviceid+"?return=view&mode=setup");}};this.showWarningMessages=function(){CE.aCN("cereadonly","hidden");if(!g_warnmessage){g_warnmessage=new WarnMessageDialog();}
if(that.g_cursvc){var eh={'service':that.g_cursvc,'device':that.g_cursvc.device,'onHide':updateServiceMessageCount,'name':that.g_cursvc.name};g_warnmessage.show(eh);}
return false;}
this.getDeviceID=function(){var deviceID=that.g_cursvc.deviceid;return deviceID;};this.getServiceID=function(){var serviceID=that.g_cursvc.serviceid;return serviceID;};this.fileUploaderFlashLoaded=function(){g_uploadfiles.flashLoaded();};this.closeFileUploader=function(){g_uploadfiles.hide();};this.getDataStreamPrefix=function(file,svc,alb,skipsecureapi){return CE.CEI.getDataStreamPrefix(file,svc,alb,skipsecureapi);};}();CE.CEUI.FlashFileUploadDialog=function(){var that=this;var mShowing=false;var mUproot=CE.dce('div',null,'squpload');var mHideDiv=CE.dce('div',null,'squpload_hide');var mUploadDiv=CE.dce('div',null,'sqfileupload');mUproot.appendChild(mUploadDiv);this.show=function(file){if(!mShowing){mShowing=true;document.body.appendChild(mHideDiv);document.body.appendChild(mUproot);var version=CE.CEU.getFlashVersion();CE.CEDBG.println("Flash Version: "+version.join());if(version[0]<9||(version[0]==9&&version[1]<1&&version[2]<115)){mUploadDiv.appendChild(CE.CEU.getFlashUpgradeHTML());}
else{var html;if(navigator.appName!="Microsoft Internet Explorer"){html='<embed type="application/x-shockwave-flash" src="'+CE.STRTAB.lookup("flashbase")+'FileUploader.swf" name="FileUploader" wmode="transparent" allowScriptAccess="sameDomain" width="100%" height="100%"/>';}else{html='<object id="FileUploader" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="100%" height="100%" >'+'<param name="wmode" value="transparent" />'+'<param name="movie" value="'+CE.STRTAB.lookup("flashbase")+'FileUploader.swf" />'+'<param name="allowScriptAccess" value="sameDomain"/>'+'</object>';}
mUploadDiv.innerHTML=html;}
mUproot.style.left=Math.floor(mHideDiv.offsetWidth/2-mUproot.offsetWidth/2)+'px';mUproot.style.top=Math.floor(mHideDiv.offsetHeight/2-mUproot.offsetHeight/2)+'px';}};this.hide=function(){if(mShowing){document.body.removeChild(mUproot);document.body.removeChild(mHideDiv);mShowing=false;}
cleanup();};this.flashLoaded=function(){var flashApp=CE.CEU.getFlashMovieElement("FileUploader");var newWidth=flashApp.getFlashFileUploaderWidth();var newHeight=flashApp.getFlashFileUploaderHeight();mUproot.style.width=''+newWidth+'px';mUproot.style.height=''+newHeight+'px';mUproot.style.left=Math.floor(mHideDiv.offsetWidth/2-mUproot.offsetWidth/2)+'px';mUproot.style.top=Math.floor(mHideDiv.offsetHeight/2-mUproot.offsetHeight/2)+'px';};function cleanup(){if(navigator.plugins){var element=mUploadDiv.firstChild;while(element){if(element.tagName=='embed'){element.sendEvent('stop');}
if(element)
element=element.nextSibling;}}else{var element=mUploadDiv.firstChild;while(element){if(element.tagName=='object'){element.sendEvent('stop');element.style.display='none';for(var x in element){if(typeof(element[x])=='function'){CE.CEDBG.println('-- Killing Object Function: '+x);element[x]=null;}}}
element=element.nextSibling;}
element=null;}
CE.CEU.releaseAllEvents(mUploadDiv,'click',true);};}
CE.CEUI.Html5FileUploadDialog=function(){var that=this;var m_folder,m_svc;var m_pending=0;var m_dlg,m_pane,m_dragArea;var m_butClose,m_butHide,m_butClear;var m_rows=[];function onClickCancel(d,e){if(d.d.req){d.d.req.abort();}
CE.rac(d.d.percent);d.d.percent.appendChild(CE.STRTAB.lookupelh('view.upload.aborted.html'));CE.aCN(d.d.cancel,'hidden');d.d.complete=true;--m_pending;showButtons();}
function onUploadProgress(d,e){if(e.lengthComputable){var percentage=Math.round((e.loaded*100)/e.total);CE.rac(d.percent);d.percent.appendChild(CE.STRTAB.lookupelh('view.upload.percent.html',percentage));d.progress.style.width=percentage+'%';}}
function onUploadComplete(d,e){CE.rac(d.percent);d.percent.appendChild(CE.STRTAB.lookupelh('view.upload.complete.html'));d.progress.style.width='100%';CE.aCN(d.cancel,'hidden');for(var i=0;i<m_rows.length;++i){if(m_rows[i]==d){if(m_rows.length>(i+1)&&!m_rows[i+1].complete){d.el.parentNode.appendChild(d.el);m_rows.splice(i,1);m_rows.push(d);}
break;}}
d.complete=true;--m_pending;showButtons();if(d.cbSuccess)
d.cbSuccess();}
function validateOverwrite(filename,cbOk){var args=['deviceid',m_svc.deviceid,'serviceid',m_svc.serviceid,'filename',filename,'parentid',m_folder?m_folder.fileid:'0'];CE.CEU.svc.asyncRPC('POST','getFile',args,function(r){if(r&&r.file){CE.CEU.promptYesNo(CE.STRTAB.lookup('view.overwrite.title'),CE.STRTAB.lookup('view.overwrite.prompt',filename),function(){cbOk();return true;});}else{cbOk();}},cbOk);}
function createFile(filename,cbOk){var args=['deviceid',m_svc.deviceid,'serviceid',m_svc.serviceid,'filename',filename,'type','0'];if(m_svc.albumid)
args.push('albumid',m_svc.albumid);if(m_folder)
args.push('parentid',m_folder.fileid);CE.CEU.svc.asyncRPC('POST','createFile',args,cbOk,CE.CEI.onGenericFailure);}
this.upload=function(fdata,toFile,toUrl,uploadInfo,cbSuccess){uploadInfo=uploadInfo||fdata;if(!toUrl){validateOverwrite(uploadInfo.fileName,initUpload);}else{initUpload();}
function initUpload(){var d={'fdata':fdata,'cbSuccess':cbSuccess};if(m_dragArea.firstChild){d.el=m_dragArea.insertBefore(CE.dce('div',null,'row'),m_dragArea.firstChild);}else{d.el=m_dragArea.appendChild(CE.dce('div',null,'row'));}
m_rows.unshift(d);d.el.appendChild(CE.dci(CE.STRTAB.lookup('imgbase')+(CE.CEI.getIconForMime(uploadInfo.type)||'page.png')));(d.el.appendChild(CE.dce('div',null,'filename'))).appendChild(CE.dctn(uploadInfo.fileName));if(m_folder&&m_folder.name)
(d.el.appendChild(CE.dce('div',null,'dest'))).appendChild(CE.STRTAB.lookupel('view.upload.dest',m_folder.name));d.percent=d.el.appendChild(CE.dce('div',null,'precentage'));d.progress=(d.el.appendChild(CE.dce('div',null,'ceprogressbar'))).appendChild(CE.dce('div',null,'ceprogress'));d.cancel=d.el.appendChild(CE.dce('div',null,'cancel'));d.cancel.title=CE.STRTAB.lookup('view.upload.cancel.hint');CE.CEU.attachEvent(d.cancel,'click',{onEvent:onClickCancel,'d':d});++m_pending;showButtons();if(!toUrl){createFile(uploadInfo.fileName,startUpload);}else{startUpload({file:toFile});}
function startUpload(r){d.file=r.file;if(d.req)
delete d.req;d.req=new XMLHttpRequest();var progEvt=function(e){onUploadProgress(d,e)};var loadEvt=function(e){onUploadComplete(d,e)};d.req.upload.addEventListener('progress',progEvt,false);d.req.upload.addEventListener('load',loadEvt,false);var url=toUrl;if(!url&&!r.forceSvc){url=CE.CEI.getDataStreamPrefix(m_folder,null,CE.CEUI.g_curalbum)+d.file.fileid;url=url.replace('/svc/files/','/svc/files/'+CE.CEU.getValtoken()+'/');}else if(!url){url='/svc/files/'+CE.CEU.getValtoken()+'/'+m_svc.deviceid+'/'+m_svc.serviceid+'/'+d.file.fileid+'/';}
var contentType=uploadInfo.type;if(contentType==''||contentType=='application/force-download'||contentType=='application/octet-stream'){if(CE.CEI.getMimeForFilename(uploadInfo.fileName)){contentType=CE.CEI.getMimeForFilename(uploadInfo.fileName);}}
if(!r.forceSvc){var req1=d.req;req1.onerror=function(){if(!r.forceSvc){req1.upload.removeEventListener('progress',progEvt,false);req1.upload.removeEventListener('load',loadEvt,false);req1.abort();r.forceSvc=true;startUpload(r);}};}
d.req.open('PUT',url,true);d.req.setRequestHeader('UP-FILENAME',uploadInfo.fileName);d.req.setRequestHeader('UP-SIZE',uploadInfo.size);d.req.setRequestHeader('UP-TYPE',contentType);d.req.setRequestHeader('X-CEVALTOKEN',CE.CEU.getValtoken());d.req.setRequestHeader('Content-type',contentType);if(uploadInfo&&d.req.sendAsBinary)
d.req.sendAsBinary(fdata);else
d.req.send(fdata);};}}
function onDrop(d,e){CE.rCN(m_dragArea,'hover');for(var i=0;i<e.dataTransfer.files.length;++i){if(e.dataTransfer.files[i].type!=''){that.upload(e.dataTransfer.files[i]);}}
return false;}
function onDragEnter(d,e){CE.aCN(m_dragArea,'hover');return false;}
function onDragLeave(d,e){CE.rCN(m_dragArea,'hover');return false;}
function onDragOver(d,e){CE.aCN(m_dragArea,'hover');return false;}
function showButtons(){CE.mCN(m_butClose,'hidden',m_pending!=0);CE.mCN(m_butHide,'hidden',(m_pending==0||!m_folder));CE.mCN(m_butClear,'hidden',(m_rows.length<=m_pending||!m_folder));if(m_pending==0){if(!m_dlg.isShowing()){CE.CEI.Hinter().showHintBrief('upload-complete',CE.STRTAB.lookupel('view.upload.complete.drophint'));}else{CE.CEU.disableLoadingAni(true);CE.CEUI.reloadContentCWD(function(){CE.CEU.disableLoadingAni(false);});}}}
function onClearCompleted(){for(var i=m_rows.length-1;i>=0;--i){if(m_rows[i].complete){CE.rac(m_rows[i].el);m_rows[i].el.parentNode.removeChild(m_rows[i].el);m_rows.splice(i,1);}}
CE.mCN(m_butClear,'hidden',m_rows.length<=m_pending);}
function onClose(){m_dlg.hide();}
this.show=function(folder){m_folder=folder;m_svc=m_folder?CE.CEI.getCurSvc(m_folder):null;if(!m_dlg){m_pane=CE.dce('div');if(m_folder)
m_pane.appendChild(CE.STRTAB.lookupel('view.upload.dragmsg'));m_dragArea=m_pane.appendChild(CE.dce('div',null,'ceuploadarea extramargintop'));if(m_folder){CE.CEU.attachEvent(m_dragArea,'dragenter',{onEvent:onDragEnter});CE.CEU.attachEvent(m_dragArea,'dragleave',{onEvent:onDragLeave});CE.CEU.attachEvent(m_dragArea,'dragover',{onEvent:onDragOver});CE.CEU.attachEvent(m_dragArea,'drop',{onEvent:onDrop});}
if(m_folder){((m_pane.appendChild(CE.dce('div',null,'ceullnk extramarginbottom'))).appendChild(CE.dca({onEvent:function(){CE.CEI.setOption('nohtml5ul',true);m_dlg.hide();CE.CEUI.uploadFiles();}}))).appendChild(CE.STRTAB.lookupel('view.upload.usebasic'));}else{(m_pane.appendChild(CE.dce('div',null,'ceullnk extramarginbottom'))).appendChild(CE.dctn(' '));}
var buttons=m_pane.appendChild(CE.dce('div'));m_butClose=buttons.appendChild(CE.dca({onEvent:onClose},null,'ceredbut'));m_butHide=buttons.appendChild(CE.dca({onEvent:onClose},null,'ceredbut hidden'));m_butClear=buttons.appendChild(CE.dca({onEvent:onClearCompleted},null,'ceredbut cerightfloat hidden'));m_butClose.appendChild(CE.STRTAB.lookupel('view.close'));m_butHide.appendChild(CE.STRTAB.lookupel('view.upload.hide'));m_butClear.appendChild(CE.STRTAB.lookupel('view.upload.clearcompleted'));m_dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.upload.title'),m_pane,null,null,true,'CEUDialog_wide2');}
m_dlg.show(true);};};CE.CEUI.FileUploadDialog=function(){var that=this;var m_folder=null;var m_lastFormNumber=0;var m_pane=CE.dce('div');var m_fileulpb=null;var m_uploadDialog=new CE.CEU.Dialog(CE.STRTAB.lookup('view.upload.title'),m_pane);var m_uploadDialogDisabled=false;var m_curfile=null;function onRemoveFileInput(ev){var div=CE.CEU.$("addFileForm");var form=CE.CEU.$("form"+ev.fn);if(!form){form=document.forms["form"+ev.fn];}
if(!form){form=document.forms[ev.fn];}
if(div)div.removeChild(form);}
function addFileInput(div){var form=CE.dce("form");form.id=form.name="form"+m_lastFormNumber;form.method="post";form.enctype=form.encoding="multipart/form-data";form.target="secretiframe";var input=CE.dce("input");input.type="file";input.name="fileinput"+m_lastFormNumber;input.className='uploadfile';input.id=input.name;form.appendChild(input);var a=CE.dce("a");a.href="#";a.style.paddingLeft="4px";a.appendChild(CE.STRTAB.lookupel('view.delete'));CE.CEU.attachEvent(a,'click',{onEvent:onRemoveFileInput,fn:m_lastFormNumber});form.appendChild(a);m_lastFormNumber++;div.appendChild(form);}
function onAddFileClick(){var div=CE.CEU.$("addFileForm");if(div)addFileInput(div);}
function onUploadFileDialogClose(){if(m_uploadDialog){m_uploadDialog.hide();}}
function onUploadFileComplete(){m_curfile=null;if(!g_onframeloaded){return;}
if(m_fileulpb){m_fileulpb.uploadcompleted();}
for(m_nextFormNumber++;m_nextFormNumber<m_lastFormNumber;m_nextFormNumber++){var input=CE.CEU.$("fileinput"+m_nextFormNumber);if(input&&input.value){createFile(input);return;}}
var fr=CE.CEU.$("secretiframe");g_onframeloaded=null;if(fr)fr.src=null;CE.rac(CE.CEU.$("addFileForm"));if(m_uploadDialog){m_uploadDialog.hide();}
CE.CEUI.reloadContentCWD();}
function uploadFile(form,file){form.action=CE.CEI.getDataStreamPrefix(m_folder,null,CE.CEUI.g_curalbum);form.action+=file.fileid+"/";var frame=CE.CEU.$("secretiframe");if(frame){g_onframeloaded=onUploadFileComplete;}
if(m_fileulpb)m_fileulpb.setfile(file,m_folder);form.submit();}
function onCreateFileSuccess(result){if(result.file){m_curfile=result.file;var form=CE.CEU.$("form"+m_nextFormNumber);if(!form){form=document.forms["form"+m_nextFormNumber];}
if(!form){form=document.forms[m_nextFormNumber-1];}
if(form){uploadFile(form,result.file);}}}
function onCreateFileFailure(r,ignore,method){var div=CE.CEU.$("fileAddForms");if(div){var f=CE.CEU.$("secretiframe");if(f)f.onload=null;cleanse(div);}
var reason=null;if(r&&r['HB-EXCEPTION']){reason=r['HB-EXCEPTION'];}
if(reason){CE.CEDBG.println('CEUI: RPC EXCEPTION ('+method+'): '+CE.CEDBG.serialize(reason));}else{CE.CEDBG.println('CEUI: RPC ERROR ('+method+'): '+CE.CEDBG.serialize(r));}
if(reason&&reason.ecode==606){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.upload.title'),CE.STRTAB.lookup('view.upload.noperms'),[{name:'ok',label:CE.STRTAB.lookup('view.ok')}]);dlg.show();dlg=null;}
m_uploadDialog.hide();m_uploadDialog=null;}
function extractFilename(inputValue)
{var fn=inputValue;var idx=fn.lastIndexOf("\\");if(idx>=0){fn=fn.substr(idx+1);}else{idx=fn.lastIndexOf("/");if(idx>=0){fn=fn.substr(idx+1);}}
return CE.CEU.stripBadFnChars(fn);}
function createFile(input){var args=[];var fn=extractFilename(input.value);if(CE.CEUI.g_cursvc){args.push("deviceid");args.push(CE.CEUI.g_cursvc.deviceid);args.push("serviceid");args.push(CE.CEUI.g_cursvc.serviceid);}if(CE.CEUI.g_curalbum&&CE.CEUI.g_curalbum.root){args.push("deviceid");args.push(CE.CEUI.g_curalbum.root.deviceid);args.push("serviceid");args.push(CE.CEUI.g_curalbum.root.serviceid);args.push("albumid");args.push(CE.CEUI.g_curalbum.albumid);}
if(m_folder){args.push("parentid");args.push(m_folder.fileid);}
args.push("filename");args.push(fn);args.push("type");args.push("0");CE.CEU.svc.asyncRPC("POST","createFile",args,onCreateFileSuccess,onCreateFileFailure);}
function onUploadFilesClick(){if(m_uploadDialogDisabled){return;}
m_uploadDialogDisabled=true;m_nextFormNumber=0;validateOverwrite();}
function validateOverwrite()
{while(m_nextFormNumber<m_lastFormNumber){var input=CE.CEU.$("fileinput"+m_nextFormNumber);if(input&&input.value){var svc=CE.CEUI.g_cursvc;if(!svc)
svc=CE.CEUI.g_curalbum.root;var args=[];args.push("deviceid");args.push(svc.deviceid);args.push("serviceid");args.push(svc.serviceid);args.push("parentid");if(m_folder)
args.push(m_folder.fileid);else
args.push("0");args.push("filename");args.push(extractFilename(input.value));CE.CEU.svc.asyncRPC('POST',"getFile",args,checkFileExistsSuccess,checkFileExistsFailure);return;}
m_nextFormNumber++;}
m_uploadDialogDisabled=false;uploadFiles();}
function checkFileExistsSuccess(r){if(r.file){var dlg=new CE.CEU.Dialog(CE.STRTAB.lookup('view.overwrite.title'),CE.STRTAB.lookup('view.overwrite.prompt',CE.CEI.getDispFn(r.file)),[{name:'yes',label:CE.STRTAB.lookup("view.yes"),callback:onYesOverwrite},{name:'no',label:CE.STRTAB.lookup("view.no"),callback:onNoDontOverwrite}]);dlg.show();dlg=null;return;}
m_nextFormNumber++;validateOverwrite();}
function checkFileExistsFailure(r){m_nextFormNumber++;validateOverwrite();}
function onYesOverwrite(){m_nextFormNumber++;validateOverwrite();return true;}
function onNoDontOverwrite(){m_uploadDialogDisabled=false;return true;}
function uploadFiles(){m_nextFormNumber=0;while(m_nextFormNumber<m_lastFormNumber){var input=CE.CEU.$("fileinput"+m_nextFormNumber);if(input&&input.value){CE.aCN("addFilesClicker","hidden");CE.aCN("addFileForm","hidden");createFile(input);var pbdiv=CE.dce("div");pbdiv.id="fileulpb";var uldgdiv=CE.CEU.$("uldgcontent");uldgdiv.appendChild(pbdiv);m_fileulpb=new FileUploadPB("fileulpb");m_uploadDialog.removeButton("upload");return;}
m_nextFormNumber++;}}
function onCancelUploadClick(){if(m_uploadDialogDisabled){return;}
if(m_fileulpb){m_fileulpb.setfile(null,null);}
var frame=CE.CEU.$("secretiframe");if(frame){g_onframeloaded=null;frame.src=null;}
if(m_curfile){var args=[];if(CE.CEUI.g_cursvc){args.push("deviceid");args.push(CE.CEUI.g_cursvc.deviceid);args.push("serviceid");args.push(CE.CEUI.g_cursvc.serviceid);}else if(m_folder){if(m_folder.deviceid){args.push("deviceid");args.push(m_folder.deviceid);}
if(m_folder.serviceid){args.push("serviceid");args.push(m_folder.serviceid);}}
args.push("fileid");args.push(m_curfile.fileid);CE.CEU.svc.asyncRPC("POST","removeFile",args);}
CE.rac(CE.CEU.$("addFileForm"));return true;}
(function(){m_pane.id="uldgcontent";var sprdiv=CE.dce("div","superUploadDiv");var adddiv=CE.dce("div","addFileForm");sprdiv.appendChild(adddiv);var addfiles=CE.dca({onEvent:onAddFileClick},"addFilesClicker");addfiles.appendChild(CE.dctn(CE.STRTAB.lookup("ceui.addfiles")));sprdiv.appendChild(addfiles);m_pane.appendChild(sprdiv);m_lastFormNumber=0;addFileInput(adddiv);m_uploadDialog.addButton('upload',CE.STRTAB.lookup('ceui.upload'),onUploadFilesClick);m_uploadDialog.addButton('cancelupload',CE.STRTAB.lookup('ceui.cancel'),onCancelUploadClick);})();this.show=function(file){m_folder=file;m_uploadDialog.show();};function FileUploadPB(rootid){var that=this;var m_rootid=null;var m_bgid=null;var m_fgid=null;var m_nameid=null;var m_offid=null;var m_lenid=null;var m_rateid=null;var m_remid=null;var m_file=null;var m_stime=null;var m_utime=null;var m_lastinc=0;var m_lastlen=0;var m_timeoutid=null;var m_uploadcompleted=false;var m_failcount=0;function getCurrentTime(){var d=new Date();return d.getTime();}
function onUploadProgressSuccess(result){that.update(result.offset,result.length);if(m_uploadcompleted){if(m_fgid){var fg=CE.CEU.$(m_fgid);if(fg)fg.style.width="100%";}}
if(!m_uploadcompleted){m_timeoutid=CE.rTimer(uploadProgressTimer,1000);}}
function onUploadProgressFailure(result){if(m_uploadcompleted){if(m_fgid){var fg=CE.CEU.$(m_fgid);if(fg)fg.style.width="100%";}}}
function doUploadProgressRPC(){var args=[];if(CE.CEUI.g_curalbum&&CE.CEUI.g_curalbum.root){args.push("deviceid");args.push(CE.CEUI.g_curalbum.root.deviceid);args.push("serviceid");args.push(CE.CEUI.g_curalbum.root.serviceid);}else if(CE.CEUI.g_cursvc){args.push("deviceid");args.push(CE.CEUI.g_cursvc.deviceid);args.push("serviceid");args.push(CE.CEUI.g_cursvc.serviceid);}
args.push("fileid");args.push(m_file.fileid);CE.CEU.svc.asyncRPC("POST","uploadProgress",args,onUploadProgressSuccess,onUploadProgressFailure);}
function uploadProgressTimer(){m_timeoutid=null;if(m_file){doUploadProgressRPC();}}
function cae(type,id,cls,pid){var e=CE.dce(type,id,cls);if(pid){var p=CE.CEU.$(pid);p.appendChild(e);}
return e;}
var KILOBIT=128;var MEGABIT=(1024*128);function createReadableBitrateString(value){var rate='';if((value/MEGABIT)>1){rate=(Math.round((value/MEGABIT)*10)/10)+CE.STRTAB.lookup('ceui.megabits');}else if((value/KILOBIT)>1){rate=(Math.round((value/KILOBIT)*10)/10)+CE.STRTAB.lookup('ceui.kilobits');}else{rate=value+CE.STRTAB.lookup('ceui.bits');}
return rate;}
function createReadableTimeString(value){if(value<60){var seconds=Math.round(value);if(seconds==1){return CE.STRTAB.lookup('ceui.second',seconds);}else{return CE.STRTAB.lookup('ceui.seconds',seconds);}}else if((value/60)<60){var minutes=Math.round(value/60);if(minutes==1){return CE.STRTAB.lookup('ceui.minute',minutes);}else{return CE.STRTAB.lookup('ceui.minutes',minutes);}}else{var hours=Math.round(value/3600);if(hours==1){return CE.STRTAB.lookup('ceui.hour',hours);}else{return CE.STRTAB.lookup('ceui.hours',hours);}}
return 0;}
this.uploadcompleted=function(){m_uploadcompleted=true;if(m_lastlen==0){if(m_file){doUploadProgressRPC();}}else if(m_fgid){var fg=CE.CEU.$(m_fgid);if(fg){fg.style.width="100%";}}};this.setfile=function(file,folder){m_uploadcompleted=false;m_file=file;m_folder=folder;var l=null;if(m_fgid){l=CE.CEU.$(m_fgid);if(l)l.style.width="0%";}
if(m_nameid){l=CE.CEU.$(m_nameid);if(l)l.innerHTML="";}
if(m_offid){l=CE.CEU.$(m_offid);if(l)l.innerHTML="";}
if(m_lenid){l=CE.CEU.$(m_lenid);if(l)l.innerHTML="";}
if(m_rateid){l=CE.CEU.$(m_lenid);if(l)l.innerHTML="";}
if(m_remid){l=CE.CEU.$(m_lenid);if(l)l.innerHTML="";}
if(m_file){m_stime=m_utime=getCurrentTime();if(m_nameid){var nm=CE.CEU.$(m_nameid);if(nm){var n=m_file.name;if(n){if(n.length>50){n=n.substr(0,49)+"...";}
nm.innerHTML=n;}}}
doUploadProgressRPC();}}
this.update=function(inc,len){var frac=inc/len;var percent=0;if(isNaN(frac)||(frac<0)||(frac>1)){}else{percent=Math.floor(frac*100);}
if(m_fgid){var fg=CE.CEU.$(m_fgid);if(fg){fg.style.width=""+percent+"%";}}
if(m_offid){var off=CE.CEU.$(m_offid);if(off){off.innerHTML=CE.CEU.getSizeStr(inc);}}
if(m_lenid){var lendiv=CE.CEU.$(m_lenid);if(lendiv){lendiv.innerHTML=CE.CEU.getSizeStr(len);}}
if(m_rateid){var ratediv=CE.CEU.$(m_rateid);if(ratediv){var now=getCurrentTime();var dif=now-m_utime;m_utime=now;var bytes=inc-m_lastinc;m_lastinc=inc;if(bytes>0&&dif>0){var Bps=bytes/(dif/1000);if(isNaN(Bps)||Bps==Infinity){}else{ratediv.innerHTML=CE.CEU.getSizeStr(Bps);if(m_remid){var remdiv=CE.CEU.$(m_remid);if(remdiv){var rem=len-inc;rem=rem/Bps;if(isNaN(rem)||rem==Infinity){}else{remdiv.innerHTML=createReadableTimeString(rem);}}}}}}}
m_lastlen=len;};this.init=function(elid){m_rootid=elid;var rootel=CE.CEU.$(m_rootid);if(!rootel)return;var div=cae("div",m_rootid+"_holder","cepbholder",rootel);var el=cae("div",m_rootid+"_pbn","cepbname",div);m_nameid=el.id;el=cae("div",m_rootid+"_pboff","cepboff",div);m_offid=el.id;el=cae("div",m_rootid+"_pbof","cepbof",div);el.appendChild(CE.dctn(CE.STRTAB.lookup("ceui.of")));el=cae("div",m_rootid+"_pblen","cepblen",div);m_lenid=el.id;el=cae("div",m_rootid+"_pbrate","cepbrate",div);m_rateid=el.id;el=cae("div",m_rootid+"_pbrem","cepbrem",div);m_remid=el.id;el=cae("div",m_rootid+"_pbbg","cepbb",rootel);m_bgid=el.id;el=cae("div",rootid+"_pbfg","cepbf",el);m_fgid=el.id;};this.init(rootid);}};
