package modules.asset; import java.util.Iterator; import model.projects.ProjectManager; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.openedit.Data; import org.openedit.data.Searcher; import org.openedit.entermedia.Asset; import org.openedit.entermedia.MediaArchive; import org.openedit.entermedia.modules.BaseMediaModule; import com.openedit.WebPageRequest; import com.openedit.hittracker.HitTracker; public class ProjectModuleOld extends BaseMediaModule { private static final Log log = LogFactory.getLog(ProjectModuleOld.class); public void loadCollections(WebPageRequest inReq) throws Exception { String catalogid = inReq.findValue("catalogid"); ProjectManager manager = (ProjectManager)getModuleManager().getBean(catalogid,"projectManager"); manager.loadCollections(inReq); } public void savedLibrary(WebPageRequest inReq) { Data saved = (Data)inReq.getPageValue("data"); if( saved != null) { inReq.setRequestParameter("profilepreference","last_selected_library" ); inReq.setRequestParameter("profilepreference.value", saved.getId() ); } } public void addAssetToLibrary(WebPageRequest inReq) { //TODO: Support multiple selections MediaArchive archive = getMediaArchive(inReq); String libraryid = inReq.getRequestParameter("libraryid"); String hitssessionid = inReq.getRequestParameter("hitssessionid"); if( hitssessionid != null ) { HitTracker tracker = (HitTracker)inReq.getSessionValue(hitssessionid); if( tracker != null ) { tracker = tracker.getSelectedHitracker(); } if( tracker != null && tracker.size() > 0 ) { for (Iterator iterator = tracker.iterator(); iterator.hasNext();) { Data data = (Data) iterator.next(); addAssetToLibrary(inReq, archive, libraryid, data.getId()); } inReq.putPageValue("added" , String.valueOf( tracker.size() ) ); return; } } String assetid = inReq.getRequestParameter("assetid"); addAssetToLibrary(inReq, archive, libraryid, assetid); inReq.putPageValue("added" , "1" ); } protected void addAssetToLibrary(WebPageRequest inReq, MediaArchive archive, String libraryid, String assetid) { Asset asset = archive.getAsset(assetid); if(asset != null && !asset.getLibraries().contains(libraryid)) { asset.addLibrary(libraryid); archive.saveAsset(asset, inReq.getUser()); } } public void addAssetToCollection(WebPageRequest inReq) { //TODO: Support multiple selections MediaArchive archive = getMediaArchive(inReq); String hitssessionid = inReq.getRequestParameter("hitssessionid"); String libraryid = inReq.getRequestParameter("libraryid"); if( hitssessionid != null ) { HitTracker tracker = (HitTracker)inReq.getSessionValue(hitssessionid); if( tracker != null ) { tracker = tracker.getSelectedHitracker(); } if( tracker != null && tracker.size() > 0 ) { for (Iterator iterator = tracker.iterator(); iterator.hasNext();) { Data data = (Data) iterator.next(); addAssetToCollection(inReq, archive, libraryid, data.getId()); } inReq.putPageValue("added" , String.valueOf( tracker.size() ) ); return; } } String assetid = inReq.getRequestParameter("assetid"); addAssetToCollection(inReq, archive, libraryid, assetid); inReq.putPageValue("added" , "1" ); } protected void addAssetToCollection(WebPageRequest inReq, MediaArchive archive, String libraryid, String assetid) { addAssetToLibrary(inReq, archive, libraryid, assetid); String librarycollection = inReq.getRequestParameter("librarycollection"); Searcher librarycollectionassetSearcher = archive.getSearcher("librarycollectionasset"); Data found = librarycollectionassetSearcher.query().match("librarycollection", librarycollection).match("asset", assetid).searchOne(); if(found == null) { found = librarycollectionassetSearcher.createNewData(); found.setSourcePath(libraryid + "/" + librarycollection); found.setProperty("librarycollection", librarycollection); found.setProperty("asset", assetid); librarycollectionassetSearcher.saveData(found, inReq.getUser()); log.info("Saved " + found.getId()); } } }