feature 1557: new design for plugin list management, 1 block = 1 status.
No icon. git-svn-id: http://piwigo.org/svn/trunk@5474 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
parent
0410e5e1ef
commit
75ba6ad47a
6 changed files with 116 additions and 108 deletions
|
@ -58,48 +58,35 @@ $plugins->set_tabsheet($page['page']);
|
|||
|
||||
//---------------------------------------------------------------Order options
|
||||
$link = get_root_url().'admin.php?page='.$page['page'].'&order=';
|
||||
$template->assign('order_options',
|
||||
|
||||
$template->assign(
|
||||
'order_options',
|
||||
array(
|
||||
$link.'name' => l10n('Name'),
|
||||
$link.'status' => l10n('Status'),
|
||||
$link.'author' => l10n('Author'),
|
||||
$link.'id' => 'Id'));
|
||||
$link.'id' => 'Id')
|
||||
);
|
||||
|
||||
$template->assign('order_selected', $link.$order);
|
||||
|
||||
// +-----------------------------------------------------------------------+
|
||||
// | start template output |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
$plugins->sort_fs_plugins($order);
|
||||
|
||||
foreach($plugins->fs_plugins as $plugin_id => $fs_plugin)
|
||||
{
|
||||
$display_name = $fs_plugin['name'];
|
||||
if (!empty($fs_plugin['uri']))
|
||||
{
|
||||
$display_name = '<a href="' . $fs_plugin['uri']
|
||||
. '" onclick="window.open(this.href); return false;">'
|
||||
. $display_name . '</a>';
|
||||
}
|
||||
$desc = $fs_plugin['description'];
|
||||
if (!empty($fs_plugin['author']))
|
||||
{
|
||||
$desc .= ' (<em>';
|
||||
if (!empty($fs_plugin['author uri']))
|
||||
{
|
||||
$desc .= '<a href="' . $fs_plugin['author uri'] . '">'
|
||||
. $fs_plugin['author'] . '</a>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$desc .= $fs_plugin['author'];
|
||||
}
|
||||
$desc .= '</em>)';
|
||||
}
|
||||
$tpl_plugin =
|
||||
array('NAME' => $display_name,
|
||||
'VERSION' => $fs_plugin['version'],
|
||||
'DESCRIPTION' => $desc,
|
||||
'U_ACTION' => sprintf($action_url, $plugin_id));
|
||||
$tpl_plugin = array(
|
||||
'NAME' => $fs_plugin['name'],
|
||||
'VISIT_URL' => $fs_plugin['uri'],
|
||||
'VERSION' => $fs_plugin['version'],
|
||||
'DESC' => $fs_plugin['description'],
|
||||
'AUTHOR' => $fs_plugin['author'],
|
||||
'AUTHOR_URL' => $fs_plugin['author uri'],
|
||||
'U_ACTION' => sprintf($action_url, $plugin_id)
|
||||
);
|
||||
|
||||
if (isset($plugins->db_plugins_by_id[$plugin_id]))
|
||||
{
|
||||
|
@ -109,25 +96,37 @@ foreach($plugins->fs_plugins as $plugin_id => $fs_plugin)
|
|||
{
|
||||
$tpl_plugin['STATE'] = 'uninstalled';
|
||||
}
|
||||
|
||||
$template->append('plugins', $tpl_plugin);
|
||||
}
|
||||
|
||||
$missing_plugin_ids = array_diff(
|
||||
array_keys($plugins->db_plugins_by_id), array_keys($plugins->fs_plugins)
|
||||
);
|
||||
array_keys($plugins->db_plugins_by_id),
|
||||
array_keys($plugins->fs_plugins)
|
||||
);
|
||||
|
||||
foreach($missing_plugin_ids as $plugin_id)
|
||||
{
|
||||
$template->append( 'plugins',
|
||||
array(
|
||||
'NAME' => $plugin_id,
|
||||
'VERSION' => $plugins->db_plugins_by_id[$plugin_id]['version'],
|
||||
'DESCRIPTION' => "ERROR: THIS PLUGIN IS MISSING BUT IT IS INSTALLED! UNINSTALL IT NOW !",
|
||||
'U_ACTION' => sprintf($action_url, $plugin_id),
|
||||
'STATE' => 'missing'
|
||||
$template->append(
|
||||
'plugins',
|
||||
array(
|
||||
'NAME' => $plugin_id,
|
||||
'VERSION' => $plugins->db_plugins_by_id[$plugin_id]['version'],
|
||||
'DESC' => "ERROR: THIS PLUGIN IS MISSING BUT IT IS INSTALLED! UNINSTALL IT NOW !",
|
||||
'U_ACTION' => sprintf($action_url, $plugin_id),
|
||||
'STATE' => 'missing',
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
$template->append('plugin_states', 'active');
|
||||
$template->append('plugin_states', 'inactive');
|
||||
$template->append('plugin_states', 'uninstalled');
|
||||
|
||||
if (count($missing_plugin_ids) > 0)
|
||||
{
|
||||
$template->append('plugin_states', 'missing');
|
||||
}
|
||||
|
||||
$template->assign_var_from_handle('ADMIN_CONTENT', 'plugins');
|
||||
?>
|
|
@ -233,3 +233,6 @@ html>body #menubar {min-height:477px; height:477px;} /* IE 7 and modern browsers
|
|||
#pwgHead, #footer {color:#666;}
|
||||
#pwgHead A, #footer A {color:#444;}
|
||||
#pwgHead A:hover, #footer A:hover {color:black; border-color:black;}
|
||||
|
||||
.pluginBox {background-color:#ddd;color:#333}
|
||||
.pluginBoxNameCell {font-weight:bold;}
|
||||
|
|
|
@ -802,4 +802,9 @@ h2:lang(en) { text-transform:capitalize; }
|
|||
.infos .submit {margin-left:30px;}
|
||||
|
||||
.checkActions {text-align:left;padding:0;margin:0;}
|
||||
.comment A:hover {border:none;}
|
||||
.comment A:hover {border:none;}
|
||||
|
||||
.pluginBox {margin-bottom:10px;-moz-border-radius:5px;}
|
||||
.pluginBox table {width:99%}
|
||||
.pluginBox td {text-align:left;}
|
||||
.pluginBoxNameCell {width:150px; vertical-align:top;}
|
||||
|
|
|
@ -51,6 +51,13 @@
|
|||
'fadeOut' : 200,
|
||||
});
|
||||
});
|
||||
|
||||
$(document).ready(function() {
|
||||
$("a.externalLink").click(function() {
|
||||
window.open($(this).attr("href"));
|
||||
return false;
|
||||
});
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
|
||||
|
|
|
@ -8,81 +8,72 @@
|
|||
<h2>{'Plugins'|@translate}</h2>
|
||||
</div>
|
||||
|
||||
|
||||
{if isset($plugins)}
|
||||
<table class="table2 plugins">
|
||||
<thead>
|
||||
<tr class="throw">
|
||||
<td>{'Name'|@translate}</td>
|
||||
<td>{'Actions'|@translate}</td>
|
||||
<td>{'Version'|@translate}</td>
|
||||
<td>{'Description'|@translate}</td>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
{foreach from=$plugins item=plugin name=plugins_loop}
|
||||
<tr class="{if $smarty.foreach.plugins_loop.index is odd}row1{else}row2{/if}">
|
||||
<td class="pluginState{if $plugin.STATE != 'uninstalled'} {$plugin.STATE}{/if}">
|
||||
{$plugin.NAME}
|
||||
</td>
|
||||
<td>
|
||||
<ul class="pluginsActions">
|
||||
{foreach from=$plugin_states item=plugin_state}
|
||||
<fieldset>
|
||||
<legend>
|
||||
{if $plugin_state == 'active'}
|
||||
Active Plugins
|
||||
|
||||
{elseif $plugin_state == 'inactive'}
|
||||
Inactive Plugins
|
||||
|
||||
{elseif $plugin_state == 'uninstalled'}
|
||||
Uninstalled Plugins
|
||||
|
||||
{elseif $plugin_state == 'missing'}
|
||||
Missing Plugins
|
||||
|
||||
{/if}
|
||||
</legend>
|
||||
{foreach from=$plugins item=plugin name=plugins_loop}
|
||||
{if $plugin.STATE == $plugin_state}
|
||||
<div class="pluginBox">
|
||||
<table>
|
||||
<tr>
|
||||
<td class="pluginBoxNameCell">{$plugin.NAME}</td>
|
||||
<td>{$plugin.DESC}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
{if $plugin.STATE == 'active'}
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=deactivate">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_deactivate.png" alt="{'Deactivate'|@translate}" title="{'Deactivate'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_uninstall_grey.png" alt="{'Uninstall'|@translate}" title="{'Uninstall'|@translate}">
|
||||
</li>
|
||||
<a href="{$plugin.U_ACTION}&action=deactivate">{'Deactivate'|@translate}</a>
|
||||
|
||||
{elseif $plugin_state == 'inactive'}
|
||||
<a href="{$plugin.U_ACTION}&action=activate">{'Activate'|@translate}</a>
|
||||
| <a href="{$plugin.U_ACTION}&action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
|
||||
|
||||
{elseif $plugin_state == 'uninstalled'}
|
||||
<a href="{$plugin.U_ACTION}&action=install">{'Install'|@translate}</a>
|
||||
| <a href="{$plugin.U_ACTION}&action=delete" onclick="return confirm('{'Are you sure you want to delete this plugin?'|@translate|@escape:'javascript'}');">{'Delete'|@translate}</a>
|
||||
|
||||
{elseif $plugin_state == 'missing'}
|
||||
<a href="{$plugin.U_ACTION}&action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
|
||||
|
||||
{/if}
|
||||
{if $plugin.STATE == 'inactive'}
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=activate">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_activate.png" alt="{'Activate'|@translate}" title="{'Activate'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_uninstall.png" alt="{'Uninstall'|@translate}" title="{'Uninstall'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
</td>
|
||||
<td>
|
||||
Version {$plugin.VERSION}
|
||||
{if not empty($plugin.AUTHOR)}
|
||||
| By
|
||||
{if not empty($plugin.AUTHOR_URL)}
|
||||
<a href="{$plugin.AUTHOR_URL}">{$plugin.AUTHOR}</a>
|
||||
{else}
|
||||
{$plugin.AUTHOR}
|
||||
{/if}
|
||||
{/if}
|
||||
{if $plugin.STATE == 'missing'}
|
||||
<li>
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_deactivate_grey.png" alt="{'Deactivate'|@translate}" title="{'Deactivate'|@translate}">
|
||||
</li>
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_uninstall.png" alt="{'Uninstall'|@translate}" title="{'Uninstall'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
|
||||
{if not empty($plugin.VISIT_URL)}
|
||||
| <a class="externalLink" href="{$plugin.VISIT_URL}">Visit plugin site</a>
|
||||
{/if}
|
||||
{if $plugin.STATE == 'uninstalled'}
|
||||
<li>
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_activate_grey.png" alt="{'Activate'|@translate}" title="{'Activate'|@translate}">
|
||||
</li>
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=install" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_install.png" alt="{'Install'|@translate}" title="{'Install'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{$plugin.U_ACTION}&action=delete" onclick="return confirm('{'Are you sure you want to delete this plugin?'|@translate|@escape:'javascript'}');">
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_delete.png" alt="{'Delete'|@translate}" title="{'Delete'|@translate}">
|
||||
</a>
|
||||
</li>
|
||||
{else}
|
||||
<li>
|
||||
<img src="{$themeconf.admin_icon_dir}/plug_delete_grey.png" alt="{'Delete'|@translate}" title="{'Delete'|@translate}">
|
||||
</li>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
{/if}
|
||||
</ul>
|
||||
</td>
|
||||
<td style="text-align:center;">{$plugin.VERSION}</td>
|
||||
<td>{$plugin.DESCRIPTION}</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</fieldset>
|
||||
{/foreach}
|
||||
</table>
|
||||
|
||||
{/if}
|
||||
|
|
|
@ -239,3 +239,6 @@ html>body #menubar {min-height:522px; height:522px;} /* IE 7 and modern browsers
|
|||
#helpContent, #pLoaderPage, #ftpPage, #ftpPage LEGEND {color:#aaa;}
|
||||
|
||||
#pwgHead, #footer {background-color:#222;}
|
||||
|
||||
.pluginBox {background-color:#333;color:#999}
|
||||
.pluginBoxNameCell {color:#ccc;}
|
||||
|
|
Loading…
Reference in a new issue