44#
55# Original Creation Date: 2023-Oct-01 by @ExtremeFiretop.
66# Official Co-Author: @Martinski W. - Date: 2023-Nov-01
7- # Last Modified: 2025-Apr-12
7+ # Last Modified: 2025-Apr-14
88# ##################################################################
99set -u
1010
1111# # Set version for each Production Release ##
12- readonly SCRIPT_VERSION=1.4.2
12+ readonly SCRIPT_VERSION=1.4.3
1313readonly SCRIPT_NAME=" MerlinAU"
1414# # Set to "master" for Production Releases ##
15- SCRIPT_BRANCH=" master "
15+ SCRIPT_BRANCH=" dev "
1616
1717# #----------------------------------------##
1818# # Modified by Martinski W. [2024-Jul-03] ##
@@ -2830,7 +2830,7 @@ _DownloadScriptFiles_()
28302830}
28312831
28322832# #------------------------------------------##
2833- # # Modified by ExtremeFiretop [2025-Apr-08 ] ##
2833+ # # Modified by ExtremeFiretop [2025-Apr-14 ] ##
28342834# #------------------------------------------##
28352835_SCRIPT_UPDATE_ ()
28362836{
@@ -2853,10 +2853,20 @@ _SCRIPT_UPDATE_()
28532853 _SetVersionSharedSettings_ local " $DLRepoVersion "
28542854 _SetVersionSharedSettings_ server " $DLRepoVersion "
28552855 fi
2856+ if ! " $isInteractive "
2857+ then
2858+ _SendEMailNotification_ SUCCESS_SCRIPT_UPDATE_STATUS
2859+ fi
28562860 sleep 1
28572861 _ReleaseLock_
28582862 exec " $ScriptFilePath " $extraParam
28592863 exit 0
2864+ else
2865+ if ! " $isInteractive "
2866+ then
2867+ _SendEMailNotification_ FAILED_SCRIPT_UPDATE_STATUS
2868+ fi
2869+ return 1
28602870 fi
28612871 return 0
28622872 fi
@@ -2899,7 +2909,7 @@ _SCRIPT_UPDATE_()
28992909 else
29002910 printf " \n\n${GRNct} Exiting Script Update Utility...${NOct} \n"
29012911 sleep 1
2902- return
2912+ return 0
29032913 fi
29042914 elif [ " $scriptUpdateNotify " != " 0" ]
29052915 then
@@ -2926,19 +2936,19 @@ _SCRIPT_UPDATE_()
29262936 exit 0
29272937 else
29282938 _WaitForEnterKey_
2929- return
2939+ return 1
29302940 fi
29312941 else
29322942 printf " \n\n${GRNct} Exiting Script Update Utility...${NOct} \n"
29332943 sleep 1
2934- return
2944+ return 0
29352945 fi
29362946 fi
29372947}
29382948
2939- # #----------------------------------------##
2940- # # Modified by Martinski W. [2025-Mar-24 ] ##
2941- # #----------------------------------------##
2949+ # #------------------------------------------ ##
2950+ # # Modified by ExtremeFiretop [2025-Apr-14 ] ##
2951+ # #------------------------------------------ ##
29422952_CheckForNewScriptUpdates_ ()
29432953{
29442954 local verStr DLScriptVerPath=" ${SCRIPT_VERPATH} .DL.tmp"
@@ -2986,7 +2996,6 @@ _CheckForNewScriptUpdates_()
29862996 then
29872997 scriptUpdateNotify=" New script update available.
29882998${REDct} v${SCRIPT_VERSION}${NOct} --> ${GRNct} v${DLRepoVersion}${NOct} "
2989-
29902999 if [ $# -gt 0 ] && [ " $1 " = " -quietcheck" ]
29913000 then return 0
29923001 fi
@@ -3022,9 +3031,9 @@ _GetLatestFWUpdateVersionFromRouter_()
30223031 echo " $newVersionStr " ; return " $retCode "
30233032}
30243033
3025- # #------------------------------------------ ##
3026- # # Modified by ExtremeFiretop [2024-Dec-28 ] ##
3027- # #------------------------------------------ ##
3034+ # #----------------------------------------##
3035+ # # Modified by Martinski W. [2024-Apr-14 ] ##
3036+ # #----------------------------------------##
30283037_CreateEMailContent_ ()
30293038{
30303039 if [ $# -eq 0 ] || [ -z " $1 " ] ; then return 1 ; fi
@@ -3034,10 +3043,15 @@ _CreateEMailContent_()
30343043
30353044 rm -f " $tempEMailContent " " $tempEMailBodyMsg "
30363045
3046+ local subjectStrTag=" F/W Update Status"
3047+ if echo " $1 " | grep -q ' ._SCRIPT_UPDATE_.'
3048+ then subjectStrTag=" Script Update Status"
3049+ fi
30373050 if [ -s " $tempNodeEMailList " ]
3038- then subjectStr=" F/W Update Status for $node_lan_hostname "
3039- else subjectStr=" F/W Update Status for $MODEL_ID "
3051+ then subjectStr=" $subjectStrTag for $node_lan_hostname "
3052+ else subjectStr=" $subjectStrTag for $MODEL_ID "
30403053 fi
3054+
30413055 fwInstalledVersion=" $( _GetCurrentFWInstalledLongVersion_) "
30423056 if ! " $offlineUpdateTrigger "
30433057 then
@@ -3097,6 +3111,27 @@ _CreateEMailContent_()
30973111 printf " \nThe F/W version that is currently installed:\n<b>${fwInstalledVersion} </b>\n"
30983112 } > " $tempEMailBodyMsg "
30993113 ;;
3114+ SUCCESS_SCRIPT_UPDATE_STATUS)
3115+ if [ -s " $SCRIPT_VERPATH " ]
3116+ then
3117+ if verStr=" $( _GetDLScriptVersion_ " $SCRIPT_VERPATH " ) "
3118+ then
3119+ NEW_SCRIPT_VERSION=" $( echo " $verStr " | awk -F ' |' ' {print $1}' ) "
3120+ fi
3121+ fi
3122+ emailBodyTitle=" MerlinAU Script Update Installed"
3123+ {
3124+ echo " The new MerlinAU Script Update version <b>${DLRepoVersion} </b> has been successfully installed on your <b>${MODEL_ID} </b> router."
3125+ printf " \nThe currently installed script version is: <b>${NEW_SCRIPT_VERSION} </b>\n"
3126+ } > " $tempEMailBodyMsg "
3127+ ;;
3128+ FAILED_SCRIPT_UPDATE_STATUS)
3129+ emailBodyTitle=" MerlinAU Script Update Failed"
3130+ {
3131+ echo " Failed to install the new MerlinAU Script Update version <b>${DLRepoVersion} </b> on your <b>${MODEL_ID} </b> router."
3132+ printf " \nThe installed script version remains: <b>${SCRIPT_VERSION} </b>\n"
3133+ } > " $tempEMailBodyMsg "
3134+ ;;
31003135 STOP_FW_UPDATE_APPROVAL)
31013136 emailBodyTitle=" WARNING"
31023137 if " $isEMailFormatHTML "
0 commit comments