Skip to content
Snippets Groups Projects
Commit f483e4d4 authored by Bob Mottram's avatar Bob Mottram
Browse files

Remove gnusocial files associated with blocked domains or users

parent 7b236689
No related branches found
No related tags found
No related merge requests found
...@@ -368,6 +368,7 @@ function gnusocial_block_user_script { ...@@ -368,6 +368,7 @@ function gnusocial_block_user_script {
echo '' >> /usr/bin/gnusocial-delete-user echo '' >> /usr/bin/gnusocial-delete-user
echo 'database_name=$1' >> /usr/bin/gnusocial-delete-user echo 'database_name=$1' >> /usr/bin/gnusocial-delete-user
echo 'remove_user=$2' >> /usr/bin/gnusocial-delete-user echo 'remove_user=$2' >> /usr/bin/gnusocial-delete-user
echo 'domain_name=$3' >> /usr/bin/gnusocial-delete-user
echo 'MARIADB_PASSWORD=$(freedombone-pass -u root -a mariadb)' >> /usr/bin/gnusocial-delete-user echo 'MARIADB_PASSWORD=$(freedombone-pass -u root -a mariadb)' >> /usr/bin/gnusocial-delete-user
echo '' >> /usr/bin/gnusocial-delete-user echo '' >> /usr/bin/gnusocial-delete-user
echo 'if [ ${#remove_user} -lt 2 ]; then' >> /usr/bin/gnusocial-delete-user echo 'if [ ${#remove_user} -lt 2 ]; then' >> /usr/bin/gnusocial-delete-user
...@@ -407,6 +408,27 @@ function gnusocial_block_user_script { ...@@ -407,6 +408,27 @@ function gnusocial_block_user_script {
echo ' database_query="delete from reply where replied_id=${id};"' >> /usr/bin/gnusocial-delete-user echo ' database_query="delete from reply where replied_id=${id};"' >> /usr/bin/gnusocial-delete-user
echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-user echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-user
echo '' >> /usr/bin/gnusocial-delete-user echo '' >> /usr/bin/gnusocial-delete-user
echo ' if [ $domain_name ]; then' >> /usr/bin/gnusocial-delete-user
echo ' database_query="select rendered from notice where profile_id=${id} and rendered like '"'"'%/file/%'"'"';"' >> /usr/bin/gnusocial-delete-user
echo ' declare -a stored_files=$(mysql -u root --password="$MARIADB_PASSWORD" << EOF' >> /usr/bin/gnusocial-delete-user
echo 'use $database_name;' >> /usr/bin/gnusocial-delete-user
echo '$database_query' >> /usr/bin/gnusocial-delete-user
echo 'EOF' >> /usr/bin/gnusocial-delete-user
echo ')' >> /usr/bin/gnusocial-delete-user
echo -n " files_to_delete=\$(echo \"\$stored_files\" | " >> /usr/bin/gnusocial-delete-user
echo 'sed -n '"'"'s/.*href="\([^"]*\).*/\1/p'"'"' | awk -F '"'"'file/'"'"' '"'"'{print $2}'"'"')' >> /usr/bin/gnusocial-delete-user
echo ' filectr=0' >> /usr/bin/gnusocial-delete-user
echo ' for f in $files_to_delete' >> /usr/bin/gnusocial-delete-user
echo ' do' >> /usr/bin/gnusocial-delete-user
echo ' if [ $filectr -gt 0 ]; then' >> /usr/bin/gnusocial-delete-user
echo ' if [ -f /var/www/${domain_name}/htdocs/file/${f} ]; then' >> /usr/bin/gnusocial-delete-user
echo ' rm /var/www/${domain_name}/htdocs/file/${f}' >> /usr/bin/gnusocial-delete-user
echo ' fi' >> /usr/bin/gnusocial-delete-user
echo ' fi' >> /usr/bin/gnusocial-delete-user
echo ' filectr=$((filectr + 1))' >> /usr/bin/gnusocial-delete-user
echo ' done' >> /usr/bin/gnusocial-delete-user
echo ' fi' >> /usr/bin/gnusocial-delete-user
echo '' >> /usr/bin/gnusocial-delete-user
echo ' database_query="delete from notice where profile_id=${id};"' >> /usr/bin/gnusocial-delete-user echo ' database_query="delete from notice where profile_id=${id};"' >> /usr/bin/gnusocial-delete-user
echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-user echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-user
echo '' >> /usr/bin/gnusocial-delete-user echo '' >> /usr/bin/gnusocial-delete-user
...@@ -423,11 +445,13 @@ function gnusocial_block_user_script { ...@@ -423,11 +445,13 @@ function gnusocial_block_user_script {
function gnusocial_block_domain_script { function gnusocial_block_domain_script {
database_name=$1 database_name=$1
gnusoc_domain=$2
echo '#!/bin/bash' > /usr/bin/gnusocial-delete-domain echo '#!/bin/bash' > /usr/bin/gnusocial-delete-domain
echo '' >> /usr/bin/gnusocial-delete-domain echo '' >> /usr/bin/gnusocial-delete-domain
echo 'database_name=$1' >> /usr/bin/gnusocial-delete-domain echo 'database_name=$1' >> /usr/bin/gnusocial-delete-domain
echo 'remove_domain=$2' >> /usr/bin/gnusocial-delete-domain echo 'remove_domain=$2' >> /usr/bin/gnusocial-delete-domain
echo 'domain_name=$3' >> /usr/bin/gnusocial-delete-domain
echo "MARIADB_PASSWORD=\$(${PROJECT_NAME}-pass -u root -a mariadb)" >> /usr/bin/gnusocial-delete-domain echo "MARIADB_PASSWORD=\$(${PROJECT_NAME}-pass -u root -a mariadb)" >> /usr/bin/gnusocial-delete-domain
echo '' >> /usr/bin/gnusocial-delete-domain echo '' >> /usr/bin/gnusocial-delete-domain
echo 'if [ ${#remove_domain} -lt 2 ]; then' >> /usr/bin/gnusocial-delete-domain echo 'if [ ${#remove_domain} -lt 2 ]; then' >> /usr/bin/gnusocial-delete-domain
...@@ -467,6 +491,27 @@ function gnusocial_block_domain_script { ...@@ -467,6 +491,27 @@ function gnusocial_block_domain_script {
echo ' database_query="delete from reply where replied_id=${id};"' >> /usr/bin/gnusocial-delete-domain echo ' database_query="delete from reply where replied_id=${id};"' >> /usr/bin/gnusocial-delete-domain
echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-domain echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-domain
echo '' >> /usr/bin/gnusocial-delete-domain echo '' >> /usr/bin/gnusocial-delete-domain
echo ' if [ $domain_name ]; then' >> /usr/bin/gnusocial-delete-domain
echo ' database_query="select rendered from notice where profile_id=${id} and rendered like '"'"'%/file/%'"'"';"' >> /usr/bin/gnusocial-delete-domain
echo ' declare -a stored_files=$(mysql -u root --password="$MARIADB_PASSWORD" << EOF' >> /usr/bin/gnusocial-delete-domain
echo 'use $database_name;' >> /usr/bin/gnusocial-delete-domain
echo '$database_query' >> /usr/bin/gnusocial-delete-domain
echo 'EOF' >> /usr/bin/gnusocial-delete-domain
echo ')' >> /usr/bin/gnusocial-delete-domain
echo -n " files_to_delete=\$(echo \"\$stored_files\" | " >> /usr/bin/gnusocial-delete-domain
echo 'sed -n '"'"'s/.*href="\([^"]*\).*/\1/p'"'"' | awk -F '"'"'file/'"'"' '"'"'{print $2}'"'"')' >> /usr/bin/gnusocial-delete-domain
echo ' filectr=0' >> /usr/bin/gnusocial-delete-domain
echo ' for f in $files_to_delete' >> /usr/bin/gnusocial-delete-domain
echo ' do' >> /usr/bin/gnusocial-delete-domain
echo ' if [ $filectr -gt 0 ]; then' >> /usr/bin/gnusocial-delete-domain
echo ' if [ -f /var/www/${domain_name}/htdocs/file/${f} ]; then' >> /usr/bin/gnusocial-delete-domain
echo ' rm /var/www/${domain_name}/htdocs/file/${f}' >> /usr/bin/gnusocial-delete-domain
echo ' fi' >> /usr/bin/gnusocial-delete-domain
echo ' fi' >> /usr/bin/gnusocial-delete-domain
echo ' filectr=$((filectr + 1))' >> /usr/bin/gnusocial-delete-domain
echo ' done' >> /usr/bin/gnusocial-delete-domain
echo ' fi' >> /usr/bin/gnusocial-delete-domain
echo '' >> /usr/bin/gnusocial-delete-domain
echo ' database_query="delete from notice where profile_id=${id};"' >> /usr/bin/gnusocial-delete-domain echo ' database_query="delete from notice where profile_id=${id};"' >> /usr/bin/gnusocial-delete-domain
echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-domain echo ' mysql -u root --password="$MARIADB_PASSWORD" -e "$database_query" $database_name' >> /usr/bin/gnusocial-delete-domain
echo '' >> /usr/bin/gnusocial-delete-domain echo '' >> /usr/bin/gnusocial-delete-domain
...@@ -483,14 +528,15 @@ function gnusocial_block_domain_script { ...@@ -483,14 +528,15 @@ function gnusocial_block_domain_script {
echo '#!/bin/bash' > /usr/bin/${database_name}-firewall echo '#!/bin/bash' > /usr/bin/${database_name}-firewall
echo '' >> /usr/bin/${database_name}-firewall echo '' >> /usr/bin/${database_name}-firewall
echo "PROJECT_NAME=$PROJECT_NAME" >> /usr/bin/${database_name}-firewall echo "PROJECT_NAME=$PROJECT_NAME" >> /usr/bin/${database_name}-firewall
echo "GNUSOCIAL_DOMAIN_NAME=$gnusoc_domain" >> /usr/bin/${database_name}-firewall
echo "database_name=$database_name" >> /usr/bin/${database_name}-firewall echo "database_name=$database_name" >> /usr/bin/${database_name}-firewall
echo 'FIREWALL_DOMAINS=$HOME/${PROJECT_NAME}-firewall-domains.cfg' >> /usr/bin/${database_name}-firewall echo 'FIREWALL_DOMAINS=$HOME/${PROJECT_NAME}-firewall-domains.cfg' >> /usr/bin/${database_name}-firewall
echo '' >> /usr/bin/${database_name}-firewall echo '' >> /usr/bin/${database_name}-firewall
echo 'while read block; do' >> /usr/bin/${database_name}-firewall echo 'while read block; do' >> /usr/bin/${database_name}-firewall
echo ' if [[ "$block" != *"@"* ]]; then' >> /usr/bin/${database_name}-firewall echo ' if [[ "$block" != *"@"* ]]; then' >> /usr/bin/${database_name}-firewall
echo ' /usr/bin/gnusocial-delete-domain "$database_name" "$block"' >> /usr/bin/${database_name}-firewall echo ' /usr/bin/gnusocial-delete-domain "$database_name" "$block" "$GNUSOCIAL_DOMAIN_NAME"' >> /usr/bin/${database_name}-firewall
echo ' else' >> /usr/bin/${database_name}-firewall echo ' else' >> /usr/bin/${database_name}-firewall
echo ' /usr/bin/gnusocial-delete-user "$database_name" "$block"' >> /usr/bin/${database_name}-firewall echo ' /usr/bin/gnusocial-delete-user "$database_name" "$block" "$GNUSOCIAL_DOMAIN_NAME"' >> /usr/bin/${database_name}-firewall
echo ' fi' >> /usr/bin/${database_name}-firewall echo ' fi' >> /usr/bin/${database_name}-firewall
echo 'done <$FIREWALL_DOMAINS' >> /usr/bin/${database_name}-firewall echo 'done <$FIREWALL_DOMAINS' >> /usr/bin/${database_name}-firewall
chmod +x /usr/bin/${database_name}-firewall chmod +x /usr/bin/${database_name}-firewall
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment