
#!/bin/ksh
# File	: upd_netapp_systems.sh
# By	: Maarten.deBoer@Atos.net, 2017-12-28
# Subject	: Script to update web-file for systems from the NetApp DB
# set -x
#(0.2),190626	: Mod. EOS_ & ASUP add's
PGM="`basename $0|cut -d\. -f1`"
VER="0.2"
TMP="/tmp/${PGM}.$$"

BASEDIR="`pwd | sed 's/scripts//'|sed 's/bin//'`"
LOG="${BASEDIR}/log/${PGM}.log"
NETAPPDBDIR="${BASEDIR}/data/database"
DBFILENAME=""
COUNTRY2ASUP="${BASEDIR}/data/country2asup.csv"

PAGE="/appl/mdr/www/afsp/netapp-systems.html"

COUNTRYDIR="`echo ${BASEDIR}| cut -d\/ -f6`"
if [ ${COUNTRYDIR} != "netapp" ]; then
  echo "  COUNTRYDIR= NOT netapp . Wrong DIR. Exiting ..."
  exit 3
fi

echo "`date` ${PGM} v${VER} started." | tee -a ${LOG}
echo "BASEDIR=${BASEDIR}"
sleep 1

touch ${TMP}

echo "  Writing to ${PAGE} ..."

# Read Functions file
source ./afsp-db_functions.sh
DB_FUNC_VER

echo "<!DOCTYPE html>" > ${PAGE}
echo "<HTML>" >> ${PAGE}
echo "<HEAD>" >> ${PAGE}
echo "<META charset='UTF-8'>" >> ${PAGE}
echo "<META content=Maarten de Boer name=AUTHOR>" >> ${PAGE}
echo "<TITLE>AFSP:NetApp-systems</TITLE>" >> ${PAGE}
echo "<basefont face='verdana'>" >> ${PAGE}
echo "</HEAD>" >> ${PAGE}

echo "<BODY aLink=red bgColor=#D3D0D3 link=red text=#000000 vLink=#ff0000>" >> ${PAGE}

echo "<TABLE BORDER=0 WIDTH='100%'>" >> ${PAGE}

echo "<TR WIDTH=100% HEIGHT=40px>" >> ${PAGE}
echo "  <TD bgColor=#0066A1>" >> ${PAGE}
echo "    <FONT COLOR=white face='verdana' size='5'> <B> <A HREF="index.html"> NetApp </A> (ONTAP) systems </FONT>" >> ${PAGE}
echo "    <BR>" >> ${PAGE}
echo "    <DIV align=left><FONT COLOR=white face='verdana' size='1'> From NetApp SAM report(s) </FONT></DIV>" >> ${PAGE}
echo "    <DIV align=left><FONT COLOR=white face='verdana' size='-3'> Page update: `date` </FONT></DIV>" >> ${PAGE}
echo "    <DIV align=right>" >> ${PAGE}
echo "    <FONT COLOR=white face='verdana' size='-3'> For internal use. (c) Atos BTN `date +%Y`</B> </FONT>" >> ${PAGE}
echo "    </DIV>" >> ${PAGE}
echo "  <TD>" >> ${PAGE}
echo "</TR>" >> ${PAGE}

echo "<TR>" >> ${PAGE}

#echo "  <TABLE BORDER=1 WIDTH='100%'>" >> ${PAGE}
echo "  <TABLE BORDER=1>" >> ${PAGE}

echo "<TR>" >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Ctry: </B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Group name:</FONT> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serial Number: </B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>System Name:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Platform:</B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>EOS:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>OS Version:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Last (NetApp) ASUP:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>ASUP Suport status:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>ASUP Declined reason:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact name:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact number:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact mail:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt Addr:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt City:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt P.Code:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt County:</B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> SERVICE LEVEL </FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> ENTITLEMENT STATUS </FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Installed at:</FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Contract:</FONT> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Ctry: </B> </TD> " >> ${PAGE}

