mirror of
https://github.com/hargata/lubelog.git
synced 2025-12-10 18:36:38 -06:00
Merge pull request #1094 from hargata/Hargata/1093
fixed intervals for certain reminders
This commit is contained in:
commit
96291bae76
@ -151,6 +151,7 @@ namespace CarCareTracker.Controllers
|
|||||||
Mileage = result.Mileage,
|
Mileage = result.Mileage,
|
||||||
Metric = result.Metric,
|
Metric = result.Metric,
|
||||||
IsRecurring = result.IsRecurring,
|
IsRecurring = result.IsRecurring,
|
||||||
|
FixedIntervals = result.FixedIntervals,
|
||||||
UseCustomThresholds = result.UseCustomThresholds,
|
UseCustomThresholds = result.UseCustomThresholds,
|
||||||
CustomThresholds = result.CustomThresholds,
|
CustomThresholds = result.CustomThresholds,
|
||||||
ReminderMileageInterval = result.ReminderMileageInterval,
|
ReminderMileageInterval = result.ReminderMileageInterval,
|
||||||
|
|||||||
@ -16,8 +16,8 @@ namespace CarCareTracker.Helper
|
|||||||
}
|
}
|
||||||
public ReminderRecord GetUpdatedRecurringReminderRecord(ReminderRecord existingReminder, DateTime? currentDate, int? currentMileage)
|
public ReminderRecord GetUpdatedRecurringReminderRecord(ReminderRecord existingReminder, DateTime? currentDate, int? currentMileage)
|
||||||
{
|
{
|
||||||
var newDate = currentDate ?? existingReminder.Date;
|
var newDate = existingReminder.FixedIntervals ? existingReminder.Date : currentDate ?? existingReminder.Date;
|
||||||
var newMileage = currentMileage ?? existingReminder.Mileage;
|
var newMileage = existingReminder.FixedIntervals ? existingReminder.Mileage : currentMileage ?? existingReminder.Mileage;
|
||||||
if (existingReminder.Metric == ReminderMetric.Both)
|
if (existingReminder.Metric == ReminderMetric.Both)
|
||||||
{
|
{
|
||||||
if (existingReminder.ReminderMonthInterval != ReminderMonthInterval.Other)
|
if (existingReminder.ReminderMonthInterval != ReminderMonthInterval.Other)
|
||||||
|
|||||||
@ -10,6 +10,7 @@
|
|||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
public bool IsRecurring { get; set; } = false;
|
public bool IsRecurring { get; set; } = false;
|
||||||
public bool UseCustomThresholds { get; set; } = false;
|
public bool UseCustomThresholds { get; set; } = false;
|
||||||
|
public bool FixedIntervals { get; set; } = false;
|
||||||
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
||||||
public int CustomMileageInterval { get; set; } = 0;
|
public int CustomMileageInterval { get; set; } = 0;
|
||||||
public int CustomMonthInterval { get; set; } = 0;
|
public int CustomMonthInterval { get; set; } = 0;
|
||||||
|
|||||||
@ -10,6 +10,7 @@
|
|||||||
public string Notes { get; set; }
|
public string Notes { get; set; }
|
||||||
public bool IsRecurring { get; set; } = false;
|
public bool IsRecurring { get; set; } = false;
|
||||||
public bool UseCustomThresholds { get; set; } = false;
|
public bool UseCustomThresholds { get; set; } = false;
|
||||||
|
public bool FixedIntervals { get; set; } = false;
|
||||||
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
||||||
public int CustomMileageInterval { get; set; } = 0;
|
public int CustomMileageInterval { get; set; } = 0;
|
||||||
public int CustomMonthInterval { get; set; } = 0;
|
public int CustomMonthInterval { get; set; } = 0;
|
||||||
@ -29,6 +30,7 @@
|
|||||||
Description = Description,
|
Description = Description,
|
||||||
Metric = Metric,
|
Metric = Metric,
|
||||||
IsRecurring = IsRecurring,
|
IsRecurring = IsRecurring,
|
||||||
|
FixedIntervals = FixedIntervals,
|
||||||
UseCustomThresholds = UseCustomThresholds,
|
UseCustomThresholds = UseCustomThresholds,
|
||||||
CustomThresholds = CustomThresholds,
|
CustomThresholds = CustomThresholds,
|
||||||
ReminderMileageInterval = ReminderMileageInterval,
|
ReminderMileageInterval = ReminderMileageInterval,
|
||||||
|
|||||||
@ -57,9 +57,15 @@
|
|||||||
<div class="col-md-6 col-12">
|
<div class="col-md-6 col-12">
|
||||||
<label for="reminderNotes">@translator.Translate(userLanguage,"Notes(optional)")<a class="link-underline link-underline-opacity-0" onclick="showLinks(this)"><i class="bi bi-markdown ms-2"></i></a></label>
|
<label for="reminderNotes">@translator.Translate(userLanguage,"Notes(optional)")<a class="link-underline link-underline-opacity-0" onclick="showLinks(this)"><i class="bi bi-markdown ms-2"></i></a></label>
|
||||||
<textarea id="reminderNotes" class="form-control" rows="5">@Model.Notes</textarea>
|
<textarea id="reminderNotes" class="form-control" rows="5">@Model.Notes</textarea>
|
||||||
<div class="form-check form-switch">
|
<div>
|
||||||
<input class="form-check-input" type="checkbox" onChange="enableRecurring()" role="switch" id="reminderIsRecurring" checked="@Model.IsRecurring">
|
<div class="form-check form-switch form-check-inline">
|
||||||
<label class="form-check-label" for="reminderIsRecurring">@translator.Translate(userLanguage,"Is Recurring")</label>
|
<input class="form-check-input" type="checkbox" onChange="enableRecurring()" role="switch" id="reminderIsRecurring" checked="@Model.IsRecurring">
|
||||||
|
<label class="form-check-label" for="reminderIsRecurring">@translator.Translate(userLanguage, "Is Recurring")</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-check form-switch form-check-inline">
|
||||||
|
<input class="form-check-input" type="checkbox" role="switch" id="reminderFixedIntervals" checked="@Model.FixedIntervals" @(Model.IsRecurring ? "" : "disabled")>
|
||||||
|
<label class="form-check-label" for="reminderFixedIntervals">@translator.Translate(userLanguage, "Fixed Intervals")</label>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<label for="reminderRecurringMileage">@translator.Translate(userLanguage,"Odometer")</label>
|
<label for="reminderRecurringMileage">@translator.Translate(userLanguage,"Odometer")</label>
|
||||||
<select class="form-select" onchange="checkCustomMileageInterval()" id="reminderRecurringMileage" @(Model.IsRecurring && (Model.Metric == ReminderMetric.Odometer || Model.Metric == ReminderMetric.Both) ? "" : "disabled")>
|
<select class="form-select" onchange="checkCustomMileageInterval()" id="reminderRecurringMileage" @(Model.IsRecurring && (Model.Metric == ReminderMetric.Odometer || Model.Metric == ReminderMetric.Both) ? "" : "disabled")>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@ -151,6 +151,7 @@ function appendMileageToOdometer(increment) {
|
|||||||
function enableRecurring() {
|
function enableRecurring() {
|
||||||
var reminderIsRecurring = $("#reminderIsRecurring").is(":checked");
|
var reminderIsRecurring = $("#reminderIsRecurring").is(":checked");
|
||||||
if (reminderIsRecurring) {
|
if (reminderIsRecurring) {
|
||||||
|
$("#reminderFixedIntervals").attr('disabled', false);
|
||||||
//check selected metric
|
//check selected metric
|
||||||
var reminderMetric = $('#reminderOptions input:radio:checked').val();
|
var reminderMetric = $('#reminderOptions input:radio:checked').val();
|
||||||
if (reminderMetric == "Date") {
|
if (reminderMetric == "Date") {
|
||||||
@ -168,6 +169,7 @@ function enableRecurring() {
|
|||||||
} else {
|
} else {
|
||||||
$("#reminderRecurringMileage").attr('disabled', true);
|
$("#reminderRecurringMileage").attr('disabled', true);
|
||||||
$("#reminderRecurringMonth").attr('disabled', true);
|
$("#reminderRecurringMonth").attr('disabled', true);
|
||||||
|
$("#reminderFixedIntervals").attr('disabled', true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -201,6 +203,7 @@ function getAndValidateReminderRecordValues() {
|
|||||||
var reminderVeryUrgentDays = $("#reminderVeryUrgentDays").val();
|
var reminderVeryUrgentDays = $("#reminderVeryUrgentDays").val();
|
||||||
var reminderUrgentDistance = $("#reminderUrgentDistance").val();
|
var reminderUrgentDistance = $("#reminderUrgentDistance").val();
|
||||||
var reminderVeryUrgentDistance = $("#reminderVeryUrgentDistance").val();
|
var reminderVeryUrgentDistance = $("#reminderVeryUrgentDistance").val();
|
||||||
|
var reminderFixedIntervals = $("#reminderFixedIntervals").is(":checked");
|
||||||
//validation
|
//validation
|
||||||
var hasError = false;
|
var hasError = false;
|
||||||
var reminderDateIsInvalid = reminderDate.trim() == ''; //eliminates whitespace.
|
var reminderDateIsInvalid = reminderDate.trim() == ''; //eliminates whitespace.
|
||||||
@ -271,6 +274,7 @@ function getAndValidateReminderRecordValues() {
|
|||||||
notes: reminderNotes,
|
notes: reminderNotes,
|
||||||
metric: reminderOption,
|
metric: reminderOption,
|
||||||
isRecurring: reminderIsRecurring,
|
isRecurring: reminderIsRecurring,
|
||||||
|
fixedIntervals: reminderFixedIntervals,
|
||||||
useCustomThresholds: reminderUseCustomThresholds,
|
useCustomThresholds: reminderUseCustomThresholds,
|
||||||
customThresholds: {
|
customThresholds: {
|
||||||
urgentDays: reminderUrgentDays,
|
urgentDays: reminderUrgentDays,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user