summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorspocky <spocky@ampache>2007-09-23 20:06:37 +0000
committerspocky <spocky@ampache>2007-09-23 20:06:37 +0000
commita3d16d1cd6ec1b2fbba373177468a91a6ab49c99 (patch)
tree3bbcf6fed6979e22bcccf564a6b4fddfd53fa870
parent1dfdf2afab8da95da8c814e3838b3393d88ae53c (diff)
downloadampache-a3d16d1cd6ec1b2fbba373177468a91a6ab49c99.tar.gz
ampache-a3d16d1cd6ec1b2fbba373177468a91a6ab49c99.tar.bz2
ampache-a3d16d1cd6ec1b2fbba373177468a91a6ab49c99.zip
- modified sidebar css
- modified rightbar html/css - added patch to enabled ie6 :hover pseudo classes - modified boxes html/css to remove table tags and enable box floating - added 1st version of 3.4 greysme theme (needs more work, especially on ie6)
-rw-r--r--csshover2.htc121
-rw-r--r--lib/class/ajax.class.php26
-rw-r--r--lib/ui.lib.php2
-rw-r--r--templates/footer.inc.php1
-rw-r--r--templates/header.inc.php4
-rw-r--r--templates/rightbar.inc.php57
-rw-r--r--templates/show_box_bottom.inc.php16
-rw-r--r--templates/show_box_top.inc.php29
-rw-r--r--templates/show_index.inc.php6
-rw-r--r--templates/show_local_catalog_info.inc.php2
-rw-r--r--templates/sidebar.inc.php2
-rw-r--r--templates/sidebar_admin.inc.php6
-rw-r--r--templates/sidebar_home.inc.php6
-rw-r--r--themes/classic/images/rightbar_top.jpgbin0 -> 21471 bytes
-rw-r--r--themes/classic/templates/default.css1511
-rw-r--r--themes/greysme/images/ampache.pngbin0 -> 16648 bytes
-rw-r--r--themes/greysme/images/ampache_back.gifbin0 -> 113 bytes
-rw-r--r--themes/greysme/images/ampache_menu.gifbin0 -> 3349 bytes
-rw-r--r--themes/greysme/images/back-box.gifbin0 -> 1548 bytes
-rw-r--r--themes/greysme/images/background.jpgbin0 -> 18277 bytes
-rw-r--r--themes/greysme/images/blankalbum.gifbin0 -> 6988 bytes
-rw-r--r--themes/greysme/images/button_back.pngbin0 -> 149 bytes
-rw-r--r--themes/greysme/images/button_back2.pngbin0 -> 160 bytes
-rw-r--r--themes/greysme/images/curl.gifbin0 -> 607 bytes
-rw-r--r--themes/greysme/images/icons/icon_admin.gifbin0 -> 70 bytes
-rw-r--r--themes/greysme/images/icons/icon_browse.gifbin0 -> 83 bytes
-rw-r--r--themes/greysme/images/icons/icon_home.gifbin0 -> 74 bytes
-rw-r--r--themes/greysme/images/icons/icon_localplay.gifbin0 -> 77 bytes
-rw-r--r--themes/greysme/images/icons/icon_logout.gifbin0 -> 76 bytes
-rw-r--r--themes/greysme/images/icons/icon_plists.gifbin0 -> 76 bytes
-rw-r--r--themes/greysme/images/icons/icon_prefs.gifbin0 -> 67 bytes
-rw-r--r--themes/greysme/images/icons/icon_random.gifbin0 -> 77 bytes
-rw-r--r--themes/greysme/images/icons/icon_search.gifbin0 -> 76 bytes
-rw-r--r--themes/greysme/images/icons/icon_stats.gifbin0 -> 75 bytes
-rw-r--r--themes/greysme/images/icons/icon_upload.gifbin0 -> 83 bytes
-rw-r--r--themes/greysme/images/list_back-old.pngbin0 -> 162 bytes
-rw-r--r--themes/greysme/images/list_back.pngbin0 -> 377 bytes
-rw-r--r--themes/greysme/images/overlay.pngbin0 -> 9519 bytes
-rw-r--r--themes/greysme/images/puce.gifbin0 -> 577 bytes
-rw-r--r--themes/greysme/images/punaise-bl.gifbin0 -> 990 bytes
-rw-r--r--themes/greysme/images/punaise-br.gifbin0 -> 989 bytes
-rw-r--r--themes/greysme/images/punaise-tl.gifbin0 -> 989 bytes
-rw-r--r--themes/greysme/images/ratings/star_rating.gifbin0 -> 1317 bytes
-rw-r--r--themes/greysme/images/ratings/x.gifbin0 -> 577 bytes
-rw-r--r--themes/greysme/images/ratings/x_off.gifbin0 -> 577 bytes
-rw-r--r--themes/greysme/images/sort_off.gifbin0 -> 58 bytes
-rw-r--r--themes/greysme/images/sort_on.gifbin0 -> 58 bytes
-rw-r--r--themes/greysme/templates/default.css877
-rw-r--r--themes/greysme/theme.cfg.php38
49 files changed, 1902 insertions, 802 deletions
diff --git a/csshover2.htc b/csshover2.htc
new file mode 100644
index 00000000..e2dcced3
--- /dev/null
+++ b/csshover2.htc
@@ -0,0 +1,121 @@
+<attach event="ondocumentready" handler="parseStylesheets" />
+<script>
+/**
+ * Whatever:hover - V2.02.060206 - hover, active & focus
+ * ------------------------------------------------------------
+ * (c) 2005 - Peter Nederlof
+ * Peterned - http://www.xs4all.nl/~peterned/
+ * License - http://creativecommons.org/licenses/LGPL/2.1/
+ *
+ * Whatever:hover is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * Whatever:hover is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * Credits and thanks to:
+ * Arnoud Berendsen, Martin Reurings, Robert Hanson
+ *
+ * howto: body { behavior:url("csshover.htc"); }
+ * ------------------------------------------------------------
+ */
+
+var csshoverReg = /(^|\s)((([^a]([^ ]+)?)|(a([^#.][^ ]+)+)):(hover|active))|((a|input|textarea)([#.][^ ]+)?:unknown)/i,
+currentSheet, doc = window.document, hoverEvents = [], activators = {
+ onhover:{on:'onmouseover', off:'onmouseout'},
+ onactive:{on:'onmousedown', off:'onmouseup'},
+ onunknown:{on:'onfocus', off:'onblur'}
+}
+
+function parseStylesheets() {
+ if(!/MSIE (5|6)/.test(navigator.userAgent)) return;
+ window.attachEvent('onunload', unhookHoverEvents);
+ var sheets = doc.styleSheets, l = sheets.length;
+ for(var i=0; i<l; i++)
+ parseStylesheet(sheets[i]);
+}
+ function parseStylesheet(sheet) {
+ if(sheet.imports) {
+ try {
+ var imports = sheet.imports, l = imports.length;
+ for(var i=0; i<l; i++) parseStylesheet(sheet.imports[i]);
+ } catch(securityException){}
+ }
+
+ try {
+ var rules = (currentSheet = sheet).rules, l = rules.length;
+ for(var j=0; j<l; j++) parseCSSRule(rules[j]);
+ } catch(securityException){}
+ }
+
+ function parseCSSRule(rule) {
+ var select = rule.selectorText, style = rule.style.cssText;
+ if(!csshoverReg.test(select) || !style) return;
+
+ var pseudo = select.replace(/[^:]+:([a-z-]+).*/i, 'on$1');
+ var newSelect = select.replace(/(\.([a-z0-9_-]+):[a-z]+)|(:[a-z]+)/gi, '.$2' + pseudo);
+ var className = (/\.([a-z0-9_-]*on(hover|active|unknown))/i).exec(newSelect)[1];
+ var affected = select.replace(/:(hover|active|unknown).*$/, '');
+ var elements = getElementsBySelect(affected);
+ if(elements.length == 0) return;
+
+ currentSheet.addRule(newSelect, style);
+ for(var i=0; i<elements.length; i++)
+ new HoverElement(elements[i], className, activators[pseudo]);
+ }
+
+function HoverElement(node, className, events) {
+ if(!node.hovers) node.hovers = {};
+ if(node.hovers[className]) return;
+ node.hovers[className] = true;
+ hookHoverEvent(node, events.on, function() { node.className += ' ' + className; });
+ hookHoverEvent(node, events.off, function() { node.className = node.className.replace(new RegExp('\\s+'+className, 'g'),''); });
+}
+ function hookHoverEvent(node, type, handler) {
+ node.attachEvent(type, handler);
+ hoverEvents[hoverEvents.length] = {
+ node:node, type:type, handler:handler
+ };
+ }
+
+ function unhookHoverEvents() {
+ for(var e,i=0; i<hoverEvents.length; i++) {
+ e = hoverEvents[i];
+ e.node.detachEvent(e.type, e.handler);
+ }
+ }
+
+function getElementsBySelect(rule) {
+ var parts, nodes = [doc];
+ parts = rule.split(' ');
+ for(var i=0; i<parts.length; i++) {
+ nodes = getSelectedNodes(parts[i], nodes);
+ } return nodes;
+}
+ function getSelectedNodes(select, elements) {
+ var result, node, nodes = [];
+ var identify = (/\#([a-z0-9_-]+)/i).exec(select);
+ if(identify) {
+ var element = doc.getElementById(identify[1]);
+ return element? [element]:nodes;
+ }
+
+ var classname = (/\.([a-z0-9_-]+)/i).exec(select);
+ var tagName = select.replace(/(\.|\#|\:)[a-z0-9_-]+/i, '');
+ var classReg = classname? new RegExp('\\b' + classname[1] + '\\b'):false;
+ for(var i=0; i<elements.length; i++) {
+ result = tagName? elements[i].all.tags(tagName):elements[i].all;
+ for(var j=0; j<result.length; j++) {
+ node = result[j];
+ if(classReg && !classReg.test(node.className)) continue;
+ nodes[nodes.length] = node;
+ }
+ }
+
+ return nodes;
+ }
+</script> \ No newline at end of file
diff --git a/lib/class/ajax.class.php b/lib/class/ajax.class.php
index 213a0e3d..d0bf4eee 100644
--- a/lib/class/ajax.class.php
+++ b/lib/class/ajax.class.php
@@ -93,16 +93,26 @@ class Ajax {
* This prints out an img of the specified icon with the specified alt text
* and then sets up the required ajax for it
*/
- public static function button($action,$icon,$alt,$source='',$post='') {
+ public static function button($action,$icon,$alt,$source='',$post='',$class='') {
// Get the correct action
$ajax_string = self::action($action,$source,$post);
- $string = get_user_icon($icon,$alt,$source);
+ // If they passed a span class
+ if ($class) {
+ $class_txt = ' class="' . $class . '"';
+ }
+
+
+ $string = get_user_icon($icon,$alt);
+
+ // Generate a <a> so that it's more compliant with older browsers
+ // (ie :hover actions) and also to unify linkbuttons (w/o ajax) display
+ $string = "<a href=\"javascript:void(0);\" id=\"$source\" $class_txt>".$string."</a>\n";
$string .= self::observe($source,'click',$ajax_string);
- return $string;
+ return $string;
} // button
@@ -111,22 +121,22 @@ class Ajax {
* This prints out the specified text as a link and setups the required
* ajax for the link so it works correctly
*/
- public static function text($action,$text,$source,$post='',$span_class='') {
+ public static function text($action,$text,$source,$post='',$class='') {
// Format the string we wanna use
$ajax_string = self::action($action,$source,$post);
- $span_class.= ($span_class?' ':'') . 'link';
+ //$class.= ($class?' ':'') . 'link';
// If they passed a span class
- if ($span_class) {
- $class_txt = ' class="' . $span_class . '"';
+ if ($class) {
+ $class_txt = ' class="' . $class . '"';
}
// If we pass a source put it in the ID
//$string = "<div id=\"$source\" $class_txt>$text</div>\n";
- $string = "<a href=\"javascript:void(0);\" id=\"$source\" $class_txt>$text</a>\n";
+ $string = "<a href=\"javascript:void(0);\" id=\"$source\" $class_txt>$text</a>\n";
$string .= self::observe($source,'click',$ajax_string);
diff --git a/lib/ui.lib.php b/lib/ui.lib.php
index df4251b3..026540bb 100644
--- a/lib/ui.lib.php
+++ b/lib/ui.lib.php
@@ -993,7 +993,7 @@ function get_user_icon($name,$title='',$id='') {
} // end if not cached
- $string = "<img style=\"cursor: pointer;\" src=\"$img_url\" $id_element border=\"0\" alt=\"" . ucfirst($title) . "\" title=\"" . ucfirst($title) . "\" $hov_txt/>";
+ $string = "<img src=\"$img_url\" $id_element border=\"0\" alt=\"" . ucfirst($title) . "\" title=\"" . ucfirst($title) . "\" $hov_txt/>";
return $string;
diff --git a/templates/footer.inc.php b/templates/footer.inc.php
index 66afe41d..bb4f0035 100644
--- a/templates/footer.inc.php
+++ b/templates/footer.inc.php
@@ -20,6 +20,7 @@
*/
?>
+<div style="clear:both;"></div>
</div> <!-- end id="content"-->
<!-- I really hate IE
</td></tr></table> -->
diff --git a/templates/header.inc.php b/templates/header.inc.php
index e4a95048..32009c36 100644
--- a/templates/header.inc.php
+++ b/templates/header.inc.php
@@ -65,7 +65,7 @@ if (Config::get('use_rss')) { ?>
</a>
</div><!--End topbarleft -->
<div id="topbarright">
- <?php show_box_top(); ?>
+ <?php show_box_top('','box box_topbarright'); ?>
<b><?php echo _('You are currently logged in as') . " " . $GLOBALS['user']->fullname; ?></b>
<?php require_once Config::get('prefix') . '/templates/show_search_bar.inc.php'; ?>
<?php show_box_bottom(); ?>
@@ -76,7 +76,7 @@ if (Config::get('use_rss')) { ?>
</div><!-- End sidebar -->
<div id="rightbar"><!-- This is the rightbar -->
<?php require_once Config::get('prefix') . '/templates/rightbar.inc.php'; ?>
- </div>
+ </div><!-- End rightbar -->
<!-- I hate IE...
<table class="smeg-ie" width="100%"><tr><td> -->
<!-- Tiny little iframe, used to cheat the system -->
diff --git a/templates/rightbar.inc.php b/templates/rightbar.inc.php
index 82cbebac..ae6dd2e6 100644
--- a/templates/rightbar.inc.php
+++ b/templates/rightbar.inc.php
@@ -20,11 +20,10 @@
*/
?>
-<?php show_box_top(_('Active Playlist')); ?>
-<ul>
+<ul id="rb_action">
<li><a href="<?php echo Config::get('web_path'); ?>/stream.php?action=basket"><?php echo get_user_icon('all'); ?></a></li>
<li>
- <?php echo Ajax::button('?page=playlist&action=create','playlist_add',_('Save as Playlist'),'rightbar_create_playlist'); ?>
+ <?php echo Ajax::button('?page=playlist&action=create','playlist_add',_('Save as Playlist'),'rb_create_playlist'); ?>
</li>
<?php if (Access::check_function('batch_download')) { ?>
<li>
@@ -34,11 +33,27 @@
</li>
<?php } ?>
<li>
- <?php echo Ajax::button('?action=basket&type=clear_all','delete',_('Clear Playlist'),'rightbar_clear_playlist'); ?>
+ <?php echo Ajax::button('?action=basket&type=clear_all','delete',_('Clear Playlist'),'rb_clear_playlist'); ?>
+ </li>
+ <li id="rb_add">
+ <?php echo get_user_icon('add',_('Add Dynamic Items')); ?>
+ <ul id="rb_action_additems">
+ <li>
+ <?php echo Ajax::text('?action=basket&type=dynamic&random_type=default',_('Pure Random'),'rb_add_pure_random'); ?>
+ </li>
+ <li>
+ <?php echo Ajax::text('?action=basket&type=dynamic&random_type=artist',_('Related Artist'),'rb_add_related_artist'); ?>
+ </li>
+ <li>
+ <?php echo Ajax::text('?action=basket&type=dynamic&random_type=album',_('Related Album'),'rb_add_related_album'); ?>
+ </li>
+ <li>
+ <?php echo Ajax::text('?action=basket&type=dynamic&random_type=genre',_('Related Genre'),'rb_add_related_genre'); ?>
+ </li>
+ </ul>
</li>
</ul>
-<div id="current_playlist">
-<table cellpadding="0" cellspacing="0">
+<ul id="rb_current_playlist">
<?php
//FIXME :: this feels kludgy
$objects = $GLOBALS['user']->playlist->get_items();
@@ -52,34 +67,16 @@
$object->f_link = Random::get_type_name($object_data['1']);
}
?>
-<tr class="<?php echo flip_class(); ?>">
- <td>
- <?php echo $object->f_link; ?>
- </td>
- <td>
- <?php echo Ajax::button('?action=current_playlist&type=delete&id=' . $uid,'delete',_('Delete'),'rightbar_delete_' . $uid); ?>
- </td>
-</tr>
+<li class="<?php echo flip_class(); ?>" >
+ <?php echo $object->f_link; ?>
+ <?php echo Ajax::button('?action=current_playlist&type=delete&id=' . $uid,'delete',_('Delete'),'rightbar_delete_' . $uid,'','delitem'); ?>
+</li>
<?php } if (!count($objects)) { ?>
- <tr><td class="error"><?php echo _('Not Enough Data'); ?></td></tr>
+ <li class="error"><?php echo _('Not Enough Data'); ?></li>
<?php } ?>
-</table>
-</div>
-<div id="rightbar-bottom">
-<h4><?php echo _('Add Dynamic Items'); ?></h4>
-<span><?php echo Ajax::button('?action=basket&type=dynamic&random_type=default','add',_('Add'),'rightbar_pure_random'); ?>
-<?php echo _('Pure Random'); ?></span>
-
-<span><?php echo Ajax::button('?action=basket&type=dynamic&random_type=artist','add',_('Add'),'rightbar_related_artist'); ?>
-<?php echo _('Related Artist'); ?></span>
+</ul>
-<span><?php echo Ajax::button('?action=basket&type=dynamic&random_type=album','add',_('Add'),'rightbar_related_album'); ?>
-<?php echo _('Related Album'); ?></span>
-<span><?php echo Ajax::button('?action=basket&type=dynamic&random_type=genre','add',_('Add'),'rightbar_related_genre'); ?>
-<?php echo _('Related Genre'); ?></span>
-</div>
-<?php show_box_bottom(); ?>
<?php
// We do a little magic here to force a iframe reload depending on preference
diff --git a/templates/show_box_bottom.inc.php b/templates/show_box_bottom.inc.php
index f0c050f3..809f58e0 100644
--- a/templates/show_box_bottom.inc.php
+++ b/templates/show_box_bottom.inc.php
@@ -20,11 +20,11 @@
*/
?>
- </td>
-</tr>
-<tr>
- <td class="box-left-bottom"></td>
- <td class="box-bottom"></td>
- <td class="box-right-bottom"></td>
-</tr>
-</table>
+ </div>
+ <div class="box-bottom">
+ <div class="box-left-bottom"></div>
+ <div class="box-right-bottom"></div>
+ </div>
+ </div>
+</div>
+
diff --git a/templates/show_box_top.inc.php b/templates/show_box_top.inc.php
index e3e9221a..d632150e 100644
--- a/templates/show_box_top.inc.php
+++ b/templates/show_box_top.inc.php
@@ -20,20 +20,15 @@
*/
$class = $class ? $class : 'box';
?>
-<table class="<?php echo $class; ?>" cellspacing="0" cellpadding="0">
-<tr>
- <td class="box-left-top"></td>
- <td class="box-top"></td>
- <td class="box-right-top"></td>
-</tr>
-<tr>
- <td class="box-left" rowspan="2"></td>
-<?php if ($title) { ?>
- <td class="box-title"><?php echo $title; ?></td>
-<?php } else { ?>
- <td></td>
-<?php } ?>
- <td class="box-right" rowspan="2"></td>
-</tr>
-<tr>
- <td class="box-content" style="padding-top:3px;">
+
+<div class="<?php echo $class; ?>">
+ <div class="box-inside">
+ <div class="box-top">
+ <div class="box-left-top"></div>
+ <div class="box-right-top"></div>
+ </div>
+ <?php if ($title) { ?>
+ <h3 class="box-title"><?php echo $title; ?></h3>
+ <?php } ?>
+ <div class="box-content">
+
diff --git a/templates/show_index.inc.php b/templates/show_index.inc.php
index 86a99bbd..39a95c5b 100644
--- a/templates/show_index.inc.php
+++ b/templates/show_index.inc.php
@@ -47,17 +47,17 @@ if (isset($_REQUEST['xspf']) && isset ($_REQUEST['play_info'])){
<?php
$objects = Stats::get_newest('album');
$headers = array('f_link'=>_('Newest Albums'));
- show_box_top('','info-box');
+ show_box_top('','info-box box_newest_albums');
require Config::get('prefix') . '/templates/show_objects.inc.php';
show_box_bottom();
$objects = Stats::get_newest('artist');
$headers = array('f_name_link'=>_('Newest Artists'));
- show_box_top('','info-box');
+ show_box_top('','info-box box_newest_artists');
require Config::get('prefix') . '/templates/show_objects.inc.php';
show_box_bottom();
$objects = Stats::get_newest('genre');
$headers = array('f_link'=>_('Newest Genres'));
- show_box_top('','info-box');
+ show_box_top('','info-box box_newest_genres');
require Config::get('prefix') . '/templates/show_objects.inc.php';
show_box_bottom();
?>
diff --git a/templates/show_local_catalog_info.inc.php b/templates/show_local_catalog_info.inc.php
index fcc55e37..01548bcd 100644
--- a/templates/show_local_catalog_info.inc.php
+++ b/templates/show_local_catalog_info.inc.php
@@ -22,7 +22,7 @@
?>
<?php show_box_top(_('Catalog Statistics')); ?>
-<table cellspacing="1" cellpadding="3" width="100%" border="0">
+<table cellspacing="1" cellpadding="3" border="0">
<tr class="table-header">
<td><?php echo _('Connected Users'); ?></td>
<td><?php echo _('Total Users'); ?></td>
diff --git a/templates/sidebar.inc.php b/templates/sidebar.inc.php
index f7aff7c4..bc76657e 100644
--- a/templates/sidebar.inc.php
+++ b/templates/sidebar.inc.php
@@ -62,7 +62,7 @@ $ajax_url = Config::get('ajax_url');
</li>
-->
<li id="sb_tab_logout" class="sb1">
- <a href="<?php echo Config::get('web_path'); ?>/logout.php">
+ <a href="<?php echo Config::get('web_path'); ?>/logout.php" id="sidebar_logout" >
<?php echo get_user_icon('logout',_('Logout')); ?>
</a>
</li>
diff --git a/templates/sidebar_admin.inc.php b/templates/sidebar_admin.inc.php
index c2348aec..6592c5e0 100644
--- a/templates/sidebar_admin.inc.php
+++ b/templates/sidebar_admin.inc.php
@@ -1,7 +1,9 @@
<ul class="sb2" id="sb_admin">
<li><h4><?php echo _('Catalogs'); ?></h4>
- <div class="sb3"><a href="<?php echo $web_path; ?>/admin/catalog.php?action=show_add_catalog"><?php echo _('Add a Catalog'); ?></a></div>
- <div class="sb3"><a href="<?php echo $web_path; ?>/admin/catalog.php?action=show_catalogs"><?php echo _('Show Catalogs'); ?></a></div>
+ <ul class="sb3" id="sb_admin_catalogs">
+ <li id="sb_admin_catalogs_Add"><a href="<?php echo $web_path; ?>/admin/catalog.php?action=show_add_catalog"><?php echo _('Add a Catalog'); ?></a></li>
+ <li id="sb_admin_catalogs_Show"><a href="<?php echo $web_path; ?>/admin/catalog.php?action=show_catalogs"><?php echo _('Show Catalogs'); ?></a></li>
+ </ul>
</li>
<li><h4><?php echo _('User Tools'); ?></h4>
diff --git a/templates/sidebar_home.inc.php b/templates/sidebar_home.inc.php
index 0c711f95..a04ffe43 100644
--- a/templates/sidebar_home.inc.php
+++ b/templates/sidebar_home.inc.php
@@ -8,9 +8,9 @@
</li>
<li><h4><?php echo _('Random'); ?></h4>
<ul class="sb3" id="sb_home_random">
- <li id="sb_home_random_album"><?php echo Ajax::text('?page=random&action=album',_('Album'),'sb_home_random_album'); ?></li>
- <li id="sb_home_random_artist"><?php echo Ajax::text('?page=random&action=artist',_('Artist'),'sb_home_random_artist'); ?></li>
- <li id="sb_home_random_playlist"><?php echo Ajax::text('?page=random&action=playlist',_('Playlist'),'sb_home_random_playlist'); ?></li>
+ <li id="sb_home_random_album"><?php echo Ajax::text('?page=random&action=album',_('Album'),'home_random_album'); ?></li>
+ <li id="sb_home_random_artist"><?php echo Ajax::text('?page=random&action=artist',_('Artist'),'home_random_artist'); ?></li>
+ <li id="sb_home_random_playlist"><?php echo Ajax::text('?page=random&action=playlist',_('Playlist'),'home_random_playlist'); ?></li>
<li id="sb_home_random_advanced"><a href="<?php echo $web_path; ?>/random.php?action=advanced"><?php echo _('Advanced'); ?></a></li>
</ul>
</ul>
diff --git a/themes/classic/images/rightbar_top.jpg b/themes/classic/images/rightbar_top.jpg
new file mode 100644
index 00000000..196fa41b
--- /dev/null
+++ b/themes/classic/images/rightbar_top.jpg
Binary files differ
diff --git a/themes/classic/templates/default.css b/themes/classic/templates/default.css
index 3d80a449..fe4c3db2 100644
--- a/themes/classic/templates/default.css
+++ b/themes/classic/templates/default.css
@@ -1,726 +1,785 @@
-/*
-
- Copyright (c) 2001 - 2007 Ampache.org
- All rights reserved.
-
- This program is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License v2
- as published by the Free Software Foundation
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-*/
-
-
-/************************************************/
-/* Unify default browsers style rules */
-/************************************************/
-:link,:visited { text-decoration:underline; }
-h1, h2, h3, h4, h5, h6, pre, code { font-size: 1em; line-height: 1em; } /* avoid browser default inconsistent font-sizes */
-a img, :link img, :visited img { border: none; } /* no blue linked image borders */
-ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input { margin:0; padding:0 } /* White space reset */
-
-
-/************************************************/
-/* General style rules */
-/************************************************/
-body {
- background:#d3d3d3;
- font-family:Arial, Helvetica, Sans-Serif;
- min-width:1000px;
-}
-p {
- color: #000;
- margin:1em 0;
-}
-a, a:visited, a:active{
- color: #000;
- font-family: Verdana, Helvetica, sans-serif;
-}
-td {
- padding: 0 8px;
- color: #000;
- font:12px Verdana, Helvetica, sans-serif;
-}
-th {
- padding-right: 10px;
-}
-input, select, textarea{
- font: 12px Verdana, Helvetica, sans-serif;
- background: #ddd;
- color: #000;
-}
-input {
- font-weight: bold;
- margin: 2px 2px 2px 0;
-}
-
-.link { cursor:pointer; }
-
-/************************************************/
-/* Header */
-/************************************************/
-#topbar {
- height: 85px;
- padding: 3px 0 0 10px;
-}
-#topbarright {
- float: right;
- font-size: 10px;
-}
-#topbarleft, #topbarleft a{
- float: left;
-}
-
-/************************************************/
-/* XSPF Player */
-/************************************************/
-
-.xspf_player {
- right: 20px;
- position: absolute;
-}
-
-/************************************************/
-/* Footer */
-/************************************************/
-#footer {
- clear:both;
- float:right;
- margin:5px;
- font-size:10px;
-}
-#footer p {
- color:#999;
- font-size:10px;
-}
-#footer-content {
- font-size:10px;
-}
-
-
-/************************************************/
-/* Buttons */
-/************************************************/
-.selected_button {
- background: #000;
- color: #fff;
-}
-.unselected_button {
-}
-#sb_Subsearch input{ margin:0; padding:0;}
-.smallbutton {
- border-top:1px solid #f0f0f0;
- border-left:1px solid #f0f0f0;
- border-bottom:1px solid #a0a0a0;
- border-right:1px solid #a0a0a0;
- padding: 0 1px;
- margin:0;
- font-size: 11px;
- cursor: pointer;
- font-weight:bold;
- background: #d0d0d0;
-}
-.smallbutton:active {
- border-bottom:1px solid #f0f0f0;
- border-right:1px solid #f0f0f0;
- border-top:1px solid #a0a0a0;
- border-left:1px solid #a0a0a0;
-}
-a.smallbutton {
- text-decoration:none;
- padding:1px 2px;
-}
-
-
-/************************************************/
-/* Tables (songs lists...) */
-/************************************************/
-.table-header {
-/* background: url(../images/ampache-light-bg.gif) #dddddd repeat-x; */
- font-size:1.1em;
- vertical-align: top;
- text-align:center;
-}
-.odd, .odd td {
- font-size: 12px;
- border-bottom:1px dotted #c0c0c0;
-}
-.even, .even td {
- font-size: 12px;
- border-bottom:1px dotted #c0c0c0;
-}
-.even:hover, .odd:hover {
- background:#99ccff;
-}
-.headrow {
- font-size: 12px;
- background:#ccc;
-}
-.blank {
- background: #fff;
-}
-.border {
- background: #000;
-}
-.header {
- font-size: 12px;
-}
-
-/************************************************/
-/* Content block */
-/************************************************/
-#content {
- margin: 0px 220px 20px 135px;
-}
-h3#content_title{
- font: 12px/32px Arial,Helvetica,Sans-Serif;
- background:#8b8b8b url(../images/content_corner.gif) no-repeat right top;
- color:#fff;
-}
-h3#content_title span {
- text-align:left;
-}
-
-/************************************************/
-/* Rightbar */
-/************************************************/
-#rightbar {
- width:200px;
- float:right;
-}
-#rightbar table.box
-{
- float:right;
-}
-#rightbar li {
- list-style:none;
- float:left;
- margin-right:3px;
-}
-#rightbar-bottom span {
- padding-left:10px;
- display:block;
-}
-
-#current_playlist {
- clear:left;
-}
-
-/************************************************/
-/* Sidebar */
-/************************************************/
-#sidebar{
- float:left;
- position:relative;
- width:120px;
- padding-top:28px;
- background:#c0c0c0 url(../images/sidebar_top.jpg) no-repeat;
- font-size:0.9em;
-}
-
-#sidebar select { width: 95%; }
-#sidebar input { vertical-align:middle; background:#fff; }
-#sidebar ul { list-style:none; }
-#sidebar a { text-decoration:none; }
-
-
-/* For sidebar tabs */
-/********************/
-#sidebar-tabs{
- border-top:1px solid #8b8b8b;
-}
-
-#sidebar-tabs li.sb1 {
- float: left;
- padding:2px;
- background: #c0c0c0 ;
-}
-#sidebar-tabs li.active {
- background: #fff url(../images/top.gif) repeat-x 0 0;
- margin-top:8px;
-}
-#sidebar-tabs li.active img{
- margin-top:4px;position:relative;z-index:2;
-}
-
-/* Tabs content */
-/****************/
-#sidebar-page {
- position:absolute;
- left:0;
- top:52px;
- background: #fff url(../images/bottom.gif) 0 100% repeat-x;
- padding-bottom:0.5em;
- border-right:2px solid #c0c0c0;
- font-size: 0.8em;
- width:118px;
-}
-#sidebar-page ul.sb2 {
- padding:2px 4px;
-}
-#sidebar-page ul.sb2 li{
- font-weight:bold;
- margin:1em auto;
- padding-bottom: 0.5em;
- border-bottom: 1px solid #666;
-}
-#sidebar-page ul.sb2 h4{ padding-bottom: 0.5em; }
-
-#sidebar-page ul.sb3, #sidebar-page div.sb3 {
- font-size:0.9em;
- margin-left:2px;
- font-weight:normal;
- color:#5b5b5b;
-}
-
-#sidebar-page ul.sb3 li{
- margin:0;
- padding:0;
- border:none;
- font-weight:normal;
-}
-* html #sidebar-page ul.sb3 li{display:inline;} /* fix ie6 */
-
-#sidebar-page .sb3 a, #sidebar-page .sb3 .link{
- padding:0.1em;
- border-bottom:1px dotted #c0c0c0;
- color:#5b5b5b;
-}
-
-
-#sidebar-page a{
- display:block;
-}
-#sidebar-page a:hover, #sidebar-page .link:hover{
- background:#99ccff;
- color:#fff;
-}
-
-/* SIDEBAR : Home */
-/******************/
-
-/* SIDEBAR : Browse */
-/********************/
-.alphabet {
- background:transparent; /* fix ie bug */
- font-size:0.95em;
- font-weight:normal;
- margin: 0.3em auto;
- color:#5b5b5b;
-}
-.alphabet span.link {
- cursor: pointer;
- margin: 0;
- padding:0 5px;
- font-family: monospace, Courier, Georgia;
-}
-.alphabet span.active{ background:#5b5b5b; color:#fff; }
-.alphabet span.link:hover {
- background: #99ccff;
- color:#fff;
-}
-
-/* SIDEBAR : Search */
-/********************/
-
-/* SIDEBAR : Preferences */
-/*************************/
-
-/* SIDEBAR : Admin */
-/*******************/
-#sb_admin_catalogs li.sb_admin_catalogs_ctrls img {margin:0;}
-#sb_admin_catalogs li.sb_admin_catalogs_ctrls a{
- display:inline;
- padding:0;
- border:none;
-}
-
-
-/************************************************/
-/* Albums of the moment */
-/************************************************/
-
-.random_album
-{
- position:relative;
- float:left;
- padding:8px;
- width:80px;
-}
-
-.random_album .play_album
-{
- display:none;
-}
-
-/************************************************/
-/* Now Playing Styles */
-/************************************************/
-#nowplaying{
- clear: both;
- width: 600px;
-}
-
-#np_container1{
- width: 260px;
- height: 18px;
- background: #fff url(../images/tb_tab.jpg) no-repeat top left;
-}
-
-#np_container1 h1{
- font-size: 10px;
- font-weight: bold;
- padding: 2px;
-}
-
-#np_container2{
- border: 1px solid #999;
- border-color:#ddd #999 #999 #ccc;
- padding: 6px;
- font: 10px/12px Verdana, sans-serif;
- background: #d6d6d4 url(../images/bg_row.jpg) repeat top left;
- color: #000;
-}
-.np_row {
- padding: 3px 0;
-}
-.np_cell, .np_cell_left, .np_cell_m, .np_cell_right {
- margin: 10px;
-}
-
-
-/************************************************/
-/* Styles for the star ratings */
-/************************************************/
-.star-rating {
- position:relative;
- display:inline;
-}
-
-.star-rating ul,
-.star-rating a:hover,
-.star-rating .current-rating{
- background: url(../../../images/ratings/star_rating.gif) left -1000px repeat-x;
-}
-.star-rating ul{
- position:relative;
- width:80px;
- height:15px;
- overflow:hidden;
- list-style:none;
- margin:0;
- padding:0;
- background-position: left top;
-}
-.star-rating li{
- display: inline;
-}
-.star-rating a, .star-rating span,
-.star-rating .current-rating{
- position:absolute;
- top:0;
- left:0;
- text-indent:-1000em;
- height:15px;
- line-height:15px;
- outline:none;
- overflow:hidden;
- border: none;
-}
-.star-rating .one-stars { width:20%; z-index:6; }
-.star-rating .two-stars { width:40%; z-index:5; }
-.star-rating .three-stars { width:60%; z-index:4; }
-.star-rating .four-stars { width:80%; z-index:3; }
-.star-rating .five-stars { width:100%; z-index:2; }
-.star-rating .current-rating { z-index:1; background-position: left bottom; }
-
-.star-rating a.zero-stars {
- left:80px;
- width:16px;
- background-image: url(../../../images/ratings/x_off.gif);
-}
-
-/* hovering effect only for dynamic star rating */
-.dynamic-star-rating a:hover{
- background-position: left center;
-}
-.dynamic-star-rating a:hover.zero-stars {
- background-image: url(../../../images/ratings/x.gif);
-}
-
-/************************************************/
-/* Box Related Styles */
-/************************************************/
-.box {
- background: #f7f7f7;
- /*clear:left;/*both;*/
-}
-.info-box {
- background: #f7f7f7;
- /*float:left;*/
-}
-.box-title {
- border-bottom: solid 1px #000;
- font-size: 1.05em;
- font-weight: bold;
-}
-.box-list {
- padding-right: 10px;
-}
-
-/* Enclosing Boxes Styles */
-.box-left-top {
- background: url(../images/topleft.gif) no-repeat;
- height:16px;
-}
-.box-left-bottom {
- background: url(../images/bottomleft.gif) no-repeat;
- height:18px;
-}
-.box-left {
- background: url(../images/left.gif);
-}
-.box-bottom {
- background: url(../images/bottom.gif);
- height:18px;
-}
-.box-right-bottom {
- background: url(../images/bottomright.gif) no-repeat;
-}
-.box-right-top {
- background: url(../images/topright.gif) no-repeat;
-}
-.box-right {
- background: url(../images/right.gif);
-}
-.box-top {
- background: url(../images/top.gif);
-}
-
-
-/************************************************/
-/* List Header Styles */
-/************************************************/
-table.list-header {
- margin:3px;
-}
-div.list-header {
- cursor:pointer;
- text-decoration: none;
- font-size: 0.8em;
- padding:2px 4px 0px 4px;
- border: 1px solid #000;
- display:inline;
-}
-div.list-header-selected {
- text-decoration: none;
- font-size: 0.8em;
- padding:2px 4px 0px 4px;
- border: 1px solid #000;
- background: #e0e0e0;
- display:inline;
-}
-div.list-header:hover {
- background: #d0d0d0;
-}
-
-
-/************************************************/
-/* Text Action Styles */
-/************************************************/
-.text-action, .text-action li {
- list-style: none;
- margin:5px 0;
- padding-left:0px;
-}
-.text-action div {
- text-decoration: underline;
- cursor: pointer;
- display:block;
-}
-.text-action #pt_active {
- background: #000;
- color: #fff;
- border:1px solid #ddd;
-}
-
-
-/************************************************/
-/* Styles for Header */
-/*(for ampache admin : installation, update...) */
-/************************************************/
-div#Header{
- height:80px;
- margin-bottom:3px;
-}
-#Header h1 {
- width: 439px;
- height: 84px;
- float: left;
- border:0;
- background: transparent url(../images/bg_login_0.jpg) no-repeat top left;
-}
-#Header h1 span {
- display:none
-}
-#Header h2 {
- float: right;
- margin-top: 75px;
- width: 200px;
- height: 18px;
- background: transparent url(001/h2.gif) no-repeat top left;
-}
-#Header h2 span {
- font-size: 10px;
- margin-left: 10px;
-}
-
-
-/************************************************/
-/* Styles for Login template */
-/************************************************/
-#container{
- margin:100px auto 0 auto;
- width:437px;
- font-size:12px;
- text-align:center;
-}
-#container h1{
- background:url(../images/bg_login_0.jpg) no-repeat;
- height:81px;
- margin-bottom:8px;
-}
-#container h1 span{
- display:none;
-}
-#container div.fatalerror {
- display:block;
- height:auto;
- padding:5px;
- margin:10px;
- background:none;
-}
-#container div{
- background:url(../images/bg_login_1.jpg) no-repeat;
- height:285px;
-}
-#loginp_0{
- color:#333;
- margin-top:0;
- padding-top:60px;
-}
-.loginp_1{
- text-align:right;
- padding-right:100px;
-}
-.loginp_1 label{
- font-weight:bold;
-}
-.loginp_1 input{
- border:1px solid #999;
-}
-input.text_input{
-width:12em;
-}
-.loginp_1 input.check_input{
-margin-right:5em;
-}
-
-
-/************************************************/
-/* TV Page Related Styles */
-/************************************************/
-#tv_np{
- float:right;
-}
-#tv_left{
- float:left;
- clear:right;
-}
-#tv_playlist{
- clear:both;
-}
-
-
-/************************************************/
-/* User Online/Offline style, used in users.php */
-/************************************************/
-td.user_online{
- background:#0f0;
-}
-td.user_offline {
- background:#7f0000;
-}
-td.user_disabled {
- background:#ccc;
-}
-
-
-/************************************************/
-/* Additional Information Boxes */
-/************************************************/
-#information_actions {
- margin-left:5px;
-}
-#additional_information {
- float:left;
-}
-
-
-/************************************************/
-/* Misc */
-/************************************************/
-.text-box, .confirmation-box {
- display:table-cell;
- padding:5px 5px 0 5px;
- margin-bottom:10px;
- background:#bbb;
- border:2px solid #000;
-}
-
-#mpdpl td {
- padding:0 2px 0 2px;
- text-align:left;
-}
-.header1 {
- color:#000;
- font:bold 18px Verdana, Helvetica, sans-serif;
-}
-.header2 {
- color:#000;
- font:bold 14px Verdana, Helvetica, sans-serif;
-}
-.error {
- color:#903;
-}
-.fatalerror {
- display:table-cell;
- padding:3px;
- color: #903;
- font-weight:bold;
- border:2px solid #903;
-}
-.disabled {
- text-decoration:line-through;
-}
-#maincontainer{}
-table.tabledata {}
-.display {}
-
-
-.lp_box_ctrl {
- text-align: center; /*for compatibility, may be controlled by themers now*/
-/* padding-top: 5px; */
-}
-.lp_box_vol {
- text-align: center; /*for compatibility, may be controlled by themers now*/
-/* padding-left: 7px; */
-}
+/*
+
+ Copyright (c) 2001 - 2007 Ampache.org
+ All rights reserved.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License v2
+ as published by the Free Software Foundation
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+
+
+/************************************************/
+/* Unify default browsers style rules */
+/************************************************/
+:link,:visited { text-decoration:underline; }
+h1, h2, h3, h4, h5, h6, pre, code { font-size: 1em; line-height: 1em; } /* avoid browser default inconsistent font-sizes */
+a img, :link img, :visited img { border: none; } /* no blue linked image borders */
+ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,body,html,p,blockquote,fieldset,input { margin:0; padding:0 } /* White space reset */
+
+
+/************************************************/
+/* General style rules */
+/************************************************/
+body {
+ background:#d3d3d3;
+ font-family:Arial, Helvetica, Sans-Serif;
+ min-width:1000px;
+}
+p {
+ color: #000;
+ margin:1em 0;
+}
+a, a:visited, a:active{
+ color: #000;
+ font-family: Verdana, Helvetica, sans-serif;
+}
+td {
+ padding: 0 8px;
+ color: #000;
+ font:12px Verdana, Helvetica, sans-serif;
+}
+th {
+ padding-right: 10px;
+ font-family: Verdana, Helvetica, sans-serif;
+ font-size:13px;
+}
+input, select, textarea{
+ font: 12px Verdana, Helvetica, sans-serif;
+ background: #ddd;
+ color: #000;
+}
+input {
+ font-weight: bold;
+ margin: 2px 2px 2px 0;
+}
+
+/************************************************/
+/* IE6 behaviors */
+/* - csshover2: :hover support on any element */
+/************************************************/
+body { behavior:url("csshover2.htc"); }
+
+/************************************************/
+/* Header */
+/************************************************/
+#topbar {
+ height: 85px;
+ padding: 3px 0 0 10px;
+}
+#topbarright {
+ float: right;
+ font-size: 10px;
+}
+#topbarleft, #topbarleft a{
+ float: left;
+}
+/************************************************/
+/* XSPF Player */
+/************************************************/
+
+.xspf_player {
+ right: 20px;
+ position: absolute;
+}
+
+/************************************************/
+/* Footer */
+/************************************************/
+#footer {
+ clear:both;
+ text-align:center;
+ font-size:10px;
+ padding:3px;
+}
+#footer p {
+ color:#999;
+ font-size:10px;
+}
+#footer-content {
+ font-size:10px;
+}
+
+
+/************************************************/
+/* Buttons */
+/************************************************/
+.selected_button {
+ background: #000;
+ color: #fff;
+}
+.unselected_button {
+}
+#sb_Subsearch input{ margin:0; padding:0;}
+.smallbutton {
+ border: 1px solid #f0f0f0;
+ border-color: #f0f0f0 #a0a0a0 #a0a0a0 #f0f0f0;
+ padding: 0 1px;
+ margin:0;
+ font-size: 11px;
+ cursor: pointer;
+ font-weight:bold;
+ background: #d0d0d0;
+}
+.smallbutton:active {
+ border: 1px solid #f0f0f0;
+ border-color: #f0f0f0 #a0a0a0 #a0a0a0 #f0f0f0;
+}
+a.smallbutton {
+ text-decoration:none;
+ padding:1px 2px;
+}
+
+
+/************************************************/
+/* Tables (songs lists...) */
+/************************************************/
+.table-header {
+ font-size:1.1em;
+ vertical-align: top;
+ text-align:center;
+}
+.odd, .odd td {
+ font-size: 12px;
+ border-bottom:1px dotted #c0c0c0;
+}
+.even, .even td {
+ font-size: 12px;
+ border-bottom:1px dotted #c0c0c0;
+}
+.even:hover, .odd:hover {
+ background:#99ccff;
+}
+.headrow {
+ font-size: 12px;
+ background:#ccc;
+}
+.blank {
+ background: #fff;
+}
+.border {
+ background: #000;
+}
+.header {
+ font-size: 12px;
+}
+
+/************************************************/
+/* Content block */
+/************************************************/
+#content {
+ margin: 20px 135px 20px 135px;
+}
+h3#content_title{
+ font: 12px/32px Arial,Helvetica,Sans-Serif;
+ background:#8b8b8b url(../images/content_corner.gif) no-repeat right top;
+ color:#fff;
+}
+h3#content_title span {
+ text-align:left;
+}
+
+/************************************************/
+/* Rightbar */
+/************************************************/
+#rightbar {
+ width:120px;
+ background:#fff;
+ padding-top:28px;
+ background:#c0c0c0 url(../images/rightbar_top.jpg) no-repeat;
+ float:right;
+ font-family: Verdana,Helvetica,sans-serif;
+}
+#rightbar ul { list-style:none; }
+#rightbar a { text-decoration:none; }
+
+
+/* Rightbar Menu */
+#rightbar #rb_action {
+ border-top:1px solid #8b8b8b;
+ padding:4px;
+}
+#rightbar #rb_action li { display:inline; }
+#rightbar li#rb_add { position:relative; z-index:10;}
+#rightbar li#rb_add:hover { background:#99ccff; }
+/* Rightbar AddItems SubMenu */
+#rightbar li:hover #rb_action_additems { display:block; }
+#rightbar #rb_action_additems {
+ display:none;
+ position:absolute;
+ right:0px;
+ top:18px;
+ background:#fff;
+ border:2px solid #c0c0c0;
+ width:120px;
+ font-size:0.7em;
+ padding:0.3em;
+}
+* html #rightbar #rb_action_additems {right:100px;} /* IE6 fix */
+
+#rightbar #rb_action_additems a {
+ display:block;
+ padding:0.1em;
+ border-bottom:1px dotted #c0c0c0;
+ color:#5b5b5b;
+ text-decoration:none;
+ text-align:right;
+}
+#rightbar #rb_action_additems a:hover,
+#rightbar #rb_current_playlist a:hover { background:#99ccff; color:#fff; }
+
+/* Rightbar playlist */
+#rightbar #rb_current_playlist {
+ background: #fff url(../images/bottom.gif) 0 100% repeat-x;
+ padding-bottom:0.5em;
+ border-left:2px solid #c0c0c0;
+ border-right:2px solid #c0c0c0;
+}
+#rightbar #rb_current_playlist li { position:relative; font-size:0.6em;line-height:14px; color:#5b5b5b; padding-right:20px;}
+#rightbar #rb_current_playlist li a { display:block; padding:0.2em;}
+#rightbar .delitem { position:absolute;right:0;top:0; }
+
+/************************************************/
+/* Sidebar */
+/************************************************/
+#sidebar{
+ /*float:left;*/
+ position:absolute;
+ top:100px;
+ left:0;
+ width:120px;
+ padding-top:28px;
+ background:#c0c0c0 url(../images/sidebar_top.jpg) no-repeat;
+ font-size:0.9em;
+}
+
+#sidebar select { width: 95%; }
+#sidebar input { vertical-align:middle; background:#fff; }
+#sidebar ul { list-style:none; }
+#sidebar a { text-decoration:none; }
+
+
+/* For sidebar tabs */
+/********************/
+#sidebar-tabs{
+ border-top:1px solid #8b8b8b;
+}
+
+#sidebar-tabs li.sb1 {
+ float: left;
+ padding:2px;
+ background: #c0c0c0 ;
+}
+#sidebar-tabs li.active {
+ background: #fff url(../images/top.gif) repeat-x 0 0;
+ margin-top:8px;
+}
+#sidebar-tabs li.active img{
+ margin-top:4px;position:relative;z-index:2;
+}
+
+/* Tabs content */
+/****************/
+#sidebar-page {
+ position:absolute;
+ left:0;
+ top:52px;
+ background: #fff url(../images/bottom.gif) 0 100% repeat-x;
+ padding-bottom:0.5em;
+ border-right:2px solid #c0c0c0;
+ font-size: 0.8em;
+ width:118px;
+}
+#sidebar-page ul.sb2 {
+ padding:2px 4px;
+}
+#sidebar-page ul.sb2 li{
+ font-weight:bold;
+ margin:1em auto;
+ padding-bottom: 0.5em;
+ border-bottom: 1px solid #666;
+}
+#sidebar-page ul.sb2 h4{ padding-bottom: 0.5em; }
+
+#sidebar-page ul.sb3, #sidebar-page div.sb3 {
+ font-size:0.9em;
+ margin-left:2px;
+ font-weight:normal;
+ color:#5b5b5b;
+}
+
+#sidebar-page ul.sb3 li{
+ margin:0;
+ padding:0;
+ border:none;
+ font-weight:normal;
+}
+* html #sidebar-page ul.sb3 li{display:inline;} /* fix ie6 */
+
+#sidebar-page .sb3 a{
+ padding:0.1em;
+ border-bottom:1px dotted #c0c0c0;
+ color:#5b5b5b;
+}
+
+
+#sidebar-page a{
+ display:block;
+}
+#sidebar-page a:hover{
+ background:#99ccff;
+ color:#fff;
+}
+
+/* SIDEBAR : Home */
+/******************/
+
+/* SIDEBAR : Browse */
+/********************/
+.alphabet {
+ background:transparent; /* fix ie bug */
+ font-size:0.95em;
+ font-weight:normal;
+ margin: 0.3em auto;
+ color:#5b5b5b;
+}
+.alphabet span.link {
+ cursor: pointer;
+ margin: 0;
+ padding:0 5px;
+ font-family: monospace, Courier, Georgia;
+}
+.alphabet span.active{ background:#5b5b5b; color:#fff; }
+.alphabet span.link:hover {
+ background: #99ccff;
+ color:#fff;
+}
+
+/* SIDEBAR : Search */
+/********************/
+
+/* SIDEBAR : Preferences */
+/*************************/
+
+/* SIDEBAR : Admin */
+/*******************/
+#sb_admin_catalogs li.sb_admin_catalogs_ctrls img {margin:0;}
+#sb_admin_catalogs li.sb_admin_catalogs_ctrls a{
+ display:inline;
+ padding:0;
+ border:none;
+}
+
+
+
+/************************************************/
+/* Albums of the moment */
+/************************************************/
+
+.random_album
+{
+ position:relative;
+ float:left;
+ padding:8px;
+ width:80px;
+}
+
+.random_album .play_album
+{
+ display:none;
+}
+
+/************************************************/
+/* Now Playing Styles */
+/************************************************/
+#nowplaying{
+ clear: both;
+ width: 600px;
+}
+
+#np_container1{
+ width: 260px;
+ height: 18px;
+ background: #fff url(../images/tb_tab.jpg) no-repeat top left;
+}
+
+#np_container1 h1{
+ font-size: 10px;
+ font-weight: bold;
+ padding: 2px;
+}
+
+#np_container2{
+ border: 1px solid #999;
+ border-color:#ddd #999 #999 #ccc;
+ padding: 6px;
+ font: 10px/12px Verdana, sans-serif;
+ background: #d6d6d4 url(../images/bg_row.jpg) repeat top left;
+ color: #000;
+}
+.np_row {
+ padding: 3px 0;
+}
+.np_cell, .np_cell_left, .np_cell_m, .np_cell_right {
+ margin: 10px;
+}
+
+
+/************************************************/
+/* Styles for the star ratings */
+/************************************************/
+.star-rating {
+ position:relative;
+ display:inline;
+}
+
+.star-rating ul,
+.star-rating a:hover,
+.star-rating .current-rating{
+ background: url(../../../images/ratings/star_rating.gif) left -1000px repeat-x;
+}
+.star-rating ul{
+ position:relative;
+ width:80px;
+ height:15px;
+ overflow:hidden;
+ list-style:none;
+ margin:0;
+ padding:0;
+ background-position: left top;
+}
+.star-rating li{
+ display: inline;
+}
+.star-rating a, .star-rating span,
+.star-rating .current-rating{
+ position:absolute;
+ top:0;
+ left:0;
+ text-indent:-1000em;
+ height:15px;
+ line-height:15px;
+ outline:none;
+ overflow:hidden;
+ border: none;
+}
+.star-rating .one-stars { width:20%; z-index:6; }
+.star-rating .two-stars { width:40%; z-index:5; }
+.star-rating .three-stars { width:60%; z-index:4; }
+.star-rating .four-stars { width:80%; z-index:3; }
+.star-rating .five-stars { width:100%; z-index:2; }
+.star-rating .current-rating { z-index:1; background-position: left bottom; }
+
+.star-rating a.zero-stars {
+ left:80px;
+ width:16px;
+ background-image: url(../../../images/ratings/x_off.gif);
+}
+
+/* hovering effect only for dynamic star rating */
+.dynamic-star-rating a:hover{
+ background-position: left center;
+}
+.dynamic-star-rating a:hover.zero-stars {
+ background-image: url(../../../images/ratings/x.gif);
+}
+
+/************************************************/
+/* Box Related Styles */
+/************************************************/
+
+.box-title {
+ border-bottom: solid 1px #000;
+ font-size: 1.05em;
+ font-weight: bold;
+ margin: 0 10px;
+}
+.box-list {
+ padding-right: 10px;
+}
+
+/* Enclosing Boxes Styles */
+
+.box, .info-box {
+ background: #f7f7f7 url(../images/left.gif) top left repeat-y;
+ float:left;
+ clear:left;
+ height:1%; /* IE6 : Holly Hack comes to rescue once again */
+}
+.box-inside {
+ background: url(../images/right.gif) top right repeat-y;
+}
+.box-content {
+ padding:8px 15px;
+}
+
+.box-top {
+ background: url(../images/top.gif) 0 0 repeat-x;
+ position:relative;
+}
+.box-left-top {
+ background: url(../images/topleft.gif) no-repeat;
+ height:16px;
+ width:16px;
+ position:relative;left:0;top:0;
+}
+.box-right-top {
+ background: url(../images/topright.gif) no-repeat;
+ height:16px;
+ width:20px;
+ position:absolute;right:0;top:0;
+}
+* html .box-right-top {right: expression(-this.parentNode.offsetWidth%2+"px");} /* Fixes an IE6 rounding error */
+.box-bottom {
+ background: url(../images/bottom.gif) 0 0 repeat-x;
+ position:relative;clear:both;
+}
+.box-left-bottom {
+ background: url(../images/bottomleft.gif) no-repeat;
+ height:18px;
+ width:16px;
+ position:relative;left:0;top:0;
+}
+.box-right-bottom {
+ background: url(../images/bottomright.gif) no-repeat;
+ height:18px;
+ width:20px;
+ position:absolute;right:0;top:0;
+}
+* html .box-right-bottom {right: expression(-this.parentNode.offsetWidth%2+"px");} /* Fixes an IE6 rounding error */
+
+/* Specific boxes */
+.box_newest_albums {}
+.box_newest_artists {clear:none;}
+.box_newest_genres {clear:none;}
+.box_topbarright {display:table;}
+
+/************************************************/
+/* List Header Styles */
+/************************************************/
+table.list-header {
+ margin:3px;
+}
+div.list-header {
+ cursor:pointer;
+ text-decoration: none;
+ font-size: 0.8em;
+ padding:2px 4px 0px 4px;
+ border: 1px solid #000;
+ display:inline;
+}
+div.list-header-selected {
+ text-decoration: none;
+ font-size: 0.8em;
+ padding:2px 4px 0px 4px;
+ border: 1px solid #000;
+ background: #e0e0e0;
+ display:inline;
+}
+div.list-header:hover {
+ background: #d0d0d0;
+}
+
+
+/************************************************/
+/* Text Action Styles */
+/************************************************/
+.text-action, .text-action li {
+ list-style: none;
+ margin:5px 0;
+ padding-left:0px;
+}
+.text-action div {
+ text-decoration: underline;
+ cursor: pointer;
+ display:block;
+}
+.text-action #pt_active {
+ background: #000;
+ color: #fff;
+ border:1px solid #ddd;
+}
+
+
+/************************************************/
+/* Styles for Header */
+/*(for ampache admin : installation, update...) */
+/************************************************/
+div#Header{
+ height:80px;
+ margin-bottom:3px;
+}
+#Header h1 {
+ width: 439px;
+ height: 84px;
+ float: left;
+ border:0;
+ background: transparent url(../images/bg_login_0.jpg) no-repeat top left;
+}
+#Header h1 span {
+ display:none
+}
+#Header h2 {
+ float: right;
+ margin-top: 75px;
+ width: 200px;
+ height: 18px;
+ background: transparent url(001/h2.gif) no-repeat top left;
+}
+#Header h2 span {
+ font-size: 10px;
+ margin-left: 10px;
+}
+
+
+/************************************************/
+/* Styles for Login template */
+/************************************************/
+#container{
+ margin:100px auto 0 auto;
+ width:437px;
+ font-size:12px;
+ text-align:center;
+}
+#container h1{
+ background:url(../images/bg_login_0.jpg) no-repeat;
+ height:81px;
+ margin-bottom:8px;
+}
+#container h1 span{
+ display:none;
+}
+#container div.fatalerror {
+ display:block;
+ height:auto;
+ padding:5px;
+ margin:10px;
+ background:none;
+}
+#container div{
+ background:url(../images/bg_login_1.jpg) no-repeat;
+ height:285px;
+}
+#loginp_0{
+ color:#333;
+ margin-top:0;
+ padding-top:60px;
+}
+.loginp_1{
+ text-align:right;
+ padding-right:100px;
+}
+.loginp_1 label{
+ font-weight:bold;
+}
+.loginp_1 input{
+ border:1px solid #999;
+}
+input.text_input{
+width:12em;
+}
+.loginp_1 input.check_input{
+margin-right:5em;
+}
+
+
+/************************************************/
+/* TV Page Related Styles */
+/************************************************/
+#tv_np{
+ float:right;
+}
+#tv_left{
+ float:left;
+ clear:right;
+}
+#tv_playlist{
+ clear:both;
+}
+
+
+/************************************************/
+/* User Online/Offline style, used in users.php */
+/************************************************/
+td.user_online{
+ background:#0f0;
+}
+td.user_offline {
+ background:#7f0000;
+}
+td.user_disabled {
+ background:#ccc;
+}
+
+
+/************************************************/
+/* Additional Information Boxes */
+/************************************************/
+#information_actions {
+ margin-left:5px;
+ font-size:0.7em;
+}
+#additional_information {
+ float:left;
+}
+
+
+/************************************************/
+/* Misc */
+/************************************************/
+.text-box, .confirmation-box {
+ display:table-cell;
+ padding:5px 5px 0 5px;
+ margin-bottom:10px;
+ background:#bbb;
+ border:2px solid #000;
+}
+
+#mpdpl td {
+ padding:0 2px 0 2px;
+ text-align:left;
+}
+.header1 {
+ color:#000;
+ font:bold 18px Verdana, Helvetica, sans-serif;
+}
+.header2 {
+ color:#000;
+ font:bold 14px Verdana, Helvetica, sans-serif;
+}
+.error {
+ color:#903;
+}
+.fatalerror {
+ display:table-cell;
+ padding:3px;
+ color: #903;
+ font-weight:bold;
+ border:2px solid #903;
+}
+.disabled {
+ text-decoration:line-through;
+}
+#maincontainer{}
+table.tabledata {}
+.display {}
+
+
+.lp_box_ctrl {
+ text-align: center; /*for compatibility, may be controlled by themers now*/
+/* padding-top: 5px; */
+}
+.lp_box_vol {
+ text-align: center; /*for compatibility, may be controlled by themers now*/
+/* padding-left: 7px; */
+}
diff --git a/themes/greysme/images/ampache.png b/themes/greysme/images/ampache.png
new file mode 100644
index 00000000..5107bdb5
--- /dev/null
+++ b/themes/greysme/images/ampache.png
Binary files differ
diff --git a/themes/greysme/images/ampache_back.gif b/themes/greysme/images/ampache_back.gif
new file mode 100644
index 00000000..bf526816
--- /dev/null
+++ b/themes/greysme/images/ampache_back.gif
Binary files differ
diff --git a/themes/greysme/images/ampache_menu.gif b/themes/greysme/images/ampache_menu.gif
new file mode 100644
index 00000000..136d1241
--- /dev/null
+++ b/themes/greysme/images/ampache_menu.gif
Binary files differ
diff --git a/themes/greysme/images/back-box.gif b/themes/greysme/images/back-box.gif
new file mode 100644
index 00000000..47879ac5
--- /dev/null
+++ b/themes/greysme/images/back-box.gif
Binary files differ
diff --git a/themes/greysme/images/background.jpg b/themes/greysme/images/background.jpg
new file mode 100644
index 00000000..3339fe00
--- /dev/null
+++ b/themes/greysme/images/background.jpg
Binary files differ
diff --git a/themes/greysme/images/blankalbum.gif b/themes/greysme/images/blankalbum.gif
new file mode 100644
index 00000000..8413d5ea
--- /dev/null
+++ b/themes/greysme/images/blankalbum.gif
Binary files differ
diff --git a/themes/greysme/images/button_back.png b/themes/greysme/images/button_back.png
new file mode 100644
index 00000000..deca2006
--- /dev/null
+++ b/themes/greysme/images/button_back.png
Binary files differ
diff --git a/themes/greysme/images/button_back2.png b/themes/greysme/images/button_back2.png
new file mode 100644
index 00000000..95e2ef9b
--- /dev/null
+++ b/themes/greysme/images/button_back2.png
Binary files differ
diff --git a/themes/greysme/images/curl.gif b/themes/greysme/images/curl.gif
new file mode 100644
index 00000000..c2c57eb6
--- /dev/null
+++ b/themes/greysme/images/curl.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_admin.gif b/themes/greysme/images/icons/icon_admin.gif
new file mode 100644
index 00000000..a7cc1bba
--- /dev/null
+++ b/themes/greysme/images/icons/icon_admin.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_browse.gif b/themes/greysme/images/icons/icon_browse.gif
new file mode 100644
index 00000000..880ea276
--- /dev/null
+++ b/themes/greysme/images/icons/icon_browse.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_home.gif b/themes/greysme/images/icons/icon_home.gif
new file mode 100644
index 00000000..71dc39ac
--- /dev/null
+++ b/themes/greysme/images/icons/icon_home.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_localplay.gif b/themes/greysme/images/icons/icon_localplay.gif
new file mode 100644
index 00000000..77a70103
--- /dev/null
+++ b/themes/greysme/images/icons/icon_localplay.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_logout.gif b/themes/greysme/images/icons/icon_logout.gif
new file mode 100644
index 00000000..49acbcaa
--- /dev/null
+++ b/themes/greysme/images/icons/icon_logout.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_plists.gif b/themes/greysme/images/icons/icon_plists.gif
new file mode 100644
index 00000000..12bdf48e
--- /dev/null
+++ b/themes/greysme/images/icons/icon_plists.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_prefs.gif b/themes/greysme/images/icons/icon_prefs.gif
new file mode 100644
index 00000000..afd4e911
--- /dev/null
+++ b/themes/greysme/images/icons/icon_prefs.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_random.gif b/themes/greysme/images/icons/icon_random.gif
new file mode 100644
index 00000000..1300a3ab
--- /dev/null
+++ b/themes/greysme/images/icons/icon_random.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_search.gif b/themes/greysme/images/icons/icon_search.gif
new file mode 100644
index 00000000..176a478c
--- /dev/null
+++ b/themes/greysme/images/icons/icon_search.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_stats.gif b/themes/greysme/images/icons/icon_stats.gif
new file mode 100644
index 00000000..2e89536c
--- /dev/null
+++ b/themes/greysme/images/icons/icon_stats.gif
Binary files differ
diff --git a/themes/greysme/images/icons/icon_upload.gif b/themes/greysme/images/icons/icon_upload.gif
new file mode 100644
index 00000000..d223d724
--- /dev/null
+++ b/themes/greysme/images/icons/icon_upload.gif
Binary files differ
diff --git a/themes/greysme/images/list_back-old.png b/themes/greysme/images/list_back-old.png
new file mode 100644
index 00000000..60b8250e
--- /dev/null
+++ b/themes/greysme/images/list_back-old.png
Binary files differ
diff --git a/themes/greysme/images/list_back.png b/themes/greysme/images/list_back.png
new file mode 100644
index 00000000..84b26e12
--- /dev/null
+++ b/themes/greysme/images/list_back.png
Binary files differ
diff --git a/themes/greysme/images/overlay.png b/themes/greysme/images/overlay.png
new file mode 100644
index 00000000..69cd1c44
--- /dev/null
+++ b/themes/greysme/images/overlay.png
Binary files differ
diff --git a/themes/greysme/images/puce.gif b/themes/greysme/images/puce.gif
new file mode 100644
index 00000000..4f19e04b
--- /dev/null
+++ b/themes/greysme/images/puce.gif
Binary files differ
diff --git a/themes/greysme/images/punaise-bl.gif b/themes/greysme/images/punaise-bl.gif
new file mode 100644
index 00000000..73b6255f
--- /dev/null
+++ b/themes/greysme/images/punaise-bl.gif
Binary files differ
diff --git a/themes/greysme/images/punaise-br.gif b/themes/greysme/images/punaise-br.gif
new file mode 100644
index 00000000..68bf9895
--- /dev/null
+++ b/themes/greysme/images/punaise-br.gif
Binary files differ
diff --git a/themes/greysme/images/punaise-tl.gif b/themes/greysme/images/punaise-tl.gif
new file mode 100644
index 00000000..5c6c9cf5
--- /dev/null
+++ b/themes/greysme/images/punaise-tl.gif
Binary files differ
diff --git a/themes/greysme/images/ratings/star_rating.gif b/themes/greysme/images/ratings/star_rating.gif
new file mode 100644
index 00000000..f1d3e32e
--- /dev/null
+++ b/themes/greysme/images/ratings/star_rating.gif
Binary files differ
diff --git a/themes/greysme/images/ratings/x.gif b/themes/greysme/images/ratings/x.gif
new file mode 100644
index 00000000..ab5cc171
--- /dev/null
+++ b/themes/greysme/images/ratings/x.gif
Binary files differ
diff --git a/themes/greysme/images/ratings/x_off.gif b/themes/greysme/images/ratings/x_off.gif
new file mode 100644
index 00000000..9847f01a
--- /dev/null
+++ b/themes/greysme/images/ratings/x_off.gif
Binary files differ
diff --git a/themes/greysme/images/sort_off.gif b/themes/greysme/images/sort_off.gif
new file mode 100644
index 00000000..2f504671
--- /dev/null
+++ b/themes/greysme/images/sort_off.gif
Binary files differ
diff --git a/themes/greysme/images/sort_on.gif b/themes/greysme/images/sort_on.gif
new file mode 100644
index 00000000..c6848c33
--- /dev/null
+++ b/themes/greysme/images/sort_on.gif
Binary files differ
diff --git a/themes/greysme/templates/default.css b/themes/greysme/templates/default.css
new file mode 100644
index 00000000..738664be
--- /dev/null
+++ b/themes/greysme/templates/default.css
@@ -0,0 +1,877 @@
+/*
+
+ Copyright (c) 2001 - 2006 Ampache.org
+ All rights reserved.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License
+ as published by the Free Software Foundation; either version
+ of the License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+
+/***************************************************************/
+
+ Ampache Theme "Greysme"
+ by Spocky v1.02 (2007/09/23)
+
+ Feel free to modify/reuse, just mention my name _somewhere_
+
+/***************************************************************/
+/* Theme colors : */
+/* ---------------*/
+/* Red : #8b3e38 (#5a211c was too dark) */
+/* Light blue : #74718a (#5b596d was too dark) */
+/* Dark blue : #2b293d */
+/* Black : #050505 */
+/* Dark grey : #111 */
+/* Orange: #e9ad51 */
+
+
+
+
+/************************************************/
+/* General style rules */
+/************************************************/
+
+body, html, fieldset { border: 0; }
+h1, h2, h3, h4, h5, h6, pre, code { font-size: 1em; line-height: 1em; } /* avoid browser default inconsistent font-sizes */
+a img, :link img, :visited img { border: none; } /* no blue linked image borders */
+* { margin: 0; padding: 0; } /* White space reset */
+
+
+html{ font-size: 62.5%; }
+
+body{
+ font-size: 1.1em;
+ font-family: Lucida Sans Unicode, Verdana, Arial, Helvetica, sans-serif;
+ background: #2b293d url(../images/background.jpg) 0 0 repeat-x fixed;
+ min-width:90em;
+}
+
+ol { list-style-type: decimal-leading-zero; }
+li { list-style-position: inside; }
+p { color: #e9ad51; }
+a { color: #74718a; text-decoration: none; }
+
+td { padding: 0 8px; color: #e9ad51; }
+th { padding-right: 10px; }
+
+input, select {
+ font-size:1em;
+ color: #e9ad51;
+ background-color: #111;
+ border: 1px solid #8b3e38;
+ margin:0 0 1px 0;
+}
+
+input{
+ padding:0 2px;
+}
+
+input:focus, select:focus { border-style: dotted; }
+
+textarea {
+ background-color: #111;
+ color: #e9ad51;
+}
+
+.link { cursor:pointer; }
+
+/************************************************/
+/* Styles for Site Header */
+/************************************************/
+
+#topbar { padding: 0 0; }
+#topbarright { font-size: 0.9em; text-align: right; color: #e9ad51; position: absolute; top: 0px; right: 0; padding: 3px; }
+#topbarright b { font-weight: normal }
+#topbarright a { color: #e9ad51;}
+#topbarleft { text-align: center; background: url(../images/ampache_back.gif) 0 0 repeat-x;}
+#topbarleft a { }
+
+/************************************************/
+/* XSPF Player */
+/************************************************/
+
+.xspf_player {
+ right: 20px;
+ position: absolute;
+}
+
+/************************************************/
+/* Footer */
+/************************************************/
+#footer {
+ clear:both;
+ text-align:center;
+ font-size:10px;
+ padding:3px;
+}
+#footer p {
+ color:#999;
+}
+#footer-content {
+}
+
+/************************************************/
+/* Buttons */
+/************************************************/
+
+.selected_button {
+ background-color: #000; color: #fff;
+}
+.unselected_button {
+ /* there really isn't anything for this */
+}
+.smallbutton {
+ border: 0px;
+ padding: 0 1px;
+ cursor: pointer;
+}
+input.button, input[type=button], input[type=submit], .text-action a, .text-action span {
+ background:#8b3e38 url(../images/button_back2.png) 0 100% repeat-x !important;
+ background:#8b3e38;
+ color:#c98d31;
+ padding:0px 0.5em;
+ margin:4px 0 0 0;
+ border:none;
+}
+.text-action span
+{
+ display:block; cursor: pointer;
+}
+input.button:hover, input[type=button]:hover, input[type=submit]:hover, div.text-action a:hover, div.text-action span:hover {
+ background:#74718a url(../images/button_back2.png) 0 100% repeat-x !important;
+ background:#74718a;
+ color:#e9ad51;
+}
+
+input[type=checkbox]{border:none;background:none;}
+
+/************************************************/
+/* Tables (songs lists...) */
+/************************************************/
+
+.table-header {
+ background: #111;
+ vertical-align: top;
+}
+.table-header td, .table-header th {
+ color:#8b3e38;
+ font-variant:small-caps;
+ font-weight:normal;
+}
+.table-header th {
+ border-right:1px solid #000;
+}
+.table-header td a, .table-header th a {
+ color:#8b3e38;
+ /*padding-right:8px;
+ background: url(../images/sort_off.gif) 100% 50% no-repeat;*/
+}
+.table-header td a:hover, .table-header th a:hover {
+ /*color:#111;*/
+ /*padding-right:8px;
+ background:transparent url(../images/sort_on.gif) 100% 50% no-repeat;*/
+}
+
+.odd, .even { background: url(../images/list_back.png) 0 50% repeat-x !important; background-image: none;}
+.odd { background-color: #111 !important;}
+.even { }
+.odd:hover, .even:hover { background-color: #2b293d !important;}
+/*
+.odd td img, .even td img { border: 2px solid transparent; }
+.odd:hover td img, .even:hover td img { border-color: #e9ad510; }
+*/
+/* todo : quand col, mettre sur les a:hover de la col action un background-color:none;*/
+.odd td a img:hover, .even td a img:hover {opacity:0.5;}
+
+.headrow { font-size: 1.2em; } /* ? */
+.blank { background: #fff; } /* ? */
+.header { font-size: 12px; } /* ? */
+.border { background: #000; }
+
+
+
+/************************************************/
+/* Content block */
+/************************************************/
+
+#content {margin:10px 14em 10px 13.5em;}
+
+/* Center things on supporting browsers */
+#content>table,#content>table .box { margin-left: auto; margin-right: auto; }
+
+h3#content_title{} /* Doesn't exist anymore (?) */
+h3#content_title span {} /* Doesn't exist anymore (?) */
+
+
+/************************************************/
+/* Rightbar */
+/************************************************/
+#rightbar {
+ width:13em;
+ background:#2b293d;
+ float:right;
+}
+#rightbar ul { list-style:none; }
+#rightbar a { text-decoration:none; }
+
+
+/* Rightbar Menu */
+#rightbar #rb_action {
+ padding:4px;
+}
+#rightbar #rb_action li { display:inline; }
+#rightbar li#rb_add { position:relative; z-index:10;}
+#rightbar li#rb_add:hover { background:#e9ad51; }
+/* Rightbar AddItems SubMenu */
+#rightbar li:hover #rb_action_additems { display:block; }
+#rightbar #rb_action_additems {
+ display:none;
+ position:absolute;
+ right:0px;
+ top:15px;
+ background: #050505 url(../images/button_back.png) 0 100% repeat-x;
+ border:2px solid #e9ad51;
+ width:10em;
+ padding:0.3em;
+
+}
+* html #rightbar #rb_action_additems {right:100px;} /* IE6 fix */
+
+#rightbar #rb_action_additems a {
+ display:block;
+ padding:0.1em;
+ color:#8b3e38;
+ text-decoration:none;
+ text-align:right;
+}
+#rightbar #rb_action_additems a:hover,
+#rightbar #rb_current_playlist a:hover { color:#e9ad51; }
+
+/* Rightbar playlist */
+#rightbar #rb_current_playlist {
+ background: #111;
+ padding-bottom:0.5em;
+}
+#rightbar #rb_current_playlist li { position:relative;font-size:0.9em;;line-height:14px; color:#5b5b5b; padding-right:20px;}
+#rightbar #rb_current_playlist li a { display:block; padding:0.2em;}
+#rightbar .delitem { position:absolute;right:0;top:0; }
+/************************************************/
+/* Sidebar */
+/************************************************/
+
+#sidebar {
+ float:left:
+ position:relative;
+ width: 13em;
+ text-align: left;
+ font-size: 0.8em;
+ padding-top:29px;
+ background:#2b293d url(../images/ampache_menu.gif) 50% 0 no-repeat;
+}
+
+/* For supporting browsers *cough*... I mean not IE6... *cough*, fix sidebar position on the left */
+*>div#sidebar{ position: fixed; }
+
+#sidebar select { width: 95%; }
+#sidebar .smallbutton { margin: 0; }
+#sidebar ul { list-style:none; }
+
+/* For sidebar tabs */
+/********************/
+#sidebar-tabs{
+ border-top:1px solid #000;
+ background:#111;
+}
+
+#sidebar-tabs li.sb1 {
+ float: left;
+ padding:1px;
+ background: #111 ;
+ border-top:0.5em solid #8b3e38;
+ border-right:1px solid #000;
+}
+#sidebar-tabs li.active {
+ /*background: #faf url(../images/top.gif) repeat-x 0 0;*/
+ border-top-color: #e9ad51;
+}
+#sidebar-tabs li:hover.sb1
+{
+ background:#000;
+ border-top-color: #e9ad51;
+}
+/* Tabs content */
+/****************/
+#sidebar-page {
+ position:absolute;
+ left:0;
+ top:52px;
+ background: #111;
+ padding-bottom:0.5em;
+ width:13em;
+ color:#8b3e38;
+}
+#sidebar-page ul.sb2 {
+ /*padding:2px 4px;*/
+}
+#sidebar-page ul.sb2 li{
+ margin:1em auto;
+ padding-bottom: 0.5em;
+ /*border-bottom: 1px solid #fff;*/
+}
+#sidebar-page ul.sb2 h4{
+ padding:0.2em 0.5em 0.5em 0;
+ font-style:italic;
+ font-weight:normal;
+ letter-spacing:0.2em;
+ text-align:right;
+ border-bottom:1px dotted #e9ad51;
+ text-decoration: overline;
+ background: url(../images/puce.gif) -8px -8px no-repeat;
+ }
+#sidebar-page ul.sb2 li:hover h4{
+ background-color:#000;
+}
+
+#sidebar-page ul.sb3, #sidebar-page div.sb3 {
+ color:#8b3e38;
+}
+#sidebar-page .sb3 a{ color:#8b3e38; }
+#sidebar-page ul.sb3 li{
+ margin:0;
+ padding:0;
+ border:none;
+ font-weight:normal;
+ background: url(../images/button_back.png) 0 100% repeat-x;
+ border-bottom: 1px solid #000;
+}
+* html #sidebar-page ul.sb3 li{display:inline;} /* fix ie6 */
+#sidebar-page .sb3 a, #sidebar-page .sb3 div{
+ padding:0.2em 0.6em;
+ border-left: .5em solid #8b3e38;
+}
+#sidebar-page .sb3 a:hover{
+ border-left-color: #e9ad51;
+}
+
+#sidebar-page a{
+ display:block;
+}
+#sidebar-page a:hover{
+ background:#000;
+ color:#e9ad51;
+}
+
+/* SIDEBAR : Home */
+/******************/
+
+/* SIDEBAR : Browse */
+/********************/
+.alphabet {
+ background:transparent; /* fix ie bug */
+ /*font-size:0.95em;*/
+ /*font-weight:normal;*/
+ margin: 0.3em auto;
+ /*color:#5b5b5b;*/
+}
+.alphabet span.link {
+ cursor: pointer;
+ margin: 0;
+ padding:3px 5px;
+ font-family: monospace, Courier, Georgia;
+}
+.alphabet span.active{ color:#e9ad51; }
+.alphabet span.link:hover {
+ background: #8b3e38;
+ color:#111;
+}
+
+/* SIDEBAR : Search */
+/********************/
+
+/* SIDEBAR : Preferences */
+/*************************/
+
+/* SIDEBAR : Admin */
+/*******************/
+#sb_admin_catalogs li.sb_admin_catalogs_ctrls img {margin:0;}
+#sb_admin_catalogs li.sb_admin_catalogs_ctrls a{
+ display:inline;
+ padding:0;
+ border:none;
+}
+
+
+/************************************************/
+/* Albums of the moment */
+/************************************************/
+
+.random_album
+{
+ position:relative;
+ float:left;
+ padding:8px;
+}
+
+.random_album .play_album
+{
+ position:absolute;
+ top:12px;
+ right:0;
+}
+/************************************************/
+/* Styles for Now Playing */
+/************************************************/
+
+#nowplaying{
+ clear: both;
+}
+#np_container1{
+ height: 18px;
+}
+#np_container1 h1{
+ font-weight: bold;
+ padding: 2px;
+}
+#np_container2{
+ border-width: 1px;
+ border-style: solid;
+ border-color:#ddd #999 #999 #ccc;
+ padding: 6px;
+ color: #000;
+}
+
+.np_row {
+ padding-top: 3px;
+ padding-bottom: 3px;
+ display: block;
+}
+.np_cell {
+ margin: 10px;
+}
+
+/************************************************/
+/* Footer */
+/************************************************/
+#footer {
+ margin-left: 150px;
+ margin-bottom: 10px;
+}
+
+#footer p {
+ color:#999;
+ font-size:10px;
+}
+
+
+/************************************************/
+/* Styles for the star ratings */
+/************************************************/
+.star-rating {
+ position:relative;
+ display:inline;
+}
+
+.star-rating ul,
+.star-rating a:hover,
+.star-rating .current-rating{
+ background: url(../images/ratings/star_rating.gif) left -1000px repeat-x;
+}
+.star-rating ul{
+ position:relative;
+ width:80px;
+ height:15px;
+ overflow:hidden;
+ list-style:none;
+ margin:0;
+ padding:0;
+ background-position: left top;
+}
+.star-rating li{
+ display: inline;
+}
+.star-rating a, .star-rating span,
+.star-rating .current-rating{
+ position:absolute;
+ top:0;
+ left:0;
+ text-indent:-1000em;
+ height:15px;
+ line-height:15px;
+ outline:none;
+ overflow:hidden;
+ border: none;
+}
+.star-rating .one-stars { width:20%; z-index:6; }
+.star-rating .two-stars { width:40%; z-index:5; }
+.star-rating .three-stars { width:60%; z-index:4; }
+.star-rating .four-stars { width:80%; z-index:3; }
+.star-rating .five-stars { width:100%; z-index:2; }
+.star-rating .current-rating { z-index:1; background-position: left bottom; }
+
+.star-rating a.zero-stars {
+ left:80px;
+ width:16px;
+ background-image: url(../images/ratings/x_off.gif);
+}
+
+/* hovering effect only for dynamic star rating */
+.info-box .dynamic-star-rating a:hover{
+ background-position: left center;
+ background-color:transparent;
+}
+.dynamic-star-rating a:hover.zero-stars {
+ background-image: url(../images/ratings/x.gif);
+}
+
+
+
+/************************************************/
+/* Box Related Styles */
+/************************************************/
+.box-title {
+ display:block;
+ color:#8b3e38;
+ padding:3px 3px 0 18px;
+ background: url(../images/puce.gif) 0 50% no-repeat;
+ font-size: 1.1em;
+ font-variant:small-caps;
+ border-bottom:1px solid #8b3e38;
+ letter-spacing:0.1em;
+ margin: 0 10px;
+}
+.box-title:first-letter{font-style:italic;}
+
+.box-list {
+ padding-right: 10px;
+}
+
+/* Enclosing Boxes Styles */
+
+.box, .info-box {
+ margin-top: 5px;
+ margin-right: 3px;
+ background: #050505 url(../images/back-box.gif) 0 0 no-repeat;
+ font-size : 0.9em;
+ border: 1px solid #8b3e38;
+ float:left;
+ clear:left;
+ height:1%; /* IE6 : Holly Hack comes to rescue once again */
+}
+/* Hovering effects on links */
+.box a:hover, .info-box a:hover { background-color: #8b3e38; color: #e9ad51;}
+
+.box-inside {
+ background: url(../images/right.gif) top right repeat-y;
+}
+.box-content {
+ padding:8px 15px;
+}
+
+.box-top {
+ position:relative;
+}
+.box-left-top {
+ background: url(../images/punaise-tl.gif) no-repeat;
+ height:16px;
+ width:16px;
+ position:relative;left:0;top:0;
+}
+.box-right-top {
+ background: url(../images/curl.gif) no-repeat;
+ height:16px;
+ width:20px;
+ position:absolute;right:0;top:0;
+}
+* html .box-right-top {right: expression(-this.parentNode.offsetWidth%2+"px");} /* Fixes an IE6 rounding error */
+.box-bottom {
+ position:relative;clear:both;
+}
+.box-left-bottom {
+ background: url(../images/punaise-bl.gif) no-repeat;
+ height:18px;
+ width:16px;
+ position:relative;left:0;top:0;
+}
+.box-right-bottom {
+ background: url(../images/punaise-br.gif) no-repeat;
+ height:18px;
+ width:20px;
+ position:absolute;right:0;top:0;
+}
+* html .box-right-bottom {right: expression(-this.parentNode.offsetWidth%2+"px");} /* Fixes an IE6 rounding error */
+
+/* Specific boxes */
+.box_newest_albums {}
+.box_newest_artists {clear:none;}
+.box_newest_genres {clear:none;}
+.box_topbarright {display:table;}
+.info-box th {color:#8b3e38;}
+
+/************************************************/
+/* List Header Styles */
+/************************************************/
+
+.list-header {
+ text-decoration: none;
+}
+
+.list-header:hover {
+ color:#071fd4;
+}
+
+
+/************************************************/
+/* Text Action Styles */
+/************************************************/
+
+.text-action {
+ border-top:1px dotted #8b3e38;
+}
+.text-action, .text-action li {
+ margin: 10px 0 5px 0;
+ list-style: none;
+ padding: 1px 0 0 0;
+ text-wrap: none;
+}
+
+/* See input.button class */
+/*
+.text-action a, .text-action span {
+ background: #111;
+ border: 1px solid #000;
+ padding-left: 2px;
+ padding-right: 2px;
+ text-decoration: none;
+ text-wrap: none;
+}
+*/
+
+.text-action #pt_active {
+ background: #000;
+ color: #fff;
+ border: 1px solid #ddd;
+ text-wrap: none;
+}
+
+
+/************************************************/
+/* Tabs (for preferences) */
+/************************************************/
+
+#tablist {
+ padding: 4px 0;
+ margin: 12px 0 0 0;
+}
+
+#tablist li {
+ list-style: none;
+ display: inline;
+}
+
+#tablist li a {
+ padding: 0 0.5em;
+ margin-left: 3px;
+ color: #000;
+ background: #8b3e38 url(../images/button_back.png) 0 100% repeat-x !important;
+ background: #8b3e38;
+
+}
+
+#tablist li a:hover {
+ border-top: 2px solid #e9ad51;
+ color: #e9ad51;
+}
+
+#tablist li a#current {
+ padding: 5px 0.5em;
+ color: #8b3e38;
+ background: #111;
+ background: #111 !important;
+ border:none;
+}
+
+/************************************************/
+/* Styles for Header */
+/*(for ampache admin : installation, update...) */
+/************************************************/
+
+div#Header {
+ height: 80px;
+ margin-bottom: 3px;
+ padding: 0px;
+}
+
+#Header h1 {
+ background: transparent url(../themes/classic/images/bg_login_0.jpg) no-repeat top left;
+ border: 0;
+ width: 439px;
+ height: 84px;
+ float: left;
+}
+
+#Header h1 span {
+ display:none
+}
+
+#Header h2 {
+ background: transparent url(001/h2.gif) no-repeat top left;
+ margin-top: 75px;
+ width: 200px;
+ height: 18px;
+ float: right;
+}
+
+#Header h2 span {
+ font-size: 10px;
+ margin-left: 10px;
+}
+
+/************************************************/
+/* User Online/Offline style, used in users.php */
+/************************************************/
+td.user_online{
+ background:#0f0;
+}
+td.user_offline {
+ background:#7f0000;
+}
+td.user_disabled {
+ background:#ccc;
+}
+
+/************************************************/
+/* Styles for Login template */
+/************************************************/
+
+#container {
+ margin: 100px auto 0px auto;
+ text-align:center;
+}
+#container h1 {
+ background:url(../images/ampache_back.gif) 0 0 repeat-x;
+}
+#container h1 span {
+ background: url(../images/ampache.gif) 50% 0 no-repeat;
+ height: 120px;
+ margin-bottom: 8px;
+ display:block;
+ text-indent:-9000px;
+}
+#container div {
+ width:340px;
+ margin:auto;
+}
+#loginp_0 {
+ color:#111;
+ font-size:0.8em;
+ font-style:italic;
+ margin: 0 0 2em 0;
+}
+.loginp_1 {
+ text-align:right;
+ padding-right:100px;
+}
+.loginp_1 span {
+ font-weight:bold;
+}
+.loginp_1 input {
+ border:1px solid #74718a;
+}
+input.text_input {
+ width:12em;
+}
+.loginp_1 input.check_input {
+ margin-left:5px;
+}
+
+
+
+/************************************************/
+/* Misc */
+/************************************************/
+
+.text-box {
+ display: table-cell;
+ padding:5px;
+ margin:0 0 10px 0;
+ background-color: #111;
+}
+
+.confirmation-box {
+ padding: 5px 5px 0 5px;
+ margin-bottom: 10px;
+ display: table-cell;
+ background-color: #111;
+ border: 2px solid #000;
+}
+
+.alphabet {
+ margin: 10px;
+ font-size: 0.9em;
+ font-weight: normal;
+}
+
+.display {}
+
+#mpdpl td {
+ padding: 0 2px 0 2px;
+ text-align: left;
+}
+
+table.tabledata {width:100%}
+
+.header1 {
+ color: #8b3e38;
+ background: #111 url(../images/button_back.png) 0 100% repeat-x !important;
+ background: #111;
+ font-size: 1.4em;
+ font-variant:small-caps;
+ display:block;
+ padding:2px 5px;
+}
+.header2 {
+ color: #8b3e38;
+ font-size: 1.1em;
+ text-align:center;
+ font-weight: bold;
+ border-bottom:1px solid #8b3e38;
+ padding:1em;
+}
+
+.error {
+ color: #990033;
+}
+
+.fatalerror {
+ padding: 3px;
+ display: table-cell;
+ color: #990033;
+ font-weight:bold;
+ border:2px solid #990033;
+}
+
+#container div.fatalerror {
+ background:none;
+ height:auto;
+ padding:5px;
+ margin:10px;
+ display:block;
+}
+
+.disabled { text-decoration: line-through; }
+
+
+#maincontainer{}
+
diff --git a/themes/greysme/theme.cfg.php b/themes/greysme/theme.cfg.php
new file mode 100644
index 00000000..0c133d1b
--- /dev/null
+++ b/themes/greysme/theme.cfg.php
@@ -0,0 +1,38 @@
+;;;;;;;;;;;;;;;;;;
+;<?php exit(); ?>;
+;;;;;;;;;;;;;;;;;;
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Greysme Ampache Theme
+;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+; Theme Name
+; This is the actual name of the theme that
+; will be displayed in the preferences screen
+; DEFAULT: ampache-theme
+name = "Greysme"
+
+; Theme Author
+; This is just a way of giving credit to the
+; person who actually created this theme
+; DEFAULT: N/A
+author = "SPocKy"
+
+; Theme Maintainer
+; This is just a way of listing who is responsible for
+; maintaining this theme incase it's not working right
+; please include an e-mail address so you can be contacted
+; DEFAULT: N/A
+maintainer = "SPocKy"
+
+; Orientation
+; This was added as of 3.3.2-Alpha4, this tells Ampache if this theme
+; uses vertical or horizontal orientation of the menu, if this is a horizontal
+; theme then it will not show the quick search and quick random play forms
+orientation = "vertical"
+
+; Submenu
+; If this is set to simple the sub menu's will only be shown when you're on one of the
+; respective pages. If you want to make the menu's something like the classic theme
+; comment this out
+;submenu = "simple"