From d8bb6a45b22a79ee4a488a140acf1edc15b19716 Mon Sep 17 00:00:00 2001 From: Romain Quetiez Date: Mon, 22 Nov 2010 17:53:52 +0000 Subject: [PATCH] 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] --- application/ajaxwebpage.class.inc.php | 3 +- application/application.inc.php | 14 ++-- application/applicationcontext.class.inc.php | 2 +- application/audit.category.class.inc.php | 2 +- application/audit.rule.class.inc.php | 2 +- application/clipage.class.inc.php | 2 +- application/cmdbabstract.class.inc.php | 14 ++-- application/csvpage.class.inc.php | 2 +- application/displayblock.class.inc.php | 6 +- application/iotask.class.inc.php | 2 +- application/itopwebpage.class.inc.php | 6 +- application/loginwebpage.class.inc.php | 4 +- application/menunode.class.inc.php | 4 +- application/nicewebpage.class.inc.php | 2 +- application/portalwebpage.class.inc.php | 6 +- application/startup.inc.php | 4 +- application/template.class.inc.php | 6 +- .../ui.autocompletewidget.class.inc.php | 4 +- application/ui.linkswidget.class.inc.php | 4 +- application/ui.passwordwidget.class.inc.php | 4 +- application/user.preferences.class.inc.php | 4 +- application/utils.inc.php | 6 +- application/wizardhelper.class.inc.php | 2 +- application/xmlpage.class.inc.php | 2 +- approot.inc.php | 3 + core/action.class.inc.php | 2 +- core/config.class.inc.php | 57 ++++++---------- core/metamodel.class.php | 26 +++++-- core/ormpassword.class.inc.php | 2 +- .../model.itop-config-mgmt.php | 2 - pages/UI.php | 17 ++--- pages/UniversalSearch.php | 12 ++-- pages/ajax.csvimport.php | 17 ++--- pages/ajax.render.php | 21 +++--- pages/audit.php | 13 ++-- pages/csvimport.php | 13 ++-- pages/graphviz.php | 11 +-- pages/logoff.php | 11 +-- pages/navigator.php | 13 ++-- pages/run_query.php | 9 +-- pages/schema.php | 9 +-- pages/xml.navigator.php | 15 +++-- portal/index.php | 16 ++--- setup/ajax.dataloader.php | 17 ++--- setup/email.test.php | 5 +- setup/index.php | 67 ++++++++++--------- setup/setuppage.class.inc.php | 18 +++-- setup/xmldataloader.class.inc.php | 36 +++++----- test/benchmark.php | 15 +++-- test/test.class.inc.php | 35 +++++----- test/test.php | 5 +- test/testlist.inc.php | 41 +++++++++--- webservices/backoffice.dataloader.php | 19 +++--- webservices/check_sla_for_tickets.php | 5 +- webservices/createfrommail.php | 5 +- webservices/export.php | 13 ++-- webservices/import.php | 13 ++-- webservices/soapserver.php | 5 +- webservices/webservices.class.inc.php | 2 +- 59 files changed, 369 insertions(+), 308 deletions(-) create mode 100644 approot.inc.php diff --git a/application/ajaxwebpage.class.inc.php b/application/ajaxwebpage.class.inc.php index 8b0302723..250eac496 100644 --- a/application/ajaxwebpage.class.inc.php +++ b/application/ajaxwebpage.class.inc.php @@ -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 { diff --git a/application/application.inc.php b/application/application.inc.php index 6d63f8941..88dcd7c0c 100644 --- a/application/application.inc.php +++ b/application/application.inc.php @@ -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 { diff --git a/application/applicationcontext.class.inc.php b/application/applicationcontext.class.inc.php index cac2f2025..04e43c1bb 100644 --- a/application/applicationcontext.class.inc.php +++ b/application/applicationcontext.class.inc.php @@ -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 * diff --git a/application/audit.category.class.inc.php b/application/audit.category.class.inc.php index 3da91713d..c07b2e882 100644 --- a/application/audit.category.class.inc.php +++ b/application/audit.category.class.inc.php @@ -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 { diff --git a/application/audit.rule.class.inc.php b/application/audit.rule.class.inc.php index 360d23bb5..01088f617 100644 --- a/application/audit.rule.class.inc.php +++ b/application/audit.rule.class.inc.php @@ -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 { diff --git a/application/clipage.class.inc.php b/application/clipage.class.inc.php index afeaa1694..ca9ec5e46 100644 --- a/application/clipage.class.inc.php +++ b/application/clipage.class.inc.php @@ -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 { diff --git a/application/cmdbabstract.class.inc.php b/application/cmdbabstract.class.inc.php index 21676f21f..9a7b9c2ef 100644 --- a/application/cmdbabstract.class.inc.php +++ b/application/cmdbabstract.class.inc.php @@ -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 { diff --git a/application/csvpage.class.inc.php b/application/csvpage.class.inc.php index 9ef3655ae..7ccf83782 100644 --- a/application/csvpage.class.inc.php +++ b/application/csvpage.class.inc.php @@ -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 { diff --git a/application/displayblock.class.inc.php b/application/displayblock.class.inc.php index 8daa78f48..991284f22 100644 --- a/application/displayblock.class.inc.php +++ b/application/displayblock.class.inc.php @@ -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(); diff --git a/application/iotask.class.inc.php b/application/iotask.class.inc.php index a4d8f58e5..21f002d83 100644 --- a/application/iotask.class.inc.php +++ b/application/iotask.class.inc.php @@ -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 diff --git a/application/itopwebpage.class.inc.php b/application/itopwebpage.class.inc.php index a3a3b5d91..924ab8434 100644 --- a/application/itopwebpage.class.inc.php +++ b/application/itopwebpage.class.inc.php @@ -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 */ diff --git a/application/loginwebpage.class.inc.php b/application/loginwebpage.class.inc.php index 0fb41efbf..2dfda9eb8 100644 --- a/application/loginwebpage.class.inc.php +++ b/application/loginwebpage.class.inc.php @@ -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("

".Dict::S('UI:Login:Error:AccessAdmin')."

\n"); $oP->p("".Dict::S('UI:LogOffMenu').""); diff --git a/application/menunode.class.inc.php b/application/menunode.class.inc.php index 652a3b75d..3cc59072a 100644 --- a/application/menunode.class.inc.php +++ b/application/menunode.class.inc.php @@ -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'); /** diff --git a/application/nicewebpage.class.inc.php b/application/nicewebpage.class.inc.php index 6343279db..fd9f9795a 100644 --- a/application/nicewebpage.class.inc.php +++ b/application/nicewebpage.class.inc.php @@ -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 */ diff --git a/application/portalwebpage.class.inc.php b/application/portalwebpage.class.inc.php index af270379d..233d1fe78 100644 --- a/application/portalwebpage.class.inc.php +++ b/application/portalwebpage.class.inc.php @@ -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 diff --git a/application/startup.inc.php b/application/startup.inc.php index 812ff5828..9c71599b0 100644 --- a/application/startup.inc.php +++ b/application/startup.inc.php @@ -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); diff --git a/application/template.class.inc.php b/application/template.class.inc.php index dca6d7a29..b7caf07c9 100644 --- a/application/template.class.inc.php +++ b/application/template.class.inc.php @@ -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 = '