Add begin and end string to admin routes, improve extension removal.
This commit is contained in:
parent
6f734f4cca
commit
486dad1804
1 changed files with 53 additions and 2 deletions
55
blueprint.sh
55
blueprint.sh
|
@ -468,6 +468,10 @@ if [[ ( $2 == "-i" ) || ( $2 == "-install" ) ]]; then
|
||||||
fi;
|
fi;
|
||||||
ADMINCONTROLLER_NAME=$identifier"ExtensionController.php";
|
ADMINCONTROLLER_NAME=$identifier"ExtensionController.php";
|
||||||
|
|
||||||
|
cat <(echo "// Routes for $identifier") .blueprint/tmp/$n/$dashboard_wrapper > .blueprint/data/internal/build/extensions/route.php.bak;
|
||||||
|
echo -e "\n// End of routes for $identifier" >> .blueprint/data/internal/build/extensions/route.php.bak;
|
||||||
|
ADMINROUTE_RESULT=$(cat .blueprint/data/internal/build/extensions/route.php.bak);
|
||||||
|
|
||||||
mkdir resources/views/admin/extensions/$identifier;
|
mkdir resources/views/admin/extensions/$identifier;
|
||||||
touch resources/views/admin/extensions/$identifier/index.blade.php;
|
touch resources/views/admin/extensions/$identifier/index.blade.php;
|
||||||
echo $ADMINVIEW_RESULT > resources/views/admin/extensions/$identifier/index.blade.php;
|
echo $ADMINVIEW_RESULT > resources/views/admin/extensions/$identifier/index.blade.php;
|
||||||
|
@ -610,21 +614,68 @@ if [[ ( $2 == "-r" ) || ( $2 == "-remove" ) ]]; then
|
||||||
quit_red "[FATAL] Backup conf.yml could not be found.";
|
quit_red "[FATAL] Backup conf.yml could not be found.";
|
||||||
fi;
|
fi;
|
||||||
|
|
||||||
|
# Remove admin button
|
||||||
|
log_bright "[INFO] Removing admin button..";
|
||||||
|
OLDBUTTON_RESULT=$(cat .blueprint/data/extensions/$identifier/.store/build/button.blade.php);
|
||||||
|
sed -i "s~$OLDBUTTON_RESULT~~g" resources/views/admin/extensions.blade.php;
|
||||||
|
|
||||||
|
# Remove admin routes
|
||||||
|
log_bright "[INFO] Removing admin routes..";
|
||||||
|
sed -n -i "/\/\/ Routes for $identifier/{p; :a; N; /\/\/ End of routes for $identifier/!ba; s/.*\n//}; p" resources/views/templates/wrapper.blade.php;
|
||||||
|
|
||||||
# Remove admin view
|
# Remove admin view
|
||||||
|
log_bright "[INFO] Removing admin view..";
|
||||||
rm -R resources/views/admin/extensions/$identifier;
|
rm -R resources/views/admin/extensions/$identifier;
|
||||||
|
|
||||||
# Remove admin controller
|
# Remove admin controller
|
||||||
|
log_bright "[INFO] Removing admin controller..";
|
||||||
rm -R app/Http/Controllers/Admin/Extensions/$identifier;
|
rm -R app/Http/Controllers/Admin/Extensions/$identifier;
|
||||||
|
|
||||||
# Remove admin css
|
# Remove admin css
|
||||||
|
if [[ $admin_css != "" ]]; then
|
||||||
|
log_bright "[INFO] Removing admin css..";
|
||||||
|
sed -i "s~@import url(/assets/extensions/$identifier/$identifier.style.css);~~g" public/themes/pterodactyl/css/pterodactyl.css;
|
||||||
|
fi;
|
||||||
|
|
||||||
# Remove admin wrapper
|
# Remove admin wrapper
|
||||||
|
if [[ $admin_wrapper != "" ]]; then
|
||||||
|
log_bright "[INFO] Removing admin wrapper..";
|
||||||
|
sed -n -i "/<!--␀$identifier:start␀-->/{p; :a; N; /<!--␀$identifier:stop␀-->/!ba; s/.*\n//}; p" resources/views/layouts/admin.blade.php;
|
||||||
|
fi;
|
||||||
|
|
||||||
# Remove dashboard wrapper
|
# Remove dashboard wrapper
|
||||||
|
if [[ $dashboard_wrapper != "" ]]; then
|
||||||
|
log_bright "[INFO] Removing dashboard wrapper..";
|
||||||
|
sed -n -i "/<!--␀$identifier:start␀-->/{p; :a; N; /<!--␀$identifier:stop␀-->/!ba; s/.*\n//}; p" resources/views/templates/wrapper.blade.php;
|
||||||
|
fi;
|
||||||
|
|
||||||
# Remove dashboard css
|
# Remove dashboard css
|
||||||
# Remove database migrations
|
if [[ $dashboard_css != "" ]]; then
|
||||||
|
log_bright "[INFO] Removing dashboard css..";
|
||||||
|
sed -i "s~@import url(/assets/extensions/$identifier/client.style.css);~~g" resource/script/extensions.css;
|
||||||
|
fi;
|
||||||
|
|
||||||
|
# Remove database migrations (maybe)
|
||||||
|
|
||||||
# Remove public folder
|
# Remove public folder
|
||||||
rm -R public/extensions/$identifier;
|
if [[ $data_public != "" ]]; then
|
||||||
|
log_bright "[INFO] Removing public folder..";
|
||||||
|
rm -R public/extensions/$identifier;
|
||||||
|
fi;
|
||||||
|
|
||||||
# Remove assets folder
|
# Remove assets folder
|
||||||
|
log_bright "[INFO] Removing assets..";
|
||||||
rm -R public/assets/extensions/$identifier;
|
rm -R public/assets/extensions/$identifier;
|
||||||
|
|
||||||
# Remove data folder
|
# Remove data folder
|
||||||
|
log_bright "[INFO] Removing data folder..";
|
||||||
rm -R .blueprint/data/extensions/$identifier;
|
rm -R .blueprint/data/extensions/$identifier;
|
||||||
|
|
||||||
|
# Remove from installed list
|
||||||
|
log_bright "[INFO] Removing extension from installed extensions list..";
|
||||||
|
sed -i "s~$identifier,~~g" .blueprint/data/internal/db/installed_extensions;
|
||||||
|
|
||||||
|
log_green "[SUCCESS] '$identifier' has been removed from your panel. Please note that some files might be left behind.";
|
||||||
fi;
|
fi;
|
||||||
|
|
||||||
# help, -help, --help
|
# help, -help, --help
|
||||||
|
|
Loading…
Reference in a new issue