REVIEWED THE FILE INCLUSION POLICY

- includes are relative to the application root folder, aka APPROOT
- changed the config file, while preserving the compatibility with older installs

SVN:trunk[962]
This commit is contained in:
Romain Quetiez
2010-11-22 17:53:52 +00:00
parent d0f168adbb
commit d8bb6a45b2
59 changed files with 369 additions and 308 deletions

View File

@@ -24,7 +24,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/webpage.class.inc.php");
require_once('../approot.inc.php');
require_once(APPROOT."/application/webpage.class.inc.php");
class ajax_page extends WebPage
{

View File

@@ -23,13 +23,13 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/applicationcontext.class.inc.php');
require_once('../application/cmdbabstract.class.inc.php');
require_once('../application/displayblock.class.inc.php');
require_once('../application/audit.category.class.inc.php');
require_once('../application/audit.rule.class.inc.php');
//require_once('../application/menunode.class.inc.php');
require_once('../application/utils.inc.php');
require_once(APPROOT.'/application/applicationcontext.class.inc.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/application/displayblock.class.inc.php');
require_once(APPROOT.'/application/audit.category.class.inc.php');
require_once(APPROOT.'/application/audit.rule.class.inc.php');
//require_once(APPROOT.'/application/menunode.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
class ApplicationException extends CoreException
{

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/utils.inc.php");
require_once(APPROOT."/application/utils.inc.php");
/**
* Helper class to store and manipulate the parameters that make the application's context
*

View File

@@ -25,7 +25,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
class AuditCategory extends cmdbAbstractObject
{

View File

@@ -26,7 +26,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/audit.category.class.inc.php');
require_once(APPROOT.'/application/audit.category.class.inc.php');
class AuditRule extends cmdbAbstractObject
{

View File

@@ -24,7 +24,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/webpage.class.inc.php");
require_once(APPROOT."/application/webpage.class.inc.php");
class CLIPage
{

View File

@@ -31,13 +31,13 @@ define('HILIGHT_CLASS_WARNING', 'orange');
define('HILIGHT_CLASS_OK', 'green');
define('HILIGHT_CLASS_NONE', '');
require_once('../core/cmdbobject.class.inc.php');
require_once('../application/utils.inc.php');
require_once('../application/applicationcontext.class.inc.php');
require_once('../application/ui.linkswidget.class.inc.php');
require_once('../application/ui.passwordwidget.class.inc.php');
require_once('../application/ui.autocompletewidget.class.inc.php');
require_once('../application/ui.htmleditorwidget.class.inc.php');
require_once(APPROOT.'/core/cmdbobject.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/application/applicationcontext.class.inc.php');
require_once(APPROOT.'/application/ui.linkswidget.class.inc.php');
require_once(APPROOT.'/application/ui.passwordwidget.class.inc.php');
require_once(APPROOT.'/application/ui.autocompletewidget.class.inc.php');
require_once(APPROOT.'/application/ui.htmleditorwidget.class.inc.php');
abstract class cmdbAbstractObject extends CMDBObject
{

View File

@@ -24,7 +24,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/webpage.class.inc.php");
require_once(APPROOT."/application/webpage.class.inc.php");
class CSVPage extends WebPage
{

View File

@@ -23,8 +23,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/webpage.class.inc.php');
require_once('../application/utils.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
/**
* Helper class to manage 'blocks' of HTML pieces that are parts of a page and contain some list of cmdb objects
*
@@ -757,7 +757,7 @@ EOF
break;
case 'open_flash_chart_ajax':
include '../pages/php-ofc-library/open-flash-chart.php';
require_once(APPROOT.'/pages/php-ofc-library/open-flash-chart.php');
$sChartType = isset($aExtraParams['chart_type']) ? $aExtraParams['chart_type'] : 'pie';
$oChart = new open_flash_chart();

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
/**
* This class manages the input/output tasks

View File

@@ -23,9 +23,9 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/nicewebpage.class.inc.php");
require_once("../application/applicationcontext.class.inc.php");
require_once("../application/user.preferences.class.inc.php");
require_once(APPROOT."/application/nicewebpage.class.inc.php");
require_once(APPROOT."/application/applicationcontext.class.inc.php");
require_once(APPROOT."/application/user.preferences.class.inc.php");
/**
* Web page with some associated CSS and scripts (jquery) for a fancier display
*/

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/nicewebpage.class.inc.php");
require_once(APPROOT."/application/nicewebpage.class.inc.php");
/**
* Web page used for displaying the login form
*/
@@ -393,7 +393,7 @@ EOF
if ($bMustBeAdmin && !UserRights::IsAdministrator())
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:Login:Error:AccessAdmin')."</h1>\n");
$oP->p("<a href=\"../pages/logoff.php\">".Dict::S('UI:LogOffMenu')."</a>");

View File

@@ -23,8 +23,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/utils.inc.php');
require_once('../application/template.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/application/template.class.inc.php');
/**

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/webpage.class.inc.php");
require_once(APPROOT."/application/webpage.class.inc.php");
/**
* Web page with some associated CSS and scripts (jquery) for a fancier display
*/

View File

@@ -23,9 +23,9 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/nicewebpage.class.inc.php");
require_once("../application/applicationcontext.class.inc.php");
require_once("../application/user.preferences.class.inc.php");
require_once(APPROOT."/application/nicewebpage.class.inc.php");
require_once(APPROOT."/application/applicationcontext.class.inc.php");
require_once(APPROOT."/application/user.preferences.class.inc.php");
/**
* Web page with some associated CSS and scripts (jquery) for a fancier display
* of the Portal web page

View File

@@ -23,8 +23,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../core/cmdbobject.class.inc.php');
require_once('../application/utils.inc.php');
require_once(APPROOT.'/core/cmdbobject.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
MetaModel::Startup(ITOP_CONFIG_FILE);

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/displayblock.class.inc.php');
require_once(APPROOT.'/application/displayblock.class.inc.php');
/**
* This class manages the special template format used internally to build the iTop web pages
*/
@@ -218,8 +218,8 @@ class DisplayTemplate
*/
static public function UnitTest()
{
require_once('../application/startup.inc.php');
require_once("../application/itopwebpage.class.inc.php");
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT."/application/itopwebpage.class.inc.php");
$sTemplate = '<div class="page_header">
<div class="actions_details"><a href="#"><span>Actions</span></a></div>

View File

@@ -58,8 +58,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/webpage.class.inc.php');
require_once('../application/displayblock.class.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/displayblock.class.inc.php');
class UIAutoCompleteWidget
{

View File

@@ -23,8 +23,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/webpage.class.inc.php');
require_once('../application/displayblock.class.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/displayblock.class.inc.php');
class UILinksWidget
{

View File

@@ -24,8 +24,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/webpage.class.inc.php');
require_once('../application/displayblock.class.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/displayblock.class.inc.php');
class UIPasswordWidget
{

View File

@@ -22,8 +22,8 @@
* @author Denis Flaven <denis.flaven@combodo.com>
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../core/dbobject.class.php');
require_once('../core/userrights.class.inc.php');
require_once(APPROOT.'/core/dbobject.class.php');
require_once(APPROOT.'/core/userrights.class.inc.php');
/**
* This class is used to store, in a persistent manner, user related settings (preferences)

View File

@@ -23,10 +23,10 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../core/config.class.inc.php');
require_once('../application/transaction.class.inc.php');
require_once(APPROOT.'/core/config.class.inc.php');
require_once(APPROOT.'/application/transaction.class.inc.php');
define('ITOP_CONFIG_FILE', '../config-itop.php');
define('ITOP_CONFIG_FILE', APPROOT.'/config-itop.php');
class FileUploadException extends Exception
{

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/uiwizard.class.inc.php');
require_once(APPROOT.'/application/uiwizard.class.inc.php');
class WizardHelper
{

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/webpage.class.inc.php");
require_once(APPROOT."/application/webpage.class.inc.php");
/**
* Simple web page with no includes or fancy formatting, useful to generateXML documents
* The page adds the content-type text/XML and the encoding into the headers

3
approot.inc.php Normal file
View File

@@ -0,0 +1,3 @@
<?php
define('APPROOT', dirname(__FILE__).'/');
?>

View File

@@ -24,7 +24,7 @@
*/
require_once('../core/email.class.inc.php');
require_once(APPROOT.'/core/email.class.inc.php');
/**
* A user defined action, to customize the application

View File

@@ -267,36 +267,36 @@ class Config
$this->m_sFile = $sConfigFile;
$this->m_aAppModules = array(
// Some default modules, always present can be move to an official iTop Module later if needed
'../application/transaction.class.inc.php',
'../application/menunode.class.inc.php',
'../application/user.preferences.class.inc.php',
'../application/audit.rule.class.inc.php',
'/application/transaction.class.inc.php',
'/application/menunode.class.inc.php',
'/application/user.preferences.class.inc.php',
'/application/audit.rule.class.inc.php',
// Romain - That's dirty, because those 3 classes are in fact part of the core
// but I needed those classes to be derived from cmdbAbstractObject
// (to be managed via the GUI) and this class in not really known from
// the core, PLUS I needed the includes to be there also for the setup
// to create the tables.
'../core/event.class.inc.php',
'../core/action.class.inc.php',
'../core/trigger.class.inc.php',
'/core/event.class.inc.php',
'/core/action.class.inc.php',
'/core/trigger.class.inc.php',
);
$this->m_aDataModels = array();
$this->m_aAddons = array(
// Default AddOn, always present can be moved to an official iTop Module later if needed
'user rights' => '../addons/userrights/userrightsprofile.class.inc.php',
'user rights' => '/addons/userrights/userrightsprofile.class.inc.php',
);
$this->m_aDictionaries = array(
// Default dictionaries, always present can be moved to an official iTop Module later if needed
'../dictionaries/dictionary.itop.core.php',
'../dictionaries/dictionary.itop.ui.php', // Support for English
'../dictionaries/fr.dictionary.itop.ui.php', // Support for French
'../dictionaries/fr.dictionary.itop.core.php', // Support for French
'../dictionaries/es_cr.dictionary.itop.ui.php', // Support for Spanish (from Costa Rica)
'../dictionaries/es_cr.dictionary.itop.core.php', // Support for Spanish (from Costa Rica)
'../dictionaries/de.dictionary.itop.ui.php', // Support for German
'../dictionaries/de.dictionary.itop.core.php', // Support for German
'../dictionaries/pt_br.dictionary.itop.ui.php', // Support for Brazilian Portuguese
'../dictionaries/pt_br.dictionary.itop.core.php', // Support for Brazilian Portuguese
'/dictionaries/dictionary.itop.core.php',
'/dictionaries/dictionary.itop.ui.php', // Support for English
'/dictionaries/fr.dictionary.itop.ui.php', // Support for French
'/dictionaries/fr.dictionary.itop.core.php', // Support for French
'/dictionaries/es_cr.dictionary.itop.ui.php', // Support for Spanish (from Costa Rica)
'/dictionaries/es_cr.dictionary.itop.core.php', // Support for Spanish (from Costa Rica)
'/dictionaries/de.dictionary.itop.ui.php', // Support for German
'/dictionaries/de.dictionary.itop.core.php', // Support for German
'/dictionaries/pt_br.dictionary.itop.ui.php', // Support for Brazilian Portuguese
'/dictionaries/pt_br.dictionary.itop.core.php', // Support for Brazilian Portuguese
);
foreach($this->m_aSettings as $sPropCode => $aSettingInfo)
@@ -396,7 +396,8 @@ class Config
}
if (!array_key_exists('user rights', $MyModules['addons']))
{
$MyModules['addons']['user rights'] = '../addons/userrights/userrightsnull.class.inc.php';
// Add one, by default
$MyModules['addons']['user rights'] = '/addons/userrights/userrightsnull.class.inc.php';
}
if (!array_key_exists('dictionaries', $MyModules))
{
@@ -452,22 +453,8 @@ class Config
protected function Verify()
{
foreach ($this->m_aAppModules as $sModule => $sToInclude)
{
$this->CheckFile('application module', $sToInclude);
}
foreach ($this->m_aDataModels as $sModule => $sToInclude)
{
$this->CheckFile('business model', $sToInclude);
}
foreach ($this->m_aAddons as $sModule => $sToInclude)
{
$this->CheckFile('addon module', $sToInclude);
}
foreach ($this->m_aDictionaries as $sModule => $sToInclude)
{
$this->CheckFile('dictionary', $sToInclude);
}
// Files are verified later on, just before using them -see MetaModel::Plugin()
// (we have their final path at that point)
}
public function GetModuleSetting($sModule, $sProperty, $defaultvalue = null)

View File

@@ -3251,7 +3251,7 @@ abstract class MetaModel
if (self::$m_oConfig->GetLogIssue())
{
self::$m_bLogIssue = true;
IssueLog::Enable('../error.log');
IssueLog::Enable(APPROOT.'/error.log');
}
self::$m_bLogNotification = self::$m_oConfig->GetLogNotification();
self::$m_bLogWebService = self::$m_oConfig->GetLogWebService();
@@ -3289,7 +3289,7 @@ abstract class MetaModel
// Romain: this is the only way I've found to cope with the fact that
// classes have to be derived from cmdbabstract (to be editable in the UI)
require_once('../application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
foreach (self::$m_oConfig->GetAppModules() as $sModule => $sToInclude)
{
@@ -3348,11 +3348,27 @@ abstract class MetaModel
protected static function Plugin($sConfigFile, $sModuleType, $sToInclude)
{
if (!file_exists($sToInclude))
if (substr($sToInclude, 0, 3) == '../')
{
throw new CoreException('Wrong filename in configuration file', array('file' => $sConfigFile, 'module' => $sModuleType, 'filename' => $sToInclude));
// Preserve compatibility with config files written before 1.0.1
// Replace '../' by '<root>/'
$sFile = APPROOT.'/'.substr($sToInclude, 3);
}
require_once($sToInclude);
elseif (substr($sToInclude, 0, 1) == '/')
{
// Preferred...
$sFile = APPROOT.$sToInclude;
}
else
{
// Leave as is - should be an absolute path
$sFile = $sToInclude;
}
if (!file_exists($sFile))
{
throw new CoreException('Wrong filename in configuration file', array('file' => $sConfigFile, 'module' => $sModuleType, 'filename' => $sFile));
}
require_once($sFile);
}
protected static function InitPlugins()

View File

@@ -14,7 +14,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
require_once('../core/simplecrypt.class.inc.php');
require_once(APPROOT.'/core/simplecrypt.class.inc.php');
/**
* ormPassword

View File

@@ -23,8 +23,6 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/cmdbabstract.class.inc.php');
require_once('../application/template.class.inc.php');
MetaModel::RegisterRelation("impacts", array("description"=>"Objects impacted by", "verb_down"=>"impacts", "verb_up"=>"depends on"));
MetaModel::RegisterRelation("depends on", array("description"=>"That impacts ", "verb_down"=>"depends on", "verb_up"=>"impacts"));

View File

@@ -495,16 +495,17 @@ EOF
* ***********************************************************************************/
try
{
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
$operation = utils::ReadParam('operation', '');
$oKPI = new ExecutionKPI();
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$oAppContext = new ApplicationContext();
@@ -1308,7 +1309,7 @@ EOF
{
throw new ApplicationException(Dict::Format('UI:Error:4ParametersMissing', 'class', 'id', 'target_class', 'link_attr'));
}
require_once('../application/uilinkswizard.class.inc.php');
require_once(APPROOT.'/application/uilinkswizard.class.inc.php');
$oWizard = new UILinksWizard($sClass, $sLinkAttr, $id, $sTargetClass);
$oWizard->Display($oP, array('StartWithAdd' => $bAddObjects));
break;
@@ -1490,7 +1491,7 @@ EOF
}
catch(CoreException $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
if ($e instanceof SecurityException)
{
@@ -1533,7 +1534,7 @@ catch(CoreException $e)
}
catch(Exception $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getMessage()));

View File

@@ -23,13 +23,14 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../application/applicationcontext.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once(APPROOT.'/application/applicationcontext.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(true); // Check user rights and prompt if needed (must be admin)
$oAppContext = new ApplicationContext();
@@ -47,7 +48,6 @@ $sOperation = utils::ReadParam('operation', '');
// First part: select the class to search for
$oP->add("<form>");
$oP->add("<input type=\"hidden\" name=\"org_id\" value=\"$currentOrganization\" />");
$oP->add(Dict::S('UI:UniversalSearch:LabelSelectTheClass')."<select style=\"width: 150px;\" id=\"select_class\" name=\"baseClass\" onChange=\"this.form.submit();\">");
$aClassLabels = array();
foreach(MetaModel::GetClasses('bizmodel') as $sCurrentClass)

View File

@@ -23,12 +23,13 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/webpage.class.inc.php');
require_once('../application/ajaxwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../application/ui.linkswidget.class.inc.php');
require_once('../application/csvpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/ajaxwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once(APPROOT.'/application/ui.linkswidget.class.inc.php');
require_once(APPROOT.'/application/csvpage.class.inc.php');
/**
* Determines if the name of the field to be mapped correspond
@@ -207,9 +208,9 @@ function GetMappingForField($sClassName, $sFieldName, $iFieldIndex, $bAdvancedMo
return $sHtml;
}
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed

View File

@@ -23,17 +23,18 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/webpage.class.inc.php');
require_once('../application/ajaxwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../application/ui.linkswidget.class.inc.php');
require_once('../application/ui.autocompletewidget.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/ajaxwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once(APPROOT.'/application/ui.linkswidget.class.inc.php');
require_once(APPROOT.'/application/ui.autocompletewidget.class.inc.php');
require_once('../application/startup.inc.php');
require_once('../application/user.preferences.class.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT.'/application/user.preferences.class.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(false /* bMustBeAdmin */, true /* IsAllowedToPortalUsers */); // Check user rights and prompt if needed
$oPage = new ajax_page("");
@@ -48,7 +49,7 @@ $sStyle = utils::ReadParam('style', 'list');
switch($operation)
{
case 'addObjects':
require_once('../application/uilinkswizard.class.inc.php');
require_once(APPROOT.'/application/uilinkswizard.class.inc.php');
$sClass = utils::ReadParam('class', '', 'get');
$sLinkedClass = utils::ReadParam('linkedClass', '');
$sLinkageAttr = utils::ReadParam('linkageAttr', '');

View File

@@ -24,14 +24,15 @@
*/
try
{
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
$operation = utils::ReadParam('operation', '');
$oAppContext = new ApplicationContext();
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$oP = new iTopWebPage(Dict::S('UI:Audit:Title'));
@@ -179,7 +180,7 @@ try
}
catch(CoreException $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getHtmlDesc()));
@@ -208,7 +209,7 @@ catch(CoreException $e)
}
catch(Exception $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getMessage()));

View File

@@ -26,12 +26,13 @@
try
{
ini_set('memory_limit', '256M');
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$oAppContext = new ApplicationContext();
@@ -1146,7 +1147,7 @@ EOF
}
catch(CoreException $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getHtmlDesc()));
@@ -1175,7 +1176,7 @@ catch(CoreException $e)
}
catch(Exception $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getMessage()));

View File

@@ -23,13 +23,14 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once('../application/utils.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
/**

View File

@@ -14,16 +14,17 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
$oAppContext = new ApplicationContext();
$currentOrganization = utils::ReadParam('org_id', '');
$operation = utils::ReadParam('operation', '');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
session_name(utils::GetConfig()->Get('session_name'));
session_start();
LoginWebPage::ResetSession();

View File

@@ -17,12 +17,13 @@
/**
* Display the Flash navigator, in the whole pane
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$sOperation = utils::ReadParam('operation', 'menu');
@@ -36,8 +37,8 @@ $id = utils::ReadParam('id', 0);
$sRelation = utils::ReadParam('relation', 'neighbours');
try
{
$width = 1000;
{
$width = 1000;
$height = 700;
$sDrillUrl = urlencode('../pages/UI.php?operation=details');
// $sParams = "pWidth=$width&pHeight=$height&drillUrl=".urlencode('../pages/UI.php?operation=details')."&displayController=false&xmlUrl=".urlencode("./xml.navigator.php")."&obj_class=$sClass&obj_id=$id&relation=$sRelation";

View File

@@ -23,12 +23,13 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(true); // Check user rights and prompt if needed (must be admin)
function ShowExamples($oP, $sExpression)

View File

@@ -23,12 +23,13 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(true); // Check user rights and prompt if needed (must be admin)

View File

@@ -24,11 +24,12 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/webpage.class.inc.php');
require_once('../application/ajaxwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../application/ui.linkswidget.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/ajaxwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once(APPROOT.'/application/ui.linkswidget.class.inc.php');
define('MAX_RECURSION_DEPTH', 20);
@@ -104,8 +105,8 @@ function BuildIconPath($sIconPath)
return $sFullURLPath.$sIconPath;
}
require_once('../application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
// For developping the Navigator from within Flash
//session_start();
//$_SESSION['auth_user'] = 'admin';

View File

@@ -22,9 +22,9 @@
* @author Denis Flaven <denis.flaven@combodo.com>
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/nicewebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/nicewebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
/**
* Get the list of parameters (i.e. attribute codes) to be handled while creating a new UserRequest object
@@ -733,12 +733,12 @@ function GetUserOrg($oP)
try
{
require_once('../application/startup.inc.php');
require_once('../application/portalwebpage.class.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT.'/application/portalwebpage.class.inc.php');
$oAppContext = new ApplicationContext();
$sOperation = utils::ReadParam('operation', '');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(false /* bMustBeAdmin */, true /* IsAllowedToPortalUsers */); // Check user rights and prompt if needed
$oUserOrg = GetUserOrg($oP);
@@ -775,7 +775,7 @@ try
}
catch(CoreException $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getHtmlDesc()));
@@ -811,7 +811,7 @@ catch(CoreException $e)
}
catch(Exception $e)
{
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$oP = new SetupWebPage(Dict::S('UI:PageTitle:FatalError'));
$oP->add("<h1>".Dict::S('UI:FatalErrorMessage')."</h1>\n");
$oP->error(Dict::Format('UI:Error_Details', $e->getMessage()));

View File

@@ -31,8 +31,9 @@
* 'percent' integer 0..100 the percentage of completion once the file has been loaded
*/
define('SAFE_MINIMUM_MEMORY', 32*1024*1024);
require_once('../application/utils.inc.php');
require_once('./setuppage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
$sMemoryLimit = trim(ini_get('memory_limit'));
if (empty($sMemoryLimit))
@@ -87,14 +88,14 @@ ini_set('error_append_string', '</phpfatalerror>');
// Starts the capture of the ouput, and sets a filter to capture the fatal errors.
ob_start('FatalErrorCatcher'); // Start capturing the output, and pass it through the fatal error catcher
require_once('../core/config.class.inc.php');
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once(APPROOT.'/core/config.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once('./xmldataloader.class.inc.php');
define('TMP_CONFIG_FILE', '../tmp-config-itop.php');
//define('FINAL_CONFIG_FILE', '../config-itop.php');
define('TMP_CONFIG_FILE', APPROOT.'/tmp-config-itop.php');
//define('FINAL_CONFIG_FILE', APPROOT.'/config-itop.php');
// Never cache this page
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1

View File

@@ -26,8 +26,9 @@
/**
* Wizard to configure and initialize the iTop application
*/
require_once('../application/utils.inc.php');
require_once('../core/email.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/core/email.class.inc.php');
require_once('./setuppage.class.inc.php');
$sOperation = Utils::ReadParam('operation', 'step1');

View File

@@ -23,15 +23,16 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/utils.inc.php');
require_once('../core/config.class.inc.php');
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once('./setuppage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/core/config.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
define('TMP_CONFIG_FILE', '../tmp-config-itop.php');
define('FINAL_CONFIG_FILE', '../config-itop.php');
define('TMP_CONFIG_FILE', APPROOT.'/tmp-config-itop.php');
define('FINAL_CONFIG_FILE', APPROOT.'/config-itop.php');
define('PHP_MIN_VERSION', '5.2.0');
define('MYSQL_MIN_VERSION', '5.0.0');
define('MIN_MEMORY_LIMIT', 32*1024*1024);
@@ -395,23 +396,23 @@ function GetModuleName($sModuleId)
*/
function InitDataModel(SetupWebPage $oP, $sConfigFileName, $bModelOnly = true)
{
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once('../core/coreexception.class.inc.php');
require_once('../core/dict.class.inc.php');
require_once('../core/attributedef.class.inc.php');
require_once('../core/filterdef.class.inc.php');
require_once('../core/stimulus.class.inc.php');
require_once('../core/MyHelpers.class.inc.php');
require_once('../core/expression.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once('../core/sqlquery.class.inc.php');
require_once('../core/dbobject.class.php');
require_once('../core/dbobjectsearch.class.php');
require_once('../core/dbobjectset.class.php');
require_once('../application/cmdbabstract.class.inc.php');
require_once('../core/userrights.class.inc.php');
require_once('../setup/moduleinstallation.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once(APPROOT.'/core/coreexception.class.inc.php');
require_once(APPROOT.'/core/dict.class.inc.php');
require_once(APPROOT.'/core/attributedef.class.inc.php');
require_once(APPROOT.'/core/filterdef.class.inc.php');
require_once(APPROOT.'/core/stimulus.class.inc.php');
require_once(APPROOT.'/core/MyHelpers.class.inc.php');
require_once(APPROOT.'/core/expression.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once(APPROOT.'/core/sqlquery.class.inc.php');
require_once(APPROOT.'/core/dbobject.class.php');
require_once(APPROOT.'/core/dbobjectsearch.class.php');
require_once(APPROOT.'/core/dbobjectset.class.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/core/userrights.class.inc.php');
require_once(APPROOT.'/setup/moduleinstallation.class.inc.php');
$oP->log("Info - MetaModel::Startup from file '$sConfigFileName' (ModelOnly = $bModelOnly)");
MetaModel::Startup($sConfigFileName, $bModelOnly);
@@ -528,8 +529,9 @@ function CreateAdminAccount(SetupWebPage $oP, Config $oConfig, $sAdminUser, $sAd
}
}
function ListModuleFiles($sDirectory, SetupWebPage $oP)
function ListModuleFiles($sRelDir, SetupWebPage $oP)
{
$sDirectory = APPROOT.$sRelDir;
//echo "<p>$sDirectory</p>\n";
if ($hDir = opendir($sDirectory))
{
@@ -541,11 +543,12 @@ function ListModuleFiles($sDirectory, SetupWebPage $oP)
{
if (($sFile != '.') && ($sFile != '..') && ($sFile != '.svn'))
{
ListModuleFiles($sDirectory.'/'.$sFile, $oP);
ListModuleFiles($sRelDir.'/'.$sFile, $oP);
}
}
else if (preg_match('/^module\.(.*).php$/i', $sFile, $aMatches))
{
$oP->SetModulePath($sRelDir);
try
{
//echo "<p>Loading: $sDirectory/$sFile...</p>\n";
@@ -593,6 +596,7 @@ function PopulateDataFilesList(SetupWebPage $oP, $aParamValues)
foreach($aStructureDataFiles as $sFile)
{
// Under Windows, it is a must to escape backslashes (not an issue until a folder name starts with t or n, etc...)
$sFile = APPROOT.$sFile;
$sFile = str_replace('\\', '\\\\', $sFile);
$oP->add("aFilesToLoad[aFilesToLoad.length] = '$sFile';\n");
}
@@ -604,6 +608,7 @@ function PopulateDataFilesList(SetupWebPage $oP, $aParamValues)
foreach($aSampleDataFiles as $sFile)
{
// Under Windows, it is a must to escape backslashes (not an issue until a folder name starts with t or n, etc...)
$sFile = APPROOT.$sFile;
$sFile = str_replace('\\', '\\\\', $sFile);
$oP->add("aFilesToLoad[aFilesToLoad.length] = '$sFile';\n");
}
@@ -649,7 +654,7 @@ function AddParamsToForm(SetupWebpage $oP, $aParamValues, $aExcludeParams = arra
function GetAvailableModules(SetupWebpage $oP)
{
clearstatcache();
ListModuleFiles('../modules/', $oP);
ListModuleFiles('/modules', $oP);
return $oP->GetModules();
}
@@ -663,14 +668,14 @@ function BuildConfig(SetupWebpage $oP, Config &$oConfig, $aParamValues)
$aAddOns = $oConfig->GetAddOns();
$aAppModules = $oConfig->GetAppModules();
$aDataModels = $oConfig->GetDataModels();
$sDictionaries = $oConfig->GetDictionaries();
$aDictionaries = $oConfig->GetDictionaries();
// Merge the values with the ones provided by the modules
// Make sure when don't load the same file twice...
foreach($aParamValues['module'] as $sModuleId)
{
$oP->log('Installed iTop module: '. $sModuleId);
$aDataModels = array_unique(array_merge($aDataModels, $aAvailableModules[$sModuleId]['datamodel']));
$sDictionaries = array_unique(array_merge($sDictionaries, $aAvailableModules[$sModuleId]['dictionary']));
$aDictionaries = array_unique(array_merge($aDictionaries, $aAvailableModules[$sModuleId]['dictionary']));
foreach($aAvailableModules[$sModuleId]['settings'] as $sProperty => $value)
{
list($sName, $sVersion) = GetModuleName($sModuleId);
@@ -680,7 +685,7 @@ function BuildConfig(SetupWebpage $oP, Config &$oConfig, $aParamValues)
$oConfig->SetAddOns($aAddOns);
$oConfig->SetAppModules($aAppModules);
$oConfig->SetDataModels($aDataModels);
$oConfig->SetDictionaries($sDictionaries);
$oConfig->SetDictionaries($aDictionaries);
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////

View File

@@ -23,8 +23,8 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once("../application/nicewebpage.class.inc.php");
define('INSTALL_LOG_FILE', '../setup.log');
require_once(APPROOT."/application/nicewebpage.class.inc.php");
define('INSTALL_LOG_FILE', APPROOT.'/setup.log');
date_default_timezone_set('Europe/Paris');
class SetupWebPage extends NiceWebPage
{
@@ -258,9 +258,15 @@ table.formTable {
static $m_aModules = array();
// All the entries below are list of (relative) file paths
// All the entries below are list of file paths relative to the module directory
static $m_aFilesList = array('datamodel', 'dictionary', 'data.struct', 'data.sample');
static $m_sModulePath = null;
public function SetModulePath($sModulePath)
{
self::$m_sModulePath = $sModulePath;
}
public static function AddModule($sFilePath, $sId, $aArgs)
{
foreach (self::$m_aModuleArgs as $sArgName => $sArgDesc)
@@ -272,14 +278,14 @@ table.formTable {
}
self::$m_aModules[$sId] = $aArgs;
$sDirPart = dirname($sFilePath).'/';
foreach(self::$m_aFilesList as $sAttribute)
{
// All the items below are list of files, that are relative to the current file
// being loaded, let's update their path to store a full (absolute) path in the config
// being loaded, let's update their path to store path relative to the application directory
foreach(self::$m_aModules[$sId][$sAttribute] as $idx => $sRelativePath)
{
self::$m_aModules[$sId][$sAttribute][$idx] = $sDirPart.$sRelativePath;
self::$m_aModules[$sId][$sAttribute][$idx] = self::$m_sModulePath.'/'.$sRelativePath;
}
}
}

View File

@@ -23,7 +23,7 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
define ('KEYS_CACHE_FILE', '../keyscache.tmp');
define ('KEYS_CACHE_FILE', APPROOT.'/keyscache.tmp');
/**
* Class to load sets of objects from XML files into the database
* XML files can be produced by the 'export' web service or by any other means
@@ -51,7 +51,7 @@ class XMLDataLoader
$this->m_aKeys = array();
$this->m_aObjectsCache = array();
$this->m_oChange = null;
$this->m_sCacheFileName = dirname(__FILE__).'/'.KEYS_CACHE_FILE;
$this->m_sCacheFileName = KEYS_CACHE_FILE;
$this->InitDataModel($sConfigFileName);
$this->LoadKeysCache();
$this->m_bSessionActive = true;
@@ -121,22 +121,22 @@ class XMLDataLoader
*/
protected function InitDataModel($sConfigFileName)
{
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once('../core/coreexception.class.inc.php');
require_once('../core/dict.class.inc.php');
require_once('../core/attributedef.class.inc.php');
require_once('../core/filterdef.class.inc.php');
require_once('../core/stimulus.class.inc.php');
require_once('../core/MyHelpers.class.inc.php');
require_once('../core/expression.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once('../core/sqlquery.class.inc.php');
require_once('../core/dbobject.class.php');
require_once('../core/dbobjectsearch.class.php');
require_once('../core/dbobjectset.class.php');
require_once('../application/cmdbabstract.class.inc.php');
require_once('../core/userrights.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once(APPROOT.'/core/coreexception.class.inc.php');
require_once(APPROOT.'/core/dict.class.inc.php');
require_once(APPROOT.'/core/attributedef.class.inc.php');
require_once(APPROOT.'/core/filterdef.class.inc.php');
require_once(APPROOT.'/core/stimulus.class.inc.php');
require_once(APPROOT.'/core/MyHelpers.class.inc.php');
require_once(APPROOT.'/core/expression.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once(APPROOT.'/core/sqlquery.class.inc.php');
require_once(APPROOT.'/core/dbobject.class.php');
require_once(APPROOT.'/core/dbobjectsearch.class.php');
require_once(APPROOT.'/core/dbobjectset.class.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/core/userrights.class.inc.php');
MetaModel::Startup($sConfigFileName);
}

View File

@@ -23,13 +23,14 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/itopwebpage.class.inc.php');
require_once('../application/wizardhelper.class.inc.php');
require_once('../application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once('../application/utils.inc.php');
require_once('../setup/setuppage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/itopwebpage.class.inc.php');
require_once(APPROOT.'/application/wizardhelper.class.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
//ini_set('memory_limit', '2048M');

View File

@@ -24,28 +24,28 @@
*/
require_once('../core/coreexception.class.inc.php');
require_once('../core/attributedef.class.inc.php');
require_once('../core/filterdef.class.inc.php');
require_once('../core/stimulus.class.inc.php');
require_once('../core/MyHelpers.class.inc.php');
require_once(APPROOT.'/core/coreexception.class.inc.php');
require_once(APPROOT.'/core/attributedef.class.inc.php');
require_once(APPROOT.'/core/filterdef.class.inc.php');
require_once(APPROOT.'/core/stimulus.class.inc.php');
require_once(APPROOT.'/core/MyHelpers.class.inc.php');
require_once('../core/expression.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once('../core/sqlquery.class.inc.php');
require_once(APPROOT.'/core/expression.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once(APPROOT.'/core/sqlquery.class.inc.php');
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once('../core/dbobject.class.php');
require_once('../core/dbobjectsearch.class.php');
require_once('../core/dbobjectset.class.php');
require_once(APPROOT.'/core/dbobject.class.php');
require_once(APPROOT.'/core/dbobjectsearch.class.php');
require_once(APPROOT.'/core/dbobjectset.class.php');
require_once('../application/cmdbabstract.class.inc.php');
require_once(APPROOT.'/application/cmdbabstract.class.inc.php');
require_once('../core/userrights.class.inc.php');
require_once(APPROOT.'/core/userrights.class.inc.php');
require_once('../webservices/webservices.class.inc.php');
require_once(APPROOT.'/webservices/webservices.class.inc.php');
// Just to differentiate programmatically triggered exceptions and other kind of errors (usefull?)
@@ -405,7 +405,8 @@ abstract class TestBizModel extends TestHandler
protected function DoPrepare()
{
MetaModel::Startup($this->GetConfigFile());
$sConfigFile = APPROOT.$this->GetConfigFile();
MetaModel::Startup($sConfigFile);
// #@# Temporary disabled by Romain
// MetaModel::CheckDefinitions();

View File

@@ -84,11 +84,12 @@ function DisplayEvents($aEvents, $sTitle)
///////////////////////////////////////////////////////////////////////////////
require_once('../application/utils.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once('./test.class.inc.php');
require_once('./testlist.inc.php');
require_once('../core/cmdbobject.class.inc.php');
require_once(APPROOT.'/core/cmdbobject.class.inc.php');
$sTodo = utils::ReadParam("todo", "");
if ($sTodo == '')

View File

@@ -301,7 +301,7 @@ class TestGenericItoMyModel extends TestBizModelGeneric
return 'Generic RO test on '.self::GetConfigFile();
}
static public function GetConfigFile() {return '../config-test-mymodel.php';}
static public function GetConfigFile() {return '/config-test-mymodel.php';}
}
class TestGenericItopBigModel extends TestBizModelGeneric
@@ -311,7 +311,7 @@ class TestGenericItopBigModel extends TestBizModelGeneric
return 'Generic RO test on '.self::GetConfigFile();
}
static public function GetConfigFile() {return '../config-test-itopv06.php';}
static public function GetConfigFile() {return '/config-test-itopv06.php';}
}
class TestUserRightsMatrixItop extends TestUserRights
@@ -368,7 +368,7 @@ class TestMyBizModel extends TestBizModel
return 'Attempts various operations and build complex queries';
}
static public function GetConfigFile() {return '../config-test-mymodel.php';}
static public function GetConfigFile() {return '/config-test-mymodel.php';}
function test_linksinfo()
{
@@ -689,7 +689,7 @@ class TestMyBizModel extends TestBizModel
abstract class MyFarm extends TestBizModel
{
static public function GetConfigFile() {return '../config-test-farm.php';}
static public function GetConfigFile() {return '/config-test-farm.php';}
protected function DoPrepare()
{
@@ -970,7 +970,7 @@ class TestBulkChangeOnFarm extends TestBizModel
return 'Bulk load';
}
static public function GetConfigFile() {return '../config-test-farm.php';}
static public function GetConfigFile() {return '/config-test-farm.php';}
protected function DoPrepare()
{
@@ -1084,7 +1084,7 @@ class TestItopEfficiency extends TestBizModel
return 'Measure time to perform the queries';
}
static public function GetConfigFile() {return '../config-itop.php';}
static public function GetConfigFile() {return '/config-itop.php';}
protected function DoBenchmark($sOqlQuery)
{
@@ -1942,7 +1942,7 @@ class TestWebServicesDirect extends TestBizModel
static public function GetName() {return 'Test web services locally';}
static public function GetDescription() {return 'Invoke the service directly (troubleshooting)';}
static public function GetConfigFile() {return '../config-itop.php';}
static public function GetConfigFile() {return '/config-itop.php';}
protected function DoExecute()
{
@@ -1982,7 +1982,7 @@ class TestTriggerAndEmail extends TestBizModel
static public function GetName() {return 'Test trigger and email';}
static public function GetDescription() {return 'Create a trigger and an email, then activates the trigger';}
static public function GetConfigFile() {return '../config-itop.php';}
static public function GetConfigFile() {return '/config-itop.php';}
protected function CreateEmailSpec($oTrigger, $sStatus, $sTo, $sCC, $sTesterEmail)
{
@@ -2113,6 +2113,29 @@ class TestTriggerAndEmail extends TestBizModel
}
}
class TestDBProperties extends TestBizModel
{
static public function GetName()
{
return 'Itop - DB Properties';
}
static public function GetDescription()
{
return 'Write and read a dummy property';
}
static public function GetConfigFile() {return '/config-itop.php';}
protected function DoExecute()
{
$sName = 'test';
DBProperty::SetProperty($sName, 'unix time:'.time(), 'means nothing', 'done with the automated test utility');
$sValue = DBProperty::GetProperty($sName);
echo "<p>Write... then read property <b>$sName</b>, found: '$sValue'</p>\n";
}
}
class TestCreateObjects extends TestBizModel
{
static public function GetName()
@@ -2125,7 +2148,7 @@ class TestCreateObjects extends TestBizModel
return 'Create weird objects (reproduce a bug?)';
}
static public function GetConfigFile() {return '../config-itop.php';}
static public function GetConfigFile() {return '/config-itop.php';}
protected function DoExecute()
{

View File

@@ -29,10 +29,11 @@
* 'file' string Name of the file to load
*/
define('SAFE_MINIMUM_MEMORY', 256*1024*1024);
require_once('../application/utils.inc.php');
require_once("../application/nicewebpage.class.inc.php");
require_once('../approot.inc.php');
require_once(APPROOT.'/application/utils.inc.php');
require_once(APPROOT."/application/nicewebpage.class.inc.php");
// required because the class xmldataloader is reporting errors in the setup.log file
require_once('../setup/setuppage.class.inc.php');
require_once(APPROOT.'/setup/setuppage.class.inc.php');
function SetMemoryLimit($oP)
@@ -71,13 +72,13 @@ function SetMemoryLimit($oP)
//
////////////////////////////////////////////////////////////////////////////////
require_once('../core/config.class.inc.php');
require_once('../core/log.class.inc.php');
require_once('../core/kpi.class.inc.php');
require_once('../core/cmdbsource.class.inc.php');
require_once('../setup/xmldataloader.class.inc.php');
require_once(APPROOT.'/core/config.class.inc.php');
require_once(APPROOT.'/core/log.class.inc.php');
require_once(APPROOT.'/core/kpi.class.inc.php');
require_once(APPROOT.'/core/cmdbsource.class.inc.php');
require_once(APPROOT.'/setup/xmldataloader.class.inc.php');
define('FINAL_CONFIG_FILE', '../config-itop.php');
define('FINAL_CONFIG_FILE', APPROOT.'/config-itop.php');
// Never cache this page
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1

View File

@@ -23,9 +23,10 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/startup.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$oMyChange = new CMDBChange();

View File

@@ -50,8 +50,9 @@ define('DEFAULT_SUBSERVICE_ID', 12);
define('DEFAULT_PRODUCT', 'Request via eMail');
define('DEFAULT_WORKGROUP_ID', 5);
require_once('../application/application.inc.php');
require_once('../application/startup.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
function GetSender($aHeaders)
{

View File

@@ -23,14 +23,15 @@
* @license http://www.opensource.org/licenses/gpl-3.0.html LGPL
*/
require_once('../application/application.inc.php');
require_once('../application/nicewebpage.class.inc.php');
require_once('../application/csvpage.class.inc.php');
require_once('../application/xmlpage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/nicewebpage.class.inc.php');
require_once(APPROOT.'/application/csvpage.class.inc.php');
require_once(APPROOT.'/application/xmlpage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$sOperation = utils::ReadParam('operation', 'menu');

View File

@@ -33,12 +33,13 @@
// - not outputing xml when a wrong input is given (class, attribute names)
//
require_once('../application/application.inc.php');
require_once('../application/webpage.class.inc.php');
require_once('../application/csvpage.class.inc.php');
require_once('../application/clipage.class.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/webpage.class.inc.php');
require_once(APPROOT.'/application/csvpage.class.inc.php');
require_once(APPROOT.'/application/clipage.class.inc.php');
require_once('../application/startup.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
class BulkLoadException extends Exception
{
@@ -230,7 +231,7 @@ if (utils::IsModeCLI())
else
{
$_SESSION['login_mode'] = 'basic';
require_once('../application/loginwebpage.class.inc.php');
require_once(APPROOT.'/application/loginwebpage.class.inc.php');
LoginWebPage::DoLogin(); // Check user rights and prompt if needed
$oP = new CSVPage("iTop - Bulk import");

View File

@@ -26,8 +26,9 @@
// Important note: if some required includes are missing, this might result
// in the error "looks like we got no XML document"...
require_once('../application/application.inc.php');
require_once('../application/startup.inc.php');
require_once('../approot.inc.php');
require_once(APPROOT.'/application/application.inc.php');
require_once(APPROOT.'/application/startup.inc.php');
require('./webservices.class.inc.php');

View File

@@ -24,7 +24,7 @@
*/
require_once('../webservices/itopsoaptypes.class.inc.php');
require_once(APPROOT.'/webservices/itopsoaptypes.class.inc.php');
/**
* Generic response of iTop SOAP services