| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-29 15:33:35 -05:00
										 |  |  | # live fast! die young! | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | set -e | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-25 18:53:24 -04:00
										 |  |  | source /etc/statusnet/setup.cfg | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-09-09 13:14:52 -04:00
										 |  |  | # setup_status_network.sh mysite 'My Site' '1user' 'owner@example.com' 'Firsty McLastname' | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  | export nickname="$1" | 
					
						
							|  |  |  | export sitename="$2" | 
					
						
							| 
									
										
										
										
											2010-01-27 16:03:01 -08:00
										 |  |  | export tags="$3" | 
					
						
							|  |  |  | export email="$4" | 
					
						
							|  |  |  | export fullname="$5" | 
					
						
							| 
									
										
										
										
											2010-02-03 11:55:54 -05:00
										 |  |  | export siteplan="$6" | 
					
						
							| 
									
										
										
										
											2010-02-02 05:53:05 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-02-03 11:55:54 -05:00
										 |  |  | if [ "$siteplan" == '' ]; then | 
					
						
							|  |  |  |     siteplan='single-user' | 
					
						
							| 
									
										
										
										
											2010-02-02 05:53:05 -08:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | # 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 | 
					
						
							| 
									
										
										
										
											2009-06-23 09:18:10 -07:00
										 |  |  | export password=`$PWDGEN` | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | export database=$nickname$DBBASE | 
					
						
							|  |  |  | export username=$nickname$USERBASE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Create the db | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-06-17 16:30:16 -07:00
										 |  |  | mysqladmin -h $DBHOST -u $ADMIN --password=$ADMINPASS create $database | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-08-25 18:53:24 -04:00
										 |  |  | for f in statusnet.sql innodb.sql sms_carrier.sql foreign_services.sql notice_source.sql; do | 
					
						
							| 
									
										
										
										
											2009-06-17 16:30:16 -07:00
										 |  |  |     mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $database < ../db/$f; | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-06-17 16:30:16 -07:00
										 |  |  | mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB << ENDOFCOMMANDS | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-12-07 11:34:03 -08:00
										 |  |  | GRANT ALL ON $database.* TO '$username'@'localhost' IDENTIFIED BY '$password'; | 
					
						
							|  |  |  | GRANT ALL ON $database.* TO '$username'@'%' IDENTIFIED BY '$password'; | 
					
						
							| 
									
										
										
										
											2010-07-20 17:34:58 -07:00
										 |  |  | INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created) | 
					
						
							|  |  |  | VALUES ('$nickname', '$DBHOSTNAME', '$username', '$password', '$database', '$sitename', now()); | 
					
						
							| 
									
										
										
										
											2009-06-15 15:13:24 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | ENDOFCOMMANDS | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-06-23 10:43:50 -07:00
										 |  |  | for top in $AVATARBASE $FILEBASE $BACKGROUNDBASE; do | 
					
						
							|  |  |  |     mkdir $top/$nickname | 
					
						
							|  |  |  |     chmod a+w $top/$nickname | 
					
						
							|  |  |  | done | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-03-04 11:48:51 -05:00
										 |  |  | php $PHPBASE/scripts/checkschema.php -s"$server" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-20 17:34:58 -07:00
										 |  |  | php $PHPBASE/scripts/settag.php -s"$server" "$nickname" "$tags" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  | php $PHPBASE/scripts/registeruser.php \
 | 
					
						
							|  |  |  |   -s"$server" \
 | 
					
						
							|  |  |  |   -n"$nickname" \
 | 
					
						
							| 
									
										
										
										
											2010-01-27 16:03:01 -08:00
										 |  |  |   -f"$fullname" \
 | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  |   -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/" | \
 | 
					
						
							| 
									
										
										
										
											2010-02-03 11:55:54 -05:00
										 |  |  |       sed "s/\$siteplan/$siteplan/" | \
 | 
					
						
							| 
									
										
										
										
											2010-01-27 10:08:24 -08:00
										 |  |  |       php $PHPBASE/scripts/sendemail.php \
 | 
					
						
							|  |  |  |         -s"$server" \
 | 
					
						
							|  |  |  |         -n"$nickname" \
 | 
					
						
							|  |  |  |         --subject="$MAILSUBJECT" | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |     echo "No mail template, not sending email." | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2010-01-27 15:37:18 -08:00
										 |  |  | 
 | 
					
						
							|  |  |  | if [ -f "$POSTINSTALL" ] | 
					
						
							|  |  |  | then | 
					
						
							|  |  |  |     echo "Running $POSTINSTALL ..." | 
					
						
							|  |  |  |     source "$POSTINSTALL" | 
					
						
							|  |  |  | fi |