document.addEvent('domready', function(){

    var ua = navigator.userAgent.toLowerCase(),
        platform = navigator.platform.toLowerCase(),
        UA = ua.match(/(opera|ie|firefox|chrome|version)[\s\/:]([\w\d\.]+)?.*?(safari|version[\s\/:]([\w\d\.]+)|$)/) || [null, 'unknown', 0],
        mode = UA[1] == 'ie' && document.documentMode;
    
    var Browser = this.Browser = {
        name: (UA[1] == 'version') ? UA[3] : UA[1],
        version: mode || parseFloat((UA[1] == 'opera' && UA[4]) ? UA[4] : UA[2]),
        Platform: {
            name: ua.match(/ip(?:ad|od|hone)/) ? 'ios' : (ua.match(/(?:webos|android)/) || platform.match(/mac|win|linux/) || ['other'])[0]
        }		
    };

    var analyzer = function( element_to_inject_image ){

        var screen_size  = document.getSize();
        var session_uuid = Cookie.read('session_uuid');

        // this is Number.random() in Mootools 1.3
        var number_random = function( min, max ){
            return Math.floor( min + Math.random() * ( max - min + 1 ) )
        };
        
        if ( session_uuid == undefined ){
            var slots = Array(10).join().split(',');
            session_uuid = slots.map(function(){return String.fromCharCode(number_random(65,90))}).join('');
            Cookie.write('session_uuid', session_uuid, { duration: 1 } );
        }
        
        var data = {
            browser_name:       Browser.name,
            browser_platform:   Browser.Platform.name,
            browser_version:    Browser.version,
            screen_x: screen_size.x,
            screen_y: screen_size.y,
            url:        document.URL,
            referrer:   document.referrer,
            uuid: session_uuid,
            project_id: 6, // borgmann project
            r: Math.random()
        };
        
        var image_src = new URI('http://analyzer.zwoelf.net/pixel.gif').setData(data).toString();
        element_to_inject_image.grab( new Element( 'img', { src: image_src } ) );
        
    };
    
    analyzer( document.body );

});
