mirror of
https://github.com/eworm-de/routeros-scripts.git
synced 2026-08-01 06:01:35 +00:00
Compare commits
5 commits
0a97bd14d0
...
2a5da14d80
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2a5da14d80 | ||
|
|
230d3421d3 | ||
|
|
ba584e23a7 | ||
|
|
162dfbd8b6 | ||
|
|
1867c110c4 |
2 changed files with 15 additions and 12 deletions
|
|
@ -1336,14 +1336,6 @@
|
||||||
:local ScriptInfo [ $ParseKeyValueStore ($ScriptVal->"comment") ];
|
:local ScriptInfo [ $ParseKeyValueStore ($ScriptVal->"comment") ];
|
||||||
:local SourceNew;
|
:local SourceNew;
|
||||||
|
|
||||||
:foreach Scheduler in=[ /system/scheduler/find where on-event~("\\b" . $ScriptVal->"name" . "\\b") ] do={
|
|
||||||
:local SchedulerVal [ /system/scheduler/get $Scheduler ];
|
|
||||||
:if ($ScriptVal->"policy" != $SchedulerVal->"policy") do={
|
|
||||||
$LogPrint warning $0 ("Policies differ for script '" . $ScriptVal->"name" . \
|
|
||||||
"' and its scheduler '" . $SchedulerVal->"name" . "'!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
:do {
|
:do {
|
||||||
:if ($ScriptInfo->"ignore" = true) do={
|
:if ($ScriptInfo->"ignore" = true) do={
|
||||||
$LogPrint debug $0 ("Ignoring script '" . $ScriptVal->"name" . "', as requested.");
|
$LogPrint debug $0 ("Ignoring script '" . $ScriptVal->"name" . "', as requested.");
|
||||||
|
|
@ -1434,12 +1426,22 @@
|
||||||
:error false;
|
:error false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
:local ReqPolicy [ $ParseKeyValueStore [ $Grep $SourceNew ("\23 requires policy, ") ] ];
|
||||||
|
:if ([ :len ($ReqPolicy->"policy") ] > 0) do={
|
||||||
|
:set ($ScriptVal->"policy") [ :toarray delimiter=";" ($ReqPolicy->"policy") ];
|
||||||
|
$LogPrint debug $0 ("New policy for script '" . $ScriptVal->"name" . \
|
||||||
|
"': " . ($ReqPolicy->"policy"));
|
||||||
|
}
|
||||||
|
:if ([ :len ($ReqPolicy->"dont-require-permissions") ] > 0) do={
|
||||||
|
:set ($ScriptVal->"dont-require-permissions") ($ReqPolicy->"dont-require-permissions");
|
||||||
|
$LogPrint debug $0 ("Setting dont-require-permissions for script '" . $ScriptVal->"name" . "'.");
|
||||||
|
}
|
||||||
|
|
||||||
$LogPrint info $0 ("Updating script: " . $ScriptVal->"name");
|
$LogPrint info $0 ("Updating script: " . $ScriptVal->"name");
|
||||||
/system/script/set owner=($ScriptVal->"name") \
|
/system/script/set owner=($ScriptVal->"name") policy=($ScriptVal->"policy") \
|
||||||
|
dont-require-permissions=($ScriptVal->"dont-require-permissions") \
|
||||||
source=[ $IfThenElse ($ScriptUpdatesCRLF = true) $SourceCRLF $SourceNew ] $Script;
|
source=[ $IfThenElse ($ScriptUpdatesCRLF = true) $SourceCRLF $SourceNew ] $Script;
|
||||||
:if ($ScriptVal->"name" = "global-config" || \
|
:if ($ScriptVal->"name" ~ ("^(global-config|global-functions(\\.d/.+)?|mod/.+)\$")) do={
|
||||||
$ScriptVal->"name" = "global-functions" || \
|
|
||||||
$ScriptVal->"name" ~ ("^(global-functions\\.d|mod)/.")) do={
|
|
||||||
:set ReloadGlobal true;
|
:set ReloadGlobal true;
|
||||||
}
|
}
|
||||||
} on-error={ }
|
} on-error={ }
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
#
|
#
|
||||||
# requires RouterOS, version=7.21
|
# requires RouterOS, version=7.21
|
||||||
# requires device-mode, scheduler
|
# requires device-mode, scheduler
|
||||||
|
# requires policy, dont-require-permissions
|
||||||
#
|
#
|
||||||
# act on multiple mode and reset button presses
|
# act on multiple mode and reset button presses
|
||||||
# https://rsc.eworm.de/doc/mode-button.md
|
# https://rsc.eworm.de/doc/mode-button.md
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue