Author: bleny Date: 2011-02-16 14:28:07 +0000 (Wed, 16 Feb 2011) New Revision: 1018 Log: add JS to make contactForm show/hide form parts Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java trunk/wao-ui/src/main/webapp/ContactForm.tml trunk/wao-ui/src/main/webapp/js/contactForm.js Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-02-16 11:04:15 UTC (rev 1017) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ContactForm.java 2011-02-16 14:28:07 UTC (rev 1018) @@ -152,7 +152,6 @@ "du navire à votre portefeuille Allegro afin de pouvoir " + "saisir les données ?"; - // TODO-fdesbois-2010-07-27 : manage array of states in JavaScript javascriptSupport.addScript("new ContactSendEmail('%s', '%s');", confirmMessage, // Check state OBSERVATION_DONE @@ -190,9 +189,6 @@ if (oldContact == contact) { throw new IllegalStateException("il faut deux instances différentes"); } - if (contact.getContactStateMotif() != null) { - contactStateMotifId = contact.getContactStateMotif().getTopiaId(); - } } if (logger.isDebugEnabled()) { logger.debug("contact : " + contact.getTopiaCreateDate() + @@ -342,31 +338,6 @@ allowedStates.toArray(new ContactState[allowedStates.size()])); } - @Property - @Persist - private String contactStateMotifId; - - private GenericSelectModel<ContactStateMotif> contactStateMotifSelectModel; - - public GenericSelectModel<ContactStateMotif> getContactStateMotifSelectModel() { - if (contactStateMotifSelectModel == null) { - List<ContactStateMotif> motifs = serviceReferential.getAllContactStateMotifs(contact.getContactState()); - if (motifs.size() != 0) { - contactStateMotifSelectModel = new GenericSelectModel<ContactStateMotif>( - motifs, ContactStateMotif.class, "translation", ContactStateMotif.TOPIA_ID, propertyAccess); - } - } - return contactStateMotifSelectModel; - } - - public Form onValueChangedFromContactState(ContactState contactState) { - contact.setContactState(contactState); - // refresh - contactStateMotifSelectModel = null; - contactStateMotifId = null; - return contactForm; - } - /************************ ADMIN FIELDS ************************************/ @@ -413,12 +384,6 @@ contact.setTerrestrialLocation(terrestrialLocation); } - if (StringUtils.isEmpty(contactStateMotifId)) { - contact.setContactStateMotif(null); - } else { - contact.setContactStateMotif(getContactStateMotifSelectModel().findObject(contactStateMotifId)); - } - ValidationResult validationResult = serviceContact.validateContact(contact); if ( ! validationResult.isSuccess()) { contactForm.recordError(validationResult.getMessage()); Modified: trunk/wao-ui/src/main/webapp/ContactForm.tml =================================================================== --- trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-02-16 11:04:15 UTC (rev 1017) +++ trunk/wao-ui/src/main/webapp/ContactForm.tml 2011-02-16 14:28:07 UTC (rev 1018) @@ -207,21 +207,11 @@ <div> <label for="contactState">${message:wao.ui.field.Contact.contactState}</label> <input t:type="select" - t:zone="globalZone" t:id="contactState" t:value="contact.contactState" t:validate="required" t:model="contactStateSelectModel" /> </div> - <t:if test="contactStateMotifSelectModel"> - <div> - <label for="contactStateMotif">${message:wao.ui.field.Contact.contactStateMotif}</label> - <input t:type="select" - t:id="contactStateMotif" - t:value="contactStateMotifId" - t:model="contactStateMotifSelectModel" /> - </div> - </t:if> <div> <label for="beginDate">${message:wao.ui.field.Contact.beginDate}</label> <input t:id="beginDate" value="contact.observationBeginDate" datePattern="${dateTimeFormatPattern}" timePicker="true" timePickerAdjacent="true" use24hrs="true" /> @@ -243,9 +233,9 @@ ${message:wao.ui.field.Contact.mammalsCapture} <img src="${asset:context:img/fishing-net-22px.png}" alt="${message:wao.ui.field.Contact.mammalsCapture}" /> </label> - <input t:type="checkbox" t:id="mammalsCapture" value="contact.mammalsCapture" /> + <input t:type="checkbox" t:id="mammalsCapture" value="contact.mammalsCapture" onclick="updateMammalsInfoBox();" /> </div> - <div> + <div id="mammalsInfoBox"> <label for="mammalsInfo"> ${message:wao.ui.field.Contact.mammalsInfo} </label> Modified: trunk/wao-ui/src/main/webapp/js/contactForm.js =================================================================== --- trunk/wao-ui/src/main/webapp/js/contactForm.js 2011-02-16 11:04:15 UTC (rev 1017) +++ trunk/wao-ui/src/main/webapp/js/contactForm.js 2011-02-16 14:28:07 UTC (rev 1018) @@ -13,4 +13,18 @@ contactForm.hiddenSendEmail.setValue(true); } } -}); \ No newline at end of file +}); + +/** mammals Info box must be showed only if mammalsCapture is checked */ +function updateMammalsInfoBox() { + if ($('mammalsCapture').checked) { + $('mammalsInfoBox').show(); + } else { + $('mammalsInfoBox').hide(); + } +} + +Event.observe(window, 'load', function(event) { + updateMammalsInfoBox(); +}); +