#!/bin/bash
###########################################################################################################
#	Este script tem o objetivo de finalizar um upgrade transformando staging em live no ecor
#	Rafael Carreiro
#	rafael.oliveira@arcasolutions.com
#	https://netuno.arcasolutions.com/rafael.oliveira/v11-tools
#	jogar_pro_live.sh
###########################################################################################################
#
# Modo de usar
#
# Com o usuario do cliente, na pasta raiz do projeto, execute a seguinte linha de comando:
# wget https://s3-sa-east-1.amazonaws.com/upgradev11/scripts/jogar_pro_live.sh ; chmod +x jogar_pro_live.sh ; ./jogar_pro_live.sh

#Alerta
clear
echo -e '\n\t\t\t\t\033[01;31m!!! Atençao !!!\033[0m'
echo -e "\033[00;36m\nO processo que sera executado segue a ordem abaixo:"
echo -e "\n1- Alterar o Primary Domain do projeto no servidor atual (ESCP, ECIR, ECVA, etc.);"
echo -e "2- Execuçao deste script, os arquivos e registros no BD serao configurados;"
echo -e "3- Alterar o Primary Domain do projeto no ECOR para o dominio original; "
echo -e "\nCaso ja tenha realizado o passo 1, digite \"\033[05;32ms\033[0m\033[00;36m\"\033[0m\n\033[0m"

read CONTINUAR
if [[ "$CONTINUAR" = 's' ]]; then

	cd $HOME ; EDIR11_ROOT=$HOME/edirectory ; cd $EDIR11_ROOT
	#PROJDOMAIN1=`grep -E "domainInfo\[" $EDIR11_ROOT/web/custom/domain/domain.inc.php | cut -f2 -d "'"`
	DOMAIN_STAGING1=`cat $HOME/.dns | cut -f1 -d "@"`
	DB_USER=`grep -E "define\(\"_DIRECTORYDB_USER\"\," $EDIR11_ROOT/web/conf/config.inc.php | cut -f4 -d '"'`
	DB_PASS=`grep -E "define\(\"_DIRECTORYDB_PASS\"\," $EDIR11_ROOT/web/conf/config.inc.php | cut -f4 -d '"'`
	DB_MAIN_NAME=`grep -E "define\(\"_DIRECTORYDB_NAME\"\," $EDIR11_ROOT/web/conf/config.inc.php | cut -f4 -d '"'`
	read -p "Informe o dominio original do projeto: " DOMAINLIVE

	#1-Editar esses arquivos
	sed -i "s/$DOMAIN_STAGING1/$DOMAINLIVE/g" $EDIR11_ROOT/app/config/domain.yml
	sed -i "s/$DOMAIN_STAGING1/$DOMAINLIVE/g" $EDIR11_ROOT/web/custom/domain/domain.inc.php

	#2-Alterar registro no banco
	mysql -u$DB_USER -p$DB_PASS -e "use $DB_MAIN_NAME; update Domain set name='$DOMAINLIVE', url='$DOMAINLIVE' where url='$DOMAIN_STAGING1'"

	#3-Renomear esses arquivos
	cd $EDIR11_ROOT/app/config/domains/
	ls -w1 $DOMAIN_STAGING1* | while read FILE; do mv "$FILE" "$(echo $FILE | sed s/$DOMAIN_STAGING1/$DOMAINLIVE/)" ; done

        # Limpa o Cache
        rm -rf $EDIR11_ROOT/app/logs/prod.log

	#4-Acessar o WHM e alterar fazer a alteraçao no primary domain
	echo -e "\033[05;32m[+] \033[0m\033[00;31mTransferencia concluida.\033[0m"
        echo -e "\033[05;32m[?] \033[0m\033[00;31mDeseja visualizar as alterações feitas? (s/n)\033[0m"
        read VER
        if [[ "$VER" = 's' ]]; then

        cat /dev/null > result
        echo -e "\033[0m\n\tArquivo: edirectory/web/custom/domain/domain.inc.php:\033[00;32m" >> result
        cat $EDIR11_ROOT/web/custom/domain/domain.inc.php | grep "domainInfo" >> result

        echo -e "\033[0m\n\tArquivo: edirectory/app/config/domain.yml: \033[00;32m" >> result
        cat $EDIR11_ROOT/app/config/domain.yml | grep "$DOMAINLIVE" >> result

        echo -e "\033[0m\n\tArquivos: edirectory/app/config/domains/: \033[00;32m" >> result
        ls $EDIR11_ROOT/app/config/domains/ | grep "$DOMAINLIVE" >> result

        echo -e "\033[0m\n\tRegistro no Banco Main Tabela Domain: \033[00;32m" >> result
        echo -e "$(mysql -u$DB_USER -p$DB_PASS -e "use $DB_MAIN_NAME; select url from Domain where id=1;")" | grep $DOMAINLIVE >> result

        echo -e "\033[0m" >> result
        sed 's/^[ \t]*/        /' result
        else
                echo [+] Sucesso!
        fi
        echo -e "\033[05;31;47m\t          Lembre-se de:\n\t          \n\t          1. Alterar o Primary Domain no ECOR,\n\t          2. Ativar o projeto,\n\t          3. Atualizar o Rattic,\n\t          4. Atualizar o Collaborate,\n\t          5. Inserir no Zabbix.\n\n\t          ;-)\033[0m\n\n"
fi