CC-84: Smart Playlists

- fixed db query part for static smart playlist generate
This commit is contained in:
James 2012-07-31 11:01:19 -04:00
parent 27017c7903
commit b312b2bd45
1 changed files with 8 additions and 2 deletions

View File

@ -1163,6 +1163,7 @@ EOT;
if (isset($storedCrit["crit"])) { if (isset($storedCrit["crit"])) {
foreach ($storedCrit["crit"] as $crit) { foreach ($storedCrit["crit"] as $crit) {
$i = 0;
foreach ($crit as $criteria) { foreach ($crit as $criteria) {
$spCriteriaPhpName = self::$criteria2PeerMap[$criteria['criteria']]; $spCriteriaPhpName = self::$criteria2PeerMap[$criteria['criteria']];
$spCriteria = $criteria['criteria']; $spCriteria = $criteria['criteria'];
@ -1180,13 +1181,18 @@ EOT;
} }
$spCriteriaModifier = self::$modifier2CriteriaMap[$spCriteriaModifier]; $spCriteriaModifier = self::$modifier2CriteriaMap[$spCriteriaModifier];
try{ try{
$qry->filterBy($spCriteriaPhpName, $spCriteriaValue, $spCriteriaModifier); if ($i > 0) {
$qry->addAscendingOrderByColumn('random()'); $qry->addOr($spCriteria, $spCriteriaValue, $spCriteriaModifier);
} else {
$qry->add($spCriteria, $spCriteriaValue, $spCriteriaModifier);
}
}catch (Exception $e){ }catch (Exception $e){
Logging::log($e); Logging::log($e);
} }
$i++;
} }
} }
$qry->addAscendingOrderByColumn('random()');
} }
// construct limit restriction // construct limit restriction
$limits = array(); $limits = array();