aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2010-03-30 13:27:18 +0000
committerplegall <plg@piwigo.org>2010-03-30 13:27:18 +0000
commit75ba6ad47a45ffd582efd3bbdb40aaa5aab2086a (patch)
tree692a5960d4644fe9fd014698c08024ab05b8eab5 /admin
parent0410e5e1ef61bd0cb686414fd35d65014dfeba87 (diff)
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
Diffstat (limited to 'admin')
-rw-r--r--admin/plugins_list.php75
-rw-r--r--admin/themes/clear/theme.css3
-rw-r--r--admin/themes/default/default-layout.css7
-rw-r--r--admin/themes/default/template/footer.tpl7
-rw-r--r--admin/themes/default/template/plugins_list.tpl129
-rw-r--r--admin/themes/roma/theme.css3
6 files changed, 116 insertions, 108 deletions
diff --git a/admin/plugins_list.php b/admin/plugins_list.php
index f09b0d576..8b8bf4873 100644
--- a/admin/plugins_list.php
+++ b/admin/plugins_list.php
@@ -58,48 +58,35 @@ $plugins->set_tabsheet($page['page']);
//---------------------------------------------------------------Order options
$link = get_root_url().'admin.php?page='.$page['page'].'&amp;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');
?> \ No newline at end of file
diff --git a/admin/themes/clear/theme.css b/admin/themes/clear/theme.css
index f4e2cc526..0e70b4b20 100644
--- a/admin/themes/clear/theme.css
+++ b/admin/themes/clear/theme.css
@@ -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;}
diff --git a/admin/themes/default/default-layout.css b/admin/themes/default/default-layout.css
index 10c7386d8..0bebba5ea 100644
--- a/admin/themes/default/default-layout.css
+++ b/admin/themes/default/default-layout.css
@@ -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;} \ No newline at end of file
+.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;}
diff --git a/admin/themes/default/template/footer.tpl b/admin/themes/default/template/footer.tpl
index 18e68686b..19cb14f34 100644
--- a/admin/themes/default/template/footer.tpl
+++ b/admin/themes/default/template/footer.tpl
@@ -51,6 +51,13 @@
'fadeOut' : 200,
});
});
+
+ $(document).ready(function() {
+ $("a.externalLink").click(function() {
+ window.open($(this).attr("href"));
+ return false;
+ });
+ });
</script>
{/literal}
diff --git a/admin/themes/default/template/plugins_list.tpl b/admin/themes/default/template/plugins_list.tpl
index 74672fadc..f09e6a09a 100644
--- a/admin/themes/default/template/plugins_list.tpl
+++ b/admin/themes/default/template/plugins_list.tpl
@@ -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}&amp;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}&amp;action=deactivate">{'Deactivate'|@translate}</a>
+
+ {elseif $plugin_state == 'inactive'}
+ <a href="{$plugin.U_ACTION}&amp;action=activate">{'Activate'|@translate}</a>
+ | <a href="{$plugin.U_ACTION}&amp;action=uninstall" onclick="return confirm('{'Are you sure?'|@translate|@escape:'javascript'}');">{'Uninstall'|@translate}</a>
+
+ {elseif $plugin_state == 'uninstalled'}
+ <a href="{$plugin.U_ACTION}&amp;action=install">{'Install'|@translate}</a>
+ | <a href="{$plugin.U_ACTION}&amp;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}&amp;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}&amp;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}&amp;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}&amp;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}&amp;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}&amp;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}
diff --git a/admin/themes/roma/theme.css b/admin/themes/roma/theme.css
index f269685e8..54630a4b9 100644
--- a/admin/themes/roma/theme.css
+++ b/admin/themes/roma/theme.css
@@ -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;}