                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                if(!window.__td){window.__MT=100;window.__ti=0;window.__td=[];window.__td.length=__MT;window.__noTrace=false;}if(!vp.dialogs)
{
vp.dialogs=function dialogs(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}};
}

if(!vp.dialogs.dialogbase)
{
vp.dialogs.dialogbase=function dialogs_dialogbase(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}};
}

vp.dialogs.PreviouslyUploadedImagesDialog=function dialogs_PreviouslyUploadedImagesDialog(name,proxy){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}


vp.dialogs.dialogbase.BaseDialog.call(this,name,proxy);


var me=this;


this.webService;


this.webServiceProjects;


this.webServiceLibrary;


this.images;


this.projects;


this.pagedList;


this.initialized=false;


this.bIsSignedIn=false;


this.oPaginator;


this.bInProjectMode;


var allProjects=[];


var allImages=[];


var selectedImages=[];


var imagesInRepository=[];


var proxyName=proxy;


var iSearchSemaphore=0;


var iCurrentSearch=0;


var IMAGES_PER_PAGE=8;


this.oSelectableImageCollection;


this.oSelectableProjectCollection;


var bRecentSearchIsLibrary;


var iRecentSearchType;






this.getImgDomElement=function pb_this_getImgDomElement(oImage,oImageItem){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var oImagePreview=new vp.image.ImagePreview(oImageItem);

var iPreviewBoxSize=90;
oImagePreview.previewSize.width=iPreviewBoxSize;
oImagePreview.previewSize.height=iPreviewBoxSize;

oImage.src=oImagePreview.getPreviewUrl();

oImage.id=oImageItem.id;
oImage.imageType=oImageItem.type;
oImage.aspectRatio=oImageItem.width/oImageItem.height;
oImage.partnerFileId=oImageItem.fileId;
};




this.getProjectDomElement=function pb_this_getProjectDomElement(oImage,oImageItem){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
oImage.src="/vp/images/b09/common/misc-images/folder.png";
oImage.className="project-folder-icon";
vp.ui.addClass(oImage,"pngfix");

};




this.getProjectCaptionElements=function pb_this_getProjectCaptionElements(oProjectContainer,oItem){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}


var oProjectInformationContainer=document.createElement("DIV");
oProjectInformationContainer.className="project-information-container";
oProjectInformationContainer.innerHTML=oItem.sName+"<br/>"+oItem.sModified;


oProjectContainer.className="multi-upload-project-container";


oProjectContainer.insertBefore(oProjectInformationContainer,oProjectContainer.nextSibling);


oProjectContainer.oImages=oItem.oImages;
oProjectContainer.sName=oItem.sName;
};




this.selectSingleImageCallback=function pb_this_selectSingleImageCallback(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
me.addImageSingle();


me.oSelectableImageCollection.aSelectedImageItems.removeAll();


me.proxy.cancelled=false;


vp.dialog.closeCurrent();
};




this.selectProjectImageCallback=function pb_this_selectProjectImageCallback(oEntry){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
me.bInProjectMode=false;


vp.ui.show("backLinksContainer-"+proxy.myName);


var oBackLinksContainer=vp.ui.get("backLinksContainer-"+proxy.myName);
oBackLinksContainer.innerHTML="<a href='#' onclick='vp.dialogs.dialogbase.getDialog(\""+name+"\").projectDataLoadedHandler(); return false;'> "+me.proxy.sProjectsText+" </a> > "+oEntry.wrapper.sName;


vp.ui.collapse('projectsCalloutContainer-'+proxy.myName);
me.oSelectableImageCollection.loadImages(oEntry.wrapper.oImages);
};




me.oSelectableImageCollection=new vp.dialogs.SelectableImageCollection(
document.getElementById("paginatorContainer-"+proxy.myName),
document.getElementById("paginator-"+proxy.myName),
document.getElementById("imagesContainer-"+proxy.myName),
document.getElementById("noImagesMessage-"+proxy.myName),
document.getElementById("informationContainer-"+proxy.myName),
document.getElementById("addButtonContainer-"+proxy.myName),
IMAGES_PER_PAGE,
me.getImgDomElement,
me.proxy.bIsMultiUpload,
me.selectSingleImageCallback);





