fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [12393] generate dataTables


From: Nelson Guerra
Subject: [Fmsystem-commits] [12393] generate dataTables
Date: Thu, 27 Nov 2014 23:25:58 +0000

Revision: 12393
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=12393
Author:   nelson224
Date:     2014-11-27 23:25:58 +0000 (Thu, 27 Nov 2014)
Log Message:
-----------
generate dataTables

Modified Paths:
--------------
    branches/dev-syncromind/property/templates/base/entity.xsl

Modified: branches/dev-syncromind/property/templates/base/entity.xsl
===================================================================
--- branches/dev-syncromind/property/templates/base/entity.xsl  2014-11-27 
23:24:59 UTC (rev 12392)
+++ branches/dev-syncromind/property/templates/base/entity.xsl  2014-11-27 
23:25:58 UTC (rev 12393)
@@ -1,4 +1,21 @@
   <!-- $Id$ -->
+       <func:function name="phpgw:conditional">
+          <xsl:param name="test"/>
+          <xsl:param name="true"/>
+          <xsl:param name="false"/>
+
+          <func:result>
+                  <xsl:choose>
+                          <xsl:when test="$test">
+                                  <xsl:value-of select="$true"/>
+                          </xsl:when>
+                          <xsl:otherwise>
+                                  <xsl:value-of select="$false"/>
+                          </xsl:otherwise>
+                  </xsl:choose>
+          </func:result>
+   </func:function>
+
        <xsl:template name="app_data">
                <xsl:choose>
                        <xsl:when test="edit">
@@ -712,24 +729,17 @@
                                                <xsl:when test="value_id !='' 
and enable_bulk = ''">
                                                        <div id="related">
                                                                <fieldset>
-                                                               <table 
cellpadding="2" cellspacing="2" width="80%" align="center">
-                                                                       <tr>
-                                                                               
<td valign='top'>
-                                                                               
        <!--<xsl:value-of select="php:function('lang', 'started from')"/>-->
-                                                                               
</td>
-                                                                               
<td>
-                                                                               
        <div id="datatable-container_1"/>
-                                                                               
</td>
-                                                                       </tr>
-                                                                       <tr>
-                                                                               
<td valign='top'>
-                                                                               
        <!--<xsl:value-of select="php:function('lang', 'used in')"/>-->
-                                                                               
</td>
-                                                                               
<td>
-                                                                               
        <div id="datatable-container_2"/>
-                                                                               
</td>
-                                                                       </tr>
-                                                               </table>
+                                                                       <div 
class="pure-control-group">
+                                                                               
<xsl:for-each select="datatable_def">
+                                                                               
                <xsl:if test="container = 'datatable-container_1'">
+                                                                               
                        <xsl:call-template name="table_setup">
+                                                                               
                          <xsl:with-param name="container" select ='container'/>
+                                                                               
                          <xsl:with-param name="requestUrl" select 
='requestUrl' />
+                                                                               
                          <xsl:with-param name="ColumnDefs" select 
='ColumnDefs' />
+                                                                               
                        </xsl:call-template>
+                                                                               
                </xsl:if>
+                                                                               
</xsl:for-each>
+                                                                       </div>
                                                                </fieldset>
                                                        </div>
                                                </xsl:when>
@@ -955,3 +965,84 @@
                        </xsl:when>
                </xsl:choose>
        </xsl:template>
+
+       <xsl:template name="table_setup">
+               <xsl:param name="container" />
+               <xsl:param name="requestUrl" />
+               <xsl:param name="ColumnDefs" />
+               <table id="{$container}" class="display cell-border compact 
responsive no-wrap" width="100%">
+                       <thead>
+                               <tr>
+                                       <xsl:for-each select="$ColumnDefs">
+                                               <xsl:choose>
+                                                       <xsl:when test="hidden">
+                                                               <xsl:if 
test="hidden =0">
+                                                                       <th>
+                                                                               
<xsl:value-of select="label"/>
+                                                                       </th>
+                                                                       
</xsl:if>
+                                                       </xsl:when>
+                                                       <xsl:otherwise>
+                                                               <th>
+                                                                       
<xsl:value-of select="label"/>
+                                                               </th>
+                                                       </xsl:otherwise>
+                                               </xsl:choose>
+                                       </xsl:for-each>
+                               </tr>
+                       </thead>
+               </table>
+               <script>
+                       JqueryPortico.inlineTablesDefined += 1;
+                       var PreColumns = [
+                                       <xsl:for-each select="$ColumnDefs">
+                                       {
+                                               data:                   
"<xsl:value-of select="key"/>",
+                                               class:                  
"<xsl:value-of select="className"/>",
+                                               orderable:              
<xsl:value-of select="phpgw:conditional(not(sortable = 0), 'true', 'false')"/>,
+                                               <xsl:choose>
+                                                       <xsl:when test="hidden">
+                                                               <xsl:if 
test="hidden =0">
+                                                                       visible 
                :true,
+                                                               </xsl:if>
+                                                               <xsl:if 
test="hidden =1">
+                                                                       class:  
                'none',
+                                                                       visible 
                :false,
+                                                               </xsl:if>
+                                                       </xsl:when>
+                                                       <xsl:otherwise>
+                                                                       visible 
                :true,
+                                                       </xsl:otherwise>
+                                               </xsl:choose>
+                                               <xsl:if test="formatter">
+                                                render: function (dummy1, 
dummy2, oData) {
+                                                               try {
+                                                                       var ret 
= <xsl:value-of select="formatter"/>("<xsl:value-of select="key"/>", oData);
+                                                               }
+                                                               catch(err) {
+                                                                       return 
err.message;
+                                                               }
+                                                               return ret;
+                                                        },
+
+                                               </xsl:if>
+                                               defaultContent: "<xsl:value-of 
select="defaultContent"/>"
+                                       }<xsl:value-of 
select="phpgw:conditional(not(position() = last()), ',', '')"/>
+                               </xsl:for-each>
+                       ];
+       <![CDATA[
+                       columns = [];
+
+                       for(i=0;i < PreColumns.length;i++)
+                       {
+                               if ( PreColumns[i]['visible'] == true )
+                               {
+                                       columns.push(PreColumns[i]);
+                               }
+                       }
+       ]]>
+
+                       JqueryPortico.inlineTableHelper("<xsl:value-of 
select="$container"/>", <xsl:value-of select="$requestUrl"/>, columns);
+
+               </script>
+       </xsl:template>
\ No newline at end of file




reply via email to

[Prev in Thread] Current Thread [Next in Thread]