#!/bin/sh

# HASH __ANALYZER__ __LOGFILE__ __ANALYZER_LANG__
# DEPEND __CONFIG__

NAME=__NAME__
BIN=__BIN__
CONFIG=__CONFIG__
CONFIGDIR=__CONFIGDIR__
LOGFILE=__LOGFILE__
DOCROOT=__DOCROOT__
DIR=$DOCROOT/webstat
USER=$(stat -c '%U' $DOCROOT)
GROUP=$(stat -c '%G' $DOCROOT)
if [ ! -d $DIR ]; then mkdir $DIR; chown -R $USER:$GROUP $DIR; fi

cd $CONFIGDIR
$BIN -config=$NAME -LogFile=$LOGFILE > /dev/null 2> /dev/null
if [ ! -d $DIR ]; then exit 1; fi
list="alldomains
allhosts
lasthosts
unknownip
allemails
lastemails
allemailr
lastemailr
alllogins
lastlogins
allrobots
lastrobots
urldetail
urlentry
urlexit
osdetail
browserdetail
unknownbrowser
unknownos
refererse
refererpages
keyphrases
keywords
errors404
downloads"

if [ `uname` = "Linux" ]; then
  YEAR=`date "--date=-1 month" +%Y`
  MONTH=`date "--date=-1 month" +%m`
  SED="sed -re"
  CDATE="date -d"
  NOW="01"
else
  YEAR=`date -v-1m +%Y`
  MONTH=`date -v-1m +%m`
  SED="sed -E"
  CDATE="date -j"
  NOW="010000"
fi

$BIN -config=$NAME -month=$MONTH -year=$YEAR -output -staticlinks -staticlinksext=$MONTH$YEAR.html > $DIR/index.$MONTH$YEAR.html
for i in $list; do
	$BIN -config=$NAME -month=$MONTH -year=$YEAR -output=$i -staticlinks > $DIR/awstats.$NAME.$i.$MONTH$YEAR.html
done

sleep 1

YEAR=`date +%Y`
MONTH=`date +%m`
$BIN -config=$NAME -output -staticlinks -staticlinksext=$MONTH$YEAR.html > $DIR/index.$MONTH$YEAR.html
for i in $list; do
	$BIN -config=$NAME -output=$i -staticlinks > $DIR/awstats.$NAME.$i.$MONTH$YEAR.html
done

cd $DIR

echo $MONTH$YEAR | $SED 's/^.*\.(.{2})(.{4})\..*$/\2\1/' 2> /dev/null > /dev/null
if [ $? -eq 0 ]; then
	for i in `ls -t index.*.html`; do
		TMP="`echo $i | $SED 's/^.*\.(.{2})(.{4})\..*$/\2\1/'`$NOW"
		DATE=`$CDATE $TMP "+%B %Y"`
		DATA="$DATA<a href=\"$i\">$DATE<\/a><br\/>"
	done
	unlink index.html
	cat index.$MONTH$YEAR.html | $SED '/^<table>$/,$d' | $SED "s/14px;\">[^<]*<\/span><\/td><\/tr>$/14px;\">$DATA<\/span><\/td><\/tr>/" > index.html
	echo "</body></html>" >> index.html
else
	ln -sf index.$MONTH$YEAR.html index.html
fi
