#!/usr/bin/python3

#Copyrighted by Christos
#Do not use without permission.

import hashlib
import time
from os import environ
from local import log, update_table, randhash, dbconnect


print("Content-type: text/javascript\n\n")

#Cookies

#First, check for a cookie.  If it exists, look for the session_id cookie.
#If it doesn't exist, set it using the exncrypted exact time.

session_id=''
try:
    old_cookie = environ.get('HTTP_COOKIE')
    #log(old_cookie)
    if not old_cookie:
        print("console.log(\"No Cookie set\")")
        old_cookie = ""
        session_id = ""
    #Convert existing cookie into key value dict
    old_cookie=old_cookie.split(';')
    cookies=[]
    for row in old_cookie:
        cookies.append(tuple((row.split('=')[0].lstrip(),row.split('=')[1])))
    old_cookie=dict(cookies)
    #Check if session_id cookie exists
    try:
        old_cookie=old_cookie["session_id"]
        session_id=old_cookie
    #If session_id cookie does not exist, create it using encryption algorithm
    except:
        old_cookie=""
        session_id = randhash()
        print("document.cookie = \"username=Christos;path=/\"")
        print("document.cookie = \"session_id="+session_id+";path=/\"")
except Exception as e:
    log("Exception: "+str(e))
    old_cookie =  ""

log(str(old_cookie))

if(session_id):
    mydb = dbconnect()

    tablename="sessions"
    columns = [
            "session_id"
            ]
    values = [
            session_id
            ]

    log(update_table(mydb,tablename,columns,values,1))
    update_table(mydb,tablename,columns,values,0)
else:
    log("No session id")
