[Résolu] Affichage Vue Personnalisée

cancel
Showing results for 
Search instead for 
Did you mean: 
fred_pack
Member II

[Résolu] Affichage Vue Personnalisée

Bonjour,
J'ai créé un Freemarker personnalisé qui fonctionne très bien (affichage + tri sur zone)
Cependant à l'affichage, j'ai ma vue personnalisée , mais aussi l'affichage classique de "Parcourir les espaces" et "Eléments de contenu"

Comment je peux faire pour n'avoir en affichage que ma vue personnalisée ?

Merci


Ci-dessous le Freemarker, juste pour exemple

<head>
<style type="text/css">

</style>
</head>


<table  id="tab" cellspacing="1" cellpadding="1" style="font-weight:bold" border="1" class='selectedItems'  bgcolor="white">

   <thead>
   <tr>
   <th>Type</th>
   <th><a href="#" onclick="sortTable(this,1); return false;">Nom</a></th>
   <th><a href="#" onclick="sortTable(this,2); return false;">Date Diffusion</a></th>
   </tr>
   </thead>

   <tbody>
   <#list space.children as child>
   <tr><td><a href="/alfresco${child.url}" target="new"><img src="/alfresco${child.icon32}" border=0></a></td>

      <#if child.isDocument>
      <td>${child.properties.name}</td>

      <#if child.properties["SQ:dateDiffusion"]?exists>
         <td>${child.properties["SQ:dateDiffusion"]?date}</td>
                        </tr>
      <#else>
         <td>01 sep. 2009</td>
                        </tr>
      </#if>
   </#if>

   <#if child.isContainer>
      <td>${child.properties.name}</td>
                <td>.</td>
   </#if>
   </#list>
   </tbody>
</table>


<script type="text/javascript">
function sortTable (tb, n) {
   var iter = 0;
   while (!tb.tagName || tb.tagName.toLowerCase() != "table") {
      if (!tb.parentNode) return;
      tb = tb.parentNode;
      }

   if (tb.tBodies && tb.tBodies[0]) tb = tb.tBodies[0];

   /* Tri par selection */

   var reg = /^\d+(\.\d+)?$/g;
   var index = 0, value = null, minvalue = null;
   for (var i= tb.rows.length -1; i >= 0; i -= 1) {
      minvalue = value = null;
      index = -1;

      for (var j=i; j >= 0; j -= 1) {
         value = tb.rows[j].cells[n].firstChild.nodeValue;
         if (!isNaN(value)) value = parseFloat(value);
               if (minvalue == null || value < minvalue) { index = j; minvalue = value; }
         }
         
      if (index != -1) {
         var row = tb.rows[index];
         if (row) {
            tb.removeChild(row);
            tb.appendChild(row);
            }
         }
   }   
}

</script>


2 Replies
rguinot
Customer

Re: [Résolu] Affichage Vue Personnalisée

Bonjour,

Dans l'interface Explorer ce n'est à ma connaissance sans développements JSF / JSP spécifiques.
En revanche, il est tout à fait possible de n'afficher que le résultat de l'éxécution d'un template Freemarker sur un noeud en appelant soit la TemplateContentServlet (voir http://wiki.alfresco.com/wiki/URL_Addressability#TemplateContentServlet) depuis la 1.4 , ou bien un Web Script depuis la 2.x (http://wiki.alfresco.com/wiki/Web_Scripts)

On peut pousser la chose plus loin en développant une interface Web complète reposant sur des Web Scripts et répondant à des besoins métiers précis, cela a été fait à de nombreuses reprises.
fred_pack
Member II

Re: [Résolu] Affichage Vue Personnalisée

Ok, merci de votre réponse
Je vais intégrer le Freemarker dans un Web Script

Cordialement