From d71b3b18934e24f4ed3d7de515dfe24a855584ed Mon Sep 17 00:00:00 2001 From: bruno DA SILVA Date: Tue, 10 Sep 2019 15:44:20 +0200 Subject: [PATCH] =?UTF-8?q?N=C2=B01455=20-=20obsolescence:=20show=20hint?= =?UTF-8?q?=20in=20the=20search=20bar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- css/light-grey.css | 28 +++++++++++++-- css/light-grey.scss | 36 +++++++++++++++++-- dictionaries/en.dictionary.itop.ui.php | 3 +- dictionaries/fr.dictionary.itop.ui.php | 3 +- js/search/search_form_handler.js | 7 ++++ .../search/searchform.class.inc.php | 8 +++++ 6 files changed, 78 insertions(+), 7 deletions(-) diff --git a/css/light-grey.css b/css/light-grey.css index 77ae93da5..5f462bb29 100644 --- a/css/light-grey.css +++ b/css/light-grey.css @@ -757,7 +757,7 @@ input.dp-applied { .search_form_handler:not(.closed) .sf_title .sft_short { display: none; } -.search_form_handler:not(.closed) .sf_title .sft_hint, .search_form_handler:not(.closed) .sf_title .sft_toggler { +.search_form_handler:not(.closed) .sf_title .sft_hint, .search_form_handler:not(.closed) .sf_title .sfobs_hint, .search_form_handler:not(.closed) .sf_title .sft_toggler { margin-top: 4px; } .search_form_handler:not(.closed) .sf_title .sft_toggler { @@ -784,7 +784,7 @@ input.dp-applied { .search_form_handler.closed .sf_title .sft_long { display: none; } -.search_form_handler.closed .sf_title .sft_hint { +.search_form_handler.closed .sf_title .sft_hint, .search_form_handler.closed .sf_title .sfobs_hint { display: none; } .search_form_handler:not(.no_auto_submit) .sft_hint { @@ -796,6 +796,18 @@ input.dp-applied { .search_form_handler.no_auto_submit .sfc_fg_search { display: none; } +.search_form_handler.no_auto_submit .sft_hint { + display: inline-block; +} +.search_form_handler:not(.hide_obsolete_data) .sfobs_hint { + display: none; +} +.search_form_handler.hide_obsolete_data .sfobs_hint { + display: inline-block; +} +.search_form_handler.hide_obsolete_data.no_auto_submit .sfobs_hint { + margin-left: 30px; +} .search_form_handler .sf_title { transition: opacity 0.3s, background-color 0.3s, color 0.3s linear; padding: 8px 10px; @@ -804,7 +816,7 @@ input.dp-applied { background-color: #1c94c4; cursor: pointer; } -.search_form_handler .sf_title .sft_hint { +.search_form_handler .sf_title .sft_hint, .search_form_handler .sf_title .sfobs_hint { font-size: 8pt; font-style: italic; } @@ -3189,3 +3201,13 @@ input:checked + .slider:before { font-size: 12px; margin-bottom: 0.5em; } +.clearboth { + clear: both; +} +/* font-awesome 4 to 5 BC fix */ +.pull-right { + float: right; +} +.pull-left { + float: left; +} diff --git a/css/light-grey.scss b/css/light-grey.scss index becdc0da3..90ed56611 100644 --- a/css/light-grey.scss +++ b/css/light-grey.scss @@ -855,6 +855,7 @@ input.dp-applied { } .sft_hint, + .sfobs_hint, .sft_toggler{ margin-top: 4px; } @@ -884,7 +885,8 @@ input.dp-applied { .sft_long{ display: none; } - .sft_hint{ + .sft_hint, + .sfobs_hint{ display: none; } } @@ -902,6 +904,27 @@ input.dp-applied { .sfc_fg_search{ display: none; } + .sft_hint{ + display: inline-block; + } + } + + + &:not(.hide_obsolete_data){ + .sfobs_hint{ + display: none; + } + } + &.hide_obsolete_data{ + .sfobs_hint{ + display: inline-block; + } + } + &.hide_obsolete_data.no_auto_submit{ + .sfobs_hint{ + margin-left: 30px; + } + } .sf_title{ @@ -911,7 +934,8 @@ input.dp-applied { color: #ffffff; background-color: $complement-color; cursor: pointer; - .sft_hint{ + .sft_hint, + .sfobs_hint{ font-size: 8pt; font-style: italic; } @@ -3684,3 +3708,11 @@ input:checked + .slider:before { font-size: 12px; margin-bottom: 0.5em; } + +.clearboth { + clear: both; +} + +/* font-awesome 4 to 5 BC fix */ +.pull-right { float: right; } +.pull-left { float: left; } diff --git a/dictionaries/en.dictionary.itop.ui.php b/dictionaries/en.dictionary.itop.ui.php index 68e5cbafe..0ae4eeb55 100644 --- a/dictionaries/en.dictionary.itop.ui.php +++ b/dictionaries/en.dictionary.itop.ui.php @@ -1442,7 +1442,8 @@ When associated with a trigger, each action is given an "order" number, specifyi // Search form 'UI:Search:Toggle' => 'Minimize / Expand', - 'UI:Search:AutoSubmit:DisabledHint' => 'Auto submit has been disabled for this class', + 'UI:Search:AutoSubmit:DisabledHint' => ' Auto submit has been disabled for this class', + 'UI:Search:Obsolescence:DisabledHint' => ' Due to your preferences, you don\'t see obsolete data', 'UI:Search:NoAutoSubmit:ExplainText' => 'Add some criterion on the search box or click the search button to view the objects.', 'UI:Search:Criterion:MoreMenu:AddCriteria' => 'Add new criteria', // - Add new criteria button diff --git a/dictionaries/fr.dictionary.itop.ui.php b/dictionaries/fr.dictionary.itop.ui.php index d0f6c0c5c..2baf0e055 100644 --- a/dictionaries/fr.dictionary.itop.ui.php +++ b/dictionaries/fr.dictionary.itop.ui.php @@ -1422,7 +1422,8 @@ Lors de l\'association à un déclencheur, on attribue à chaque action un numé // Search form 'UI:Search:Toggle' => 'Réduire / Ouvrir', - 'UI:Search:AutoSubmit:DisabledHint' => 'La soumission automatique a été desactivée pour cette classe', + 'UI:Search:AutoSubmit:DisabledHint' => ' La soumission automatique a été desactivée pour cette classe', + 'UI:Search:Obsolescence:DisabledHint' => ' Conformément à vos préférences utilisateur, vous ne voyez pas les données obsolètes', 'UI:Search:NoAutoSubmit:ExplainText' => 'Ajoutez des critères dans le formulaire de recherche ou cliquez sur le bouton rechercher pour voir les objets.', 'UI:Search:Criterion:MoreMenu:AddCriteria' => 'Ajouter un critère', // - Add new criteria button diff --git a/js/search/search_form_handler.js b/js/search/search_form_handler.js index dd106f5af..6d031a6b6 100644 --- a/js/search/search_form_handler.js +++ b/js/search/search_form_handler.js @@ -15,6 +15,7 @@ $(function() 'endpoint': null, 'init_opened': false, 'auto_submit': true, + 'show_obsolete_data' : true, 'search': { 'base_oql': '', 'class_name': null, @@ -325,6 +326,12 @@ $(function() { this.element.addClass('no_auto_submit'); } + // - Show obsolete data option + if(this.options.show_obsolete_data === false) + { + this.element.addClass('hide_obsolete_data'); + } + // - Message area this.elements.message_area = this.element.find('.sf_message'); this._cleanMessageArea(); diff --git a/sources/application/search/searchform.class.inc.php b/sources/application/search/searchform.class.inc.php index dd9ec489d..39c384395 100644 --- a/sources/application/search/searchform.class.inc.php +++ b/sources/application/search/searchform.class.inc.php @@ -171,7 +171,12 @@ class SearchForm $sHtml .= "
\n"; // Don't use $_SERVER['SCRIPT_NAME'] since the form may be called asynchronously (from ajax.php) $sHtml .= "

" . Dict::Format('UI:SearchFor_Class_Objects', $sClassesCombo) . "" . Dict::S('UI:SearchToggle') . ""; $sHtml .= ""; + $sHtml .= ""; + $sHtml .= "" . Dict::S('UI:Search:Obsolescence:DisabledHint') . ""; + $sHtml .= "
"; $sHtml .= "" . Dict::S('UI:Search:AutoSubmit:DisabledHint') . ""; + $sHtml .= "
"; + $sHtml .= "
"; $sHtml .= "

\n"; $sHtml .= "
\n"; $sHtml .= "
\n
\n"; @@ -247,6 +252,8 @@ class SearchForm $sDateFormat = substr($sDateTimeFormat, 0, $iDateTimeSeparatorPos); $sTimeFormat = substr($sDateTimeFormat, $iDateTimeSeparatorPos + 1); + $bShowObsoleteData = \appUserPreferences::GetPref('show_obsolete_data', MetaModel::GetConfig()->Get('obsolescence.show_obsolete_data'));// ? What to do when true == utils::IsArchiveMode() + $aSearchParams = array( 'criterion_outer_selector' => "#fs_{$sSearchFormId}_criterion_outer", 'result_list_outer_selector' => "#{$aExtraParams['result_list_outer_selector']}", @@ -255,6 +262,7 @@ class SearchForm 'init_opened' => $bOpen, 'auto_submit' => $bAutoSubmit, 'list_params' => $aListParams, + 'show_obsolete_data' => $bShowObsoleteData, 'search' => array( 'has_hidden_criteria' => (array_key_exists('hidden_criteria', $aListParams) && !empty($aListParams['hidden_criteria'])), 'fields' => $aFields,