source: trunk/admin/themes/default/template/plugins_installed.tpl @ 11048

Last change on this file since 11048 was 11048, checked in by patdenice, 13 years ago

Rename plugins_list.tpl into plugins_installed.tpl.
Update obsolete_extensions.list for 2.3.

  • Property svn:eol-style set to LF
File size: 7.9 KB
Line 
1{combine_script id='jquery.ajaxmanager' load='footer' require='jquery' path='themes/default/js/plugins/jquery.ajaxmanager.js' }
2
3{footer_script require='jquery.ajaxmanager'}
4/* incompatible message */
5var incompatible_msg = '{'WARNING! This plugin does not seem to be compatible with this version of Piwigo.'|@translate|@escape:'javascript'}';
6var activate_msg = '\n{'Do you want to activate anyway?'|@translate|@escape:'javascript'}';
7
8/* group action */
9var pwg_token = '{$PWG_TOKEN}';
10var confirmMsg  = '{'Are you sure?'|@translate|@escape:'javascript'}';
11{literal}
12var queuedManager = jQuery.manageAjax.create('queued', {
13  queue: true, 
14  maxRequests: 1,
15  complete: function() { location.reload(); }
16});
17
18jQuery(document).ready(function() {
19  /* group action */
20  jQuery('div.deactivate_all a').click(function() {
21    if (confirm(confirmMsg)) {
22      jQuery('div.active').each(function() {
23        performPluginDeactivate(jQuery(this).attr('id'));
24      });
25    }
26  });
27  function performPluginDeactivate(id) {
28   queuedManager.add({
29      type: 'GET',
30      dataType: 'json',
31      url: 'ws.php',
32      data: { method: 'pwg.plugins.performAction', action: 'deactivate', plugin: id, pwg_token: pwg_token, format: 'json' },
33      success: function(data) {
34        if (data['stat'] == 'ok') {
35          jQuery("#"+id).removeClass('active').addClass('inactive');
36        }
37      }
38    });
39  };
40
41  /* incompatible plugins */
42  jQuery(document).ready(function() {
43    jQuery.ajax({
44      method: 'GET',
45      url: 'admin.php',
46      data: { page: 'plugins_installed', incompatible_plugins: true },
47      dataType: 'json',
48      success: function(data) {
49        for (i=0;i<data.length;i++) {
50          {/literal}
51          {if $plugin_display == 'complete'}
52            jQuery('#'+data[i]+' .pluginBoxNameCell').prepend('<a class="warning" title="'+incompatible_msg+'"></a>')
53          {else}
54            jQuery('#'+data[i]+' .pluginMiniBoxNameCell').prepend('<span class="warning" title="'+incompatible_msg+'"></span>')
55          {/if}
56          {literal}
57          jQuery('#'+data[i]).addClass('incompatible');
58          jQuery('#'+data[i]+' .activate').attr('onClick', 'return confirm(incompatible_msg + activate_msg);');
59        }
60        jQuery('.warning').tipTip({
61          'delay' : 0,
62          'fadeIn' : 200,
63          'fadeOut' : 200,
64          'maxWidth':'250px'
65        });
66      }
67    });
68  });
69 
70  /* TipTips */
71  jQuery('.plugin-restore').tipTip({
72    'delay' : 0,
73    'fadeIn' : 200,
74    'fadeOut' : 200
75  });
76  jQuery('.showInfo').tipTip({
77    'delay' : 0,
78    'fadeIn' : 200,
79    'fadeOut' : 200,
80    'maxWidth':'300px', /* not effective, TipTip bug */
81    'keepAlive':true,
82    'activation':'click'
83  });
84});
85{/literal}
86{/footer_script}
87
88<div class="titrePage">
89  <span class="sort">
90    <form action="" method="get" name="change_display">
91      <input type="hidden" name="page" value="plugins"/>
92      {'Display'|@translate} :
93      <select name="plugin_display" onchange="this.form.submit();">
94        <option value="compact" {if $plugin_diplay=='compact'}selected="selected"{/if}>{'Compact'|@translate}</option>
95        <option value="complete" {if $plugin_display=='complete'}selected="selected"{/if}>{'Complete'|@translate}</option>
96      </select>
97    </form>
98  </span>
99  <h2>{'Plugins'|@translate}</h2>
100</div>
101
102{if isset($plugins)}
103
104{assign var='field_name' value='null'}
105{foreach from=$plugins item=plugin name=plugins_loop}
106   
107{if $field_name != $plugin.STATE}
108  {if $field_name != 'null'}
109    {if $field_name == 'active'}<div class="deactivate_all"><a>{'Deactivate'|@translate} {'all'|@translate}</a></div>{/if}
110  </fieldset>
111  {/if}
112 
113  <fieldset class="pluginBoxes">
114    <legend>
115    {if $plugin.STATE == 'active'}
116      {'Active Plugins'|@translate}
117    {elseif $plugin.STATE == 'inactive'}
118      {'Inactive Plugins'|@translate}
119    {elseif $plugin.STATE == 'missing'}
120      {'Missing Plugins'|@translate}
121    {elseif $plugin.STATE == 'merged'}
122      {'Obsolete Plugins'|@translate}
123    {/if}
124    </legend>
125  {assign var='field_name' value=$plugin.STATE}
126{/if}
127
128  {if not empty($plugin.AUTHOR)}
129    {if not empty($plugin.AUTHOR_URL)}
130      {assign var='author' value="<a href='%s'>%s</a>"|@sprintf:$plugin.AUTHOR_URL:$plugin.AUTHOR}
131    {else}
132      {assign var='author' value='<u>'|cat:$plugin.AUTHOR|cat:'</u>'}
133    {/if}
134  {/if}
135   
136  {if $plugin_display == 'complete'}
137    <div id="{$plugin.ID}" class="pluginBox">
138      <table>
139        <tr>
140          <td class="pluginBoxNameCell">
141            {$plugin.NAME}
142          </td>
143          <td>{$plugin.DESC}</td>
144        </tr>
145        <tr class="pluginActions">
146          <td>
147          {if $plugin.STATE == 'active'}
148            <a href="{$plugin.U_ACTION}&amp;action=deactivate">{'Deactivate'|@translate}</a>
149            | <a href="{$plugin.U_ACTION}&amp;action=restore" class="plugin-restore" title="{'Restore default configuration. You will lost your plugin settings!'|@translate}" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Restore'|@translate}</a>
150
151          {elseif $plugin.STATE == 'inactive'}
152            <a href="{$plugin.U_ACTION}&amp;action=activate" class="activate">{'Activate'|@translate}</a>
153            | <a href="{$plugin.U_ACTION}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
154
155          {elseif $plugin.STATE == 'missing'}
156            <a href="{$plugin.U_ACTION}&amp;action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
157
158          {elseif $plugin.STATE == 'merged'}
159            <a href="{$plugin.U_ACTION}&amp;action=delete">{'Delete'|@translate}</a>
160          {/if}
161          </td>
162          <td>
163            {'Version'|@translate} {$plugin.VERSION}
164           
165          {if not empty($author)}
166            | {'By %s'|@translate|@sprintf:$author}
167          {/if}
168
169          {if not empty($plugin.VISIT_URL)}
170            | <a class="externalLink" href="{$plugin.VISIT_URL}">{'Visit plugin site'|@translate}</a>
171          {/if}
172          </td>
173        </tr>
174      </table>
175    </div> {*<!-- pluginBox -->*}
176   
177  {elseif $plugin_display == 'compact'}
178    {if not empty($plugin.VISIT_URL)}
179      {assign var='version' value="<a class='externalLink' href='"|cat:$plugin.VISIT_URL|cat:"'>"|cat:$plugin.VERSION|cat:"</a>"}
180    {else
181      {assign var='version' value=$plugin.VERSION}
182    {/if}
183         
184    <div id="{$plugin.ID}" class="pluginMiniBox">
185      <div class="pluginMiniBoxNameCell">
186        {$plugin.NAME}
187        <a class="showInfo" title="{if !empty($author)}{'By %s'|@translate|@sprintf:$author} | {/if}{'Version'|@translate} {$version}<br/>{$plugin.DESC|@escape:'html'}">i</a>
188      </div>
189      <div class="pluginActions">
190        <div>
191        {if $plugin.STATE == 'active'}
192          <a href="{$plugin.U_ACTION}&amp;action=deactivate">{'Deactivate'|@translate}</a>
193          | <a href="{$plugin.U_ACTION}&amp;action=restore" class="plugin-restore" title="{'Restore default configuration. You will lost all your settings !'|@translate}" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Restore'|@translate}</a>
194
195        {elseif $plugin.STATE == 'inactive'}
196          <a href="{$plugin.U_ACTION}&amp;action=activate" class="activate">{'Activate'|@translate}</a>
197          | <a href="{$plugin.U_ACTION}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
198
199        {elseif $plugin.STATE == 'missing'}
200          <a href="{$plugin.U_ACTION}&amp;action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
201
202        {elseif $plugin.STATE == 'merged'}
203          <a href="{$plugin.U_ACTION}&amp;action=delete">{'Delete'|@translate}</a>
204        {/if}
205        </div>
206      </div>
207    </div> {*<!-- pluginMiniBox -->*}
208   
209  {/if}
210 
211{/foreach}
212  </fieldset>
213
214{/if}
Note: See TracBrowser for help on using the repository browser.