

var CSiteTracker=function(YWATrackerId)
{
    /* CONSTANTS */
    this.DBL_BY_EMAIL='by_email';
    this.DBL_BY_IP='by_ip';
    this.DBL_BY_PHONE='by_phone';
    this.DBL_BY_EMAIL_AND_IP='by_email_and_ip';
    this.LT_SHORT=12;
    this.LT_LONG=13;
    
    
    this.isDef=function(o)
    {
        return (typeof o !== "undefined");
    };
    
    
    /* MEMBERS */                         
    this.YWATrackerId=YWATrackerId;
    
    this.defaults={
        'page_group':'',
        'page_name':'',
        'step_name':'',
        'landing_name':''
    };
        
    /* METHODS */
    this.trackQuestions=function(questions){
        try {
            var txt_action='';
            var txt_questions='';
            var txt_values='';        
            var txt_sections='';
            for (qkey in questions) {
                var q=questions[qkey];
                txt_action+='14;';
                txt_questions+=q['q']+';';         
                txt_values+=q['a']+';';
                txt_sections+=q['s']+';';                
            }
            var YWATracker = YWA.getTracker(this.YWATrackerId);
            YWATracker.setAction(txt_action);
            YWATracker.setCF(19,txt_questions);
            YWATracker.setCF(20,txt_values);
            YWATracker.setCF(23,txt_sections);
            YWATracker.submit_action();                 
        } catch (e) {            
        }
    };    
    this.trackAction=function(action_id)
    {
        var YWATracker = YWA.getTracker(this.YWATrackerId);
        //YWATracker.setDocumentGroup(this.defaults.page_group);
        //YWATracker.setDocumentName(page_name);
        YWATracker.setAction(action_id);
        YWATracker.submit_action();                 
    };
    this.trackLead=function(type)
    {
        if (!this.isDef(type)) type=this.LT_SHORT;
        this.trackAction(type);
    };
    this.trackClick=function(target,section)
    {
        if (!this.isDef(section)) section='';
        this.trackQuestions([{
            'q':'click_'+target,
            'a':'1',
            's':section
        }]);        
    };
    this.trackPage=function(page_name)
    {
        if (!this.isDef(page_name)) {
            page_name=this.defaults.page_name;
        } else {
            this.defaults.page_name=page_name;
        }
        if (this.isDef(this.defaults.step_name) && this.defaults.step_name!='') page_name=page_name+' - '+this.defaults.step_name;
        
        var YWATracker = YWA.getTracker(this.YWATrackerId);
        YWATracker.setDocumentGroup(this.defaults.page_group);
        YWATracker.setDocumentName(page_name);
        YWATracker.setCF(4,this.defaults.landing_name);
        YWATracker.submit();
        
    };
    this.trackStep=function(step_name)
    {
        if (!this.isDef(step_name)) {
            step_name=this.defaults.step_name;
        } else {
            this.defaults.step_name=step_name;
        }
        //this.defaults.step_name=step_name;
        this.trackPage();
    };
    this.setLeadParams=function(params){
        try {
            var txt_action='';
            var txt_param='';
            var txt_values='';        
            for (qkey in params) {
                var q=params[qkey];
                txt_action+='15;';
                txt_param+=q['key']+';';         
                txt_values+=q['val']+';';
            }
            var YWATracker = YWA.getTracker(this.YWATrackerId);
            YWATracker.setAction(txt_action);
            YWATracker.setCF(21,txt_param);
            YWATracker.setCF(22,txt_values);
            YWATracker.submit_action();      
        } catch (e) {            
        }
    };
    
    this.checkAsGood=function(to){
        if (!this.isDef(to)) to='';
        var YWATracker = YWA.getTracker(this.YWATrackerId);
        YWATracker.setAction('17;15;');
        YWATracker.setCF(21,';good;');
        var t1=';'+to+";";
        YWATracker.setCF(22,t1);
        YWATracker.submit_action(); 
    };
    this.checkAsDouble=function(by){
        if (!this.isDef(by)) by='';
        var YWATracker = YWA.getTracker(this.YWATrackerId);
        YWATracker.setAction('16;15;');
        YWATracker.setCF(21,';double_status;');
        YWATracker.setCF(22,';'+by+';');
        YWATracker.submit_action(); 
    };
}



/* CONFIGURATION */

// in main template


//var STracker=new CSiteTracker("");


/*

// on the entry page

STracker.defaults.landing_name="[LANDING NAME]";

// at start of page
STracker.defaults.page_name="[PAGE NAME HERE]";
STracker.defaults.page_group="[PAGE GROUP HERE]";

// at step
STracker.defaults.step="[STEP NAME]";


// at and of page
STracker.trackPage();


*/



