var GOOGLE_ACCOUNT_NR = 'UA-21636126-4'; 

var linkiWewn = ["http://link4", "http://www.link4", "http://drupal.link4"];

var _gaq = _gaq || [];
_gaq.push(['_setAccount', GOOGLE_ACCOUNT_NR]);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);

(function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();


function in_array(needle,haystack,argStrict){var key='',strict=!!argStrict;if(strict){for(key in haystack){if(haystack[key]===needle){return true}}}else{for(key in haystack){if(haystack[key]==needle){return true}}}return false}

function isWewnetrznyLink(url) { 

    for (var ii in linkiWewn) {
        if ( url.match(linkiWewn[ii]) ) return true;
    }
    return false;
}


function LinkText(a) {
    if ( jQuery(a).text() != jQuery(a).attr("title") && jQuery(a).attr("title").length>0 ) {
        return jQuery(a).text().substr(0,43) + " - " + (jQuery(a).attr("title").substr(0,60));
    }    
    else {
        return jQuery(a).text().substr(0,60);
    }    
}

function isURLok(url) {
    return (url != '' && url != 'undefined' && url!=undefined && url!=false) ? true : false;
}

function triggerAction(co) {
		GA_EventTracker.sendEvent(false, "Przejscia", "Strona główna - banner flash");
}

var GA_EventTracker = (function() {

    var clicks = [];
    var events = [];

    function initClicks() {
    
        for (var ii in clicks) {
            var objs = (typeof(clicks[ii].selector) == 'function') ? clicks[ii].selector() : jQuery(clicks[ii].selector);
            
            if (objs)
            objs.each(function() {
                
                var obj = this;
                
                if (obj) {
                    var a = ['_trackEvent', clicks[ii].category, clicks[ii].action];
                    if (clicks[ii].opt_label && (typeof(clicks[ii].opt_label)=='function' || clicks[ii].opt_label.length>0) ) 
                        a[a.length] = clicks[ii].opt_label;
                    if (clicks[ii].opt_value && (typeof(clicks[ii].opt_value)=='function' || clicks[ii].length>0) ) 
                        a[a.length] = clicks[ii].opt_value;
                
                    var oncl = obj.oncl;
                    
                    obj.onclick = (function(akopia){ return function() { 
                        
                        if (!jQuery(this).hasClass("GA_SEND")) {
                            var toGAQ = [];
                            toGAQ[0] = akopia[0];
                            toGAQ[1] = ( typeof(akopia[1]) == 'function' ) ? akopia[1](this) : akopia[1];
                            toGAQ[2] = ( typeof(akopia[2]) == 'function' ) ? akopia[2](this) : akopia[2];
                            if (akopia[3]) {
                                toGAQ[3] = ( typeof(akopia[3]) == 'function' ) ? akopia[3](this) : akopia[3];
                            }
                            if (akopia[4]) {
                                toGAQ[4] = ( typeof(akopia[4]) == 'function' ) ? akopia[4](this) : akopia[4];
                            }
                            //if (console) console.log(toGAQ);
                            //alert(toGAQ)
                            _gaq.push(toGAQ);
                            var url = jQuery(this).attr("href"); 
                            if (isURLok(url)) {
                                var aobj = this;
                                setTimeout(function() { aobj.onclick = oncl; document.location.href = url; }, 600);
                            } 
                            jQuery(this).addClass("GA_SEND");
                            return false;
                        }
                    }})(a);
                } 
            });
        }
    }    

    function initEvents() {
    
    
        for (var ii in events) {
            var objs = (typeof(events[ii].cond.element) == 'function') ? events[ii].cond.element() : jQuery(events[ii].cond.element);
            
            
                    
            if (objs)
            objs.each(function() {
                
                var obj = this;
                
                if (obj) {
                    var a = ['_trackEvent', events[ii].category, events[ii].action];
                    if (events[ii].opt_label && (typeof(events[ii].opt_label)=='function' || events[ii].opt_label.length>0) ) 
                        a[a.length] = events[ii].opt_label;
                    if (events[ii].opt_value && (typeof(events[ii].opt_value)=='function' || events[ii].length>0) ) 
                        a[a.length] = events[ii].opt_value;
            
                    jQuery(obj).bind(events[ii].cond.eventType, function() { (function(akopia, obj){ (function() { 
                        
                            send(obj, akopia[1], akopia[2], akopia[3], akopia[4])
                            return false;
                    })()})(a, this);
                });
              } 
            });
        }
    }    
    
    function send(obj, category, action, opt_label, opt_value) {
        
        var toGAQ = [];
        toGAQ[0] = '_trackEvent';
        toGAQ[1] = ( typeof(category) == 'function' ) ? category(obj) : category;
        toGAQ[2] = ( typeof(action) == 'function' ) ? action(obj) : action;
        if (opt_label) {
            toGAQ[3] = ( typeof(opt_label) == 'function' ) ? opt_label(obj) : opt_label;
        }
        if (opt_value) {
            toGAQ[4] = ( typeof(opt_value) == 'function' ) ? opt_value(obj) : opt_value;
        }        
        //if (console) console.log(toGAQ);
        _gaq.push(toGAQ);
    } 

    return {
        addClick: function(condition, category, action, opt_label, opt_value) {
            
                clicks[clicks.length] = {  'selector':condition.element, 
                                           'category':category, 
                                           'action':action, 
                                           'opt_label':opt_label,
                                           'opt_value':opt_value}
        },

        addEvent: function(condition, category, action, opt_label, opt_value) {
            
                events[events.length] = {  'cond':condition, 
                                           'category':category, 
                                           'action':action, 
                                           'opt_label':opt_label,
                                           'opt_value':opt_value}
        },        
        
        sendEvent: function(obj, category, action, opt_label, opt_value) {
            send(obj, category, action, opt_label, opt_value);
        },
        
        sendIfExists: function(selector, category, action, opt_label, opt_value) {
            var obj = jQuery(selector.element);
            if (obj.length>0) {
                this.sendEvent(obj, category, action, opt_label, opt_value);
            }
        },
        
        init: function() {
                initClicks(); initEvents();          
        }
    }
    
})();

jQuery(document).ready(function() {
    
    var myHost = document.location.host;
    var linksToCount = ['symetria.pl', 'www.symetria.pl', 'it.symetria.pl', 'creative.symetria.pl', 'www.symetryczna.pl', 'krysztaly.symetria.pl', 'www.krysztalysymetrii.pl', 'krysztalysymetrii.pl'];
    
    // linki zewnetrzne do serwisow it.symetria, creative.symetria
    jQuery("a").each(function() {
    
        var host = (""+jQuery(this).attr("href").toLowerCase()).match(/https?:\/\/([_a-z.-]+)/i);
        if (host) {
            host = host[1];
            if (in_array(host, linksToCount)) {
                
                if (host != myHost) {
                    jQuery(this).attr("target", "");
                    jQuery(this).click(function() {
                         GA_EventTracker.sendEvent(this, "Przejścia między serwisami", "Przejście z "+myHost, "Przejście do "+host, "");
                        _gaq.push(['_link', jQuery(this).attr("href")]); 
                        return false;
                    });
                }
            }
            else {
            
                if (host != myHost) {
                    jQuery(this).mousedown(function() {
                         GA_EventTracker.sendEvent(this, "Wyjścia z serwisu", "Przejście z "+myHost, "Przejście do "+jQuery(this).attr("href"), "");
                        return false;
                    });                    
                }
            
            }
            
                     
        }
        
        
                
    });

    if (myHost == 'it.symetria.pl') {
        GA_EventTracker.addEvent({element:"ul.lp-list a.cf-it-trigger", eventType:"mousedown"}, "Formularz", "Uruchomienie", "Przycisk", "" );
        GA_EventTracker.addEvent({element:"ul.departament a.cf-it-trigger", eventType:"mousedown"}, "Formularz", "Uruchomienie", "Link stopka", "" );
    
        jQuery("#FormularzKontaktowy div.cancel, #FormularzKontaktowy img.closeButton").live("mousedown", function(){
            GA_EventTracker.sendEvent(false, "Formularz", "Anuluj");
        });

        jQuery("#FormularzKontaktowy div.submit button").live("mousedown", function(){
            GA_EventTracker.sendEvent(false, "Formularz", "Wyślij");
        });        
        
    }
    
    GA_EventTracker.addEvent({element:"a[href$='pdf']", eventType:"mousedown"}, 
                                'Pobranie', 
                                'PDF',
                                function(el){ return LinkText(el) });
                                    
    GA_EventTracker.addEvent({element:"a[href$='doc'], a[href$='docx']", eventType:"mousedown"}, 
                                'Pobranie', 
                                'DOC',
                                function(el){ return LinkText(el) });
                                    
    GA_EventTracker.addEvent({element:"a[href$='xls'], a[href$='xlsx']", eventType:"mousedown"}, 
                                'Pobranie', 
                                'XLS',
                                function(el){ return LinkText(el) });
                                
    GA_EventTracker.addEvent({element:"a[href$='zip'], a[href$='rar']", eventType:"mousedown"}, 
                                'Pobranie', 
                                'ZIP',
                                function(el){ return LinkText(el) });                                

    GA_EventTracker.addEvent({element:"a[href$='png'], a[href$='jpg']", eventType:"mousedown"}, 
                                'Pobranie', 
                                'GRAFIKA',
                                function(el){ return LinkText(el) }); 

    GA_EventTracker.init();
});

