Skip to content

Commit e490117

Browse files
authored
Merge pull request #1048 from hargata/Hargata/1035
persist global search settings in localStorage.
2 parents e9eb86a + 653fd47 commit e490117

4 files changed

Lines changed: 28 additions & 5 deletions

File tree

Helper/StaticHelper.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ namespace CarCareTracker.Helper
1212
/// </summary>
1313
public static class StaticHelper
1414
{
15-
public const string VersionNumber = "1.5.0";
15+
public const string VersionNumber = "1.5.1";
1616
public const string DbName = "data/cartracker.db";
1717
public const string UserConfigPath = "data/config/userConfig.json";
1818
public const string ServerConfigPath = "data/config/serverConfig.json";

Views/Vehicle/Index.cshtml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,11 +187,11 @@
187187
<button type="button" class="btn btn-outline-secondary" onclick="performGlobalSearch()"><i class="bi bi-search"></i></button>
188188
</div>
189189
<div class="form-check form-check-inline form-switch mt-1">
190-
<input class="form-check-input" type="checkbox" role="switch" id="globalSearchAutoSearchCheck" checked>
190+
<input class="form-check-input" type="checkbox" role="switch" onchange="saveGlobalSearchSettings()" id="globalSearchAutoSearchCheck" checked>
191191
<label class="form-check-label" for="globalSearchAutoSearchCheck">@translator.Translate(userLanguage, "Incremental Search")</label>
192192
</div>
193193
<div class="form-check form-check-inline form-switch mt-1">
194-
<input class="form-check-input" type="checkbox" onChange="performGlobalSearch()" role="switch" id="globalSearchCaseSensitiveCheck" checked>
194+
<input class="form-check-input" type="checkbox" onchange="performGlobalSearch()" role="switch" id="globalSearchCaseSensitiveCheck" checked>
195195
<label class="form-check-label" for="globalSearchCaseSensitiveCheck">@translator.Translate(userLanguage, "Case Sensitive")</label>
196196
</div>
197197
<div id="globalSearchModalResults"></div>

Views/Vehicle/Plan/_PlanRecordItem.cshtml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1-
@model PlanRecord
1+
@using CarCareTracker.Helper
2+
@inject IConfigHelper config
3+
@{
4+
var userConfig = config.GetUserConfig(User);
5+
var hideZero = userConfig.HideZero;
6+
}
7+
@model PlanRecord
28
<div class="taskCard @(Model.Progress == PlanProgress.Done ? "nodrag" : "") text-dark user-select-none mt-2 mb-2" draggable="@(Model.Progress == PlanProgress.Done ? "false" : "true")" ondragstart="dragStart(event, @Model.Id)" onclick="@(Model.Progress == PlanProgress.Done ? $"deletePlanRecord({Model.Id}, true)" : $"showEditPlanRecordModal({Model.Id})")" oncontextmenu="@($"showPlanTableContextMenu(this, {Model.Id}, '{Model.Progress}')")" onmouseup="stopEvent()" ontouchstart="detectPlanItemLongTouch(this, @Model.Id, '@Model.Progress')" ontouchend="detectPlanItemTouchEndPremature(this)">
39
<div class="card-body">
410
<div class="row">
@@ -12,7 +18,7 @@
1218
}
1319
</div>
1420
<div class="col-12 col-lg-4 d-flex align-items-center">
15-
<span class="text-truncate">@Model.Cost.ToString("C2")</span>
21+
<span class="text-truncate">@(StaticHelper.HideZeroCost(Model.Cost, hideZero))</span>
1622
</div>
1723
</div>
1824
<div class="row">

wwwroot/js/vehicle.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -660,10 +660,26 @@ function getLastOdometerReadingAndIncrement(odometerFieldName) {
660660

661661
function showGlobalSearch() {
662662
$('#globalSearchModal').modal('show');
663+
restoreGlobalSearchSettings();
663664
}
664665
function hideGlobalSearch() {
665666
$('#globalSearchModal').modal('hide');
666667
}
668+
function saveGlobalSearchSettings() {
669+
let globalSearchSettings = {
670+
incrementalSearch: $('#globalSearchAutoSearchCheck').is(':checked'),
671+
caseSensitive: $('#globalSearchCaseSensitiveCheck').is(':checked')
672+
};
673+
localStorage.setItem('globalSearchSettings', JSON.stringify(globalSearchSettings));
674+
}
675+
function restoreGlobalSearchSettings() {
676+
let globalSearchSettings = localStorage.getItem('globalSearchSettings');
677+
if (globalSearchSettings != null) {
678+
let parsedGlobalSearchSettings = JSON.parse(globalSearchSettings);
679+
$('#globalSearchAutoSearchCheck').attr('checked', parsedGlobalSearchSettings.incrementalSearch);
680+
$('#globalSearchCaseSensitiveCheck').attr('checked', parsedGlobalSearchSettings.caseSensitive);
681+
}
682+
}
667683
function performGlobalSearch() {
668684
var searchQuery = $('#globalSearchInput').val();
669685
if (searchQuery.trim() == '') {
@@ -672,6 +688,7 @@ function performGlobalSearch() {
672688
$('#globalSearchInput').removeClass('is-invalid');
673689
}
674690
let caseSensitiveSearch = $("#globalSearchCaseSensitiveCheck").is(':checked');
691+
saveGlobalSearchSettings();
675692
$.post('/Vehicle/SearchRecords', { vehicleId: GetVehicleId().vehicleId, searchQuery: searchQuery, caseSensitive: caseSensitiveSearch }, function (data) {
676693
$('#globalSearchModalResults').html(data);
677694
});

0 commit comments

Comments
 (0)