echo "</TR>" >> ${PAGE}

SKIP="no"
#SKIP=""
if [ ${SKIP} ]; then
echo "Collecting of all countries; hostname & ser.nr ..."
echo "# COUNTRY;DB_CONTROLER_NAME;DB_SERIAL_NUMBER;DB_SYSTEM_ID;" > ${COUNTRY2ASUP}

echo "Getting COUNTRY data ..."
sleep 1

for COUNTRY in `cd /appl/mdr/mdrglob/afsp/; ls -1d ??`
do
  echo -n " ${COUNTRY} "
  for DBFILE in `ls -1 /appl/mdr/mdrglob/afsp/${COUNTRY}/data/database/[_0-9]*.asc`
  do
    DB_READ ${DBFILE}
	echo "${COUNTRY};${DB_CONTROLER_NAME};${DB_SERIAL_NUMBER};${DB_SYSTEM_ID};" >> ${COUNTRY2ASUP}
  done  # DBFILE
done  # COUNTRY
echo ""
fi  # SKIP



# MAIN loop

echo "MAIN loop (processing ASUP-DB) ..."
sleep 1

for DBFILE in `ls -1 ${NETAPPDBDIR}/[_0-9]*.asc`
do
#  echo "  ${DBFILE}"
  DB_READ ${DBFILE}

  # Get country for NetApp Ser.Nr
  if [ "${DB_NA_SERIAL_NUMBER}" != "" ]; then
    COUNTRYNAME="`grep ${DB_NA_SERIAL_NUMBER} ${COUNTRY2ASUP}|awk -F\; '{print $1}'|sort -u|head -1`"
  fi  # DB_SERIAL_NUMBER
  CTRYCOL=""
  if [ "${COUNTRYNAME}" = "" ]; then
    CTRYCOL="yellow"
  else
    COUNTRYURL="${COUNTRYNAME}/models.html"
  fi  # COUNTRYNAME

  GRPCOL=""
  if [ "${DB_NA_GROUP_NAME}" = "" ]; then
    GRPCOL="yellow"
  fi
# Check for ATOS_ . If right, then OK
  ANSW=`echo ${DB_NA_GROUP_NAME}|grep ^ATOS_`
  if [ "${ANSW}" != "" ]; then
    GRPCOL="lightgreen"
  fi

  YEAR=`date +%Y`
  YEAR1=`date +%Y --date=1year`
  MONTH=`date +%b`
  DAY=`date +%d`

#  EOSCOL=""
#  EOSYEAR=`echo "${DB_NA_EOS_DATE}"|cut -d\, -f2`
#  if [ "${EOSYEAR}" != "" ]; then
# When less then this year, RED (no Support)
#    if [ ${EOSYEAR} -lt ${YEAR} ]; then
#      EOSCOL="red"
#    fi
#    if [ ${EOSYEAR} -eq ${YEAR} ]; then
#      EOSCOL="orange"
#    fi
#    if [ ${EOSYEAR} -eq ${YEAR1} ]; then
#      EOSCOL="yellow"
#    fi
#    if [ ${EOSYEAR} -gt ${YEAR1} ]; then
#      EOSCOL="lightgreen"
#    fi
#  fi  # ! EOSYEAR

  ASUPCOL=""
  if [ "${DB_NA_ASUP_STATUS}" = "OFF" ]; then
    ASUPCOL="red"
  fi
  if [ "${DB_NA_ASUP_STATUS}" = "DECLINE" ]; then
    ASUPCOL="orange"
  fi
  if [ "${DB_NA_ASUP_STATUS}" = "ON" ]; then
    ASUPCOL="lightgreen"
  fi

  DISPLAY_NR="${DB_NA_SERIAL_NUMBER}"
