Author: xlawrence
Date: Fri Sep 28 12:08:43 2007
New Revision: 18705

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18705&repname=
=3Djahia
Log:
Resolve issue http://www.jahia.net/jira/browse/JAHIA-2390: Page title Multi=
language

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/engines/shared/p=
age_field.jsp

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/engines/sh=
ared/page_field.jsp
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/webapp/jsp/jahia/engines/shared/page_field.jsp&rev=3D18705=
&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/engines/shared/p=
age_field.jsp (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/webapp/jsp/jahia/engines/shared/p=
age_field.jsp Fri Sep 28 12:08:43 2007
@@ -14,34 +14,34 @@
 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.
---%><%@ page language=3D"java" contentType=3D"text/html;charset=3DUTF-8" %>
+--%>
+<%@ page language=3D"java" contentType=3D"text/html;charset=3DUTF-8" %>
 <%@ page import=3D"org.apache.commons.lang.StringUtils" %>
 <%@ page import=3D"org.jahia.bin.Jahia" %>
+<%@ page import=3D"org.jahia.content.ContentObject" %>
 <%@ page import=3D"org.jahia.data.JahiaData" %>
 <%@ page import=3D"org.jahia.data.containers.JahiaContainer" %>
 <%@ page import=3D"org.jahia.data.fields.JahiaField" %>
+<%@ page import=3D"org.jahia.engines.EngineLanguageHelper" %>
 <%@ page import=3D"org.jahia.engines.JahiaEngine" %>
 <%@ page import=3D"org.jahia.engines.selectpage.SelectPage_Engine" %>
 <%@ page import=3D"org.jahia.engines.shared.JahiaPageEngineTempBean" %>
 <%@ page import=3D"org.jahia.engines.shared.Page_Field" %>
 <%@ page import=3D"org.jahia.engines.validation.EngineValidationHelper" %>
-<%@ page import=3D"org.jahia.params.*" %>
+<%@ page import=3D"org.jahia.params.ParamBean" %>
+<%@ page import=3D"org.jahia.params.ProcessingContext" %>
+<%@ page import=3D"org.jahia.registries.ServicesRegistry" %>
+<%@ page import=3D"org.jahia.resourcebundle.JahiaResourceBundle" %>
+
 <%@ page import=3D"org.jahia.services.pages.ContentPage" %>
-<%@ page import=3D"org.jahia.content.ContentObject" %>
 <%@ page import=3D"org.jahia.services.pages.JahiaPage" %>
 <%@ page import=3D"org.jahia.services.pages.JahiaPageBaseService" %>
 <%@ page import=3D"org.jahia.services.pages.JahiaPageDefinition" %>
-
 <%@ page import=3D"org.jahia.utils.JahiaTools" %>
+<%@ page import=3D"javax.servlet.jsp.JspWriter" %>
+<%@ page import=3D"javax.servlet.jsp.PageContext" %>
+<%@ page import=3D"java.io.IOException" %>
 <%@ page import=3D"java.util.*" %>
-<%@ page import=3D"java.io.*" %>
-<%@ page import=3D"org.jahia.registries.ServicesRegistry"%>
-<%@ page import=3D"org.jahia.engines.EngineLanguageHelper"%>
-<%@ page import=3D"org.jahia.resourcebundle.JahiaResourceBundle"%>
-<%@ page import=3D"org.jahia.hibernate.manager.JahiaObjectDelegate"%>
-<%@ page import=3D"org.jahia.hibernate.manager.JahiaObjectManager"%>
-<%@ page import=3D"org.jahia.hibernate.manager.SpringContextSingleton"%>
-<%@ page import=3D"org.jahia.services.timebasedpublishing.*"%>
 <%@ taglib uri=3D"JahiaLib" prefix=3D"jahia" %>
 <%@ taglib uri=3D"contentLib" prefix=3D"content" %>
 <%@ taglib uri=3D"ajaxLib" prefix=3D"ajax" %>
@@ -63,32 +63,54 @@
         }
         return vlist;
     }
-    =

