{

my $dbname = $freepbx{'DbName'} || 'freepbxdb';
my $cdrdbname = $freepbx{'CdrDbName'} || 'asteriskcdrdb';
my $dbuser = $freepbx{'DbUser'} || 'freepbxuser';
my $dbpass = $freepbx{'DbPassword'} || 'secret';
my $cdrdbpass = $freepbx{'CdrDbPassword'} || 'secret';
my $ManagerPassword = $freepbx{'ManagerPassword'} || 'secret';

$OUT .= << "HERE";
#! /bin/sh

if [ ! -d /var/lib/mysql/$dbname ]; then
    mysqladmin create $dbname

    if [ -e /usr/share/freepbx/sources/freepbx/installlib/SQL/asterisk.sql ]; then
        mysql $dbname < /usr/share/freepbx/sources/freepbx/installlib/SQL/asterisk.sql
    else
        echo "Error: file /usr/share/freepbx/sources/freepbx/installlib/SQL/asterisk.sql doesn't exists"
        exit 1
    fi
fi

if [ ! -d /var/lib/mysql/$cdrdbname ]; then
    mysqladmin create $cdrdbname
    if [ -e /usr/share/freepbx/sources/freepbx/installlib/SQL/cdr.sql ]; then
        mysql $cdrdbname < /usr/share/freepbx/sources/freepbx/installlib/SQL/cdr.sql
    else
        echo "Error: file /usr/share/freepbx/sources/freepbx/installlib/SQL/cdr.sql doesn't exists"
        exit 1
    fi
fi

/usr/bin/mysql $dbname -e 'INSERT INTO `admin` (`variable`, `value`) VALUES ("email", "admin\@$DomainName") ON DUPLICATE KEY UPDATE `value` = "admin\@$DomainName";'
/usr/bin/mysql $dbname -e 'INSERT INTO `ampusers` (`username`, `password_sha1`, `extension_low`, `extension_high`, `deptname`, `sections`) VALUES
("admin", sha1("$ManagerPassword"), "", "", "", 0x2a) ON DUPLICATE KEY UPDATE `password_sha1` = sha1("$ManagerPassword");'

/usr/bin/mysql <<EOF
USE mysql;

REPLACE INTO user (  
                     host,
                     user,
                     password)
            VALUES ( 
                     'localhost',
                     '$dbuser',
                     PASSWORD ('$dbpass'));


REPLACE INTO db (  
                   host,
                   db,
                   user,
                   select_priv, insert_priv, update_priv, delete_priv,
                   create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv,
                   grant_priv, lock_tables_priv, references_priv)
          VALUES ( 
                   'localhost',
                   '$dbname',
                   '$dbuser',
                   'Y', 'Y', 'Y', 'Y',
                   'Y', 'Y', 'Y', 'Y', 'Y',
                   'N', 'Y', 'Y');
REPLACE INTO db (  
                   host,
                   db,
                   user,
                   select_priv, insert_priv, update_priv, delete_priv,
                   create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv,
                   grant_priv, lock_tables_priv, references_priv)
          VALUES (
                   'localhost',
                   '$cdrdbname',
                   '$dbuser',
                   'Y', 'Y', 'Y', 'Y',
                   'Y', 'Y', 'Y', 'Y', 'Y',
                   'N', 'Y', 'Y');


FLUSH PRIVILEGES;

EOF


HERE
}

