svn commit: r651500 - in /ofbiz/trunk/applications/marketing: config/ script/org/ofbiz/sfa/ script/org/ofbiz/sfa/user/ webapp/sfa/WEB-INF/ webapp/sfa/accounts/ widget/sfa/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r651500 - in /ofbiz/trunk/applications/marketing: config/ script/org/ofbiz/sfa/ script/org/ofbiz/sfa/user/ webapp/sfa/WEB-INF/ webapp/sfa/accounts/ widget/sfa/

hansbak-2
Author: hansbak
Date: Thu Apr 24 23:26:42 2008
New Revision: 651500

URL: http://svn.apache.org/viewvc?rev=651500&view=rev
Log:
first account screens

Added:
    ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml   (with props)
    ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml   (with props)
    ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/
    ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml   (with props)
    ofbiz/trunk/applications/marketing/webapp/sfa/accounts/
    ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml   (with props)
    ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml   (with props)
Modified:
    ofbiz/trunk/applications/marketing/config/MarketingUiLabels.xml
    ofbiz/trunk/applications/marketing/webapp/sfa/WEB-INF/controller.xml
    ofbiz/trunk/applications/marketing/widget/sfa/CommonScreens.xml
    ofbiz/trunk/applications/marketing/widget/sfa/SfaMenus.xml

Modified: ofbiz/trunk/applications/marketing/config/MarketingUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/config/MarketingUiLabels.xml?rev=651500&r1=651499&r2=651500&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/config/MarketingUiLabels.xml (original)
+++ ofbiz/trunk/applications/marketing/config/MarketingUiLabels.xml Thu Apr 24 23:26:42 2008
@@ -18,6 +18,18 @@
     under the License.
 -->
 <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+    <property key="AccountAnnualRevenue">
+        <value xml:lang="en">Annual Revenue</value>
+    </property>
+    <property key="AccountInformation">
+        <value xml:lang="en">Account Information</value>
+    </property>
+    <property key="AccountName">
+        <value xml:lang="en">Account Name</value>
+    </property>
+    <property key="AccountTickerSymbol">
+        <value xml:lang="en">Ticker Symbol</value>
+    </property>
     <property key="ContactList">
         <value xml:lang="en">Contact List</value>
         <value xml:lang="es">Lista de contactos</value>
@@ -391,6 +403,12 @@
         <value xml:lang="th">ข้อมูลแถว</value>
         <value xml:lang="zh">日期范围</value>
     </property>
+    <property key="MarketingEmployees">
+        <value xml:lang="en">Employees</value>
+    </property>
+    <property key="MarketingFindAccounts">
+        <value xml:lang="en">Find SFA Accounts</value>
+    </property>
     <property key="MarketingMainPage">
         <value xml:lang="en">Main</value>
         <value xml:lang="es">Principal</value>
@@ -477,6 +495,9 @@
         <value xml:lang="th">การเยี่ยมชม</value>
         <value xml:lang="zh">访问</value>
     </property>
+    <property key="PageTitleAccountSummary">
+        <value xml:lang="en">Account Summary</value>
+    </property>
     <property key="PageTitleAddContactList">
         <value xml:lang="en">Add Contact List</value>
         <value xml:lang="es">Nueva lista de contactos</value>
@@ -513,6 +534,12 @@
         <value xml:lang="th">เพิ่มประเภทรหัส Tracking ใหม่</value>
         <value xml:lang="zh">新建跟踪码类型</value>
     </property>
+    <property key="PageTitleCreateAccount">
+        <value xml:lang="en">Create New Account</value>
+    </property>
+    <property key="PageTitleEditAccount">
+        <value xml:lang="en">Edit Account</value>
+    </property>
     <property key="PageTitleEditContactList">
         <value xml:lang="en">Edit Contact List</value>
         <value xml:lang="es">Editar lista de contactos</value>
@@ -1088,6 +1115,9 @@
     </property>
     <property key="SfaAcccounts">
         <value xml:lang="en">Accounts</value>
+    </property>
+    <property key="SfaCampaigns">
+        <value xml:lang="en">Campaigns</value>
     </property>
     <property key="SfaCompanyName">
         <value xml:lang="en">OFBiz: SFA Manager</value>

