Administrator
|
Hi Andy,
Please could you have a look at the related Jira issue https://issues.apache.org/jira/browse/OFBIZ-1224 ? Thanks Jacques > Author: jaz > Date: Thu Aug 30 13:42:08 2007 > New Revision: 571303 > > URL: http://svn.apache.org/viewvc?rev=571303&view=rev > Log: > first pass of communication event UI cleanup > > Added: > ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh (with props) > Modified: > ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml > ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml > > Added: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh > URL: > ============================================================================== > --- ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh (added) > +++ ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh Thu Aug 30 13:42:08 2007 > @@ -0,0 +1,47 @@ > +/* > + * Licensed to the Apache Software Foundation (ASF) under one > + * or more contributor license agreements. See the NOTICE file > + * distributed with this work for additional information > + * regarding copyright ownership. The ASF licenses this file > + * to you under the Apache License, Version 2.0 (the > + * "License"); you may not use this file except in compliance > + * with the License. You may obtain a copy of the License at > + * > + * http://www.apache.org/licenses/LICENSE-2.0 > + * > + * Unless required by applicable law or agreed to in writing, > + * software distributed under the License is distributed on an > + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY > + * KIND, either express or implied. See the License for the > + * specific language governing permissions and limitations > + * under the License. > + */ > + > +import org.ofbiz.base.util.*; > + > +delegator = request.getAttribute("delegator"); > +userLogin = request.getAttribute("userLogin"); > +parentCommEventId = parameters.get("parentCommEventId"); > + > +if (parentCommEventId != null) { > + parentEvent = delegator.findByPrimaryKey("CommunicationEvent", UtilMisc.toMap("communicationEventId", parentCommEventId)); > + if (parentEvent != null) { > + orgEventId = parentEvent.get("origCommEventId"); > + if (orgEventId == null) orgEventId = parentCommEventId; > + > + parameters.put("communicationEventTypeId", parentEvent.get("communicationEventTypeId")); > + parameters.put("parentCommEventId", parentCommEventId); > + parameters.put("origCommEventId", orgEventId); > + > + parameters.put("contactMechIdTo", parentEvent.get("contactMechIdFrom")); > + parameters.put("contactMechIdFrom", parentEvent.get("contactMechIdTo")); > + > + parameters.put("partyIdFrom", userLogin.get("partyId")); > + parameters.put("partyIdTo", parentEvent.get("partyIdFrom")); > + parameters.put("toString", parentEvent.get("fromString")); > + parameters.put("statusId", "COM_IN_PROGRESS"); > + > + parameters.put("subject", "RE: " + parentEvent.get("subject")); > + parameters.put("content", "\n\n\n--------------- In reply to:\n\n" + parentEvent.get("content")); > + } > +} > \ No newline at end of file > > Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh > ------------------------------------------------------------------------------ > svn:eol-style = native > > Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh > ------------------------------------------------------------------------------ > svn:keywords = "Date Rev Author URL Id" > > Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh > ------------------------------------------------------------------------------ > svn:mime-type = text/plain > > Modified: ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml > URL: > ============================================================================== > --- ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml (original) > +++ ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml Thu Aug 30 13:42:08 2007 > @@ -46,19 +46,33 @@ > <entity-one entity-name="StatusItem" value-name="currentStatus" auto-field-map="false"> > <field-map field-name="statusId" env-name="communicationEvent.statusId"/> > </entity-one> > + <script location="component://party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh"/> > </actions> > + > <alt-target target="createCommunicationEvent" use-when="communicationEvent==null"/> > <field name="partyId" map-name="parameters"><hidden/></field> > + > <field name="communicationEventId" use-when="communicationEvent!=null"><display/></field> > - <field name="communicationEventTypeId"> > + <field name="communicationEventTypeId" > <drop-down> > <entity-options entity-name="CommunicationEventType" description="${description}"> > <entity-order-by field-name="description"/> > </entity-options> > </drop-down> > </field> > - <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}"><lookup target-form-name="LookupPartyName" default-value="${userLogin.partyId}"/></field> > - <field name="partyIdTo" title="${uiLabelMap.PartyPartyTo}"><lookup target-form-name="LookupPartyName" default-value="${userLogin.partyId}"/></field> > + <field name="communicationEventTypeId" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> > + <display-entity entity-name="CommunicationEventType" description="${description}" key-field-name="communicationEventTypeId"/> > + </field> > + > + <!-- parent communications --> > + <field name="parentCommEventId" use-when="communicationEvent!=null&&communicationEvent.getString("parentCommEventId")!=null"> > + <hyperlink description="${communicationEvent.parentCommEventId}" target="EditCommunicationEvent?communicationEventId=${communicationEvent.parentCommEventId}&partyId=${partyId}" target-type="intra-app"/> > + </field> > + <field name="parentCommEventId" map-name="parameters" use-when="communicationEvent==null" > > + <hidden/> > + </field> > + > + <!-- status --> > <field name="statusId" use-when="communicationEvent==null" title="${uiLabelMap.CommonStatus}" > > <drop-down> > <entity-options description="${description}" entity-name="StatusItem" key-field-name="statusId"> > @@ -75,23 +89,54 @@ > </entity-options> > </drop-down> > </field> > - <field name="contactMechTypeId"> <!-- does not have use-when restrictions so we can enter what the contactMechTypeId > + > + <!-- auto email fields --> > + <field name="fromString" use-when="communicationEvent!=null&&communicationEvent.getString("fromString")!=null"> > + <display/> > + </field> > + <field name="toString" use-when="communicationEvent!=null&&communicationEvent.getString("toString")!=null"> > + <display/> > + </field> > + <field name="toString" map-name="parameters" use-when="communicationEvent==null&&toString!=null"> > + <text size="60"/> > + </field> > + > + <!-- party ID fields --> > + <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}" use-when="communicationEvent==null"> > + <lookup target-form-name="LookupPartyName" default-value="${userLogin.partyId}"/> > + </field> > + <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}" use-when="communicationEvent!=null"> > + <lookup target-form-name="LookupPartyName"/> > + </field> > + <field name="partyIdTo" title="${uiLabelMap.PartyPartyTo}"> > + <lookup target-form-name="LookupPartyName"/> > + </field> > + > + <!-- contact mech type --> > + <field name="contactMechTypeId" > <drop-down> > <entity-options description="${description}" entity-name="ContactMechType" key-field-name="contactMechTypeId"> > <entity-order-by field-name="description"/> > </entity-options> > </drop-down> > </field> > + <field name="contactMechTypeId" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> > + <display-entity entity-name="ContactMechType" description="${description}" key-field-name="contactMechTypeId"/> > + </field> > + > <!-- this is an example of how to display different types of contact mech to the user --> > <field name="contactMechIdFrom" title="${uiLabelMap.PartyFromEmailAddress}" > - use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" ).equals("EMAIL_COMMUNICATION"))"> > + use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" ).equals("EMAIL_COMMUNICATION")||parameters.get("communicationEventTypeId").equals("AUTO_EMAIL_COMM")) "> > <drop-down allow-empty="false" current="selected"> > - <list-options key-name="contactMechId" list-name="userEmailAddresses" description="${infoString}"/> > + <entity-options entity-name="PartyAndContactMech" description="${infoString}" key-field-name="contactMechId"> > + <entity-constraint name="partyId" operator="equals" value="${partyIdFrom}"/> > + </entity-options> > </drop-down> > </field> > <field name="contactMechIdFrom" title="${uiLabelMap.PartyFromContactMech}" > - use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal s("EMAIL_COMMUNICATION"))"> > + use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal s("EMAIL_COMMUNICATION")||parameters.get("communicationEventTypeId").equals("AUTO_EMAIL_COMM"))"> > <lookup target-form-name="LookupPreferredContactMech" target-parameter="partyIdFrom"/></field> > + > <!-- TODO: somehow show the address or email here, rather than just a contactMechId --> > <field name="contactMechIdTo" title="${uiLabelMap.PartyToEmailAddress}" > use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" ).equals("EMAIL_COMMUNICATION"))"> > @@ -102,28 +147,44 @@ > <field name="contactMechIdTo" title="${uiLabelMap.PartyToContactMech}" > use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal s("EMAIL_COMMUNICATION"))"> > <lookup target-form-name="LookupPreferredContactMech" target-parameter="partyIdTo"/></field> > - <field name="roleTypeIdFrom" use-when="commEventRoleTypeIdFrom!=null"> > + > + <!-- role type info --> > + <field name="roleTypeIdFrom" use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> > <drop-down no-current-selected-key="_NA_"> > <entity-options description="${description}" entity-name="RoleType" key-field-name="roleTypeId"> > <entity-order-by field-name="description"/> > </entity-options> > </drop-down> > </field> > - <field name="roleTypeIdTo" use-when="commEventRoleTypeIdTo!=null"> > + <field name="roleTypeIdFrom" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> > + <display-entity entity-name="RoleType" description="${description}" key-field-name="roleTypeId"/> > + </field> > + > + <field name="roleTypeIdTo" use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> > <drop-down no-current-selected-key="_NA_"> > <entity-options description="${description}" entity-name="RoleType" key-field-name="roleTypeId"> > <entity-order-by field-name="description"/> > </entity-options> > </drop-down> > </field> > - <field name="contactListId"> > + <field name="roleTypeIdTo" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> > + <display-entity entity-name="RoleType" description="${description}" key-field-name="roleTypeId"/> > + </field> > + > + <!-- contact list --> > + <field name="contactListId" use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> > <lookup size="20" target-form-name="LookupContactList"> > <sub-hyperlink target="/marketing/control/EditContactList?contactListId=${communicationEvent.contactListId}" target-type="inter-app" link-style="smallSubmit"/> > </lookup> > </field> > + <field name="contactListId" use-when="communicationEvent!=null&&communicationEvent.getString("contactListId")!=null&&!communicationEve nt.getString("statusId").equals("COM_ENTERED")"><display/></field> > + > <field name="datetimeStarted" title="${uiLabelMap.CommonStartDate}"><date-time/></field> > <field name="datetimeEnded" title="${uiLabelMap.CommonFinishDate}"><date-time/></field> > - <field name="subject"><text size="60"/></field> > + > + <field name="subject" use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"><text size="60"/></field> > + <field name="subject" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><di splay/></field> > + > <field name="reasonEnumId"> > <drop-down no-current-selected-key="" allow-empty="true"> > <entity-options entity-name="Enumeration" description="${description}" key-field-name="enumId"> > @@ -132,15 +193,20 @@ > </entity-options> > </drop-down> > </field> > - <field name="contentMimeTypeId"> > - <drop-down no-current-selected-key="_NA_" allow-empty="false"> > + <field name="contentMimeTypeId" > + <drop-down no-current-selected-key="text/plain" allow-empty="false"> > <entity-options description="${mimeTypeId}" entity-name="MimeType" key-field-name="mimeTypeId"> > <entity-order-by field-name="mimeTypeId"/> > </entity-options> > </drop-down> > </field> > - <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10"/></field> > + <field name="contentMimeTypeId" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><di splay/></field> > + > + <field name="content" title="${uiLabelMap.CommonContent}" use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"><textarea cols="60" rows="10"/></field> > + <field name="content" title="${uiLabelMap.CommonContent}" use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><te xtarea cols="60" rows="10" read-only="true"/></field> > + > <field name="note" title="${uiLabelMap.CommonNote}"><textarea cols="60" rows="3"/></field> > + <field name="messageId" use-when="communicationEvent!=null&&communicationEvent.getString("messageId")!=null"><display/></field> > <field name="submitButton" title="${uiLabelMap.CommonSave}"><submit button-type="button"/></field> > </form> > > @@ -171,7 +237,7 @@ > <field name="subject"><display/></field> > <field map-name="subjectMap" name="eventNote" title="${uiLabelMap.CommonNote}"><display/></field> > <field name="contentMimeTypeId"><display/></field> > - <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10"/></field> > + <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10" read-only="true"/></field> > <field name="content" title="${uiLabelMap.CommonContent}" meTypeId").indexOf("text/html")) != -1"> > <display also-hidden="false"/> <!-- if not set, it is also hidden, which could cause it to re-dislay --> > </field> > @@ -180,6 +246,8 @@ > <form name="findCommEvents" type="single" target="ListLookupCommEvents" > paginate="true"> > <field name="communicationEventId" use-when="communicationEvent != null"><text-find/></field> > + <field name="parentCommEventId"><text-find/></field> > + <field name="origCommEventId"><text-find/></field> > <field name="partyIdFrom" title="${uiLabelMap.CommonPartyID} ${uiLabelMap.CommonFrom}"><lookup target-form-name="LookupPartyName"/></field> > <field name="partyIdTo" title="${uiLabelMap.CommonPartyID} ${uiLabelMap.CommonTo}"><lookup target-form-name="LookupPartyName"/></field> > <field name="communicationEventTypeId"> > @@ -268,6 +336,17 @@ > <condition-expr field-name="partyIdTo" operator="equals" value="${partyId}"/> > </condition-list> > <condition-expr env-name="" field-name="statusId" operator="equals" value="COM_PENDING"/> > + </condition-list> > + </entity-condition> > + </actions> > + </form> > + > + <form name="ListChildCommEvents" type="list" extends="ListCommEvents"> > + <actions> > + <entity-condition entity-name="CommunicationEvent"> > + <condition-list combine="or"> > + <condition-expr field-name="parentCommEventId" operator="equals" value="${communicationEventId}"/> > + <condition-expr field-name="origCommEventId" operator="equals" value="${communicationEventId}"/> > </condition-list> > </entity-condition> > </actions> > > Modified: ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml > URL: > ============================================================================== > --- ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml (original) > +++ ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml Thu Aug 30 13:42:08 2007 > @@ -250,13 +250,14 @@ > <set field="titleProperty" value="PageTitleEditCommunication"/> > <set field="tabButtonItem" value="PartyCommEvents"/> > <set field="subTabButtonItem" value="CommunicationEvent"/> > + <set field="entityName" value="CommunicationEvent"/> > > <set field="communicationEventId" from-field="parameters.communicationEventId"/> > <set field="parentCommEventId" from-field="parameters.parentCommEventId"/> > > <set field="partyId" from-field="parameters.partyId"/> > <set field="partyIdFrom" from-field="parameters.partyIdFrom" default-value="${userLogin.partyId}"/> > - <set field="partyIdTo" from-field="parameters.partyIdTo" default-value="${userLogin.partyId}"/> > + <set field="partyIdTo" from-field="parameters.partyIdTo"/> > <set field="contactMechIdFrom" from-field="parameters.contactMechIdFrom"/> > <set field="contactMechIdTo" from-field="parameters.contactMechIdTo"/> > <set field="contactMechTypeId" from-field="parameters.contactMechTypeId"/> > @@ -282,25 +283,34 @@ > <label style="head1" text="${uiLabelMap.PartyNewCommunication}"/> > </fail-widgets> > </section> > - <!-- > <section> > <widgets> > <container> > <link style="smallSubmit" > - <link style="smallSubmit" target="EditCommunicationEvent?partyId=${partyId}&partyIdTo=${partyId}" text="${uiLabelMap.PartyReply}"/> > + <link style="smallSubmit" target="EditCommunicationEvent?partyId=${partyId}&parentCommEventId=${communicationEventId}" text="${uiLabelMap.PartyReply}"/> > + <!--<link style="smallSubmit" target="EditCommunicationEvent?communicationEventTypeId=${communicationEvent.communicationEventTypeId}&contactMechIdTo=${communi cationEvent.contactMechIdFrom}&contactMechIdFrom=${communicationEvent.contactMechIdTo}&partyId=${partyId}&partyIdTo=${pa rtyId}&partyIdFrom=${userLogin.partyId}&parentCommEventId=${communicationEventId}&toString=${communicationEvent.fromStri ng}" text="${uiLabelMap.PartyReply}"/>--> > </container> > </widgets> > </section> > - --> > <section> > <condition> > <if-compare field-name="okayToUpdate" operator="equals" value="true" type="Boolean"/> > </condition> > <widgets> > - <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" > + <container style="widget-container"> > + <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" name="EditCommEvent"/> > + </container> > + <container style="widget-container"> > + <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" name="ListChildCommEvents"/> > + </container> > </widgets> > <fail-widgets> > - <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" name="ViewCommEvent"/> > + <container style="widget-container"> > + <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" name="ViewCommEvent"/> > + </container> > + <container style="widget-container"> > + <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" name="ListChildCommEvents"/> > + </container> > </fail-widgets> > </section> > </widgets> > |
Jacques, Andrew,
I've managed to resolve the issue by adding ${bsh: to the use-when attributes... just as a temp fix. Jacopo Jacques Le Roux wrote: > Hi Andy, > > Please could you have a look at the related Jira issue https://issues.apache.org/jira/browse/OFBIZ-1224 ? > > Thanks > > Jacques > >> Author: jaz >> Date: Thu Aug 30 13:42:08 2007 >> New Revision: 571303 >> >> URL: http://svn.apache.org/viewvc?rev=571303&view=rev >> Log: >> first pass of communication event UI cleanup >> >> Added: >> ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh (with props) >> Modified: >> ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml >> ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml >> >> Added: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh >> URL: > http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh?rev=571303&view=auto >> ============================================================================== >> --- ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh (added) >> +++ ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh Thu Aug 30 13:42:08 2007 >> @@ -0,0 +1,47 @@ >> +/* >> + * Licensed to the Apache Software Foundation (ASF) under one >> + * or more contributor license agreements. See the NOTICE file >> + * distributed with this work for additional information >> + * regarding copyright ownership. The ASF licenses this file >> + * to you under the Apache License, Version 2.0 (the >> + * "License"); you may not use this file except in compliance >> + * with the License. You may obtain a copy of the License at >> + * >> + * http://www.apache.org/licenses/LICENSE-2.0 >> + * >> + * Unless required by applicable law or agreed to in writing, >> + * software distributed under the License is distributed on an >> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + * KIND, either express or implied. See the License for the >> + * specific language governing permissions and limitations >> + * under the License. >> + */ >> + >> +import org.ofbiz.base.util.*; >> + >> +delegator = request.getAttribute("delegator"); >> +userLogin = request.getAttribute("userLogin"); >> +parentCommEventId = parameters.get("parentCommEventId"); >> + >> +if (parentCommEventId != null) { >> + parentEvent = delegator.findByPrimaryKey("CommunicationEvent", UtilMisc.toMap("communicationEventId", parentCommEventId)); >> + if (parentEvent != null) { >> + orgEventId = parentEvent.get("origCommEventId"); >> + if (orgEventId == null) orgEventId = parentCommEventId; >> + >> + parameters.put("communicationEventTypeId", parentEvent.get("communicationEventTypeId")); >> + parameters.put("parentCommEventId", parentCommEventId); >> + parameters.put("origCommEventId", orgEventId); >> + >> + parameters.put("contactMechIdTo", parentEvent.get("contactMechIdFrom")); >> + parameters.put("contactMechIdFrom", parentEvent.get("contactMechIdTo")); >> + >> + parameters.put("partyIdFrom", userLogin.get("partyId")); >> + parameters.put("partyIdTo", parentEvent.get("partyIdFrom")); >> + parameters.put("toString", parentEvent.get("fromString")); >> + parameters.put("statusId", "COM_IN_PROGRESS"); >> + >> + parameters.put("subject", "RE: " + parentEvent.get("subject")); >> + parameters.put("content", "\n\n\n--------------- In reply to:\n\n" + parentEvent.get("content")); >> + } >> +} >> \ No newline at end of file >> >> Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh >> ------------------------------------------------------------------------------ >> svn:keywords = "Date Rev Author URL Id" >> >> Propchange: ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh >> ------------------------------------------------------------------------------ >> svn:mime-type = text/plain >> >> Modified: ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml >> URL: > http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml?rev=571303&r1=571302&r2=571303&view=diff >> ============================================================================== >> --- ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml (original) >> +++ ofbiz/trunk/applications/party/webapp/partymgr/communication/CommForms.xml Thu Aug 30 13:42:08 2007 >> @@ -46,19 +46,33 @@ >> <entity-one entity-name="StatusItem" value-name="currentStatus" auto-field-map="false"> >> <field-map field-name="statusId" env-name="communicationEvent.statusId"/> >> </entity-one> >> + <script location="component://party/webapp/partymgr/WEB-INF/actions/communication/prepCommEventReply.bsh"/> >> </actions> >> + >> <alt-target target="createCommunicationEvent" use-when="communicationEvent==null"/> >> <field name="partyId" map-name="parameters"><hidden/></field> >> + >> <field name="communicationEventId" use-when="communicationEvent!=null"><display/></field> >> - <field name="communicationEventTypeId"> >> + <field name="communicationEventTypeId" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> <drop-down> >> <entity-options entity-name="CommunicationEventType" description="${description}"> >> <entity-order-by field-name="description"/> >> </entity-options> >> </drop-down> >> </field> >> - <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}"><lookup target-form-name="LookupPartyName" > default-value="${userLogin.partyId}"/></field> >> - <field name="partyIdTo" title="${uiLabelMap.PartyPartyTo}"><lookup target-form-name="LookupPartyName" > default-value="${userLogin.partyId}"/></field> >> + <field name="communicationEventTypeId" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> + <display-entity entity-name="CommunicationEventType" description="${description}" > key-field-name="communicationEventTypeId"/> >> + </field> >> + >> + <!-- parent communications --> >> + <field name="parentCommEventId" > use-when="communicationEvent!=null&&communicationEvent.getString("parentCommEventId")!=null"> >> + <hyperlink description="${communicationEvent.parentCommEventId}" > target="EditCommunicationEvent?communicationEventId=${communicationEvent.parentCommEventId}&partyId=${partyId}" > target-type="intra-app"/> >> + </field> >> + <field name="parentCommEventId" map-name="parameters" use-when="communicationEvent==null" > >> + <hidden/> >> + </field> >> + >> + <!-- status --> >> <field name="statusId" use-when="communicationEvent==null" title="${uiLabelMap.CommonStatus}" > >> <drop-down> >> <entity-options description="${description}" entity-name="StatusItem" key-field-name="statusId"> >> @@ -75,23 +89,54 @@ >> </entity-options> >> </drop-down> >> </field> >> - <field name="contactMechTypeId"> <!-- does not have use-when restrictions so we can enter what the contactMechTypeId > is --> >> + >> + <!-- auto email fields --> >> + <field name="fromString" > use-when="communicationEvent!=null&&communicationEvent.getString("fromString")!=null"> >> + <display/> >> + </field> >> + <field name="toString" > use-when="communicationEvent!=null&&communicationEvent.getString("toString")!=null"> >> + <display/> >> + </field> >> + <field name="toString" map-name="parameters" use-when="communicationEvent==null&&toString!=null"> >> + <text size="60"/> >> + </field> >> + >> + <!-- party ID fields --> >> + <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}" use-when="communicationEvent==null"> >> + <lookup target-form-name="LookupPartyName" default-value="${userLogin.partyId}"/> >> + </field> >> + <field name="partyIdFrom" title="${uiLabelMap.PartyPartyFrom}" use-when="communicationEvent!=null"> >> + <lookup target-form-name="LookupPartyName"/> >> + </field> >> + <field name="partyIdTo" title="${uiLabelMap.PartyPartyTo}"> >> + <lookup target-form-name="LookupPartyName"/> >> + </field> >> + >> + <!-- contact mech type --> >> + <field name="contactMechTypeId" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> <drop-down> >> <entity-options description="${description}" entity-name="ContactMechType" key-field-name="contactMechTypeId"> >> <entity-order-by field-name="description"/> >> </entity-options> >> </drop-down> >> </field> >> + <field name="contactMechTypeId" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> + <display-entity entity-name="ContactMechType" description="${description}" key-field-name="contactMechTypeId"/> >> + </field> >> + >> <!-- this is an example of how to display different types of contact mech to the user --> >> <field name="contactMechIdFrom" title="${uiLabelMap.PartyFromEmailAddress}" >> - > use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" > ).equals("EMAIL_COMMUNICATION"))"> >> + > use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" > ).equals("EMAIL_COMMUNICATION")||parameters.get("communicationEventTypeId").equals("AUTO_EMAIL_COMM")) > "> >> <drop-down allow-empty="false" current="selected"> >> - <list-options key-name="contactMechId" list-name="userEmailAddresses" description="${infoString}"/> >> + <entity-options entity-name="PartyAndContactMech" description="${infoString}" key-field-name="contactMechId"> >> + <entity-constraint name="partyId" operator="equals" value="${partyIdFrom}"/> >> + </entity-options> >> </drop-down> >> </field> >> <field name="contactMechIdFrom" title="${uiLabelMap.PartyFromContactMech}" >> - > use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal > s("EMAIL_COMMUNICATION"))"> >> + > use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal > s("EMAIL_COMMUNICATION")||parameters.get("communicationEventTypeId").equals("AUTO_EMAIL_COMM"))"> >> <lookup target-form-name="LookupPreferredContactMech" target-parameter="partyIdFrom"/></field> >> + >> <!-- TODO: somehow show the address or email here, rather than just a contactMechId --> >> <field name="contactMechIdTo" title="${uiLabelMap.PartyToEmailAddress}" >> > use-when="(parameters.get("communicationEventTypeId")!=null)&&(parameters.get("communicationEventTypeId" > ).equals("EMAIL_COMMUNICATION"))"> >> @@ -102,28 +147,44 @@ >> <field name="contactMechIdTo" title="${uiLabelMap.PartyToContactMech}" >> > use-when="(parameters.get("communicationEventTypeId")==null)||!(parameters.get("communicationEventTypeId").equal > s("EMAIL_COMMUNICATION"))"> >> <lookup target-form-name="LookupPreferredContactMech" target-parameter="partyIdTo"/></field> >> - <field name="roleTypeIdFrom" use-when="commEventRoleTypeIdFrom!=null"> >> + >> + <!-- role type info --> >> + <field name="roleTypeIdFrom" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> <drop-down no-current-selected-key="_NA_"> >> <entity-options description="${description}" entity-name="RoleType" key-field-name="roleTypeId"> >> <entity-order-by field-name="description"/> >> </entity-options> >> </drop-down> >> </field> >> - <field name="roleTypeIdTo" use-when="commEventRoleTypeIdTo!=null"> >> + <field name="roleTypeIdFrom" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> + <display-entity entity-name="RoleType" description="${description}" key-field-name="roleTypeId"/> >> + </field> >> + >> + <field name="roleTypeIdTo" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> <drop-down no-current-selected-key="_NA_"> >> <entity-options description="${description}" entity-name="RoleType" key-field-name="roleTypeId"> >> <entity-order-by field-name="description"/> >> </entity-options> >> </drop-down> >> </field> >> - <field name="contactListId"> >> + <field name="roleTypeIdTo" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> + <display-entity entity-name="RoleType" description="${description}" key-field-name="roleTypeId"/> >> + </field> >> + >> + <!-- contact list --> >> + <field name="contactListId" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> <lookup size="20" target-form-name="LookupContactList"> >> <sub-hyperlink target="/marketing/control/EditContactList?contactListId=${communicationEvent.contactListId}" > target-type="inter-app" link-style="smallSubmit"/> >> </lookup> >> </field> >> + <field name="contactListId" > use-when="communicationEvent!=null&&communicationEvent.getString("contactListId")!=null&&!communicationEve > nt.getString("statusId").equals("COM_ENTERED")"><display/></field> >> + >> <field name="datetimeStarted" title="${uiLabelMap.CommonStartDate}"><date-time/></field> >> <field name="datetimeEnded" title="${uiLabelMap.CommonFinishDate}"><date-time/></field> >> - <field name="subject"><text size="60"/></field> >> + >> + <field name="subject" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"><text > size="60"/></field> >> + <field name="subject" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><di > splay/></field> >> + >> <field name="reasonEnumId"> >> <drop-down no-current-selected-key="" allow-empty="true"> >> <entity-options entity-name="Enumeration" description="${description}" key-field-name="enumId"> >> @@ -132,15 +193,20 @@ >> </entity-options> >> </drop-down> >> </field> >> - <field name="contentMimeTypeId"> >> - <drop-down no-current-selected-key="_NA_" allow-empty="false"> >> + <field name="contentMimeTypeId" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"> >> + <drop-down no-current-selected-key="text/plain" allow-empty="false"> >> <entity-options description="${mimeTypeId}" entity-name="MimeType" key-field-name="mimeTypeId"> >> <entity-order-by field-name="mimeTypeId"/> >> </entity-options> >> </drop-down> >> </field> >> - <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10"/></field> >> + <field name="contentMimeTypeId" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><di > splay/></field> >> + >> + <field name="content" title="${uiLabelMap.CommonContent}" > use-when="communicationEvent==null||communicationEvent.getString("statusId").equals("COM_ENTERED")"><textarea > cols="60" rows="10"/></field> >> + <field name="content" title="${uiLabelMap.CommonContent}" > use-when="communicationEvent!=null&&!communicationEvent.getString("statusId").equals("COM_ENTERED")"><te > xtarea cols="60" rows="10" read-only="true"/></field> >> + >> <field name="note" title="${uiLabelMap.CommonNote}"><textarea cols="60" rows="3"/></field> >> + <field name="messageId" > use-when="communicationEvent!=null&&communicationEvent.getString("messageId")!=null"><display/></field> >> <field name="submitButton" title="${uiLabelMap.CommonSave}"><submit button-type="button"/></field> >> </form> >> >> @@ -171,7 +237,7 @@ >> <field name="subject"><display/></field> >> <field map-name="subjectMap" name="eventNote" title="${uiLabelMap.CommonNote}"><display/></field> >> <field name="contentMimeTypeId"><display/></field> >> - <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10"/></field> >> + <field name="content" title="${uiLabelMap.CommonContent}"><textarea cols="60" rows="10" read-only="true"/></field> >> <field name="content" title="${uiLabelMap.CommonContent}" > use-when="(communicationEvent.getString("contentMimeTypeId")!=null)&&(communicationEvent.getString("contentMi > meTypeId").indexOf("text/html")) != -1"> >> <display also-hidden="false"/> <!-- if not set, it is also hidden, which could cause it to re-dislay --> >> </field> >> @@ -180,6 +246,8 @@ >> <form name="findCommEvents" type="single" target="ListLookupCommEvents" >> paginate="true"> >> <field name="communicationEventId" use-when="communicationEvent != null"><text-find/></field> >> + <field name="parentCommEventId"><text-find/></field> >> + <field name="origCommEventId"><text-find/></field> >> <field name="partyIdFrom" title="${uiLabelMap.CommonPartyID} ${uiLabelMap.CommonFrom}"><lookup > target-form-name="LookupPartyName"/></field> >> <field name="partyIdTo" title="${uiLabelMap.CommonPartyID} ${uiLabelMap.CommonTo}"><lookup > target-form-name="LookupPartyName"/></field> >> <field name="communicationEventTypeId"> >> @@ -268,6 +336,17 @@ >> <condition-expr field-name="partyIdTo" operator="equals" value="${partyId}"/> >> </condition-list> >> <condition-expr env-name="" field-name="statusId" operator="equals" value="COM_PENDING"/> >> + </condition-list> >> + </entity-condition> >> + </actions> >> + </form> >> + >> + <form name="ListChildCommEvents" type="list" extends="ListCommEvents"> >> + <actions> >> + <entity-condition entity-name="CommunicationEvent"> >> + <condition-list combine="or"> >> + <condition-expr field-name="parentCommEventId" operator="equals" value="${communicationEventId}"/> >> + <condition-expr field-name="origCommEventId" operator="equals" value="${communicationEventId}"/> >> </condition-list> >> </entity-condition> >> </actions> >> >> Modified: ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml >> URL: > http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml?rev=571303&r1=571302&r2=571303&view=diff >> ============================================================================== >> --- ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml (original) >> +++ ofbiz/trunk/applications/party/widget/partymgr/CommunicationScreens.xml Thu Aug 30 13:42:08 2007 >> @@ -250,13 +250,14 @@ >> <set field="titleProperty" value="PageTitleEditCommunication"/> >> <set field="tabButtonItem" value="PartyCommEvents"/> >> <set field="subTabButtonItem" value="CommunicationEvent"/> >> + <set field="entityName" value="CommunicationEvent"/> >> >> <set field="communicationEventId" from-field="parameters.communicationEventId"/> >> <set field="parentCommEventId" from-field="parameters.parentCommEventId"/> >> >> <set field="partyId" from-field="parameters.partyId"/> >> <set field="partyIdFrom" from-field="parameters.partyIdFrom" default-value="${userLogin.partyId}"/> >> - <set field="partyIdTo" from-field="parameters.partyIdTo" default-value="${userLogin.partyId}"/> >> + <set field="partyIdTo" from-field="parameters.partyIdTo"/> >> <set field="contactMechIdFrom" from-field="parameters.contactMechIdFrom"/> >> <set field="contactMechIdTo" from-field="parameters.contactMechIdTo"/> >> <set field="contactMechTypeId" from-field="parameters.contactMechTypeId"/> >> @@ -282,25 +283,34 @@ >> <label style="head1" text="${uiLabelMap.PartyNewCommunication}"/> >> </fail-widgets> >> </section> >> - <!-- >> <section> >> <widgets> >> <container> >> <link style="smallSubmit" > target="EditCommunicationEvent?partyId=${partyId}&partyIdFrom=${partyId}" text="${uiLabelMap.PartyNewCommunication}"/> >> - <link style="smallSubmit" > target="EditCommunicationEvent?partyId=${partyId}&partyIdTo=${partyId}" text="${uiLabelMap.PartyReply}"/> >> + <link style="smallSubmit" > target="EditCommunicationEvent?partyId=${partyId}&parentCommEventId=${communicationEventId}" text="${uiLabelMap.PartyReply}"/> >> + <!--<link style="smallSubmit" > target="EditCommunicationEvent?communicationEventTypeId=${communicationEvent.communicationEventTypeId}&contactMechIdTo=${communi > cationEvent.contactMechIdFrom}&contactMechIdFrom=${communicationEvent.contactMechIdTo}&partyId=${partyId}&partyIdTo=${pa > rtyId}&partyIdFrom=${userLogin.partyId}&parentCommEventId=${communicationEventId}&toString=${communicationEvent.fromStri > ng}" text="${uiLabelMap.PartyReply}"/>--> >> </container> >> </widgets> >> </section> >> - --> >> <section> >> <condition> >> <if-compare field-name="okayToUpdate" operator="equals" value="true" type="Boolean"/> >> </condition> >> <widgets> >> - <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" > name="EditCommEvent"/> >> + <container style="widget-container"> >> + <include-form > location="component://party/webapp/partymgr/communication/CommForms.xml" name="EditCommEvent"/> >> + </container> >> + <container style="widget-container"> >> + <include-form > location="component://party/webapp/partymgr/communication/CommForms.xml" name="ListChildCommEvents"/> >> + </container> >> </widgets> >> <fail-widgets> >> - <include-form location="component://party/webapp/partymgr/communication/CommForms.xml" > name="ViewCommEvent"/> >> + <container style="widget-container"> >> + <include-form > location="component://party/webapp/partymgr/communication/CommForms.xml" name="ViewCommEvent"/> >> + </container> >> + <container style="widget-container"> >> + <include-form > location="component://party/webapp/partymgr/communication/CommForms.xml" name="ListChildCommEvents"/> >> + </container> >> </fail-widgets> >> </section> >> </widgets> >> |
Free forum by Nabble | Edit this page |