﻿//region session cookie,while mycontact(default contact) expires after 100 days.
var _current_contact=false;
var myCookie={
    createCookie:function(name,value,days){
	    if (days) {
		    var date = new Date();
		    date.setTime(date.getTime()+(days*24*60*60*1000));
		    var expires = "; expires="+date.toGMTString();
	    }
	    else var expires = "";
	    document.cookie = name+"="+value+expires+"; path=/";
    },
    readCookie:function(name){
	    var nameEQ = name + "=";
	    var ca = document.cookie.split(';');
	    for(var i=0;i < ca.length;i++) {
		    var c = ca[i];
		    while (c.charAt(0)==' ') c = c.substring(1,c.length);
		    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	    }
	    return null;
    },
    deleteCookie:function(name){
	    this.createCookie(name,"",-1);
    }
};
var maxibit_contact={
    country:false,
    regions:false,
    contactCheckbox:false,
    imgCertified:false,
    approot:false
}

function setMyContact(checkbox){
    if(!checkbox.checked){
        myCookie.deleteCookie('mycontact');
        myCookie.deleteCookie('region');
    }else{
        if(_current_contact){
            var _item=false;
            var _region=maxibit_contact.regions;
            var _options=_region.options;
            for(var i=0;i<_options.length;i++){
                if(_options[i].selected){
                    _item=_options[i];
                    break;
                }
            }
            var _myregion='';
            if(_item) _myregion=encodeURIComponent(_item.text.replace(' *',''));
            var _value=maxibit_contact.country.value+','+
                maxibit_contact.regions.value+','+
                _current_contact.id+','+_myregion;
            myCookie.createCookie('mycontact',_value,100);
            myCookie.createCookie('region_current',maxibit_contact.country.value+','+maxibit_contact.regions.value);
            if(_item){
                myCookie.createCookie('region',_item.text.replace(' *',''));
            }
            window.location.href=window.location.href;
        }
    }
}
function countryChanged(){
    if(maxibit_contact.country.value=='2'){
        window.location.href=maxibit_contact.approot+'contact/contact_uk.aspx';
        return;
    }
    maxibit_contact.contactCheckbox.checked='';
    var _url=maxibit_contact.approot+'common/ajaxbase.aspx';
    var _data='classpath=dmaxibit.contact.utils,dmaxibit&method=listRegionsByCountry'+
        '&countryid='+maxibit_contact.country.value;        
    var _tbody=document.getElementById('contacts');
    var _trs=_tbody.getElementsByTagName('TR');
    var _total=_trs.length;
    for(var i=0;i<_total;i++){
        _tbody.removeChild(_trs[0]);
    }
    Ajax.AsyncPost(_url,_data,function(responseText){
        var _regions=eval('('+responseText+')');
        var regions=maxibit_contact.regions;
        regions.options.length=0;
        regions.options[0]=new Option('--Choose--','-1');
        for(var i=0;i<_regions.length;i++){
            //var _option=new Option(_regions[i]._name,_regions[i]._id);
            var _option;
            //_option.urlname=_regions[i]._urlname;
            if(_regions[i]._isCertified){
                _option=new Option(_regions[i]._name+' *',_regions[i]._id);            
                _option.className='region-certified';
                _option.certified=true;
            }else{
                _option=new Option(_regions[i]._name,_regions[i]._id);            
                _option.className='region';
            }
            regions.options[i+1]=_option;
            
        }
    });
}