+
     private void drawTimeBasedPublishingStatusIcon(ContentObject contentOb=
ject, ProcessingContext jParams, PageContext pageContext)
-    throws IOException  {
-      if( contentObject=3D=3Dnull ){
-        return;
-      }
-      JspWriter out =3D pageContext.getOut();
-      final String contextPath =3D Jahia.getContextPath();
-      final String actionURL =3D contextPath + "/ajaxaction/GetTimeBasedPu=
blishingState?params=3D/op/edit/pid/" +
-              jParams.getPageID() + "&key=3D" + contentObject.getObjectKey=
();
-
-      String serverURL =3D actionURL + "&displayDialog=3Dtrue";
-      String dialogTitle =3D JahiaResourceBundle.getEngineResource("org.ja=
hia.engines.timebasedpublishing.dialogTitle",
-              jParams, jParams.getLocale(), "Informational");
-      StringBuffer cmdBuffer =3D new StringBuffer("handleTimeBasedPublishi=
ng(event,'");
-      cmdBuffer.append(serverURL).append("','");
-      cmdBuffer.append(contentObject.getObjectKey()).append("',").append("=
'/op/edit/pid/")
-              .append(jParams.getPageID()).append("','").append(dialogTitl=
e).append("')");
-      out.print("<img class=3D\"timeBasedPublishingState\" id=3D\"");
-      out.print("img_");
-      out.print(contentObject.getObjectKey());
-      out.print("\" border=3D\"0\" src=3D\"");
-      out.print(actionURL);
-      out.print("\" onClick=3D\"");
-      out.print(cmdBuffer.toString());
-      out.print("\" />\n");
+            throws IOException {
+        if (contentObject =3D=3D null) {
+            return;
+        }
+        JspWriter out =3D pageContext.getOut();
+        final String contextPath =3D Jahia.getContextPath();
+        final String actionURL =3D contextPath + "/ajaxaction/GetTimeBased=
PublishingState?params=3D/op/edit/pid/" +
+                jParams.getPageID() + "&key=3D" + contentObject.getObjectK=
ey();
+
+        String serverURL =3D actionURL + "&displayDialog=3Dtrue";
+        String dialogTitle =3D JahiaResourceBundle.getEngineResource("org.=
jahia.engines.timebasedpublishing.dialogTitle",
+                jParams, jParams.getLocale(), "Informational");
+        StringBuffer cmdBuffer =3D new StringBuffer("handleTimeBasedPublis=
hing(event,'");
+        cmdBuffer.append(serverURL).append("','");
+        cmdBuffer.append(contentObject.getObjectKey()).append("',").append=
("'/op/edit/pid/")
+                .append(jParams.getPageID()).append("','").append(dialogTi=
tle).append("')");
+        out.print("<img class=3D\"timeBasedPublishingState\" id=3D\"");
+        out.print("img_");
+        out.print(contentObject.getObjectKey());
+        out.print("\" border=3D\"0\" src=3D\"");
+        out.print(actionURL);
+        out.print("\" onClick=3D\"");
+        out.print(cmdBuffer.toString());
+        out.print("\" />\n");
+    }
+
+
+    public boolean areValuesTheSameInAllActiveLanguages(final JahiaPageEng=
ineTempBean pageBean,
+                                                        final String langC=
ode) {
+        if (pageBean.getTitles().size() > 1) {
+            final Iterator titles =3D pageBean.getTitles().values().iterat=
or();
+            final String theTitle =3D pageBean.getTitle(langCode);
+            if (theTitle =3D=3D null || theTitle.length() =3D=3D 0 || theT=
itle.startsWith("<jahia")) {
+                return false;
+            }
+            String oldValue =3D null;
+            while (titles.hasNext()) {
+                final String title =3D (String) titles.next();
+                if (oldValue !=3D null && !oldValue.equals(title)) {
+                    return false;
+                }
+                oldValue =3D title;
+            }
+            return true;
+        }
+        return false;
     }
 %>
 =

@@ -134,11 +156,7 @@
             sourceTitle =3D (String) titles.get(processingLocale.toString(=
));
     }
 =

-    boolean allSameTitles =3D false;
-    if (pageBean.getTitles().size() > 0) {
-        Set s =3D new HashSet(pageBean.getTitles().values());
-        allSameTitles =3D s.size() =3D=3D 1 && !s.iterator().next().equals=
("");
-    }
+    boolean allSameTitles =3D areValuesTheSameInAllActiveLanguages(pageBea=
n, jParams.getLocale().toString());
 =

     if (sourceTitle !=3D null && "".equals(title)) {
         title =3D sourceTitle;
@@ -266,48 +284,50 @@
             ((JahiaPage) theField.getObject()).getPageType() =3D=3D Conten=
tPage.TYPE_DIRECT &&
             !Page_Field.UPDATE_PAGE.equals(pageBean.getOperation()) ? true=
 : false;
 =

-    ContentObject timeBasedPublishingObject =3D (ContentObject)request.get=
Attribute("Page_Field.enableTimeBasedPublishingStatus"); =

-    boolean enableTimeBasedPublishing =3D ( timeBasedPublishingObject !=3D=
 null );
-    =

-    if ( enableTimeBasedPublishing ) { =

+    ContentObject timeBasedPublishingObject =3D (ContentObject) request.ge=
tAttribute("Page_Field.enableTimeBasedPublishingStatus");
+    boolean enableTimeBasedPublishing =3D (timeBasedPublishingObject !=3D =
null);
+
+    if (enableTimeBasedPublishing) {
 %>
 <ajax:zimbraInclude/>
-<script language=3D"javascript" src=3D"<content:serverHttpPath/>/jsp/jahia=
/javascript/zimbra/timebasedpublishing/TimeBasedPublishingStatus.js" type=
=3D"text/javascript"></script>
+<script language=3D"javascript"
+        src=3D"<content:serverHttpPath/>/jsp/jahia/javascript/zimbra/timeb=
asedpublishing/TimeBasedPublishingStatus.js"
+        type=3D"text/javascript"></script>
 <script type=3D"text/javascript">
-function showUserShell(){
-  try {
-    Dwt.setVisibility(document.getElementById("userShell"),true);
-  } catch (ex){
-    return;
-  }
-}
+    function showUserShell() {
+        try {
+            Dwt.setVisibility(document.getElementById("userShell"), true);
+        } catch (ex) {
+            return;
+        }
+    }
 =

-var isIE7 =3D <%if (isIE7){%>true<%} else{%>false<%}%>;
-function engineCustomHandleOnLoad(){
-  if ( isIE7 ){
-    initZimbraShell('MainShell',true,null,'userShell',true,false,'#dddddd'=
);
-  } else if ( AjxEnv.isIE ){
-    initZimbraShell('MainShell',true,null,null,false,false,'#dddddd');
-    //initZimbraShell('MainShell',true,null,'userShell',true,false,'#ddddd=
d');
-  } else {
-    initZimbraShell('MainShell',true,null,'userShell',true,false,'#dddddd'=
);
-  }
-  showUserShell();
-}
+    var isIE7 =3D <%if (isIE7){%>true<%} else{%>false<%}%>;
+    function engineCustomHandleOnLoad() {
+        if (isIE7) {
+            initZimbraShell('MainShell', true, null, 'userShell', true, fa=
lse, '#dddddd');
+        } else if (AjxEnv.isIE) {
+            initZimbraShell('MainShell', true, null, null, false, false, '=
#dddddd');
+            //initZimbraShell('MainShell',true,null,'userShell',true,false=
,'#dddddd');
+        } else {
+            initZimbraShell('MainShell', true, null, 'userShell', true, fa=
lse, '#dddddd');
+        }
+        showUserShell();
+    }
 </script>
 <% } %>
 <script type=3D"text/javascript">
 function getPageOffsetLeft(el) {
 =

-  var x;
+    var x;
 =

-  // Return the x coordinate of an element relative to the page.
+    // Return the x coordinate of an element relative to the page.
 =

-  x =3D el.offsetLeft-5;
-  if (el.offsetParent !=3D null)
-    x +=3D getPageOffsetLeft(el.offsetParent);
+    x =3D el.offsetLeft - 5;
+    if (el.offsetParent !=3D null)
+        x +=3D getPageOffsetLeft(el.offsetParent);
 =

-  return x;
+    return x;
 }
 =

 function callSelectPageMove() {
@@ -415,8 +435,8 @@
     teleportCaptainFlam(document.mainForm);
 }
 =

-function switchIcons(callingElementID) {
-    var element =3D document.getElementById("shared_title");
+function switchIcons(callingElementID, inputElementID) {
+    var element =3D document.getElementById(inputElementID);
     var callingElement =3D document.getElementById(callingElementID);
     if (element) {
         var theValue =3D element.value;
@@ -438,18 +458,23 @@
     <% if (jParams.getSite().getLanguageSettings(true).size() > 1 &&
             ServicesRegistry.getInstance().getJahiaACLManagerService().has=
WriteAccesOnAllLangs(jParams)) { %>
     <% if (allSameTitles) { %>
-    <a id=3D"switchIcons_<%=3DpageBean.getID()%>" href=3D"javascript:switc=
hIcons('switchIcons_<%=3DpageBean.getID()%>');"
+    <a id=3D"switchIcons_<%=3DpageBean.getID()%>"
+       href=3D"javascript:switchIcons('switchIcons_<%=3DpageBean.getID()%>=
', 'shared_title');"
        title=3D'<jahia:engineResourceBundle resourceName=3D"org.jahia.appl=
yToAllLanguages.label"/>'
-       class=3D"sharedLanguageYes">
-        &nbsp;</a>
+       class=3D"sharedLanguageYes">&nbsp;</a>
     <% } else { %>
-    <a id=3D"switchIcons_<%=3DpageBean.getID()%>" href=3D"javascript:switc=
hIcons('switchIcons_<%=3DpageBean.getID()%>');"
+    <a id=3D"switchIcons_<%=3DpageBean.getID()%>"
+       href=3D"javascript:switchIcons('switchIcons_<%=3DpageBean.getID()%>=
', 'shared_title');"
        title=3D'<jahia:engineResourceBundle resourceName=3D"org.jahia.appl=
yToSingleLanguage.label"/>'
-       class=3D"sharedLanguageNo">
-        &nbsp;</a>
+       class=3D"sharedLanguageNo">&nbsp;</a>
+    <% } %>
+    <% } else { %>
+    <% if (pageBean.isSharedTitle() && jParams.getSite().getLanguageSettin=
gs(true).size() > 1) { %>
+    <span title=3D"<jahia:engineResourceBundle resourceName=3D'org.jahia.s=
ameInAllLanguage.label'/>"
+          class=3D"sharedLanguageYesDisabled">&nbsp;</span>
     <% } %>
-    <input id=3D"shared_title" type=3D"hidden" name=3D"shared_title" value=
=3D"<%=3DallSameTitles || pageBean.isSharedTitle()%>"/>
     <% } %>
+    <input id=3D"shared_title" type=3D"hidden" name=3D"shared_title" value=
=3D"<%=3DallSameTitles || pageBean.isSharedTitle()%>"/>
     <% if (isNewPage) { %>
     <% if (isLinkOnly) { %>
     <jahia:engineResourceBundle resourceName=3D"org.jahia.engines.shared.P=
age_Field.jahiaLinkCreation.label"/>
@@ -485,7 +510,7 @@
     if (EngineValidationHelper.isFieldMandatory(theContainer, theField, jP=
arams)) {
 %>
 <span class=3D"errorbold">(*)</span>
-<input id=3D"go" type=3D"hidden" name=3D"go" />
+<input id=3D"go" type=3D"hidden" name=3D"go"/>
 <% } %>
 <div id=3D"errorMsg"></div>
 <input type=3D"text" size=3D"80" name=3D"page_title" onkeyup=3D"javascript=
:titleInputEvent()"
@@ -521,7 +546,7 @@
                 checkedTemplates =3D true;
                 logger.debug("all templates contraints checked");
                 templateList =3D constraint.elements();
-            } else if(checkcount>0 && constraint.size()>0) {
+            } else if (checkcount > 0 && constraint.size() > 0) {
                 logger.warn("some templates requested in constraint are no=
t present!");
                 templateList =3D constraint.elements();
             } else {
@@ -562,8 +587,8 @@
                 JahiaPageDefinition theTemplate =3D (JahiaPageDefinition) =
templateList.nextElement();
                 if (!checkedTemplates) {
                     //we have some error in names requested, ignoring and =
display as usual!
-        %><option value=3D"<%=3DtheTemplate.getID()%>"<% if (theTemplate.g=
etID() =3D=3D pageBean.getPageTemplateID()) { %>
-                  selected=3D"selected"<% } %>>
+            %><option value=3D"<%=3DtheTemplate.getID()%>"<% if (theTempla=
te.getID() =3D=3D pageBean.getPageTemplateID()) { %>
+                      selected=3D"selected"<% } %>>
             <%=3DtheTemplate.getName()%></option>
             <% } else {
                 // templates requested are cheked
@@ -644,7 +669,8 @@
             if (Page_Field.LINK_JAHIA_PAGE.equals(pageBean.getOperation())=
) {
                 if (sourcePageID !=3D -1) { %>
         <ul>
-            <li><%drawTimeBasedPublishingStatusIcon(timeBasedPublishingObj=
ect,jParams,pageContext);%>&nbsp;<%=3DJahiaTools.text2html(sourceTitle)%>&n=
bsp;(<jahia:engineResourceBundle
+            <li><%drawTimeBasedPublishingStatusIcon(timeBasedPublishingObj=
ect, jParams, pageContext);%>
+                &nbsp;<%=3DJahiaTools.text2html(sourceTitle)%>&nbsp;(<jahi=
a:engineResourceBundle
                     resourceName=3D"org.jahia.pageId.label"/>:&nbsp;<%=3Ds=
ourcePageID%>)</li>
         </ul>
         <% } else { %>
@@ -684,8 +710,10 @@
         <input id=3D"noValueRadio" type=3D"radio" name=3D"operation"
                onclick=3D"javascript:document.mainForm.page_title.value =
=3D '';" value=3D"<%=3DPage_Field.RESET_LINK%>"
         <%
+
         if (Page_Field.RESET_LINK.equals(pageBean.getOperation())) {
 =

+
         %> checked=3D"checked"<% } %>>
         <% if (isNewPage) { %>
         <jahia:engineResourceBundle resourceName=3D"org.jahia.engines.shar=
ed.Page_Field.differPageCreation.label"/>

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to