  #!/bin/bash
  USER_NAME="korodm"
  USER_GROUP="korodm"
  WWW_DIR="/home/korodm/Documents/sites/"
  USER_REPO="korodm"
  PASS_REPO="***"
  REPO="bitbucket.org/"
  SQL_PASS="***"
  
  ###################################################################################################################
  
  # Проверка на права рута
  if [ "${UID}" -ne 0 ]
  then
      printf "Root:\t\t\t\t\t\033[0;31mнет\033[0m\n\nПриложение необходимо запустить от имени root!\n"
      exit
  else
      printf "Root:\t\t\t\t\t\033[0;32mда\033[0m\n"
  fi
  
  # Проверка на наличие передаваемых параметров
  if ! [ -n "${1}" ]
  then
      printf "Параметры:\t\t\t\t\033[0;31mno\033[0m\n\nПриложение необходимо использовать так:\n%s site_name\n" ${0}
      exit
  else
      printf "Параметры:\t\t\t\t\033[0;32m%s\033[0m\n" ${1}
      SITE=${1}
  fi
  
  # Проверка на существование рабочего каталога
  if ! [ -d "${WWW_DIR}" ]
  then
      printf "Рабочий каталог:\t\t\t\033[0;31mне существует\033[0m\n\nИзмените конфцигурацию скрипта.\n"
      exit
  else
      printf "Рабочий каталог:\t\t\t\033[0;32m%s\033[0m\n" ${WWW_DIR}
  fi
  
  # Проверка на существование каталога для сайта в рабочем каталоге
  if [ -d "${WWW_DIR}${SITE}" ]
  then
      printf "Каталог для сайта:\t\t\t\033[0;31mуже существует\033[0m\n\nИзмените назваение сайта.\n"
      exit
  else
      printf "Каталог для сайта:\t\t\t\033[0;32m%s%s\033[0m\n" ${WWW_DIR} ${SITE}
  fi
  
  # Проверка существования репозитария
  REPO_TRUE=`curl "https://${REPO}${USER_REPO}/${SITE}" 2> /dev/null | grep -c "Bitbucket_404.png"`
  if [[ "${REPO_TRUE}" -eq 1 ]]
  then
      printf "Репозитарий:\t\t\t\t\033[0;31mне существует\033[0m\n\nСоздайте репозитарий.\n"
      exit
  else
      printf "Репозитарий:\t\t\t\t\033[0;32mhttps://%s%s/%s\033[0m\n" ${REPO} ${USER_REPO} ${SITE}
  fi
  
  # Клонируем репозиторий
  cd ${WWW_DIR}
  hg clone "https://${USER_REPO}:${PASS_REPO}@${REPO}${USER_REPO}/${SITE}" > /dev/null
  printf "Клонирование репозитария:\t\t\\033[0;32mзавершено\033[0m\n"
  mkdir -p ${WWW_DIR}${SITE}/public_html
  chown -R ${USER_NAME}:${USER_GROUP} ${WWW_DIR}${SITE}
  printf "Локальная папка:\t\t\t\033[0;32m%s%s/public_html\033[0m\n" ${WWW_DIR} ${SITE}
  
  # Создание виртуального хоста
  printf "<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  ServerName ${SITE}
  DocumentRoot ${WWW_DIR}${SITE}/public_html
  
  <Directory />
  Options FollowSymLinks
  AllowOverride all
  </Directory>
  
  <Directory ${WWW_DIR}${SITE}/public_html/>
  Options Indexes FollowSymLinks MultiViews
  AllowOverride all
  Order allow,deny
  allow from all
  </Directory>
  
  ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
  <Directory \"/usr/lib/cgi-bin\">
  AllowOverride all
  Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
  Order allow,deny
  Allow from all
  </Directory>
  
  ErrorLog ${APACHE_LOG_DIR}/error.log
  LogLevel warn
  CustomLog ${APACHE_LOG_DIR}/access.log combined
  Alias /doc/ \"/usr/share/doc/\"
  
  <Directory \"/usr/share/doc/\">
  Options Indexes MultiViews FollowSymLinks
  AllowOverride all
  Order deny,allow
  Deny from all
  Allow from 127.0.0.0/255.0.0.0 ::1/128
  </Directory>
  
  </VirtualHost>\n" > /etc/apache2/sites-available/${SITE}
  
  printf "Файл конфигурации Apache:\t\t\033[0;32mсоздан\033[0m\n"
  
  # Активация сайта
  a2ensite ${SITE} > /dev/nul
  printf "Сайт \033[0;32m%s:\t\t\t\tактивирован\033[0m\n" ${SITE}
  
  # Поиск свободного ip адреса
  num=1
  LIMIT=255
  
  while [ "${num}" -lt "${LIMIT}" ]
  do
      if [ `grep -c 127.0.1.${num} /etc/hosts` -ne 1 ]
      then
          echo "127.0.1.${num} ${SITE}" >> /etc/hosts
          break
      fi
      num=$((num+1))
  done
  
  printf "Поиск свободного ip адреса:\t\t\033[0;32m127.0.1.%s\033[0m\n" ${num}
  
  # Перезагрузка Apache
  /etc/init.d/apache2 reload > /dev/null
  printf "Apache:\t\t\t\t\t\033[0;32mперезагружен\033[0m\n"
  
  # Создание index.php
  printf "<h1>Сайт %s работает!</h1>
  <h2>%s%s/public_html/index.php</h2>
  <?php phpinfo(); ?>" ${SITE} ${WWW_DIR} ${SITE} > ${WWW_DIR}${SITE}/public_html/index.php
  
  chown ${USER_NAME}:${USER_GROUP} ${WWW_DIR}${SITE}/public_html/index.php
  
  printf "Индексный файл:\t\t\t\t\033[0;32mhttp://%s/index.php\033[0m\n" ${SITE}
  
  # Создание базы данных
  mysql -uroot -p${SQL_PASS} --execute="create database ${SITE};"
  mysql -uroot -p${SQL_PASS} --execute="GRANT ALL PRIVILEGES ON ${SITE}.* TO ${SITE}@localhost IDENTIFIED by '${SITE}' WITH GRANT OPTION;"
  printf "База данных:\t\t\t\t\033[0;32m%s\033[0m\n" ${SITE}
  printf "Имя пользователя:\t\t\t\033[0;32m%s\033[0m\n" ${SITE}
  printf "Пароль:\t\t\t\t\t\033[0;32m%s\033[0m\n" ${SITE}
  
  printf "\n\033[0;32mСайт готов!\033[0m\n\n"
  
  exit