me.oSelectableProjectCollection=new vp.dialogs.SelectableImageCollection(
document.getElementById("paginatorContainer-"+proxy.myName),
document.getElementById("paginator-"+proxy.myName),
document.getElementById("imagesContainer-"+proxy.myName),
document.getElementById("noImagesMessage-"+proxy.myName),
document.getElementById("projectsCalloutContainer-"+proxy.myName),
document.getElementById("addButtonContainer-"+proxy.myName),
IMAGES_PER_PAGE,
me.getProjectDomElement,
false,
me.selectProjectImageCallback);


me.oSelectableProjectCollection.fCaptionCallback=me.getProjectCaptionElements;





var decrementAndCheckSearchSemaphore=function pv_decrementAndCheckSearchSemaphore(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}

iSearchSemaphore--;


if(iSearchSemaphore>0){
return false;
}


iSearchSemaphore=0;

return true;
};




this.dataLoadedHandler=function pb_this_dataLoadedHandler(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}


if(!decrementAndCheckSearchSemaphore()){
return;
}

if(bRecentSearchIsLibrary){
vp.ui.collapse('sortSelectorContainer-'+proxy.myName);
}

me.bInProjectMode=false;
vp.ui.collapse('projectsCalloutContainer-'+proxy.myName);
vp.ui.collapse('backLinksContainer-'+proxy.myName);
me.oSelectableImageCollection.loadImages(me.webService.images);

if(me.proxy.forceLibrarySearch){
vp.ui.collapse('informationContainer-'+proxy.myName);
}

};




this.projectDataLoadedHandler=function pb_this_projectDataLoadedHandler(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}

if(!decrementAndCheckSearchSemaphore()){
return;
}


me.bInProjectMode=true;
vp.ui.collapse('backLinksContainer-'+proxy.myName);
vp.ui.collapse('informationContainer-'+proxy.myName);
vp.ui.collapse('addButtonContainer-'+proxy.myName);
vp.ui.show('projectsCalloutContainer-'+proxy.myName);


me.oSelectableProjectCollection.loadImages(me.webServiceProjects.projects);
};








var isImageInRepository=function pv_isImageInRepository(oImageContainer){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var repo=me.proxy.data;
var entries=repo.getEntries();

for(var i=0;i<entries.length;i++){
var entry=entries[i];


if(!entry.image){
continue;
}

if(entry.image.id==oImageContainer.itemID){


return true;
}
}

return false;
};




this.searchLibrary=function pb_this_searchLibrary(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var textToSearch=document.getElementById('imageSearchTextBox-'+proxy.myName).value;

if(!textToSearch){
return;
}


me.doSearch('library',textToSearch);
};





this.initialSearch=function pb_this_initialSearch(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}

if(!me.proxy.data){
me.proxy.hookUpRepository();
}

if(me.initialized){

if(me.proxy.forceLibrarySearch){
enterLibrarySearchMode();
}
else{

hideLibrarySearch();
me.sortSelected(iCurrentSearch,true);
}
return;
}

var oLoginFrame=document.getElementById("loginFrame-"+proxy.myName);
var oPaginatorContainer=document.getElementById("paginatorContainer-"+proxy.myName);
var oButtonContainer=document.getElementById("addButtonContainer-"+proxy.myName);
var oImagesContainer=document.getElementById("imagesContainer-"+proxy.myName);
var oCalloutContainer=document.getElementById("informationContainer-"+proxy.myName);

