#!/bin/bash
XREATE_FRONTEND=/opt/bitnami/apps/xreate-frontend
PHABRICATOR_DIR=/opt/bitnami/apps/phabricator/htdocs/
PHABRICATOR_CONTROL_SCRIPT=/opt/bitnami/php/scripts/ctl.sh

SOURCES=(
    'XreateFrontendApplication.php' 'XreateFrontendController.php'
)

SOURCES_JS=('xreate_communication_types.js' 'AbstractXreateServer.js')

FILE_AbstractXreateServer=$PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/xreate-interface.js

HEADER_AbstractXreateServer="/**
 * @requires thrift
 * @provides xreate-interface
 */"

HEADER_jquery="/**
 * @provides jquery
 * @do-not-minify
 */
"
HEADER_thrift="/**
 * @requires jquery
 * @provides thrift
 */"

echo "Install files\n"
    for FILE in "${SOURCES[@]}"
    do
        rm "$PHABRICATOR_DIR/src/extensions/$FILE"
        ln -s "$XREATE_FRONTEND/$FILE" "$PHABRICATOR_DIR/src/extensions/$FILE"
    done 

echo "Install resources"
    rm -r "$PHABRICATOR_DIR/webroot/rsrc/xreate-frontend"
    mkdir -p "$PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js"
    echo "$HEADER_thrift" > $PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/thrift.js
    cat $XREATE_FRONTEND/resources/vendors/thrift/thrift.js >> $PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/thrift.js 
    
    echo "$HEADER_jquery" > $PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/jquery-2.2.2.min.js
    cat $XREATE_FRONTEND/resources/vendors/jquery/jquery-2.2.2.min.js >> $PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/jquery-2.2.2.min.js 
    
    echo "$HEADER_AbstractXreateServer" > $FILE_AbstractXreateServer
    for FILE in "${SOURCES_JS[@]}"
    do
        cat $XREATE_FRONTEND/resources/generated-js/$FILE >> $FILE_AbstractXreateServer
    done 
    
    cp $XREATE_FRONTEND/resources/js/* $PHABRICATOR_DIR/webroot/rsrc/xreate-frontend/js/

echo "Update celeriiy map"
    $PHABRICATOR_DIR/bin/celerity map
    
echo "Restart phabricator"
    $PHABRICATOR_CONTROL_SCRIPT stop
    $PHABRICATOR_CONTROL_SCRIPT start
    
echo "Note: dodnt forget to setup ssh tunnel to allow ajax requests!"
