Changeset 11010


Ignore:
Timestamp:
May 23, 2011, 2:34:08 PM (13 years ago)
Author:
mistic100
Message:

plugin manager : delete ordering by name, fiw some styles

Location:
trunk/admin
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/plugins_installed.php

    r10817 r11010  
    3131$template->set_filenames(array('plugins' => 'plugins_list.tpl'));
    3232
    33 // order and display mode
    34 $plugin_order = isset($_GET['plugin_order']) ? $_GET['plugin_order'] : (pwg_get_session_var('plugin_order') != null ? pwg_get_session_var('plugin_order') : 'state');
     33// display mode
    3534$plugin_display = isset($_GET['plugin_display']) ? $_GET['plugin_display'] : (pwg_get_session_var('plugin_display') != null ? pwg_get_session_var('plugin_display') : 'compact');
    36 pwg_set_session_var('plugin_order', $plugin_order);
    3735pwg_set_session_var('plugin_display', $plugin_display);
    3836
     
    149147}
    150148
    151 // sort plugins : state or name
    152 if ($plugin_order == 'name')
    153 {
    154   function cmp($a, $b)
    155   {
     149// sort plugins by state then by name
     150function cmp($a, $b)
     151{
     152  $s = array('merged' => 0, 'missing' => 1, 'active' => 2, 'inactive' => 3);
     153 
     154  if($a['STATE'] == $b['STATE'])
    156155    return strcasecmp($a['NAME'], $b['NAME']);
    157   }
     156  else
     157    return $s[$a['STATE']] >= $s[$b['STATE']];
    158158}
    159 else
    160 {
    161   function cmp($a, $b)
    162   {
    163     $s = array('merged' => 0, 'missing' => 1, 'active' => 2, 'inactive' => 3);
    164    
    165     if($a['STATE'] == $b['STATE'])
    166       return strcasecmp($a['NAME'], $b['NAME']);
    167     else
    168       return $s[$a['STATE']] >= $s[$b['STATE']];
    169   }
    170   $plugin_order = 'state';
    171 }
     159usort($tpl_plugins, 'cmp');
    172160
    173 usort($tpl_plugins, 'cmp');
    174161$template->assign(array(
    175   'plugin_order' => $plugin_order,
    176162  'plugin_display' => $plugin_display,
    177163  'plugins' => $tpl_plugins,
  • trunk/admin/themes/clear/theme.css

    r11009 r11010  
    258258#footer { background-image: url(images/piwigo_logo_small.png);}
    259259
    260 .pluginBox, .pluginMiniBox {background-color:#ddd;color:#353535;border:1px solid #ddd;}
     260.pluginBox, .pluginMiniBox {background-color:#ddd;color:#353535;border-color:#ddd;}
    261261.pluginBoxNameCell, .pluginMiniBoxNameCell {color:#111;}
    262 .pluginBox.active, .pluginMiniBox.active {border-color:#666;background-color:#dadada;}
    263262.pluginBox.incompatible, .pluginMiniBox.incompatible {border-color:#a00 !important;}
    264 .pluginBox.missing, .pluginBox.merged, .pluginMiniBox.missing, .pluginMiniBox.merged {background-color:#d99;border:1px solid #a00;}
    265 .plugin-delete {color:#f00;}
     263.pluginBoxes .merged, .pluginBoxes .missing {background-color:#d99;border:1px solid #a00;}
     264.deactivate_all {color:#005E89;border-color:#005E89;}
    266265
    267266.languageBox {background-color:#ddd;}
  • trunk/admin/themes/default/template/plugins_list.tpl

    r10594 r11010  
    2222    if (confirm(confirmMsg)) {
    2323      jQuery('div.active').each(function() {
    24         performPluginAction(jQuery(this).attr('id'), 'deactivate');
     24        performPluginDeactivate(jQuery(this).attr('id'));
    2525      });
    2626    }
    2727  });
    28   jQuery('a.activate_all').click(function() {
    29     if (confirm(confirmMsg)) {
    30       jQuery('div.inactive').each(function() {
    31         performPluginAction(jQuery(this).attr('id'), 'activate');
    32       });
    33     }
    34   });
    35   function performPluginAction(id, action) {
     28  function performPluginDeactivate(id) {
    3629   queuedManager.add({
    3730      type: 'GET',
    3831      dataType: 'json',
    3932      url: 'ws.php',
    40       data: { method: 'pwg.plugins.performAction', action: action, plugin: id, pwg_token: pwg_token, format: 'json' },
     33      data: { method: 'pwg.plugins.performAction', action: 'deactivate', plugin: id, pwg_token: pwg_token, format: 'json' },
    4134      success: function(data) {
    4235        if (data['stat'] == 'ok') {
    43           if (action == 'deactivate')
    44             jQuery("#"+id).removeClass('active').addClass('inactive');
    45           else
    46             jQuery("#"+id).removeClass('inactive').addClass('active');
     36          jQuery("#"+id).removeClass('active').addClass('inactive');
    4737        }
    4838      }
     
    8171<div class="titrePage">
    8272  <span class="sort">
    83     <form action="" method="get" name="change_order">
     73    <form action="" method="get" name="change_display">
    8474      <input type="hidden" name="page" value="plugins"/>
    85       {'Sort order'|@translate} :
    86       <select name="plugin_order" onchange="this.form.submit();">
    87         <option value="status" {if $plugin_order=='state'}selected="selected"{/if}>{'Status'|@translate}</option>
    88         <option value="name" {if $plugin_order=='name'}selected="selected"{/if}>{'Name'|@translate}</option>
    89       </select>
    90       &nbsp;&nbsp;|&nbsp;&nbsp;
    9175      {'Display'|@translate} :
    9276      <select name="plugin_display" onchange="this.form.submit();">
     
    9478        <option value="complete" {if $plugin_display=='complete'}selected="selected"{/if}>{'Complete'|@translate}</option>
    9579      </select>
    96       &nbsp;&nbsp;|&nbsp;&nbsp;
    97       <a class="deactivate_all">{'Deactivate'|@translate} {'all'|@translate}</a>
    98       {* &nbsp;&nbsp;|&nbsp;&nbsp;
    99       <a class="activate_all">{'Activate'|@translate} {'all'|@translate}</a> *}
    10080    </form>
    10181  </span>
     
    10888{foreach from=$plugins item=plugin name=plugins_loop}
    10989   
    110 {if $plugin_order == 'state' AND $field_name != $plugin.STATE}
     90{if $field_name != $plugin.STATE}
    11191  {if $field_name != 'null'}</fieldset>{/if}
    112   <fieldset class="pluginBoxes pluginsByState">
     92  <fieldset class="pluginBoxes">
    11393    <legend>
    11494    {if $plugin.STATE == 'active'}
     
    123103    </legend>
    124104  {assign var='field_name' value=$plugin.STATE}
    125 
    126 {elseif $field_name == 'null'}
    127   <fieldset class="pluginBoxes pluginsByName">
    128   {assign var='field_name' value='not_null'}
    129 
     105  {if $field_name == 'active'}<a class="deactivate_all">{'Deactivate'|@translate} {'all'|@translate}</a>{/if}
    130106{/if}
    131107
     
    148124          <td>{$plugin.DESC}</td>
    149125        </tr>
    150         <tr>
     126        <tr class="pluginActions">
    151127          <td>
    152128          {if $plugin.STATE == 'active'}
     
    156132          {elseif $plugin.STATE == 'inactive'}
    157133            <a href="{$plugin.U_ACTION}&amp;action=activate" {if $plugin.INCOMPATIBLE}class="incompatible"{/if}>{'Activate'|@translate}</a>
    158             | <a href="{$plugin.U_ACTION}&amp;action=delete" class="plugin-delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
     134            | <a href="{$plugin.U_ACTION}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
    159135
    160136          {elseif $plugin.STATE == 'missing'}
    161             <a href="{$plugin.U_ACTION}&amp;action=uninstall" class="plugin-delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
     137            <a href="{$plugin.U_ACTION}&amp;action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
    162138
    163139          {elseif $plugin.STATE == 'merged'}
    164             <a href="{$plugin.U_ACTION}&amp;action=delete" class="plugin-delete">{'Delete'|@translate}</a>
     140            <a href="{$plugin.U_ACTION}&amp;action=delete">{'Delete'|@translate}</a>
    165141          {/if}
    166142          </td>
     
    200176        {elseif $plugin.STATE == 'inactive'}
    201177          <a href="{$plugin.U_ACTION}&amp;action=activate" {if $plugin.INCOMPATIBLE}class="incompatible"{/if}>{'Activate'|@translate}</a>
    202           | <a href="{$plugin.U_ACTION}&amp;action=delete"  class="plugin-delete"onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
     178          | <a href="{$plugin.U_ACTION}&amp;action=delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
    203179
    204180        {elseif $plugin.STATE == 'missing'}
    205           <a href="{$plugin.U_ACTION}&amp;action=uninstall" class="plugin-delete" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
     181          <a href="{$plugin.U_ACTION}&amp;action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
    206182
    207183        {elseif $plugin.STATE == 'merged'}
    208           <a href="{$plugin.U_ACTION}&amp;action=delete" class="plugin-delete">{'Delete'|@translate}</a>
     184          <a href="{$plugin.U_ACTION}&amp;action=delete">{'Delete'|@translate}</a>
    209185        {/if}
    210186        </div>
  • trunk/admin/themes/default/theme.css

    r11008 r11010  
    885885.comment A:hover {border:none;}
    886886
    887 .pluginBoxes {text-align:left;}
    888 .author-group {text-align:left;background:url('icon/remove_filter.png') left center no-repeat;padding-left:15px;margin-left:-15px;}
    889 
    890 .pluginBox {margin-bottom:10px;-moz-border-radius:5px;}
     887.pluginBoxes {
     888  text-align:left;
     889  position:relative;
     890}
     891
     892.pluginBox {
     893  margin-bottom:10px;
     894  border-width:1px;
     895  border-style:solid;
     896  border-radius:5px;
     897  -moz-border-radius:5px;
     898 }
    891899.pluginBox table {width:99%;}
    892900.pluginBox td {text-align:left;}
    893901.pluginBox td.pluginDesc img {vertical-align:middle;}
    894902.pluginBoxNameCell {width:180px; vertical-align:top;}
    895 .pluginBox.inactive, .pluginBox.uninstalled {margin-left:20px;opacity:0.65;filter:alpha(opacity=65);}
    896 .pluginsByState .pluginBox.inactive, .pluginsByState .pluginBox.uninstalled {margin-left:0px;opacity:0.8;filter:alpha(opacity=80);}
    897 
    898 .pluginMiniBox {display:inline-table; text-align:center; width:250px; height:40px; margin:5px; -moz-border-radius:5px; overflow:hidden; }
     903.pluginBoxes .inactive, .pluginBoxes .uninstalled {opacity:0.8;filter:alpha(opacity=80);}
     904
     905.pluginMiniBox {
     906  display:inline-table;
     907  text-align:center;
     908  width:250px;
     909  height:40px;
     910  margin:5px;
     911  border-width:1px;
     912  border-style:solid;
     913  border-radius:5px;
     914  -moz-border-radius:5px;
     915  overflow:hidden;
     916 }
    899917.pluginMiniBoxNameCell {font-size:1.05em; margin:5px 0;}
    900918.pluginActions {display: table-row; font-size:12px; }
    901919.pluginActions DIV {display: table-cell; vertical-align: middle; line-height:18px; }
    902 .pluginMiniBox.inactive, .pluginMiniBox.uninstalled {opacity:0.65;filter:alpha(opacity=65);}
    903 .pluginsByState .pluginMiniBox.inactive, .pluginsByState .pluginMiniBox.uninstalled {opacity:0.8;filter:alpha(opacity=80);}
    904920
    905921.warning:before {content:url(icon/warning.png);vertical-align:top;}
    906 fieldset.pluginsByName{border:none;}
     922.deactivate_all {position:absolute;bottom:-10px;right:18px;color:#f36;border-bottom:1px dotted #f36;font-size:0.8em;}
    907923
    908924.languageBoxes {min-height:0;text-align:left;}
  • trunk/admin/themes/roma/theme.css

    r11008 r11010  
    235235#footer {background-image: url(images/piwigo_logo_small.png);}
    236236
    237 .pluginBox, .pluginMiniBox {background-color:#333;color:#999;border:1px solid #333;}
     237.pluginBox, .pluginMiniBox {background-color:#333;color:#999;border-color:#333;}
    238238.pluginBoxNameCell, .pluginMiniBoxNameCell {color:#ddd;}
    239 .pluginBox.active, .pluginMiniBox.active {border-color:#666;background-color:#383838;}
    240239.pluginBox.incompatible, .pluginMiniBox.incompatible {border-color:#800 !important;}
    241 .pluginBox.missing, .pluginBox.merged, .pluginMiniBox.missing, .pluginMiniBox.merged {background-color:#422;border:1px solid #800;}
    242 .plugin-delete {color:#f00;}
     240.pluginBoxes .merged, .pluginBoxes .missing {background-color:#422;border:1px solid #800;}
     241.pluginActions { color:#666; }
    243242
    244243.languageBox {background-color:#333;}
Note: See TracChangeset for help on using the changeset viewer.