if(!me.proxy.bIsSignedIn){


if(oLoginFrame.shown){
return;
}

vp.ui.collapse(oPaginatorContainer);
vp.ui.collapse(oButtonContainer);
vp.ui.collapse(oImagesContainer);
vp.ui.collapse(oCalloutContainer);


vp.ui.hide('sortSelectorContainer-'+proxy.myName);

if(vp.ui.get('myImagesSearchBar-'+proxy.myName)){
vp.ui.hide('myImagesSearchBar-'+proxy.myName);
}

var fnLoginCallbackWrapper=function pv_fnLoginCallbackWrapper(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
me.proxy.bIsSignedIn=true;


if(vp&&vp.fastpath&&vp.fastpath.photomatch){
vp.fastpath.photomatch.userIsLoggedIn=true;
}


vp.ui.show('sortSelectorContainer-'+proxy.myName);

if(vp.ui.get('myImagesSearchBar-'+proxy.myName)){
vp.ui.show('myImagesSearchBar-'+proxy.myName);
}
me.initialSearch();
};


var sUrl="/vp/ns/mini_sign_in.aspx?noguest=1&callback_id=";
var iCallbackId=vp.win.createCallbackHandler(fnLoginCallbackWrapper);
sUrl+=""+iCallbackId;

oLoginFrame.src=sUrl;
oLoginFrame.shown=true;

return;
}

vp.ui.collapse(oPaginatorContainer);
vp.ui.collapse(oLoginFrame);
vp.ui.collapse(oButtonContainer);
vp.ui.collapse(oImagesContainer);
vp.ui.collapse(oCalloutContainer);

me.initialized=true;

me.webService=new vp.image.Search(me.dataLoadedHandler,false);
me.webServiceProjects=new vp.image.Search(me.projectDataLoadedHandler,true);


var searchType='upload';

if(me.proxy.forceLibrarySearch){
enterLibrarySearchMode();
}
else{
me.doSearch('upload');
}


};







this.doSearch=function pb_this_doSearch(sSearchType,sKeywords){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var serviceToUse=me.webService;
var iType=0;

bRecentSearchIsLibrary=false;

switch(sSearchType){
case"project":
iType=vp.image.Search.Type.Upload;
serviceToUse=me.webServiceProjects;
break;
case"upload":
iType=vp.image.Search.Type.Upload;
break;
case"library":
iType=vp.image.Search.Type.Library;
bRecentSearchIsLibrary=true;
break;
case"logo":
iType=vp.image.Search.Type.Logo;
break;
case"caricature":
iType=vp.image.Search.Type.Caricature;
break;
default:
throw"Invalid search type specified";

}


iRecentSearchType=iType;

if(iType==vp.image.Search.Type.Library){
if(!sKeywords){
throw"No keywords specified for lib search";
}
serviceToUse.searchByKeywords(sKeywords,0);
}
else{
serviceToUse.searchByShopper(iType);
}
};




this.addImageSingle=function pb_this_addImageSingle(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var selectedImages=me.oSelectableImageCollection.aSelectedImageItems.clone();


var selectedImagePointer=selectedImages[0];

if(me.proxy.imageDataMode){
me.proxy.data=selectedImagePointer;
}
else{
me.proxy.data=selectedImagePointer.id;
}
};




this.addImages=function pb_this_addImages(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var repo=me.proxy.data;

var selectedImages=me.oSelectableImageCollection.aSelectedImageItems.clone();

for(var i=0,iNumSelectedImages=selectedImages.length;i<iNumSelectedImages;i++){
var selectedImagePointer=selectedImages[i];
var entry=new vp.upload.RepositoryEntryBox(null,null,me.removeImage);
entry.imageContainer=selectedImagePointer;

var image=new vp.image.EditedImage(null,selectedImagePointer.id);

imagesInRepository.push(selectedImagePointer);


switch(iRecentSearchType){
case vp.image.Search.Type.Upload:
image.type=1;
break;
case vp.image.Search.Type.Library:
image.type=0;
bRecentSearchIsLibrary=true;
break;
case vp.image.Search.Type.Logo:
image.type=2;
break;
case vp.image.Search.Type.Caricature:
image.type=3;
break;
default:
throw"Invalid search type specified";
}


repo.addEntry(entry);

entry.repository=repo;
entry.initialize();
entry.setImage(image,false);

me.checkImageWithId(selectedImagePointer.id);

}

};




this.checkImageWithId=function pb_this_checkImageWithId(iId){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
for(var i=0;i<me.oSelectableImageCollection.aAllImages.length;i++){
if(me.oSelectableImageCollection.aAllImages[i].ImageItem.id==iId){
me.oSelectableImageCollection.checkAndDisableImage(me.oSelectableImageCollection.aAllImages[i]);
}
}
};




