mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-07 17:49:17 +00:00
MySpaces webscript now shows Ajax wait animation while loading inner panel area.
Summary pop-up panel fade-out anim removed (improves user experience). Reorg of broken action evaluator class hiearchy (after ML UI changes). More fixes to ML UI (browse.jsp missing component IDs breaks screen when panels collapsed then expanded). Code reorg in interceptors to help performance. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5772 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -86,6 +86,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</center>
|
</center>
|
||||||
</div>
|
</div>
|
||||||
|
<div id="spacePanelOverlay"></div>
|
||||||
<div id="spacePanel">
|
<div id="spacePanel">
|
||||||
<#-- populated via an AJAX call to 'myspacespanel' webscript -->
|
<#-- populated via an AJAX call to 'myspacespanel' webscript -->
|
||||||
<#-- resolved path, filter and home.noderef required as arguments -->
|
<#-- resolved path, filter and home.noderef required as arguments -->
|
||||||
@@ -151,6 +152,17 @@ a.spacefilterLinkSelected:link, a.spacefilterLinkSelected:visited
|
|||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#spacePanelOverlay
|
||||||
|
{
|
||||||
|
background-image: url(${url.context}/images/icons/ajax_anim.gif);
|
||||||
|
background-position: center;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
position: absolute;
|
||||||
|
height: 320px;
|
||||||
|
width: 720px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
.spaceRow
|
.spaceRow
|
||||||
{
|
{
|
||||||
padding-top: 4px;
|
padding-top: 4px;
|
||||||
|
@@ -42,68 +42,6 @@
|
|||||||
</params>
|
</params>
|
||||||
</action>
|
</action>
|
||||||
|
|
||||||
<!-- Make a document multilingual -->
|
|
||||||
<action id="make_doc_multilingual">
|
|
||||||
<permissions>
|
|
||||||
<permission allow="true">Write</permission>
|
|
||||||
</permissions>
|
|
||||||
<evaluator>org.alfresco.web.action.evaluator.MakeMultilingualEvaluator</evaluator>
|
|
||||||
<label-id>make_multilingual</label-id>
|
|
||||||
<tooltip-id>make_multilingual_tooltip</tooltip-id>
|
|
||||||
<image>/images/icons/make_ml.gif</image>
|
|
||||||
<action>dialog:makeMultilingual</action>
|
|
||||||
<params>
|
|
||||||
<param name="id">#{actionContext.id}</param>
|
|
||||||
</params>
|
|
||||||
</action>
|
|
||||||
|
|
||||||
<!-- Add a translation -->
|
|
||||||
<action id="add_translation">
|
|
||||||
<permissions>
|
|
||||||
<permission allow="true">Write</permission>
|
|
||||||
</permissions>
|
|
||||||
<evaluator>org.alfresco.web.action.evaluator.AddTranslationEvaluator</evaluator>
|
|
||||||
<label-id>add_translation</label-id>
|
|
||||||
<tooltip-id>add_translation_tooltip</tooltip-id>
|
|
||||||
<image>/images/icons/add_tranlsation.gif</image>
|
|
||||||
<action-listener>#{AddTranslationDialog.start}</action-listener>
|
|
||||||
<action>addTranslation</action>
|
|
||||||
<params>
|
|
||||||
<param name="id">#{actionContext.id}</param>
|
|
||||||
</params>
|
|
||||||
</action>
|
|
||||||
|
|
||||||
<!-- Add a translation whithout content -->
|
|
||||||
<action id="add_translation_wc">
|
|
||||||
<permissions>
|
|
||||||
<permission allow="true">Write</permission>
|
|
||||||
</permissions>
|
|
||||||
<evaluator>org.alfresco.web.action.evaluator.AddTranslationEvaluator</evaluator>
|
|
||||||
<label-id>add_translation_wc</label-id>
|
|
||||||
<tooltip-id>add_translation_wc_tooltip</tooltip-id>
|
|
||||||
<image>/images/icons/add_tranlsation_wc.gif</image>
|
|
||||||
<action>dialog:addTranslationWithoutContent</action>
|
|
||||||
<params>
|
|
||||||
<param name="id">#{actionContext.id}</param>
|
|
||||||
</params>
|
|
||||||
</action>
|
|
||||||
|
|
||||||
<!-- Manage ml container details -->
|
|
||||||
<action id="ml_details">
|
|
||||||
<permissions>
|
|
||||||
<permission allow="true">Read</permission>
|
|
||||||
</permissions>
|
|
||||||
<evaluator>org.alfresco.web.action.evaluator.MultilingualDetailsEvaluator</evaluator>
|
|
||||||
<label-id>manage_multilingual_details</label-id>
|
|
||||||
<tooltip-id>manage_multilingual_details_tooltip</tooltip-id>
|
|
||||||
<image>/images/icons/multilingual_details.gif</image>
|
|
||||||
<action-listener>#{BrowseBean.setupContentAction}</action-listener>
|
|
||||||
<action>dialog:showMLContainerDetails</action>
|
|
||||||
<params>
|
|
||||||
<param name="id">#{actionContext.id}</param>
|
|
||||||
</params>
|
|
||||||
</action>
|
|
||||||
|
|
||||||
<!-- Edit document action to open using normal HTTP access or inline Edit if set -->
|
<!-- Edit document action to open using normal HTTP access or inline Edit if set -->
|
||||||
<action id="edit_doc_http">
|
<action id="edit_doc_http">
|
||||||
<permissions>
|
<permissions>
|
||||||
@@ -634,6 +572,68 @@
|
|||||||
<action>#{NavigatorPluginBean.reset}</action>
|
<action>#{NavigatorPluginBean.reset}</action>
|
||||||
</action>
|
</action>
|
||||||
|
|
||||||
|
<!-- Make a document multilingual -->
|
||||||
|
<action id="make_doc_multilingual">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Write</permission>
|
||||||
|
</permissions>
|
||||||
|
<evaluator>org.alfresco.web.action.evaluator.MakeMultilingualEvaluator</evaluator>
|
||||||
|
<label-id>make_multilingual</label-id>
|
||||||
|
<tooltip-id>make_multilingual_tooltip</tooltip-id>
|
||||||
|
<image>/images/icons/make_ml.gif</image>
|
||||||
|
<action>dialog:makeMultilingual</action>
|
||||||
|
<params>
|
||||||
|
<param name="id">#{actionContext.id}</param>
|
||||||
|
</params>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<!-- Add a translation -->
|
||||||
|
<action id="add_translation">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Write</permission>
|
||||||
|
</permissions>
|
||||||
|
<evaluator>org.alfresco.web.action.evaluator.AddTranslationEvaluator</evaluator>
|
||||||
|
<label-id>add_translation</label-id>
|
||||||
|
<tooltip-id>add_translation_tooltip</tooltip-id>
|
||||||
|
<image>/images/icons/add_tranlsation.gif</image>
|
||||||
|
<action-listener>#{AddTranslationDialog.start}</action-listener>
|
||||||
|
<action>addTranslation</action>
|
||||||
|
<params>
|
||||||
|
<param name="id">#{actionContext.id}</param>
|
||||||
|
</params>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<!-- Add a translation whithout content -->
|
||||||
|
<action id="add_translation_wc">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Write</permission>
|
||||||
|
</permissions>
|
||||||
|
<evaluator>org.alfresco.web.action.evaluator.AddTranslationEvaluator</evaluator>
|
||||||
|
<label-id>add_translation_wc</label-id>
|
||||||
|
<tooltip-id>add_translation_wc_tooltip</tooltip-id>
|
||||||
|
<image>/images/icons/add_tranlsation_wc.gif</image>
|
||||||
|
<action>dialog:addTranslationWithoutContent</action>
|
||||||
|
<params>
|
||||||
|
<param name="id">#{actionContext.id}</param>
|
||||||
|
</params>
|
||||||
|
</action>
|
||||||
|
|
||||||
|
<!-- Manage ml container details -->
|
||||||
|
<action id="ml_details">
|
||||||
|
<permissions>
|
||||||
|
<permission allow="true">Read</permission>
|
||||||
|
</permissions>
|
||||||
|
<evaluator>org.alfresco.web.action.evaluator.MultilingualDetailsEvaluator</evaluator>
|
||||||
|
<label-id>manage_multilingual_details</label-id>
|
||||||
|
<tooltip-id>manage_multilingual_details_tooltip</tooltip-id>
|
||||||
|
<image>/images/icons/multilingual_details.gif</image>
|
||||||
|
<action-listener>#{BrowseBean.setupContentAction}</action-listener>
|
||||||
|
<action>dialog:showMLContainerDetails</action>
|
||||||
|
<params>
|
||||||
|
<param name="id">#{actionContext.id}</param>
|
||||||
|
</params>
|
||||||
|
</action>
|
||||||
|
|
||||||
<!-- the 'action-group' elements define unique blocks of actions that reference the actions
|
<!-- the 'action-group' elements define unique blocks of actions that reference the actions
|
||||||
as defined above and can override or supply display elements for the group of actions -->
|
as defined above and can override or supply display elements for the group of actions -->
|
||||||
<!-- the component is responsible for making the context Node object available with name
|
<!-- the component is responsible for making the context Node object available with name
|
||||||
@@ -747,19 +747,11 @@
|
|||||||
<action idref="ml_details" />
|
<action idref="ml_details" />
|
||||||
</action-group>
|
</action-group>
|
||||||
|
|
||||||
|
<action-group id="multilingual_details_actions">
|
||||||
<action-group id="Multilingual_details_actions">
|
|
||||||
<action idref="add_translation" />
|
<action idref="add_translation" />
|
||||||
<action idref="add_translation_wc" />
|
<action idref="add_translation_wc" />
|
||||||
<!--action idref="cut_container" /-->
|
|
||||||
<!--action idref="copy_container" /-->
|
|
||||||
<!--action idref="delete_container" /-->
|
|
||||||
<!--action idref="take_ownership_container" /-->
|
|
||||||
<!--action idref="start_discussion_container" /-->
|
|
||||||
<!--action idref="new_edition_container" /-->
|
|
||||||
</action-group>
|
</action-group>
|
||||||
|
|
||||||
|
|
||||||
<!-- Actions Menu for Space Details screen -->
|
<!-- Actions Menu for Space Details screen -->
|
||||||
<action-group id="space_details_actions">
|
<action-group id="space_details_actions">
|
||||||
<action idref="approve_space_details" />
|
<action idref="approve_space_details" />
|
||||||
|
@@ -20,7 +20,7 @@
|
|||||||
<!-- Override the cut action to check for discussions, don't allow them to be cut -->
|
<!-- Override the cut action to check for discussions, don't allow them to be cut -->
|
||||||
<!-- Cut a document or space to the clipboard, from browse or doc details screens -->
|
<!-- Cut a document or space to the clipboard, from browse or doc details screens -->
|
||||||
<action id="cut_node">
|
<action id="cut_node">
|
||||||
<evaluator>org.alfresco.web.action.evaluator.CutNodeEvaluator</evaluator>
|
<evaluator>org.alfresco.web.action.evaluator.DiscussionCutEvaluator</evaluator>
|
||||||
<permissions>
|
<permissions>
|
||||||
<permission allow="true">Delete</permission>
|
<permission allow="true">Delete</permission>
|
||||||
</permissions>
|
</permissions>
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
<!-- Override the copy action to check for discussions, don't allow them to be copied -->
|
<!-- Override the copy action to check for discussions, don't allow them to be copied -->
|
||||||
<!-- Copy a document or space to the clipboard, from browse or doc details screens -->
|
<!-- Copy a document or space to the clipboard, from browse or doc details screens -->
|
||||||
<action id="copy_node">
|
<action id="copy_node">
|
||||||
<evaluator>org.alfresco.web.action.evaluator.DiscussionCutCopyEvaluator</evaluator>
|
<evaluator>org.alfresco.web.action.evaluator.DiscussionCopyEvaluator</evaluator>
|
||||||
<label-id>copy</label-id>
|
<label-id>copy</label-id>
|
||||||
<image>/images/icons/copy.gif</image>
|
<image>/images/icons/copy.gif</image>
|
||||||
<action-listener>#{ClipboardBean.copyNode}</action-listener>
|
<action-listener>#{ClipboardBean.copyNode}</action-listener>
|
||||||
|
@@ -43,28 +43,24 @@ import org.alfresco.web.bean.repository.Node;
|
|||||||
*/
|
*/
|
||||||
public class AddTranslationEvaluator implements ActionEvaluator
|
public class AddTranslationEvaluator implements ActionEvaluator
|
||||||
{
|
{
|
||||||
|
public boolean evaluate(Node node)
|
||||||
|
{
|
||||||
|
FacesContext fc = FacesContext.getCurrentInstance();
|
||||||
|
|
||||||
public boolean evaluate(Node node)
|
MultilingualContentService mlservice =
|
||||||
{
|
(MultilingualContentService) FacesHelper.getManagedBean(fc, "MultilingualContentService");
|
||||||
FacesContext fc = FacesContext.getCurrentInstance();
|
|
||||||
|
|
||||||
MultilingualContentService mlservice =
|
UserPreferencesBean userprefs =
|
||||||
(MultilingualContentService) FacesHelper.getManagedBean(fc, "MultilingualContentService");
|
(UserPreferencesBean) FacesHelper.getManagedBean(fc, "UserPreferencesBean");
|
||||||
|
|
||||||
UserPreferencesBean userprefs =
|
// the number of translation of this document
|
||||||
(UserPreferencesBean) FacesHelper.getManagedBean(fc, "UserPreferencesBean");
|
int availableTranslationCount = mlservice.getTranslations(node.getNodeRef()).size();
|
||||||
|
// the total number of available languages for the translation
|
||||||
// the number of translation of this document
|
int contentFilterLanguagesCount = userprefs.getContentFilterLanguages(false).length;
|
||||||
int availableTranslationCount = mlservice.getTranslations(node.getNodeRef()).size();
|
|
||||||
// the total number of available languages for the translation
|
|
||||||
int contentFilterLanguagesCount = userprefs.getContentFilterLanguages(false).length;
|
|
||||||
|
|
||||||
return (
|
|
||||||
node.isLocked() == false &&
|
|
||||||
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
|
||||||
node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == true &&
|
|
||||||
availableTranslationCount < contentFilterLanguagesCount
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
return (node.isLocked() == false &&
|
||||||
|
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
||||||
|
node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == true &&
|
||||||
|
availableTranslationCount < contentFilterLanguagesCount);
|
||||||
|
}
|
||||||
}
|
}
|
@@ -40,20 +40,22 @@ import org.alfresco.web.bean.repository.Node;
|
|||||||
*
|
*
|
||||||
* @author yanipig
|
* @author yanipig
|
||||||
*/
|
*/
|
||||||
public class CutNodeEvaluator extends DiscussionCutCopyEvaluator
|
public class CutNodeEvaluator implements ActionEvaluator
|
||||||
{
|
{
|
||||||
|
|
||||||
public boolean evaluate(Node node)
|
public boolean evaluate(Node node)
|
||||||
{
|
{
|
||||||
boolean eval = super.evaluate(node);
|
boolean eval = true;
|
||||||
|
|
||||||
if(eval == true)
|
// impossible to cut/copy a translation without content.
|
||||||
{
|
if (node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_EMPTY_TRANSLATION))
|
||||||
eval = !node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT);
|
{
|
||||||
}
|
eval = false;
|
||||||
|
}
|
||||||
return eval;
|
else
|
||||||
|
{
|
||||||
}
|
eval = !node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT);
|
||||||
|
}
|
||||||
|
|
||||||
|
return eval;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -44,33 +44,32 @@ public class DeleteDocEvaluator implements ActionEvaluator
|
|||||||
*/
|
*/
|
||||||
public boolean evaluate(Node node)
|
public boolean evaluate(Node node)
|
||||||
{
|
{
|
||||||
boolean isPivot = false;
|
boolean isPivot = false;
|
||||||
|
|
||||||
// special case for multilingual documents
|
// special case for multilingual documents
|
||||||
if(node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT))
|
if (node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT))
|
||||||
{
|
{
|
||||||
FacesContext fc = FacesContext.getCurrentInstance();
|
FacesContext fc = FacesContext.getCurrentInstance();
|
||||||
|
|
||||||
MultilingualContentService mlservice =
|
MultilingualContentService mlservice =
|
||||||
(MultilingualContentService) FacesHelper.getManagedBean(fc, "MultilingualContentService");
|
(MultilingualContentService) FacesHelper.getManagedBean(fc, "MultilingualContentService");
|
||||||
|
|
||||||
// if the translation is the last translation, user can delete it
|
// if the translation is the last translation, user can delete it
|
||||||
if(mlservice.getTranslations(node.getNodeRef()).size() == 1)
|
if (mlservice.getTranslations(node.getNodeRef()).size() == 1)
|
||||||
{
|
{
|
||||||
isPivot = false;
|
isPivot = false;
|
||||||
}
|
}
|
||||||
// Else if the node is the pivot language, user can't delete it
|
// Else if the node is the pivot language, user can't delete it
|
||||||
else if( mlservice.getPivotTranslation(node.getNodeRef()).getId()
|
else if (mlservice.getPivotTranslation(node.getNodeRef()).getId()
|
||||||
.equalsIgnoreCase(node.getNodeRef().getId()))
|
.equalsIgnoreCase(node.getNodeRef().getId()))
|
||||||
{
|
{
|
||||||
isPivot = true;
|
isPivot = true;
|
||||||
}
|
}
|
||||||
// finally, the node is not the pivot translation, user can delete it
|
// finally, the node is not the pivot translation, user can delete it
|
||||||
}
|
}
|
||||||
|
|
||||||
return (node.isLocked() == false &&
|
return (node.isLocked() == false &&
|
||||||
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
||||||
isPivot == false
|
isPivot == false);
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -36,13 +36,13 @@ import org.alfresco.web.bean.repository.Node;
|
|||||||
import org.alfresco.web.bean.repository.Repository;
|
import org.alfresco.web.bean.repository.Repository;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Evaluates whether the cut or copy action should be visible.
|
* Evaluates whether the copy action should be visible.
|
||||||
*
|
*
|
||||||
* If the node is a discussion don't allow the action.
|
* If the node is a discussion don't allow the action.
|
||||||
*
|
*
|
||||||
* @author gavinc
|
* @author gavinc
|
||||||
*/
|
*/
|
||||||
public class DiscussionCutCopyEvaluator implements ActionEvaluator
|
public class DiscussionCopyEvaluator implements ActionEvaluator
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @see org.alfresco.web.action.ActionEvaluator#evaluate(org.alfresco.web.bean.repository.Node)
|
* @see org.alfresco.web.action.ActionEvaluator#evaluate(org.alfresco.web.bean.repository.Node)
|
||||||
@@ -66,7 +66,7 @@ public class DiscussionCutCopyEvaluator implements ActionEvaluator
|
|||||||
}
|
}
|
||||||
|
|
||||||
// impossible to copy a translation without content.
|
// impossible to copy a translation without content.
|
||||||
if(result && node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_EMPTY_TRANSLATION))
|
if (result && node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_EMPTY_TRANSLATION))
|
||||||
{
|
{
|
||||||
result = false;
|
result = false;
|
||||||
}
|
}
|
@@ -0,0 +1,70 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2005-2007 Alfresco Software Limited.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
|
|
||||||
|
* As a special exception to the terms and conditions of version 2.0 of
|
||||||
|
* the GPL, you may redistribute this Program in connection with Free/Libre
|
||||||
|
* and Open Source Software ("FLOSS") applications as described in Alfresco's
|
||||||
|
* FLOSS exception. You should have recieved a copy of the text describing
|
||||||
|
* the FLOSS exception, and it is also available here:
|
||||||
|
* http://www.alfresco.com/legal/licensing"
|
||||||
|
*/
|
||||||
|
package org.alfresco.web.action.evaluator;
|
||||||
|
|
||||||
|
import javax.faces.context.FacesContext;
|
||||||
|
|
||||||
|
import org.alfresco.model.ContentModel;
|
||||||
|
import org.alfresco.model.ForumModel;
|
||||||
|
import org.alfresco.service.cmr.repository.ChildAssociationRef;
|
||||||
|
import org.alfresco.service.cmr.repository.NodeService;
|
||||||
|
import org.alfresco.service.namespace.QName;
|
||||||
|
import org.alfresco.web.action.ActionEvaluator;
|
||||||
|
import org.alfresco.web.bean.repository.Node;
|
||||||
|
import org.alfresco.web.bean.repository.Repository;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Evaluates whether the cut action should be visible.
|
||||||
|
*
|
||||||
|
* If the node is a discussion don't allow the action.
|
||||||
|
*
|
||||||
|
* @author gavinc
|
||||||
|
*/
|
||||||
|
public class DiscussionCutEvaluator extends CutNodeEvaluator
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* @see org.alfresco.web.action.ActionEvaluator#evaluate(org.alfresco.web.bean.repository.Node)
|
||||||
|
*/
|
||||||
|
public boolean evaluate(Node node)
|
||||||
|
{
|
||||||
|
boolean result = super.evaluate(node);
|
||||||
|
|
||||||
|
// if the node in question is a forum...
|
||||||
|
if (result && node.getType().equals(ForumModel.TYPE_FORUM))
|
||||||
|
{
|
||||||
|
// get the association type
|
||||||
|
FacesContext context = FacesContext.getCurrentInstance();
|
||||||
|
NodeService nodeService = Repository.getServiceRegistry(context).getNodeService();
|
||||||
|
|
||||||
|
ChildAssociationRef parentAssoc = nodeService.getPrimaryParent(node.getNodeRef());
|
||||||
|
QName assocType = parentAssoc.getTypeQName();
|
||||||
|
|
||||||
|
// only allow the action if the association type is not the discussion assoc
|
||||||
|
result = (assocType.equals(ForumModel.ASSOC_DISCUSSION) == false);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
@@ -41,22 +41,19 @@ import org.alfresco.web.bean.repository.Node;
|
|||||||
*/
|
*/
|
||||||
public class MakeMultilingualEvaluator implements ActionEvaluator
|
public class MakeMultilingualEvaluator implements ActionEvaluator
|
||||||
{
|
{
|
||||||
|
public boolean evaluate(Node node)
|
||||||
|
{
|
||||||
|
FacesContext fc = FacesContext.getCurrentInstance();
|
||||||
|
|
||||||
public boolean evaluate(Node node)
|
UserPreferencesBean userprefs =
|
||||||
{
|
(UserPreferencesBean) FacesHelper.getManagedBean(fc, "UserPreferencesBean");
|
||||||
FacesContext fc = FacesContext.getCurrentInstance();
|
|
||||||
|
|
||||||
UserPreferencesBean userprefs =
|
// the total number of available languages for the translation have to be greather that 0
|
||||||
(UserPreferencesBean) FacesHelper.getManagedBean(fc, "UserPreferencesBean");
|
int contentFilterLanguagesCount = userprefs.getContentFilterLanguages(false).length;
|
||||||
|
|
||||||
// the total number of available languages for the translation have to be greather that 0
|
|
||||||
int contentFilterLanguagesCount = userprefs.getContentFilterLanguages(false).length;
|
|
||||||
|
|
||||||
return (node.isLocked() == false &&
|
|
||||||
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
|
||||||
node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == false &&
|
|
||||||
contentFilterLanguagesCount > 0
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
return (node.isLocked() == false &&
|
||||||
|
node.hasAspect(ContentModel.ASPECT_WORKING_COPY) == false &&
|
||||||
|
node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == false &&
|
||||||
|
contentFilterLanguagesCount > 0);
|
||||||
|
}
|
||||||
}
|
}
|
@@ -37,12 +37,8 @@ import org.alfresco.web.bean.repository.Node;
|
|||||||
*/
|
*/
|
||||||
public class MultilingualDetailsEvaluator implements ActionEvaluator
|
public class MultilingualDetailsEvaluator implements ActionEvaluator
|
||||||
{
|
{
|
||||||
|
public boolean evaluate(Node node)
|
||||||
public boolean evaluate(Node node)
|
{
|
||||||
{
|
return (node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == true);
|
||||||
return (
|
}
|
||||||
node.hasAspect(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT) == true
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -52,7 +52,6 @@ import org.alfresco.service.cmr.repository.ContentData;
|
|||||||
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
|
import org.alfresco.service.cmr.repository.InvalidNodeRefException;
|
||||||
import org.alfresco.service.cmr.repository.NodeRef;
|
import org.alfresco.service.cmr.repository.NodeRef;
|
||||||
import org.alfresco.service.cmr.repository.NodeService;
|
import org.alfresco.service.cmr.repository.NodeService;
|
||||||
import org.alfresco.service.cmr.repository.Path;
|
|
||||||
import org.alfresco.service.cmr.search.LimitBy;
|
import org.alfresco.service.cmr.search.LimitBy;
|
||||||
import org.alfresco.service.cmr.search.ResultSet;
|
import org.alfresco.service.cmr.search.ResultSet;
|
||||||
import org.alfresco.service.cmr.search.ResultSetRow;
|
import org.alfresco.service.cmr.search.ResultSetRow;
|
||||||
@@ -1057,38 +1056,38 @@ public class BrowseBean implements IContextListener
|
|||||||
};
|
};
|
||||||
|
|
||||||
public NodePropertyResolver resolverLang = new NodePropertyResolver() {
|
public NodePropertyResolver resolverLang = new NodePropertyResolver() {
|
||||||
public Object get(Node node) {
|
public Object get(Node node) {
|
||||||
|
|
||||||
String lang = null;
|
String lang = null;
|
||||||
|
|
||||||
if(node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT))
|
if (node.getAspects().contains(ContentModel.ASPECT_MULTILINGUAL_DOCUMENT))
|
||||||
{
|
{
|
||||||
Locale locale = (Locale) node.getProperties().get(ContentModel.PROP_LOCALE);
|
Locale locale = (Locale) node.getProperties().get(ContentModel.PROP_LOCALE);
|
||||||
|
|
||||||
// the content filter lang defined by the user
|
// the content filter lang defined by the user
|
||||||
String userLang = userPreferencesBean.getContentFilterLanguage();
|
String userLang = userPreferencesBean.getContentFilterLanguage();
|
||||||
// the node lang
|
// the node lang
|
||||||
String nodeLang = locale.getLanguage();
|
String nodeLang = locale.getLanguage();
|
||||||
|
|
||||||
// if filter equals all languages : display the lang for each translation
|
// if filter equals all languages : display the lang for each translation
|
||||||
if(nodeLang == null)
|
if (nodeLang == null)
|
||||||
{
|
{
|
||||||
lang = nodeLang;
|
lang = nodeLang;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if filter is different : display the lang
|
// if filter is different : display the lang
|
||||||
else if (!nodeLang.equalsIgnoreCase(userLang))
|
else if (!nodeLang.equalsIgnoreCase(userLang))
|
||||||
{
|
{
|
||||||
lang = nodeLang;
|
lang = nodeLang;
|
||||||
}
|
}
|
||||||
|
|
||||||
// else if the filter is equal to the lang node : nothing to do [lang = null]
|
// else if the filter is equal to the lang node : nothing to do [lang = null]
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
return lang;
|
|
||||||
}
|
}
|
||||||
};
|
|
||||||
|
return lang;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------
|
||||||
// Navigation action event handlers
|
// Navigation action event handlers
|
||||||
|
@@ -82,28 +82,28 @@ public class UserPreferencesBean
|
|||||||
*/
|
*/
|
||||||
public SelectItem[] getLanguages()
|
public SelectItem[] getLanguages()
|
||||||
{
|
{
|
||||||
// Get the item selection list
|
// Get the item selection list
|
||||||
SelectItem[] items = getLanguageItems();
|
SelectItem[] items = getLanguageItems();
|
||||||
// Change the current language
|
// Change the current language
|
||||||
if (this.language == null)
|
if (this.language == null)
|
||||||
{
|
{
|
||||||
// first try to get the language that the current user is using
|
// first try to get the language that the current user is using
|
||||||
Locale lastLocale = Application.getLanguage(FacesContext.getCurrentInstance());
|
Locale lastLocale = Application.getLanguage(FacesContext.getCurrentInstance());
|
||||||
if (lastLocale != null)
|
if (lastLocale != null)
|
||||||
{
|
{
|
||||||
this.language = lastLocale.toString();
|
this.language = lastLocale.toString();
|
||||||
}
|
}
|
||||||
// else we default to the first item in the list
|
// else we default to the first item in the list
|
||||||
else if (items.length > 0)
|
else if (items.length > 0)
|
||||||
{
|
{
|
||||||
this.language = (String) items[0].getValue();
|
this.language = (String) items[0].getValue();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw new AlfrescoRuntimeException("The language list is empty");
|
throw new AlfrescoRuntimeException("The language list is empty");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -133,50 +133,48 @@ public class UserPreferencesBean
|
|||||||
{
|
{
|
||||||
if (this.contentFilterLanguage == null)
|
if (this.contentFilterLanguage == null)
|
||||||
{
|
{
|
||||||
Locale locale = (Locale) PreferencesService.getPreferences().getValue(PREF_CONTENTFILTERLANGUAGE);
|
Locale locale = (Locale) PreferencesService.getPreferences().getValue(PREF_CONTENTFILTERLANGUAGE);
|
||||||
// Null means All Languages
|
// Null means All Languages
|
||||||
if (locale == null)
|
if (locale == null)
|
||||||
{
|
{
|
||||||
this.contentFilterLanguage = null;
|
this.contentFilterLanguage = null;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
this.contentFilterLanguage = locale.toString();
|
this.contentFilterLanguage = locale.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// set the content filter locale on the core
|
// set the content filter locale on the core
|
||||||
I18NUtil.setContentLocale(I18NUtil.parseLocale(this.contentFilterLanguage));
|
I18NUtil.setContentLocale(I18NUtil.parseLocale(this.contentFilterLanguage));
|
||||||
|
|
||||||
return this.contentFilterLanguage;
|
return this.contentFilterLanguage;
|
||||||
//return (contentFilterLanguage.equals(MSG_CONTENTALLLANGUAGES)) ? "en" : contentFilterLanguage;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param languageStr A valid locale string or {@link #MSG_CONTENTALLLANGUAGES}
|
* @param languageStr A valid locale string or {@link #MSG_CONTENTALLLANGUAGES}
|
||||||
*/
|
*/
|
||||||
public void setContentFilterLanguage(String contentFilterLanguage)
|
public void setContentFilterLanguage(String contentFilterLanguage)
|
||||||
{
|
{
|
||||||
this.contentFilterLanguage = contentFilterLanguage;
|
this.contentFilterLanguage = contentFilterLanguage;
|
||||||
Locale language = null;
|
Locale language = null;
|
||||||
if (contentFilterLanguage.equals(MSG_CONTENTALLLANGUAGES))
|
if (contentFilterLanguage.equals(MSG_CONTENTALLLANGUAGES))
|
||||||
{
|
{
|
||||||
// The generic "All Languages" was selected - persist this as a null
|
// The generic "All Languages" was selected - persist this as a null
|
||||||
this.contentFilterLanguage = null;
|
this.contentFilterLanguage = null;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// It should be a proper locale string
|
// It should be a proper locale string
|
||||||
language = I18NUtil.parseLocale(contentFilterLanguage);
|
language = I18NUtil.parseLocale(contentFilterLanguage);
|
||||||
}
|
}
|
||||||
PreferencesService.getPreferences().setValue(PREF_CONTENTFILTERLANGUAGE, language);
|
PreferencesService.getPreferences().setValue(PREF_CONTENTFILTERLANGUAGE, language);
|
||||||
|
|
||||||
// set the content filter locale on the core
|
// set the content filter locale on the core
|
||||||
I18NUtil.setContentLocale(language);
|
I18NUtil.setContentLocale(language);
|
||||||
|
|
||||||
// Ensure a refresh
|
// Ensure a refresh
|
||||||
UIContextService.getInstance(FacesContext.getCurrentInstance()).notifyBeans();
|
UIContextService.getInstance(FacesContext.getCurrentInstance()).notifyBeans();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -184,7 +182,7 @@ public class UserPreferencesBean
|
|||||||
*/
|
*/
|
||||||
public SelectItem[] getContentFilterLanguages()
|
public SelectItem[] getContentFilterLanguages()
|
||||||
{
|
{
|
||||||
// Get the item selection list
|
// Get the item selection list
|
||||||
return getContentFilterLanguages(true);
|
return getContentFilterLanguages(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -207,36 +205,30 @@ public class UserPreferencesBean
|
|||||||
// include the <All Languages> item if needed
|
// include the <All Languages> item if needed
|
||||||
if (includeAllLanguages)
|
if (includeAllLanguages)
|
||||||
{
|
{
|
||||||
String allLanguagesStr = msg.getString(MSG_CONTENTALLLANGUAGES);
|
String allLanguagesStr = msg.getString(MSG_CONTENTALLLANGUAGES);
|
||||||
items[idx] = new SelectItem(MSG_CONTENTALLLANGUAGES, allLanguagesStr);
|
items[idx] = new SelectItem(MSG_CONTENTALLLANGUAGES, allLanguagesStr);
|
||||||
idx++;
|
idx++;
|
||||||
}
|
}
|
||||||
|
|
||||||
for(String lang : languages)
|
for (String lang : languages)
|
||||||
{
|
{
|
||||||
String label = contentFilterLanguagesService.getLabelByCode(lang);
|
String label = contentFilterLanguagesService.getLabelByCode(lang);
|
||||||
|
items[idx++] = new SelectItem(lang, label);
|
||||||
items[idx] = new SelectItem(
|
|
||||||
lang,
|
|
||||||
label);
|
|
||||||
|
|
||||||
idx++;
|
idx++;
|
||||||
}
|
}
|
||||||
|
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* return the list of languages in which the given node hasn't be translated yet.
|
||||||
/**
|
*
|
||||||
* return the list of languages in which the given node hasn't be translated yet.
|
|
||||||
*
|
|
||||||
* @param translation the translatable node ref
|
* @param translation the translatable node ref
|
||||||
* @param returnTranslationLanguage if true, return the language of the given translation.
|
* @param returnTranslationLanguage if true, return the language of the given translation.
|
||||||
* @return the list of languages
|
* @return the list of languages
|
||||||
*/
|
*/
|
||||||
public SelectItem[] getAvailablesContentFilterLanguages(NodeRef translation, boolean returnTranslationLanguage)
|
public SelectItem[] getAvailablesContentFilterLanguages(NodeRef translation, boolean returnTranslationLanguage)
|
||||||
{
|
{
|
||||||
// get the list of missing translation of this node
|
// get the list of missing translation of this node
|
||||||
List<Locale> missingLocales = multilingualContentService.getMissingTranslations(translation, returnTranslationLanguage);
|
List<Locale> missingLocales = multilingualContentService.getMissingTranslations(translation, returnTranslationLanguage);
|
||||||
|
|
||||||
@@ -249,15 +241,14 @@ public class UserPreferencesBean
|
|||||||
String label = contentFilterLanguagesService.getLabelByCode(locale.getLanguage());
|
String label = contentFilterLanguagesService.getLabelByCode(locale.getLanguage());
|
||||||
|
|
||||||
items[idx] = new SelectItem(
|
items[idx] = new SelectItem(
|
||||||
locale.toString(),
|
locale.toString(),
|
||||||
label);
|
label);
|
||||||
idx++;
|
idx++;
|
||||||
}
|
}
|
||||||
|
|
||||||
return items;
|
return items;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Helper to return the available language items
|
* Helper to return the available language items
|
||||||
*
|
*
|
||||||
|
@@ -500,14 +500,15 @@ a.topToolbarLinkHighlight, a.topToolbarLinkHighlight:link, a.topToolbarLinkHighl
|
|||||||
|
|
||||||
.langCode
|
.langCode
|
||||||
{
|
{
|
||||||
color:#FFFFFF;
|
color: #FFFFFF;
|
||||||
padding-left:2px;
|
padding-left: 2px;
|
||||||
padding-right:2px;
|
padding-right: 2px;
|
||||||
letter-spacing:1px;
|
margin-left: 4px;
|
||||||
border:1px solid #000000;
|
letter-spacing: 1px;
|
||||||
background-color:#0000FF;
|
border: 1px solid #000000;
|
||||||
font-weight:bolder;
|
background-color: #0000FF;
|
||||||
text-transform:uppercase;
|
font-weight: bolder;
|
||||||
|
text-transform: uppercase;
|
||||||
}
|
}
|
||||||
|
|
||||||
.userGroupPickerList
|
.userGroupPickerList
|
||||||
|
@@ -422,8 +422,7 @@
|
|||||||
</f:facet>
|
</f:facet>
|
||||||
<a:actionLink id="col10-act2" value="#{r.name}" href="#{r.url}" target="new" />
|
<a:actionLink id="col10-act2" value="#{r.name}" href="#{r.url}" target="new" />
|
||||||
<r:lockIcon id="col10-lock" value="#{r.nodeRef}" align="absmiddle" />
|
<r:lockIcon id="col10-lock" value="#{r.nodeRef}" align="absmiddle" />
|
||||||
<h:outputLabel value=" " rendered="#{r.lang != null}"/>
|
<h:outputLabel id="col10-lang" value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}" />
|
||||||
<h:outputLabel value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}"/>
|
|
||||||
<r:nodeInfo id="col10-info" value="#{r.id}">
|
<r:nodeInfo id="col10-info" value="#{r.id}">
|
||||||
<h:graphicImage id="col10-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
<h:graphicImage id="col10-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
||||||
</r:nodeInfo>
|
</r:nodeInfo>
|
||||||
@@ -436,8 +435,7 @@
|
|||||||
</f:facet>
|
</f:facet>
|
||||||
<a:actionLink id="col11-act2" value="#{r.name}" href="#{r.url}" target="new" styleClass="header" />
|
<a:actionLink id="col11-act2" value="#{r.name}" href="#{r.url}" target="new" styleClass="header" />
|
||||||
<r:lockIcon id="col11-lock" value="#{r.nodeRef}" align="absmiddle" />
|
<r:lockIcon id="col11-lock" value="#{r.nodeRef}" align="absmiddle" />
|
||||||
<h:outputLabel value=" " rendered="#{r.lang != null}"/>
|
<h:outputLabel id="col11-lang" value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}"/>
|
||||||
<h:outputLabel value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}"/>
|
|
||||||
<r:nodeInfo id="col11-info" value="#{r.id}">
|
<r:nodeInfo id="col11-info" value="#{r.id}">
|
||||||
<h:graphicImage id="col11-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
<h:graphicImage id="col11-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
||||||
</r:nodeInfo>
|
</r:nodeInfo>
|
||||||
@@ -450,8 +448,7 @@
|
|||||||
</f:facet>
|
</f:facet>
|
||||||
<a:actionLink id="col12-act2" value="#{r.name}" href="#{r.url}" target="new" styleClass="title" />
|
<a:actionLink id="col12-act2" value="#{r.name}" href="#{r.url}" target="new" styleClass="title" />
|
||||||
<r:lockIcon id="col12-lock" value="#{r.nodeRef}" align="absmiddle" />
|
<r:lockIcon id="col12-lock" value="#{r.nodeRef}" align="absmiddle" />
|
||||||
<h:outputLabel value=" " rendered="#{r.lang != null}"/>
|
<h:outputLabel id="col12-lang" value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}"/>
|
||||||
<h:outputLabel value="#{r.lang}" styleClass="langCode" rendered="#{r.lang != null}"/>
|
|
||||||
<r:nodeInfo id="col12-info" value="#{r.id}">
|
<r:nodeInfo id="col12-info" value="#{r.id}">
|
||||||
<h:graphicImage id="col12-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
<h:graphicImage id="col12-img" url="/images/icons/popup.gif" styleClass="popupImage" width="16" height="16" />
|
||||||
</r:nodeInfo>
|
</r:nodeInfo>
|
||||||
|
@@ -219,7 +219,7 @@
|
|||||||
<%-- Document Actions --%>
|
<%-- Document Actions --%>
|
||||||
<a:panel label="#{msg.actions}" id="actions-panel" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white" style="text-align:center"
|
<a:panel label="#{msg.actions}" id="actions-panel" border="white" bgcolor="white" titleBorder="lbgrey" expandedTitleBorder="dotted" titleBgcolor="white" style="text-align:center"
|
||||||
progressive="true" expanded='#{DocumentDetailsBean.panels["actions-panel"]}' expandedActionListener="#{DocumentDetailsBean.expandPanel}">
|
progressive="true" expanded='#{DocumentDetailsBean.panels["actions-panel"]}' expandedActionListener="#{DocumentDetailsBean.expandPanel}">
|
||||||
<r:actions id="actions_doc" value="Multilingual_details_actions" context="#{DocumentDetailsBean.document}" verticalSpacing="3" style="white-space:nowrap" />
|
<r:actions id="actions_doc" value="multilingual_details_actions" context="#{DocumentDetailsBean.document}" verticalSpacing="3" style="white-space:nowrap" />
|
||||||
</a:panel>
|
</a:panel>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@@ -40,6 +40,8 @@ var MySpaces = {
|
|||||||
init: function()
|
init: function()
|
||||||
{
|
{
|
||||||
MySpaces.parseSpacePanels();
|
MySpaces.parseSpacePanels();
|
||||||
|
// hide the ajax wait panel and show the main spaces panel
|
||||||
|
$('spacePanelOverlay').setStyle('visibility', 'hidden');
|
||||||
$('spacePanel').setStyle('visibility', 'visible');
|
$('spacePanel').setStyle('visibility', 'visible');
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -324,6 +326,8 @@ var MySpaces = {
|
|||||||
// empty the main panel div and restart by reloading the panel contents
|
// empty the main panel div and restart by reloading the panel contents
|
||||||
var spacePanel = $('spacePanel');
|
var spacePanel = $('spacePanel');
|
||||||
spacePanel.setStyle('visibility', 'hidden');
|
spacePanel.setStyle('visibility', 'hidden');
|
||||||
|
// show the ajax wait panel
|
||||||
|
$('spacePanelOverlay').setStyle('visibility', 'visible');
|
||||||
spacePanel.empty();
|
spacePanel.empty();
|
||||||
spacePanel.removeEvents('mouseleave');
|
spacePanel.removeEvents('mouseleave');
|
||||||
MySpaces.start();
|
MySpaces.start();
|
||||||
|
@@ -216,7 +216,7 @@ Alfresco.InfoPanel.prototype =
|
|||||||
if (this.popupElement != null && this.visible == true)
|
if (this.popupElement != null && this.visible == true)
|
||||||
{
|
{
|
||||||
// fade out and set the visiblilty flag on complete of the anim
|
// fade out and set the visiblilty flag on complete of the anim
|
||||||
var fxAnim = new Fx.Style(this.popupElement, 'opacity',
|
/*var fxAnim = new Fx.Style(this.popupElement, 'opacity',
|
||||||
{
|
{
|
||||||
duration: 300,
|
duration: 300,
|
||||||
transition: Fx.Transitions.linear,
|
transition: Fx.Transitions.linear,
|
||||||
@@ -225,7 +225,10 @@ Alfresco.InfoPanel.prototype =
|
|||||||
this.element.panel.visible = false;
|
this.element.panel.visible = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
fxAnim.start(1, 0);
|
fxAnim.start(1, 0);*/
|
||||||
|
this.popupElement.setStyle("opacity", 0);
|
||||||
|
this.popupElement.setStyle("display", "none");
|
||||||
|
this.popupElement.panel.visible = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user