| 
				
			 | 
			
			
				@@ -8913,15 +8913,6 @@ function install_gnu_social { 
			 | 
		
	
		
			
			| 
				8913
			 | 
			
				8913
			 | 
			
			
				     fi 
			 | 
		
	
		
			
			| 
				8914
			 | 
			
				8914
			 | 
			
			
				     echo "GNU Social onion domain:${MICROBLOG_ONION_HOSTNAME}" >> $COMPLETION_FILE 
			 | 
		
	
		
			
			| 
				8915
			 | 
			
				8915
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				8916
			 | 
			
				
			 | 
			
			
				-    # clear down the database periodically 
			 | 
		
	
		
			
			| 
				8917
			 | 
			
				
			 | 
			
			
				-    echo '$n = new Notice();' > /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/clear-database.php 
			 | 
		
	
		
			
			| 
				8918
			 | 
			
				
			 | 
			
			
				-    echo "\$n->whereAdd('created < NOW() - INTERVAL 1 YEAR');" >> /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/clear-database.php 
			 | 
		
	
		
			
			| 
				8919
			 | 
			
				
			 | 
			
			
				-    echo 'if ($n->find()) { while ($n->fetch()) { $n->deleteAs($n->getProfile()); } }' >> /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/clear-database.php 
			 | 
		
	
		
			
			| 
				8920
			 | 
			
				
			 | 
			
			
				-    echo 'exit' >> /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/clear-database.php 
			 | 
		
	
		
			
			| 
				8921
			 | 
			
				
			 | 
			
			
				-    echo '#!/bin/bash' > /etc/cron.weekly/clear-microblog-database 
			 | 
		
	
		
			
			| 
				8922
			 | 
			
				
			 | 
			
			
				-    echo "cat /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/clear-database.php | php /var/www/$MICROBLOG_DOMAIN_NAME/htdocs/scripts/console.php" >> /etc/cron.weekly/clear-microblog-database 
			 | 
		
	
		
			
			| 
				8923
			 | 
			
				
			 | 
			
			
				-    chmod +x /etc/cron.weekly/clear-microblog-database 
			 | 
		
	
		
			
			| 
				8924
			 | 
			
				
			 | 
			
			
				- 
			 | 
		
	
		
			
			| 
				8925
			 | 
			
				8916
			 | 
			
			
				     # some post-install instructions for the user 
			 | 
		
	
		
			
			| 
				8926
			 | 
			
				8917
			 | 
			
			
				     if ! grep -q $"Microblog administrator" /home/$MY_USERNAME/README; then 
			 | 
		
	
		
			
			| 
				8927
			 | 
			
				8918
			 | 
			
			
				         echo '' >> /home/$MY_USERNAME/README 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -8939,6 +8930,64 @@ function install_gnu_social { 
			 | 
		
	
		
			
			| 
				8939
			 | 
			
				8930
			 | 
			
			
				     echo 'install_gnu_social' >> $COMPLETION_FILE 
			 | 
		
	
		
			
			| 
				8940
			 | 
			
				8931
			 | 
			
			
				 } 
			 | 
		
	
		
			
			| 
				8941
			 | 
			
				8932
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				
			 | 
			
				8933
			 | 
			
			
				+function expire_gnu_social_posts { 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8934
			 | 
			
			
				+    # To prevent the database size from growing endlessly this script expires posts 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8935
			 | 
			
			
				+    # after a number of months 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8936
			 | 
			
			
				+    if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_DEVELOPER" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8937
			 | 
			
			
				+        return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8938
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8939
			 | 
			
			
				+    if [ ! -d /var/www/$MICROBLOG_DOMAIN_NAME/htdocs ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8940
			 | 
			
			
				+        return 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8941
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8942
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8943
			 | 
			
			
				+    gnusocial_expire_script=/usr/bin/gnusocial-expire 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8944
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8945
			 | 
			
			
				+    echo '<?php' > $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8946
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8947
			 | 
			
			
				+    echo '// GNU Social post expiry script, based on StatExpire by Tony Baldwin' > $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8948
			 | 
			
			
				+    echo '// https://github.com/tonybaldwin/statexpire' > $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8949
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8950
			 | 
			
			
				+    echo '$oldate=date(("Y-m-d"), strtotime("-3 months"));' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8951
			 | 
			
			
				+    echo '$username="root";' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8952
			 | 
			
			
				+    echo "\$password=file_get_contents(\"$DATABASE_PASSWORD_FILE\");" >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8953
			 | 
			
			
				+    echo '$database="gnusocial";' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8954
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8955
			 | 
			
			
				+    echo 'if (!$link = mysql_connect("localhost", $username, $password)) {' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8956
			 | 
			
			
				+    echo '    echo "Could not connect to mariadb";' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8957
			 | 
			
			
				+    echo '    exit;' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8958
			 | 
			
			
				+    echo '}' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8959
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8960
			 | 
			
			
				+    echo 'if (!mysql_select_db($database, $link)) {' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8961
			 | 
			
			
				+    echo '    echo "Could not select gnusocial database";' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8962
			 | 
			
			
				+    echo '    exit;' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8963
			 | 
			
			
				+    echo '}' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8964
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8965
			 | 
			
			
				+    echo "\$notice_query=\"DELETE FROM notice WHERE created <= '\$oldate 01:01:01'\";" >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8966
			 | 
			
			
				+    echo "\$conversation_query=\"DELETE FROM conversation WHERE created <= '$oldate 01:01:01'\";" >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8967
			 | 
			
			
				+    echo "\$reply_query=\"DELETE FROM reply WHERE modified <= '\$oldate 01:01:01'\";" >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8968
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8969
			 | 
			
			
				+    echo 'mysql_query($notice_query);' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8970
			 | 
			
			
				+    echo '$rowaff1=mysql_affected_rows();' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8971
			 | 
			
			
				+    echo 'mysql_query($conversation_query);' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8972
			 | 
			
			
				+    echo '$rowaff2=mysql_affected_rows();' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8973
			 | 
			
			
				+    echo 'mysql_query($reply_query);' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8974
			 | 
			
			
				+    echo '$rowaff3=mysql_affected_rows();' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8975
			 | 
			
			
				+    echo 'mysql_close();' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8976
			 | 
			
			
				+    echo '' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8977
			 | 
			
			
				+    echo 'echo "Expire GNU Social posts: $rowaff1 notices, $rowaff2 conversations, and $rowaff3 replies deleted from database.\n";' >> $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8978
			 | 
			
			
				+    chmod +x $gnusocial_expire_script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8979
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8980
			 | 
			
			
				+    # Add a cron job 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8981
			 | 
			
			
				+    if ! grep -q "$gnusocial_expire_script" /etc/crontab; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8982
			 | 
			
			
				+        echo "10 3 *   *   *   root /usr/bin/timeout 500 /usr/bin/php $gnusocial_expire_script" >> /etc/crontab 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8983
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8984
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8985
			 | 
			
			
				+    # remove old expire script 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8986
			 | 
			
			
				+    if [ -f /etc/cron.weekly/clear-microblog-database ]; then 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8987
			 | 
			
			
				+        rm /etc/cron.weekly/clear-microblog-database 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8988
			 | 
			
			
				+    fi 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8989
			 | 
			
			
				+} 
			 | 
		
	
		
			
			| 
				
			 | 
			
				8990
			 | 
			
			
				+ 
			 | 
		
	
		
			
			| 
				8942
			 | 
			
				8991
			 | 
			
			
				 function install_gnu_social_theme { 
			 | 
		
	
		
			
			| 
				8943
			 | 
			
				8992
			 | 
			
			
				     if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_DEVELOPER" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then 
			 | 
		
	
		
			
			| 
				8944
			 | 
			
				8993
			 | 
			
			
				         return 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -10490,6 +10539,7 @@ install_wiki 
			 | 
		
	
		
			
			| 
				10490
			 | 
			
				10539
			 | 
			
			
				 install_blog 
			 | 
		
	
		
			
			| 
				10491
			 | 
			
				10540
			 | 
			
			
				 mark_blog_domain 
			 | 
		
	
		
			
			| 
				10492
			 | 
			
				10541
			 | 
			
			
				 install_gnu_social 
			 | 
		
	
		
			
			| 
				
			 | 
			
				10542
			 | 
			
			
				+expire_gnu_social_posts 
			 | 
		
	
		
			
			| 
				10493
			 | 
			
				10543
			 | 
			
			
				 install_gnu_social_theme 
			 | 
		
	
		
			
			| 
				10494
			 | 
			
				10544
			 | 
			
			
				 install_rss_reader 
			 | 
		
	
		
			
			| 
				10495
			 | 
			
				10545
			 | 
			
			
				 install_rss_mobile_reader 
			 |