#!/bin/sh

# Setup the environment
. "setup/env.sh"

# load localized message strings
. "setup/env-locale.sh"

. "setup/setupfunctions.sh"

removeUTF8SpecificsForKorean
CURRENTNAME=`id | sed -e 's|).*$||' -e 's|^.*(||' `
restoreUTF8SpecificsForKorean

if [ "$BOBJEUSERNAME" -a "$BOBJEUSERNAME" != "$CURRENTNAME" ]; then
echo "$CCMUSERERROR1 $BOBJEUSERNAME"
echo "$CCMUSERERROR2 $CURRENTNAME"
sleep 1
echo "$HITENTER"
read GARBAGE
exit 0
fi

echo ${NOWREGISTERING}
# register a couple of MainWin files.
MWNO_SIGNAL_CATCHING=false
export MWNO_SIGNAL_CATCHING
if [ -f "$MWHOME"/../locale.reg ]; then
"$MWHOME"/bin-${MWCONFIG_NAME}_optimized/regedit -c "$MWHOME"/../locale.reg >/dev/null 2>&1
fi
if [ -f "$MWHOME"/../regupdate.reg ]; then
"$MWHOME"/bin-${MWCONFIG_NAME}_optimized/regedit -c "$MWHOME"/../regupdate.reg >/dev/null 2>&1
fi
if [ -f "$MWHOME"/../saserver.reg ]; then
"$MWHOME"/bin-${MWCONFIG_NAME}_optimized/regedit -c "$MWHOME"/../../saserver.reg >/dev/null 2>&1
fi
MWNO_SIGNAL_CATCHING=true
export MWNO_SIGNAL_CATCHING

OLDIFS=$IFS
IFS='
'


# For each file we need to register with regsvr32
REGSVR32LIST="
$MWHOME/../libexportmodeller${SHAREDLIBSUFFIX?}
$MWHOME/../libcrtslv${SHAREDLIBSUFFIX?}
$MWHOME/../libcrqe${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libEnterpriseFramework${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libInfoStore${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libcrlov${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libprompting${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libinfopluginmgr${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libscriptinghelpers${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libEnterpriseRepositoryAdaptor${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/auth/secEnterprise/libsecEnterprise${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/auth/secLDAP/libsecLDAP${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/desktop/CrystalEnterprise.Report/libReport${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/desktop/CrystalEnterprise.Folder/libFolder${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/libMDS${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/desktop/CrystalEnterprise.MetaData/libMetaDataPlugins${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/desktop/CrystalEnterprise.FullClient/libFullClient${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/plugins/desktop/CrystalEnterprise.busobjReporter/libbusobjReporter${SHAREDLIBSUFFIX?}
$OLAPHOME/libcoutilities${SHAREDLIBSUFFIX?}
$OLAPHOME/libcodata${SHAREDLIBSUFFIX?}
$OLAPHOME/libxpxml${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libdtsagent${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libcmscon${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/liblocalcon${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libsaxserialize${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/librasauditingw${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libobjectfactory${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/librequestmodel${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libcubedefmodel${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libcommonobjmodel${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/librptdefmodel${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/ras/libdatadefmodel${SHAREDLIBSUFFIX?}
${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/crpe/libquerypanel${SHAREDLIBSUFFIX?}"

if [ -f "${BOBJEDIR?}/enterprise115/$SOFTWAREPATH/crpe/mw/setmwruntime" ]; then
MWNO_SIGNAL_CATCHING=false
export MWNO_SIGNAL_CATCHING
for ITEM in $REGSVR32LIST
do
if [ -f "$ITEM" ]; then
safeeval '"$MWHOME/bin-${MWCONFIG_NAME}_optimized/regsvr32" -c -nodisplay -s "$ITEM" >/dev/null'
fi
done
MWNO_SIGNAL_CATCHING=true
export MWNO_SIGNAL_CATCHING
fi

# We need this to ensure that our registry changes are persisted to disk.
# This must be done AFTER we have registered all our MW components.
if [ -f "$MWHOME/bin/mwadm" ]; then
"$MWHOME/bin/mwadm" stop -f >/dev/null
fi

IFS=$OLDIFS

echo ${NOWREGISTERINGCOMPLETE}
