config.php 7.79 KB
<?php
 /**
 * @file config.php
 * @version $Id: config.php 2368 2014-05-21 08:46:23Z elena $
 *
 */

/*
 * ob_start
 * This function will turn output buffering on.
 * While output buffering is active no output is sent from the script (other than headers),
 * instead the output is stored in an internal buffer.
 * The contents of this internal buffer may be copied into a string variable using ob_get_contents().
 * To output what is stored in the internal buffer, use ob_end_flush().
 * Alternatively, ob_end_clean() will silently discard the buffer contents.
*/
// ob_start();

/*
* Installation-dependent settings
*/
require_once 'my_config.php';

if (is_file('amda_version.php'))
	require_once 'amda_version.php';

if (is_file('errors.php'))
	require_once 'errors.php';

/*----------------------- SYSTEM config section --------*/
if (!defined('PHP_VERSION_ID'))
{
	$version = explode('.', PHP_VERSION);
	define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
}

if (!defined('MAGIC_FILE'))
	define('MAGIC_FILE','/usr/share/misc/magic');

date_default_timezone_set('UTC');
/*-----------------------END SYSTEM config section --------*/

/*----------------------- GUESTS LOGIN section --------*/
define("MaxGuests", 10); // Max Guests number
define("GuestSessionDuration", 300);   //300 minutes
define("MaxGuestTimeInterval", 10);   // days
/*-----------------------END GUESTS LOGIN section --------*/

// user WS size limit
define('DISK_QUOTA', 1024*1024*200); // 200MB
// max lines of uploaded ascii file to show
define('MAX_FILE_INDEX_TO_SHOW', 100);
// private key used to be considerate as a trust client for some functions of DD web service
define('DDSERVICE_PRIVATEKEY','!%p856Dc');

define('IMPEX_INTERVAL_LIMIT', 86400); // one day for impex request

/*----------------------- BATCH JOBS section --------*/
define('JOBTIMEOUT', '1'); // one cycle secs to sleep to allow job be executed
define('PLOT_CYCLES_NUMBER', 500); // cycles number for PNG
define('JOB_CYCLES_NUMBER', 5);   // cycles number for all the jobs
//define('TIMEOUT', '100'); //TODO secs wait before job is killed  OR 'max_execution_time' - kill automatic?

/*-----------------------END BATCH JOBS section --------*/

// EPN-TAP services
define('EPNTAP_APIS','http://voparis-tap.obspm.fr/__system__/tap/run/tap/sync');
define('EPNTAP_AMDA','http://cdpp-epntap.irap.omp.eu/__system__/tap/run/tap/sync');

/*----------------------- PHP run-time settings --------*/
ini_set('memory_limit',128000000);
ini_set('max_execution_time',600); // max PHP execution
ini_set('default_socket_timeout', 600); //TODO if this is needed ? IMPEX LONG DURATION WEBSERVICES
// to avoid 403 error while copying from URL
ini_set('user_agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:7.0) Gecko/201001012 Firefox/7.0');
// SHOULD BE DEFINED IN MASTER /etc/php.ini !!!
// ini_set('upload_max_filesize',100000000);
// ini_set('post_max_size',1050000000);
/*-----------------------END PHP run-time settings --------*/

// General Info dirs
define('DATAPATH', IHM_SRC_DIR.'generic_data/');
//define('Param', DATAPATH.'Param/');
define('LocalData', DATAPATH.'LocalData/');
define('RemoteData', DATAPATH.'RemoteData/');
define('Functions', DATAPATH.'Functions/');
//define('Plot', DATAPATH.'Plot/');
define('Hst', DATAPATH.'Hst/');
define('SpecialSettingsDir',DATAPATH.'SpecialSettings/');

// General Info files
define('orbitsXml',LocalData.'Orbites.xml');
define('orbitsAllXml',LocalData.'OrbitsAll.xml');
define('FeedbackXml', DATAPATH.'Feedback/Feedback.xml');
define('specialGrpsXml',SpecialSettingsDir.'Groups.xml');
define('specialSettingsXml',SpecialSettingsDir.'Settings.xml');

//Help info dirs
define('HELPPATH',  IHM_SRC_DIR."help/");

// IMPEX special files
define('SimuTargetsXml', DATAPATH.'SimuTemplate/TargetsSimu.xml');

// Root User dir  : All user dirs are defined in UserMgr.php
define('USERPATH', IHM_SRC_DIR.'data/');

// Shared dir
define('SHAREDPATH', IHM_SRC_DIR.'shared_data/');

/*------------------- WEB SERVICES section ---------*/
define('WSRESULT', USERPATH.'WSRESULT/'); // Web Services result directory
define('wsResultsXml',WSRESULT.'WSresults.xml'); // Web Service result file

define('plotsXml', IHM_SRC_DIR.'public/WebServices/XML/AmdaPlots.xml'); // Web Service getPlot : list of parameters to plot

