Merge branch 'devel' of dev.sourcefabric.org:airtime into devel

This commit is contained in:
james 2011-07-04 17:54:51 -04:00
commit 3b157fd5d9
9 changed files with 107 additions and 43 deletions

View file

@ -15,6 +15,7 @@ class ApiController extends Zend_Controller_Action
->addActionContext('media-item-status', 'json')
->addActionContext('reload-metadata', 'json')
->addActionContext('list-all-files', 'json')
->addActionContext('list-all-watched-dirs', 'json')
->initContext();
}
@ -24,7 +25,7 @@ class ApiController extends Zend_Controller_Action
}
/**
* Returns Airtime version. i.e "1.7.0 alpha"
* Returns Airtime version. i.e "1.7.0-beta"
*
* First checks to ensure the correct API key was
* supplied, then returns AIRTIME_VERSION as defined
@ -520,8 +521,35 @@ class ApiController extends Zend_Controller_Action
print 'You are not allowed to access this resource.';
exit;
}
$dir_id = $request->getParam('dir_id');
$this->view->files = StoredFile::listAllFiles();
$this->view->files = StoredFile::listAllFiles($dir_id);
}
public function listAllWatchedDirsAction() {
global $CC_CONFIG;
$request = $this->getRequest();
$api_key = $request->getParam('api_key');
if (!in_array($api_key, $CC_CONFIG["apiKey"]))
{
header('HTTP/1.0 401 Unauthorized');
print 'You are not allowed to access this resource.';
exit;
}
$result = array();
$arrWatchedDirs = MusicDir::getWatchedDirs();
$storDir = MusicDir::getStorDir();
$result[$storDir->getId()] = $storDir->getDirectory();
foreach ($arrWatchedDirs as $watchedDir){
$result[$watchedDir->getId()] = $watchedDir->getDirectory();
}
$this->view->dirs = $result;
}
}

View file

@ -7,9 +7,9 @@ class MusicDir {
*/
private $_dir;
public function __construct()
public function __construct($dir)
{
$this->_dir = $dir;
}
public function getId()
@ -50,8 +50,7 @@ class MusicDir {
$dir->setDirectory($p_path);
$dir->save();
$mus_dir = new MusicDir();
$mus_dir->_dir = $dir;
$mus_dir = new MusicDir($dir);
return $mus_dir;
}
@ -65,8 +64,7 @@ class MusicDir {
{
$dir = CcMusicDirsQuery::create()->findPK($pk);
$mus_dir = new MusicDir();
$mus_dir->_dir = $dir;
$mus_dir = new MusicDir($dir);
return $mus_dir;
}
@ -77,9 +75,7 @@ class MusicDir {
->filterByDirectory($p_path)
->findOne();
$mus_dir = new MusicDir();
$mus_dir->_dir = $dir;
$mus_dir = new MusicDir($dir);
return $mus_dir;
}
@ -92,9 +88,7 @@ class MusicDir {
->find();
foreach($dirs as $dir) {
$tmp = new MusicDir();
$tmp->_dir = $dir;
$tmp = new MusicDir($dir);
$result[] = $tmp;
}
@ -107,7 +101,7 @@ class MusicDir {
->filterByType("stor")
->findOne();
$mus_dir = new MusicDir();
$mus_dir = new MusicDir($dir);
$mus_dir->_dir = $dir;
return $mus_dir;
@ -127,8 +121,7 @@ class MusicDir {
foreach($dirs as $dir) {
$directory = $dir->getDirectory();
if (substr($p_filepath, 0, strlen($directory)) === $directory) {
$mus_dir = new MusicDir();
$mus_dir->_dir = $dir;
$mus_dir = new MusicDir($dir);
return $mus_dir;
}
}

View file

@ -819,14 +819,15 @@ class StoredFile {
}
public static function listAllFiles(){
public static function listAllFiles($dir_id){
global $CC_CONFIG, $CC_DBC;
$sql = "SELECT m.directory || '/' || f.filepath as fp"
." FROM CC_MUSIC_DIRS m"
." LEFT JOIN CC_FILES f"
." ON m.id = f.directory"
." WHERE m.id = f.directory";
." WHERE m.id = f.directory"
." AND directory = $dir_id";
$rows = $CC_DBC->getAll($sql);
$results = array();