Added: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml?rev=651500&view=auto
==============================================================================
--- ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml (added)
+++ ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml Thu Apr 24 23:26:42 2008
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+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.
+-->
+
+<simple-map-processors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/simple-methods.xsd">
+    <!-- ContactMech map procs -->
+
+    <simple-map-processor name="newEmail">
+        <process field="roleTypeId"><copy/></process>
+        <process field="emailAddress"><copy/><not-empty><fail-property resource="PartyUiLabels" property="PartyEmailAddressMissing"/></not-empty>
+            <validate-method method="isEmail"><fail-property resource="PartyUiLabels" property="PartyEmailAddressNotFormattedCorrectly"/></validate-method>
+        </process>
+        <process field="emailAllowSol"><copy to-field="allowSolicitation"/></process>
+    </simple-map-processor>
+
+    <simple-map-processor name="postalAddress">
+        <make-in-string field="toName">
+            <in-field field="firstName"/><constant> </constant>
+            <in-field field="middleName"/><constant> </constant>
+            <in-field field="lastName"/>
+        </make-in-string>
+        <process field="roleTypeId"><copy/></process>
+        <process field="toName"><copy/></process>
+        <process field="address1"><copy/><not-empty><fail-property resource="PartyUiLabels" property="PartyAddressLine1Missing"/></not-empty></process>
+        <process field="address2"><copy/></process>
+        <process field="city"><copy/><not-empty><fail-property resource="PartyUiLabels" property="PartyCityMissing"/></not-empty></process>
+        <process field="state"><copy to-field="stateProvinceGeoId"/></process>
+        <process field="postalCode"><copy/><not-empty><fail-property resource="PartyUiLabels" property="PartyPostalCodeMissing"/></not-empty></process>
+        <process field="country"><copy to-field="countryGeoId"/><not-empty><fail-property resource="PartyUiLabels" property="PartyCountryMissing"/></not-empty></process>
+        <process field="addressAllowSol"><copy to-field="allowSolicitation"/></process>
+    </simple-map-processor>
+
+    <simple-map-processor name="homeTelecomNumber">
+        <process field="roleTypeId"><copy/></process>
+        <process field="homeCountryCode"><copy to-field="countryCode"/></process>
+        <process field="homeAreaCode"><copy to-field="areaCode"/></process>
+        <process field="homeContactCode"><copy to-field="contactNumber"/></process>
+        <process field="homeExtensionCode"><copy to-field="extension"/></process>
+        <process field="homeAllowSol"><copy to-field="allowSolicitation"/></process>
+    </simple-map-processor>
+
+    <simple-map-processor name="workTelecomNumber">
+        <process field="roleTypeId"><copy/></process>
+        <process field="workCountryCode"><copy to-field="countryCode"/></process>
+        <process field="workAreaCode"><copy to-field="areaCode"/></process>
+        <process field="workContactCode"><copy to-field="contactNumber"/></process>
+        <process field="workExtensionCode"><copy to-field="extension"/></process>
+        <process field="workAllowSol"><copy to-field="allowSolicitation"/></process>
+    </simple-map-processor>
+
+    <simple-map-processor name="faxTelecomNumber">
+        <process field="roleTypeId"><copy/></process>
+        <process field="faxCountryCode"><copy to-field="countryCode"/></process>
+        <process field="faxAreaCode"><copy to-field="areaCode"/></process>
+        <process field="faxContactCode"><copy to-field="contactNumber"/></process>
+        <process field="faxExtensionCode"><copy to-field="extension"/></process>
+        <process field="faxAllowSol"><copy to-field="allowSolicitation"/></process>
+    </simple-map-processor>
+</simple-map-processors>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml
------------------------------------------------------------------------------
    svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/ContactMechMapProcs.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml?rev=651500&view=auto
==============================================================================
--- ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml (added)
+++ ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml Thu Apr 24 23:26:42 2008
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+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.
+-->
+
+<simple-map-processors xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://www.ofbiz.org/dtds/simple-methods.xsd">
+    <simple-map-processor name="partyGroup">
+        <process field="groupName"><copy/><not-empty><fail-property resource="PartyUiLabels" property="PartyGroupNameMissing"/></not-empty></process>
+        <process field="officeSiteName"><copy/></process>
+        <process field="annualRevenue"><copy/></process>
+        <process field="numEmployees"><copy/></process>
+        <process field="tickerSymbol"><copy/></process>
+        <process field="partyTypeId"><copy/></process>
+        <process field="comments"><copy/></process>
+    </simple-map-processor>
+</simple-map-processors>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml
------------------------------------------------------------------------------
    svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/PartyMapProcs.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml?rev=651500&view=auto
