added setting to automatically load parsed markdown.

This commit is contained in:
DESKTOP-GENO133\IvanPlex
2024-01-30 08:16:28 -07:00
parent 55cc2819d0
commit ccd446f299
16 changed files with 68 additions and 5 deletions

View File

@@ -94,6 +94,7 @@ namespace CarCareTracker.Helper
EnableAuth = bool.Parse(_config[nameof(UserConfig.EnableAuth)]), EnableAuth = bool.Parse(_config[nameof(UserConfig.EnableAuth)]),
HideZero = bool.Parse(_config[nameof(UserConfig.HideZero)]), HideZero = bool.Parse(_config[nameof(UserConfig.HideZero)]),
UseUKMPG = bool.Parse(_config[nameof(UserConfig.UseUKMPG)]), UseUKMPG = bool.Parse(_config[nameof(UserConfig.UseUKMPG)]),
UseMarkDownOnSavedNotes = bool.Parse(_config[nameof(UserConfig.UseMarkDownOnSavedNotes)]),
UseThreeDecimalGasCost = bool.Parse(_config[nameof(UserConfig.UseThreeDecimalGasCost)]), UseThreeDecimalGasCost = bool.Parse(_config[nameof(UserConfig.UseThreeDecimalGasCost)]),
EnableAutoReminderRefresh = bool.Parse(_config[nameof(UserConfig.EnableAutoReminderRefresh)]), EnableAutoReminderRefresh = bool.Parse(_config[nameof(UserConfig.EnableAutoReminderRefresh)]),
EnableAutoOdometerInsert = bool.Parse(_config[nameof(UserConfig.EnableAutoOdometerInsert)]), EnableAutoOdometerInsert = bool.Parse(_config[nameof(UserConfig.EnableAutoOdometerInsert)]),

View File

@@ -10,6 +10,7 @@
public bool HideZero { get; set; } public bool HideZero { get; set; }
public bool UseUKMPG {get;set;} public bool UseUKMPG {get;set;}
public bool UseThreeDecimalGasCost { get; set; } public bool UseThreeDecimalGasCost { get; set; }
public bool UseMarkDownOnSavedNotes { get; set; }
public bool EnableAutoReminderRefresh { get; set; } public bool EnableAutoReminderRefresh { get; set; }
public bool EnableAutoOdometerInsert { get; set; } public bool EnableAutoOdometerInsert { get; set; }
public string UserNameHash { get; set; } public string UserNameHash { get; set; }

View File

@@ -35,6 +35,10 @@
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="useThreeDecimal" checked="@Model.UseThreeDecimalGasCost"> <input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="useThreeDecimal" checked="@Model.UseThreeDecimalGasCost">
<label class="form-check-label" for="useThreeDecimal">Use Three Decimals For Fuel Cost</label> <label class="form-check-label" for="useThreeDecimal">Use Three Decimals For Fuel Cost</label>
</div> </div>
<div class="form-check form-switch">
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="useMarkDownOnSavedNotes" checked="@Model.UseMarkDownOnSavedNotes">
<label class="form-check-label" for="useMarkDownOnSavedNotes">Display Saved Notes in Markdown</label>
</div>
<div class="form-check form-switch"> <div class="form-check form-switch">
<input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="enableAutoReminderRefresh" checked="@Model.EnableAutoReminderRefresh"> <input class="form-check-input" onChange="updateSettings()" type="checkbox" role="switch" id="enableAutoReminderRefresh" checked="@Model.EnableAutoReminderRefresh">
<label class="form-check-label" for="enableAutoReminderRefresh">Auto Refresh Lapsed Recurring Reminders</label> <label class="form-check-label" for="enableAutoReminderRefresh">Auto Refresh Lapsed Recurring Reminders</label>
@@ -212,6 +216,7 @@
hideZero: $("#hideZero").is(":checked"), hideZero: $("#hideZero").is(":checked"),
useUKMpg: $("#useUKMPG").is(":checked"), useUKMpg: $("#useUKMPG").is(":checked"),
useThreeDecimalGasCost: $("#useThreeDecimal").is(":checked"), useThreeDecimalGasCost: $("#useThreeDecimal").is(":checked"),
useMarkDownOnSavedNotes: $("#useMarkDownOnSavedNotes").is(":checked"),
enableAutoReminderRefresh: $("#enableAutoReminderRefresh").is(":checked"), enableAutoReminderRefresh: $("#enableAutoReminderRefresh").is(":checked"),
enableAutoOdometerInsert: $("#enableAutoOdometerInsert").is(":checked"), enableAutoOdometerInsert: $("#enableAutoOdometerInsert").is(":checked"),
visibleTabs: visibleTabs, visibleTabs: visibleTabs,

View File

