package com.idega.block.contract.presentation; import com.idega.block.contract.business.ContractWriter; import com.idega.idegaweb.IWBundle; import com.idega.idegaweb.IWResourceBundle; import com.idega.idegaweb.presentation.IWAdminWindow; import com.idega.presentation.IWContext; import com.idega.presentation.Table; import com.idega.presentation.ui.DropdownMenu; import com.idega.presentation.ui.Form; import com.idega.presentation.ui.HiddenInput; import com.idega.presentation.ui.SubmitButton; import com.idega.presentation.ui.TextInput; import com.lowagie.text.Font; /** * Title: idegaclasses * Description: * Copyright: Copyright (c) 2001 * Company: idega * @author <a href="aron@idega.is">Aron Birkir</a> * @version 1.0 */ public class ContractFilerWindow extends IWAdminWindow { private final static String IW_BUNDLE_IDENTIFIER = "com.idega.block.contract"; public static String prmOneId = "contract_id", prmTest = "test", prmManyIds = "many_ids"; public static String prmSeperator = "_", prmFileName = "fname"; public final static String prmCategoryId = "con_cat"; public final static String prmContractId = "con_id"; protected IWResourceBundle iwrb; protected IWBundle iwb; public ContractFilerWindow() { setWidth(570); setHeight(550); setResizable(true); } public String getBundleIdentifier() { return IW_BUNDLE_IDENTIFIER; } public void main(IWContext iwc) { this.iwrb = getResourceBundle(iwc); this.iwb = getBundle(iwc); addTitle("Contract Filer"); int iCategoryId = -1, iContractId = -1; if (iwc.isParameterSet(prmCategoryId) && iwc.isParameterSet(prmContractId)) { iCategoryId = Integer.parseInt(iwc.getParameter(prmCategoryId)); iContractId = Integer.parseInt(iwc.getParameter(prmContractId)); } if (iwc.isParameterSet("generate")) { int id = generate(iwc); if (id > 0) { close(); setParentToReload(); /* Link L = new Link(com.idega.block.media.servlet.MediaServlet.getMediaURL(id)); L.setURL( com.idega.block.media.servlet.MediaServlet.getMediaURL(id)); add(L); */ } else { add("failed"); } } else { add(printForm(iCategoryId, iContractId)); } } private Form printForm(int iCategoryId, int iContractId) { Table T = new Table(5, 7); T.add(this.iwrb.getLocalizedString("titlefont", "Title font"), 1, 2); T.add(this.iwrb.getLocalizedString("paragraphfont", "Paragraph font"), 1, 3); T.add(this.iwrb.getLocalizedString("namefont", "Name font"), 1, 4); T.add(this.iwrb.getLocalizedString("tagfont", "Tag font"), 1, 5); T.add(this.iwrb.getLocalizedString("textfont", "Text font"), 1, 6); T.add(this.iwrb.getLocalizedString("filename", "Filename"), 1, 6); DropdownMenu drpTitleFont = FontDrop("titlefont", Font.HELVETICA); DropdownMenu drpParagraphFont = FontDrop("paragraphfont", Font.HELVETICA); DropdownMenu drpNameFont = FontDrop("namefont", Font.HELVETICA); DropdownMenu drpTagFont = FontDrop("tagfont", Font.HELVETICA); DropdownMenu drpTextFont = FontDrop("textfont", Font.HELVETICA); DropdownMenu drpTitleSize = SizeDrop("titlesize", 16); DropdownMenu drpParagraphSize = SizeDrop("paragraphsize", 10); DropdownMenu drpNameSize = SizeDrop("namesize", 12); DropdownMenu drpTagSize = SizeDrop("tagsize", 9); DropdownMenu drpTextSize = SizeDrop("textsize", 8); DropdownMenu drpTitleType = StyleDrop("titlestyle", Font.BOLD); DropdownMenu drpParagraphType = StyleDrop("paragraphstyle", Font.BOLD); DropdownMenu drpNameType = StyleDrop("namestyle", Font.BOLDITALIC); DropdownMenu drpTagType = StyleDrop("tagstyle", Font.BOLDITALIC); DropdownMenu drpTextType = StyleDrop("textstyle", Font.NORMAL); T.add(drpTitleFont, 2, 2); T.add(drpTitleSize, 3, 2); T.add(drpTitleType, 4, 2); T.add(drpParagraphFont, 2, 3); T.add(drpParagraphSize, 3, 3); T.add(drpParagraphType, 4, 3); T.add(drpNameFont, 2, 4); T.add(drpNameSize, 3, 4); T.add(drpNameType, 4, 4); T.add(drpTagFont, 2, 5); T.add(drpTagSize, 3, 5); T.add(drpTagType, 4, 5); T.add(drpTextFont, 2, 6); T.add(drpTextSize, 3, 6); T.add(drpTextType, 4, 6); TextInput fileNameInput = new TextInput("filename", "Contract"); SubmitButton mitsub = new SubmitButton("generate", "Generate"); T.add(new HiddenInput(prmCategoryId, String.valueOf(iCategoryId))); T.add(new HiddenInput(prmContractId, String.valueOf(iContractId))); T.add(fileNameInput, 2, 7); T.add(mitsub, 4, 7); Form F = new Form(); F.add(T); return F; } private int generate(IWContext iwc) { String sFileName = iwc.getParameter("filename"); int iTitleFont = Integer.parseInt(iwc.getParameter("titlefont")); int iParagraphFont = Integer.parseInt(iwc.getParameter("paragraphfont")); int iTagFont = Integer.parseInt(iwc.getParameter("tagfont")); int iTextFont = Integer.parseInt(iwc.getParameter("textfont")); int iTitleSize = Integer.parseInt(iwc.getParameter("titlesize")); int iParagraphSize = Integer.parseInt(iwc.getParameter("paragraphsize")); int iTagSize = Integer.parseInt(iwc.getParameter("tagsize")); int iTextSize = Integer.parseInt(iwc.getParameter("textsize")); int iTitleType = Integer.parseInt(iwc.getParameter("titlestyle")); int iParagraphType = Integer.parseInt(iwc.getParameter("paragraphstyle")); int iTagType = Integer.parseInt(iwc.getParameter("tagstyle")); int iTextType = Integer.parseInt(iwc.getParameter("textstyle")); Font titleFont = new Font(iTitleFont, iTitleSize, iTitleType); Font paraFont = new Font(iParagraphFont, iParagraphSize, iParagraphType); Font tagFont = new Font(iTagFont, iTagSize, iTagType); Font textFont = new Font(iTextFont, iTextSize, iTextType); int iContractId = Integer.parseInt(iwc.getParameter(prmContractId)); int iCategoryId = Integer.parseInt(iwc.getParameter(prmCategoryId)); int id = ContractWriter.writePDF(iContractId, iCategoryId, sFileName, titleFont, paraFont, tagFont, textFont); return id; } private DropdownMenu FontDrop(String name, int selected) { DropdownMenu drp = new DropdownMenu(name); drp.addMenuElement(String.valueOf(Font.HELVETICA), "HELVETICA"); drp.addMenuElement(String.valueOf(Font.COURIER), "COURIER"); drp.addMenuElement(String.valueOf(Font.TIMES_ROMAN), "TIMES_NEW_ROMAN"); drp.setSelectedElement(String.valueOf(selected)); return drp; } private DropdownMenu SizeDrop(String name, int selected) { DropdownMenu drp = new DropdownMenu(name); for (int i = 8; i < 21; i++) { drp.addMenuElement(String.valueOf(i)); } drp.setSelectedElement(String.valueOf(selected)); return drp; } private DropdownMenu StyleDrop(String name, int selected) { DropdownMenu drp = new DropdownMenu(name); drp.addMenuElement(String.valueOf(Font.NORMAL), "NORMAL"); drp.addMenuElement(String.valueOf(Font.BOLD), "BOLD"); drp.addMenuElement(String.valueOf(Font.BOLDITALIC), "BOLDITALIC"); drp.addMenuElement(String.valueOf(Font.ITALIC), "ITALIC"); drp.addMenuElement(String.valueOf(Font.STRIKETHRU), "STRIKETHRU"); drp.addMenuElement(String.valueOf(Font.UNDERLINE), "UNDERLINE"); drp.setSelectedElement(String.valueOf(selected)); return drp; } }