/* Ara - capture species and specimen data * * Copyright (C) 2009 INBio (Instituto Nacional de Biodiversidad) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ package org.inbio.ara.admin; import com.sun.rave.web.ui.appbase.AbstractPageBean; import com.sun.webui.jsf.component.TextArea; import com.sun.webui.jsf.component.TextField; import java.util.Locale; import javax.faces.FacesException; import javax.faces.context.FacesContext; import org.inbio.ara.SessionManager; import org.inbio.ara.util.ValidatorBean; import org.inbio.ara.AraSessionBean; import org.inbio.ara.dto.agent.InstitutionDTO; import org.inbio.ara.inventory.IdentificationSessionBean; import org.inbio.ara.security.SystemUserSessionBean; import org.inbio.ara.inventory.SpecimenSessionBean; import org.inbio.ara.inventory.SpecimenGenerationSessionBean; import org.inbio.ara.statistics.StatisticsSessionBean; import org.inbio.ara.inventory.GatheringSessionBean; import org.inbio.ara.inventory.GatheringDetailSessionBean; import org.inbio.ara.util.MessageBean; /** * <p>Page bean that corresponds to a similarly named JSP page. This * class contains component definitions (and initialization code) for * all components that you have defined on this page, as well as * lifecycle methods and event handlers where you may add behavior * to respond to incoming events.</p> * * @version NewInstitution.java * @version Created on 28/09/2009, 10:08:43 AM * @author esmata */ public class NewInstitution extends AbstractPageBean { // <editor-fold defaultstate="collapsed" desc="Managed Component Definition"> /** * <p>Automatically managed component initialization. <strong>WARNING:</strong> * This method is automatically generated, so any user-specified code inserted * here is subject to being replaced.</p> */ private void _init() throws Exception { } // </editor-fold> //Contexto utilizado para obtener el current locale private FacesContext context; private Locale myLocale; //Binding de los componentes graficos private TextField txName = new TextField(); private TextField txPhone = new TextField(); private TextField txFax = new TextField(); private TextField txCountry = new TextField(); private TextField txProvince = new TextField(); private TextField txCity = new TextField(); private TextField txAdreess = new TextField(); private TextField txInstitutionCode = new TextField(); private TextField txAcronym = new TextField(); private TextArea taURL = new TextArea(); /** * <p>Construct a new Page bean instance.</p> */ public NewInstitution() { } /** * <p>Callback method that is called whenever a page is navigated to, * either directly via a URL, or indirectly via page navigation. * Customize this method to acquire resources that will be needed * for event handlers and lifecycle methods, whether or not this * page is performing post back processing.</p> * * <p>Note that, if the current request is a postback, the property * values of the components do <strong>not</strong> represent any * values submitted with this request. Instead, they represent the * property values that were saved for this view when it was rendered.</p> */ @Override public void init() { // Perform initializations inherited from our superclass super.init(); // Perform application initialization that must complete // *before* managed components are initialized // TODO - add your own initialiation code here // <editor-fold defaultstate="collapsed" desc="Managed Component Initialization"> // Initialize automatically managed components // *Note* - this logic should NOT be modified try { _init(); } catch (Exception e) { log("NewInstitution Initialization Failure", e); throw e instanceof FacesException ? (FacesException) e: new FacesException(e); } // </editor-fold> // Perform application initialization that must complete // *after* managed components are initialized // TODO - add your own initialization code here } /** * <p>Callback method that is called after the component tree has been * restored, but before any event processing takes place. This method * will <strong>only</strong> be called on a postback request that * is processing a form submit. Customize this method to allocate * resources that will be required in your event handlers.</p> */ @Override public void preprocess() { } /** * <p>Callback method that is called just before rendering takes place. * This method will <strong>only</strong> be called for the page that * will actually be rendered (and not, for example, on a page that * handled a postback and then navigated to a different page). Customize * this method to allocate resources that will be required for rendering * this page.</p> */ @Override public void prerender() { } /** * <p>Callback method that is called after rendering is completed for * this request, if <code>init()</code> was called (regardless of whether * or not this was the page that was actually rendered). Customize this * method to release resources acquired in the <code>init()</code>, * <code>preprocess()</code>, or <code>prerender()</code> methods (or * acquired during execution of an event handler).</p> */ @Override public void destroy() { } /** * Metodo ejecutado por el boton de crear nueva institucion */ public String btnSaveInstitution_action(){ //Tomar datos de la pantalla String name=null,phone=null,fax=null,country=null,province=null,city=null, adreess=null,institutionCode=null,acronym=null,url=null; name = (String)this.getTxName().getText(); phone = (String)this.getTxPhone().getText(); fax = (String)this.getTxFax().getText(); country = (String)this.getTxCountry().getText(); province = (String)this.getTxProvince().getText(); city = (String)this.getTxCity().getText(); adreess = (String)this.getTxAdreess().getText(); institutionCode = (String)this.getTxInstitutionCode().getText(); acronym = (String)this.getTxAcronym().getText(); url = (String)this.getTaURL().getText(); //Construir institutionDTO InstitutionDTO myDTO = new InstitutionDTO(); myDTO.setInstitutionName(name); myDTO.setTelephone(phone); myDTO.setFax(fax); myDTO.setCountry(country); myDTO.setStateProvince(province); myDTO.setCity(city); myDTO.setStreetAddress(adreess); myDTO.setInstitutionCode(institutionCode); myDTO.setAcronym(acronym); myDTO.setUrl(url); //Persistir try{ this.getInstitutionSessionBean().saveInstitution(myDTO); } catch(Exception e){ MessageBean.setErrorMessageFromBundle("error", this.getMyLocale()); return null; } //Limpiar la pantalla txName.setText(null); txPhone.setText(null); txFax.setText(null); txCountry.setText(null); txProvince.setText(null); txCity.setText(null); txAdreess.setText(null); txInstitutionCode.setText(null); txAcronym.setText(null); taURL.setText(null); //Refrescar el pagination this.getInstitutionSessionBean().getPagination().refreshList(); //Notificar al usuario MessageBean.setSuccessMessageFromBundle("create_institution_succces", this.getMyLocale()); return null; } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected InstitutionSessionBean getInstitutionSessionBean() { return (InstitutionSessionBean) getBean("admin$InstitutionSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SessionManager getSessionManager() { return (SessionManager) getBean("SessionManager"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected ValidatorBean getutil$ValidatorBean() { return (ValidatorBean) getBean("util$ValidatorBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected AraSessionBean getAraSessionBean() { return (AraSessionBean) getBean("AraSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected IdentificationSessionBean getinventory$IdentificationSessionBean() { return (IdentificationSessionBean) getBean("inventory$IdentificationSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SystemUserSessionBean getsecurity$SystemUserSessionBean() { return (SystemUserSessionBean) getBean("security$SystemUserSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SelectionListSessionBean getadmin$SelectionListSessionBean() { return (SelectionListSessionBean) getBean("admin$SelectionListSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SpecimenSessionBean getinventory$SpecimenSessionBean() { return (SpecimenSessionBean) getBean("inventory$SpecimenSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected SpecimenGenerationSessionBean getinventory$SpecimenGenerationSessionBean() { return (SpecimenGenerationSessionBean) getBean("inventory$SpecimenGenerationSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected StatisticsSessionBean getstatistics$StatisticsSessionBean() { return (StatisticsSessionBean) getBean("statistics$StatisticsSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected GatheringSessionBean getinventory$GatheringSessionBean() { return (GatheringSessionBean) getBean("inventory$GatheringSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected GatheringDetailSessionBean getinventory$GatheringDetailSessionBean() { return (GatheringDetailSessionBean) getBean("inventory$GatheringDetailSessionBean"); } /** * <p>Return a reference to the scoped data bean.</p> * * @return reference to the scoped data bean */ protected CollectionSessionBean getadmin$CollectionSessionBean() { return (CollectionSessionBean) getBean("admin$CollectionSessionBean"); } /** * @return the txName */ public TextField getTxName() { return txName; } /** * @param txName the txName to set */ public void setTxName(TextField txName) { this.txName = txName; } /** * @return the txPhone */ public TextField getTxPhone() { return txPhone; } /** * @param txPhone the txPhone to set */ public void setTxPhone(TextField txPhone) { this.txPhone = txPhone; } /** * @return the txFax */ public TextField getTxFax() { return txFax; } /** * @param txFax the txFax to set */ public void setTxFax(TextField txFax) { this.txFax = txFax; } /** * @return the txCountry */ public TextField getTxCountry() { return txCountry; } /** * @param txCountry the txCountry to set */ public void setTxCountry(TextField txCountry) { this.txCountry = txCountry; } /** * @return the txProvince */ public TextField getTxProvince() { return txProvince; } /** * @param txProvince the txProvince to set */ public void setTxProvince(TextField txProvince) { this.txProvince = txProvince; } /** * @return the txCity */ public TextField getTxCity() { return txCity; } /** * @param txCity the txCity to set */ public void setTxCity(TextField txCity) { this.txCity = txCity; } /** * @return the txAdreess */ public TextField getTxAdreess() { return txAdreess; } /** * @param txAdreess the txAdreess to set */ public void setTxAdreess(TextField txAdreess) { this.txAdreess = txAdreess; } /** * @return the txInstitutionCode */ public TextField getTxInstitutionCode() { return txInstitutionCode; } /** * @param txInstitutionCode the txInstitutionCode to set */ public void setTxInstitutionCode(TextField txInstitutionCode) { this.txInstitutionCode = txInstitutionCode; } /** * @return the txAcronym */ public TextField getTxAcronym() { return txAcronym; } /** * @param txAcronym the txAcronym to set */ public void setTxAcronym(TextField txAcronym) { this.txAcronym = txAcronym; } /** * @return the taURL */ public TextArea getTaURL() { return taURL; } /** * @param taURL the taURL to set */ public void setTaURL(TextArea taURL) { this.taURL = taURL; } /** * @return the myLocale */ public Locale getMyLocale() { return this.getAraSessionBean().getCurrentLocale(); } }