Hi Chatree,

I am looking into this issue now (I will let you know soon); thank you for the 
bug report.

Jacopo

On Mar 30, 2012, at 5:51 AM, Chatree Srichart wrote:

> Hi Jacopo
> 
> I have a problem with this commit.
> 
> On Tue, Mar 27, 2012 at 11:48 PM, <[email protected]> wrote:
> 
>> Author: jacopoc
>> Date: Tue Mar 27 16:48:54 2012
>> New Revision: 1305898
>> 
>> URL: http://svn.apache.org/viewvc?rev=1305898&view=rev
>> Log:
>> OFBIZ-4715 Committed patch from Markus M. May to extend the country
>> specific address formatter to PDF (fo.ftl).
>> 
>> 
>> Added:
>> 
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>>  (with props)
>> 
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>>  (with props)
>> Modified:
>> 
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/companyHeader.fo.ftl
>> 
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/ordercontactinfo.ftl
>> 
>> ofbiz/trunk/applications/order/webapp/ordermgr/quote/quoteReportContactMechs.fo.ftl
>> 
>> ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy
>> 
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.ftl
>> 
>> ofbiz/trunk/applications/party/webapp/partymgr/party/profileblocks/Contact.ftl
>>   ofbiz/trunk/applications/party/widget/partymgr/PartyScreens.xml
>> 
>> Modified:
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/companyHeader.fo.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/order/companyHeader.fo.ftl?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/companyHeader.fo.ftl
>> (original)
>> +++
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/companyHeader.fo.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -26,9 +26,8 @@ under the License.
>>    <fo:block>${companyName}</fo:block>
>>    <#if postalAddress?exists>
>>        <#if postalAddress?has_content>
>> -            <fo:block>${postalAddress.address1?if_exists}</fo:block>
>> -            <#if
>> postalAddress.address2?has_content><fo:block>${postalAddress.address2?if_exists}</fo:block></#if>
>> -            <fo:block>${postalAddress.city?if_exists},
>> ${stateProvinceAbbr?if_exists} ${postalAddress.postalCode?if_exists},
>> ${countryName?if_exists}</fo:block>
>> +            ${setRequestAttribute("postalAddress", postalAddress)}
>> +
>> ${screens.render("component://party/widget/partymgr/PartyScreens.xml#postalAddressPdfFormatter")}
>>        </#if>
>>    <#else>
>>        <fo:block>${uiLabelMap.CommonNoPostalAddress}</fo:block>
>> 
> 
> Calling setRequestAttribute template method will work fine
> in companyHeader.fo.ftl if I print a PDF report in a web page which has a
> request object but it will not work if I send the PDF report through email
> using a service because there is NOT a request object in a service.
> 
> 
>> 
>> Modified:
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/ordercontactinfo.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/order/ordercontactinfo.ftl?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/ordercontactinfo.ftl
>> (original)
>> +++
>> ofbiz/trunk/applications/order/webapp/ordermgr/order/ordercontactinfo.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -117,21 +117,8 @@ under the License.
>>                <#assign postalAddress =
>> orderContactMechValueMap.postalAddress>
>>                <#if postalAddress?has_content>
>>                  <div>
>> -                    <#if postalAddress.toName?has_content><span
>> class="label">${uiLabelMap.CommonTo}</span> ${postalAddress.toName}<br
>> /></#if>
>> -                    <#if postalAddress.attnName?has_content><span
>> class="label">${uiLabelMap.CommonAttn}</span> ${postalAddress.attnName}<br
>> /></#if>
>> -                    ${postalAddress.address1}<br />
>> -                    <#if
>> postalAddress.address2?has_content>${postalAddress.address2}<br /></#if>
>> -                    ${postalAddress.city?if_exists}<#if
>> postalAddress.stateProvinceGeoId?has_content>,
>> ${postalAddress.stateProvinceGeoId} </#if>
>> -                    ${postalAddress.postalCode?if_exists}<br />
>> -                    ${postalAddress.countryGeoId?if_exists}<br />
>> -                    <#if !postalAddress.countryGeoId?exists ||
>> postalAddress.countryGeoId == "USA">
>> -                      <#assign addr1 = postalAddress.address1?if_exists>
>> -                      <#if (addr1.indexOf(" ") > 0)>
>> -                        <#assign addressNum = addr1.substring(0,
>> addr1.indexOf(" "))>
>> -                        <#assign addressOther =
>> addr1.substring(addr1.indexOf(" ")+1)>
>> -                        <a target="_blank"
>> href="${uiLabelMap.CommonLookupWhitepagesAddressLink}"
>> class="buttontext">${uiLabelMap.CommonLookupWhitepages}</a>
>> -                      </#if>
>> -                    </#if>
>> +                     ${setRequestAttribute("postalAddress",
>> postalAddress)}
>> +
>> ${screens.render("component://party/widget/partymgr/PartyScreens.xml#postalAddressHtmlFormatter")}
>>                  </div>
>>                  <@updateOrderContactMech
>> orderHeader=orderHeader?if_exists
>> contactMechTypeId=contactMech.contactMechTypeId
>> contactMechList=postalContactMechList?if_exists
>> contactMechPurposeTypeId=contactMechPurpose.contactMechPurposeTypeId?if_exists
>> contactMechAddress=postalAddress?if_exists />
>>                </#if>
>> 
>> Modified:
>> ofbiz/trunk/applications/order/webapp/ordermgr/quote/quoteReportContactMechs.fo.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/order/webapp/ordermgr/quote/quoteReportContactMechs.fo.ftl?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/order/webapp/ordermgr/quote/quoteReportContactMechs.fo.ftl
>> (original)
>> +++
>> ofbiz/trunk/applications/order/webapp/ordermgr/quote/quoteReportContactMechs.fo.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -39,9 +39,8 @@ under the License.
>>                    <fo:table-cell>
>>                        <fo:block>
>>                            <#if toPostalAddress?exists>
>> -
>> <fo:block>${toPostalAddress.address1?if_exists}</fo:block>
>> -
>> <fo:block>${toPostalAddress.address2?if_exists}</fo:block>
>> -
>> <fo:block>${toPostalAddress.city?if_exists}<#if
>> toPostalAddress.stateProvinceGeoId?has_content>,
>> ${toPostalAddress.stateProvinceGeoId}</#if>
>> ${toPostalAddress.postalCode?if_exists}</fo:block>
>> +                              ${setRequestAttribute("postalAddress",
>> toPostalAddress)}
>> +
>> ${screens.render("component://party/widget/partymgr/PartyScreens.xml#postalAddressPdfFormatter")}
>>                            </#if>
>>                        </fo:block>
>>                    </fo:table-cell>
>> 
>> Modified:
>> ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy
>> (original)
>> +++
>> ofbiz/trunk/applications/party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy
>> Tue Mar 27 16:48:54 2012
>> @@ -17,17 +17,21 @@
>> * under the License.
>> */
>> 
>> -postalAddress = request.getAttribute("postalAddress");
>> +postalAddressForTemplate = request.getAttribute("postalAddress");
>> +postalAddressTemplateSuffix = context.postalAddressTemplateSuffix;
>> 
>> -if (postalAddress && postalAddress.countryGeoId) {
>> -    postalAddressTemplate = "PostalAddress_" + postalAddress.countryGeoId
>> + ".ftl";
>> +if (!postalAddressTemplateSuffix) {
>> +  postalAddressTemplateSuffix = ".ftl";
>> +}
>> +
>> +if (postalAddressForTemplate && postalAddressForTemplate.countryGeoId) {
>> +    postalAddressTemplate = "PostalAddress_" +
>> postalAddressForTemplate.countryGeoId + postalAddressTemplateSuffix;
>>    file = new File(addressTemplatePath + postalAddressTemplate);
>> -    if (file.exists()) {
>> +    if (file.exists()) {
>>        context.postalAddressTemplate = postalAddressTemplate;
>> +    } else {
>> +        context.postalAddressTemplate = "PostalAddress" +
>> postalAddressTemplateSuffix;
>>    }
>> }
>> -if (!context.postalAddressTemplate) {
>> -    context.postalAddressTemplate = "PostalAddress.ftl";
>> -}
>> 
>> -context.postalAddress = postalAddress;
>> +context.postalAddress = postalAddressForTemplate;
>> 
>> Added:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl?rev=1305898&view=auto
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> (added)
>> +++
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -0,0 +1,27 @@
>> +<#--
>> +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.
>> +-->
>> +  <fo:block>${postalAddress.address1?if_exists}</fo:block>
>> +  <#if
>> postalAddress.address2?has_content><fo:block>${postalAddress.address2?if_exists}</fo:block></#if>
>> +  <fo:block>${postalAddress.city?if_exists}<#if
>> postalAddress.stateProvinceGeoId?has_content>,
>> ${postalAddress.stateProvinceGeoId}</#if>
>> ${postalAddress.postalCode?if_exists}</fo:block>
>> +  <#if postalAddress.countryGeoId?has_content>
>> +    <fo:block>
>> +         <#assign country =
>> postalAddress.getRelatedOneCache("CountryGeo")>
>> +         ${country.get("geoName", locale)?default(country.geoId)}
>> +    </fo:block>
>> +  </#if>
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:eol-style = native
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:keywords = Date Rev Author URL Id
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:mime-type = text/plain
>> 
>> Added:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl?rev=1305898&view=auto
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> (added)
>> +++
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -0,0 +1,27 @@
>> +<#--
>> +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.
>> +-->
>> +  <fo:block>${postalAddress.address1?if_exists}</fo:block>
>> +  <#if
>> postalAddress.address2?has_content><fo:block>${postalAddress.address2?if_exists}</fo:block></#if>
>> +  <fo:block>${postalAddress.city?if_exists}<#if
>> postalAddress.stateProvinceGeoId?has_content>,
>> ${postalAddress.stateProvinceGeoId}</#if>
>> ${postalAddress.postalCode?if_exists}</fo:block>
>> +  <#if postalAddress.countryGeoId?has_content>
>> +    <fo:block>
>> +         <#assign country =
>> postalAddress.getRelatedOneCache("CountryGeo")>
>> +         ${country.get("geoName", locale)?default(country.geoId)}
>> +    </fo:block>
>> +  </#if>
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:eol-style = native
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:keywords = Date Rev Author URL Id
>> 
>> Propchange:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.fo.ftl
>> 
>> ------------------------------------------------------------------------------
>>   svn:mime-type = text/plain
>> 
>> Modified:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.ftl?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.ftl
>> (original)
>> +++
>> ofbiz/trunk/applications/party/webapp/partymgr/party/contactmechtemplates/PostalAddress_USA.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -32,9 +32,12 @@ under the License.
>>         ${country.get("geoName", locale)?default(country.geoId)}
>>       </#if>
>>  </div>
>> +  <#if !postalAddress.countryGeoId?has_content>
>>    <#assign addr1 = postalAddress.address1?if_exists>
>>    <#if addr1?has_content && (addr1.indexOf(" ") > 0)>
>>         <#assign addressNum = addr1.substring(0, addr1.indexOf(" "))>
>>         <#assign addressOther = addr1.substring(addr1.indexOf(" ")+1)>
>>         <a target="_blank"
>> href="${uiLabelMap.CommonLookupWhitepagesAddressLink}"
>> class="buttontext">${uiLabelMap.CommonLookupWhitepages}</a>
>>    </#if>
>> +  </#if>
>> +
>> 
>> Modified:
>> ofbiz/trunk/applications/party/webapp/partymgr/party/profileblocks/Contact.ftl
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/webapp/partymgr/party/profileblocks/Contact.ftl?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> ---
>> ofbiz/trunk/applications/party/webapp/partymgr/party/profileblocks/Contact.ftl
>> (original)
>> +++
>> ofbiz/trunk/applications/party/webapp/partymgr/party/profileblocks/Contact.ftl
>> Tue Mar 27 16:48:54 2012
>> @@ -60,10 +60,10 @@ under the License.
>>                  <#if contactMechMap.postalAddress?has_content>
>>                       <#assign postalAddress =
>> contactMechMap.postalAddress>
>>                       ${setRequestAttribute("postalAddress",
>> postalAddress)}
>> -
>> ${screens.render("component://party/widget/partymgr/PartyScreens.xml#postalAddress")}
>> +
>> ${screens.render("component://party/widget/partymgr/PartyScreens.xml#postalAddressHtmlFormatter")}
>>                    <#if postalAddress.geoPointId?has_content>
>>                      <#if contactMechPurposeType?has_content>
>> -                        <#assign popUptitle =
>> contactMechPurposeType.get("description",locale) +
>> uiLabelMap.CommonGeoLocation>
>> +                        <#assign popUptitle =
>> contactMechPurposeType.get("description", locale) +
>> uiLabelMap.CommonGeoLocation>
>>                      </#if>
>>                      <a
>> href="javascript:popUp('<@ofbizUrl>PartyGeoLocation?geoPointId=${postalAddress.geoPointId}&partyId=${partyId}</@ofbizUrl>',
>> '${popUptitle?if_exists}', '450', '550')"
>> class="buttontext">${uiLabelMap.CommonGeoLocation}</a>
>>                    </#if>
>> 
>> Modified: ofbiz/trunk/applications/party/widget/partymgr/PartyScreens.xml
>> URL:
>> http://svn.apache.org/viewvc/ofbiz/trunk/applications/party/widget/partymgr/PartyScreens.xml?rev=1305898&r1=1305897&r2=1305898&view=diff
>> 
>> ==============================================================================
>> --- ofbiz/trunk/applications/party/widget/partymgr/PartyScreens.xml
>> (original)
>> +++ ofbiz/trunk/applications/party/widget/partymgr/PartyScreens.xml Tue
>> Mar 27 16:48:54 2012
>> @@ -1254,12 +1254,29 @@ under the License.
>>            </widgets>
>>        </section>
>>    </screen>
>> -    <screen name="postalAddress">
>> +    <screen name="postalAddressHtmlFormatter">
>>        <section>
>>            <actions>
>>                <property-map resource="PartyUiLabels"
>> map-name="uiLabelMap" global="true"/>
>> +                <set field="postalAddressTemplateSuffix" value=".ftl"/>
>> +                <set field="addressTemplatePath"
>> value="${sys:getProperty('ofbiz.home')}/applications/party/webapp/partymgr/party/contactmechtemplates/"/>
>> +                <script
>> location="component://party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy"/>
>> +            </actions>
>> +            <widgets>
>> +                <platform-specific>
>> +                    <html>
>> +                        <html-template
>> location="component://party/webapp/partymgr/party/contactmechtemplates/${postalAddressTemplate}"/>
>> +                    </html>
>> +                </platform-specific>
>> +            </widgets>
>> +        </section>
>> +    </screen>
>> +    <screen name="postalAddressPdfFormatter">
>> +        <section>
>> +            <actions>
>> +                <property-map resource="PartyUiLabels"
>> map-name="uiLabelMap" global="true"/>
>> +                <set field="postalAddressTemplateSuffix" value=".fo.ftl"/>
>>                <set field="addressTemplatePath"
>> value="${sys:getProperty('ofbiz.home')}/applications/party/webapp/partymgr/party/contactmechtemplates/"/>
>> -                <set field="postalAddress"
>> from-field="parameters.postalAddress"/>
>>                <script
>> location="component://party/webapp/partymgr/WEB-INF/actions/party/GetPostalAddressTemplate.groovy"/>
>>            </actions>
>>            <widgets>
>> 
>> 
>> 
> Regards,
> Chatree Srichart

Reply via email to