﻿var FF_GCAL = "https://addons.mozilla.org/downloads/latest/12871/addon-12871-latest.xpi?src=external-SO-";
var FF_GMAIL = "https://addons.mozilla.org/downloads/latest/14971/addon-14971-latest.xpi?src=external-SO-";
var FF_GS = "https://addons.mozilla.org/downloads/latest/14972/addon-14972-latest.xpi?src=external-SO-";
var FF_MP = "https://addons.mozilla.org/downloads/latest/57006/addon-57006-latest.xpi?src=external-SO-";
var CH_GCAL = "https://chrome.google.com/extensions/detail/ddpjcojaoicnomgkjeeepiiplgheophj";
var CH_GMAIL = "https://chrome.google.com/extensions/detail/jpaigemdgcbgjbndcdmiknmdnocghljp";
var CH_GS = "https://chrome.google.com/extensions/detail/eehkplkipglbebobehalajdaggmepgoo";
var CH_MP = "https://chrome.google.com/extensions/detail/hdolpghnnmndklcpmhdaenaabbpgkbik";
var SA_GCAL = "/Add-ons/sogcal.safariextz";
var SA_GMAIL = "/Add-ons/sogmail.safariextz";
var SA_GS = "/Add-ons/GS.safariextz";
var SA_MP = "/Add-ons/MP.safariextz";
var STARTER_URL = "http://www.google.com/enterprise/marketplace/viewListing?productListingId=3434+1098400030594632879";
var PRO_URL = "https://www.google.com/enterprise/marketplace/viewListing?productListingId=3434+5937275400324828175";

function JumpToPage(src)
{
    window.top.location.href = src;
}
function JumpToURL(src)
{
    window.open(src);
}
    
function ShowVid()
{
    if (ShowVideo)
    {
        ShowVideo('8BLhbpREg0w','Introduction to ScheduleOnce');
    }
}
function Download(name, page)
{
        var aPage = (page == null)? '' : '/'+page; 
        switch (name)
        {
         case "sogcal":
            if (browser.isFF)
            {
                window.location = FF_GCAL+page;
                
                Analytics('sogcal/FF'+aPage);
            }
            else if (browser.isChrome){
                window.open(CH_GCAL);
                Analytics('sogcal/CH'+aPage);
            } else if (browser.isIE){
                window.location = "google-calendar-widget.aspx#IEinstall";
            }else if(browser.isSafari){
                if (browser.version < 5){
                    alert('Only Safari version 5.0 and up supports extension, you can install the latest version of safari from Apple website');
                }
                else{
                    window.open(SA_GCAL);
                    Analytics('sogcal/SA'+aPage);
                }
            }else {
                alert ('The Add-on supports only Firefox, Chrome, Safari, and Internet Explorer');
            }
           
            break;
         case "sogmail":
            if (browser.isFF)
            {
               window.location = FF_GMAIL+page;
                Analytics('sogmail/FF'+aPage);
            }else if (browser.isChrome){
                window.open(CH_GMAIL);
                Analytics('sogmail/CH'+aPage);
            }else if(browser.isSafari){
                if (browser.version < 5){
                    alert('Only Safari version 5.0 and up supports extension, you can install the latest version of safari from Apple website');
                }
                else{
                    window.open(SA_GMAIL);
                    Analytics('sogmail/SA'+aPage);
                }
            }else{
                alert ('The Add-on supports only Firefox, Safari and Chrome');
            }
            break;
         case "sogs":
            if (browser.isFF)
            {
                window.location = FF_GS+page;
                Analytics('shortcut/GS/FF'+aPage);
            }else if (browser.isChrome){
                window.open(CH_GS);
                Analytics('shortcut/GS/CH'+aPage);
            }else if(browser.isSafari){
                if (browser.version < 5){
                    alert('Only Safari version 5.0 and up supports extension, you can install the latest version of safari from Apple website');
                }
                else{
                    window.open(SA_GS);
                    Analytics('shortcut/GS/SA'+aPage);
                }
            }else{
                alert ('The Add-on supports only Firefox, Safari and Chrome');
            }
            break;   
          case "somp":
            if (browser.isFF)
            {
                //window.location = FF_MP+page;
                window.location = FF_MP;
                Analytics('shortcut/MP/FF'+aPage);
            }else if (browser.isChrome){
                window.open(CH_MP);
                Analytics('shortcut/MP/CH'+aPage);
            }else if(browser.isSafari){
                if (browser.version < 5){
                    alert('Only Safari version 5.0 and up supports extension, you can install the latest version of safari from Apple website');
                }
                else{
                    window.open(SA_MP);
                    Analytics('shortcut/MP/SA'+aPage);
                }
            }else{
                alert ('The Add-on supports only Firefox, Safari and Chrome');
            }
            break;                
        }
    
}
function Analytics(app)
{
    if (document.referrer.indexOf('userstyles.org')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/userstyles.org');
    }
    else if (document.referrer.indexOf('reloadevery.mozdev.org')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/reloadevery.mozdev.org'); 
    }
    else if (document.referrer.indexOf('dictionarysearch.mozdev.org')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/dictionarysearch.mozdev.org'); 
    }
    else if (document.referrer.indexOf('brief.mozdev.org')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/brief.mozdev.org'); 
    }
    else if (document.referrer.indexOf('newtabking.com')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/newtabking.com'); 
    } 
    else if (document.referrer.indexOf('skipscreen.com')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/skipscreen.com'); 
    }               
    else if (document.referrer.indexOf('webmailnotifier.mozdev.org')>0)
    {
        AnalyticsTracker('/AddonDownload/'+app+'/Referrer/webmail');
    }
    else{
        AnalyticsTracker('/AddonDownload/'+app);
    }

}

