// Interface
function GigyaButton(buttontext,snippetCode){
    document.write(Gigya.GetGigyaButtonHTML(buttontext,snippetCode));
}

function GigyaNewMail(snippetCode){
    Gigya.NewMail(snippetCode);
}
// Internal


var Gigya= new Object();
Gigya.GetGigyaButtonHTML=function(buttontext,snippetCode,partner,partnerData){
    if (typeof partner=='undefined') partner='';
    if (typeof partnerData=='undefined') partnerData='';
    var B=new Array();var i=0;
    //debugger;
    B[i++]='<input type="button" class="gigyaButton" value="';
    B[i++]=Gigya.EC_HA.ESIC(buttontext);
    B[i++]='" onclick="Gigya.NewMail(\''
    B[i++]=Gigya.EC_HA.ESIC(Gigya.EC_JSS.ESIC(snippetCode));
    B[i++]='\',\'';
    B[i++]=Gigya.EC_HA.ESIC(Gigya.EC_JSS.ESIC(partner));
    B[i++]='\',\'';
    B[i++]=Gigya.EC_HA.ESIC(Gigya.EC_JSS.ESIC(partnerData));
    B[i++]='\');return false;" />';
    var s=B.join('');
    //alert(s);
    return s;
}

Gigya.CreateInput=function(IdAndName,type){
   var i=document.createElement('INPUT');
   i.id=IdAndName;
   i.name=IdAndName;
   //i.type=type;
   return i;
}

Gigya.NewMail=function(snippet,partner,partnerData){
    if (typeof partner=='undefined') partner='';
    if (typeof partnerData=='undefined') partnerData='';
    if (partner=='') {
        partner=Gigya.guessPartner();
    }
    myform=document.createElement("FORM");
    
    myform.action='http://www.gigya.com/web/ref/partnersMailTo.aspx';
    myform.method='POST';
    myform.target='_blank';
    myform.id='gigyaMailToFrom';
    var i1=Gigya.CreateInput('action');
    i1.value='mailto';
    var i2=Gigya.CreateInput('mailto');
    var i2=Gigya.CreateInput('isPublic');
    var i3=Gigya.CreateInput('subject');
    var i4=Gigya.CreateInput('HTMLBody');
    i4.value=snippet;
    var i5=Gigya.CreateInput('partner');
    i5.value=partner;
    var i6=Gigya.CreateInput('partnerData');
    i6.value=partnerData;

    myform.appendChild(i1);myform.appendChild(i2);myform.appendChild(i3);myform.appendChild(i4);myform.appendChild(i5);myform.appendChild(i6);

    var gmtfc=document.getElementById('GigyaMailToFormContainer');
    if (gmtfc==null){
        gmtfc=document.createElement("SPAN");
        gmtfc.innerHTML='&nbsp;';
        gmtfc.style.display='none';

        var bd=document.getElementsByTagName("BODY")[0];
        bd.appendChild(gmtfc);
    }

    gmtfc.appendChild(myform);
    myform.submit();
}

Gigya.guessPartner=function(){
    var loc=''+document.location.href;
    if (loc.indexOf('pyzam')>-1) return 'pyzam';
    return '';
}
Gigya.EscapingContext=function(name,delimiter,delimiter2,escapePairs){
    this.name=name;
    this.delimiter=delimiter;
    this.delimiter2=delimiter2;
    this.escapePairs=escapePairs;
}

Gigya.EscapingContext.prototype=new Object();
Gigya.EscapingContext.prototype.ESIC= function(s){
        var t=s;
        var pair;
        for(var i=0;null!=(pair=this.escapePairs[i]);i++){
            t=t.replace(pair[0],pair[1]);
        } 
        return t;
    }

Gigya.EC_HA=new Gigya.EscapingContext('HA','"','"',[[/"/g,'&quot;'],[/[\r]/g,'\\r'],[/[\n]/g,'\\n'],[/[\t]/g,'\\t'],[/[\f]/g,'\\f'],[/[\b]/g,'\\b']]); 
Gigya.EC_NoWrap=new Gigya.EscapingContext('NoWrap','','',[[/[ ]/g,'&nbsp;'],[/[\-]/g,'&#8209;']]);
Gigya.EC_NoTags=Gigya.EscapingContext('NoTags','','',[[/[<]/g,'&lt;']]);
Gigya.EC_JSS=new Gigya.EscapingContext('JSS','\'','\'',[[/\\/g,'\\\\'],[/'/g,'\\\''],[/[\r]/g,'\\r'],[/[\n]/g,'\\n'],[/[\t]/g,'\\t'],[/[\f]/g,'\\f'],[/[\b]/g,'\\b']]);
Gigya.EC_JSD=new Gigya.EscapingContext('JSD','"','"',[[/\\/g,'\\\\'],[/"/g,'\\"'],[/[\r]/g,'\\r'],[/[\n]/g,'\\n'],[/[\t]/g,'\\t'],[/[\f]/g,'\\f'],[/[\b]/g,'\\b']]);
