added option to pull listener data for every show that aired during a date range
This commit is contained in:
parent
13756be410
commit
b8b656d8ca
2 changed files with 28 additions and 0 deletions
|
@ -73,4 +73,11 @@ class ListenerstatController extends Zend_Controller_Action
|
||||||
$endsDT->format(DEFAULT_TIMESTAMP_FORMAT),$show_id);
|
$endsDT->format(DEFAULT_TIMESTAMP_FORMAT),$show_id);
|
||||||
$this->_helper->json->sendJson($data);
|
$this->_helper->json->sendJson($data);
|
||||||
}
|
}
|
||||||
|
public function getAllShowDataAction(){
|
||||||
|
list($startsDT, $endsDT) = Application_Common_HTTPHelper::getStartEndFromRequest($this->getRequest());
|
||||||
|
$show_id = $this->getRequest()->getParam("show_id", null);
|
||||||
|
$data = Application_Model_ListenerStat::getAllShowDataPointsWithinRange($startsDT->format(DEFAULT_TIMESTAMP_FORMAT),
|
||||||
|
$endsDT->format(DEFAULT_TIMESTAMP_FORMAT),$show_id);
|
||||||
|
$this->_helper->json->sendJson($data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -113,6 +113,27 @@ SQL;
|
||||||
}
|
}
|
||||||
return($showData);
|
return($showData);
|
||||||
}
|
}
|
||||||
|
public static function getAllShowDataPointsWithinRange($p_start, $p_end) {
|
||||||
|
// this query selects the id of all show instances that aired in this date range
|
||||||
|
$all_show_data = [];
|
||||||
|
$sql = <<<SQL
|
||||||
|
SELECT show_id FROM cc_show_instances
|
||||||
|
WHERE starts >=:p1 AND ends <=:p2
|
||||||
|
GROUP BY show_id
|
||||||
|
SQL;
|
||||||
|
$data = Application_Common_Database::prepareAndExecute($sql,
|
||||||
|
array('p1'=>$p_start, 'p2'=>$p_end));
|
||||||
|
|
||||||
|
foreach($data as $show_id) {
|
||||||
|
$all_show_data = array_merge(self::getShowDataPointsWithinRange($p_start,$p_end,$show_id['show_id']), $all_show_data);
|
||||||
|
}
|
||||||
|
/* option to sort by number of listeners currently commented out
|
||||||
|
usort($all_show_data, function($a, $b) {
|
||||||
|
return $a['average_number_of_listeners'] - $b['average_number_of_listeners'];
|
||||||
|
});
|
||||||
|
*/
|
||||||
|
return $all_show_data;
|
||||||
|
}
|
||||||
|
|
||||||
public static function insertDataPoints($p_dataPoints) {
|
public static function insertDataPoints($p_dataPoints) {
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue