summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarl 'vollmerk' Vollmer <vollmer@ampache.org>2009-02-21 01:59:11 +0000
committerKarl 'vollmerk' Vollmer <vollmer@ampache.org>2009-02-21 01:59:11 +0000
commitc59dd7d4b347f1044dcff7aaeeac0fd2bd110aae (patch)
tree280648d913540da0a1c818c10028ecc259421e1a
parent917c8198ae353ab6fd2b5d981c310e0e3974ab90 (diff)
downloadampache-c59dd7d4b347f1044dcff7aaeeac0fd2bd110aae.tar.gz
ampache-c59dd7d4b347f1044dcff7aaeeac0fd2bd110aae.tar.bz2
ampache-c59dd7d4b347f1044dcff7aaeeac0fd2bd110aae.zip
corrected display on cleared democratic playlist, and added some basic caching, vote amount needs to be cached
-rw-r--r--democratic.php1
-rw-r--r--lib/class/democratic.class.php8
-rw-r--r--templates/show_democratic.inc.php2
3 files changed, 11 insertions, 0 deletions
diff --git a/democratic.php b/democratic.php
index 16e49721..327033be 100644
--- a/democratic.php
+++ b/democratic.php
@@ -82,6 +82,7 @@ switch ($_REQUEST['action']) {
$democratic->format();
require_once Config::get('prefix') . '/templates/show_democratic.inc.php';
$objects = $democratic->get_items();
+ Song::build_cache($democratic->object_ids);
Browse::set_type('democratic');
Browse::reset();
Browse::set_static_content(1);
diff --git a/lib/class/democratic.class.php b/lib/class/democratic.class.php
index df34ec5f..a8bd7456 100644
--- a/lib/class/democratic.class.php
+++ b/lib/class/democratic.class.php
@@ -35,6 +35,7 @@ class Democratic extends tmpPlaylist {
// Build local, buy local
public $tmp_playlist;
+ public $object_ids = array();
/**
* constructor
@@ -194,9 +195,14 @@ class Democratic extends tmpPlaylist {
/* Define the array */
$items = array();
$votes = array();
+ $object_ids = array();
+
// Itterate and build the sortable array
while ($results = Dba::fetch_assoc($db_results)) {
+ // Extra set of data for caching!
+ $this->object_ids[] = $results['object_id'];
+
// First build a variable that holds the number of votes for an object
$name = 'vc_' . $results['object_id'];
@@ -216,6 +222,8 @@ class Democratic extends tmpPlaylist {
// Sort highest voted stuff to the top
krsort($items);
+ $sorted_items = array();
+
// re-collapse the array
foreach ($items as $vote_count=>$date_array) {
ksort($date_array);
diff --git a/templates/show_democratic.inc.php b/templates/show_democratic.inc.php
index 08277a56..d3e18134 100644
--- a/templates/show_democratic.inc.php
+++ b/templates/show_democratic.inc.php
@@ -26,6 +26,7 @@ show_box_top(sprintf(_('%s Playlist') ,$democratic->name));
<li>
<?php echo _('Cooldown'); ?>:<?php echo $democratic->f_cooldown; ?>
</li>
+<?php if (Access::check('interface','75')) { ?>
<li>
<?php echo Ajax::button('?page=democratic&action=send_playlist&democratic_id=' . scrub_out($democratic->id),'all',_('Play'),'play_democratic'); ?>
<?php echo _('Play'); ?>
@@ -34,6 +35,7 @@ show_box_top(sprintf(_('%s Playlist') ,$democratic->name));
<?php echo Ajax::button('?page=democratic&action=clear_playlist&democratic_id=' . scrub_out($democratic->id),'delete',_('Clear Playlist'),'clear_democratic'); ?>
<?php echo _('Clear Playlist'); ?>
</li>
+<?php } ?>
</ul>
</div>