added several more writable directories
[openemr.git] / contrib / util / installScripts / cvsDemoInstall
blob059f31e1eb9d4bfe01b906a4a30925f6a7a9c475
1 #!/bin/sh
3 #This program is free software; you can redistribute it and/or modify
4 #it under the terms of the GNU General Public License as published by
5 #the Free Software Foundation; either version 2 of the License, or
6 #(at your option) any later version.
8 # author Brady Miller
9 # email brady@sparmy.com
10 # date 02/20/09
13 #This script is called by the the OpenEMR CVS demo and developer appliance.
14 # It will configure OpenEMR (bypassing setup.php).
15 # Logs errors
18 # PATH VARIABLES
19 OPENEMR=/var/www/html/openemr
20 CVS=/home/openemr/cvs
21 LOG=/var/www/html/log/logSetup.txt
23 # OTHER VARIABLES
24 setHost="localhost" #mysql server (if not different from php, then localhost)
25 setLoginhost="localhost" #php/apache server (if not different from mysql, then localhost)
26 setPort="3306" #MySQL port
27 setDbname="openemr" #MySQL openemr database name
28 setLogin="openemr" #username to MySQL openemr database
29 setPass="openemr" #password to MySQL openemr database
30 setRoot="root" #MySQL server root username
31 setRootpass="" #MySQL server root password
32 setIuser="admin" #initial user login name
33 setIuname="Administrator" #initial user full name
34 setIgroup="Default" #practice group name
35 setOpenemrWebPath=/openemr #path on browser to openemr
36 setInst="1" #CONSTANT, don't set
38 #INSTALL AND CONFIGURE OPENEMR
39 # Set file and directory permissions
40 chmod 666 $OPENEMR/library/sqlconf.php
41 chmod 666 $OPENEMR/gacl/gacl.ini.php
42 chmod 666 $OPENEMR/gacl/gacl.class.php
43 chmod 666 $OPENEMR/interface/globals.php
44 chown -R apache:apache $OPENEMR/documents
45 chown -R apache:apache $OPENEMR/edi
46 chown -R apache:apache $OPENEMR/era
47 chown -R apache:apache $OPENEMR/custom/letter_templates
48 chown -R apache:apache $OPENEMR/interface/main/calendar/modules/PostCalendar/pntemplates/cache
49 chown -R apache:apache $OPENEMR/interface/main/calendar/modules/PostCalendar/pntemplates/compiled
50 chown -R apache:apache $OPENEMR/gacl/admin/templates_c
52 # CONVERT setup.php file to script, then run it
54 cp $OPENEMR/setup.php $OPENEMR/TEMPsetup.php
55 # Set the path variable in setup.php
56 sed -e 's@\$manualPath = \"\"\;@\$manualPath = \"'$OPENEMR'\/\"\;@' <$OPENEMR/TEMPsetup.php >$OPENEMR/TEMP2setup.php
57 mv -f $OPENEMR/TEMP2setup.php $OPENEMR/TEMPsetup.php
58 # Set the variables in setup.php
59 sed -e 's@\/\/END POST VARIABLES@\
60 $host = '\'''$setHost''\'';\
61 $server = '\'''$setHost''\'';\
62 $port = '$setPort';\
63 $dbname = '\'''$setDbname''\'';\
64 $root = '\'''$setRoot''\'';\
65 $login = '\'''$setLogin''\'';\
66 $pass = '\'''$setPass''\'';\
67 $loginhost = '\'''$setLoginhost''\'';\
68 $rootpass = '\'''$setRootpass''\'';\
69 $iuser = '\'''$setIuser''\'';\
70 $iuname = '\'''$setIuname''\'';\
71 $igroup = '\'''$setIgroup''\'';\
72 $openemrBasePath = '\'''$OPENEMR''\'';\
73 $openemrWebPath = '\'''$setOpenemrWebPath''\'';\
74 $inst = 1;@' <$OPENEMR/TEMPsetup.php >$OPENEMR/TEMP2setup.php
75 mv -f $OPENEMR/TEMP2setup.php $OPENEMR/TEMPsetup.php
76 # Remove form functionality
77 sed -e 's@<INPUT TYPE='\''SUBMIT'\'' VALUE='\''Continue'\''>@ @' <$OPENEMR/TEMPsetup.php >$OPENEMR/TEMP2setup.php
78 mv -f $OPENEMR/TEMP2setup.php $OPENEMR/TEMPsetup.php
79 #prepare gacl/setup.php script
80 cp $OPENEMR/gacl/setup.php $OPENEMR/gacl/TEMP2setup.php
81 sed -e 's@.\/gacl\/gacl.ini.php@'$OPENEMR'\/gacl\/gacl.ini.php@' <$OPENEMR/gacl/setup.php >$OPENEMR/gacl/TEMPsetup.php
82 mv -f $OPENEMR/gacl/TEMPsetup.php $OPENEMR/gacl/setup.php
83 sed -e 's@.\/gacl\/admin\/gacl_admin.inc.php@'$OPENEMR'\/gacl\/admin\/gacl_admin.inc.php@' <$OPENEMR/gacl/setup.php >$OPENEMR/gacl/TEMPsetup.php
84 mv -f $OPENEMR/gacl/TEMPsetup.php $OPENEMR/gacl/setup.php
85 sed -e 's@.\/gacl\/schema.xml@'$OPENEMR'\/gacl\/schema.xml@' <$OPENEMR/gacl/setup.php >$OPENEMR/gacl/TEMPsetup.php
86 mv -f $OPENEMR/gacl/TEMPsetup.php $OPENEMR/gacl/setup.php
87 #prepare library/acl.inc script
88 cp $OPENEMR/library/acl.inc $OPENEMR/library/TEMP2acl.inc
89 sed -e 's@\$phpgacl_location = \"gacl\";@\$phpgacl_location = \"'$OPENEMR'\/gacl\";@' <$OPENEMR/library/acl.inc >$OPENEMR/library/TEMPacl.inc
90 mv -f $OPENEMR/library/TEMPacl.inc $OPENEMR/library/acl.inc
91 # (step 3) Set up OpenEMR and MySQL
92 sed -e 's@$state = $_POST\["state"\];@$state = 3;@' <$OPENEMR/TEMPsetup.php >$OPENEMR/TEMP2setup.php
93 mv -f $OPENEMR/TEMP2setup.php $OPENEMR/TEMPsetup.php
94 php -f $OPENEMR/TEMPsetup.php >> $LOG
95 # (step 4) Configure sqlconf.php file
96 sed -e 's@$state = 3;@$state = 4;@' <$OPENEMR/TEMPsetup.php >$OPENEMR/TEMP2setup.php
97 mv -f $OPENEMR/TEMP2setup.php $OPENEMR/TEMPsetup.php
98 php -f $OPENEMR/TEMPsetup.php >> $LOG
99 rm -f $OPENEMR/TEMPsetup.php
100 #reinstitute file permissions
101 chmod 644 $OPENEMR/library/sqlconf.php
102 chmod 644 $OPENEMR/gacl/gacl.ini.php
103 chmod 644 $OPENEMR/gacl/gacl.class.php
104 chmod 644 $OPENEMR/interface/globals.php
105 #replace original acl.inc and gacl/setup.php script
106 mv $OPENEMR/library/TEMP2acl.inc $OPENEMR/library/acl.inc
107 mv $OPENEMR/gacl/TEMP2setup.php $OPENEMR/gacl/setup.php