|  | 
 |  | 
 | 
												
													
														| 8913 |      fi
 | 8913 |      fi
 | 
												
													
														| 8914 |      echo "GNU Social onion domain:${MICROBLOG_ONION_HOSTNAME}" >> $COMPLETION_FILE
 | 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 |      # some post-install instructions for the user
 | 8916 |      # some post-install instructions for the user
 | 
												
													
														| 8926 |      if ! grep -q $"Microblog administrator" /home/$MY_USERNAME/README; then
 | 8917 |      if ! grep -q $"Microblog administrator" /home/$MY_USERNAME/README; then
 | 
												
													
														| 8927 |          echo '' >> /home/$MY_USERNAME/README
 | 8918 |          echo '' >> /home/$MY_USERNAME/README
 | 
												
											
												
													
														|  | 
 |  | 
 | 
												
													
														| 8939 |      echo 'install_gnu_social' >> $COMPLETION_FILE
 | 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 |  function install_gnu_social_theme {
 | 8991 |  function install_gnu_social_theme {
 | 
												
													
														| 8943 |      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
 | 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 |          return
 | 8993 |          return
 | 
												
											
												
													
														|  | 
 |  | 
 | 
												
													
														| 10490 |  install_blog
 | 10539 |  install_blog
 | 
												
													
														| 10491 |  mark_blog_domain
 | 10540 |  mark_blog_domain
 | 
												
													
														| 10492 |  install_gnu_social
 | 10541 |  install_gnu_social
 | 
												
													
														|  | 
 | 10542 | +expire_gnu_social_posts
 | 
												
													
														| 10493 |  install_gnu_social_theme
 | 10543 |  install_gnu_social_theme
 | 
												
													
														| 10494 |  install_rss_reader
 | 10544 |  install_rss_reader
 | 
												
													
														| 10495 |  install_rss_mobile_reader
 | 10545 |  install_rss_mobile_reader
 |