#!/usr/bin/env python
# Retrives current Sage version
# Sends anonymous usage tracking info

"""
$var_utmac=GOOGLE_ANALYTICS_CODE; //enter the new urchin code
$var_utmhn=WEB_DOMAIN; //enter your domain
$var_utmn=rand(1000000000,9999999999);//random request number
$var_cookie=rand(10000000,99999999);//random cookie number
$var_random=rand(1000000000,2147483647); //number under 2147483647
$var_today=time(); //today
$var_referer=$_SERVER['HTTP_REFERER']; //referer url

$var_uservar=$storeinfo["storeid"]; //enter your own user defined variable
$var_utmp="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

$urchinUrl='http://www.google-analytics.com/__utm.gif?utmwv=1&utmn='.$var_utmn.'&utmsr=-&utmsc=-&utmul=-&utmje=0&utmfl=-&utmdt=-&utmhn='.$var_utmhn.'&utmr='.$var_referer.'&utmp='.$var_utmp.'&utmac='.$var_utmac.'&utmcc=__utma%3D'.$var_cookie.'.'.$var_random.'.'.$var_today.'.'.$var_today.'.'.$var_today.'.2%3B%2B__utmb%3D'.$var_cookie.'%3B%2B__utmc%3D'.$var_cookie.'%3B%2B__utmz%3D'.$var_cookie.'.'.$var_today.'.2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)%3B%2B__utmv%3D'.$var_cookie.'.'.$var_uservar.'%3B';

$handle = fopen ($urchinUrl, "r");
$test = fgets($handle);
fclose($handle);
"""


def getUUID():
   """
   this function gets Sage's UUID and if it does not exist, 
   creates one
   """
   import uuid
   #TODO this is bogus:
   return str(uuid.uuid1())



import urllib
import random
import time
import string

"""
urchinUrl = 'http://www.google-analytics.com/__utm.gif'
"""

var_utmn       = str(random.randint(1000000000,9999999999))
var_utmhn      = 'user-tracking'
var_referer    = 'Sage-%s' % '0.0.0' # TODO insert current version
var_utmp       = '/version-%s/%s'  % ( '0.0.0', getUUID() ) #TODO current version
var_utmac      = 'UA-66100-10'
var_cookie     = str(random.randint(10000000,99999999));     #random cookie number
var_random     = str(random.randint(1000000000,2147483647)); #number under 2147483647
var_uservar    = ''
var_today      = str(int(time.time()))

"""
analytics = {}
analytics['utmwv'] = 1
analytics['utmn']  = var_utmn
analytics['utmsr'] = '-'
analytics['utmsc'] = '-'
analytics['utmul'] = '-'
analytics['utmje'] = 0
analytics['utmfl'] = '-'
analytics['utmdt'] = '-'
analytics['utmhn'] = var_utmhn
analytics['utmr']  = var_referer
analytics['utmp='] = var_utmp
analytics['utmac'] = var_utmac
analytics['utmcc'] = '__utma%3D' + '.'+ var_cookie + '.'+ var_random + '.'+ var_today + '.'+ var_today + '.'+ var_today + '.'+ '2%3B%2B__utmb%3D' + '.'+ var_cookie + '.'+ '%3B%2B__utmc%3D' + '.'+ var_cookie + '.'+'%3B%2B__utmz%3D' + '.'+ var_cookie  + '.'+ var_today +'.2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)%3B%2B__utmv%3D' + var_cookie + '.' + var_uservar + '%3B'
"""

urchinUrl = 'http://www.google-analytics.com/__utm.gif?utmwv=1&utmn=' 
urchinUrl += var_utmn + '&utmsr=-&utmsc=-&utmul=-&utmje=0&utmfl=-&utmdt=-&utmhn=' 
urchinUrl += var_utmhn + '&utmr=' + var_referer + '&utmp=' + var_utmp 
urchinUrl += '&utmac=' + var_utmac + '&utmcc=__utma%3D' + var_cookie + '.' + var_random + '.' + var_today + '.' + var_today 
urchinUrl += '.' + var_today + '.2%3B%2B__utmb%3D' + var_cookie + '%3B%2B__utmc%3D' 
urchinUrl += var_cookie + '%3B%2B__utmz%3D' + var_cookie + '.' + var_today 
urchinUrl += '.2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)%3B%2B__utmv%3D' + var_cookie+ '.' + var_uservar + '%3B';

analyticsURL = urllib.urlopen(urchinUrl)
#analyticsURL = urllib.urlopen("%s?%s" % (urchinUrl, urllib.urlencode(analytics)))
analyticsPic = analyticsURL.read()
print analyticsPic

params = urllib.urlencode({'uuid': getUUID(), 'cur' : '0.0.0'}) #TODO current version
versionURL = urllib.urlopen("http://sagemath.org/version.html?%s" % params)
version = string.strip(versionURL.read())
print "{%s}" % version

