]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - scripts/setup_status_network.sh
Shuffle params on setup_status_network; adding fullname and pushing tags up
[quix0rs-gnu-social.git] / scripts / setup_status_network.sh
1 #!/bin/bash
2
3 source /etc/statusnet/setup.cfg
4
5 # setup_status_net.sh mysite 'My Site' '1user' 'owner@example.com' 'Firsty McLastname'
6
7 export nickname="$1"
8 export sitename="$2"
9 export tags="$3"
10 export email="$4"
11 export fullname="$5"
12
13 # Fixme: if this is changed later we need to update profile URLs
14 # for the created user.
15 export server="$nickname.$WILDCARD"
16
17 # End-user info
18 export userpass=`$PWDGEN`
19 export roles="administrator moderator owner"
20
21 # DB info
22 export password=`$PWDGEN`
23 export database=$nickname$DBBASE
24 export username=$nickname$USERBASE
25
26 # Create the db
27
28 mysqladmin -h $DBHOST -u $ADMIN --password=$ADMINPASS create $database
29
30 for f in statusnet.sql innodb.sql sms_carrier.sql foreign_services.sql notice_source.sql; do
31     mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $database < ../db/$f;
32 done
33
34 mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB << ENDOFCOMMANDS
35
36 GRANT ALL ON $database.* TO '$username'@'localhost' IDENTIFIED BY '$password';
37 GRANT ALL ON $database.* TO '$username'@'%' IDENTIFIED BY '$password';
38 INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created, tags)
39 VALUES ('$nickname', '$DBHOSTNAME', '$username', '$password', '$database', '$sitename', now(), '$tags');
40
41 ENDOFCOMMANDS
42
43 for top in $AVATARBASE $FILEBASE $BACKGROUNDBASE; do
44     mkdir $top/$nickname
45     chmod a+w $top/$nickname
46 done
47
48 php $PHPBASE/scripts/registeruser.php \
49   -s"$server" \
50   -n"$nickname" \
51   -f"$fullname" \
52   -w"$userpass" \
53   -e"$email"
54
55 for role in $roles
56 do
57   php $PHPBASE/scripts/userrole.php \
58     -s"$server" \
59     -n"$nickname" \
60     -r"$role"
61 done
62
63 if [ -f "$MAILTEMPLATE" ]
64 then
65     # fixme how safe is this? are sitenames sanitized?
66     cat $MAILTEMPLATE | \
67       sed "s/\$nickname/$nickname/" | \
68       sed "s/\$sitename/$sitename/" | \
69       sed "s/\$userpass/$userpass/" | \
70       php $PHPBASE/scripts/sendemail.php \
71         -s"$server" \
72         -n"$nickname" \
73         --subject="$MAILSUBJECT"
74 else
75     echo "No mail template, not sending email."
76 fi
77
78 if [ -f "$POSTINSTALL" ]
79 then
80     echo "Running $POSTINSTALL ..."
81     source "$POSTINSTALL"
82 fi