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

Last change on this file since 11838 was 11838, checked in by rvelices, 13 years ago

fix lang keys

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