Author: adrianc
Date: Wed Jul 1 20:55:09 2009 New Revision: 790373 URL: http://svn.apache.org/viewvc?rev=790373&view=rev Log: UI for iCalendar. I set it up so the iCalendar screens can be reused in another application - a user's Home Page for example. Modified: ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.xml ofbiz/trunk/applications/workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/controller.xml ofbiz/trunk/applications/workeffort/widget/WorkEffortForms.xml ofbiz/trunk/applications/workeffort/widget/WorkEffortMenus.xml ofbiz/trunk/applications/workeffort/widget/WorkEffortScreens.xml ofbiz/trunk/applications/workeffort/widget/WorkEffortTrees.xml Modified: ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.xml (original) +++ ofbiz/trunk/applications/workeffort/config/WorkEffortUiLabels.xml Wed Jul 1 20:55:09 2009 @@ -1921,6 +1921,36 @@ <value xml:lang="th">มาà¸à¸£à¸à¸²à¸à¸à¸µà¹à¸à¸µ</value> <value xml:lang="zh">è¯å¥½æ å</value> </property> + <property key="WorkEffortICalendar"> + <value xml:lang="en">iCalendar</value> + </property> + <property key="WorkEffortICalendarAdd"> + <value xml:lang="en">Add iCalendar</value> + </property> + <property key="WorkEffortICalendarAddParty"> + <value xml:lang="en">Add iCalendar Party</value> + </property> + <property key="WorkEffortICalendarAddFixedAsset"> + <value xml:lang="en">Add iCalendar Fixed Asset</value> + </property> + <property key="WorkEffortICalendarEdit"> + <value xml:lang="en">Edit iCalendar</value> + </property> + <property key="WorkEffortICalendarFind"> + <value xml:lang="en">Find iCalendars</value> + </property> + <property key="WorkEffortICalendarName"> + <value xml:lang="en">Calendar Name</value> + </property> + <property key="WorkEffortICalendarOwner"> + <value xml:lang="en">Calendar Owner</value> + </property> + <property key="WorkEffortICalendarUrl"> + <value xml:lang="en">iCalendar Url</value> + </property> + <property key="WorkEffortICalendarVisibility"> + <value xml:lang="en">Calendar Visibility</value> + </property> <property key="WorkEffortIdMissing"> <value xml:lang="en">Work Effort ID is missing.</value> <value xml:lang="fr">La réf. de tâche est manquante</value> Modified: ofbiz/trunk/applications/workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml (original) +++ ofbiz/trunk/applications/workeffort/script/org/ofbiz/workeffort/permission/WorkEffortPermissionServices.xml Wed Jul 1 20:55:09 2009 @@ -318,6 +318,7 @@ <condition-list combine="and"> <condition-expr field-name="workEffortId" from-field="workEffortId"/> <condition-expr field-name="partyId" from-field="userLogin.partyId"/> + <condition-expr field-name="statusId" value="PRTYASGN_ASSIGNED"/> <condition-list combine="or"> <condition-expr field-name="roleTypeId" value="CAL_OWNER"/> <condition-expr field-name="roleTypeId" value="CAL_ORGANIZER"/> Modified: ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/controller.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/controller.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/controller.xml (original) +++ ofbiz/trunk/applications/workeffort/webapp/workeffort/WEB-INF/controller.xml Wed Jul 1 20:55:09 2009 @@ -125,6 +125,64 @@ <response name="success" type="view-home" value="ListWorkEfforts"/> <response name="error" type="view" value="ListWorkEfforts"/> </request-map> + + <!-- iCalendar requests and events --> + <request-map uri="EditICalendar"> + <security https="true" auth="true"/> + <response name="success" type="view" value="EditICalendar"/> + </request-map> + <request-map uri="ICalendarChildren"> + <security https="true" auth="true"/> + <response name="success" type="view" value="ICalendarChildren"/> + </request-map> + <request-map uri="ICalendarParties"> + <security https="true" auth="true"/> + <response name="success" type="view" value="ICalendarParties"/> + </request-map> + <request-map uri="ICalendarFixedAssets"> + <security https="true" auth="true"/> + <response name="success" type="view" value="ICalendarFixedAssets"/> + </request-map> + <request-map uri="FindICalendars"> + <security https="true" auth="true"/> + <response name="success" type="view" value="FindICalendars"/> + </request-map> + <request-map uri="createICalendar"> + <security https="true" auth="true"/> + <event type="service" invoke="createWorkEffort"/> + <response name="success" type="view-home" value="EditICalendar"/> + <response name="error" type="view" value="EditICalendar"/> + </request-map> + <request-map uri="updateICalendar"> + <security https="true" auth="true"/> + <event type="service" invoke="updateWorkEffort"/> + <response name="success" type="view-home" value="EditICalendar"/> + <response name="error" type="view" value="EditICalendar"/> + </request-map> + <request-map uri="createICalendarPartyAssign"> + <security https="true" auth="true"/> + <event type="service" invoke="assignPartyToWorkEffort"/> + <response name="success" type="view-home" value="ICalendarParties"/> + <response name="error" type="view-home" value="ICalendarParties"/> + </request-map> + <request-map uri="updateICalendarPartyAssign"> + <security https="true" auth="true"/> + <event type="service" invoke="updatePartyToWorkEffortAssignment"/> + <response name="success" type="view" value="ICalendarParties"/> + <response name="error" type="view" value="ICalendarParties"/> + </request-map> + <request-map uri="createICalendarFixedAssetAssign"> + <security https="true" auth="true"/> + <event type="service" invoke="createWorkEffortFixedAssetAssign"/> + <response name="success" type="view" value="ICalendarFixedAssets"/> + <response name="error" type="view" value="ICalendarFixedAssets"/> + </request-map> + <request-map uri="updateICalendarFixedAssetAssign"> + <security https="true" auth="true"/> + <event type="service" invoke="updateWorkEffortFixedAssetAssign"/> + <response name="success" type="view" value="ICalendarFixedAssets"/> + <response name="error" type="view" value="ICalendarFixedAssets"/> + </request-map> <request-map uri="ListWorkEffortFixedAssetAssigns"> <security https="true" auth="true"/> @@ -689,6 +747,12 @@ <view-map name="EditWorkEffortAssoc" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#EditWorkEffortAssoc"/> <view-map name="AddWorkEffortAssoc" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#AddWorkEffortAssoc"/> + <view-map name="EditICalendar" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#EditICalendar"/> + <view-map name="ICalendarChildren" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ICalendarChildren"/> + <view-map name="ICalendarParties" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ICalendarParties"/> + <view-map name="ICalendarFixedAssets" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ICalendarFixedAssets"/> + <view-map name="FindICalendars" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#FindICalendars"/> + <view-map name="ListWorkEffortEventReminders" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ListWorkEffortEventReminders"/> <view-map name="ListWorkEffortFixedAssetAssigns" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ListWorkEffortFixedAssetAssigns"/> <view-map name="ListWorkEffortPartyAssigns" type="screen" page="component://workeffort/widget/WorkEffortScreens.xml#ListWorkEffortPartyAssigns"/> Modified: ofbiz/trunk/applications/workeffort/widget/WorkEffortForms.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/widget/WorkEffortForms.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/widget/WorkEffortForms.xml (original) +++ ofbiz/trunk/applications/workeffort/widget/WorkEffortForms.xml Wed Jul 1 20:55:09 2009 @@ -1335,4 +1335,100 @@ <field name="submitButton" title="${uiLabelMap.CommonAdd}" widget-style="smallSubmit"><submit button-type="button"/></field> </form> + <form name="EditICalendar" default-map-name="workEffort" target="updateICalendar" type="single"> + <alt-target target="createICalendar" use-when="workEffort==null"/> + <field name="workEffortTypeId"><hidden value="PUBLISH_PROPS"></hidden></field> + <field name="currentStatusId"><hidden value="CAL_CANCELLED"></hidden></field> + <field name="quickAssignPartyId" title="${uiLabelMap.WorkEffortICalendarOwner}" use-when="workEffort==null @and workEffortId==null"><lookup target-form-name="LookupPartyName"/></field> + <field name="workEffortId" use-when="workEffort!=null" title="${uiLabelMap.WorkEffortICalendarUrl}"><display description="/iCalendar/${workEffortId}/"/></field> + <field name="workEffortName" title="${uiLabelMap.WorkEffortICalendarName}" widget-style="required" tooltip="${uiLabelMap.CommonRequired}"><text/></field> + <field name="scopeEnumId" title="${uiLabelMap.WorkEffortICalendarVisibility}"> + <drop-down no-current-selected-key="WES_PRIVATE"> + <entity-options entity-name="Enumeration" key-field-name="enumId" description="${description}"> + <entity-constraint name="enumTypeId" value="WORK_EFF_SCOPE"/> + <entity-order-by field-name="description"/> + </entity-options> + </drop-down> + </field> + <field name="actualStartDate" title="${uiLabelMap.CommonFrom}" position="2"><date-time/></field> + <field name="actualCompletionDate" title="${uiLabelMap.CommonTo}" position="3"><date-time/></field> + <field name="submitButton" title="${uiLabelMap.CommonSave}" widget-style="smallSubmit"><submit button-type="button"/></field> + </form> + + <form name="EditICalendarPartyAssign" target="createICalendarPartyAssign" type="single"> + <actions> + <!-- Clear parameters from prior create/update event --> + <set field="parameters.partyId" value=""/> + <set field="parameters.roleTypeId" value=""/> + <set field="parameters.fromDate" value=""/> + <set field="parameters.thruDate" value=""/> + <set field="parameters.comments" value=""/> + <entity-condition list="roleList" entity-name="RoleType"> + <condition-list combine="or"> + <condition-expr field-name="roleTypeId" operator="equals" value="CAL_DELEGATE"/> + <condition-expr field-name="roleTypeId" operator="equals" value="ICAL_MEMBER"/> + </condition-list> + </entity-condition> + </actions> + <field name="workEffortId"><hidden/></field> + <field name="statusId"><hidden value="PRTYASGN_ASSIGNED"/></field> + <field name="partyId"><lookup target-form-name="LookupPartyName"/></field> + <field name="roleTypeId" title="${uiLabelMap.PartyRoleType}"> + <drop-down allow-empty="false"> + <list-options list-name="roleList" key-name="roleTypeId" description="${description}"/> + </drop-down> + </field> + <field name="fromDate"><date-time/></field> + <field name="thruDate"><date-time/></field> + <field name="comments"><text size="60" maxlength="255"/></field> + <field name="submitButton" title="${uiLabelMap.CommonAdd}" widget-style="smallSubmit"><submit button-type="button"/></field> + </form> + + <form name="ListICalendarPartyAssigns" extends="ListWorkEffortPartyAssigns" target="updateICalendarPartyAssign" + extends-resource="component://workeffort/widget/WorkEffortPartyAssignForms.xml" header-row-style="header-row-2"> + <field name="statusDateTime"><ignored/></field> + <field name="availabilityStatusId"><ignored/></field> + <field name="expectationEnumId"><ignored/></field> + <field name="delegateReasonEnumId"><ignored/></field> + <field name="facilityId"><ignored/></field> + <field name="mustRsvp"><ignored/></field> + </form> + + <form name="ListIcalendars" list-name="listIt" type="list" + odd-row-style="alternate-row" header-row-style="header-row-2" default-table-style="basic-table hover-bar"> + <actions> + <entity-and entity-name="WorkEffortAndPartyAssign" list="listIt"> + <field-map field-name="workEffortTypeId" value="PUBLISH_PROPS"/> + <field-map field-name="partyId" from-field="userLogin.partyId"/> + <field-map field-name="statusId" value="PRTYASGN_ASSIGNED"/> + </entity-and> + </actions> + <field name="workEffortId" title="${uiLabelMap.WorkEffortICalendarUrl}"> + <hyperlink also-hidden="false" description="/iCalendar/${workEffortId}/" target="EditICalendar" target-type="plain"> + <parameter param-name="workEffortId"/> + </hyperlink> + </field> + <field name="workEffortName" title="${uiLabelMap.WorkEffortICalendarName}"><display/></field> + </form> + + <form name="EditICalendarFixedAssetAssign" extends="EditWorkEffortFixedAssetAssign" target="createICalendarFixedAssetAssign"> + <actions> + <!-- Clear parameters from prior create/update event --> + <set field="parameters.fixedAssetId" value=""/> + <set field="parameters.fromDate" value=""/> + <set field="parameters.thruDate" value=""/> + <set field="parameters.comments" value=""/> + </actions> + <field name="statusId"><ignored/></field> + <field name="availabilityStatusId"><ignored/></field> + <field name="allocatedCost"><ignored/></field> + </form> + + <form name="ListICalendarFixedAssetAssigns" extends="ListWorkEffortFixedAssetAssigns" target="updateICalendarFixedAssetAssign"> + <field name="statusId"><ignored/></field> + <field name="availabilityStatusId"><ignored/></field> + <field name="allocatedCost"><ignored/></field> + <field name="deleteLink"><ignored/></field> + </form> + </forms> Modified: ofbiz/trunk/applications/workeffort/widget/WorkEffortMenus.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/widget/WorkEffortMenus.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/widget/WorkEffortMenus.xml (original) +++ ofbiz/trunk/applications/workeffort/widget/WorkEffortMenus.xml Wed Jul 1 20:55:09 2009 @@ -29,6 +29,7 @@ <menu-item name="workeffort" title="${uiLabelMap.WorkEffortWorkEffort}"><link target="FindWorkEffort"/></menu-item> <menu-item name="timesheet" title="${uiLabelMap.WorkEffortTimesheet}"><link target="FindTimesheet"/></menu-item> <menu-item name="userJobs" title="${uiLabelMap.WorkEffortJobList}"><link target="UserJobs"/></menu-item> + <menu-item name="WorkEffortICalendar" title="${uiLabelMap.WorkEffortICalendar}"><link target="FindICalendars"/></menu-item> </menu> <menu name="WorkEffortTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml" default-menu-item-name="WorkEffort"> @@ -211,4 +212,30 @@ </condition> </menu-item> </menu> + + <menu name="ICalendarTabBar" extends="CommonTabBarMenu" extends-resource="component://common/widget/CommonMenus.xml" + default-menu-item-name="WorkEffort"> + <menu-item name="WorkEffort" title="${uiLabelMap.WorkEffortICalendar}"> + <link target="EditICalendar"> + <parameter param-name="workEffortId"/> + </link> + </menu-item> + <menu-item name="WorkEffortAssocs" title="${uiLabelMap.CommonEntityChildren}"> + <link target="ICalendarChildren"> + <parameter param-name="workEffortId"/> + <parameter param-name="trail" from-field="workEffortId"/> + </link> + </menu-item> + <menu-item name="WorkEffortPartyAssigns" title="${uiLabelMap.WorkEffortParties}"> + <link target="ICalendarParties"> + <parameter param-name="workEffortId"/> + </link> + </menu-item> + <menu-item name="WorkEffortFixedAssetAssigns" title="${uiLabelMap.AccountingFixedAssets}"> + <link target="ICalendarFixedAssets"> + <parameter param-name="workEffortId"/> + </link> + </menu-item> + </menu> + </menus> Modified: ofbiz/trunk/applications/workeffort/widget/WorkEffortScreens.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/widget/WorkEffortScreens.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/widget/WorkEffortScreens.xml (original) +++ ofbiz/trunk/applications/workeffort/widget/WorkEffortScreens.xml Wed Jul 1 20:55:09 2009 @@ -828,4 +828,187 @@ </widgets> </section> </screen> + + <screen name="iCalendarDecorator"> + <section> + <actions> + <set field="headerItem" value="WorkEffortICalendar"/> + </actions> + <widgets> + <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <section> + <condition> + <or> + <if-service-permission service-name="workEffortICalendarPermission" main-action="CREATE" context-map="parameters"/> + <if-service-permission service-name="workEffortICalendarPermission" main-action="UPDATE" context-map="parameters"/> + </or> + </condition> + <widgets> + <section> + <condition> + <not><if-empty field="workEffort"/></not> + </condition> + <widgets> + <include-menu name="ICalendarTabBar" location="component://workeffort/widget/WorkEffortMenus.xml"/> + </widgets> + </section> + <container style="h1"> + <label text="${title}"/> + </container> + <decorator-section-include name="body"/> + </widgets> + <fail-widgets> + <label style="h3">${uiLabelMap.WorkEffortViewPermissionError}</label> + </fail-widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="FindICalendars"> + <section> + <actions> + <set field="headerItem" value="WorkEffortICalendar"/> + </actions> + <widgets> + <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <section> + <condition> + <if-service-permission service-name="workEffortManagerPermission" main-action="VIEW"/> + </condition> + <widgets> + <container style="h1"> + <label text="${uiLabelMap.WorkEffortICalendarFind}"/> + </container> + <container style="button-bar"> + <link text="${uiLabelMap.CommonCreate}" target="EditICalendar" style="buttontext"/> + </container> + <include-form name="ListIcalendars" location="component://workeffort/widget/WorkEffortForms.xml"/> + </widgets> + <fail-widgets> + <label style="h3">${uiLabelMap.WorkEffortViewPermissionError}</label> + </fail-widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="EditICalendar"> + <section> + <actions> + <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap"/> + <set field="tabButtonItem" value="WorkEffort"/> + <set field="workEffortId" from-field="parameters.workEffortId"/> + <entity-one entity-name="WorkEffort" value-field="workEffort"/> + <set field="title" value="${uiLabelMap.WorkEffortICalendarEdit} - ${workEffort.workEffortName}"/> + </actions> + <widgets> + <decorator-screen name="iCalendarDecorator" location="${parameters.iCalendarDecoratorLocation}"> + <decorator-section name="body"> + <section> + <widgets> + <section> + <condition> + <if-empty field="workEffort"/> + </condition> + <actions> + <set field="quickAssignPartyId" from-field="userLogin.partyId"/> + <set field="title" value="${uiLabelMap.WorkEffortICalendarAdd}"/> + </actions> + <widgets> + <include-form name="EditICalendar" location="component://workeffort/widget/WorkEffortForms.xml"/> + </widgets> + <fail-widgets> + <container style="button-bar"> + <link text="${uiLabelMap.CommonCreate}" target="EditICalendar" style="buttontext"/> + </container> + <include-form name="EditICalendar" location="component://workeffort/widget/WorkEffortForms.xml"/> + </fail-widgets> + </section> + </widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="ICalendarChildren"> + <section> + <actions> + <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap"/> + <set field="tabButtonItem" value="WorkEffortAssocs"/> + <set field="workEffortId" from-field="parameters.workEffortId"/> + <set field="trail" from-field="requestParameters.trail"/> + <entity-one entity-name="WorkEffort" value-field="workEffort"/> + <set field="title" value="${uiLabelMap.PageTitleTreeWorkEfforts} - ${workEffort.workEffortName}"/> + </actions> + <widgets> + <decorator-screen name="iCalendarDecorator" location="${parameters.iCalendarDecoratorLocation}"> + <decorator-section name="body"> + <section> + <widgets> + <include-tree name="ICalendarTree" location="component://workeffort/widget/WorkEffortTrees.xml"/> + </widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="ICalendarParties"> + <section> + <actions> + <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap"/> + <set field="tabButtonItem" value="WorkEffortPartyAssigns"/> + <set field="workEffortId" from-field="parameters.workEffortId"/> + <entity-one entity-name="WorkEffort" value-field="workEffort"/> + <set field="title" value="${uiLabelMap.WorkEffortICalendarAddParty} - ${workEffort.workEffortName}"/> + </actions> + <widgets> + <decorator-screen name="iCalendarDecorator" location="${parameters.iCalendarDecoratorLocation}"> + <decorator-section name="body"> + <section> + <widgets> + <include-form name="EditICalendarPartyAssign" location="component://workeffort/widget/WorkEffortForms.xml"/> + <include-form name="ListICalendarPartyAssigns" location="component://workeffort/widget/WorkEffortForms.xml"/> + </widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="ICalendarFixedAssets"> + <section> + <actions> + <property-map resource="WorkEffortUiLabels" map-name="uiLabelMap"/> + <set field="tabButtonItem" value="WorkEffortFixedAssetAssigns"/> + <set field="workEffortId" from-field="parameters.workEffortId"/> + <entity-one entity-name="WorkEffort" value-field="workEffort"/> + <set field="title" value="${uiLabelMap.WorkEffortICalendarAddFixedAsset} - ${workEffort.workEffortName}"/> + </actions> + <widgets> + <decorator-screen name="iCalendarDecorator" location="${parameters.iCalendarDecoratorLocation}"> + <decorator-section name="body"> + <section> + <widgets> + <include-form name="EditICalendarFixedAssetAssign" location="component://workeffort/widget/WorkEffortForms.xml"/> + <include-form name="ListICalendarFixedAssetAssigns" location="component://workeffort/widget/WorkEffortForms.xml"/> + </widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + </screens> Modified: ofbiz/trunk/applications/workeffort/widget/WorkEffortTrees.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/workeffort/widget/WorkEffortTrees.xml?rev=790373&r1=790372&r2=790373&view=diff ============================================================================== --- ofbiz/trunk/applications/workeffort/widget/WorkEffortTrees.xml (original) +++ ofbiz/trunk/applications/workeffort/widget/WorkEffortTrees.xml Wed Jul 1 20:55:09 2009 @@ -46,4 +46,30 @@ </sub-node> </node> </tree> + + <!-- A read-only tree of child work efforts. Mainly used to check if iCalendar events and + tasks are being saved as work efforts. --> + <tree name="ICalendarTree" root-node-name="node-root" entity-name="WorkEffort" expand-collapse-request="ICalendarChildren?workEffortId=${workEffortId}" + default-render-style="expand-collapse" default-wrap-style="treeWrapper"> + <node name="node-root" entity-name="WorkEffort" > + <entity-one entity-name="WorkEffort" value-field="workEffort"/> + <sub-node node-name="node-list"> + <entity-condition entity-name="WorkEffortAssoc"> + <condition-expr field-name="workEffortIdFrom" operator="equals" from-field="workEffortId"/> + </entity-condition> + </sub-node> + </node> + <node name="node-list" entry-name="workEffortAssoc" entity-name="WorkEffortAssoc" join-field-name="workEffortIdTo"> + <entity-one entity-name="WorkEffort" value-field="workEffort"> + <field-map field-name="workEffortId" from-field="workEffortAssoc.workEffortIdTo"/> + </entity-one> + <label text="${workEffort.workEffortName} - ${workEffort.description} [${workEffort.workEffortId}]"/> + <sub-node node-name="node-list"> + <entity-condition entity-name="WorkEffortAssoc"> + <condition-expr field-name="workEffortIdFrom" operator="equals" from-field="workEffortAssoc.workEffortIdTo"/> + </entity-condition> + </sub-node> + </node> + </tree> + </trees> |
Free forum by Nabble | Edit this page |