Modified: ofbiz/trunk/plugins/ecommerce/widget/blog/BlogScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/plugins/ecommerce/widget/blog/BlogScreens.xml?rev=1781219&r1=1781218&r2=1781219&view=diff ============================================================================== --- ofbiz/trunk/plugins/ecommerce/widget/blog/BlogScreens.xml (original) +++ ofbiz/trunk/plugins/ecommerce/widget/blog/BlogScreens.xml Wed Feb 1 10:58:46 2017 @@ -1,704 +1,704 @@ -<?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" - xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd"> - - <screen name="CommonBlogTitle"> - <section> - <condition> - <not> - <if-empty field="parameters.blogContentId"/> - </not> - </condition> - <actions> - <entity-one entity-name="Content" value-field="blogContent"> - <field-map field-name="contentId" from-field="parameters.blogContentId"/> - </entity-one> - - <!-- permission fields --> - <set field="crPerm.ownerContentId" from-field="blogContentId"/> - <set field="crPerm.contentOperationId" value="CONTENT_CREATE"/> - <set field="crPerm.contentPurposeTypeId" value="ARTICLE"/> - </actions> - <widgets> - <container style="bloghr"> - <container style="leftjustify"> - <link text="${blogContent.contentName} - ${blogContent.description}" target="MainBlog" style="blogtitle"> - <parameter param-name="blogContentId"/> - </link> - </container> - <container style="rightjustify"> - <section> - <condition> - <if-service-permission service-name="genericContentPermission" main-action="CREATE" context-map="crPerm"/> - </condition> - <widgets> - <link text="${uiLabelMap.CommonAddNew}" target="NewBlogArticle" style="buttontext"> - <parameter param-name="blogContentId"/> - </link> - </widgets> - </section> - <link target="ViewBlogRss" target-window="_blank" link-type="anchor"> - <parameter param-name="blogContentId" from-field="blogContent.contentId"/> - <parameter param-name="mainLinkReq" value="MainBlog"/> - <parameter param-name="entryLinkReq" value="ViewBlogArticle"/> - <image src="/images/feed-icon-14x14.png" id="feedIcon" height="12px"/> - </link> - </container> - </container> - </widgets> - <fail-widgets> - <label text="${uiLabelMap.EcommerceBlogContentNotFound}" style="blogtitle"/> - </fail-widgets> - </section> - </screen> - - <screen name="MainBlog"> - <section> - <actions> - <set field="MainColumnStyle" value="nocolumns"/> - <set field="blogContentId" from-field="parameters.blogContentId"/> - <entity-condition entity-name="ContentAssocViewTo" use-cache="false" list="blogList"> - <condition-list combine="and"> - <condition-expr field-name="contentIdStart" operator="equals" from-field="blogContentId"/> - <condition-expr field-name="caContentAssocTypeId" operator="equals" value="PUBLISH_LINK"/> - <condition-expr field-name="caThruDate" operator="equals" value=""/> - <condition-expr field-name="statusId" operator="equals" value="CTNT_PUBLISHED"/> - </condition-list> - <order-by field-name="caFromDate DESC"/> - </entity-condition> - - <!-- permission fields --> - <set field="upPerm.contentId" from-field="blogContentId"/> - <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> - <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> - </actions> - <widgets> - <section> - <!-- if viewer has update permission, show all blogs, even those that were preview only --> - <condition> - <if-service-permission service-name="genericContentPermission" main-action="UPDATE" context-map="upPerm"/> - </condition> - <actions> - <service service-name="getOwnedOrPublishedBlogEntries" result-map="result"> - <field-map field-name="contentId" from-field="blogContentId"/> - <field-map field-name="userLogin" from-field="userLogin"/> - </service> - <set field="blogList" from-field="result.blogList" default-value="${blogList}"/> - </actions> - <widgets/> - </section> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <iterate-section list="blogList" entry="blog" paginate="true" paginate-target="MainBlog"> - <section name="firstBlog"> - <condition> - <if-compare field="itemIndex" operator="equals" type="Integer" value="0"/> - </condition> - <widgets> - <container style="blogwrapper"> - <include-menu name="ViewEdit" location="component://ecommerce/widget/blog/BlogMenus.xml"/> - <platform-specific><html><html-template location="component://ecommerce/template/blog/BlogContentAltLink.ftl"/></html></platform-specific> - <!--<link text="${blog.contentName} [${blog.contentId}]" target="ViewBlogArticle" style="blogheader"> - <parameter param-name="contentId" from-field="blog.contentId"/> - <parameter param-name="blogContentId"/> - </link>--> - <!-- - <link text="Latest" target="LatestResponses" > - <parameter param-name="ownerContentId" from-field="blog.ownerContentId"/> - </link> - --> - <container style="blogtext"> - <sub-content map-key="SUMMARY" content-id="${blog.contentId}"/> - </container> - </container> - </widgets> - </section> - <section name="allOtherBlogs"> - <condition> - <if-compare field="itemIndex" operator="greater" type="Integer" value="0"/> - </condition> - <widgets> - <container style="blogwrapper"> - <include-menu name="ViewEdit" location="component://ecommerce/widget/blog/BlogMenus.xml"/> - <!--<label text="${blog.contentName} [${blog.contentId}]" style="blogheader"/>--> - <platform-specific><html><html-template location="component://ecommerce/template/blog/BlogContentAltLink.ftl"/></html></platform-specific> - <!--<link text="${blog.contentName} [${blog.contentId}]" target="ViewBlogArticle" style="blogheader"> - <parameter param-name="contentId" from-field="blog.contentId"/> - <parameter param-name="blogContentId"/> - </link>--> - <!-- - <link text="Latest" target="LatestResponses" > - <parameter param-name="ownerContentId" from-field="blog.ownerContentId"/> - </link> - --> - <container style="blogtext"> - <label text="${blog.description}" style="blogtext"/> - </container> - </container> - </widgets> - </section> - </iterate-section> - </decorator-section> - </decorator-screen> - </widgets> - </section> - </screen> - - <screen name="NewArticle"> - <section> - <actions> - <set field="crPerm.ownerContentId" from-field="parameters.blogContentId"/> - <set field="crPerm.contentOperationId" value="CONTENT_CREATE"/> - <set field="crPerm.contentPurposeTypeId" value="ARTICLE"/> - </actions> - <widgets> - <section> - <condition> - <if-service-permission service-name="genericContentPermission" main-action="CREATE" context-map="crPerm"/> - </condition> - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <include-form name="EditArticle" location="component://content/widget/forum/BlogForms.xml"/> - </decorator-section> - </decorator-screen> - </widgets> - <fail-widgets> - <label text="${uiLabelMap.PageTitleEditBlogArticlePermissionError}"></label> - </fail-widgets> - </section> - </widgets> - </section> - </screen> - - <screen name="EditArticle"> - <section> - <actions> - <set field="blogContentId" from-field="parameters.blogContentId"/> - <set field="upPerm.contentId" from-field="parameters.blogContentId"/> - <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> - <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> - <set field="contentId" from-field="parameters.contentId"/> - </actions> - <widgets> - <section> - <!--condition> - <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> - </condition--> - <actions> - <service service-name="getBlogEntry" result-map="blogEntry" auto-field-map="true"/> - </actions> - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <sub-content content-id="${parameters.contentId}" map-key="IMAGE"/> - <include-form name="EditArticle" location="component://content/widget/forum/BlogForms.xml"/> - </decorator-section> - </decorator-screen> - </widgets> - <fail-widgets> - <label text="${uiLabelMap.PageTitleEditBlogArticlePermissionError}: ${contentId} ${uiLabelMap.ContentBlog}: ${blogContentId}"></label> - </fail-widgets> - </section> - </widgets> - </section> - </screen> - - <screen name="ViewArticle"> - <section> - <actions> - <set field="articleContentId" from-field="parameters.articleContentId" default-value="${parameters.contentId}"/> - <set field="ownerContentId" from-field="parameters.ownerContentId"/> - <set field="blogContentId" from-field="parameters.blogContentId"/> - <entity-one entity-name="Content" value-field="content" use-cache="true"> - <field-map field-name="contentId" from-field="articleContentId"/> - </entity-one> - <set field="enableEdit" value="false"/> - <property-to-field property="root.publish.point.blog" field="webPutPt" resource="blog"/> - <set field="rsp.contentName" value="RE: ${content.contentName}"/> - - <!-- for permission service --> - <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> - <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> - <set field="upPerm.ownerContentId" from-field="ownerContentId"/> - <set field="upPerm.contentId" from-field="articleContentId"/> - </actions> - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <container style="bloghr"> - <container style="leftjustify"> - <label text="${content.contentName}: ${content.description}" style="blogtitle"/> - </container> - <section> - <condition> - <if-service-permission service-name="genericContentPermission" main-action="UPDATE" context-map="upPerm"/> - </condition> - <widgets> - <container style="rightjustify"> - <link text="${uiLabelMap.CommonEdit}" target="EditBlogArticle" style="buttontext"> - <parameter param-name="contentId" from-field="articleContentId"/> - <parameter param-name="blogContentId"/> - </link> - </container> - </widgets> - </section> - </container> - <container style="blogcontentwrapper"> - <container style="responsetext"> - <label text="${uiLabelMap.EcommerceBlogPostedOn}: ${content.createdDate}" style="responsetext"/> - </container> - <content content-id="${articleContentId}"/> - </container> - - <include-screen name="BlogResponses"/> - <!-- - <link text="Latest" target="LatestResponses" > - <parameter param-name="ownerContentId" from-field="webPubPt"/> - </link> - --> - <include-screen name="AddBlogResponse"/> - </decorator-section> - </decorator-screen> - </widgets> - </section> - </screen> - - <screen name="ViewResponse"> - <section> - <actions> - <set field="contentId" from-field="parameters.contentId"/> - <set field="responseContentId" from-field="parameters.contentId"/> - <set field="articleContentId" from-field="parameters.articleContentId"/> - <set field="ownerContentId" from-field="parameters.ownerContentId"/> - <set field="blogContentId" from-field="parameters.blogContentId"/> - <entity-one entity-name="Content" value-field="content" use-cache="true"> - <field-map field-name="contentId" from-field="contentId"/> - </entity-one> - <entity-one entity-name="Content" value-field="article"> - <field-map field-name="contentId" from-field="articleContentId"/> - </entity-one> - - <set field="trail" from-field="articleContentId"/> - <set field="enableEdit" value="false"/> - <property-to-field property="root.publish.point.blog" field="webPubPt" resource="blog"/> - <set field="rsp.contentName" value="${content.contentName}"/> - </actions> - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <container style="bloghr"> - <container style="leftjustify"> - <link text="${article.contentName}: ${article.description}" target="ViewBlogArticle" style="blogtitle"> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId"/> - </link> - <label text="${content.contentName}: ${content.description}" style="blogtitle"/> - </container> - <section> - <condition> - <!-- - <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> - --> - <if-empty field="foobar"/> - </condition> - <widgets> - <container style="rightjustify"> - <section> - <condition> - <if-compare field="parameters.edit" operator="not-equals" value="Y"/> - </condition> - <widgets> - <link text="${uiLabelMap.CommonEdit}" target="ViewResponse" style="buttontext"> - <parameter param-name="contentId" from-field="content.contentId"/> - <parameter param-name="ownerContentId" from-field="content.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId"/> - <parameter param-name="edit" value="Y"/> - </link> - </widgets> - <fail-widgets> - <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> - <parameter param-name="contentId" from-field="content.contentId"/> - <parameter param-name="ownerContentId" from-field="content.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId"/> - <parameter param-name="edit" value="N"/> - </link> - </fail-widgets> - </section> - </container> - </widgets> - </section> - </container> - <container style="blogcontentwrapper"> - <content content-id="${contentId}"/> - </container> - - <include-screen name="AddBlogResponse"/> - - <container style="bloghr"> - <label text="${uiLabelMap.ContentForumThread}: " style="blogtitle"/> - </container> - <include-tree name="ResponseTree" location="component://ecommerce/widget/blog/BlogTrees.xml"/> - <section> - <condition> - <or> - <if-compare field="content.statusId" operator="equals" value="CTNT_INITIAL_DRAFT"/> - <and> - <if-entity-permission entity-id="${content.contentId}" entity-name="Content" target-operation="CONTENT_UPDATE"/> - <if-compare field="parameters.edit" operator="equals" value="Y"/> - </and> - </or> - - </condition> - <widgets> - <container style="bloghr"> - <label text="${uiLabelMap.EcommerceEditThisComment}: " style="blogtitle"/> - </container> - <include-screen name="EditBlogResponse"/> - </widgets> - </section> - </decorator-section> - </decorator-screen> - </widgets> - </section> - </screen> - - <screen name="BlogContent"> - <section> - <condition> - <not> - <if-empty field="contentId"/> - </not> - </condition> - <actions/> - - <widgets> - <content content-id="${contentId}"/> - </widgets> - </section> - </screen> - - <screen name="AdminBlog"> - <section> - <actions/> - - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <include-form name="FindBlogContent" location="component://ecommerce/widget/blog/BlogForms.xml"/> - <include-grid name="listFindBlogContent" location="component://ecommerce/widget/blog/BlogForms.xml"/> - </decorator-section> - </decorator-screen> - </widgets> - </section> - </screen> - - <screen name="BlogResponses"> - <section> - <actions> - <entity-condition entity-name="ContentAssocViewTo" use-cache="true" list="responseList"> - <condition-list combine="and"> - <condition-expr field-name="caContentId" operator="equals" value="${articleContentId}"/> - <condition-expr field-name="caContentAssocTypeId" operator="equals" value="RESPONSE"/> - <condition-expr field-name="caThruDate" operator="equals" value=""/> - </condition-list> - <order-by field-name="caFromDate DESC"/> - </entity-condition> - - <set field="viewIndex" from-field="requestParameters.VIEW_INDEX" type="Integer"/> - </actions> - <widgets> - <container style="bloghr"> - <label text="${uiLabelMap.CommonComments}: " style="blogtitle"/> - </container> - <iterate-section list="responseList" entry="rsp" view-size="10"> - <section name="BlogResponses"> - <widgets> - <include-screen name="responseTreeLine"/> - </widgets> - </section> - </iterate-section> - </widgets> - </section> - </screen> - - <screen name="LatestResponses"> - <section> - <actions> - <entity-condition entity-name="ContentAssocDataResourceViewTo" use-cache="false" list="responseList"> - <condition-list combine="and"> - <condition-expr field-name="ownerContentId" operator="equals" value="${parameters.ownerContentId}"/> - <condition-expr field-name="caContentAssocTypeId" operator="equals" value="RESPONSE"/> - <condition-expr field-name="caThruDate" operator="equals" value=""/> - </condition-list> - <order-by field-name="caFromDate DESC"/> - </entity-condition> - - </actions> - <widgets> - <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> - <decorator-section name="body"> - <label text="${uiLabelMap.EcommerceBlogLatestResponses}"/> - <iterate-section list="responseList" entry="rsp"> - <section name="BlogResponses"> - <widgets> - <include-screen name="responseTreeLine"/> - </widgets> - </section> - </iterate-section> - </decorator-section> - </decorator-screen> - </widgets> - </section> - </screen> - - <screen name="responseTreeLine"> - <section> - <widgets> - <section> - <condition> - <if-compare-field field="responseContentId" operator="not-equals" to-field="rsp.contentId"/> - </condition> - <widgets> - <container> - <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewResponse" style="responseheader"> - <parameter param-name="contentId" from-field="rsp.contentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> - <parameter param-name="contentId" from-field="rsp.contentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <container style="responsetext"> - <label text="${rsp.description}" style="responsetext"/> - <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> - </container> - </container> - </widgets> - </section> - <section> - <condition> - <if-compare-field field="responseContentId" operator="equals" to-field="rsp.contentId"/> - </condition> - <widgets> - <container style="responseSelected"> - <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewResponse" style="responseheader"> - <parameter param-name="contentId" from-field="rsp.contentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> - <parameter param-name="contentId" from-field="rsp.contentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="articleContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <container style="responsetext"> - <label text="${rsp.description}" style="responsetext"/> - <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> - </container> - </container> - </widgets> - </section> - </widgets> - </section> - </screen> - - <screen name="blogTreeLine"> - <section> - <widgets> - <container> - <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewBlogArticle" style="responseheader"> - <parameter param-name="articleContentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <link text="${uiLabelMap.EcommerceBlogViewArticle}" target="ViewBlogArticle" style="buttontext"> - <parameter param-name="articleContentId"/> - <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> - <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> - </link> - <container style="responsetext"> - <label text="${rsp.description}" style="responsetext"/> - <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> - </container> - </container> - </widgets> - </section> - </screen> - - <screen name="AddBlogResponse"> - <section> - <widgets> - <section> - <condition> - <if-empty field="parameters.contentId"/> - </condition> - <actions> - <set field="rsp.contentIdFrom" from-field="parameters.articleContentId"/> - </actions> - <widgets/> - </section> - <section> - <condition> - <not> - <if-empty field="parameters.contentId"/> - </not> - </condition> - <actions> - <set field="rsp.contentIdFrom" from-field="parameters.contentId"/> - </actions> - <widgets/> - </section> - <section> - <actions> - <set field="rsp.contentTypeId" value="DOCUMENT"/> - <set field="rsp.contentAssocTypeId" value="RESPONSE"/> - <set field="rsp.dataResourceTypeId" value="ELECTRONIC_TEXT"/> - <set field="rsp.contentOperationId" value="CONTENT_CREATE"/> - <set field="rsp.contentPurposeTypeId" value="RESPONSE"/> - <set field="rsp.articleContentId" from-field="articleContentId"/> - <set field="rsp.ownerContentId" from-field="content.contentId"/> - <set field="rsp.blogContentId" from-field="parameters.blogContentId"/> - <set field="useRequestParameters" value="false" type="Boolean"/> - - <!-- used for permission check --> - <set field="contentPurposeTypeId" value="ARTICLE"/> - <set field="contentOperationId" value="CONTENT_RESPOND"/> - <set field="ownerContentId" from-field="content.contentId"/> - </actions> - <widgets> - <container style="bloghr"> - <label text="${uiLabelMap.CommonAdd} ${uiLabelMap.CommonComment} ${content.contentId}: " style="blogtitle"/> - <section> - <condition> - <if-service-permission service-name="genericContentPermission" main-action="CREATE"/> - </condition> - - <actions> - <set field="displayForm" value="Y"/> - </actions> - <widgets/> - <fail-widgets> - <label text="${uiLabelMap.EcommerceBlogPostComments}"/> - </fail-widgets> - </section> - </container> - <section> - <condition> - <if-compare field="displayForm" operator="equals" value="Y"/> - </condition> - <widgets> - <container style="blogcontentwrapper"> - <include-form name="AddBlogResponse" location="component://ecommerce/widget/blog/BlogForms.xml"/> - </container> - </widgets> - </section> - </widgets> - </section> - </widgets> - </section> - </screen> - - <screen name="EditBlogResponse"> - <section> - <actions> - <set field="rsp.contentPurposeTypeId" value="RESPONSE"/> - <set field="rsp.contentOperationId" value="CONTENT_UPDATE"/> - <set field="rsp.ownerContentId" from-field="parameters.ownerContentId"/> - <set field="rsp.blogContentId" from-field="parameters.blogContentId"/> - - <!-- permission fields --> - <set field="upPerm.ownerContentId" from-field="parameters.ownerContentId"/> - <set field="upPerm.contentId" from-field="parameters.contentId"/> - <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> - <set field="upPerm.contentPurposeTypeId" value="RESPONSE"/> - </actions> - <widgets> - <section> - <!-- - <condition> - <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> - </condition> - --> - <actions> - <set field="rsp.articleContentId" from-field="articleContentId"/> - <entity-one entity-name="DataResource" value-field="dataResource" use-cache="false"> - <field-map field-name="dataResourceId" from-field="content.dataResourceId"/> - </entity-one> - <entity-one entity-name="ElectronicText" value-field="electronicText" use-cache="false"> - <field-map field-name="dataResourceId" from-field="content.dataResourceId"/> - </entity-one> - </actions> - <widgets> - <container style="blogcontentwrapper"> - <include-form name="EditBlogResponse" location="component://ecommerce/widget/blog/BlogForms.xml"/> - </container> - </widgets> - <fail-widgets> - <label text="${uiLabelMap.EcommerceBlogEditComments}"/> - </fail-widgets> - </section> - </widgets> - </section> - </screen> - - <!-- Column Included Screens --> - <screen name="blogs"> - <section> - <actions> - <entity-condition entity-name="ContentAssocViewTo" list="blogs" use-cache="true"> - <condition-list combine="and"> - <condition-expr field-name="contentIdStart" operator="equals" value="BLOGROOT"/> - <condition-expr field-name="caContentAssocTypeId" operator="equals" value="SUB_CONTENT"/> - <condition-list combine="or"> - <condition-expr field-name="caFromDate" operator="equals" from-field="null"/> - <condition-expr field-name="caFromDate" operator="less-equals" from-field="nowTimestamp"/> - </condition-list> - <condition-list combine="or"> - <condition-expr field-name="caThruDate" operator="equals" from-field="null"/> - <condition-expr field-name="caThruDate" operator="greater-equals" from-field="nowTimestamp"/> - </condition-list> - </condition-list> - <order-by field-name="contentName"/> - </entity-condition> - </actions> - <widgets> - <platform-specific> - <html> - <html-template location="component://ecommerce/template/blog/Blogs.ftl"/> - - </html> - </platform-specific> - </widgets> - </section> - </screen> -</screens> - - +<?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" + xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd"> + + <screen name="CommonBlogTitle"> + <section> + <condition> + <not> + <if-empty field="parameters.blogContentId"/> + </not> + </condition> + <actions> + <entity-one entity-name="Content" value-field="blogContent"> + <field-map field-name="contentId" from-field="parameters.blogContentId"/> + </entity-one> + + <!-- permission fields --> + <set field="crPerm.ownerContentId" from-field="blogContentId"/> + <set field="crPerm.contentOperationId" value="CONTENT_CREATE"/> + <set field="crPerm.contentPurposeTypeId" value="ARTICLE"/> + </actions> + <widgets> + <container style="bloghr"> + <container style="leftjustify"> + <link text="${blogContent.contentName} - ${blogContent.description}" target="MainBlog" style="blogtitle"> + <parameter param-name="blogContentId"/> + </link> + </container> + <container style="rightjustify"> + <section> + <condition> + <if-service-permission service-name="genericContentPermission" main-action="CREATE" context-map="crPerm"/> + </condition> + <widgets> + <link text="${uiLabelMap.CommonAddNew}" target="NewBlogArticle" style="buttontext"> + <parameter param-name="blogContentId"/> + </link> + </widgets> + </section> + <link target="ViewBlogRss" target-window="_blank" link-type="anchor"> + <parameter param-name="blogContentId" from-field="blogContent.contentId"/> + <parameter param-name="mainLinkReq" value="MainBlog"/> + <parameter param-name="entryLinkReq" value="ViewBlogArticle"/> + <image src="/images/feed-icon-14x14.png" id="feedIcon" height="12px"/> + </link> + </container> + </container> + </widgets> + <fail-widgets> + <label text="${uiLabelMap.EcommerceBlogContentNotFound}" style="blogtitle"/> + </fail-widgets> + </section> + </screen> + + <screen name="MainBlog"> + <section> + <actions> + <set field="MainColumnStyle" value="nocolumns"/> + <set field="blogContentId" from-field="parameters.blogContentId"/> + <entity-condition entity-name="ContentAssocViewTo" use-cache="false" list="blogList"> + <condition-list combine="and"> + <condition-expr field-name="contentIdStart" operator="equals" from-field="blogContentId"/> + <condition-expr field-name="caContentAssocTypeId" operator="equals" value="PUBLISH_LINK"/> + <condition-expr field-name="caThruDate" operator="equals" value=""/> + <condition-expr field-name="statusId" operator="equals" value="CTNT_PUBLISHED"/> + </condition-list> + <order-by field-name="caFromDate DESC"/> + </entity-condition> + + <!-- permission fields --> + <set field="upPerm.contentId" from-field="blogContentId"/> + <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> + <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> + </actions> + <widgets> + <section> + <!-- if viewer has update permission, show all blogs, even those that were preview only --> + <condition> + <if-service-permission service-name="genericContentPermission" main-action="UPDATE" context-map="upPerm"/> + </condition> + <actions> + <service service-name="getOwnedOrPublishedBlogEntries" result-map="result"> + <field-map field-name="contentId" from-field="blogContentId"/> + <field-map field-name="userLogin" from-field="userLogin"/> + </service> + <set field="blogList" from-field="result.blogList" default-value="${blogList}"/> + </actions> + <widgets/> + </section> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <iterate-section list="blogList" entry="blog" paginate="true" paginate-target="MainBlog"> + <section name="firstBlog"> + <condition> + <if-compare field="itemIndex" operator="equals" type="Integer" value="0"/> + </condition> + <widgets> + <container style="blogwrapper"> + <include-menu name="ViewEdit" location="component://ecommerce/widget/blog/BlogMenus.xml"/> + <platform-specific><html><html-template location="component://ecommerce/template/blog/BlogContentAltLink.ftl"/></html></platform-specific> + <!--<link text="${blog.contentName} [${blog.contentId}]" target="ViewBlogArticle" style="blogheader"> + <parameter param-name="contentId" from-field="blog.contentId"/> + <parameter param-name="blogContentId"/> + </link>--> + <!-- + <link text="Latest" target="LatestResponses" > + <parameter param-name="ownerContentId" from-field="blog.ownerContentId"/> + </link> + --> + <container style="blogtext"> + <sub-content map-key="SUMMARY" content-id="${blog.contentId}"/> + </container> + </container> + </widgets> + </section> + <section name="allOtherBlogs"> + <condition> + <if-compare field="itemIndex" operator="greater" type="Integer" value="0"/> + </condition> + <widgets> + <container style="blogwrapper"> + <include-menu name="ViewEdit" location="component://ecommerce/widget/blog/BlogMenus.xml"/> + <!--<label text="${blog.contentName} [${blog.contentId}]" style="blogheader"/>--> + <platform-specific><html><html-template location="component://ecommerce/template/blog/BlogContentAltLink.ftl"/></html></platform-specific> + <!--<link text="${blog.contentName} [${blog.contentId}]" target="ViewBlogArticle" style="blogheader"> + <parameter param-name="contentId" from-field="blog.contentId"/> + <parameter param-name="blogContentId"/> + </link>--> + <!-- + <link text="Latest" target="LatestResponses" > + <parameter param-name="ownerContentId" from-field="blog.ownerContentId"/> + </link> + --> + <container style="blogtext"> + <label text="${blog.description}" style="blogtext"/> + </container> + </container> + </widgets> + </section> + </iterate-section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="NewArticle"> + <section> + <actions> + <set field="crPerm.ownerContentId" from-field="parameters.blogContentId"/> + <set field="crPerm.contentOperationId" value="CONTENT_CREATE"/> + <set field="crPerm.contentPurposeTypeId" value="ARTICLE"/> + </actions> + <widgets> + <section> + <condition> + <if-service-permission service-name="genericContentPermission" main-action="CREATE" context-map="crPerm"/> + </condition> + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <include-form name="EditArticle" location="component://content/widget/forum/BlogForms.xml"/> + </decorator-section> + </decorator-screen> + </widgets> + <fail-widgets> + <label text="${uiLabelMap.PageTitleEditBlogArticlePermissionError}"></label> + </fail-widgets> + </section> + </widgets> + </section> + </screen> + + <screen name="EditArticle"> + <section> + <actions> + <set field="blogContentId" from-field="parameters.blogContentId"/> + <set field="upPerm.contentId" from-field="parameters.blogContentId"/> + <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> + <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> + <set field="contentId" from-field="parameters.contentId"/> + </actions> + <widgets> + <section> + <!--condition> + <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> + </condition--> + <actions> + <service service-name="getBlogEntry" result-map="blogEntry" auto-field-map="true"/> + </actions> + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <sub-content content-id="${parameters.contentId}" map-key="IMAGE"/> + <include-form name="EditArticle" location="component://content/widget/forum/BlogForms.xml"/> + </decorator-section> + </decorator-screen> + </widgets> + <fail-widgets> + <label text="${uiLabelMap.PageTitleEditBlogArticlePermissionError}: ${contentId} ${uiLabelMap.ContentBlog}: ${blogContentId}"></label> + </fail-widgets> + </section> + </widgets> + </section> + </screen> + + <screen name="ViewArticle"> + <section> + <actions> + <set field="articleContentId" from-field="parameters.articleContentId" default-value="${parameters.contentId}"/> + <set field="ownerContentId" from-field="parameters.ownerContentId"/> + <set field="blogContentId" from-field="parameters.blogContentId"/> + <entity-one entity-name="Content" value-field="content" use-cache="true"> + <field-map field-name="contentId" from-field="articleContentId"/> + </entity-one> + <set field="enableEdit" value="false"/> + <property-to-field property="root.publish.point.blog" field="webPutPt" resource="blog"/> + <set field="rsp.contentName" value="RE: ${content.contentName}"/> + + <!-- for permission service --> + <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> + <set field="upPerm.contentPurposeTypeId" value="ARTICLE"/> + <set field="upPerm.ownerContentId" from-field="ownerContentId"/> + <set field="upPerm.contentId" from-field="articleContentId"/> + </actions> + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <container style="bloghr"> + <container style="leftjustify"> + <label text="${content.contentName}: ${content.description}" style="blogtitle"/> + </container> + <section> + <condition> + <if-service-permission service-name="genericContentPermission" main-action="UPDATE" context-map="upPerm"/> + </condition> + <widgets> + <container style="rightjustify"> + <link text="${uiLabelMap.CommonEdit}" target="EditBlogArticle" style="buttontext"> + <parameter param-name="contentId" from-field="articleContentId"/> + <parameter param-name="blogContentId"/> + </link> + </container> + </widgets> + </section> + </container> + <container style="blogcontentwrapper"> + <container style="responsetext"> + <label text="${uiLabelMap.EcommerceBlogPostedOn}: ${content.createdDate}" style="responsetext"/> + </container> + <content content-id="${articleContentId}"/> + </container> + + <include-screen name="BlogResponses"/> + <!-- + <link text="Latest" target="LatestResponses" > + <parameter param-name="ownerContentId" from-field="webPubPt"/> + </link> + --> + <include-screen name="AddBlogResponse"/> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="ViewResponse"> + <section> + <actions> + <set field="contentId" from-field="parameters.contentId"/> + <set field="responseContentId" from-field="parameters.contentId"/> + <set field="articleContentId" from-field="parameters.articleContentId"/> + <set field="ownerContentId" from-field="parameters.ownerContentId"/> + <set field="blogContentId" from-field="parameters.blogContentId"/> + <entity-one entity-name="Content" value-field="content" use-cache="true"> + <field-map field-name="contentId" from-field="contentId"/> + </entity-one> + <entity-one entity-name="Content" value-field="article"> + <field-map field-name="contentId" from-field="articleContentId"/> + </entity-one> + + <set field="trail" from-field="articleContentId"/> + <set field="enableEdit" value="false"/> + <property-to-field property="root.publish.point.blog" field="webPubPt" resource="blog"/> + <set field="rsp.contentName" value="${content.contentName}"/> + </actions> + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <container style="bloghr"> + <container style="leftjustify"> + <link text="${article.contentName}: ${article.description}" target="ViewBlogArticle" style="blogtitle"> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId"/> + </link> + <label text="${content.contentName}: ${content.description}" style="blogtitle"/> + </container> + <section> + <condition> + <!-- + <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> + --> + <if-empty field="foobar"/> + </condition> + <widgets> + <container style="rightjustify"> + <section> + <condition> + <if-compare field="parameters.edit" operator="not-equals" value="Y"/> + </condition> + <widgets> + <link text="${uiLabelMap.CommonEdit}" target="ViewResponse" style="buttontext"> + <parameter param-name="contentId" from-field="content.contentId"/> + <parameter param-name="ownerContentId" from-field="content.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId"/> + <parameter param-name="edit" value="Y"/> + </link> + </widgets> + <fail-widgets> + <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> + <parameter param-name="contentId" from-field="content.contentId"/> + <parameter param-name="ownerContentId" from-field="content.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId"/> + <parameter param-name="edit" value="N"/> + </link> + </fail-widgets> + </section> + </container> + </widgets> + </section> + </container> + <container style="blogcontentwrapper"> + <content content-id="${contentId}"/> + </container> + + <include-screen name="AddBlogResponse"/> + + <container style="bloghr"> + <label text="${uiLabelMap.ContentForumThread}: " style="blogtitle"/> + </container> + <include-tree name="ResponseTree" location="component://ecommerce/widget/blog/BlogTrees.xml"/> + <section> + <condition> + <or> + <if-compare field="content.statusId" operator="equals" value="CTNT_INITIAL_DRAFT"/> + <and> + <if-entity-permission entity-id="${content.contentId}" entity-name="Content" target-operation="CONTENT_UPDATE"/> + <if-compare field="parameters.edit" operator="equals" value="Y"/> + </and> + </or> + + </condition> + <widgets> + <container style="bloghr"> + <label text="${uiLabelMap.EcommerceEditThisComment}: " style="blogtitle"/> + </container> + <include-screen name="EditBlogResponse"/> + </widgets> + </section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="BlogContent"> + <section> + <condition> + <not> + <if-empty field="contentId"/> + </not> + </condition> + <actions/> + + <widgets> + <content content-id="${contentId}"/> + </widgets> + </section> + </screen> + + <screen name="AdminBlog"> + <section> + <actions/> + + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <include-form name="FindBlogContent" location="component://ecommerce/widget/blog/BlogForms.xml"/> + <include-grid name="listFindBlogContent" location="component://ecommerce/widget/blog/BlogForms.xml"/> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="BlogResponses"> + <section> + <actions> + <entity-condition entity-name="ContentAssocViewTo" use-cache="true" list="responseList"> + <condition-list combine="and"> + <condition-expr field-name="caContentId" operator="equals" value="${articleContentId}"/> + <condition-expr field-name="caContentAssocTypeId" operator="equals" value="RESPONSE"/> + <condition-expr field-name="caThruDate" operator="equals" value=""/> + </condition-list> + <order-by field-name="caFromDate DESC"/> + </entity-condition> + + <set field="viewIndex" from-field="requestParameters.VIEW_INDEX" type="Integer"/> + </actions> + <widgets> + <container style="bloghr"> + <label text="${uiLabelMap.CommonComments}: " style="blogtitle"/> + </container> + <iterate-section list="responseList" entry="rsp" view-size="10"> + <section name="BlogResponses"> + <widgets> + <include-screen name="responseTreeLine"/> + </widgets> + </section> + </iterate-section> + </widgets> + </section> + </screen> + + <screen name="LatestResponses"> + <section> + <actions> + <entity-condition entity-name="ContentAssocDataResourceViewTo" use-cache="false" list="responseList"> + <condition-list combine="and"> + <condition-expr field-name="ownerContentId" operator="equals" value="${parameters.ownerContentId}"/> + <condition-expr field-name="caContentAssocTypeId" operator="equals" value="RESPONSE"/> + <condition-expr field-name="caThruDate" operator="equals" value=""/> + </condition-list> + <order-by field-name="caFromDate DESC"/> + </entity-condition> + + </actions> + <widgets> + <decorator-screen name="CommonBlog" location="${parameters.mainDecoratorLocation}"> + <decorator-section name="body"> + <label text="${uiLabelMap.EcommerceBlogLatestResponses}"/> + <iterate-section list="responseList" entry="rsp"> + <section name="BlogResponses"> + <widgets> + <include-screen name="responseTreeLine"/> + </widgets> + </section> + </iterate-section> + </decorator-section> + </decorator-screen> + </widgets> + </section> + </screen> + + <screen name="responseTreeLine"> + <section> + <widgets> + <section> + <condition> + <if-compare-field field="responseContentId" operator="not-equals" to-field="rsp.contentId"/> + </condition> + <widgets> + <container> + <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewResponse" style="responseheader"> + <parameter param-name="contentId" from-field="rsp.contentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> + <parameter param-name="contentId" from-field="rsp.contentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <container style="responsetext"> + <label text="${rsp.description}" style="responsetext"/> + <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> + </container> + </container> + </widgets> + </section> + <section> + <condition> + <if-compare-field field="responseContentId" operator="equals" to-field="rsp.contentId"/> + </condition> + <widgets> + <container style="responseSelected"> + <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewResponse" style="responseheader"> + <parameter param-name="contentId" from-field="rsp.contentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <link text="${uiLabelMap.CommonView}" target="ViewResponse" style="buttontext"> + <parameter param-name="contentId" from-field="rsp.contentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="articleContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <container style="responsetext"> + <label text="${rsp.description}" style="responsetext"/> + <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> + </container> + </container> + </widgets> + </section> + </widgets> + </section> + </screen> + + <screen name="blogTreeLine"> + <section> + <widgets> + <container> + <link text="${rsp.contentName}[${rsp.contentId}]" target="ViewBlogArticle" style="responseheader"> + <parameter param-name="articleContentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <link text="${uiLabelMap.EcommerceBlogViewArticle}" target="ViewBlogArticle" style="buttontext"> + <parameter param-name="articleContentId"/> + <parameter param-name="ownerContentId" from-field="rsp.ownerContentId"/> + <parameter param-name="blogContentId" from-field="parameters.blogContentId"/> + </link> + <container style="responsetext"> + <label text="${rsp.description}" style="responsetext"/> + <label text="(${uiLabelMap.EcommerceBlogPostedOn}: ${rsp.createdDate})" style="responsetext"/> + </container> + </container> + </widgets> + </section> + </screen> + + <screen name="AddBlogResponse"> + <section> + <widgets> + <section> + <condition> + <if-empty field="parameters.contentId"/> + </condition> + <actions> + <set field="rsp.contentIdFrom" from-field="parameters.articleContentId"/> + </actions> + <widgets/> + </section> + <section> + <condition> + <not> + <if-empty field="parameters.contentId"/> + </not> + </condition> + <actions> + <set field="rsp.contentIdFrom" from-field="parameters.contentId"/> + </actions> + <widgets/> + </section> + <section> + <actions> + <set field="rsp.contentTypeId" value="DOCUMENT"/> + <set field="rsp.contentAssocTypeId" value="RESPONSE"/> + <set field="rsp.dataResourceTypeId" value="ELECTRONIC_TEXT"/> + <set field="rsp.contentOperationId" value="CONTENT_CREATE"/> + <set field="rsp.contentPurposeTypeId" value="RESPONSE"/> + <set field="rsp.articleContentId" from-field="articleContentId"/> + <set field="rsp.ownerContentId" from-field="content.contentId"/> + <set field="rsp.blogContentId" from-field="parameters.blogContentId"/> + <set field="useRequestParameters" value="false" type="Boolean"/> + + <!-- used for permission check --> + <set field="contentPurposeTypeId" value="ARTICLE"/> + <set field="contentOperationId" value="CONTENT_RESPOND"/> + <set field="ownerContentId" from-field="content.contentId"/> + </actions> + <widgets> + <container style="bloghr"> + <label text="${uiLabelMap.CommonAdd} ${uiLabelMap.CommonComment} ${content.contentId}: " style="blogtitle"/> + <section> + <condition> + <if-service-permission service-name="genericContentPermission" main-action="CREATE"/> + </condition> + + <actions> + <set field="displayForm" value="Y"/> + </actions> + <widgets/> + <fail-widgets> + <label text="${uiLabelMap.EcommerceBlogPostComments}"/> + </fail-widgets> + </section> + </container> + <section> + <condition> + <if-compare field="displayForm" operator="equals" value="Y"/> + </condition> + <widgets> + <container style="blogcontentwrapper"> + <include-form name="AddBlogResponse" location="component://ecommerce/widget/blog/BlogForms.xml"/> + </container> + </widgets> + </section> + </widgets> + </section> + </widgets> + </section> + </screen> + + <screen name="EditBlogResponse"> + <section> + <actions> + <set field="rsp.contentPurposeTypeId" value="RESPONSE"/> + <set field="rsp.contentOperationId" value="CONTENT_UPDATE"/> + <set field="rsp.ownerContentId" from-field="parameters.ownerContentId"/> + <set field="rsp.blogContentId" from-field="parameters.blogContentId"/> + + <!-- permission fields --> + <set field="upPerm.ownerContentId" from-field="parameters.ownerContentId"/> + <set field="upPerm.contentId" from-field="parameters.contentId"/> + <set field="upPerm.contentOperationId" value="CONTENT_UPDATE"/> + <set field="upPerm.contentPurposeTypeId" value="RESPONSE"/> + </actions> + <widgets> + <section> + <!-- + <condition> + <if-service-permission service-name="genericContentPermission" main-action="UPDATE"/> + </condition> + --> + <actions> + <set field="rsp.articleContentId" from-field="articleContentId"/> + <entity-one entity-name="DataResource" value-field="dataResource" use-cache="false"> + <field-map field-name="dataResourceId" from-field="content.dataResourceId"/> + </entity-one> + <entity-one entity-name="ElectronicText" value-field="electronicText" use-cache="false"> + <field-map field-name="dataResourceId" from-field="content.dataResourceId"/> + </entity-one> + </actions> + <widgets> + <container style="blogcontentwrapper"> + <include-form name="EditBlogResponse" location="component://ecommerce/widget/blog/BlogForms.xml"/> + </container> + </widgets> + <fail-widgets> + <label text="${uiLabelMap.EcommerceBlogEditComments}"/> + </fail-widgets> + </section> + </widgets> + </section> + </screen> + + <!-- Column Included Screens --> + <screen name="blogs"> + <section> + <actions> + <entity-condition entity-name="ContentAssocViewTo" list="blogs" use-cache="true"> + <condition-list combine="and"> + <condition-expr field-name="contentIdStart" operator="equals" value="BLOGROOT"/> + <condition-expr field-name="caContentAssocTypeId" operator="equals" value="SUB_CONTENT"/> + <condition-list combine="or"> + <condition-expr field-name="caFromDate" operator="equals" from-field="null"/> + <condition-expr field-name="caFromDate" operator="less-equals" from-field="nowTimestamp"/> + </condition-list> + <condition-list combine="or"> + <condition-expr field-name="caThruDate" operator="equals" from-field="null"/> + <condition-expr field-name="caThruDate" operator="greater-equals" from-field="nowTimestamp"/> + </condition-list> + </condition-list> + <order-by field-name="contentName"/> + </entity-condition> + </actions> + <widgets> + <platform-specific> + <html> + <html-template location="component://ecommerce/template/blog/Blogs.ftl"/> + + </html> + </platform-specific> + </widgets> + </section> + </screen> +</screens> + + Propchange: ofbiz/trunk/plugins/ecommerce/widget/blog/BlogScreens.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/plugins/ecommerce/widget/blog/BlogTemplates.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/plugins/ecommerce/widget/blog/BlogTrees.xml ------------------------------------------------------------------------------ svn:eol-style = native Modified: ofbiz/trunk/plugins/example/data/ExampleHelpData.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/plugins/example/data/ExampleHelpData.xml?rev=1781219&r1=1781218&r2=1781219&view=diff ============================================================================== --- ofbiz/trunk/plugins/example/data/ExampleHelpData.xml (original) +++ ofbiz/trunk/plugins/example/data/ExampleHelpData.xml Wed Feb 1 10:58:46 2017 @@ -1,48 +1,48 @@ -<?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. ---> -<entity-engine-xml> - - <DataResource dataResourceId="HELP_EXAMPLE" localeString="en" dataResourceTypeId="OFBIZ_FILE" - objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" - dataResourceName="Framework Example" mimeTypeId="text/xml" isPublic="Y" /> - <Content contentId="HELP_EXAMPLE" contentTypeId="DOCUMENT" contentName="Framework Example" templateDataResourceId="HELP_TEMPL" - dataResourceId="HELP_EXAMPLE" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> - <ContentAssoc contentId="HELP_ROOT" contentIdTo="HELP_EXAMPLE" contentAssocTypeId="TREE_CHILD" fromDate="2006-01-12 01:01:01" sequenceNum="000"/> - - <DataResource dataResourceId="HELP_EXAMPLE_FR" localeString="fr" dataResourceTypeId="OFBIZ_FILE" - objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_FR.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" - dataResourceName="Exemple pour le développement" mimeTypeId="text/xml" isPublic="Y" /> - <Content contentId="HELP_EXAMPLE_FR" contentTypeId="DOCUMENT" contentName="Exemple pour le développement" templateDataResourceId="HELP_TEMPL" - dataResourceId="HELP_EXAMPLE_FR" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html" localeString="fr" /> - <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="HELP_EXAMPLE_FR" contentAssocTypeId="ALTERNATE_LOCALE" fromDate="2006-01-12 01:01:01"/> - - <DataResource dataResourceId="EXAMPLE_main" localeString="en" dataResourceTypeId="OFBIZ_FILE" - objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_main.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" dataResourceName="Example help main page" mimeTypeId="text/xml" isPublic="Y" /> - <Content contentId="EXAMPLE_main" contentTypeId="DOCUMENT" contentName="Example main menu." templateDataResourceId="HELP_TEMPL" dataResourceId="EXAMPLE_main" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> - <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_main" mapKey="EXAMPLE_main" fromDate="2006-01-12 01:01:01" contentAssocTypeId="TREE_CHILD" sequenceNum="000"/> - <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_main" mapKey="EXAMPLE_FindExample" fromDate="2006-01-12 01:01:02" sequenceNum="000" contentAssocTypeId="INSTANCE"/> - - <DataResource dataResourceId="EXAMPLE_docbook" localeString="en" dataResourceTypeId="OFBIZ_FILE" - objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_docbook.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" dataResourceName="Example docBook usage" mimeTypeId="text/xml" isPublic="Y" /> - <Content contentId="EXAMPLE_docbook" contentTypeId="DOCUMENT" contentName="Example Docbook usage" templateDataResourceId="HELP_TEMPL" dataResourceId="EXAMPLE_docbook" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> - <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_docbook" contentAssocTypeId="TREE_CHILD" fromDate="2006-01-12 01:01:01" sequenceNum="000" mapKey="EXAMPLE_docbook"/> - - -</entity-engine-xml> +<?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. +--> +<entity-engine-xml> + + <DataResource dataResourceId="HELP_EXAMPLE" localeString="en" dataResourceTypeId="OFBIZ_FILE" + objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" + dataResourceName="Framework Example" mimeTypeId="text/xml" isPublic="Y" /> + <Content contentId="HELP_EXAMPLE" contentTypeId="DOCUMENT" contentName="Framework Example" templateDataResourceId="HELP_TEMPL" + dataResourceId="HELP_EXAMPLE" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> + <ContentAssoc contentId="HELP_ROOT" contentIdTo="HELP_EXAMPLE" contentAssocTypeId="TREE_CHILD" fromDate="2006-01-12 01:01:01" sequenceNum="000"/> + + <DataResource dataResourceId="HELP_EXAMPLE_FR" localeString="fr" dataResourceTypeId="OFBIZ_FILE" + objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_FR.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" + dataResourceName="Exemple pour le développement" mimeTypeId="text/xml" isPublic="Y" /> + <Content contentId="HELP_EXAMPLE_FR" contentTypeId="DOCUMENT" contentName="Exemple pour le développement" templateDataResourceId="HELP_TEMPL" + dataResourceId="HELP_EXAMPLE_FR" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html" localeString="fr" /> + <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="HELP_EXAMPLE_FR" contentAssocTypeId="ALTERNATE_LOCALE" fromDate="2006-01-12 01:01:01"/> + + <DataResource dataResourceId="EXAMPLE_main" localeString="en" dataResourceTypeId="OFBIZ_FILE" + objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_main.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" dataResourceName="Example help main page" mimeTypeId="text/xml" isPublic="Y" /> + <Content contentId="EXAMPLE_main" contentTypeId="DOCUMENT" contentName="Example main menu." templateDataResourceId="HELP_TEMPL" dataResourceId="EXAMPLE_main" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> + <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_main" mapKey="EXAMPLE_main" fromDate="2006-01-12 01:01:01" contentAssocTypeId="TREE_CHILD" sequenceNum="000"/> + <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_main" mapKey="EXAMPLE_FindExample" fromDate="2006-01-12 01:01:02" sequenceNum="000" contentAssocTypeId="INSTANCE"/> + + <DataResource dataResourceId="EXAMPLE_docbook" localeString="en" dataResourceTypeId="OFBIZ_FILE" + objectInfo="plugins/example/data/helpdata/HELP_EXAMPLE_docbook.xml" dataTemplateTypeId="NONE" statusId="CTNT_IN_PROGRESS" dataResourceName="Example docBook usage" mimeTypeId="text/xml" isPublic="Y" /> + <Content contentId="EXAMPLE_docbook" contentTypeId="DOCUMENT" contentName="Example Docbook usage" templateDataResourceId="HELP_TEMPL" dataResourceId="EXAMPLE_docbook" statusId="CTNT_IN_PROGRESS" mimeTypeId="text/html"/> + <ContentAssoc contentId="HELP_EXAMPLE" contentIdTo="EXAMPLE_docbook" contentAssocTypeId="TREE_CHILD" fromDate="2006-01-12 01:01:01" sequenceNum="000" mapKey="EXAMPLE_docbook"/> + + +</entity-engine-xml> Propchange: ofbiz/trunk/plugins/example/data/ExampleHelpData.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: ofbiz/trunk/plugins/example/data/helpdata/HELP_EXAMPLE.xml ------------------------------------------------------------------------------ svn:eol-style = native |
Free forum by Nabble | Edit this page |