// Web Service servers WSDL : $_SERVER['SERVER_NAME'] (par apache)  gethostname() (par command)
$SERVER_NAME =  $_SERVER['SERVER_NAME'] ? $_SERVER['SERVER_NAME'] : gethostname();

define('webAlias',"http://".$SERVER_NAME.APACHE_ALIAS);
define('wsdl_AMDA', webAlias."public/wsdl/Methods_AMDA.wsdl");
/*-------------------END WEB SERVICES section ---------*/

// AKKA - KERNELBIN is now the new kernel bin dir
define('KERNELBIN',NEWKERNEL_INSTALL_DIR.'bin/');

putenv("LD_LIBRARY_PATH=".SYS_LIBS.":".DDLIB.":".CEFLIB.":".CDFLIB);
putenv("PATH=./:".DDBIN.":".SYS_BIN.":".IHM_SRC_DIR."php/bin");

putenv("DDPATH=".DDRES_DIR);

// PHP classes
define('XMLPATH', IHM_SRC_DIR.'php/XML/');
define('CLASSPATH', IHM_SRC_DIR.'php/classes/');
define('REMOTE_CLASSPATH', IHM_SRC_DIR.'php/RemoteDataCenter/');
define('OLD_CLASSPATH', IHM_SRC_DIR.'php/old_amda/');

set_include_path(".:".CLASSPATH.":".REMOTE_CLASSPATH.":".OLD_CLASSPATH);

if (!function_exists('__autoload'))
{
	function __autoload($class_name) {
			require_once $class_name . '.php';
	}
}

global $API;
$API = array(
	'AmdaAction'=>array(
		'methods'=>array(
			'getTree'=>array('len'=>1),
			'saveTree'=>array('len'=>1),
			'getInfo'=>array('len'=>1),
			'doNothing'=>array('len'=>1),
			'deleteFromTree'=>array('len'=>1),
			'getObject'=>array('len'=>2),
			'getAsciiFile'=>array('len'=>1),
			'getTmpObject'=>array('len'=>3),
			'getUploadedObject'=>array('len'=>3),
			'getMyParamInfo'=>array('len'=>1),
			'deleteObject'=>array('len'=>1),
			'renameObject'=>array('len'=>1),
			'createObject'=>array('len'=>2),
			'modifyObject'=>array('len'=>1),
			'validNameObject'=>array('len'=>1),
			'getJobs'=>array('len'=>0),
			'execute'=>array('len'=>2),
			//'formHandler'=>true
			'compilParam'=>array('len'=>1),
			'compilParamDelete'=>array('len'=>1),
			'killPlotRequest'=>array('len'=>0),
			'merge'=>array('len'=>1),
			'intersect'=>array('len'=>1),
			'loadTTIntervals'=>array('len'=>1),
			'saveTTCacheIntervalsInTT'=>array('len'=>1),
			'initTTCache'=>array ('len'=>2),
			'initTTCacheFromTT'=>array('len'=>2),
			'initForChart'=>array('len'=>4),
			'initTTCacheFromTmpObject'=>array('len'=>3),
			'initTTCacheFromUploadedFile'=>array('len'=>3),
			'readTTCacheIntervals'=>array('len'=>1),
			'readIntervalsForChart'=>array('len'=>1),
			'addTTCacheInterval'=>array('len'=>1),
			'removeTTCacheIntervalFromId'=>array('len'=>2),
			'modifyTTCacheInterval'=>array('len'=>1),
			'operationTTCacheIntervals'=>array('len'=>2),
			'mergeTTCacheIntervals'=>array('len'=>0),
			'getTTCacheStatistics'=>array('len'=>0),
			'sendFeedback'=>array('len'=>1),
			'saveState'=>array('len'=>1),
			'loadState'=>array('len'=>1),
			'sendToSAMP'=>array('len'=>1),
			'getHstImagesUrl'=>array('len'=>1),
			'getAPISImagesUrl'=>array('len'=>1),
			'loadFilterList'=>array('len'=>0),
			'loadFilters'=>array('len'=>1),
			'saveFilter'=>array('len'=>1),
			'createFilter'=>array('len'=>1),
			'destroyFilter'=>array('len'=>1),
			'getCrtFilterId'=>array('len'=>0),
			'getCrtFilterResult'=>array('len'=>0),
			'setCrtFilterId'=>array('len'=>1),
			'resetFilter'=>array('len'=>0),
			'logout'=>array('len'=>1),
			'getUserInfo'=>array('len'=>0),
			'convertWS'=>array('len'=>0),
			'getRun'=>array('len'=>1),
			'addRun'=>array('len'=>1),
			//AKKA - New action to clean user WS
			'cleanUserWS'=>array('len'=>0),
			'deleteSpecialInfo'=>array('len'=>1),
			'interactivePlot'=>array('len'=>2),
			'getParamPlotInit'=>array('len'=>1),
			'getParamInfo'=>array('len'=>1),
			'getSharedObjectFolders' => array('len'=>1),
			'shareObjects' => array('len'=>1),
			'isSharedObjectNameAlreadyUsed' => array('len'=>1)
		)
	)
);
?>