ROOT_DIR=$( cd `dirname $0`; pwd )
+LOCAL_SAV_DIR="$ROOT_DIR/config.local"
# Import config
-if [ ! -f $ROOT_DIR/config.local/local.sh ]
+if [ ! -f $LOCAL_SAV_DIR/local.sh ]
then
echo "Error : You don't have create your own local.sh file in config.local directory. You could rely on the local.sh.example file to create your version."
exit 1
fi
-source $ROOT_DIR/config.local/local.sh
+source $LOCAL_SAV_DIR/local.sh
function msg() {
echo $2 "$1" | tee -a "$LOG_FILE"
}
+function check_file_or_symlink() {
+ [ -f "$1" ] && echo 0 && return 0
+ if [ -L "$1" ]
+ then
+ [ -r "$1" ] && echo 0 && return 0
+ rm -f "$1"
+ fi
+ echo 1 && return 1
+}
+
cd $ROOT_DIR
-msg "Clean git repos : "
+msg "-> Clean git repos : "
for i in $LOCAL_FILES
do
msg "\t-> $i : " -en
fi
done
-if [ $DO_DOC -eq 1 ]
+if [ $BUILD_DOC -eq 1 ]
then
msg "-> Clean the doc : " -en
cd $ROOT_DIR/doc >> $LOG_FILE && make clean >> $LOG_FILE && cd - >> $LOG_FILE
fi
fi
-msg "Verification of git repos state : "
+msg "-> Verification of git repos state : "
git status >> $LOG_FILE 2>&1
if [ "$ETAT" != "" ]
then
fi
msg "\t->[OK]" -e
-msg "Upgrade git repos : "
+msg "-> Upgrade git repos : "
RES_GIT=`git pull`
RES=$?
msg "$RES_GIT" -e
fi
msg "\t-> [OK]" -e
-msg "Install local files : "
+msg "-> Install local files : "
for i in $LOCAL_FILES
do
msg "\t-> $i : " -ne
if [ -f $SRC.orig ]
then
DIFF=`diff $ROOT_DIR/$i.sav $SRC.orig`
- msg "$DIFF" -e
if [ "$DIFF" != "" ]
then
- msg "\n\t\t\t-> Caution : This file changed. Do you want edit this file now ? [y/N] " -en
+ msg "\n$DIFF\n\t\t\t-> Caution : This file changed. Do you want edit this file now ? [y/N] " -en
read a
echo "Reponse : $a" >> $LOG_FILE
if [ "$a" == "y" -o "$a" == "Y" ]
msg "No change"
fi
else
- echo
+ msg "Original backup file does not exist. Pass ..."
fi
msg "\t\t-> Backup file for next upgrade : " -en
cp -f $ROOT_DIR/$i.sav $SRC.orig >> $LOG_FILE 2>&1
msg "file does not exist. Pass..."
fi
done
+
if [ "$THEME" != "" ]
then
- msg "-> Install theme : " -en
+ msg "-> Install theme : "
+
+ # TPL
+ msg "\t- Template : " -e
ln -s $LOCAL_SAV_DIR/theme/templates $ROOT_DIR/public_html/templates/$THEME >> $LOG_FILE 2>&1
+ if [ -d $ROOT_DIR/public_html/templates/$THEME_TPL_REF ]
+ then
+ msg "\t\t-> Vérification de la présence des fichiers : " -e
+ for i in $ROOT_DIR/public_html/templates/$THEME_TPL_REF/*
+ do
+ f=`basename $i`
+ msg "\t\t\t- $f : " -en
+ if [ `check_file_or_symlink "$ROOT_DIR/public_html/templates/$THEME/$f"` -eq 0 ]
+ then
+ msg "present."
+ else
+ ln -s $ROOT_DIR/public_html/templates/$THEME_TPL_REF/$f $ROOT_DIR/public_html/templates/$THEME/$f
+ msg "link."
+ fi
+ done
+ fi
+
+ # IMG
+ msg "\t- Images : " -e
ln -s $LOCAL_SAV_DIR/theme/images $ROOT_DIR/public_html/images/$THEME >> $LOG_FILE 2>&1
+ if [ -d $ROOT_DIR/public_html/images/$THEME_IMG_REF ]
+ then
+ msg "\t\t-> Vérification de la présence des fichiers : " -e
+ for i in $ROOT_DIR/public_html/images/$THEME_IMG_REF/*
+ do
+ f=`basename $i`
+ msg "\t\t\t- $f : " -en
+ if [ `check_file_or_symlink "$ROOT_DIR/public_html/images/$THEME/$f"` -eq 0 ]
+ then
+ msg "present."
+ else
+ ln -s $ROOT_DIR/public_html/images/$THEME_IMG_REF/$f $ROOT_DIR/public_html/images/$THEME/$f
+ msg "link."
+ fi
+ done
+ fi
+
+ # CSS
+ msg "\t- CSS : " -e
ln -s $LOCAL_SAV_DIR/theme/css $ROOT_DIR/public_html/css/$THEME >> $LOG_FILE 2>&1
- msg "Ok"
+ if [ -d $ROOT_DIR/public_html/css/$THEME_CSS_REF ]
+ then
+ msg "\t\t-> Vérification de la présence des fichiers : " -e
+ for i in $ROOT_DIR/public_html/css/$THEME_CSS_REF/*
+ do
+ f=`basename $i`
+ msg "\t\t\t- $f : " -en
+ if [ `check_file_or_symlink "$ROOT_DIR/public_html/css/$THEME/$f"` -eq 0 ]
+ then
+ msg "present."
+ else
+ ln -s $ROOT_DIR/public_html/css/$THEME_CSS_REF/$f $ROOT_DIR/public_html/css/$THEME/$f
+ msg "link."
+ fi
+ done
+ fi
fi
-if [ $DO_DOC -eq 1 ]
+if [ $BUILD_DOC -eq 1 ]
then
- msg "-> Do you want export the documentation (y/N) ? " -en
+ msg "-> Do you want build the documentation (y/N) ? " -en
read a
if [ "$a" == "y" -o "$a" == "Y" ]
then
- msg "-> Export the doc : " -en
+ msg "-> Build the doc : " -en
cd $ROOT_DIR/doc >> $LOG_FILE 2>&1 && make >> $LOG_FILE 2>&1 && cd - >> $LOG_FILE 2>&1
if [ $? -gt 0 ]
then
else
msg "Ok"
fi
- fi
+
+ if [ -n "$EXPORT_DOC_DIR" ]
+ then
+ $ROOT_DIR/buildDocExports.sh
+ fi
+ fi
fi