Skip to content

Commit 87f87dc

Browse files
author
Kristan Kenney
committed
Protect 'admin' account cron jobs from deletion/suspension
1 parent e8ba376 commit 87f87dc

File tree

2 files changed

+17
-16
lines changed

2 files changed

+17
-16
lines changed

web/templates/admin/list_cron.html

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@
22
<div class="l-sort clearfix noselect">
33
<div class="l-unit-toolbar__buttonstrip">
44
<a href="/add/cron/" id="btn-create" class="ui-button cancel" dir="ltr"><i class="fas fa-plus-circle status-icon green"></i><?=_('Add Cron Job')?></a>
5-
<?
6-
if($panel[$user]['CRON_REPORTS'] == 'yes') {
7-
echo '<a class="ui-button cancel" dir="ltr" href="/delete/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon green"></i>'._('turn off notifications').'</a>';
8-
} else {
9-
echo '<a class="ui-button cancel" dir="ltr" href="/add/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon grey"></i>'._('turn on notifications').'</a>';
10-
}
11-
?>
5+
<? if($panel[$user]['CRON_REPORTS'] == 'yes') { ?>
6+
<a class="ui-button cancel" dir="ltr" href="/delete/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon green"></i><?=_('turn off notifications')?></a>
7+
<? } else { ?>
8+
<a class="ui-button cancel" dir="ltr" href="/add/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon grey"></i><?=_('turn on notifications')?></a>
9+
<? } ?>
1210
</div>
1311
<ul class="context-menu sort-order animated fadeIn" style="display:none;">
1412
<li entity="sort-date" sort_as_int="1"><span class="name active"><?=_('Date')?> <i class="fas fa-sort-amount-down"></i></span><span class="up"><i class="fas fa-sort-amount-up"></i></span></li>
@@ -88,12 +86,16 @@
8886
<div class="clearfix l-unit__stat-col--left super-compact">
8987
<input id="check<?php echo $i ?>" class="ch-toggle" type="checkbox" name="job[]" value="<?php echo $key ?>">
9088
</div>
91-
<div class="clearfix l-unit__stat-col--left wide-5 truncate"><b><a href="/edit/cron/?job=<?=$data[$key]['JOB']?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Cron Job')?>"><?=htmlspecialchars($data[$key]['CMD'], ENT_NOQUOTES)?></a></b></div>
89+
90+
<div class="clearfix l-unit__stat-col--left wide-5 truncate"><b><a href="/edit/cron/?job=<?=$data[$key]['JOB']?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Cron Job')?>"><?=htmlspecialchars($data[$key]['CMD'], ENT_NOQUOTES)?></a></b> </div>
9291
<!-- START QUICK ACTION TOOLBAR AREA -->
9392
<div class="clearfix l-unit__stat-col--left compact-2 text-right">
9493
<div class="l-unit-toolbar__col l-unit-toolbar__col--right noselect">
9594
<div class="actions-panel clearfix">
96-
<div class="actions-panel__col actions-panel__download shortcut-enter" key-action="href"><a href="/edit/cron/?job=<?=$data[$key]['JOB']?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Cron Job')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
95+
<? if (($_SESSION['userContext'] === 'admin') && (isset($_SESSION['look'])) && ($_SESSION['look'] === 'admin')) {?>
96+
<!-- Restrict other administrators from deleting or suspending 'admin' user cron jobs -->
97+
<div class="actions-panel__col actions-panel__download shortcut-enter" key-action="href"><a href="/edit/cron/?job=<?=$data[$key]['JOB']?>&token=<?=$_SESSION['token']?>" title="<?=_('Editing Cron Job')?>"><i class="fas fa-pencil-alt status-icon orange status-icon dim"></i></a></div>
98+
<? } else { ?>
9799
<div class="actions-panel__col actions-panel__suspend shortcut-s" key-action="js">
98100
<a id="<?=$spnd_action ?>_link_<?=$i?>" class="data-controls do_<?=$spnd_action?>" title="<?=_($spnd_action)?>">
99101
<i class="fas <?=$spnd_icon?> status-icon highlight status-icon dim do_<?=$spnd_action?>"></i>
@@ -112,6 +114,7 @@
112114
</div>
113115
</a>
114116
</div>
117+
<? } ?>
115118
</div>
116119
</div>
117120
</div>

web/templates/user/list_cron.html

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@
22
<div class="l-sort clearfix noselect">
33
<div class="l-unit-toolbar__buttonstrip">
44
<a href="/add/cron/" id="btn-create" class="ui-button cancel" dir="ltr"><i class="fas fa-plus-circle status-icon green"></i><?=_('Add Cron Job')?></a>
5-
<?
6-
if($panel[$user]['CRON_REPORTS'] == 'yes') {
7-
echo '<a class="ui-button cancel" dir="ltr" href="/delete/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-bell status-icon orange"></i>'._('turn off notifications').'</a>';
8-
} else {
9-
echo '<a class="ui-button cancel" dir="ltr" href="/add/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-bell-slash status-icon orange"></i>'._('turn on notifications').'</a>';
10-
}
11-
?>
5+
<? if($panel[$user]['CRON_REPORTS'] == 'yes') { ?>
6+
<a class="ui-button cancel" dir="ltr" href="/delete/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon green"></i><?=_('turn off notifications')?></a>
7+
<? } else { ?>
8+
<a class="ui-button cancel" dir="ltr" href="/add/cron/reports/?token='.$_SESSION['token'].'"><i class="fas fa-toggle-off status-icon grey"></i><?=_('turn on notifications')?></a>
9+
<? } ?>
1210
</div>
1311
<ul class="context-menu sort-order animated fadeIn" style="display:none;">
1412
<li entity="sort-date" sort_as_int="1"><span class="name active"><?=_('Date')?> <i class="fas fa-sort-amount-down"></i></span><span class="up"><i class="fas fa-sort-amount-up"></i></span></li>

0 commit comments

Comments
 (0)