# When SerNr = <empty> then use SystemID 
  if [ "${DISPLAY_NR}" = "" ]; then
    DISPLAY_NR="_${DB_SYSTEM_ID}"
  fi

  if [ "${DISPLAY_NR}" != "" ]; then
    let "CNT=${CNT} + 1"
    echo "  ${CNT} - ${DISPLAY_NR} ..."

    echo "<TR>" >> ${PAGE}
    echo "  <TD BGCOLOR=${CTRYCOL}> <FONT face='verdana' size=2> <CENTER> <A HREF=\"${COUNTRYURL}\">${COUNTRYNAME}</A> </FONT> </TD> " >> ${PAGE}
#    echo "  <TD BGCOLOR=${GRPCOL}> <FONT face='verdana' size=1> ${DB_NA_GROUP_NAME} </FONT> </TD> " >> ${PAGE}
    echo "  <TD BGCOLOR=${ASUPCOL}> <FONT face='verdana' size=1> ${DISPLAY_NR} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SYSTEM_NAME} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_PLATFORM} </FONT> </TD> " >> ${PAGE}
#    echo "  <TD BGCOLOR=${EOSCOL}> <FONT face='verdana' size=1> ${DB_NA_EOS_DATE} </FONT> </TD> " >> ${PAGE}
    echo "  <TD BGCOLOR=${OSCOL}> <FONT face='verdana' size=1> ${DB_NA_OS_VERSION} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_LAST_ASUP} </FONT> </TD> " >> ${PAGE}
    echo "  <TD BGCOLOR=${ASUPCOL}> <FONT face='verdana' size=1> ${DB_NA_ASUP_STATUS} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_ASUP_DECLINED_REASON} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_PRIM_CONTACT_NAME} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_PRIM_CONTACT_NUMBER} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_PRIM_CONTACT_MAIL} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SERVICE_REPORT_TO_ADDRESS} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SERVICE_REPORT_TO_CITY} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SERVICE_REPORT_TO_POSTAL_CODE} </FONT> </TD> " >> ${PAGE}
    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SERVICE_REPORT_TO_COUNTRY} </FONT> </TD> " >> ${PAGE}
#    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_SERVICE_LEVEL} </FONT> </TD> " >> ${PAGE}
#    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_ENTITLEMENT_STATUS} </FONT> </TD> " >> ${PAGE}
#    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_INSTALLED_AT} </FONT> </TD> " >> ${PAGE}
#    echo "  <TD> <FONT face='verdana' size=1> ${DB_NA_CONTRACT} </FONT> </TD> " >> ${PAGE}
    echo "  <TD BGCOLOR=${CTRYCOL}> <FONT face='verdana' size=2> <CENTER> <A HREF=\"${COUNTRYURL}\">${COUNTRYNAME}</A> </FONT> </TD> " >> ${PAGE}
    echo "</TR>" >> ${PAGE}

  fi

done  # MAIN loop

echo "<TR>" >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Ctry: </B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Group name:</FONT> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serial Number: </B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>System Name:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Platform:</B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>EOS:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>OS Version:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Last (NetApp) ASUP:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>ASUP Suport status:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>ASUP Declined reason:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact name:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact number:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Contact mail:</B> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> SERVICE LEVEL </FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> ENTITLEMENT STATUS </FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Installed at:</FONT> </TD> " >> ${PAGE}
#echo "  <TD> <FONT face='verdana' size=1> <B>Contract:</FONT> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt Addr:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt City:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt P.Code:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Serv.Rpt County:</B> </TD> " >> ${PAGE}
echo "  <TD> <FONT face='verdana' size=1> <B>Ctry: </B> </TD> " >> ${PAGE}
echo "</TR>" >> ${PAGE}


echo "  ${CNT} system(s) found in ${NETAPPDBDIR}"|tee -a ${LOG}
echo "<TR>" >> ${PAGE}
  echo "  <TD></TD> " >> ${PAGE}
  echo "  <TD></TD> " >> ${PAGE}
  echo "  <TD> <B> <FONT face='verdana' size=1> ${CNT} systems </FONT> </TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