@@ -5,6 +5,7 @@
var userConfig = config.GetUserConfig(User); var userConfig = config.GetUserConfig(User);
var useDarkMode = userConfig.UseDarkMode; var useDarkMode = userConfig.UseDarkMode;
var enableCsvImports = userConfig.EnableCsvImports; var enableCsvImports = userConfig.EnableCsvImports;
var useMarkDown = userConfig.UseMarkDownOnSavedNotes;
var shortDatePattern = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern; var shortDatePattern = System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern;
var numberFormat = System.Globalization.CultureInfo.CurrentCulture.NumberFormat; var numberFormat = System.Globalization.CultureInfo.CurrentCulture.NumberFormat;
shortDatePattern = shortDatePattern.ToLower(); shortDatePattern = shortDatePattern.ToLower();
@@ -47,7 +48,8 @@
function getGlobalConfig() { function getGlobalConfig() {
return { return {
useDarkMode : "@useDarkMode" == "True", useDarkMode : "@useDarkMode" == "True",
enableCsvImport : "@enableCsvImports" == "True" enableCsvImport : "@enableCsvImports" == "True",
useMarkDown: "@useMarkDown" == "True"
} }
} }
function getShortDatePattern() { function getShortDatePattern() {

View File

@@ -16,6 +16,7 @@
"EnableAutoOdometerInsert": false, "EnableAutoOdometerInsert": false,
"UseUKMPG": false, "UseUKMPG": false,
"UseThreeDecimalGasCost": true, "UseThreeDecimalGasCost": true,
"UseMarkDownOnSavedNotes": false,
"VisibleTabs": [ 0, 1, 4, 2, 3, 6, 5, 8 ], "VisibleTabs": [ 0, 1, 4, 2, 3, 6, 5, 8 ],
"DefaultTab": 8, "DefaultTab": 8,
"UserNameHash": "", "UserNameHash": "",

View File

@@ -15,6 +15,11 @@ function showEditCollisionRecordModal(collisionRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#collisionRecordDate')); initDatePicker($('#collisionRecordDate'));
$('#collisionRecordModal').modal('show'); $('#collisionRecordModal').modal('show');
$('#collisionRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("collisionRecordNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditGasRecordModal(gasRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#gasRecordDate')); initDatePicker($('#gasRecordDate'));
$('#gasRecordModal').modal('show'); $('#gasRecordModal').modal('show');
$('#gasRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("gasRecordNotes");
}
});
} }
}); });
} }

View File

@@ -11,6 +11,11 @@ function showEditNoteModal(noteId) {
if (data) { if (data) {
$("#noteModalContent").html(data); $("#noteModalContent").html(data);
$('#noteModal').modal('show'); $('#noteModal').modal('show');
$('#noteModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("noteTextArea");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditOdometerRecordModal(odometerRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#odometerRecordDate')); initDatePicker($('#odometerRecordDate'));
$('#odometerRecordModal').modal('show'); $('#odometerRecordModal').modal('show');
$('#odometerRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("odometerRecordNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditPlanRecordModal(planRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#planRecordDate')); initDatePicker($('#planRecordDate'));
$('#planRecordModal').modal('show'); $('#planRecordModal').modal('show');
$('#planRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("planRecordNotes");
}
});
} }
}); });
} }

View File

@@ -4,6 +4,11 @@
$("#reminderRecordModalContent").html(data); $("#reminderRecordModalContent").html(data);
initDatePicker($('#reminderDate'), true); initDatePicker($('#reminderDate'), true);
$("#reminderRecordModal").modal("show"); $("#reminderRecordModal").modal("show");
$('#reminderRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("reminderNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditServiceRecordModal(serviceRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#serviceRecordDate')); initDatePicker($('#serviceRecordDate'));
$('#serviceRecordModal').modal('show'); $('#serviceRecordModal').modal('show');
$('#serviceRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("serviceRecordNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditSupplyRecordModal(supplyRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#supplyRecordDate')); initDatePicker($('#supplyRecordDate'));
$('#supplyRecordModal').modal('show'); $('#supplyRecordModal').modal('show');
$('#supplyRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("supplyRecordNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditTaxRecordModal(taxRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#taxRecordDate')); initDatePicker($('#taxRecordDate'));
$('#taxRecordModal').modal('show'); $('#taxRecordModal').modal('show');
$('#taxRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("taxRecordNotes");
}
});
} }
}); });
} }

View File

@@ -15,6 +15,11 @@ function showEditUpgradeRecordModal(upgradeRecordId) {
//initiate datepicker //initiate datepicker
initDatePicker($('#upgradeRecordDate')); initDatePicker($('#upgradeRecordDate'));
$('#upgradeRecordModal').modal('show'); $('#upgradeRecordModal').modal('show');
$('#upgradeRecordModal').off('shown.bs.modal').on('shown.bs.modal', function () {
if (getGlobalConfig().useMarkDown) {
toggleMarkDownOverlay("upgradeRecordNotes");
}
});
} }
}); });
} }

View File

@@ -415,8 +415,7 @@ function moveRecord(recordId, source, dest) {
} }
}); });
} }
function showLinks(e) { function toggleMarkDownOverlay(textAreaName) {
var textAreaName = $(e.parentElement).attr("for");
var textArea = $(`#${textAreaName}`); var textArea = $(`#${textAreaName}`);
if ($(".markdown-overlay").length > 0) { if ($(".markdown-overlay").length > 0) {
$(".markdown-overlay").remove(); $(".markdown-overlay").remove();
@@ -429,7 +428,11 @@ function showLinks(e) {
if (text.length > 0) { if (text.length > 0) {
var formatted = markdown(text); var formatted = markdown(text);
//var overlay div //var overlay div
var overlayDiv = `<div class='markdown-overlay' style="position:absolute; top:${textArea.css('top')}; left:${textArea.css('left')}; width:${textArea.css('width')}; height:${textArea.css('height')}; padding:${textArea.css('padding')}; overflow-y:auto; background-color:var(--bs-modal-bg);">${formatted}</div>`; var overlayDiv = `<div class='markdown-overlay' onclick='(e) => {event.stopPropagation();}' style="z-index: 1060; position:absolute; top:${textArea.css('top')}; left:${textArea.css('left')}; width:${textArea.css('width')}; height:${textArea.css('height')}; padding:${textArea.css('padding')}; overflow-y:auto; background-color:var(--bs-modal-bg);">${formatted}</div>`;
$(e.parentElement).append(overlayDiv); textArea.parent().children(`label[for=${textAreaName}]`).append(overlayDiv);
} }
}
function showLinks(e) {
var textAreaName = $(e.parentElement).attr("for");
toggleMarkDownOverlay(textAreaName);
} }