#!/bin/bash
database='mediawiki'
login='mediawiki'
file=$(xdg-user-dir DESKTOP)'/mediawiki_README.txt'

echo "Введите пароль пользователя root MySQL (оставьте пустым, если настраиваете MySQL \
впервые или пароль не установлен (обычно пароль не установлен, если систему устанавливали \
Вы и не задавали пароль для пользователя root@localhost \
СУБД MySQL(не путать с пользователем root ОС!))). Если ничего не понятно, просто нажмите Enter :) :"
read -r password_root


echo 'Обновление информации о пакетах...'
apt-get update
echo 'Обновление системы...'
apt-get -y dist-upgrade
echo "Установка компонентов для развёртывания mediawiki"
apt-get install installed-db-office-server-mediawiki mediawiki php5-apcu php5-mbstring MySQL-server php5-mysqli pwgen -y
password=$(pwgen -s -1 18)

systemctl enable mysqld
systemctl start mysqld

chown root:_webserver -R /usr/share/mediawiki
conf='/etc/httpd2/conf/sites-available/mediawiki.conf'
echo '<VirtualHost *>' > $conf 
echo '	ServerName		localhost' >> $conf
echo '	ServerAlias		wiki.local' >> $conf
echo '	DocumentRoot		/var/www/webapps/mediawiki' >> $conf
echo '</VirtualHost>'  >> $conf

systemctl enable httpd2
systemctl start httpd2

/usr/sbin/a2enmod mod_php5
/usr/sbin/a2ensite mediawiki

systemctl restart httpd2

echo 'Создание базы данных для mediawiki'
if [ -z "$password_root" ]
then
mysql_cmd='mysql -uroot'
else
mysql_cmd="mysql -uroot -p$password_root"
fi

echo "CREATE DATABASE $database DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON $database.* TO $login@localhost IDENTIFIED BY '$password'; FLUSH PRIVILEGES;" | $mysql_cmd

cp $file $file"_backup_$(date +%Y-%m-%d_%H-%M)"
echo ''
echo '----------------------------------------------------------'
echo 'Установка компонентов для развёртывания mediawiki завершена!' | tee $file
echo 'Для настройки mediawiki откройте браузер по адресу http://localhost/wiki и используйте следующие параметры для завершения установки:' | tee -a $file
echo "Имя базы данных - $database" | tee -a $file
echo "Логин от базы данных - $login" | tee -a $file
echo "Пароль для базы данных - $password" | tee -a $file
echo '----------------------------------------------------------'
echo ''
echo "Эта информация также доступна в файле $file"
