cancel
Showing results for 
Search instead for 
Did you mean: 

Ocultar o deshabilitar 'Mis ficheros', 'Ficheros compartidos',.... cuando los usuarios no sean administrador

fjsobrino
Champ on-the-rise
Champ on-the-rise

Buenos días,

Soy novato de alfresco y también estoy aprendiendo javascript. Quiero ocultar o deshabitilar "Mis ficheros",… cuando los usuarios no sean administradores. Bueno estaba investigando sobre el fichero de share-header.get.js de alfresco V 4.2.f, estaba buscando varios foros sobre ese tema y he encontrado algunos:

https://forums.alfresco.com/comment/125692#comment-125692

http://blogs.alfresco.com/wp/developer/2013/09/16/customizing-the-share-header-part-3/

https://issues.alfresco.com/jira/browse/ALF-19930

https://forums.alfresco.com/forum/installation-upgrades-configuration-integration/configuration/modi...

Los he leído, pero entiendo más o menos porque no soy un experto del ingles, he intentado modificar share-header.get.js y también he creado el fichero con xml "extension-modules.xml" donde C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\site-data\extensions, creo no falta nada más, pero me sale un error 500 general…, no sé por qué.., por eso tengo muchas dudas y creo que he desarrollado mal el código pero quiero enseñaros lo que he hecho:

share-header.get.js:

<import resource="classpath:/alfresco/site-webscripts/org/alfresco/share/imports/share-header.lib.js">

model.jsonModel = {
   rootNodeId: "share-header",
   services: getHeaderServices(),
   widgets: [
      {
         id: "SHARE_VERTICAL_LAYOUT",
         name: "alfresco/layout/VerticalWidgets",
         config:
         {
            widgets: getHeaderModel()
         }
      }
   ]
var widget = widgetUtils.findObject(model.jsonModel.widgets, "id", "HEADER_SHARED_FILES");
if(widget !== undefined && widget !== null)
{
   widget.name = null; // CreateWebScriptsWidgetsDirective checks name and only creates WidgetData if name is a string
}

var widget, widgetsToRemove = [ "HEADER_SHARED_FILES", "HEADER_MY_FILES", "HEADER_TASKS", "HEADER_SEARCH" ], idx, max;
for (idx = 0, max = widgetsToRemove.length; idx < max; idx++)
{
   findAndRemoveIn(model.jsonModel.widgets, null, null, widgetsToRemove[idx]);
}
function findAndRemoveIn(obj, arrContext, arrIdx, id)
{
   var idx, max, key;
   if (obj !== undefined && obj !== null)
   {
      if (Object.prototype.toString().apply(obj) === "[object Object]")
      {
         if (obj.hasOwnProperty("id") && obj.id === id)
         {
            if (arrContext !== null && arrIdx !== null)
            {
               arrContext.splice(arrIdx, 1);
            }
            else
            {   
               logger.debug("Unexpected match outside of array structure: " + jsonUtils.toJSONString(obj));
            }
         }
         else
         {
            for (key in obj)
            {
               if (obj.hasOwnProperty(key))
               {
                  findAndRemoveIn(obj[key], null, null, id);
               }
            }
         }
      }
      else if (Object.prototype.toString().apply(obj) === "[object Array]")
      {
         for (idx = 0, max = obj.length; idx < max; idx++)
         {
            findAndRemoveIn(obj[idx], obj, idx, id);
         }
      }
   }
}
};

extension-modules.xml:

<?xml version="1.0"?>
<extension>
   <modules>
      <module>
         <id>Remove Share Headers</id>
         <version>1.0</version>
          <auto-deploy>true</auto-deploy>
          <customizations>
            <customization>
               <targetPackageRoot>org.alfresco.share.header</targetPackageRoot>
               <sourcePackageRoot>share-mod.remove-headers-link</sourcePackageRoot>
            </customization>
          </customizations>
      </module>
      </modules>
</extension>

Me sale el error 500:

The Web Script /share/service/share-header has responded with a status of 500 - Internal Error.

