From 54f81153f373f65d757bd2b87144bfac45160e30 Mon Sep 17 00:00:00 2001 From: Denis Flaven Date: Fri, 27 Jul 2012 10:06:07 +0000 Subject: [PATCH] The "Preferences" pages now allows a user to: - change her/his favorite language - set a global default for the length of all lists, overriding the system-wide configuration. SVN:trunk[2138] --- application/cmdbabstract.class.inc.php | 10 +++------- application/datatable.class.inc.php | 5 ++--- application/itopwebpage.class.inc.php | 4 +++- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/application/cmdbabstract.class.inc.php b/application/cmdbabstract.class.inc.php index 555ba51f8..1fb9fc55e 100644 --- a/application/cmdbabstract.class.inc.php +++ b/application/cmdbabstract.class.inc.php @@ -761,7 +761,7 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay if ($bDisplayLimit) { - $iDefaultPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); //TODO use user's prefs instead if any + $iDefaultPageSize = appUserPreferences::GetPref('default_page_size', MetaModel::GetConfig()->GetMinDisplayLimit()); $oSettings->iDefaultPageSize = $iDefaultPageSize; } @@ -848,9 +848,7 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay // Removed from the display list unset($aList[$sAlias][$index]); } - } - $iDefaultPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); - + } } // Load only the requested columns $aAttToLoad = array(); // attributes to load @@ -863,8 +861,6 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay } $oSet->OptimizeColumnLoad($aAttToLoad); - $iDefaultPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); - $iPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); $sSelectMode = 'none'; $sClassAlias = $oSet->GetClassAlias(); @@ -875,7 +871,7 @@ abstract class cmdbAbstractObject extends CMDBObject implements iDisplay $bDisplayLimit = isset($aExtraParams['display_limit']) ? $aExtraParams['display_limit'] : true; if ($bDisplayLimit) { - $iDefaultPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); //TODO use user's prefs instead if any + $iDefaultPageSize = appUserPreferences::GetPref('default_page_size', MetaModel::GetConfig()->GetMinDisplayLimit()); $oSettings->iDefaultPageSize = $iDefaultPageSize; } diff --git a/application/datatable.class.inc.php b/application/datatable.class.inc.php index 899716ae0..1bdd06966 100644 --- a/application/datatable.class.inc.php +++ b/application/datatable.class.inc.php @@ -102,7 +102,7 @@ class DataTable $sHtml .= "$sPager$sToolkitMenu\n"; $sHtml .= "$sDataTable\n"; $sHtml .= "\n"; - $sHtml .= $sConfigDlg; + $oPage->add_at_the_end($sConfigDlg); $aOptions = array( 'sPersistentId' => '', @@ -618,8 +618,7 @@ class DataTableSettings implements Serializable if ($aFieldData) $aColumns[$sAlias][$sAttCode] = $aFieldData; } } - // TODO retrieve the user default page size or the system wide setting - $iDefaultPageSize = MetaModel::GetConfig()->GetMinDisplayLimit(); + $iDefaultPageSize = appUserPreferences::GetPref('default_page_size', MetaModel::GetConfig()->GetMinDisplayLimit()); $oSettings->Init($iDefaultPageSize, $aSortOrder, $aColumns); return $oSettings; } diff --git a/application/itopwebpage.class.inc.php b/application/itopwebpage.class.inc.php index 1ba34c979..8adbcfbe5 100644 --- a/application/itopwebpage.class.inc.php +++ b/application/itopwebpage.class.inc.php @@ -647,6 +647,8 @@ EOF if ($this->GetOutputFormat() == 'html') { + $oAppContext = new ApplicationContext(); + $sUserName = UserRights::GetUser(); $sIsAdmin = UserRights::IsAdministrator() ? '(Administrator)' : ''; if (UserRights::IsAdministrator()) @@ -659,7 +661,7 @@ EOF } $sLogOffMenu = "