==============================================================================
--- ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml (added)
+++ ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml Thu Apr 24 23:26:42 2008
@@ -0,0 +1,189 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+    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.
+-->
+
+<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">
+    
+    <!--Create Account for SFA Web Applicatiuon-->
+    <simple-method method-name ="createAccount" short-description="Create Accounts" login-required="false">
+        <set field="require_phone" value ="true"/>
+        <set field="parameters.roleTypeId" value="ACCOUNT" />
+        <set field="parameters.partyTypeId" value="PARTY_GROUP"/>
+        <now-timestamp-to-env env-name="nowStamp"/>
+        <call-simple-method method-name="createUser"/>
+        <set field="partyRelationContext.partyIdFrom" from-field="userLogin.partyId"/>
+        <set field="partyRelationContext.partyIdTo" from-field="parameters.partyId" />
+        <set field="partyRelationContext.roleTypeIdTo" from-field="parameters.roleTypeId"/>
+        <set field="partyRelationContext.roleTypeIdFrom" value="_NA_"/>
+        <call-service service-name="createPartyRelationship" in-map-name="partyRelationContext"/>
+    </simple-method>
+    
+    <simple-method method-name="createUser" short-description="Create User" login-required="false">
+        <now-timestamp-to-env env-name="nowStamp"/>
+        
+        <!-- Create the Party Group -->
+        <call-map-processor in-map-name="parameters" out-map-name="partyGroupContext" processor-name="partyGroup" xml-resource="org/ofbiz/sfa/PartyMapProcs.xml"/>
+        
+        <!-- Create the PartyRole -->
+        <set field="partyRoleContext.roleTypeId" from-field="parameters.roleTypeId" />
+        
+        <!-- Create the Postal Address -->
+        <if-compare field-name="use_address" map-name="parameters" operator="equals" value="false">
+            <!-- address not used, do nothing -->
+            <else>
+                <call-map-processor in-map-name="parameters" out-map-name="addressContext" processor-name="postalAddress" xml-resource="org/ofbiz/sfa/ContactMechMapProcs.xml"/>
+                <if-compare field-name="country" operator="equals" value="USA" map-name="parameters">
+                    <if-empty field-name="state" map-name="parameters">
+                        <set field="tempErrorMessage" value="State is missing, and is required for an address in the United States." />
+                        <field-to-list field-name="tempErrorMessage" list-name="error_list"/>
+                    </if-empty>
+                </if-compare>
+                <if-compare field-name="country" operator="equals" value="CAN" map-name="parameters">
+                    <if-empty field-name="state" map-name="parameters">
+                        <set field="tempErrorMessage" value="State is missing, and is required for an address in Canada." />
+                        <field-to-list field-name="tempErrorMessage" list-name="error_list"/>
+                    </if-empty>
+                </if-compare>
+            </else>
+        </if-compare>
+        
+        <!-- Create the Home Phone -->
+        <if-not-empty field-name="homeContactCode" map-name="parameters">
+            <call-map-processor in-map-name="parameters" out-map-name="homePhoneContext" processor-name="homeTelecomNumber" xml-resource="org/ofbiz/sfa/ContactMechMapProcs.xml"/>
+        </if-not-empty>
+        
+        <!-- Create the Work Phone -->
+        <if-not-empty field-name="workContactCode" map-name="parameters">
+            <call-map-processor in-map-name="parameters" out-map-name="workPhoneContext" processor-name="workTelecomNumber" xml-resource="org/ofbiz/sfa/ContactMechMapProcs.xml"/>
+        </if-not-empty>
+        
+        <!-- Create the Fax Phone -->
+        <if-not-empty field-name="faxContactCode" map-name="parameters">
+            <call-map-processor in-map-name="parameters" out-map-name="faxPhoneContext" processor-name="faxTelecomNumber" xml-resource="org/ofbiz/sfa/ContactMechMapProcs.xml"/>
+        </if-not-empty>
+        
+        <!-- Check for required Phone -->
+        <if-compare field-name="require_phone" operator="equals" value="true">
+            <if-empty field-name="homeContactCode" map-name="parameters">
+                <if-empty field-name="workContactCode" map-name="parameters">
+                    <call-map-processor in-map-name="parameters" out-map-name="dummymap">
+                        <simple-map-processor name="checkRequiredPhone">
+                            <process field="REQUIRED_PHONE">
+                                <not-empty><fail-property resource="PartyUiLabels" property="PartyContactTelephoneMissing"/></not-empty>
+                            </process>
+                        </simple-map-processor>
+                    </call-map-processor>
+                </if-empty>
+            </if-empty>
+        </if-compare>
+        
+        <!-- Create the email address -->
+        <call-map-processor in-map-name="parameters" out-map-name="emailContext" processor-name="newEmail" xml-resource="org/ofbiz/sfa/ContactMechMapProcs.xml"/>
+        
+        <!-- create the PartyDataSource entry to track where this info came from... -->
+        <make-value entity-name="PartyDataSource" value-name="partyDataSource"/>
+        <set field="partyDataSource.dataSourceId" value="ECOMMERCE_SITE" />
+        <set field="partyDataSource.fromDate" from-field="nowStamp" />
+        <set field="partyDataSource.isCreate" value="Y" />
+        <!-- get the visit from the session to get the visitId -->
+        <session-to-field field-name="visit"/>
+        <set from-field="visit.visitId" field="partyDataSource.visitId"/>
+        
+        <!-- now that everything is validated & setup, check to see if there are errors, then call the services -->
+        <check-errors/>
+        
+        <call-service service-name="createPartyGroup" in-map-name="partyGroupContext">
+            <result-to-field result-name="partyId" map-name="tempMap"/>
+        </call-service>
+        
+        <!-- now that we have the partyId, put it where it needs to go... -->
+        <set field="partyDataSource.partyId" from-field="tempMap.partyId" />
+        <set field="personContext.partyId" from-field="tempMap.partyId" />
+        <set field="partyRoleContext.partyId" from-field="tempMap.partyId" />
+        <set field="addressContext.partyId" from-field="tempMap.partyId" />
+        <set field="homePhoneContext.partyId" from-field="tempMap.partyId" />
+        <set field="workPhoneContext.partyId" from-field="tempMap.partyId" />
+        <set field="faxPhoneContext.partyId" from-field="tempMap.partyId" />
+        <set field="emailContext.partyId" from-field="tempMap.partyId" />
+        
+        <create-value value-name="partyDataSource"/>
+        <call-service service-name="createPartyRole" in-map-name="partyRoleContext"/>
+        
+        <!-- shipping address -->
+        <if-compare field-name="use_address" map-name="parameters" operator="equals" value="false">
+            <!-- address not used, do nothing -->
+            <else>
+                <call-service service-name="createPartyPostalAddress" in-map-name="addressContext">
+                    <result-to-field result-name="contactMechId" map-name="postalAddressPurposeContext"/>
+                </call-service>
+                <set field="postalAddressPurposeContext.partyId" from-field="tempMap.partyId" />
+                <!-- create the shipping location -->
+                <set field="postalAddressPurposeContext.contactMechPurposeTypeId" value="SHIPPING_LOCATION" />
+                <call-service service-name="createPartyContactMechPurpose" in-map-name="postalAddressPurposeContext"/>
+                <!-- also consider this address the general correspondence address -->
+                <set field="postalAddressPurposeContext.contactMechPurposeTypeId" value="GENERAL_LOCATION" />
+                <call-service service-name="createPartyContactMechPurpose" in-map-name="postalAddressPurposeContext"/>
+            </else>
+        </if-compare>
+        
+        <!-- home phone -->
+        <if-not-empty field-name="homeContactCode" map-name="parameters">
+            <call-service service-name="createPartyTelecomNumber" in-map-name="homePhoneContext">
+                <result-to-field result-name="contactMechId" map-name="homePhonePurposeContext"/>
+            </call-service>
+            <set field="homePhonePurposeContext.partyId" from-field="tempMap.partyId" />
+            <set field="homePhonePurposeContext.contactMechPurposeTypeId" value="PHONE_HOME" />
+            <call-service service-name="createPartyContactMechPurpose" in-map-name="homePhonePurposeContext"/>
+        </if-not-empty>
+        
+        <!-- work phone -->
+        <if-not-empty field-name="workContactCode" map-name="parameters">
+            <call-service service-name="createPartyTelecomNumber" in-map-name="workPhoneContext">
+                <result-to-field result-name="contactMechId" map-name="workPhonePurposeContext"/>
+            </call-service>
+            <set field="workPhonePurposeContext.partyId" from-field="tempMap.partyId" />
+            <set field="workPhonePurposeContext.contactMechPurposeTypeId" value="PHONE_WORK" />
+            <call-service service-name="createPartyContactMechPurpose" in-map-name="workPhonePurposeContext"/>
+        </if-not-empty>
+        
+        <!-- fax phone -->
+        <if-not-empty field-name="faxContactCode" map-name="parameters">
+            <call-service service-name="createPartyTelecomNumber" in-map-name="faxPhoneContext">
+                <result-to-field result-name="contactMechId" map-name="faxPhonePurposeContext"/>
+            </call-service>
+            <set field="faxPhonePurposeContext.partyId" from-field="tempMap.partyId" />
+            <set field="faxPhonePurposeContext.contactMechPurposeTypeId" value="FAX_NUMBER" />
+            <call-service service-name="createPartyContactMechPurpose" in-map-name="faxPhonePurposeContext"/>
+        </if-not-empty>
+        
+        <!-- email address -->
+        <if-not-empty field-name="emailAddress" map-name="parameters">
+            <call-service service-name="createPartyEmailAddress" in-map-name="emailContext">
+                <result-to-field result-name="contactMechId" map-name="emailPurposeContext"/>
+            </call-service>
+            <set field="emailPurposeContext.partyId" from-field="tempMap.partyId" />
+            <set field="emailPurposeContext.contactMechPurposeTypeId" value="PRIMARY_EMAIL" />
+            <call-service service-name="createPartyContactMechPurpose" in-map-name="emailPurposeContext"/>
+        </if-not-empty>
+        <!-- set the partyId in the request -->
+        <field-to-request field-name="partyId" map-name="tempMap" request-name="partyId"/>
+        <set field="parameters.partyId" value="${tempMap.partyId}"/>
+    </simple-method>
+</simple-methods>

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml
------------------------------------------------------------------------------
    svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/marketing/script/org/ofbiz/sfa/user/SfaUserEvent.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ofbiz/trunk/applications/marketing/webapp/sfa/WEB-INF/controller.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/webapp/sfa/WEB-INF/controller.xml?rev=651500&r1=651499&r2=651500&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/webapp/sfa/WEB-INF/controller.xml (original)