this.uncheckImageWithId=function pb_this_uncheckImageWithId(iId){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
for(var i=0;i<me.oSelectableImageCollection.aAllImages.length;i++){
if(me.oSelectableImageCollection.aAllImages[i].ImageItem.id==iId){
me.oSelectableImageCollection.uncheckAndEnableImage(me.oSelectableImageCollection.aAllImages[i]);
}
}
};




this.removeImage=function pb_this_removeImage(entry){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
for(var i=0;i<imagesInRepository.length;i++){
if(imagesInRepository[i].id===entry.image.id){
me.uncheckImageWithId(entry.image.id);
imagesInRepository.remove(i);
break;
}

}
};






this.returnToMyImages=function pb_this_returnToMyImages(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
vp.ui.collapse('myImagesLinkSpan-'+proxy.myName);
vp.ui.show('sortSelectorContainer-'+proxy.myName);

me.sortSelected(iCurrentSearch,true);
};




this.returnToMyComputer=function pb_this_returnToMyComputer(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var tabElement=vp.ui.get("addimagedialog-tab-"+proxy.myName);

while(tabElement){
if(tabElement.getAttribute('tab-content-id')){
var tab=vp.controls.Tab.get(tabElement.getAttribute('tab-content-id'));
if(tab){
tab.setSelected(true);
break;
}
}

tabElement=tabElement.parentNode;
}
};




this.unload=function pb_this_unload(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
me.proxy.forceLibrarySearch=false;
};

this.sortSelected=function pb_this_sortSelected(iSelectedValue,bForceSearch){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}


if(iSelectedValue===iCurrentSearch&&!bForceSearch){
return;
}

var searchType;

switch(iSelectedValue){
case 0:
case 1:
searchType='upload';
break;
case 4:
searchType='project';
break;
case 2:
searchType='logo';
break;
case 3:
searchType='caricature';
break;
default:
throw"Invalid search specified";
}


iSearchSemaphore++;


iCurrentSearch=iSelectedValue;


me.doSearch(searchType);
};




var enterLibrarySearchMode=function pv_enterLibrarySearchMode(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
vp.ui.collapse('sortSelectorContainer-'+proxy.myName);
vp.ui.collapse('informationContainer-'+proxy.myName);
vp.ui.collapse('projectsCalloutContainer-'+proxy.myName);
vp.ui.show('imageLibrarySearchContent-'+proxy.myName);
vp.ui.show('myComputerLinkSpan-'+proxy.myName);

me.oSelectableImageCollection.clear();
me.oSelectableProjectCollection.clear();
};




var hideLibrarySearch=function pv_hideLibrarySearch(){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
vp.ui.show('sortSelectorContainer-'+proxy.myName);
vp.ui.show('informationContainer-'+proxy.myName);
vp.ui.show('projectsCalloutContainer-'+proxy.myName);
vp.ui.collapse('imageLibrarySearchContent-'+proxy.myName);
vp.ui.collapse('myComputerLinkSpan-'+proxy.myName);
};






var onInputKeyUp=function pv_onInputKeyUp(e){if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
e=vp.events.getEvent(e);

if(e.keyCode==13){
me.searchLibrary();
vp.events.cancelEvent(e);
}

};





me.proxy.oRemoveImageEvent.addHandler(me.removeImage);


me.oSelectableImageCollection.fIsCheckedCallback=me.isImageInRepository;



if(!me.proxy.IsMultiUpload&&vp.ui.get('addButtonContainer-'+proxy.myName)){
vp.ui.collapse('addButtonContainer-'+proxy.myName);
}

var oFileInputElement=document.getElementById('imageSearchTextBox-'+proxy.myName);

vp.events.add(oFileInputElement,"keyup",onInputKeyUp);
vp.events.add(oFileInputElement,"keydown",onInputKeyUp);



me.onload.addHandler(me.initialSearch);
me.onbeforeunload.addHandler(me.unload);


};