500 Description:   An error inside the HTTP server which prevented it from fulfilling the request.

Message:   08150001 Failed to execute script 'classpath*:alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js': 08150000 TypeError: Cannot find function apply. (file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js#1939)

Exception:   org.mozilla.javascript.EcmaError - TypeError: Cannot find function apply. (file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js#1939)

org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3350)
org.mozilla.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3340)
org.mozilla.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3356)
org.mozilla.javascript.ScriptRuntime.typeError1(ScriptRuntime.java:3368)
org.mozilla.javascript.ScriptRuntime.notFunctionError(ScriptRuntime.java:3428)
org.mozilla.javascript.ScriptRuntime.getPropFunctionAndThis(ScriptRuntime.java:2052)
org.mozilla.javascript.gen.c4._c32(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js:1939)
org.mozilla.javascript.gen.c4.call(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js)
org.mozilla.javascript.optimizer.OptRuntime.callName(OptRuntime.java:97)
org.mozilla.javascript.gen.c4._c0(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js:1932)
org.mozilla.javascript.gen.c4.call(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js)
org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:393)
org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:2834)
org.mozilla.javascript.gen.c4.call(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js)
org.mozilla.javascript.gen.c4.exec(file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js)
org.springframework.extensions.webscripts.processor.JSScriptProcessor.executeScriptImpl(JSScriptProcessor.java:318)
org.springframework.extensions.webscripts.processor.JSScriptProcessor.executeScript(JSScriptProcessor.java:192)
org.springframework.extensions.webscripts.AbstractWebScript.executeScript(AbstractWebScript.java:1305)
org.springframework.extensions.webscripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:86)
org.springframework.extensions.webscripts.PresentationContainer.executeScript(PresentationContainer.java:70)
org.springframework.extensions.webscripts.LocalWebScriptRuntimeContainer.executeScript(LocalWebScriptRuntimeContainer.java:236)
org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:378)
org.springframework.extensions.webscripts.AbstractRuntime.executeScript(AbstractRuntime.java:209)
org.springframework.extensions.webscripts.WebScriptProcessor.executeBody(WebScriptProcessor.java:310)
org.springframework.extensions.surf.render.AbstractProcessor.execute(AbstractProcessor.java:57)
org.springframework.extensions.surf.render.RenderService.process(RenderService.java:599)
org.springframework.extensions.surf.render.RenderService.renderSubComponent(RenderService.java:505)
org.springframework.extensions.surf.render.RenderService.processComponent(RenderService.java:419)
org.springframework.extensions.surf.render.RenderService.renderComponent(RenderService.java:942)
org.springframework.extensions.surf.render.RenderService.renderRegionComponents(RenderService.java:900)
org.springframework.extensions.surf.render.bean.RegionRenderer.body(RegionRenderer.java:89)
org.springframework.extensions.surf.render.AbstractRenderer.render(AbstractRenderer.java:77)
org.springframework.extensions.surf.render.RenderService.renderRegion(RenderService.java:851)
org.springframework.extensions.directives.RegionDirectiveData.render(RegionDirectiveData.java:91)
org.springframework.extensions.surf.extensibility.impl.ExtensibilityModelImpl.merge(ExtensibilityModelImpl.java:408)
org.springframework.extensions.surf.extensibility.impl.AbstractExtensibilityDirective.merge(AbstractExtensibilityDirective.java:169)
org.springframework.extensions.surf.extensibility.impl.AbstractExtensibilityDirective.execute(AbstractExtensibilityDirective.java:137)
freemarker.core.Environment.visit(Environment.java:274)
freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.MixedContent.accept(MixedContent.java:92)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.Environment$3.render(Environment.java:246)
org.springframework.extensions.surf.extensibility.impl.DefaultExtensibilityDirectiveData.render(DefaultExtensibilityDirectiveData.java:119)
org.springframework.extensions.surf.extensibility.impl.ExtensibilityModelImpl.merge(ExtensibilityModelImpl.java:408)
org.springframework.extensions.surf.extensibility.impl.AbstractExtensibilityDirective.merge(AbstractExtensibilityDirective.java:169)
org.springframework.extensions.surf.extensibility.impl.AbstractExtensibilityDirective.execute(AbstractExtensibilityDirective.java:137)
freemarker.core.Environment.visit(Environment.java:274)
freemarker.core.UnifiedCall.accept(UnifiedCall.java:126)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.MixedContent.accept(MixedContent.java:92)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.Environment.visit(Environment.java:406)
freemarker.core.BodyInstruction.accept(BodyInstruction.java:93)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.MixedContent.accept(MixedContent.java:92)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.Macro$Context.runMacro(Macro.java:172)
freemarker.core.Environment.visit(Environment.java:614)
freemarker.core.UnifiedCall.accept(UnifiedCall.java:106)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.MixedContent.accept(MixedContent.java:92)
freemarker.core.Environment.visit(Environment.java:221)
freemarker.core.Environment.process(Environment.java:199)
org.springframework.extensions.webscripts.processor.FTLTemplateProcessor.process(FTLTemplateProcessor.java:171)
org.springframework.extensions.webscripts.WebTemplateProcessor.executeBody(WebTemplateProcessor.java:438)
org.springframework.extensions.surf.render.AbstractProcessor.execute(AbstractProcessor.java:57)
org.springframework.extensions.surf.render.RenderService.processTemplate(RenderService.java:721)
org.springframework.extensions.surf.render.bean.TemplateInstanceRenderer.body(TemplateInstanceRenderer.java:140)
org.springframework.extensions.surf.render.AbstractRenderer.render(AbstractRenderer.java:77)
org.springframework.extensions.surf.render.bean.PageRenderer.body(PageRenderer.java:85)
org.springframework.extensions.surf.render.AbstractRenderer.render(AbstractRenderer.java:77)
org.springframework.extensions.surf.render.RenderService.renderPage(RenderService.java:762)
org.springframework.extensions.surf.mvc.PageView.dispatchPage(PageView.java:411)
org.springframework.extensions.surf.mvc.PageView.renderView(PageView.java:306)
org.springframework.extensions.surf.mvc.AbstractWebFrameworkView.renderMergedOutputModel(AbstractWebFrameworkView.java:316)
org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1047)
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:817)
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:549)
javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.alfresco.web.site.servlet.MTAuthenticationFilter.doFilter(MTAuthenticationFilter.java:74)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.alfresco.web.site.servlet.SecurityHeadersFilter.doFilter(SecurityHeadersFilter.java:168)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.alfresco.web.site.servlet.CSRFFilter.doFilter(CSRFFilter.java:313)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.alfresco.web.site.servlet.SSOAuthenticationFilter.doFilter(SSOAuthenticationFilter.java:378)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2441)
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2430)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Exception:   org.springframework.extensions.webscripts.WebScriptException - 08150000 TypeError: Cannot find function apply. (file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js#1939)

org.springframework.extensions.webscripts.processor.JSScriptProcessor.executeScriptImpl(JSScriptProcessor.java:328)

Exception:   org.springframework.extensions.webscripts.WebScriptException - 08150001 Failed to execute script 'classpath*:alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js': 08150000 TypeError: Cannot find function apply. (file:/C:/Alfresco/tomcat/webapps/share/WEB-INF/classes/alfresco/site-webscripts/org/alfresco/share/header/share-header.get.js#1939)

org.springframework.extensions.webscripts.processor.JSScriptProcessor.executeScript(JSScriptProcessor.java:200)

Server:   Spring WebScripts - v1.2.0 (Release 1331) schema 1.000
Time:   15-sep-2014 12:39:41

Diagnostics:   Inspect Web Script (org/alfresco/share/header/share-header.get)

He estado probando varias veces pero aún me sale ese error…, pienso que estos cogidos no están bien…, alguien me podría ayudar

Muchas gracias

Un saludo
15 REPLIES 15

angelborroy
Community Manager Community Manager
Community Manager
En realidad no necesitas modificar el fichero <CODE>share-header.get.js</CODE> completo. La mejor manera es extenderlo mediante los mecanismos de Alfresco.

Para ello deberás crear un fichero "hide-elements-extensions.xml" en <CODE>web-extension/site-data/extensions</CODE> con un contenido similar al siguiente:


<extension>
   <modules>
      <module>
         <id>Hide Elements</id>
         <customizations>
            <customization>
               <targetPackageRoot>org.alfresco.share.header</targetPackageRoot>
               <sourcePackageRoot>es.keensoft.share.header</sourcePackageRoot>
            </customization>
         </customizations>
         <auto-deploy>true</auto-deploy>
      </module>
   </modules>
</extension>

Después basta con incluir un fichero <CODE>share-header.get.js</CODE> en <CODE>web-extension/site-webscripts/es/keensoft/share/header/share-header.get.js</CODE> que contenga solo la modificación que quieres hacer
<CODE>
if (!user.isAdmin)
{
  widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_MY_FILES");
}
</CODE>
Hyland Developer Evangelist

Buenos días Angel,

Muchas gracias por responderme, estaba probando como lo has dicho pero no funciona bien…ya que no oculta el menú superior "Mis ficheros",…etc. me han salido todos, ¿significa que no lo he hecho bien o algo así?

Quiero contarte lo que hecho:

1-Dejo el fichero original share-header.get.js donde C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\site-webscripts\org\alfresco\share\header

2-He creado el fichero hide-elements-extensions.xml donde C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-date\extensions , lo he hecho casi igual como lo has dicho:



<?xml version="1.0"?>
<extension>
   <modules>
      <module>
         <id>Hide Elements</id>
         <version>1.0</version>
          <auto-deploy>true</auto-deploy>
          <customizations>
            <customization>
               <targetPackageRoot>org.alfresco.share.header</targetPackageRoot>
               <sourcePackageRoot>es.ocultar.share.header</sourcePackageRoot>
            </customization>
          </customizations>
      </module>
      </modules>
</extension>



3- He copiado el fichero original share-header.get.js y he pegado en: C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-webscripts\es\ocultar\share\header, y lo he modificado:



<import resource="classpath:/alfresco/site-webscripts/org/alfresco/share/imports/share-header.lib.js">

model.jsonModel = {
   rootNodeId: "share-header",
   services: getHeaderServices(),
   widgets: [
      {
         id: "SHARE_VERTICAL_LAYOUT",
         name: "alfresco/layout/VerticalWidgets",
         config:
         {
            widgets: getHeaderModel()
         }
      }
   ]
   if (!user.isAdmin)
   {
        widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_MY_FILES");
   widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_SHARED_FILES");
   widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_TASKS");
   }
};


¿Lo he hecho mal?

Por cierto, he leído en otro foro ( https://issues.alfresco.com/jira/browse/ALF-19930 y https://forums.alfresco.com/comment/125692#comment-125692 ) que se decía que a partir de alfresco v 4.2.d no funcionan estos códigos… ¿debería hacerlo, no?

Muchas gracias,

angelborroy
Community Manager Community Manager
Community Manager
En realidad estos códigos (basados en aikau) solo funcionan a partir de la 4.2.e.

En el share-header.get.js que has personalizado tienes contenido adicional. Solo tiene que incluir:

<javascript>
   if (!user.isAdmin)
   {
        widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_MY_FILES");
   widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_SHARED_FILES");
   widgetUtils.deleteObjectFromArray(model.jsonModel, "id", "HEADER_TASKS");
   }
</javascript>

El resto sobra. Este es el contenido <b>completo</b> del fichero.
Hyland Developer Evangelist

angelborroy
Community Manager Community Manager
Community Manager
Revisándolo me he dado cuenta de que había una ruta mal, en vez de "C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-date\extensions" es "C:\Alfresco\tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-dat<strong>a</strong>\extensions"

Lo he corregido en mi respuesta anterior para que no lleve a equívocos.
Hyland Developer Evangelist

fjsobrino
Champ on-the-rise
Champ on-the-rise
Buenos días,

Perdona que ayer no te haya contestado porque estaba luchando con este tema…

Muchas gracias por avisarme, lo he comprobado entrando a http://localhost:8080/share/page/modules/deploy, y me ha salido "Hide Elements Version 1.0" que quiere decir que la ruta está bien.

Pero no me aparece el menú de la cabecera…

creo que el código de share-header.get.js, como has dicho, no funciona…

¿Falta algo? Porque copiando y pegando lo que has puesto no sale

Muchas gracias

angelborroy
Community Manager Community Manager
Community Manager
Tenías razón: has ido a dar con una incidencia compleja. En la 4.2.f dejó de funcionar, aunque parece que vuelve a funcionar en la 5.0.a (aunque no lo he probado).

La incidencia a la que hacías referencia (https://issues.alfresco.com/jira/browse/ALF-20384) lo explica. He probado el código sugerido en la incidencia (https://issues.alfresco.com/jira/browse/ALF-19930) y funciona. Y también funcionará en 5.0.a

Te incluyo el contenido completo de <CODE>share-header.get.js</CODE>, aunque oculta los menús para todos los usuarios, creo que podrás adaptarlo para hacer lo que necesitas.
<javascript>
var widget, widgetsToRemove = ["HEADER_SHARED_FILES", "HEADER_MY_FILES", "HEADER_TASKS"], idx, max;
for (idx = 0, max = widgetsToRemove.length; idx < max; idx++) {
   findAndRemoveIn(model.jsonModel.widgets, null, null, widgetsToRemove[idx]);
}

function findAndRemoveIn(obj, arrContext, arrIdx, id) {
   var idx, max, key;
   if (obj !== undefined && obj !== null) {
      if (Object.prototype.toString.apply(obj) === "[object Object]") {
         if (obj.hasOwnProperty("id") && obj.id === id) {
            if (arrContext !== null && arrIdx !== null) {
               arrContext.splice(arrIdx, 1);
            } else {
               logger.debug("Unexpected match outside of array structure: "
                           + jsonUtils.toJSONString(obj));
            }
         } else {
            for (key in obj) {
               if (obj.hasOwnProperty(key)) {
                  findAndRemoveIn(obj[key], null, null, id);
               }
            }
         }
      } else if (Object.prototype.toString.apply(obj) === "[object Array]") {
         for (idx = 0, max = obj.length; idx < max; idx++) {
            findAndRemoveIn(obj[idx], obj, idx, id);
         }
      }
   }
}
</javascript>
Hyland Developer Evangelist

Ya…, por eso pensaba a partir de la v4.2.f

Muchas gracias por encontrar la referencia https://issues.alfresco.com/jira/browse/ALF-20384 porque lo necesito 🙂

He modificado todo y he conseguido, por fin!!

Muchas gracias por colaborar! 🙂

mc2014
Champ in-the-making
Champ in-the-making
Hola Angel,

Estoy comenzando con Alfresco, estoy con la version 4.2 y me gustaría saber  como puedo ocultar el menu de acuerdo a un aspecto que tenga el site?

Como puedo preguntar en custom  share-header.get.js que me evalue si tiene un aspecto en particular que previamente he creado para ocultar el menu?

Gracias de antemano.

mc2014
Champ in-the-making
Champ in-the-making
Hola,

Ya lo hice Smiley Happy.

Por si alguien tiene la misma duda, obtengo nodeRef del site y pregunto por el aspecto que me interesa.

var nodeDetails = AlfrescoUtil.getNodeDetails(nodeRef);
var aspectHideHeader = nodeDetails.item.node.aspects.indexOf("rev:hideHeader");
if (aspectHideHeader > -1) {
   widgetUtils.deleteObjectFromArray(model.jsonModel, "id","HEADER_HOME");
}