+++ ofbiz/trunk/applications/marketing/webapp/sfa/WEB-INF/controller.xml Thu Apr 24 23:26:42 2008
@@ -61,6 +61,27 @@
         <response name="success" type="request" value="viewOpportunity"/>
         <response name="error" type="view" value="EditOpportunity"/>
     </request-map>
+
+    <!-- Account Entry Requests -->
+    <request-map uri="FindAccounts">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="FindAccounts"/>
+        <response name="error" type="view" value="FindAccounts"/>
+    </request-map>
+    <request-map uri="NewAccounts">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="NewAccounts"></response>
+    </request-map>
+    <request-map uri="createAccount">
+        <security https="true" auth="true"/>
+        <event type="simple" path="org/ofbiz/sfa/user/SfaUserEvent.xml" invoke="createAccount"/>
+        <response name="success" type="request" value="ViewAccount"/>
+        <response name="error" type="view" value="NewAccounts"/>
+    </request-map>
+    <request-map uri="ViewAccount">
+        <security https="true" auth="true"/>
+        <response name="success" type="view" value="ViewAccount"/>
+    </request-map>
     <!-- end of request mappings -->
 
     <!-- View Mappings -->
@@ -69,5 +90,8 @@
     <view-map name="NewOpportunity" type="screen" page="component://marketing/widget/sfa/OpportunityScreens.xml#NewOpportunity"/>
     <view-map name="viewOpportunity" type="screen" page="component://marketing/widget/sfa/OpportunityScreens.xml#viewOpportunity"/>
     <view-map name="EditOpportunity" type="screen" page="component://marketing/widget/sfa/OpportunityScreens.xml#EditOpportunity"/>
