/** Prepares the SMTP form */ private Tab setupSmtp(final ValuesManager vm) { // Prepare the SMTP connection tab Tab smtpTab = new Tab(); smtpTab.setTitle(I18N.message("smtpserver")); final DynamicForm smtpForm = new DynamicForm(); smtpForm.setDisabled(true); smtpForm.setID("smtpForm"); smtpForm.setTitleOrientation(TitleOrientation.TOP); smtpForm.setValuesManager(vm); smtpTab.setPane(smtpForm); TextItem smtpHost = ItemFactory.newTextItem(SMTP_HOST, "host", null); smtpHost.setValue("localhost"); smtpHost.setWrapTitle(false); IntegerItem smtpPort = ItemFactory.newIntegerItem(SMTP_PORT, "port", null); smtpPort.setValue(25); smtpPort.setWrapTitle(false); TextItem smtpUsername = ItemFactory.newTextItem(SMTP_USERNAME, "username", null); smtpUsername.setWrapTitle(false); PasswordItem smtpPassword = new PasswordItem(); smtpPassword.setTitle(I18N.message("password")); smtpPassword.setName(SMTP_PASSWORD); smtpPassword.setWrapTitle(false); BooleanItem smtpSecureAuth = new BooleanItem(); smtpSecureAuth.setTitle(I18N.message("secureauth")); smtpSecureAuth.setName(SMTP_SECURE_AUTH); smtpSecureAuth.setWrapTitle(false); smtpSecureAuth.setDefaultValue(false); SelectItem smtpConnectionSecurity = new SelectItem(); smtpConnectionSecurity.setTitle(I18N.message("connectionsecurity")); smtpConnectionSecurity.setName("smtpConnectionSecurity"); smtpConnectionSecurity.setDefaultValue(Constants.SMTP_SECURITY_NONE); smtpConnectionSecurity.setWrapTitle(false); LinkedHashMap<String, String> valueMap = new LinkedHashMap<String, String>(); valueMap.put(Constants.SMTP_SECURITY_NONE, I18N.message("none")); valueMap.put(Constants.SMTP_SECURITY_SSL, I18N.message("ssl")); valueMap.put(Constants.SMTP_SECURITY_TLS, I18N.message("tls")); valueMap.put(Constants.SMTP_SECURITY_TLS_IF_AVAILABLE, I18N.message("tlsavailable")); smtpConnectionSecurity.setValueMap(valueMap); TextItem smtpSender = ItemFactory.newEmailItem(SMTP_SENDER, "sender", false); smtpSender.setWrapTitle(false); smtpSender.setValue("*****@*****.**"); smtpForm.setFields( smtpHost, smtpPort, smtpUsername, smtpPassword, smtpSender, smtpConnectionSecurity, smtpSecureAuth); return smtpTab; }
/** Prepares the language form */ private Tab setupLanguage(final ValuesManager vm) { Tab languageTab = new Tab(); languageTab.setTitle(I18N.message(LANGUAGE)); SelectItem languageItem = ItemFactory.newLanguageSelector(LANGUAGE, false, true); languageItem.setTitle(I18N.message("defaultlang")); languageItem.setRequired(true); languageItem.setValue(I18N.getLocale()); final DynamicForm languageForm = new DynamicForm(); languageForm.setID("languageForm"); languageForm.setValuesManager(vm); languageForm.setFields(languageItem); languageForm.setDisabled(true); languageTab.setPane(languageForm); return languageTab; }
private void initComponents() { HLayout formsHLayout = new HLayout(); formsHLayout.setWidth100(); formsHLayout.setHeight("*"); formsHLayout.setMembersMargin(5); DynamicForm jobNamesForm = new DynamicForm(); jobNamesForm.setWidth100(); jobNamesForm.setHeight100(); jobNamesForm.setGroupTitle("Filter Jobs"); jobNamesForm.setIsGroup(true); jobNamesForm.setTitleOrientation(TitleOrientation.TOP); jobNamesForm.setNumCols(2); jobNamesForm.setValuesManager(valuesManager); jobNamesForm.setDataFetchMode(FetchMode.BASIC); CheckboxItem selectAllJobNamesChkItem = new CheckboxItem(); selectAllJobNamesChkItem.setValue(true); selectAllJobNamesChkItem.setTitle("Select All Jobs"); selectAllJobNamesChkItem.setWidth("*"); selectAllJobNamesChkItem.setName("selectAllJobNames"); selectAllJobNamesChkItem.addChangedHandler( new ChangedHandler() { @Override public void onChanged(ChangedEvent event) { if ((Boolean) event.getValue()) { selectJobNameGrid.setDisabled(true); selectJobNameGrid.setCriterion(null); } else { selectJobNameGrid.setDisabled(false); // selectJobNameGrid.setCriterion(new Criterion().seta); } } }); selectJobNameGrid.setTitle("Select Jobs"); selectJobNameGrid.setWidth(280); selectJobNameGrid.setMultiple(true); selectJobNameGrid.setMultipleAppearance(MultipleAppearance.GRID); selectJobNameGrid.setValueMap("job", "job1", "job2", "Goat", "Marmoset", "Mouse"); selectJobNameGrid.setName("selectedJobNames"); selectJobNameGrid.setCriteriaField("selectedJobNames"); /*selectJobNameGrid.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { if(event.getSource().equals(selectJobNameGrid)){ String[] values = selectJobNameGrid.getValues(); valuesManager.setAttribute("selectedJobNames", values, true); } } });*/ executionStartDate.setName("executionStartDate"); executionStartDate.setTitle("Exceution Start Date"); executionStartDate.setRequired(true); executionEndDate.setName("executionEndDate"); executionEndDate.setTitle("Exceution End Date"); executionEndDate.setRequired(true); executionStartTime.setName("executionStartTime"); executionStartTime.setTitle("Exceution Start Time"); executionStartTime.setRequired(true); executionEndTime.setName("executionEndTime"); executionEndTime.setTitle("Exceution End Time"); executionEndTime.setRequired(true); FormItem[] formItems = new FormItem[] { selectAllJobNamesChkItem, selectJobNameGrid, executionStartDate, executionStartTime, executionEndDate, executionEndTime }; jobNamesForm.setDataSource(HistoricalJobMonitorDataSource.getInstance(), formItems); jobNamesForm.setFields(formItems); formsHLayout.addMember(jobNamesForm); addMember(formsHLayout); addMember(searchButton); }
/** Prepares the database tab */ private Tab setupDatabase(final ValuesManager vm) { // Prepare the map with all database engines engines.put( MYSQL, new String[] { "MySQL 5.x", "com.mysql.jdbc.Driver", "jdbc:mysql://<server>[,<failoverhost>][<:3306>]/<database>", "org.hibernate.dialect.MySQLDialect", "SELECT 1" }); engines.put( "PostgreSQL", new String[] { "PostgreSQL 9.x", "org.postgresql.Driver", "jdbc:postgresql:[<//server>[<:5432>/]]<database>", "org.hibernate.dialect.PostgreSQLDialect", "SELECT 1" }); engines.put( ORACLE, new String[] { "Oracle 10g/11g", "oracle.jdbc.driver.OracleDriver", "jdbc:oracle:thin:@<server>[<:1521>]:<sid>", "org.hibernate.dialect.Oracle10gDialect", "SELECT 1 FROM DUAL" }); engines.put( SQLSERVER, new String[] { "SQL Server 2005/2008", "net.sourceforge.jtds.jdbc.Driver", "jdbc:jtds:sqlserver://<server>[:<1433>]/<database>;instance=<instance>", "org.hibernate.dialect.SQLServerDialect", "SELECT 1" }); Tab databaseTab = new Tab(); databaseTab.setTitle(I18N.message("database")); final DynamicForm databaseForm = new DynamicForm(); databaseForm.setWidth(450); databaseForm.setID("database"); databaseForm.setValuesManager(vm); databaseForm.setDisabled(true); RadioGroupItem dbType = new RadioGroupItem(); dbType.setName(DB_TYPE); dbType.setWrapTitle(false); dbType.setRequired(true); dbType.setVertical(false); dbType.setValueMap(I18N.message(INTERNAL), I18N.message("external")); dbType.setValue(I18N.message(INTERNAL)); dbType.setRedrawOnChange(true); dbType.setTitle(I18N.message("dbtype")); // The database engine, if the External db was chosen SelectItem dbEngine = new SelectItem(); dbEngine.setTitle(I18N.message("dbengine")); dbEngine.setWrapTitle(false); dbEngine.setVisible(false); dbEngine.setName(DB_ENGINE); dbEngine.setDefaultValue(MYSQL); LinkedHashMap<String, String> valueMap = new LinkedHashMap<String, String>(); for (String engine : engines.keySet()) { valueMap.put(engine, engines.get(engine)[0]); } dbEngine.setValueMap(valueMap); dbEngine.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); RequiredIfValidator ifValidator = new RequiredIfValidator(); ifValidator.setExpression( new RequiredIfFunction() { public boolean execute(FormItem formItem, Object value) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbEngine.setValidators(ifValidator); dbEngine.addChangeHandler( new ChangeHandler() { public void onChange(ChangeEvent event) { String selectedItem = (String) event.getValue(); databaseForm.getField(DB_DRIVER).setValue(engines.get(selectedItem)[1]); databaseForm.getField(DB_URL).setValue(engines.get(selectedItem)[2]); } }); // The driver for the external DB TextItem dbDriver = ItemFactory.newTextItem(DB_DRIVER, "driverclass", null); dbDriver.setVisible(false); dbDriver.setDefaultValue(engines.get(MYSQL)[1]); dbDriver.setWrapTitle(false); dbDriver.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbDriver.setValidators(ifValidator); // The connection URL to external DB TextItem dbUrl = ItemFactory.newTextItem(DB_URL, "connectionurl", null); dbUrl.setWidth(200); dbUrl.setVisible(false); dbUrl.setDefaultValue(engines.get(MYSQL)[2]); dbUrl.setWrapTitle(false); dbUrl.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbUrl.setValidators(ifValidator); // The username to access the external DB TextItem dbUsername = ItemFactory.newTextItem(DB_USERNAME, "username", null); dbUsername.setVisible(false); dbUsername.setWrapTitle(false); dbUsername.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); // The password to access the external DB PasswordItem dbPassword = new PasswordItem(); dbPassword.setVisible(false); dbPassword.setTitle(I18N.message("password")); dbPassword.setName(DB_PASSWORD); dbPassword.setWrapTitle(false); dbPassword.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); databaseForm.setFields(dbType, dbEngine, dbDriver, dbUrl, dbUsername, dbPassword); databaseTab.setPane(databaseForm); return databaseTab; }
public TabBillingComps() { try { setTitle(CallCenterBK.constants.billingComps()); setCanClose(true); billingCompsDS = DataSource.get("BillingCompsDS"); mainLayout = new VLayout(5); mainLayout.setWidth100(); mainLayout.setHeight100(); mainLayout.setMargin(5); searchForm = new DynamicForm(); searchForm.setAutoFocus(true); searchForm.setWidth(830); searchForm.setTitleWidth(250); searchForm.setNumCols(4); mainLayout.addMember(searchForm); billingCompNameItem = new TextItem(); billingCompNameItem.setTitle(CallCenterBK.constants.companyName()); billingCompNameItem.setWidth(250); billingCompNameItem.setName("billingCompNameItem"); phoneIndexItem = new TextItem(); phoneIndexItem.setTitle(CallCenterBK.constants.index()); phoneIndexItem.setWidth(250); phoneIndexItem.setName("phoneIndexItem"); hasCalcItem = new SelectItem(); hasCalcItem.setTitle(CallCenterBK.constants.hasCalculation()); hasCalcItem.setWidth(250); hasCalcItem.setName("hasCalcItem"); hasCalcItem.setDefaultToFirstOption(true); hasCalcItem.setValueMap(ClientMapUtil.getInstance().getHasCalculations()); operatorItem = new SelectItem(); operatorItem.setTitle(CallCenterBK.constants.operator()); operatorItem.setWidth(200); operatorItem.setName("operator_src"); operatorItem.setDefaultToFirstOption(true); ClientUtils.fillCombo( operatorItem, "OperatorsDS", "searchOperators", "operator_src", "operator_src_descr"); searchForm.setFields(billingCompNameItem, phoneIndexItem, hasCalcItem, operatorItem); HLayout buttonLayout = new HLayout(5); buttonLayout.setWidth(830); buttonLayout.setHeight(30); buttonLayout.setAlign(Alignment.RIGHT); clearButton = new IButton(); clearButton.setTitle(CallCenterBK.constants.clear()); findButton = new IButton(); findButton.setTitle(CallCenterBK.constants.find()); buttonLayout.setMembers(findButton, clearButton); mainLayout.addMember(buttonLayout); ToolStrip toolStrip = new ToolStrip(); toolStrip.setWidth100(); toolStrip.setPadding(5); mainLayout.addMember(toolStrip); addBtn = new ToolStripButton(CallCenterBK.constants.add(), "addIcon.png"); addBtn.setLayoutAlign(Alignment.LEFT); addBtn.setWidth(50); toolStrip.addButton(addBtn); editBtn = new ToolStripButton(CallCenterBK.constants.modify(), "editIcon.png"); editBtn.setLayoutAlign(Alignment.LEFT); editBtn.setWidth(50); toolStrip.addButton(editBtn); deleteBtn = new ToolStripButton(CallCenterBK.constants.disable(), "deleteIcon.png"); deleteBtn.setLayoutAlign(Alignment.LEFT); deleteBtn.setWidth(50); toolStrip.addButton(deleteBtn); toolStrip.addSeparator(); billingCompBillByDayBtn = new ToolStripButton(CallCenterBK.constants.telCombBillByDay(), "billing.png"); billingCompBillByDayBtn.setLayoutAlign(Alignment.LEFT); billingCompBillByDayBtn.setWidth(50); toolStrip.addButton(billingCompBillByDayBtn); billingCompBillByMonthBtn = new ToolStripButton(CallCenterBK.constants.telCombBillByMonth(), "billing.png"); billingCompBillByMonthBtn.setLayoutAlign(Alignment.LEFT); billingCompBillByMonthBtn.setWidth(50); toolStrip.addButton(billingCompBillByMonthBtn); billingCompsGrid = new ListGrid(); billingCompsGrid.setWidth100(); billingCompsGrid.setHeight100(); billingCompsGrid.setAlternateRecordStyles(true); billingCompsGrid.setDataSource(billingCompsDS); billingCompsGrid.setAutoFetchData(false); billingCompsGrid.setShowFilterEditor(false); billingCompsGrid.setCanEdit(false); billingCompsGrid.setCanRemoveRecords(false); billingCompsGrid.setFetchOperation("searchAllBillingComps"); billingCompsGrid.setShowRowNumbers(true); billingCompsGrid.setCanHover(true); billingCompsGrid.setShowHover(true); billingCompsGrid.setShowHoverComponents(true); billingCompsGrid.setWrapCells(true); billingCompsGrid.setFixedRecordHeights(false); billingCompsGrid.setCanDragSelectText(true); ListGridField billing_company_name = new ListGridField("billing_company_name", CallCenterBK.constants.companyName()); ListGridField our_percent = new ListGridField("our_percent", CallCenterBK.constants.ourPercent(), 150); ListGridField has_calculation_descr = new ListGridField("has_calculation_descr", CallCenterBK.constants.hasCalculation(), 150); ListGridField call_price = new ListGridField("call_price", CallCenterBK.constants.callPrice(), 150); our_percent.setAlign(Alignment.CENTER); has_calculation_descr.setAlign(Alignment.CENTER); call_price.setAlign(Alignment.CENTER); billingCompsGrid.setFields( billing_company_name, our_percent, has_calculation_descr, call_price); mainLayout.addMember(billingCompsGrid); findButton.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { search(); } }); billingCompNameItem.addKeyPressHandler( new KeyPressHandler() { @Override public void onKeyPress(KeyPressEvent event) { if (event.getKeyName().equals("Enter")) { search(); } } }); phoneIndexItem.addKeyPressHandler( new KeyPressHandler() { @Override public void onKeyPress(KeyPressEvent event) { if (event.getKeyName().equals("Enter")) { search(); } } }); clearButton.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { billingCompNameItem.clearValue(); } }); addBtn.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { DlgAddEditBillingComps dlgAddEditBillingComp = new DlgAddEditBillingComps(billingCompsGrid, null); dlgAddEditBillingComp.show(); } }); editBtn.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { ListGridRecord listGridRecord = billingCompsGrid.getSelectedRecord(); if (listGridRecord == null) { SC.say(CallCenterBK.constants.pleaseSelrecord()); return; } DlgAddEditBillingComps dlgAddEditBillingComp = new DlgAddEditBillingComps(billingCompsGrid, listGridRecord); dlgAddEditBillingComp.show(); } }); deleteBtn.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { final ListGridRecord listGridRecord = billingCompsGrid.getSelectedRecord(); if (listGridRecord == null) { SC.say(CallCenterBK.constants.pleaseSelrecord()); return; } SC.ask( CallCenterBK.constants.askForDisable(), new BooleanCallback() { @Override public void execute(Boolean value) { if (value) { delete(listGridRecord); } } }); } }); billingCompsGrid.addRecordDoubleClickHandler( new RecordDoubleClickHandler() { @Override public void onRecordDoubleClick(RecordDoubleClickEvent event) { ListGridRecord listGridRecord = billingCompsGrid.getSelectedRecord(); DlgAddEditBillingComps dlgAddEditBillingComp = new DlgAddEditBillingComps(billingCompsGrid, listGridRecord); dlgAddEditBillingComp.show(); } }); billingCompBillByDayBtn.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { final ListGridRecord listGridRecord = billingCompsGrid.getSelectedRecord(); if (listGridRecord == null) { SC.say(CallCenterBK.constants.pleaseSelrecord()); return; } Integer billing_company_id = listGridRecord.getAttributeAsInt("billing_company_id"); getBillingCompBillByDay(billing_company_id); } }); billingCompBillByMonthBtn.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { final ListGridRecord listGridRecord = billingCompsGrid.getSelectedRecord(); if (listGridRecord == null) { SC.say(CallCenterBK.constants.pleaseSelrecord()); return; } Integer billing_company_id = listGridRecord.getAttributeAsInt("billing_company_id"); getBillingCompBillByMonth(billing_company_id); } }); setPane(mainLayout); } catch (Exception e) { SC.say(e.toString()); } }