/* * $Id: IShopExportPage.java,v 1.7 2003/10/03 01:52:42 tryggvil Exp $ * * Copyright (C) 2001 Idega hf. All Rights Reserved. * * This software is the proprietary information of Idega hf. * Use is subject to license terms. * */ package is.idega.idegaweb.intershop.presentation; import com.idega.builder.business.BuilderLogic; import com.idega.core.builder.business.BuilderService; import com.idega.core.builder.data.ICPage; import com.idega.core.builder.data.ICPageHome; import com.idega.data.IDOLookup; import com.idega.presentation.IWContext; import com.idega.idegaweb.IWBundle; import com.idega.idegaweb.presentation.IWAdminWindow; import com.idega.util.FileUtil; import is.idega.idegaweb.intershop.data.IShopTemplate; import is.idega.idegaweb.intershop.business.IShopTemplateHome; import is.idega.idegaweb.intershop.business.IShopExportBusiness; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Properties; /** * @author <a href="mailto:palli@idega.is">Pall Helgason</a> * @version 1.0 */ public class IShopExportPage extends IWAdminWindow { private static final String IW_BUNDLE_IDENTIFIER = "is.idega.idegaweb.intershop"; private boolean exportToSybase(IWContext iwc) throws Exception { BuilderLogic builderlogic = BuilderLogic.getInstance(); BuilderService bservice = getBuilderService(iwc); IWBundle bundle = getBundle(iwc); StringBuffer path = new StringBuffer(bundle.getPropertiesRealPath()); if (!path.toString().endsWith(FileUtil.getFileSeparator())) path.append(FileUtil.getFileSeparator()); path.append(bundle.getProperty("sybaseproperties","sybasedb.properties")); String ib_page_id = Integer.toString(bservice.getCurrentPageId(iwc)); ICPage ibpage = null; int page_id = -1; try { page_id = Integer.parseInt(ib_page_id); ICPageHome ibPageHome = (ICPageHome)IDOLookup.getHome(ICPage.class); ibpage = ibPageHome.findByPrimaryKey(page_id); } catch(Exception e) { return(false); } String subType = ibpage.getSubType(); if (subType == null) return(false); if (!subType.equals(IShopTemplate.SUBTYPE_NAME)) return(false); IShopTemplate is_page = IShopTemplateHome.getInstance().findByPageId(page_id); if (is_page == null) return(false); String html = builderlogic.getCurrentPageHtml(iwc); if (html == null) return(false); Properties props = new Properties(); try { props.load(new FileInputStream(path.toString())); } catch(FileNotFoundException e) { e.printStackTrace(); return(false); } catch(IOException e) { e.printStackTrace(); return(false); } String resetURL = bundle.getProperty("resetCacheURL"); IShopExportBusiness.getInstance().exportPage(is_page,props,html,iwc.getApplicationContext(),resetURL); return(true); } public void main(IWContext iwc) throws Exception { exportToSybase(iwc); close(); } /** * */ public String getBundleIdentifier() { return IW_BUNDLE_IDENTIFIER; } }