+    <view-map name="FindAccounts" type="screen" page="component://marketing/widget/sfa/AccountScreens.xml#FindAccounts"/>
+    <view-map name="NewAccounts" type="screen" page="component://marketing/widget/sfa/AccountScreens.xml#NewAccounts"/>
+    <view-map name="ViewAccount" type="screen" page="component://marketing/widget/sfa/AccountScreens.xml#ViewAccount"/>
     <!-- end of view mappings -->
 </site-conf>

Added: ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml?rev=651500&view=auto
==============================================================================
--- ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml (added)
+++ ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml Thu Apr 24 23:26:42 2008
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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.
+-->
+
+<forms xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-form.xsd">
+
+    <form name="FindAccounts" type="single" target="FindAccounts"
+        header-row-style="header-row" default-table-style="basic-table">
+        <field name="partyId" title="${uiLabelMap.PartyPartyId}"><text-find size="25" default-option="contains"/></field>
+        <field name="groupName" title="${uiLabelMap.AccountName}"><text-find size="25" default-option="contains"/></field>
+        <field name="searchButton" widget-style="smallSubmit"><submit button-type="button"/></field>
+    </form>
+    <form name="NewAccounts" type="single" target="createAccount" header-row-style="header-row" default-table-style="basic-table">
+        <field position="1" name="groupName" title="${uiLabelMap.AccountName}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text size="30" maxlength="60"/></field>
+        <field position="1" name="numEmployees" title="${uiLabelMap.MarketingEmployees}"><text size="30"/></field>
+        <field position="2" name="tickerSymbol" title="${uiLabelMap.AccountTickerSymbol}"><text size="30"/></field>
+        <field position="1" name="siteName" title="${uiLabelMap.FormFieldTitle_officeSiteName}"><text size="30" maxlength="60"/></field>
+        <field position="2" name="annualRevenue" title="${uiLabelMap.AccountAnnualRevenue}"><text size="30"/></field>
+        <field name="shippingAddressTitle" title="${uiLabelMap.PartyAddressMailingShipping}" title-area-style="group-label"><display description=" " also-hidden="false"/></field>
+        <field name="address1" title="${uiLabelMap.CommonAddress1}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text size="50" maxlength="60"/></field>
+        <field name="address2" title="${uiLabelMap.CommonAddress2}"><text size="50" maxlength="60"/></field>
+        <field position="1" name="city" title="${uiLabelMap.CommonCity}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text size="30" maxlength="60"/></field>
+        <field position="1" name="state" title="${uiLabelMap.CommonState}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required">
+            <drop-down allow-empty="true">
+                <entity-options entity-name="Geo" key-field-name="geoId" description="${geoId} - ${geoName}">
+                    <entity-constraint name="geoTypeId" operator="in" value="STATE,PROVINCE"/>
+                    <entity-order-by field-name="geoId"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="postalCode" title="${uiLabelMap.CommonZipPostalCode}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text size="10" maxlength="30"/></field>
+        <field name="country" title="${uiLabelMap.CommonCountry}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required">
+            <drop-down allow-empty="false" no-current-selected-key="${defaultCountryGeoId}">
+                <entity-options entity-name="Geo" key-field-name="geoId" description="${geoId}: ${geoName}">
+                    <entity-constraint name="geoTypeId" value="COUNTRY"/>
+                    <entity-order-by field-name="geoId"/>
+                </entity-options>
+            </drop-down>
+        </field>
+        <field name="addressAllowSol" title="${uiLabelMap.PartyContactAllowSolicitation}?"><drop-down allow-empty="true"><option key="Y" description="${uiLabelMap.CommonY}"/><option key="N" description="${uiLabelMap.CommonN}"/></drop-down></field>
+        <field name="homePhoneTitle" title="${uiLabelMap.PartyHomePhone}" title-area-style="group-label" widget-style="tooltip"><display description="${uiLabelMap.PartyPhoneNumberRequired}" also-hidden="false"/></field>
+        <field name="homeCountryCode" title="${uiLabelMap.PartyCountryCode}"><text size="4" maxlength="10"/></field>
+        <field name="homeAreaCode" title="${uiLabelMap.PartyAreaCode}"><text size="4" maxlength="10"/></field>
+        <field name="homeContactCode" title="${uiLabelMap.PartyPhoneNumber}"><text size="15" maxlength="15"/></field>
+        <field name="homeExtensionCode" title="${uiLabelMap.PartyContactExt}"><text size="6" maxlength="10"/></field>
+        <field name="homeAllowsol" title="${uiLabelMap.PartyContactAllowSolicitation}?"><drop-down allow-empty="true"><option key="Y" description="${uiLabelMap.CommonY}"/><option key="N" description="${uiLabelMap.CommonN}"/></drop-down></field>
+        <field name="workPhoneTitle" title="${uiLabelMap.PartyContactWorkPhoneNumber}" title-area-style="group-label"><display description=" " also-hidden="false"/></field>
+        <field name="workCountryCode" title="${uiLabelMap.PartyCountryCode}"><text size="4" maxlength="10"/></field>
+        <field name="workAreaCode" title="${uiLabelMap.PartyAreaCode}"><text size="4" maxlength="10"/></field>
+        <field name="workContactCode" title="${uiLabelMap.PartyPhoneNumber}"><text size="15" maxlength="15"/></field>
+        <field name="workExtensionCode" title="${uiLabelMap.PartyContactExt}"><text size="6" maxlength="10"/></field>
+        <field name="workAllowsol" title="${uiLabelMap.PartyContactAllowSolicitation}?"><drop-down allow-empty="true"><option key="Y" description="${uiLabelMap.CommonY}"/><option key="N" description="${uiLabelMap.CommonN}"/></drop-down></field>
+        <field name="faxPhoneTitle" title="${uiLabelMap.PartyContactFaxPhoneNumber}" title-area-style="group-label"><display description=" " also-hidden="false"/></field>
+        <field name="faxCountryCode" title="${uiLabelMap.PartyCountryCode}"><text size="4" maxlength="10"/></field>
+        <field name="faxAreaCode" title="${uiLabelMap.PartyAreaCode}"><text size="4" maxlength="10"/></field>
+        <field name="faxContactCode" title="${uiLabelMap.PartyPhoneNumber}"><text size="15" maxlength="15"/></field>
+        <field name="faxExtensionCode" title="${uiLabelMap.PartyContactExt}"><text size="6" maxlength="10"/></field>
+        <field name="faxAllowSol" title="${uiLabelMap.PartyContactAllowSolicitation}?"><drop-down allow-empty="true"><option key="Y" description="${uiLabelMap.CommonY}"/><option key="N" description="${uiLabelMap.CommonN}"/></drop-down></field>
+        <field position="1" name="emailAddress" title="${uiLabelMap.CommonEmail}" tooltip="${uiLabelMap.CommonRequired}" widget-style="required"><text size="50" maxlength="60"/></field>
+        <field position="2" name="emailAllowSol" title="${uiLabelMap.PartyContactAllowSolicitation}?"><drop-down allow-empty="true"><option key="Y" description="${uiLabelMap.CommonY}"/><option key="N" description="${uiLabelMap.CommonN}"/></drop-down></field>
+        <field name="description" title="${uiLabelMap.FormFieldTitle_description}"><textarea/></field>
+        <field name="submitButton" title="${uiLabelMap.CommonSave}" widget-style="smallSubmit"><submit button-type="button"/></field>
+    </form>
+    <form name="ListAccounts" type="list" list-name="listIt" paginate-target="FindAccounts"
+        odd-row-style="alternate-row" default-table-style="basic-table hover-bar" separate-columns="true">
+        <actions>
+            <set field="parameters.noConditionFind" value="N"/>
+            <set field="parameters.roleTypeId" value="ACCOUNT"/>
+            <set field="parameters.partyTypeId" value="PARTY_GROUP"/>
+            <service service-name="performFind" result-map-name="result" result-map-list-name="listIt">
+                <field-map field-name="inputFields" env-name="parameters"/>
+                <field-map field-name="entityName" value="PartyRoleNameDetail"/>
+                <field-map field-name="orderBy" value="groupName"/>
+            </service>
+        </actions>
+        <field name="partyId" title="${uiLabelMap.PartyPartyId}" widget-style="buttontext">
+            <hyperlink target="ViewAccount?partyId=${partyId}" description="${partyId}"/>
+        </field>
+        <field name="groupName" title="${uiLabelMap.AccountName}">
+            <hyperlink target="ViewAccount?partyId=${partyId}" description="${groupName}"/>
+        </field>
+    </form>
+    <form name="AccountDetail" type="single" default-map-name="partyGroup">
+        <auto-fields-entity entity-name="PartyGroup" default-field-type="display"/>
+    </form>
+</forms>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml
------------------------------------------------------------------------------
    svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/marketing/webapp/sfa/accounts/AccountForms.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml?rev=651500&view=auto