function regionChanged(initContact){
    var _country=maxibit_contact.country.value;
    var _region=maxibit_contact.regions.value;
    if(_region=='-1') return;
    var _isCertified=false;
    var _options=maxibit_contact.regions.options;
    var _selected=false;
    for(var i=0;i<_options.length;i++){
        if(_options[i].selected){
            var _certified=_options[i].getAttribute('certified') || _options[i].certified;
            if(_certified) _isCertified=true;
            _selected=_options[i];
            break;
        }
    }
    if(_selected){
        var _region=_selected.text.toLowerCase().replace(' *','').replace(' ','_').replace('å','a').replace('ü','u');
        if(_region=='stockholm_hq') _region='stockholm';
        var _url_footer=maxibit_contact.approot+'common/ajaxbase.aspx';
        var _data_footer='classpath=dmaxibit.contact.utils,dmaxibit&method=getfooter'+
            '&region=footer_'+_region;
        Ajax.AsyncPost(_url_footer,_data_footer,function(responseText){
            var _ffooter=document.getElementById('ffooter');
            _ffooter.innerHTML=responseText.replace('[%=basePath%]',maxibit_contact.approot);
        });
    }
    if(_selected){
        myCookie.createCookie('region',_selected.text.replace(' *',''));
        myCookie.createCookie('region_current',_country+','+maxibit_contact.regions.value);
    }
    
    /*    
    myCookie.createCookie('mycontact',maxibit_contact.country.value+','+maxibit_contact.regions.value+',-1');
    if(_selected) myCookie.createCookie('region',_selected.text.replace(' *',''));
    window.location.href=window.location.href;
    */
    var _url=maxibit_contact.approot+'common/ajaxbase.aspx';
    var _data='classpath=dmaxibit.contact.utils,dmaxibit&method=listContactsByRegion'+
        '&region='+maxibit_contact.regions.value;
    Ajax.AsyncPost(_url,_data,function(responseText){
        var _container=document.getElementById('contacts');
        var _tbody=document.getElementById('contacts');
        var _trs=_tbody.getElementsByTagName('TR');
        var _total=_trs.length;
        for(var i=0;i<_total;i++){
            _tbody.removeChild(_trs[0]);
        }
        var _contacts=eval('('+responseText+')');
        var _template=document.getElementById('contact_template');
        var _fname=document.getElementById('fname');
        var _lname=document.getElementById('lname');
        var _title=document.getElementById('title');
        var tr=false;
        var _initItem=false;
        for(var i=0;i<_contacts.length;i++){
            _fname.innerHTML=_contacts[i].fname;
            _lname.innerHTML=_contacts[i].lname;
            _title.innerHTML=_contacts[i].title;
            var _item=_template.cloneNode(true);
            _item.style.display='';
            if(i%2==0){
                tr=document.createElement('tr');
                _container.appendChild(tr);
            }
            var td=document.createElement('td');
            td.cfname=_contacts[i].fname;
            td.clname=_contacts[i].lname;
            td.ctitle=_contacts[i].titlle;
            _item.id=_contacts[i].id;
            if(initContact && initContact==_contacts[i].id) _initItem=_item;
            if(!initContact && i==0) _initItem=_item;
            _item.onclick=function(){showContact(this);}
            _item.ctitle=_contacts[i].title;
            _item.cfname=_contacts[i].fname;
            _item.clname=_contacts[i].lname;
            _item.caddress=_contacts[i].address;
            _item.cpicture=_contacts[i].picture;
            _item.czip=_contacts[i].zip;
            _item.company=_contacts[i].company;
            _item.tel1=_contacts[i].tel1;
            _item.tel2=_contacts[i].tel2;
            _item.mobile=_contacts[i].mobile;
            _item.city=_contacts[i].city;
            _item.email='<a href="mailto:'+_contacts[i].email+'">'+_contacts[i].email+'</a>';
            _item.website=_contacts[i].website;
            tr.appendChild(td);
            td.appendChild(_item);
        }
        if(_initItem) {
            showContact(_initItem);
            _cookie=myCookie.readCookie('mycontact');
            if(_cookie!=null){
                try{
                    var _mycontact=_cookie.split(',')[2];
                    if(_mycontact==_initItem.id) maxibit_contact.contactCheckbox.checked='checked';                  
                    else maxibit_contact.contactCheckbox.checked='';
                }catch(Exception){}
            }
        }
        if(_isCertified) maxibit_contact.imgCertified.src=maxibit_contact.approot+'modules/contact/certified_partner.gif';
        else maxibit_contact.imgCertified.src=maxibit_contact.approot+'modules/contact/1px.gif';
        //showContact(_dummy)
        if(_region == 'stockholm') maxibit_contact.imgMustach.src=maxibit_contact.approot+'modules/contact/mustach.gif';
        else maxibit_contact.imgMustach.src=maxibit_contact.approot+'modules/contact/1px.gif';
    });
}
function showMyContact(){
    var _contact=false;
    var _current=myCookie.readCookie('region_current');
    if(_current!=null){
        _contact=_current;
        var _default=myCookie.readCookie('mycontact');
        if(_default!=null){
            try{
                var _region0=_contact.split(',')[1];
                var _region1=_default.split(',')[1];
                if(_region0==_region1) _contact=_default;
            }catch(err){}
        }        
    }
    else if(myCookie.readCookie('mycontact')!=null) _contact=myCookie.readCookie('mycontact');

    //var mycontact=myCookie.readCookie("mycontact");
    //if(mycontact!=null){
    if(_contact){
        var tripple=_contact.split(',');
        var _country=false,_region=false,_contact_=false;
        try{_country=tripple[0];_region=tripple[1];_contact_=tripple[2];}
        catch(Exception){}
        if(_region>0){
            regionChanged(_contact_);
        }
    }
}
function showContact(ele){
    if(maxibit_contact.contactCheckbox.checked) maxibit_contact.contactCheckbox.checked='';
    if(_current_contact && _current_contact==ele) return;
    if(_current_contact){
        var _img=_current_contact.getElementsByTagName('IMG')[0];
        _img.src=maxibit_contact.approot+'contacts/thumbnails/focus.gif';
    }
    var _img1=ele.getElementsByTagName('img')[0];
    _img1.src=maxibit_contact.approot+'contacts/thumbnails/focus^.gif';
    _current_contact=ele; 
    var fname=document.getElementById('c_fname');
    var lname=document.getElementById('c_lname');    
    var zip=document.getElementById('c_zip');
    var picture=document.getElementById('c_picture');
    var title=document.getElementById('c_title');
    var address=document.getElementById('c_address');
    var company=document.getElementById('c_company');
    var tel1=document.getElementById('c_tel1');
    var tel2=document.getElementById('c_tel2');
    var mobile=document.getElementById('c_mobile');
    var city=document.getElementById('c_city');
    var email=document.getElementById('c_email');
    var website=document.getElementById('c_website');
    //_myContact=ele.id;
    title.innerHTML=ele.ctitle;
    fname.innerHTML=ele.cfname;
    lname.innerHTML=ele.clname;
    address.innerHTML=ele.caddress;
    if(ele.czip.length>0) zip.innerHTML=', '+ele.czip
    else zip.innerHTML=ele.czip;
    picture.src=ele.cpicture.length>0?maxibit_contact.approot+'contacts/thumbnails/'+ele.cpicture:maxibit_contact.approot+'contacts/thumbnails/visitkort_default.gif';
    company.innerHTML=ele.company;
    tel1.innerHTML=ele.tel1;
    tel2.innerHTML=ele.tel2;
    mobile.innerHTML=ele.mobile;
    email.innerHTML=ele.email;
    if(ele.city.length>0) city.innerHTML=', '+ele.city;
    else city.innerHTML=ele.city;
    if(ele.website.length>0)
        website.innerHTML='<a href="http://'+ele.website+'" target="_blank">'+ele.website+'</a>';
    else website.innerHTML='';
    
}
