mirror of
https://github.com/Sebclem/hassio-nextcloud-backup.git
synced 2024-11-22 17:22:58 +01:00
🔨 Convert backup setting modal to bootstrap
This commit is contained in:
parent
7d4b796950
commit
039d01bf64
@ -2323,7 +2323,7 @@ textarea.form-control-lg {
|
|||||||
color: #b58e51;
|
color: #b58e51;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
background-color: #343a40;
|
background-color: #343a40;
|
||||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
|
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23b58e51' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: right 0.75rem center;
|
background-position: right 0.75rem center;
|
||||||
background-size: 16px 12px;
|
background-size: 16px 12px;
|
||||||
@ -2732,7 +2732,7 @@ textarea.form-control-lg {
|
|||||||
.was-validated .form-select:valid, .form-select.is-valid {
|
.was-validated .form-select:valid, .form-select.is-valid {
|
||||||
border-color: #198754;
|
border-color: #198754;
|
||||||
padding-right: calc(0.75em + 2.3125rem);
|
padding-right: calc(0.75em + 2.3125rem);
|
||||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
|
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23b58e51' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
|
||||||
background-position: right 0.75rem center, center right 1.75rem;
|
background-position: right 0.75rem center, center right 1.75rem;
|
||||||
background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
||||||
}
|
}
|
||||||
@ -2808,7 +2808,7 @@ textarea.form-control-lg {
|
|||||||
.was-validated .form-select:invalid, .form-select.is-invalid {
|
.was-validated .form-select:invalid, .form-select.is-invalid {
|
||||||
border-color: #dc3545;
|
border-color: #dc3545;
|
||||||
padding-right: calc(0.75em + 2.3125rem);
|
padding-right: calc(0.75em + 2.3125rem);
|
||||||
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
|
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23b58e51' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
|
||||||
background-position: right 0.75rem center, center right 1.75rem;
|
background-position: right 0.75rem center, center right 1.75rem;
|
||||||
background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
|
||||||
}
|
}
|
||||||
@ -10668,4 +10668,8 @@ textarea.form-control-lg {
|
|||||||
color: #b58e51;
|
color: #b58e51;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input[type=time]::-webkit-calendar-picker-indicator {
|
||||||
|
filter: invert(63%) sepia(23%) saturate(819%) hue-rotate(358deg) brightness(88%) contrast(91%);
|
||||||
|
}
|
||||||
|
|
||||||
/*# sourceMappingURL=custom_bootstrap.css.map */
|
/*# sourceMappingURL=custom_bootstrap.css.map */
|
||||||
|
File diff suppressed because one or more lines are too long
@ -6,6 +6,7 @@ var last_auto_back = "";
|
|||||||
const default_toast_timeout = 10000;
|
const default_toast_timeout = 10000;
|
||||||
let loadingModal = null;
|
let loadingModal = null;
|
||||||
let nextcloud_setting_modal;
|
let nextcloud_setting_modal;
|
||||||
|
let backup_setting_modal;
|
||||||
document.addEventListener('DOMContentLoaded', function () {
|
document.addEventListener('DOMContentLoaded', function () {
|
||||||
$.ajaxSetup({ traditional: true });
|
$.ajaxSetup({ traditional: true });
|
||||||
updateLocalSnaps();
|
updateLocalSnaps();
|
||||||
@ -15,6 +16,7 @@ document.addEventListener('DOMContentLoaded', function () {
|
|||||||
backdrop: 'static'
|
backdrop: 'static'
|
||||||
});
|
});
|
||||||
nextcloud_setting_modal = new bootstrap.Modal(document.getElementById('modal-settings-nextcloud'));
|
nextcloud_setting_modal = new bootstrap.Modal(document.getElementById('modal-settings-nextcloud'));
|
||||||
|
backup_setting_modal = new bootstrap.Modal(document.getElementById('modal-settings-backup'));
|
||||||
|
|
||||||
setInterval(update_status, 500);
|
setInterval(update_status, 500);
|
||||||
setInterval(updateLocalSnaps, 5000);
|
setInterval(updateLocalSnaps, 5000);
|
||||||
@ -171,12 +173,10 @@ function listeners() {
|
|||||||
$('#trigger-backup-settings').click(getBackupSettings);
|
$('#trigger-backup-settings').click(getBackupSettings);
|
||||||
$('#btn-backup-now').click(backupNow);
|
$('#btn-backup-now').click(backupNow);
|
||||||
$('#btn-clean-now').click(cleanNow);
|
$('#btn-clean-now').click(cleanNow);
|
||||||
|
$('#cron-drop-settings').change(updateDropVisibility);
|
||||||
|
|
||||||
|
|
||||||
$('#save-backup-settings').click(sendBackupSettings);
|
$('#save-backup-settings').click(sendBackupSettings);
|
||||||
$('#cron-drop-day-month').on('input', function () {
|
|
||||||
$('#cron-drop-day-month-read').val($(this).val());
|
|
||||||
});
|
|
||||||
|
|
||||||
$('#local-snap-keep').on('input', function () {
|
$('#local-snap-keep').on('input', function () {
|
||||||
$('#local-snap-keep-read').val($(this).val());
|
$('#local-snap-keep-read').val($(this).val());
|
||||||
@ -236,7 +236,8 @@ function sendNextcloudSettings() {
|
|||||||
.done((data) => {
|
.done((data) => {
|
||||||
console.log('Saved');
|
console.log('Saved');
|
||||||
$('#nextcloud_settings_message').parent().addClass("d-none");
|
$('#nextcloud_settings_message').parent().addClass("d-none");
|
||||||
create_toast("success", "Nextcloud settings saved !", default_toast_timeout);0
|
create_toast("success", "Nextcloud settings saved !", default_toast_timeout);
|
||||||
|
0
|
||||||
})
|
})
|
||||||
.fail((data) => {
|
.fail((data) => {
|
||||||
if (data.status == 406) {
|
if (data.status == 406) {
|
||||||
@ -334,47 +335,26 @@ function getBackupSettings() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
changeSelect('#cron-drop-settings', data.settings.cron_base);
|
$('#cron-drop-settings').val(data.settings.cron_base);
|
||||||
$('#cron-drop-settings').change(updateDropVisibility);
|
|
||||||
$('#name-template').val(data.settings.name_template);
|
$('#name-template').val(data.settings.name_template);
|
||||||
$('#name-template + label').removeClass("active");
|
|
||||||
$('#name-template + label').addClass("active");
|
|
||||||
|
|
||||||
let timepicker = document.querySelector('#timepicker');
|
|
||||||
$('#timepicker').val(data.settings.cron_hour);
|
$('#timepicker').val(data.settings.cron_hour);
|
||||||
$('#timepicker + label').removeClass("active");
|
|
||||||
$('#timepicker + label').addClass("active");
|
|
||||||
if (M.Timepicker.getInstance(timepicker) != null)
|
|
||||||
M.Timepicker.getInstance(timepicker).destroy();
|
|
||||||
M.Timepicker.init(timepicker, {
|
|
||||||
defaultTime: data.settings.cron_hour,
|
|
||||||
twelveHour: false,
|
|
||||||
container: 'body'
|
|
||||||
});
|
|
||||||
$('#cron-drop-day-month-read').val(data.settings.cron_month_day);
|
$('#cron-drop-day-month-read').val(data.settings.cron_month_day);
|
||||||
$('#cron-drop-day-month').val(data.settings.cron_month_day);
|
$('#cron-drop-day-month').val(data.settings.cron_month_day);
|
||||||
|
|
||||||
$('#cron-drop-day-month-read + label').removeClass("active");
|
|
||||||
$('#cron-drop-day-month-read + label').addClass("active");
|
|
||||||
|
|
||||||
|
$('#auto_clean_local').prop('checked', data.settings.auto_clean_local === "true");
|
||||||
$('#auto_clean_local').prop('checked', data.settings.auto_clean_local == "true");
|
|
||||||
$('#local-snap-keep').val(data.settings.auto_clean_local_keep);
|
$('#local-snap-keep').val(data.settings.auto_clean_local_keep);
|
||||||
$('#auto_clean_backup').prop('checked', data.settings.auto_clean_backup == "true");
|
$('#auto_clean_backup').prop('checked', data.settings.auto_clean_backup === "true");
|
||||||
$('#backup-snap-keep').val(data.settings.auto_clean_backup_keep);
|
$('#backup-snap-keep').val(data.settings.auto_clean_backup_keep);
|
||||||
|
|
||||||
|
$('#cron-drop-day').val(data.settings.cron_weekday);
|
||||||
$('#backup-snap-keep + label').removeClass("active");
|
|
||||||
$('#backup-snap-keep + label').addClass("active");
|
|
||||||
$('#local-snap-keep + label').removeClass("active");
|
|
||||||
$('#local-snap-keep + label').addClass("active");
|
|
||||||
|
|
||||||
changeSelect('#cron-drop-day', data.settings.cron_weekday);
|
|
||||||
let folder_html = ""
|
let folder_html = ""
|
||||||
for (let index in data.folders) {
|
for (let index in data.folders) {
|
||||||
let thisFolder = data.folders[index];
|
let thisFolder = data.folders[index];
|
||||||
let exclude = data.settings.exclude_folder.includes(thisFolder.slug);
|
let exclude = data.settings.exclude_folder.includes(thisFolder.slug);
|
||||||
folder_html += `<li><label><input type="checkbox" class="folders-box" id="${thisFolder.slug}" ${exclude ? "" : "checked=checked"}/><span>${thisFolder.name}</span></label></li>`
|
folder_html += `<li class="list-group-item"><div class="form-check"><input class="form-check-input addons-box" type="checkbox" id="${thisFolder.slug}" ${exclude ? "" : "checked"}><label class="form-label mb-0" for="${thisFolder.slug}">${thisFolder.name}</label></div></li>`
|
||||||
}
|
}
|
||||||
$("#folders-div").html(folder_html);
|
$("#folders-div").html(folder_html);
|
||||||
|
|
||||||
@ -382,12 +362,13 @@ function getBackupSettings() {
|
|||||||
for (let index in data.addonList) {
|
for (let index in data.addonList) {
|
||||||
let thisAddon = data.addonList[index];
|
let thisAddon = data.addonList[index];
|
||||||
let exclude = data.settings.exclude_addon.includes(thisAddon.slug);
|
let exclude = data.settings.exclude_addon.includes(thisAddon.slug);
|
||||||
addons_html += `<li><label><input type="checkbox" class="addons-box" id="${thisAddon.slug}" ${exclude ? "" : "checked=checked"}/><span>${thisAddon.name}</span></label></li>`
|
addons_html += `<li class="list-group-item"><div class="form-check"><input class="form-check-input addons-box" type="checkbox" id="${thisAddon.slug}" ${exclude ? "" : "checked"}><label class="form-label mb-0" for="${thisAddon.slug}">${thisAddon.name}</label></div></li>`
|
||||||
}
|
}
|
||||||
$("#addons-div").html(addons_html);
|
$("#addons-div").html(addons_html);
|
||||||
updateDropVisibility();
|
updateDropVisibility();
|
||||||
loadingModal.hide();
|
loadingModal.hide();
|
||||||
M.Modal.getInstance(document.querySelector("#modal-settings-backup")).open()
|
backup_setting_modal.show();
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -398,25 +379,25 @@ function updateDropVisibility() {
|
|||||||
|
|
||||||
switch (cronBase) {
|
switch (cronBase) {
|
||||||
case "3":
|
case "3":
|
||||||
$('#timepicker').parent().parent().removeClass("hide");
|
$('#timepicker').parent().parent().removeClass("d-none");
|
||||||
$('#cron-drop-day').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day').parent().parent().addClass("d-none");
|
||||||
$('#cron-drop-day-month').parent().parent().parent().removeClass("hide");
|
$('#cron-drop-day-month').parent().parent().removeClass("d-none");
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "2":
|
case "2":
|
||||||
$('#timepicker').parent().parent().removeClass("hide");
|
$('#timepicker').parent().parent().removeClass("d-none");
|
||||||
$('#cron-drop-day').parent().parent().parent().removeClass("hide");
|
$('#cron-drop-day').parent().parent().removeClass("d-none");
|
||||||
$('#cron-drop-day-month').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day-month').parent().parent().addClass("d-none");
|
||||||
break;
|
break;
|
||||||
case "1":
|
case "1":
|
||||||
$('#timepicker').parent().parent().removeClass("hide");
|
$('#timepicker').parent().parent().removeClass("d-none");
|
||||||
$('#cron-drop-day').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day').parent().parent().addClass("d-none");
|
||||||
$('#cron-drop-day-month').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day-month').parent().parent().addClass("d-none");
|
||||||
break;
|
break;
|
||||||
case "0":
|
case "0":
|
||||||
$('#timepicker').parent().parent().addClass("hide");
|
$('#timepicker').parent().parent().addClass("d-none");
|
||||||
$('#cron-drop-day').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day').parent().parent().addClass("d-none");
|
||||||
$('#cron-drop-day-month').parent().parent().parent().addClass("hide");
|
$('#cron-drop-day-month').parent().parent().addClass("d-none");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -445,6 +426,7 @@ function sendBackupSettings() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
loadingModal.show();
|
loadingModal.show();
|
||||||
|
backup_setting_modal.hide();
|
||||||
$.post('./api/backup-settings',
|
$.post('./api/backup-settings',
|
||||||
{
|
{
|
||||||
name_template: name_template,
|
name_template: name_template,
|
||||||
@ -461,25 +443,13 @@ function sendBackupSettings() {
|
|||||||
})
|
})
|
||||||
.done(() => {
|
.done(() => {
|
||||||
create_toast("success", "Backup settings saved !", default_toast_timeout);
|
create_toast("success", "Backup settings saved !", default_toast_timeout);
|
||||||
M.Modal.getInstance(document.querySelector('#modal-settings-backup')).close();
|
|
||||||
})
|
})
|
||||||
.fail(() => {
|
.fail(() => {
|
||||||
create_toast("error", "Can't save backup settings !", default_toast_timeout);
|
create_toast("error", "Can't save backup settings !", default_toast_timeout);
|
||||||
M.toast({
|
backup_setting_modal.show();
|
||||||
html: '<i class="material-icons" style="margin-right:10px">warning</i> Can\'t save backup settings !',
|
})
|
||||||
classes: "red"
|
.always(() => {
|
||||||
});
|
loadingModal.hide();
|
||||||
}).always(() => {
|
});
|
||||||
loadingModal.hide();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
function changeSelect(selector, value) {
|
|
||||||
let selectBaseRaw = document.querySelector(selector);
|
|
||||||
|
|
||||||
if (M.FormSelect.getInstance(selectBaseRaw) != null)
|
|
||||||
M.FormSelect.getInstance(selectBaseRaw).destroy();
|
|
||||||
$(selector + ' option[selected]').removeAttr('selected');
|
|
||||||
$(selector + ' option[value=' + value + ']').attr('selected', "true");
|
|
||||||
M.FormSelect.init(selectBaseRaw, {});
|
|
||||||
}
|
}
|
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
$body-bg: #222222;
|
$body-bg: #222222;
|
||||||
$dark: #292929;
|
$dark: #292929;
|
||||||
$secondary: #343a40;
|
$secondary: #343a40;
|
||||||
@ -13,14 +12,16 @@ $input-color: $accent;
|
|||||||
$input-bg: $secondary;
|
$input-bg: $secondary;
|
||||||
$input-border-color: $secondary;
|
$input-border-color: $secondary;
|
||||||
|
|
||||||
$form-switch-color: $accent;
|
$form-select-indicator-color: $accent;
|
||||||
$form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>");
|
|
||||||
$form-check-input-border: 1px solid $accent !default;
|
$form-switch-color: $accent;
|
||||||
|
$form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>");
|
||||||
|
$form-check-input-border: 1px solid $accent !default;
|
||||||
|
|
||||||
$list-group-action-color: $accent;
|
$list-group-action-color: $accent;
|
||||||
$list-group-bg: $secondary;
|
$list-group-bg: $secondary;
|
||||||
$list-group-hover-bg: $secondary;
|
$list-group-hover-bg: $secondary;
|
||||||
$list-group-action-hover-color : #adb5bd;
|
$list-group-action-hover-color: #adb5bd;
|
||||||
|
|
||||||
$alert-bg-scale: 0%;
|
$alert-bg-scale: 0%;
|
||||||
$alert-border-scale: -10%;
|
$alert-border-scale: -10%;
|
||||||
@ -30,12 +31,18 @@ $alert-color-scale: -100%;
|
|||||||
@import "../node_modules/bootstrap/scss/bootstrap";
|
@import "../node_modules/bootstrap/scss/bootstrap";
|
||||||
|
|
||||||
|
|
||||||
.bg-accent{
|
.bg-accent {
|
||||||
background-color: $accent;
|
background-color: $accent;
|
||||||
}
|
}
|
||||||
.text-accent{
|
|
||||||
color: $accent;
|
.text-accent {
|
||||||
|
color: $accent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input[type="time"]::-webkit-calendar-picker-indicator {
|
||||||
|
filter: invert(63%) sepia(23%) saturate(819%) hue-rotate(358deg) brightness(88%) contrast(91%);
|
||||||
|
}
|
||||||
|
|
||||||
//.form-switch .form-check-input{
|
//.form-switch .form-check-input{
|
||||||
// //background-color: $white;
|
// //background-color: $white;
|
||||||
// border-color: $white;
|
// border-color: $white;
|
||||||
|
@ -11,76 +11,10 @@
|
|||||||
<link rel='stylesheet' href='./css/style.css'/>
|
<link rel='stylesheet' href='./css/style.css'/>
|
||||||
<link rel="stylesheet" href="./css/custom_bootstrap.css">
|
<link rel="stylesheet" href="./css/custom_bootstrap.css">
|
||||||
<link rel="stylesheet" href="./css/fa-all.min.css">
|
<link rel="stylesheet" href="./css/fa-all.min.css">
|
||||||
<!-- <link rel="stylesheet" href="./css/toast.min.css">-->
|
|
||||||
<!-- <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">-->
|
|
||||||
<!-- <style>-->
|
|
||||||
<!-- .modal input[disabled] {-->
|
|
||||||
<!-- color: #757575 !important;-->
|
|
||||||
<!-- border-color: #616161 !important;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .modal .input-field span.helper-text {-->
|
|
||||||
<!-- color: #9e9e9e;-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .modal div.row:last-child {-->
|
|
||||||
<!-- margin-bottom: 0;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .modal div.col:last-child {-->
|
|
||||||
<!-- margin-bottom: 0;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- @media (min-width: 601px) {-->
|
|
||||||
<!-- .header-box {-->
|
|
||||||
<!-- height: 150px;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .header-box .col {-->
|
|
||||||
<!-- height: 100%;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .header-box .col .card {-->
|
|
||||||
<!-- height: 100%;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .header-box .card-content {-->
|
|
||||||
<!-- padding-top: 10px;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .header-box .card-content h5 {-->
|
|
||||||
<!-- margin-top: 10px;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- ul.dropdown-content a:hover {-->
|
|
||||||
<!-- background-color: #101619 !important;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- ul.dropdown-content li:hover {-->
|
|
||||||
<!-- background-color: #101619 !important;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- /* change autocomplete color */-->
|
|
||||||
<!-- input:-webkit-autofill,-->
|
|
||||||
<!-- input:-webkit-autofill:hover,-->
|
|
||||||
<!-- input:-webkit-autofill:focus,-->
|
|
||||||
<!-- input:-webkit-autofill:active {-->
|
|
||||||
<!-- -webkit-box-shadow: 0 0 0 30px #263238 inset !important;-->
|
|
||||||
<!-- -webkit-text-fill-color: white !important;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- -->
|
|
||||||
<!-- .select-dropdown {-->
|
|
||||||
<!-- color: white;-->
|
|
||||||
<!-- }-->
|
|
||||||
<!-- </style>-->
|
|
||||||
|
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="">
|
<body class="">
|
||||||
<nav class="navbar navbar-dark navbar-expand-lg">
|
<nav class="navbar navbar-dark navbar-expand">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<a href="#" class="navbar-brand p-0">
|
<a href="#" class="navbar-brand p-0">
|
||||||
<img src="./images/Nextcloud_Logo.svg" height="40">
|
<img src="./images/Nextcloud_Logo.svg" height="40">
|
||||||
@ -93,13 +27,12 @@
|
|||||||
data-bs-toggle="dropdown" aria-expanded="false">
|
data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
<i class="fas fa-cogs"></i>
|
<i class="fas fa-cogs"></i>
|
||||||
</a>
|
</a>
|
||||||
<ul class="dropdown-menu dropdown-menu-dark" aria-labelledby="dropdown-settings">
|
<ul class="dropdown-menu dropdown-menu-dark dropdown-menu-end" aria-labelledby="dropdown-settings">
|
||||||
<li><a href="#modal-settings-nextcloud" id="trigger-nextcloud-settings"
|
<li><a href="#" id="trigger-nextcloud-settings"
|
||||||
class="modal-trigger dropdown-item">Nextcloud</a>
|
class="modal-trigger dropdown-item">Nextcloud</a>
|
||||||
</li>
|
</li>
|
||||||
<li><a href="#" id="trigger-backup-settings" class="dropdown-item">Backup</a></li>
|
<li><a href="#" id="trigger-backup-settings" class="dropdown-item">Backup</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,169 +1,146 @@
|
|||||||
<div id="modal-settings-backup" class="modal modal-fixed-footer blue-grey darken-4 white-text">
|
<div id="modal-settings-backup" class="modal fade">
|
||||||
<div class="modal-content">
|
<div class="modal-dialog modal-lg">
|
||||||
<div class="row" style="margin-bottom: 5px;">
|
<div class="modal-content bg-dark text-white">
|
||||||
<div class="col s12 center" >
|
<div class="modal-header border-secondary">
|
||||||
<h4>Backup Settings</h2>
|
<h5 class="modal-title" id="exampleModalLabel">Backup Settings</h5>
|
||||||
</div>
|
<button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal"
|
||||||
</div>
|
aria-label="Close"></button>
|
||||||
<div class="row" >
|
|
||||||
<div class="col s12 center divider">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="input-field col offset-xl2 xl8 offset-l1 l10 m12 s12">
|
|
||||||
<input id="name-template" type="text" class="white-text">
|
|
||||||
<label for="name-template">Backup name</label>
|
|
||||||
<span class="helper-text">You can find all available variables <a target="_blank"
|
|
||||||
href="https://github.com/Sebclem/hassio-nextcloud-backup/blob/master/naming_template.md">here</a></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="input-field col offset-xl2 xl8 offset-l1 l10 m12 s12">
|
|
||||||
<select id="cron-drop-settings">
|
|
||||||
<option value="0">Disable</option>
|
|
||||||
<option value="1">Daily</option>
|
|
||||||
<option value="2">Weekly</option>
|
|
||||||
<option value="3">Monthly</option>
|
|
||||||
</select>
|
|
||||||
<label>Auto Backup</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row hide">
|
|
||||||
<div class="input-field col offset-xl2 xl8 offset-l1 l10 m12 s12">
|
|
||||||
<input type="text" class="timepicker white-text" readonly="true" id="timepicker">
|
|
||||||
<label>Hour </label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row hide">
|
|
||||||
<div class="input-field col offset-xl2 xl8 offset-l1 l10 m12 s12">
|
|
||||||
<select id="cron-drop-day">
|
|
||||||
<option value="1">Monday</option>
|
|
||||||
<option value="2">Tuesday</option>
|
|
||||||
<option value="3">Wednesday</option>
|
|
||||||
<option value="4">Thursday</option>
|
|
||||||
<option value="5">Friday</option>
|
|
||||||
<option value="6">Saturday</option>
|
|
||||||
<option value="0">Sunday</option>
|
|
||||||
</select>
|
|
||||||
<label>Day</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row hide">
|
|
||||||
<div class="input-field col s2">
|
|
||||||
<input type="text" class="white-text" disabled readonly="true" id="cron-drop-day-month-read">
|
|
||||||
<label class="white-text active">Day of month</label>
|
|
||||||
</div>
|
|
||||||
<div class="input-field col s10">
|
|
||||||
<p class="range-field">
|
|
||||||
<input type="range" id="cron-drop-day-month" min="1" max="28" style="border: none;" />
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col offset-xl1 xl5 l6 m12 s12">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col s12 center">
|
|
||||||
<h5>Folders</h5>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="modal-body">
|
||||||
<div class="col offset-s1 s11 xl10 offset-xl2" >
|
<div class="row">
|
||||||
<ul id="folders-div">
|
<div class="col-12 col-lg-10 offset-lg-1">
|
||||||
|
<label for="name-template" class="form-label">Backup name</label>
|
||||||
</ul>
|
<input id="name-template" type="text" class="form-control" aria-describedby="help-template">
|
||||||
</div>
|
<span id="help-template" class="form-text">
|
||||||
</div>
|
You can find all available variables
|
||||||
</div>
|
<a target="_blank"
|
||||||
<div class="col xl5 l6 m12 s12" >
|
href="https://github.com/Sebclem/hassio-nextcloud-backup/blob/master/naming_template.md">
|
||||||
<div class="row">
|
here
|
||||||
<div class="col s12 center">
|
</a>
|
||||||
<h5>Addons</h5>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col offset-s1 s11 xl10 offset-xl2">
|
|
||||||
<ul id="addons-div">
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row" style="margin-bottom: 5px;">
|
|
||||||
<div class="col s12 center">
|
|
||||||
<h4>Auto Clean Settings</h2>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="col s12 center divider">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col offset-xl1 xl5 l6 m12 s12">
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
|
||||||
<div class="col s12">
|
|
||||||
<div style="color: #9e9e9e; display: inline;">Auto Clean Local Snapshots</div>
|
|
||||||
<div class="switch" style="display: inline;">
|
|
||||||
<label>
|
|
||||||
<input id="auto_clean_local" type="checkbox">
|
|
||||||
<span class="lever"></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
<div class="input-field col s12">
|
|
||||||
<input type="number" class="white-text" id="local-snap-keep">
|
|
||||||
<label class="active">Local snapshot to keep</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="col xl5 l6 m12 s12" >
|
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
|
||||||
<div class="col s12">
|
|
||||||
<div style="color: #9e9e9e; display: inline;">Auto Clean Nextcloud Snapshots</div>
|
|
||||||
<div class="switch" style="display: inline;">
|
|
||||||
<label>
|
|
||||||
<input id="auto_clean_backup" type="checkbox">
|
|
||||||
<span class="lever"></span>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
<div class="row mt-2">
|
||||||
<div class="row">
|
<div class="col-12 col-lg-10 offset-lg-1">
|
||||||
<div class="input-field col s12">
|
<label for="cron-drop-settings" class="form-label">Auto Backup</label>
|
||||||
<input type="number" class="white-text" id="backup-snap-keep">
|
<select id="cron-drop-settings" class="form-select">
|
||||||
<label class="active">Nextcloud snapshot to keep</label>
|
<option value="0">Disable</option>
|
||||||
|
<option value="1">Daily</option>
|
||||||
|
<option value="2">Weekly</option>
|
||||||
|
<option value="3">Monthly</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="row d-none mt-2">
|
||||||
|
<div class="col-12 col-lg-10 offset-lg-1">
|
||||||
|
<label for="timepicker" class="form-label">Hour </label>
|
||||||
|
<input type="time" class="form-control" id="timepicker">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row d-none mt-2">
|
||||||
|
<div class="col-12 col-lg-10 offset-lg-1">
|
||||||
|
<label for="cron-drop-day" class="form-label">Day</label>
|
||||||
|
<select id="cron-drop-day" class="form-select">
|
||||||
|
<option value="1">Monday</option>
|
||||||
|
<option value="2">Tuesday</option>
|
||||||
|
<option value="3">Wednesday</option>
|
||||||
|
<option value="4">Thursday</option>
|
||||||
|
<option value="5">Friday</option>
|
||||||
|
<option value="6">Saturday</option>
|
||||||
|
<option value="0">Sunday</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row d-none mt-2">
|
||||||
|
<div class="col-12 col-lg-10 offset-lg-1">
|
||||||
|
<label for="cron-drop-day-month" class="form-label">Day of month</label>
|
||||||
|
<input type="number" class="form-control" id="cron-drop-day-month" min="1" max="28">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mt-3">
|
||||||
|
<div class="col-12 col-lg-6">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12 text-center">
|
||||||
|
<h5>Folders</h5>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<ul id="folders-div" class="list-group">
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-12 col-lg-6">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12 text-center">
|
||||||
|
<h5>Addons</h5>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<ul id="addons-div" class="list-group">
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mt-3">
|
||||||
|
<div class="col-12 text-center">
|
||||||
|
<h4>Auto Clean Settings</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mt-3">
|
||||||
|
<div class="col-12 col-md-5 offset-md-1">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="form-check form-switch">
|
||||||
|
<input class="form-check-input" id="auto_clean_local" type="checkbox">
|
||||||
|
<label class="form-check-label" for="auto_clean_local">Auto Clean Local Snapshots</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row mt-2">
|
||||||
|
<div class="col-12">
|
||||||
|
<label for="local-snap-keep" class="form-label">Local snapshot to keep</label>
|
||||||
|
<input type="number" class="form-control" id="local-snap-keep" min="0">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="col-12 col-md-5">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<div class="form-check form-switch">
|
||||||
|
<input class="form-check-input" id="auto_clean_backup" type="checkbox">
|
||||||
|
<label class="form-check-label" for="auto_clean_backup">Auto Clean Nextcloud Snapshots</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="row mt-2">
|
||||||
|
<div class="col-12">
|
||||||
|
<label for="backup-snap-keep" class="form-label">Nextcloud snapshot to keep</label>
|
||||||
|
<input type="number" class="form-control" id="backup-snap-keep" min="0">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="modal-footer blue-grey darken-4">
|
||||||
|
<button data-bs-dismiss="modal" class="btn btn-danger"><b>Cancel</b></button>
|
||||||
<div class="row" style="margin-bottom: 10px;">
|
<button class="btn btn-success" id="save-backup-settings"><b>Save</b></button>
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="row">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<div class="modal-footer blue-grey darken-4">
|
|
||||||
<a href="#" class="modal-close waves-effect btn red"><b>Cancel</b></a>
|
|
||||||
<a href="#" class="btn green waves-effect" style="margin-left: 5px;" id="save-backup-settings"><b>Save</b></a>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
Loading…
Reference in New Issue
Block a user