mirror of
https://github.com/hargata/lubelog.git
synced 2025-12-10 00:46:08 -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,
|
||||
Metric = result.Metric,
|
||||
IsRecurring = result.IsRecurring,
|
||||
FixedIntervals = result.FixedIntervals,
|
||||
UseCustomThresholds = result.UseCustomThresholds,
|
||||
CustomThresholds = result.CustomThresholds,
|
||||
ReminderMileageInterval = result.ReminderMileageInterval,
|
||||
|
||||
@ -16,8 +16,8 @@ namespace CarCareTracker.Helper
|
||||
}
|
||||
public ReminderRecord GetUpdatedRecurringReminderRecord(ReminderRecord existingReminder, DateTime? currentDate, int? currentMileage)
|
||||
{
|
||||
var newDate = currentDate ?? existingReminder.Date;
|
||||
var newMileage = currentMileage ?? existingReminder.Mileage;
|
||||
var newDate = existingReminder.FixedIntervals ? existingReminder.Date : currentDate ?? existingReminder.Date;
|
||||
var newMileage = existingReminder.FixedIntervals ? existingReminder.Mileage : currentMileage ?? existingReminder.Mileage;
|
||||
if (existingReminder.Metric == ReminderMetric.Both)
|
||||
{
|
||||
if (existingReminder.ReminderMonthInterval != ReminderMonthInterval.Other)
|
||||
|
||||
@ -10,6 +10,7 @@
|
||||
public string Notes { get; set; }
|
||||
public bool IsRecurring { get; set; } = false;
|
||||
public bool UseCustomThresholds { get; set; } = false;
|
||||
public bool FixedIntervals { get; set; } = false;
|
||||
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
||||
public int CustomMileageInterval { get; set; } = 0;
|
||||
public int CustomMonthInterval { get; set; } = 0;
|
||||
|
||||
@ -10,6 +10,7 @@
|
||||
public string Notes { get; set; }
|
||||
public bool IsRecurring { get; set; } = false;
|
||||
public bool UseCustomThresholds { get; set; } = false;
|
||||
public bool FixedIntervals { get; set; } = false;
|
||||
public ReminderUrgencyConfig CustomThresholds { get; set; } = new ReminderUrgencyConfig();
|
||||
public int CustomMileageInterval { get; set; } = 0;
|
||||
public int CustomMonthInterval { get; set; } = 0;
|
||||
@ -29,6 +30,7 @@
|
||||
Description = Description,
|
||||
Metric = Metric,
|
||||
IsRecurring = IsRecurring,
|
||||
FixedIntervals = FixedIntervals,
|
||||
UseCustomThresholds = UseCustomThresholds,
|
||||
CustomThresholds = CustomThresholds,
|
||||
ReminderMileageInterval = ReminderMileageInterval,
|
||||
|
||||
@ -57,9 +57,15 @@
|
||||
<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>
|
||||
<textarea id="reminderNotes" class="form-control" rows="5">@Model.Notes</textarea>
|
||||
<div class="form-check form-switch">
|
||||
<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" 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>
|
||||
<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")>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -151,6 +151,7 @@ function appendMileageToOdometer(increment) {
|
||||
function enableRecurring() {
|
||||
var reminderIsRecurring = $("#reminderIsRecurring").is(":checked");
|
||||
if (reminderIsRecurring) {
|
||||
$("#reminderFixedIntervals").attr('disabled', false);
|
||||
//check selected metric
|
||||
var reminderMetric = $('#reminderOptions input:radio:checked').val();
|
||||
if (reminderMetric == "Date") {
|
||||
@ -168,6 +169,7 @@ function enableRecurring() {
|
||||
} else {
|
||||
$("#reminderRecurringMileage").attr('disabled', true);
|
||||
$("#reminderRecurringMonth").attr('disabled', true);
|
||||
$("#reminderFixedIntervals").attr('disabled', true);
|
||||
}
|
||||
}
|
||||
|
||||
@ -201,6 +203,7 @@ function getAndValidateReminderRecordValues() {
|
||||
var reminderVeryUrgentDays = $("#reminderVeryUrgentDays").val();
|
||||
var reminderUrgentDistance = $("#reminderUrgentDistance").val();
|
||||
var reminderVeryUrgentDistance = $("#reminderVeryUrgentDistance").val();
|
||||
var reminderFixedIntervals = $("#reminderFixedIntervals").is(":checked");
|
||||
//validation
|
||||
var hasError = false;
|
||||
var reminderDateIsInvalid = reminderDate.trim() == ''; //eliminates whitespace.
|
||||
@ -271,6 +274,7 @@ function getAndValidateReminderRecordValues() {
|
||||
notes: reminderNotes,
|
||||
metric: reminderOption,
|
||||
isRecurring: reminderIsRecurring,
|
||||
fixedIntervals: reminderFixedIntervals,
|
||||
useCustomThresholds: reminderUseCustomThresholds,
|
||||
customThresholds: {
|
||||
urgentDays: reminderUrgentDays,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user