
#!/bin/sh
# File	: upd_versions.sh
# By	: Maarten.deBoer@Atos.net, 150324
# Subject	: Script to process history
#(0.2)	: BASEDIR
#(0.7)	: From proc_history
#(0.8)	: Rem. # filers
#(0.9)	: Add COUNTRY
#(0.10)	: Mod Ser.Nr -> Model
#(0.11)	: Mod MONTH
#(0.12)	: Mod OS_VERSION | sort -u
#(0.13)	: Check SERNT <> empty
#(0.14)	: <> Ser.Nr model
#(0.15)	: 8.3.1 = cDOT = L.Blue
#(0.16)	: At OSVERIONS added `awk '{print $1}` to ge rid of [TAB]
PGM="`basename $0|cut -d\. -f1`"
VER="0.16"
TMP="/tmp/${PGM}.$$"

#BASEDIR="/appl/mdr/afsp/NL"
BASEDIR="`pwd | sed 's/scripts//'|sed 's/bin//'`"
LOG="${BASEDIR}/log/${PGM}.log"
OUT="${BASEDIR}/html/versions.html"

COUNTRY="`echo ${BASEDIR}| cut -d\/ -f6`"

# Number of Month
NRMONTH=12

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

touch ${TMP}
cd ${BASEDIR}/data/versions/

# Create PAGE
echo "<!DOCTYPE html>" > ${OUT}
echo "<HTML>" >> ${OUT}
echo "<HEAD>" >> ${OUT}
echo "<META charset='UTF-8'>" >> ${OUT}
echo "<META content=Maarten de Boer name=AUTHOR>" >> ${OUT}
echo "<TITLE> versions </TITLE>" >> ${OUT}
echo "<basefont face='verdana'>" >> ${OUT}
echo "</HEAD>" >> ${OUT}
echo "<BODY aLink=red bgColor=#D3D0D3 link=red text=#000000 vLink=#ff0000>" >> ${OUT}

echo "<TABLE BORDER=0 WIDTH='100%'>" >> ${OUT}
echo "<TR WIDTH=100% HEIGHT=40px>" >> ${OUT}
echo "  <TD bgColor=#0066A1>" >> ${OUT}
echo "    <FONT COLOR=white face='verdana' size='5'> <B> <A HREF="index.html">Filer</A> version history (ontap levels) of ${COUNTRY} </B> </FONT>" >> ${OUT}
echo "    <BR>" >> ${OUT}
echo "    <DIV align=right>" >> ${OUT}
echo "    <FONT COLOR=white face='verdana' size='-3'> For internal use. (c) Atos BTN 2015 </B> </FONT>" >> ${OUT}
echo "    </DIV>" >> ${OUT}
echo "  <TD>" >> ${OUT}
echo "</TR>" >> ${OUT}
echo "</TABLE>" >> ${OUT}

echo "<TABLE BORDER=1>" >> ${OUT}
echo -n "" > ${TMP}

# Header
echo "<TR>" >> ${OUT}
echo -n "# Filer;SerialNumber;Model;" >> ${TMP}
echo "  <TD> <FONT face='verdana' size=1> <B>Filer:</B> </TD> " >> ${OUT}
echo "  <TD> <FONT face='verdana' size=1> <B>SerNr:</B> </TD> " >> ${OUT}
echo "  <TD> <FONT face='verdana' size=1> <B>Model:</B> </TD> " >> ${OUT}
ls -1dr 20*|head -n ${NRMONTH}|while read MONTH
do
  echo -n "${MONTH};" >>  ${TMP}
  echo "  <TD> <FONT face='verdana' size=1> <B>${MONTH}:</B> </TD> " >> ${OUT}
done  # ${MONTH}
echo "" >> ${TMP}
echo "</TR>" >> ${OUT}

COUNT=0
# Get all SerialNumbers and find filername & OS-version with it per month
cat */*.csv|egrep -v 'Controller|Total'|awk -F\; '{print $1,$3,$6}'|sort -u|while read FILER MODEL SERNR
do
  if [ "${SERNR}" != "" ]; then
    COUNT=`expr ${COUNT} + 1`
    echo "${FILER};${MODEL};${SERNR};${COUNT} ..."
    echo -n "${FILER};${SERNR};${MODEL};" >> ${TMP}
    echo "  <TD> <FONT face='verdana' size=1> ${FILER} </TD> " >> ${OUT}
    echo "  <TD> <FONT face='verdana' size=1> ${SERNR} </TD> " >> ${OUT}
    echo "  <TD> <FONT face='verdana' size=1> ${MODEL} </TD> " >> ${OUT}
    ls -1dr 20*|head -n ${NRMONTH}| while read MONTH
    do
      echo "${MONTH} ..."
# Check is SERNR is NOT empty. Otherwise do not process
      OSVERSION="`grep \"\;${SERNR}\;\" ${MONTH}/*.csv|awk -F\; '{print $4}'|awk '{print $1,$2}'|sort -u`"
      echo -n "${OSVERSION};" >> ${TMP}

    OSCOL=""
#  OSPART="`echo ${OSVERSION}|cut -d' ' -f1|cut -d'P' -f1|cut -d\. -f1,2`"
#  case ${OSPART} in
    case ${OSVERSION} in
      7.2*) OSCOL="red" ;;
      7.3*) OSCOL="orange" ;;
      8.0*) OSCOL="orange" ;;
      8.1*) OSCOL="yellow" ;;
      8.2*) OSCOL="green" ;;
      8.3*) OSCOL="lighblue" ;;
    esac

    OSMODE="`echo ${OSVERSION}| cut -d' ' -f2`"
    case ${OSMODE} in
      "Cluster-Mode") OSCOL="lightblue" ;;
    esac

      echo "  <TD BGCOLOR=${OSCOL}> <FONT face='verdana' size=1> ${OSVERSION} </TD> " >> ${OUT}
    done  # MONTH
  fi  # SERNR <>
  echo "" >> ${TMP}
  echo "</TR>" >> ${OUT}
done  # MODEL

echo "<TR>" >> ${OUT}
echo -n "# Filer;SerialNumber;Model;" >> ${TMP}
echo "  <TD> <FONT face='verdana' size=1> <B>Filer:</B> </TD> " >> ${OUT}
echo "  <TD> <FONT face='verdana' size=1> <B>SerNr:</B> </TD> " >> ${OUT}
echo "  <TD> <FONT face='verdana' size=1> <B>Model:</B> </TD> " >> ${OUT}
ls -1dr 20*|head -n ${NRMONTH}| while read MONTH
do
  echo -n "${MONTH};" >>  ${TMP}
  echo "  <TD> <FONT face='verdana' size=1> <B>${MONTH}:</B> </TD> " >> ${OUT}
done  # ${MONTH}
echo "" >> ${TMP}
echo "</TR>" >> ${OUT}

echo "<P>" >> ${OUT}


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


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

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

cat ${TMP}

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

