=" ));
/**
* configuration structure:
*
*
* - dsn
- datasource setting
*
- tblNamePrefix
- prefix for table names in the database
*
- authCookieName
- secret token cookie name
*
- AdminsGr
- name of admin group
*
- StationPrefsGr
- name of station preferences group
*
- AllGr
- name of 'all users' group
*
- TrashName
- name of trash folder (subfolder of the storageRoot)
*
- storageDir
- main directory for storing binary media files
*
- bufferDir
- directory for temporary files
*
- transDir
- directory for incomplete transferred files
*
- accessDir
- directory for symlinks to accessed files
*
- isArchive
- local/central flag
*
- validate
- enable/disable validator
*
- useTrash
- enable/disable safe delete (move to trash)
*
- storageUrlPath
- path-URL-part of storageServer base dir
*
- storageXMLRPC
- XMLRPC server script address relative to storageUrlPath
*
- storageUrlHost, storageUrlPort
- host and port of storageServer
*
- archiveUrlPath
- path-URL-part of archiveServer base dir
*
- archiveXMLRPC
- XMLRPC server script address relative to archiveUrlPath
*
- archiveUrlHost, archiveUrlPort
- host and port of archiveServer
*
- archiveAccountLogin, archiveAccountPass
- account info
* for login to archive
*
- sysSubjs
- system users/groups - cannot be deleted
*
*/
// these are the default values for the config
$config = array(
/* ================================================== basic configuration */
'dsn' => array(
'username' => 'ls_dbuser',
'password' => 'ls_dbpassword',
'hostspec' => 'ls_dbserver',
'phptype' => 'pgsql',
'database' => 'ls_database',
),
'tblNamePrefix' => 'ls_',
/* ================================================ storage configuration */
'authCookieName'=> 'lssid',
'AdminsGr' => 'Admins',
'StationPrefsGr'=> 'StationPrefs',
'AllGr' => 'All',
'TrashName' => 'trash_',
'storageDir' => realpath(dirname(__FILE__).'/../../storageServer/var/stor'),
'bufferDir' => realpath(dirname(__FILE__).'/../../storageServer/var/stor/buffer'),
'transDir' => realpath(dirname(__FILE__).'/../../storageServer/var/trans'),
'accessDir' => realpath(dirname(__FILE__).'/../../storageServer/var/access'),
'pearPath' => 'ls_lib_dir/pear',
'cronDir' => realpath(dirname(__FILE__).'/../../storageServer/var/cron'),
'isArchive' => FALSE,
'validate' => TRUE,
'useTrash' => TRUE,
/* ==================================================== URL configuration */
'storageUrlPath' => 'ls_storageUrlPath',
'storageXMLRPC' => 'xmlrpc/xrLocStor.php',
'storageUrlHost' => 'ls_php_host',
'storageUrlPort' => ls_php_port,
/* ================================================ archive configuration */
'archiveUrlPath' => 'ls_archiveUrlPath',
'archiveXMLRPC' => 'xmlrpc/xrArchive.php',
'archiveUrlHost' => 'ls_php_host',
'archiveUrlPort' => ls_php_port,
'archiveAccountLogin' => 'root',
'archiveAccountPass' => 'q',
/* ============================================== scheduler configuration */
'schedulerUrlPath' => 'ls_scheduler_urlPrefix',
'schedulerXMLRPC' => 'ls_scheduler_xmlRpcPrefix',
'schedulerUrlHost' => 'ls_scheduler_host',
'schedulerUrlPort' => ls_scheduler_port,
/* ==================================== aplication-specific configuration */
'objtypes' => array(
'RootNode' => array('Folder'),
'Storage' => array('Folder', 'File', 'Replica'),
'Folder' => array('Folder', 'File', 'Replica'),
'File' => array(),
'audioclip' => array(),
'playlist' => array(),
'Replica' => array(),
),
'allowedActions'=> array(
'RootNode' => array('classes', 'subjects'),
'Folder' => array('editPrivs', 'write', 'read'),
'File' => array('editPrivs', 'write', 'read'),
'audioclip' => array('editPrivs', 'write', 'read'),
'playlist' => array('editPrivs', 'write', 'read'),
'Replica' => array('editPrivs', 'write', 'read'),
'_class' => array('editPrivs', 'write', 'read'),
),
'allActions' => array(
'editPrivs', 'write', 'read', 'classes', 'subjects'
),
/* ============================================== auxiliary configuration */
'RootNode' => 'RootNode',
'tmpRootPass' => 'q',
/* =================================================== cron configuration */
'cronUserName' => 'ls_apache_group',
'lockfile' => dirname(__FILE__).'/cron/cron.lock',
'cronfile' => dirname(__FILE__).'/cron/croncall.php',
'paramdir' => dirname(__FILE__).'/cron/params',
);
$config['sysSubjs'] = array(
'root', $config['AdminsGr'], $config['AllGr'], $config['StationPrefsGr']
);
$old_ip = get_include_path();
set_include_path('.'.PATH_SEPARATOR.$config['pearPath'].PATH_SEPARATOR.$old_ip);
if(!PHP5){
eval('
define("FILE_APPEND", TRUE);
function file_put_contents($f, $s, $ap=FALSE){
$fp=fopen($f, $ap==FILE_APPEND ? "a" : "w");
fwrite($fp,$s);
fclose($fp);
}
');
}
?>