X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=scripts%2Fsetup_status_network.sh;h=89d15415f960bd6d2e87b49f2fe2bf1444835f26;hb=894b221e8aec57768d6804ee3bf53c85196e09bf;hp=e1d14593fbe616c9b6fb9b3475febdfc50fc673e;hpb=85b4c24188502ce3f8cef32cfba37ab91c8a648f;p=quix0rs-gnu-social.git diff --git a/scripts/setup_status_network.sh b/scripts/setup_status_network.sh index e1d14593fb..89d15415f9 100755 --- a/scripts/setup_status_network.sh +++ b/scripts/setup_status_network.sh @@ -1,11 +1,34 @@ #!/bin/bash -source ./setup.cfg +# live fast! die young! -export nickname=$1 -export sitename=$2 +set -e -export password=`pwgen 20` +source /etc/statusnet/setup.cfg + +# setup_status_net.sh mysite 'My Site' '1user' 'owner@example.com' 'Firsty McLastname' + +export nickname="$1" +export sitename="$2" +export tags="$3" +export email="$4" +export fullname="$5" +export siteplan="$6" + +if [ "$siteplan" == '' ]; then + siteplan='single-user' +fi + +# Fixme: if this is changed later we need to update profile URLs +# for the created user. +export server="$nickname.$WILDCARD" + +# End-user info +export userpass=`$PWDGEN` +export roles="administrator moderator owner" + +# DB info +export password=`$PWDGEN` export database=$nickname$DBBASE export username=$nickname$USERBASE @@ -13,18 +36,57 @@ export username=$nickname$USERBASE mysqladmin -h $DBHOST -u $ADMIN --password=$ADMINPASS create $database -for f in laconica.sql sms_carrier.sql foreign_services.sql notice_source.sql; do +for f in statusnet.sql innodb.sql sms_carrier.sql foreign_services.sql notice_source.sql; do mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $database < ../db/$f; done mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB << ENDOFCOMMANDS -GRANT INSERT,SELECT,UPDATE,DELETE ON $database.* TO '$username'@'localhost' IDENTIFIED BY '$password'; -GRANT INSERT,SELECT,UPDATE,DELETE ON $database.* TO '$username'@'%' IDENTIFIED BY '$password'; -INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created) -VALUES ('$nickname', '$DBHOST', '$username', '$password', '$database', '$sitename', now()); +GRANT ALL ON $database.* TO '$username'@'localhost' IDENTIFIED BY '$password'; +GRANT ALL ON $database.* TO '$username'@'%' IDENTIFIED BY '$password'; +INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created, tags) +VALUES ('$nickname', '$DBHOSTNAME', '$username', '$password', '$database', '$sitename', now(), '$tags'); ENDOFCOMMANDS -mkdir $AVATARBASE/$nickname -chmod a+w $AVATARBASE/$nickname +for top in $AVATARBASE $FILEBASE $BACKGROUNDBASE; do + mkdir $top/$nickname + chmod a+w $top/$nickname +done + +php $PHPBASE/scripts/registeruser.php \ + -s"$server" \ + -n"$nickname" \ + -f"$fullname" \ + -w"$userpass" \ + -e"$email" + +for role in $roles +do + php $PHPBASE/scripts/userrole.php \ + -s"$server" \ + -n"$nickname" \ + -r"$role" +done + +if [ -f "$MAILTEMPLATE" ] +then + # fixme how safe is this? are sitenames sanitized? + cat $MAILTEMPLATE | \ + sed "s/\$nickname/$nickname/" | \ + sed "s/\$sitename/$sitename/" | \ + sed "s/\$userpass/$userpass/" | \ + sed "s/\$siteplan/$siteplan/" | \ + php $PHPBASE/scripts/sendemail.php \ + -s"$server" \ + -n"$nickname" \ + --subject="$MAILSUBJECT" +else + echo "No mail template, not sending email." +fi + +if [ -f "$POSTINSTALL" ] +then + echo "Running $POSTINSTALL ..." + source "$POSTINSTALL" +fi