@@ -15,6 +15,8 @@ Tag="calendar-check-o"
1515 */
1616?>
1717<?
18+ $mode = ['Disabled','Hourly','Daily','Weekly','Monthly'];
19+ $days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
1820$setup = true;
1921if (!$pool_devices) {
2022 echo "<p class='notice'>"._('No Cache device present')."!</p>";
@@ -23,11 +25,13 @@ if (!$pool_devices) {
2325 echo "<p class='notice'>"._('User shares not enabled')."!</p>";
2426 $setup = false;
2527}
26- $cron = explode(' ',$var['shareMoverSchedule']);
27- $move = $cron[2]!='*' ? 3 : ($cron[4]!='*' ? 2 : (substr($cron[1],0,1)!='*' ? 1 : 0));
28- $mode = ['Hourly','Daily','Weekly','Monthly'];
29- $days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
30-
28+ if (empty($var['shareMoverSchedule'])) {
29+ $cron = explode(' ', "* * * * *");
30+ $move = 0;
31+ } else {
32+ $cron = explode(' ', $var['shareMoverSchedule']);
33+ $move = $cron[2]!='*' ? 4 : ($cron[4]!='*' ? 3 : (substr($cron[1],0,1)!='*' ? 2 : 1));
34+ }
3135$showMoverButton = $setup && $pool_devices;
3236$moverRunning = file_exists('/var/run/mover.pid');
3337?>
@@ -37,27 +41,33 @@ $(function() {
3741 presetMover(document.mover_schedule);
3842});
3943<? endif; ?>
44+ function presetMover(form) {
45+ var mode = form.shareMoverSchedule.value;
46+ form.min.disabled = mode==0;
47+ form.day.disabled = mode==0 || mode!=3;
48+ form.dotm.disabled = mode==0 || mode!=4;
49+ form.hour1.disabled = mode==0;
50+ form.hour2.disabled = mode==0;
51+ form.day.value = form.day.disabled ? '*' : (form.day.value=='*' ? 0 : form.day.value);
52+ form.dotm.value = form.dotm.disabled ? '*' : (form.dotm.value=='*' ? 1 : form.dotm.value);
53+ if (mode==1) {$('#H1').hide(); $('#H2').show();} else {$('#H2').hide(); $('#H1').show();}
54+ }
4055// Fool Unraid by simulating the original input field
4156function prepareMover(form) {
4257 var mode = form.shareMoverSchedule.value;
43- var min = mode!=0 ? form.min.value : 0;
44- var hour = mode!=0 ? form.hour1.value : form.hour2.value;
45- form.shareMoverSchedule.options[mode].value = min+' '+hour+' '+form.dotm.value+' * '+form.day.value;
58+ if (mode == 0)
59+ form.shareMoverSchedule.options[mode].value = '';
60+ else {
61+ var hour = mode!=1 ? form.hour1.value : form.hour2.value;
62+ var min = mode!=1 ? form.min.value : 0;
63+ form.shareMoverSchedule.options[mode].value = min+' '+hour+' '+form.dotm.value+' * '+form.day.value;
64+ }
4665 form.min.disabled = true;
4766 form.hour1.disabled = true;
4867 form.hour2.disabled = true;
4968 form.dotm.disabled = true;
5069 form.day.disabled = true;
5170}
52- function presetMover(form) {
53- var mode = form.shareMoverSchedule.value;
54- form.min.disabled = false;
55- form.day.disabled = mode!=2;
56- form.dotm.disabled = mode!=3;
57- form.day.value = form.day.disabled ? '*' : (form.day.value=='*' ? 0 : form.day.value);
58- form.dotm.value = form.dotm.disabled ? '*' : (form.dotm.value=='*' ? 1 : form.dotm.value);
59- if (mode==0) {$('#H1').hide(); $('#H2').show();} else {$('#H2').hide(); $('#H1').show();}
60- }
6171</script>
6272<form markdown="1" name="mover_schedule" method="POST" action="/update.htm" target="progressFrame" onsubmit="prepareMover(this)">
6373<?if ($setup):?>
@@ -92,7 +102,7 @@ _(Day of the month)_:
92102
93103_(Time of the day)_:
94104: <span>
95- <span id="H1"<?if ($move==0 ):?> style="display:none"<?endif;?>><select name="hour1" class="narrow">
105+ <span id="H1"<?if ($move==1 ):?> style="display:none"<?endif;?>><select name="hour1" class="narrow">
96106 <?for ($d=0; $d<=23; $d++):?>
97107 <?=mk_option($cron[1], strval($d), sprintf("%02d", $d))?>
98108 <?endfor;?>
@@ -102,7 +112,7 @@ _(Time of the day)_:
102112 <?=mk_option($cron[0], strval($d), sprintf("%02d", $d))?>
103113 <?endfor;?>
104114 </select> _(HH:MM)_</span>
105- <span id="H2"<?if ($move!=0 ):?> style="display:none"<?endif;?>><select name="hour2">
115+ <span id="H2"<?if ($move!=1 ):?> style="display:none"<?endif;?>><select name="hour2">
106116 <?=mk_option($cron[1], "*/1", _("Every hour"))?>
107117 <?=mk_option($cron[1], "*/2", _("Every 2 hours"))?>
108118 <?=mk_option($cron[1], "*/3", _("Every 3 hours"))?>
0 commit comments