1
0
Fork 0
mirror of https://github.com/Yetangitu/ampache synced 2025-10-05 02:39:47 +02:00

#136 UI started, still in development.

favicon updated to ampache-doped icon.
This commit is contained in:
SUTJael 2014-03-23 20:57:57 +01:00
parent 59305b9a6e
commit 01691feded
11 changed files with 197 additions and 33 deletions

View file

@ -212,8 +212,14 @@ switch ($_REQUEST['action']) {
case 'show': case 'show':
default: default:
$album = new Album($_REQUEST['album']); $album = new Album($_REQUEST['album']);
$album->allow_group_disks = true;
$album->format(); $album->format();
if (!count($album->album_suite)) {
require AmpConfig::get('prefix') . '/templates/show_album.inc.php'; require AmpConfig::get('prefix') . '/templates/show_album.inc.php';
} else {
require AmpConfig::get('prefix') . '/templates/show_album_group_disks.inc.php';
}
break; break;
} // switch on view } // switch on view

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Before After
Before After

View file

@ -353,15 +353,26 @@ class Album extends database_object
public function get_http_album_query_ids($url_param_name) public function get_http_album_query_ids($url_param_name)
{ {
if ($this->allow_group_disks) { if ($this->allow_group_disks) {
$suite_array = $this->get_group_disks_ids();
} else {
$suite_array = array($this->id);
}
return http_build_query(array($url_param_name => $suite_array));
}
/**
* get_group_disks_ids
* return all album suite ids or current album if no albums
*/
public function get_group_disks_ids()
{
$suite_array = $this->album_suite; $suite_array = $this->album_suite;
if (!count($suite_array)) { if (!count($suite_array)) {
$suite_array[] = $this->id; $suite_array[] = $this->id;
} }
} else {
$suite_array = array ($this->id);
}
return http_build_query(array($url_param_name => $suite_array)); return $suite_array;
} }
/** /**

View file

@ -138,6 +138,8 @@ class Browse extends Query
// Set the correct classes based on type // Set the correct classes based on type
$class = "box browse_" . $type; $class = "box browse_" . $type;
debug_event('browse', 'Called for type {'.$type.'}', '5');
// Switch on the type of browsing we're doing // Switch on the type of browsing we're doing
switch ($type) { switch ($type) {
case 'song': case 'song':
@ -238,7 +240,7 @@ class Browse extends Query
} }
if ($box_req) { if ($box_req) {
require_once $box_req; require $box_req;
} }
if ($this->get_show_header()) { if ($this->get_show_header()) {

View file

@ -247,10 +247,17 @@ function check_inline_song_edit(type, song) {
/*********************/ /*********************/
$(document).ready(function () { $(document).ready(function () {
$('#sortableplaylist').sortable({
var eles = $("tbody[id^='sortableplaylist_']");
if (eles != null) {
var len = eles.length;
for (var i = 0; i < len; i++) {
$('#' + eles[i].id).sortable({
axis: 'y', axis: 'y',
delay: 200 delay: 200
}); });
}
}
}); });
function submitNewItemsOrder(itemId, tableid, rowPrefix, updateUrl, refreshAction) { function submitNewItemsOrder(itemId, tableid, rowPrefix, updateUrl, refreshAction) {
@ -278,8 +285,8 @@ function submitNewItemsOrder(itemId, tableid, rowPrefix, updateUrl, refreshActio
success : function(resp){ success : function(resp){
var url = jsAjaxServer + '/refresh_reordered.server.php?action=' + parent.refreshAction + '&id=' + parent.itemId; var url = jsAjaxServer + '/refresh_reordered.server.php?action=' + parent.refreshAction + '&id=' + parent.itemId;
// Reload only table // Reload only table
$('#reordered_list').load(url, function() { $('#reordered_list_' + parent.itemId).load(url, function() {
$('#sortableplaylist').sortable({ $('#sortableplaylist_' + parent.itemId).sortable({
axis: 'y', axis: 'y',
delay: 200 delay: 200
}); });

View file

@ -40,12 +40,11 @@ switch ($_REQUEST['action']) {
$browse->store(); $browse->store();
break; break;
case 'refresh_album_songs': case 'refresh_album_songs':
$album = new Album($_REQUEST['id']);
$album->format();
$browse = new Browse(); $browse = new Browse();
$browse->set_show_header(false);
$browse->set_type('song'); $browse->set_type('song');
$browse->set_simple_browse(true); $browse->set_simple_browse(true);
$browse->set_filter('album', $album->id); $browse->set_filter('album', $_REQUEST['id']);
$browse->set_sort('track', 'ASC'); $browse->set_sort('track', 'ASC');
$browse->get_objects(); $browse->get_objects();
$browse->show_objects(null, true); // true argument is set to show the reorder column $browse->show_objects(null, true); // true argument is set to show the reorder column

View file

@ -91,7 +91,7 @@ if (AmpConfig::get('show_played_times')) {
<?php echo Ajax::text('?action=basket&type=album_random&id=' . $album->id, T_('Random to temporary playlist'), 'play_random_text_' . $album->id); ?> <?php echo Ajax::text('?action=basket&type=album_random&id=' . $album->id, T_('Random to temporary playlist'), 'play_random_text_' . $album->id); ?>
</li> </li>
<li> <li>
<a onclick="submitNewItemsOrder('<?php echo $album->id; ?>', 'reorder_songs_table', 'song_', <a onclick="submitNewItemsOrder('<?php echo $album->id; ?>', 'reorder_songs_table_<?php echo $album->id; ?>', 'song_',
'<?php echo AmpConfig::get('web_path'); ?>/albums.php?action=set_track_numbers', 'refresh_album_songs')"> '<?php echo AmpConfig::get('web_path'); ?>/albums.php?action=set_track_numbers', 'refresh_album_songs')">
<?php echo UI::get_icon('save', T_('Save Tracks Order')); ?> <?php echo UI::get_icon('save', T_('Save Tracks Order')); ?>
&nbsp;&nbsp;<?php echo T_('Save Tracks Order'); ?> &nbsp;&nbsp;<?php echo T_('Save Tracks Order'); ?>
@ -107,12 +107,12 @@ if (AmpConfig::get('show_played_times')) {
<a href="<?php echo $web_path; ?>/albums.php?action=find_art&amp;album_id=<?php echo $album->id; ?>"><?php echo UI::get_icon('view', T_('Find Album Art')); ?></a> <a href="<?php echo $web_path; ?>/albums.php?action=find_art&amp;album_id=<?php echo $album->id; ?>"><?php echo UI::get_icon('view', T_('Find Album Art')); ?></a>
<a href="<?php echo $web_path; ?>/albums.php?action=find_art&amp;album_id=<?php echo $album->id; ?>"><?php echo T_('Find Album Art'); ?></a> <a href="<?php echo $web_path; ?>/albums.php?action=find_art&amp;album_id=<?php echo $album->id; ?>"><?php echo T_('Find Album Art'); ?></a>
</li> </li>
<?php if ((Access::check('interface','50'))) { ?> <!--<?php if ((Access::check('interface','50'))) { ?>
<li> <li>
<a href="<?php echo $web_path; ?>/albums.php?action=update_from_tags&amp;album_id=<?php echo $album->id; ?>" onclick="return confirm('<?php echo T_('Do you really want to update from tags?'); ?>');"><?php echo UI::get_icon('cog', T_('Update from tags')); ?></a> <a href="<?php echo $web_path; ?>/albums.php?action=update_from_tags&amp;album_id=<?php echo $album->id; ?>" onclick="return confirm('<?php echo T_('Do you really want to update from tags?'); ?>');"><?php echo UI::get_icon('cog', T_('Update from tags')); ?></a>
<a href="<?php echo $web_path; ?>/albums.php?action=update_from_tags&amp;album_id=<?php echo $album->id; ?>" onclick="return confirm('<?php echo T_('Do you really want to update from tags?'); ?>');"><?php echo T_('Update from tags'); ?></a> <a href="<?php echo $web_path; ?>/albums.php?action=update_from_tags&amp;album_id=<?php echo $album->id; ?>" onclick="return confirm('<?php echo T_('Do you really want to update from tags?'); ?>');"><?php echo T_('Update from tags'); ?></a>
</li> </li>
<?php } ?> <?php } ?>-->
<?php if (AmpConfig::get('sociable')) { ?> <?php if (AmpConfig::get('sociable')) { ?>
<a href="<?php echo AmpConfig::get('web_path'); ?>/shout.php?action=show_add_shout&type=album&id=<?php echo $album->id; ?>"><?php echo UI::get_icon('comment', T_('Post Shout')); ?></a> <a href="<?php echo AmpConfig::get('web_path'); ?>/shout.php?action=show_add_shout&type=album&id=<?php echo $album->id; ?>"><?php echo UI::get_icon('comment', T_('Post Shout')); ?></a>
<a href="<?php echo AmpConfig::get('web_path'); ?>/shout.php?action=show_add_shout&type=album&id=<?php echo $album->id; ?>"><?php echo T_('Post Shout'); ?></a> <a href="<?php echo AmpConfig::get('web_path'); ?>/shout.php?action=show_add_shout&type=album&id=<?php echo $album->id; ?>"><?php echo T_('Post Shout'); ?></a>
@ -135,7 +135,7 @@ if (AmpConfig::get('show_played_times')) {
<div id="additional_information"> <div id="additional_information">
&nbsp; &nbsp;
</div> </div>
<div id='reordered_list'> <div id='reordered_list_<?php echo $album->id; ?>'>
<?php <?php
$browse = new Browse(); $browse = new Browse();
$browse->set_type('song'); $browse->set_type('song');

View file

@ -0,0 +1,139 @@
<?php
/* vim:set softtabstop=4 shiftwidth=4 expandtab: */
/**
*
* LICENSE: GNU General Public License, version 2 (GPLv2)
* Copyright 2001 - 2013 Ampache.org
*
* 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.
*
*/
$web_path = AmpConfig::get('web_path');
// Title for this album
$title = scrub_out($album->name) . '&nbsp;(' . $album->year . ')&nbsp;-&nbsp;' . $album->f_artist_link;
?>
<?php UI::show_box_top($title, 'info-box'); ?>
<div class="item_right_info">
<div class="external_links">
<a href="http://www.google.com/search?q=%22<?php echo rawurlencode($album->f_artist); ?>%22+%22<?php echo rawurlencode($album->f_name); ?>%22" target="_blank"><?php echo UI::get_icon('google', T_('Search on Google ...')); ?></a>
<a href="http://en.wikipedia.org/wiki/Special:Search?search=%22<?php echo rawurlencode($album->f_name); ?>%22&go=Go" target="_blank"><?php echo UI::get_icon('wikipedia', T_('Search on Wikipedia ...')); ?></a>
<a href="http://www.last.fm/search?q=%22<?php echo rawurlencode($album->f_artist); ?>%22+%22<?php echo rawurlencode($album->f_name); ?>%22&type=album" target="_blank"><?php echo UI::get_icon('lastfm', T_('Search on Last.fm ...')); ?></a>
</div>
<div class="album_art">
<?php
if ($album->name != T_('Unknown (Orphaned)')) {
$name = '[' . $album->f_artist . '] ' . scrub_out($album->full_name);
$aa_url = $web_path . "/image.php?id=" . $album->id . "&amp;sid=" . session_id();
echo "<a href=\"$aa_url\" rel=\"prettyPhoto\">";
echo "<img src=\"" . $web_path . "/image.php?id=" . $album->id . "&amp;thumb=2\" alt=\"".$name."\" alt=\"".$name."\" height=\"128\" width=\"128\" />";
echo "</a>\n";
}
?>
</div>
</div>
<div id="information_actions">
<h3><?php echo T_('Actions'); ?>:</h3>
<ul>
<?php if (AmpConfig::get('directplay')) { ?>
<li>
<?php echo Ajax::button('?page=stream&action=directplay&playtype=album&' . $album->get_http_album_query_ids('album_id'), 'play', T_('Play'), 'directplay_full_'); ?>
<?php echo Ajax::text('?page=stream&action=directplay&playtype=album&' . $album->get_http_album_query_ids('album_id'), T_('Play'), 'directplay_full_text_'); ?>
</li>
<?php } ?>
<?php if (Stream_Playlist::check_autoplay_append()) { ?>
<li>
<?php echo Ajax::button('?page=stream&action=directplay&playtype=album&' . $album->get_http_album_query_ids('album_id') . '&append=true', 'play_add', T_('Play last'), 'addplay_album_'); ?>
<?php echo Ajax::text('?page=stream&action=directplay&playtype=album&' . $album->get_http_album_query_ids('album_id') . '&append=true', T_('Play last'), 'addplay_album_text_'); ?>
</li>
<?php } ?>
<li>
<?php echo Ajax::button('?action=basket&type=album&' . $album->get_http_album_query_ids('id'), 'add', T_('Add to temporary playlist'), 'play_full_'); ?>
<?php echo Ajax::text('?action=basket&type=album&' . $album->get_http_album_query_ids('id'), T_('Add to temporary playlist'), 'play_full_text_'); ?>
</li>
<li>
<?php echo Ajax::button('?action=basket&type=album_random&' . $album->get_http_album_query_ids('id'), 'random', T_('Random to temporary playlist'), 'play_random_'); ?>
<?php echo Ajax::text('?action=basket&type=album_random&' . $album->get_http_album_query_ids('id'), T_('Random to temporary playlist'), 'play_random_text_'); ?>
</li>
<?php if (Access::check('interface','75')) { ?>
<li>
<a href="<?php echo $web_path; ?>/albums.php?action=clear_art&<?php echo $album->get_http_album_query_ids('album_id'); ?>" onclick="return confirm('<?php echo T_('Do you really want to reset album art?'); ?>');"><?php echo UI::get_icon('delete', T_('Reset Album Art')); ?></a>
<a href="<?php echo $web_path; ?>/albums.php?action=clear_art&<?php echo $album->get_http_album_query_ids('album_id'); ?>" onclick="return confirm('<?php echo T_('Do you really want to reset album art?'); ?>');"><?php echo T_('Reset Album Art'); ?></a>
</li>
<?php } ?>
<li>
<a href="<?php echo $web_path; ?>/albums.php?action=find_art&<?php echo $album->get_http_album_query_ids('album_id'); ?>"><?php echo UI::get_icon('view', T_('Find Album Art')); ?></a>
<a href="<?php echo $web_path; ?>/albums.php?action=find_art&<?php echo $album->get_http_album_query_ids('album_id'); ?>"><?php echo T_('Find Album Art'); ?></a>
</li>
<?php if (Access::check_function('batch_download')) { ?>
<li>
<a href="<?php echo $web_path; ?>/batch.php?action=album&<?php echo $album->get_http_album_query_ids('id'); ?>"><?php echo UI::get_icon('batch_download', T_('Download')); ?></a>
<a href="<?php echo $web_path; ?>/batch.php?action=album&<?php echo $album->get_http_album_query_ids('id'); ?>"><?php echo T_('Download'); ?></a>
</li>
<?php } ?>
</ul>
</div>
<?php UI::show_box_bottom(); ?>
<div id="additional_information">
&nbsp;
</div>
<?php
$album_suite = $album->get_group_disks_ids();
foreach ($album_suite as $album_id) {
$c_album = new Album($album_id);
$c_album->format();
$c_title = scrub_out($c_album->name) . "&nbsp;<span class=\"discnb disc" . $c_album->disk . "\">, " . T_('Disk') . " " . $c_album->disk . "</span>";
?>
<div class="album_group_disks_title"><span> <?php echo $c_title; ?></span></div>
<div class="album_group_disks_actions">
<?php
if (AmpConfig::get('directplay')) {
echo Ajax::button('?page=stream&action=directplay&playtype=album&' . $c_album->get_http_album_query_ids('album_id'), 'play', T_('Play'), 'directplay_full_' . $c_album->id);
}
if (Stream_Playlist::check_autoplay_append()) {
echo Ajax::button('?page=stream&action=directplay&playtype=album&' . $c_album->get_http_album_query_ids('album_id') . '&append=true', 'play_add', T_('Play last'), 'addplay_album_' . $c_album->id);
}
echo Ajax::button('?action=basket&type=album&' . $c_album->get_http_album_query_ids('id'), 'add', T_('Add to temporary playlist'), 'play_full_' . $c_album->id);
echo Ajax::button('?action=basket&type=album_random&' . $c_album->get_http_album_query_ids('id'), 'random', T_('Random to temporary playlist'), 'play_random_' . $c_album->id);
?>
<a onclick="submitNewItemsOrder('<?php echo $c_album->id; ?>', 'reorder_songs_table_<?php echo $c_album->id; ?>', 'song_',
'<?php echo AmpConfig::get('web_path'); ?>/albums.php?action=set_track_numbers', 'refresh_album_songs')">
<?php echo UI::get_icon('save', T_('Save Tracks Order')); ?>
</a>
<?php if (AmpConfig::get('sociable')) { ?>
<a href="<?php echo AmpConfig::get('web_path'); ?>/shout.php?action=show_add_shout&type=album&<?php echo $c_album->get_http_album_query_ids('id'); ?>"><?php echo UI::get_icon('comment', T_('Post Shout')); ?></a>
<?php } ?>
<?php if (AmpConfig::get('share')) { ?>
<a href="<?php echo $web_path; ?>/share.php?action=show_create&type=album&<?php echo $c_album->get_http_album_query_ids('id'); ?>"><?php echo UI::get_icon('share', T_('Share')); ?></a>
<?php } ?>
<?php if (Access::check_function('batch_download')) { ?>
<a href="<?php echo $web_path; ?>/batch.php?action=album&<?php echo $c_album->get_http_album_query_ids('id'); ?>"><?php echo UI::get_icon('batch_download', T_('Download')); ?></a>
<?php } ?>
</div>
<div id='reordered_list_<?php echo $album_id; ?>'>
<?php
$browse = new Browse();
$browse->set_show_header(false);
$browse->set_type('song');
$browse->set_simple_browse(true);
$browse->set_filter('album', $album_id);
$browse->set_sort('track', 'ASC');
$browse->get_objects();
$browse->show_objects(null, true); // true argument is set to show the reorder column
$browse->store();
?>
</div>
<?php } ?>

View file

@ -89,7 +89,7 @@ UI::show_box_top('<div id="playlist_row_' . $playlist->id . '">' . $title . '</d
</ul> </ul>
</div> </div>
<?php UI::show_box_bottom(); ?> <?php UI::show_box_bottom(); ?>
<div id='reordered_list'> <div id='reordered_list_<?php echo $playlist->id; ?>'>
<?php <?php
$browse = new Browse(); $browse = new Browse();
$browse->set_type('playlist_song'); $browse->set_type('playlist_song');

View file

@ -48,7 +48,7 @@ $web_path = AmpConfig::get('web_path');
<th class="cel_drag"></th> <th class="cel_drag"></th>
</tr> </tr>
</thead> </thead>
<tbody id="sortableplaylist"> <tbody id="sortableplaylist_<?php echo $playlist->id; ?>">
<?php foreach ($object_ids as $object) { <?php foreach ($object_ids as $object) {
if (!is_array($object)) { if (!is_array($object)) {
$object = (array) $object; $object = (array) $object;

View file

@ -27,16 +27,16 @@ $thcount = 8;
setTagsChoices('<?php echo Tag::get_display(Tag::get_tags()); ?>'); setTagsChoices('<?php echo Tag::get_display(Tag::get_tags()); ?>');
</script> </script>
<?php if ($browse->get_show_header()) require AmpConfig::get('prefix') . '/templates/list_header.inc.php'; ?> <?php if ($browse->get_show_header()) require AmpConfig::get('prefix') . '/templates/list_header.inc.php'; ?>
<table id="reorder_songs_table" class="tabledata" cellpadding="0" cellspacing="0"> <table id="reorder_songs_table_<?php echo $browse->get_filter('album'); ?>" class="tabledata" cellpadding="0" cellspacing="0">
<thead> <thead>
<tr class="th-top"> <tr class="th-top">
<th class="cel_play essential"></th> <th class="cel_play essential"></th>
<th class="cel_song essential persist"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=title', T_('Song Title'), 'sort_song_title'); ?></th> <th class="cel_song essential persist"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=title', T_('Song Title'), 'sort_song_title'.$browse->id); ?></th>
<th class="cel_add essential"></th> <th class="cel_add essential"></th>
<th class="cel_artist optional"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=artist', T_('Artist'), 'sort_song_artist'); ?></th> <th class="cel_artist optional"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=artist', T_('Artist'), 'sort_song_artist'.$browse->id); ?></th>
<th class="cel_album essential"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=album', T_('Album'), 'sort_song_album'); ?></th> <th class="cel_album essential"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=album', T_('Album'), 'sort_song_album'.$browse->id); ?></th>
<th class="cel_tags optional"><?php echo T_('Tags'); ?></th> <th class="cel_tags optional"><?php echo T_('Tags'); ?></th>
<th class="cel_time optional"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=time', T_('Time'), 'sort_song_time'); ?></th> <th class="cel_time optional"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=time', T_('Time'), 'sort_song_time'.$browse->id); ?></th>
<?php if (AmpConfig::get('ratings')) { <?php if (AmpConfig::get('ratings')) {
++$thcount; ++$thcount;
Rating::build_cache('song', $object_ids); Rating::build_cache('song', $object_ids);
@ -55,7 +55,7 @@ $thcount = 8;
<?php } ?> <?php } ?>
</tr> </tr>
</thead> </thead>
<tbody id="sortableplaylist"> <tbody id="sortableplaylist_<?php echo $browse->get_filter('album'); ?>">
<?php <?php
foreach ($object_ids as $song_id) { foreach ($object_ids as $song_id) {
$song = new Song($song_id); $song = new Song($song_id);
@ -75,12 +75,12 @@ $thcount = 8;
<tfoot> <tfoot>
<tr class="th-bottom"> <tr class="th-bottom">
<th class="cel_play"></th> <th class="cel_play"></th>
<th class="cel_song"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=title', T_('Song Title'), 'sort_song_title'); ?></th> <th class="cel_song"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=title', T_('Song Title'), 'sort_song_title'.$browse->id); ?></th>
<th class="cel_add"></th> <th class="cel_add"></th>
<th class="cel_artist"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=artist', T_('Artist'), 'sort_song_artist'); ?></th> <th class="cel_artist"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=artist', T_('Artist'), 'sort_song_artist'.$browse->id); ?></th>
<th class="cel_album"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=album', T_('Album'), 'sort_song_album'); ?></th> <th class="cel_album"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=album', T_('Album'), 'sort_song_album'.$browse->id); ?></th>
<th class="cel_tags"><?php echo T_('Tags'); ?></th> <th class="cel_tags"><?php echo T_('Tags'); ?></th>
<th class="cel_time"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=time', T_('Time'), 'sort_song_time'); ?></th> <th class="cel_time"><?php echo Ajax::text('?page=browse&action=set_sort&browse_id=' . $browse->id . '&sort=time', T_('Time'), 'sort_song_time'.$browse->id); ?></th>
<?php if (AmpConfig::get('ratings')) { ?> <?php if (AmpConfig::get('ratings')) { ?>
<th class="cel_rating"><?php echo T_('Rating'); ?></th> <th class="cel_rating"><?php echo T_('Rating'); ?></th>
<?php } ?> <?php } ?>