==============================================================================
--- ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml (added)
+++ ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml Thu Apr 24 23:26:42 2008
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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.
+-->
+
+<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-screen.xsd">
+    <screen name="FindAccounts">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleFindAccount"/>
+                <set field="headerItem" value="AccountTeams"/>
+                <set field="tabButtonItem" value="findparty"/>
+                <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer" default-value="0"/>
+                <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer" default-value="50"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <container style="screenlet">
+                            <container style="screenlet-title-bar">
+                                <container style="h3">
+                                    <label text="${uiLabelMap.MarketingFindAccounts}"/>
+                                </container>
+                            </container>
+                            <container style="screenlet-body">
+                                <section>
+                                    <widgets>
+                                        <container><link target="NewAccounts" text="${uiLabelMap.CommonCreateNew}" style="buttontext"/></container>
+                                        <include-form name="FindAccounts" location="component://marketing/webapp/sfa/accounts/AccountForms.xml"/>
+                                    </widgets>
+                                </section>
+                            </container>
+                        </container>
+                        <container style="screenlet">
+                            <container style="screenlet-title-bar">
+                                <container style="h3">
+                                    <label text="${uiLabelMap.SfaFindResults}"/>
+                                </container>
+                                <container style="screenlet-body">
+                                    <section>
+                                        <widgets>
+                                            <include-form name="ListAccounts" location="component://marketing/webapp/sfa/accounts/AccountForms.xml"/>
+                                        </widgets>
+                                    </section>
+                                </container>
+                            </container>
+                        </container>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="NewAccounts">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleCreateAccount"/>
+                <set field="headerItem" value="AccountTeams"/>
+                <set field="tabButtonItem" value="findparty"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <container style="screenlet">
+                            <container style="screenlet-title-bar">
+                                <container style="h3">
+                                    <label text="${uiLabelMap.PageTitleCreateAccount}"/>
+                                </container>
+                            </container>
+                            <container style="screenlet-body">
+                                <section>
+                                    <widgets>
+                                        <include-form name="NewAccounts" location="component://marketing/webapp/sfa/accounts/AccountForms.xml"/>
+                                    </widgets>
+                                </section>
+                            </container>
+                        </container>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="ViewAccount">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleAccountSummary"/>
+                <set field="headerItem" value="AccountTeams"/>
+                <set field="tabButtonItem" value="viewAccount"/>
+                <set field="partyId" from-field="parameters.partyId"/>
+                <script location="component://party/webapp/partymgr/WEB-INF/actions/party/getContactMechs.bsh"/>
+                <script location="component://party/webapp/partymgr/WEB-INF/actions/party/getPartyInfo.bsh"/>
+                <entity-one entity-name="PartyGroup" value-name="partyGroup"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonAccountDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <widgets>
+                                <screenlet title="Account Detail Information">
+                                    <include-form name="AccountDetail" location="component://marketing/webapp/sfa/accounts/AccountForms.xml"/>
+                                </screenlet>
+                                <include-screen name="Contact" location="component://party/widget/partymgr/ProfileScreens.xml"/>
+                            </widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+</screens>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml
------------------------------------------------------------------------------
    svn:keywords = "Date Rev Author URL Id"