#  echo "  <TD></TD> " >> ${PAGE}
echo "</TR>" >> ${PAGE}

echo "<P>" >> ${PAGE}
echo "</TABLE>" >> ${PAGE}

 Legenda:
echo "  <TABLE>" >> ${PAGE}
echo "    <TR>" >> ${PAGE}
echo "      <TD><FONT face= 'verdana' size=2><B>Legenda: </B></TD>" >> ${PAGE}
echo "    </TR>" >> ${PAGE}
echo "    <TR>" >> ${PAGE}
echo "      <TD><FONT face= 'verdana' size=2>Country: </TD>" >> ${PAGE}
echo "      <TD BGCOLOR=yellow> <FONT face= 'verdana' size=2>NO country found</FONT> </TD>" >> ${PAGE}
echo "    </TR>" >> ${PAGE}
#echo "    <TR>" >> ${PAGE}
#echo "      <TD><FONT face= 'verdana' size=2>Group name: </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=yellow> <FONT face= 'verdana' size=2>NO group name found</FONT> </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=lightgreen> <FONT face= 'verdana' size=2>ATOS_ group name</FONT> </TD>" >> ${PAGE}
#echo "    </TR>" >> ${PAGE}
#echo "    <TR>" >> ${PAGE}
#echo "      <TD><FONT face= 'verdana' size=2>EOS: </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=red> <FONT face= 'verdana' size=2>Not this(${YEAR}) year</FONT> </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=orange> <FONT face= 'verdana' size=2>This year</FONT> </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=yellow> <FONT face= 'verdana' size=2>Next(${YEAR1}) year</FONT> </TD>" >> ${PAGE}
#echo "      <TD BGCOLOR=lightgreen> <FONT face= 'verdana' size=2>After next year</FONT> </TD>" >> ${PAGE}
#echo "    </TR>" >> ${PAGE}
echo "    <TR>" >> ${PAGE}
echo "      <TD> <FONT face= 'verdana' size=2>Last ASUP:</FONT> </TD>" >> ${PAGE}
echo "      <TD BGCOLOR=red> <FONT face= 'verdana' size=2>OFF</FONT> </TD>" >> ${PAGE}
echo "      <TD BGCOLOR=orange> <FONT face= 'verdana' size=2>DECLINE</FONT> </TD>" >> ${PAGE}
echo "      <TD BGCOLOR=lightgreen> <FONT face= 'verdana' size=2>ON</FONT> </TD>" >> ${PAGE}
echo "    </TR>" >> ${PAGE}

echo "  </TABLE>" >> ${PAGE}


# --- footer

echo "<TABLE BORDER=0 WIDTH='100%'>" >> ${PAGE}
echo "<TR WIDTH=100% > " >> ${PAGE}
echo "  <TD bgColor=#0066A1 > " >> ${PAGE}
echo "    <FONT COLOR=white face='Verdana' size='1'>" >> ${PAGE}
echo "      <CENTER>" >> ${PAGE}
echo "Contact: |Content Owner: <A HREF="mailto:Maarten.deBoer@Atos.net">Maarten de Boer</A> |Last Update: `date` [${PGM} v${VER}]<BR>" >> ${PAGE}
echo "For internal use (c) Atos S.A. `date +%Y` all rights reserved. Reproduction in whole or in part is prohibited without the written consent of Atos SA." >> ${PAGE}
echo "      </CENTER>" >> ${PAGE}
echo "    </FONT>" >> ${PAGE}
echo "  </TD>" >> ${PAGE}
echo "</TR>" >> ${PAGE}
echo "</TABLE>" >> ${PAGE}

echo "</BODY>" >> ${PAGE}
echo "</HTML>" >> ${PAGE}


rm ${TMP}
echo "`date` ${PGM} v${VER} finished." | tee -a ${LOG}
exit 0