///Rotate quotes
function rotateText(el1, el2) {
    setOpacity(el1, 0);
    setOpacity(el2, 0);
   // var t = rotateText.texts[textGroup];
    var t1 = rotateText.texts["quotes"];
    var t2 = rotateText.texts["authors"];  
    var i = Math.floor(Math.random() * (t1.length));
    el1.innerHTML = t1[i];
    el2.innerHTML = t2[i];
    unfadeText(el1, el2);    
}

rotateText.texts = {
    quotes: [
        '"I love your scheduler--it makes life sane"',
        '"Killer App! I\'ve been looking for something like this for awhile"',
        '"This is it. Your scheduling engine is the best!"',
        '"Now I can quickly reach an agreed upon time. Highly recommended!"',
        '"I love your service!"',
        '"Our staff and partners say it\'s very easy to use"',
        '"Meeting attendance has improved since we begun using your product"',
        '"ScheduleOnce sure makes finding meeting times so much easier"'
        ],
    authors: [
        'Mary E. Edwards,<br/>PhD Professor of Economics, St. Cloud State University',
        'Greg Allbright,<br/>CEO & Founder, Change for a Dollar',
        'Oudi Antebi,<br/>CEO, OffiSync',
        'Michael Cohn,<br/>CEO, Cloud Sherpas',
        'Iliano Cervesato,<br/>Associate Professor, Carnegie Mellon University',
        'William Matson,<br/>Executive Director, Pathways Community Network',
        'William Matson,<br/>Executive Director, Pathways Community Network',
        'Tony Wong,<br/>Community Volunteer, Burnaby BC Canada'
        ]
};

function setOpacity(el, value) {
    el.style.opacity = value / 100;
    el.style.filter = "alpha(opacity=" + value + ")";
}

function unfadeText(el1, el2) {
    var v = el1.style.opacity * 100 + 1;
    if(v > 100) {
        setOpacity(el1, 100);
        setOpacity(el2, 100);
        setTimeout(bundleFunction(null, fadeText, [el1, el2]), 2000);
        return;
    }
    setOpacity(el1, v);
    setOpacity(el2, v);
    setTimeout(bundleFunction(null, unfadeText, [el1, el2]), 10);
}

function fadeText(el1, el2) {
    var v = el1.style.opacity * 100 - 1;
    if(v < 0) {
        setOpacity(el1, 0);
        setOpacity(el2, 0);
        rotateText(el1, el2);
        //or... setTimeout(bundleFunction(null, rotateText, [el1, el2]), NUMBER);
        return;
    }
    setOpacity(el1, v);
    setOpacity(el2, v);
    setTimeout(bundleFunction(null, fadeText, [el1, el2]), 10);
}

function bundleFunction(context, func, args) {
    context = context || null;
    if(typeof func == "string" && context)
        func = context[func];
    if(!args)
        args = [];
    else if(!(args instanceof Array))
        args = [args];
    return function() {
        return func.apply(context, args);
    };
}