| <?xml version="1.0"?> |
| <!-- |
| 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. |
| --> |
| |
| <!-- $Id$ --> |
| |
| <page:page xmlns:jx="http://apache.org/cocoon/templates/jx/1.0" |
| xmlns:page="http://apache.org/cocoon/lenya/cms-page/1.0" |
| xmlns="http://www.w3.org/1999/xhtml" |
| xmlns:i18n="http://apache.org/cocoon/i18n/2.1" > |
| |
| <jx:import uri="fallback://lenya/modules/sitemanagement/usecases/tab/head.jx"/> |
| |
| <!-- if the usecase cannot be invoked, find the cause: --> |
| <jx:choose> |
| <jx:when test="${usecase.getParameter('canRollback') == 'true'}"> |
| <jx:set var="rollbackMessage" value="rollback-ok"/> |
| </jx:when> |
| <jx:otherwise> |
| <jx:choose> |
| <jx:when test="${usecase.getParameter('workflowState') == 'review'}"> |
| <jx:set var="rollbackMessage" value="no-rollback-in-review"/> |
| </jx:when> |
| <jx:otherwise> |
| <jx:set var="rollbackMessage" value="no-rollback-no-privileges"/> |
| </jx:otherwise> |
| </jx:choose> |
| </jx:otherwise> |
| </jx:choose> |
| |
| <page:head> |
| <script type="text/javascript"> |
| |
| function showRevision(revision) { |
| window.open( |
| '?lenya.revision=' + revision, |
| 'Lenya_ViewRevision', |
| 'menubar=no,addressbar=no,toolbar=no,statusbar=no' |
| ); |
| } |
| |
| function rollback(toRevision) { |
| window.location.href="?lenya.usecase=sitemanagement.rollback" |
| + String.fromCharCode(38) // an & does not work, since it's not being decoded |
| + "rollbackRevision=" + toRevision; |
| } |
| |
| </script> |
| </page:head> |
| <page:body> |
| |
| <jx:import uri="fallback://lenya/modules/sitemanagement/usecases/tab/sitetree.jx"/> |
| <jx:import uri="fallback://lenya/modules/usecase/templates/tabs.jx"/> |
| |
| <div id="contentblock1" class="lenya-tab-sitetree"> |
| <h1><i18n:text>Revisions</i18n:text></h1> |
| |
| <form name="revisions"> |
| |
| <table class="lenya-table-list-noborder"> |
| |
| <tr> |
| <th><i18n:text>No.</i18n:text></th> |
| <th><i18n:text>Time</i18n:text></th> |
| <th><i18n:text>Editor</i18n:text></th> |
| <th><i18n:text>Actions</i18n:text></th> |
| </tr> |
| |
| <jx:set var="count" value="${usecase.getParameter('revisions').size()}"/> |
| <jx:set var="isFirstItem" value="true"/> |
| <jx:forEach var="revision" items="${usecase.getParameter('revisions')}" begin="0"> |
| <tr> |
| <td align="right"> |
| <input |
| type="button" |
| i18n:attr="title" |
| onclick="showRevision(${revision.getNumber()});" |
| title="view-revision-in-new-window" |
| value="${revision.getNumber()}" |
| /> |
| </td> |
| <td align="right"><i18n:date-time src-pattern="yyyy-MM-dd HH:mm:ss"><jx:formatDate value="${revision.getTime()}" pattern="yyyy-MM-dd HH:mm:ss"/></i18n:date-time></td> |
| <td><jx:out value="${revision.getUserId()}"/></td> |
| <td> |
| <input |
| type="button" |
| i18n:attr="value title" |
| onclick="showRevision(${revision.getNumber()});" |
| title="view-revision-in-new-window" |
| value="view-revision" |
| /> |
| <jx:choose> |
| <jx:when test="${isFirstItem == 'true'}"> |
| <jx:set var="isFirstItem" value="false"/> |
| <i18n:text key="is-current-version"/> |
| </jx:when> |
| <jx:when test="${usecase.getParameter('canRollback') == 'true'}"> |
|   |
| <input type="button" i18n:attr="value title" title="${rollbackMessage}" value="rollback" |
| onclick="void rollback(${revision.getNumber()});" |
| /> |
| </jx:when> |
| <jx:otherwise> |
| <input type="button" i18n:attr="value title" title="${rollbackMessage}" disabled="disabled" value="rollback"/> |
| </jx:otherwise> |
| </jx:choose> |
| </td> |
| </tr> |
| </jx:forEach> |
| |
| <jx:if test="${usecase.getParameter('canRollback') != 'true'}"> |
| <tr> |
| <td/> |
| <td colspan="3"> |
| <strong><i18n:text key="${rollbackMessage}"/></strong> |
| </td> |
| </tr> |
| </jx:if> |
| |
| </table> |
| |
| </form> |
| |
| </div> |
| </page:body> |
| </page:page> |