Propchange: ofbiz/trunk/applications/marketing/widget/sfa/AccountScreens.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ofbiz/trunk/applications/marketing/widget/sfa/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/widget/sfa/CommonScreens.xml?rev=651500&r1=651499&r2=651500&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/widget/sfa/CommonScreens.xml (original)
+++ ofbiz/trunk/applications/marketing/widget/sfa/CommonScreens.xml Thu Apr 24 23:26:42 2008
@@ -25,6 +25,9 @@
             <actions>
                 <!-- base/top/specific map first, then more common map added for shared labels -->
                 <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>
+                <property-map resource="AccountingUiLabels" map-name="uiLabelMap" global="true"/>
+                <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
+                <property-map resource="OrderUiLabels" map-name="uiLabelMap" global="true"/>
                 <property-map resource="MarketingUiLabels" map-name="uiLabelMap" global="true"/>
                 <set field="layoutSettings.companyName" from-field="uiLabelMap.SfaCompanyName" global="true"/>
                 <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.MarketingCompanySubtitle" global="true"/>
@@ -102,6 +105,32 @@
                                 <section>
                                     <widgets>                                        
                                         <include-menu name="OpportunityTabBar" location="component://marketing/widget/sfa/SfaMenus.xml"/>
+                                    </widgets>
+                                </section>  
+                                <decorator-section-include name="body"/>
+                            </widgets>
+                            <fail-widgets>
+                                <label style="h3">${uiLabelMap.ProjectMgrViewPermissionError}</label>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="CommonAccountDecorator">
+        <section>
+            <actions>
+                <set field="partyId" from-field="parameters.partyId"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <widgets>
+                                <section>
+                                    <widgets>                                        
+                                        <include-menu name="AccountTabBar" location="component://marketing/widget/sfa/SfaMenus.xml"/>
                                     </widgets>
                                 </section>  
                                 <decorator-section-include name="body"/>

