/* * Copyright (C) 2003 Idega software. All Rights Reserved. * * This software is the proprietary information of Idega software. Use is * subject to license terms. * */ package is.idega.idegaweb.member.isi.block.accounting.presentation; import is.idega.idegaweb.member.isi.block.accounting.data.ClubTariffType; import java.rmi.RemoteException; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import com.idega.idegaweb.IWConstants; import com.idega.idegaweb.IWResourceBundle; import com.idega.presentation.IWContext; import com.idega.presentation.Table; import com.idega.presentation.text.Text; import com.idega.presentation.ui.CheckBox; import com.idega.presentation.ui.Form; import com.idega.presentation.ui.SubmitButton; import com.idega.presentation.ui.TextInput; /** * @author palli */ public class EditTariffType extends CashierSubWindowTemplate { protected static final String ACTION_SUBMIT = "ett_submit"; protected static final String ACTION_DELETE = "ett_delete"; protected static final String LABEL_NAME = "isi_acc_ett_name"; protected static final String LABEL_LIST_NAMES = "isi_acc_ett_list_names"; protected static final String LABEL_DELETE = "isi_acc_ett_delete"; private final static String ERROR_NO_NAME_ENTERED = "isi_acc_ett_no_name_entered"; /** * */ public EditTariffType() { super(); } private boolean saveTariffType(IWContext iwc) { this.errorList = new ArrayList(); String name = iwc.getParameter(LABEL_NAME); if (name == null || "".equals(name)) { this.errorList.add(ERROR_NO_NAME_ENTERED); } if (!this.errorList.isEmpty()) { return false; } boolean insert = false; try { insert = getAccountingBusiness(iwc).insertTariffType(null, name, null, getClub()); } catch (RemoteException e) { e.printStackTrace(); } return insert; } private void deleteTariffType(IWContext iwc) { String delete[] = iwc.getParameterValues(LABEL_DELETE); try { getAccountingBusiness(iwc).deleteTariffType(delete); } catch (RemoteException e) { e.printStackTrace(); } } public void main(IWContext iwc) { Form f = new Form(); IWResourceBundle iwrb = getResourceBundle(iwc); if (iwc.isParameterSet(ACTION_SUBMIT)) { if (!saveTariffType(iwc)) { Table error = new Table(); Text labelError = new Text(iwrb.getLocalizedString( ERROR_COULD_NOT_SAVE, "Could not save") + ":"); labelError .setFontStyle(IWConstants.BUILDER_FONT_STYLE_LARGE_RED); int r = 1; error.add(labelError, 1, r++); if (this.errorList != null && !this.errorList.isEmpty()) { Iterator it = this.errorList.iterator(); while (it.hasNext()) { String loc = (String) it.next(); Text errorText = new Text(iwrb.getLocalizedString(loc, "")); errorText .setFontStyle(IWConstants.BUILDER_FONT_STYLE_LARGE_RED); error.add(errorText, 1, r++); } } f.add(error); } } else if (iwc.isParameterSet(ACTION_DELETE)) { deleteTariffType(iwc); } Table t = new Table(); Table inputTable = new Table(); t.setCellpadding(5); inputTable.setCellpadding(5); int row = 1; Text labelName = new Text(iwrb.getLocalizedString(LABEL_NAME, "Name")); labelName.setFontStyle(IWConstants.BUILDER_FONT_STYLE_LARGE); Text labelListName = new Text(iwrb.getLocalizedString(LABEL_LIST_NAMES, "Names")); labelListName.setFontStyle(IWConstants.BUILDER_FONT_STYLE_LARGE); inputTable.add(labelName, 1, row++); TextInput nameInput = new TextInput(LABEL_NAME); SubmitButton submit = new SubmitButton(iwrb.getLocalizedString( ACTION_SUBMIT, "Submit"), ACTION_SUBMIT, "submit"); inputTable.add(nameInput, 1, row); inputTable.add(submit, 2, row); row = 1; CheckBox checkAll = new CheckBox("checkall"); checkAll.setToCheckOnClick(LABEL_DELETE, "this.checked"); t.add(checkAll, 1, row); t.add(labelListName, 2, row++); Collection col = null; try { if (getClub() != null) { col = getAccountingBusiness(iwc).findAllTariffTypeByClub( getClub()); } } catch (RemoteException e) { e.printStackTrace(); } if (col != null && !col.isEmpty()) { Iterator it = col.iterator(); while (it.hasNext()) { ClubTariffType type = (ClubTariffType) it.next(); CheckBox deleteCheck = new CheckBox(LABEL_DELETE, type .getPrimaryKey().toString()); t.add(deleteCheck, 1, row); t.add(type.getName(), 2, row); row++; } SubmitButton delete = new SubmitButton(iwrb.getLocalizedString( ACTION_DELETE, "Delete"), ACTION_DELETE, "delete"); delete.setToEnableWhenChecked(LABEL_DELETE); t.add(delete, 2, row); t.setAlignment(2, row, "RIGHT"); } f.maintainParameter(CashierWindow.ACTION); f.maintainParameter(CashierWindow.PARAMETER_GROUP_ID); f.maintainParameter(CashierWindow.PARAMETER_DIVISION_ID); f.maintainParameter(CashierWindow.PARAMETER_CLUB_ID); f.add(inputTable); f.add(t); add(f); } }