#!/bin/bash

function unsetAndDie()
{
	unset modifySiteProfile && type -t die | grep -q function && die "Site.profile failed" $*
}

function modifySiteProfile()
{
	local siteProfileName=Site.profile
	local srcAddress=http://wiki.gsi.de/pub/Epics/EpicsInstallationsAtGsiBase
	local wget_cmd=wget -N -nv --no-check-certificate
	
	if [ -f "$siteProfileName" ]
	then
		ls ${siteProfileName}.org.* 1>/dev/null 2>&1
		if [ 0 -eq $? ]
		then
		    rm ${siteProfileName} &&
		    mv $(ls --color=none -tr1 ${siteProfileName}.org.* | head -n 1) ${siteProfileName} || false;
		fi &&
		cp -i ${siteProfileName} ${siteProfileName}.org.$(date +%d%m%y) &&
	
		$wget_cmd ${srcAddress}/modify.${siteProfileName}.pl.txt &&
		$wget_cmd ${srcAddress}/${siteProfileName}.pre &&
		$wget_cmd ${srcAddress}/${siteProfileName}.post &&
		$wget_cmd ${srcAddress}/${siteProfileName}.wrapper &&
	
		mv modify.${siteProfileName}.pl.txt modify.${siteProfileName}.pl &&

		mv ${siteProfileName} ${siteProfileName}.main &&
		perl -pi modify.${siteProfileName}.pl ${siteProfileName}.main &&
		ln -s -b ${siteProfileName}.wrapper ${siteProfileName} || return 1;
	
		return 0;
	else
		echo $siteProfileName does not exist
		return 1;
	fi  
}

modifySiteProfile || unsetAndDie

unset modifySiteProfile