Modified: ofbiz/trunk/applications/marketing/widget/sfa/SfaMenus.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/marketing/widget/sfa/SfaMenus.xml?rev=651500&r1=651499&r2=651500&view=diff
==============================================================================
--- ofbiz/trunk/applications/marketing/widget/sfa/SfaMenus.xml (original)
+++ ofbiz/trunk/applications/marketing/widget/sfa/SfaMenus.xml Thu Apr 24 23:26:42 2008
@@ -20,8 +20,8 @@
 <menus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-menu.xsd">
     <menu name="SfaAppBar" default-menu-item-name="main" id="app-navigation" type="simple" title="${uiLabelMap.SfaManagerApplication}"
         default-selected-style="selected" menu-container-style="button-bar tab-bar">
-        <menu-item name="Main" title="${uiLabelMap.MarketingMainPage}"><link target=""/></menu-item>
-        <menu-item name="Accounts" title="${uiLabelMap.SfaAcccounts}"><link target=""/></menu-item>
+        <menu-item name="Main" title="${uiLabelMap.MarketingMainPage}"><link target="main"/></menu-item>
+        <menu-item name="Accounts" title="${uiLabelMap.SfaAcccounts}"><link target="FindAccounts"/></menu-item>
         <menu-item name="Contacts" title="${uiLabelMap.SfaContacts}"><link target=""/></menu-item>
         <menu-item name="Leads" title="${uiLabelMap.SfaLeads}"><link target=""/></menu-item>
         <menu-item name="Competitors" title="${uiLabelMap.SfaCompetitors}"><link target=""/></menu-item>
@@ -45,5 +45,9 @@
         <menu-item name="editOpportunity" title="${uiLabelMap.SfaEditOpportunity}">
             <link target="EditOpportunity?salesOpportunityId=${parameters.salesOpportunityId}"/>
         </menu-item>
+    </menu>
+    <menu name="AccountTabBar" type="simple" menu-container-style="button-bar tab-bar" default-selected-style="selected">
+        <menu-item name="viewAccount" title="${uiLabelMap.PageTitleAccountSummary}"><link target="ViewAccount?partyId=${partyId}"/></menu-item>
+        <menu-item name="editAccount" title="${uiLabelMap.PageTitleEditAccount}"><link target=""/></menu-item>
     </menu>
 </menus>