source: trunk/admin/themes/default/template/plugins_new.tpl @ 10511

Revision 9599, 3.2 KB checked in by patdenice, 9 years ago (diff)

feature:2219
load jquery sort plugin in footer.

  • Property svn:eol-style set to LF
Line 
1{combine_script id='jquery.sort' load='footer' path='themes/default/js/plugins/jquery.sort.js'}
2
3{footer_script require='jquery.effects.blind,jquery.sort'}{literal}
4var sortOrder = 'date';
5var sortPlugins = (function(a, b) {
6  if (sortOrder == 'downloads' || sortOrder == 'revision' || sortOrder == 'date')
7    return parseInt($(a).find('input[name="'+sortOrder+'"]').val())
8      < parseInt($(b).find('input[name="'+sortOrder+'"]').val()) ? 1 : -1;
9  else
10    return $(a).find('input[name="'+sortOrder+'"]').val().toLowerCase()
11      > $(b).find('input[name="'+sortOrder+'"]').val().toLowerCase()  ? 1 : -1;
12});
13
14jQuery(document).ready(function(){
15        jQuery("td[id^='desc_']").click(function() {
16                id = this.id.split('_');
17                nb_lines = jQuery("#bigdesc_"+id[1]).html().split('<br>').length;
18
19                jQuery("#smalldesc_"+id[1]).toggle('blind', 1);
20                if (jQuery(this).hasClass('bigdesc')) {
21                        jQuery("#bigdesc_"+id[1]).toggle('blind', 1);
22                } else {
23                        jQuery("#bigdesc_"+id[1]).toggle('blind', 50 + (nb_lines * 30));
24                }
25                jQuery(this).toggleClass('bigdesc');
26                return false;
27        });
28
29  jQuery('select[name="selectOrder"]').change(function() {
30    sortOrder = this.value;
31    $('.pluginBox').sortElements(sortPlugins);
32  });
33});
34{/literal}{/footer_script}
35
36<div class="titrePage">
37<span class="sort">
38{'Sort order'|@translate} :
39{html_options name="selectOrder" options=$order_options selected=$order_selected}
40</span>
41  <h2>{'Plugins'|@translate}</h2>
42</div>
43
44{if not empty($plugins)}
45<div id="availablePlugins">
46<fieldset>
47<legend></legend>
48{foreach from=$plugins item=plugin name=plugins_loop}
49<div class="pluginBox" id="plugin_{$plugin.ID}">
50<input type="hidden" name="date" value="{$plugin.ID}">
51<input type="hidden" name="name" value="{$plugin.EXT_NAME}">
52<input type="hidden" name="revision" value="{$plugin.REVISION_DATE}">
53<input type="hidden" name="downloads" value="{$plugin.DOWNLOADS}">
54<input type="hidden" name="author" value="{$plugin.AUTHOR}">
55  <table>
56    <tr>
57      <td class="pluginBoxNameCell">{$plugin.EXT_NAME}</td>
58{if $plugin.BIG_DESC != $plugin.SMALL_DESC}
59      <td id="desc_{$plugin.ID}" class="pluginDesc">
60        <span id="smalldesc_{$plugin.ID}">
61          <img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/plus.gif" alt="">{$plugin.SMALL_DESC}...
62        </span>
63        <span id="bigdesc_{$plugin.ID}" style="display:none;">
64          <img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/minus.gif" alt="">{$plugin.BIG_DESC|@nl2br}<br>&nbsp;
65        </span>
66      </td>
67{else}
68      <td>{$plugin.BIG_DESC|@nl2br}</td>
69{/if}
70    </tr>
71    <tr>
72      <td>
73        <a href="{$plugin.URL_INSTALL}" onclick="return confirm('{'Are you sure you want to install this plugin?'|@translate|@escape:javascript}');">{'Install'|@translate}</a>
74        |  <a href="{$plugin.URL_DOWNLOAD}">{'Download'|@translate}</a>
75      </td>
76      <td>
77        <em>{'Downloads'|@translate}: {$plugin.DOWNLOADS}</em>
78        {'Version'|@translate} {$plugin.VERSION}
79        | {'By %s'|@translate|@sprintf:$plugin.AUTHOR}
80        | <a class="externalLink" href="{$plugin.EXT_URL}">{'Visit plugin site'|@translate}</a>
81      </td>
82    </tr>
83  </table>
84</div>
85{/foreach}
86</fieldset>
87</div>
88{else}
89<p>{'There is no other plugin available.'|@translate}</p>
90{/if}
Note: See TracBrowser for help on using the repository browser.