diff --git a/install/etc/cont-init.d/10-freepbx b/install/etc/cont-init.d/10-freepbx index 35546fe..18997f9 100755 --- a/install/etc/cont-init.d/10-freepbx +++ b/install/etc/cont-init.d/10-freepbx @@ -43,7 +43,7 @@ RTP_END=${RTP_END:-20000} if [ "$DB_EMBEDDED" = "FALSE" ]; then ### Make sure that DB is accessible while true; do - mysqlcmd='mysql -u'$DB_USER' -h'$DB_HOST' -p'$DB_PASS + mysqlcmd="mysql -u$DB_USER -h$DB_HOST -p$DB_PASS -P$DB_PORT" out="`$mysqlcmd -e "SELECT COUNT(*) FROM information_schema.FILES;" 2>&1`" echo "$out" | grep -E "COUNT|Enter" 2>&1 > /dev/null if [ $? -eq 0 ]; then @@ -112,6 +112,7 @@ if [ "$DB_EMBEDDED" = "FALSE" ]; then @@ -132,8 +134,8 @@ fi if [ "$DB_EMBEDDED" = "FALSE" ]; then # CDR Hack - mysql -u$DB_USER -p$DB_PASS -h$DB_HOST asterisk < /usr/src/freepbx/installlib/SQL/cdr.sql - mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; UPDATE freepbx_settings SET `value` = "'$DB_HOST'" WHERE keyword = "CDRDBHOST"; UPDATE freepbx_settings SET `value` = "'$DB_NAME'" WHERE keyword = "CDRDBNAME"; UPDATE freepbx_settings SET `value` = "'$DB_PASS'" WHERE keyword = "CDRDBPASS"; UPDATE freepbx_settings SET `value` = "'$DB_USER'" WHERE keyword = "CDRDBUSER"; UPDATE freepbx_settings SET `value` = "mysql" WHERE keyword = "CDRDBTYPE"; UPDATE freepbx_settings SET `value` = "'$DB_PORT'" WHERE keyword = "CDRDBPORT"; UPDATE freepbx_settings SET `value` = "cdr" WHERE keyword = "CDRDBTABLENAME";' + mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT $DB_NAME < /usr/src/freepbx/installlib/SQL/cdr.sql + mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; UPDATE freepbx_settings SET `value` = "'$DB_HOST'" WHERE keyword = "CDRDBHOST"; UPDATE freepbx_settings SET `value` = "'$DB_NAME'" WHERE keyword = "CDRDBNAME"; UPDATE freepbx_settings SET `value` = "'$DB_PASS'" WHERE keyword = "CDRDBPASS"; UPDATE freepbx_settings SET `value` = "'$DB_USER'" WHERE keyword = "CDRDBUSER"; UPDATE freepbx_settings SET `value` = "mysql" WHERE keyword = "CDRDBTYPE"; UPDATE freepbx_settings SET `value` = "'$DB_PORT'" WHERE keyword = "CDRDBPORT"; UPDATE freepbx_settings SET `value` = "cdr" WHERE keyword = "CDRDBTABLENAME";' cp -R /var/www/html/admin/modules/cdr/install.php /var/www/html/admin/modules/cdr/.install.php sed -i -e 's/\$db_host = !empty(\$db_host) ? \$db_host : "localhost";/\$db_host = !empty(\$db_host) ? \$db_host : "'$DB_HOST'";/g' /www/freepbx/admin/modules/cdr/install.php sed -i -e 's/\$db_name = !empty(\$db_name) ? \$db_name : "asteriskcdrdb";/\$db_name = !empty(\$db_name) ? \$db_name : "'$DB_NAME'";/g' /www/freepbx/admin/modules/cdr/install.php @@ -240,10 +242,10 @@ chown asterisk:asterisk /etc/freepbx.conf if [ "$DB_EMBEDDED" = "FALSE" ]; then ### Set RTP Ports echo '** [freepbx] Set RTP Ports' -mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; UPDATE sipsettings SET `data` = "'$RTP_START'" WHERE keyword = "rtpstart"; UPDATE sipsettings SET `data` = "'$RTP_FINISH'" WHERE keyword = "rtpend";' +mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; UPDATE sipsettings SET `data` = "'$RTP_START'" WHERE keyword = "rtpstart"; UPDATE sipsettings SET `data` = "'$RTP_FINISH'" WHERE keyword = "rtpend";' ### Fix a Freepbx bug with upgrades -mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -e 'USE '$DB_NAME'; ALTER TABLE featurecodes CHANGE column helptext helptext VARCHAR(10000);' +mysql -u$DB_USER -p$DB_PASS -h$DB_HOST -P$DB_PORT -e 'USE '$DB_NAME'; ALTER TABLE featurecodes CHANGE column helptext helptext VARCHAR(10000);' fi echo '** [freepbx] Starting Asterisk' @@ -268,4 +270,4 @@ a2enmod rewrite >/dev/null service apache2 restart >/dev/null mkdir -p /tmp/state -touch /tmp/state/10-freepbx-init \ No newline at end of file +touch /tmp/state/10-freepbx-init