$(function(){$("#helpDialog").dialog({autoOpen:false,title:"WATT IF?",modal:true});$("#about").click(function(){$("#helpDialog").dialog("open");return false})});var esIE=navigator.userAgent.indexOf("MSIE")>0;google.load("visualization","1",{packages:["piechart"]});google.load("visualization","1",{packages:["barchart"]});google.load("visualization","1",{packages:["gauge"]});var visitsValues=new Array();visitsValues[0]=["Organico",100];visitsValues[1]=["Directo",150];visitsValues[2]=["CPC",50];visitsValues[3]=["Otros",25];var conversionRates=new Array();conversionRates[0]=["Organico",1];conversionRates[1]=["Directo",2];conversionRates[2]=["CPC",3];conversionRates[3]=["Otros",4];var colors=new Array();colors[0]="#0075b5";colors[1]="#49b8f0";colors[2]="#acacac";colors[3]="#b2e26c";var visits,visitsData,visitsOptions;function drawSourceVisits(){visitsData=new google.visualization.DataTable();visitsData.addColumn("string","Fuente");visitsData.addColumn("number","Visitas");visitsData.addRows(visitsValues.length);for(var a=0;a<visitsValues.length;++a){visitsData.setValue(a,0,visitsValues[a][0]);visitsData.setValue(a,1,visitsValues[a][1])}visits=new google.visualization.PieChart(document.getElementById("visitsPie"));visitsOptions={title:"Visitas por origen de tr\u00e1fico",is3D:false,legend:"none",width:240,height:220,colors:[{color:colors[0]},{color:colors[1]},{color:colors[2]},{color:colors[3]},{color:colors[4]}]};visits.draw(visitsData,visitsOptions)}google.setOnLoadCallback(drawSourceVisits);var bar2,bar2Data,bar2Options;function drawRateBar(){bar2Data=new google.visualization.DataTable();bar2Data.addRows(1);bar2Data.addColumn("string");bar2Data.setValue(0,0,"");for(var a=0;a<conversionRates.length;++a){bar2Data.addColumn("number",conversionRates[a][0]);bar2Data.setValue(0,a+1,conversionRates[a][1])}bar2=new google.visualization.BarChart(document.getElementById("rateBar"));bar2Options={title:"Tasa de conversi\u00f3n",is3D:false,legend:"none",width:240,height:220,colors:[{color:colors[0]},{color:colors[1]},{color:colors[2]},{color:colors[3]},{color:colors[4]}]};bar2.draw(bar2Data,bar2Options)}google.setOnLoadCallback(drawRateBar);var bar1,bar1Data,bar1Options;function drawConversionBar(){bar1Data=new google.visualization.DataTable();bar1Data.addRows(1);bar1Data.addColumn("string");bar1Data.setValue(0,0,"");for(var a=0;a<visitsValues.length;++a){bar1Data.addColumn("number",visitsValues[a][0]);bar1Data.setValue(0,a+1,visitsData.getValue(a,1)*bar2Data.getValue(0,a+1)/100)}bar1=new google.visualization.BarChart(document.getElementById("conversionBar"));bar1Options={title:"Conversiones por origen de tr\u00e1fico",is3D:false,legend:"none",width:240,height:220,colors:[{color:colors[0]},{color:colors[1]},{color:colors[2]},{color:colors[3]},{color:colors[4]}]};bar1.draw(bar1Data,bar1Options)}google.setOnLoadCallback(drawConversionBar);function getGaugeValue(){var a=0;for(var b=0;b<visitsValues.length;++b){a+=bar1Data.getValue(0,b+1)}return Math.round(a)}var gauge,gaugeData,gaugeOptions;function drawGauge(){if(esIE){$("#totalBullet").html('<br /><b>Conversi&oacute;n</b><div class="gaugeTxt">'+getGaugeValue()+"</div>")}else{gaugeData=new google.visualization.DataTable();gaugeData.addColumn("number","Conversi\u00f3n");gaugeData.addRows(1);var a=getGaugeValue();gaugeData.setCell(0,0,a);if(a<2){a=2}gauge=new google.visualization.Gauge(document.getElementById("totalBullet"));gaugeOptions={min:0,max:3*a,yellowFrom:Math.round(0.5*a),yellowTo:a,redFrom:0,redTo:Math.round(0.5*a),minorTicks:5,width:110,height:110};gauge.draw(gaugeData,gaugeOptions)}}google.setOnLoadCallback(drawGauge);function updateGauge(){if(esIE){drawGauge()}else{gaugeData.setValue(0,0,getGaugeValue());gauge.draw(gaugeData,gaugeOptions)}}function changeVisits(c,b,a){visitsData.setValue(c,b,a);visits.draw(visitsData,visitsOptions);bar1Data.setValue(0,c+1,Math.floor(a*bar2Data.getValue(0,c+1)/100));bar1.draw(bar1Data,bar1Options);updateGauge()}function changeConversion(c,b,a){bar2Data.setValue(0,c+1,a);bar2.draw(bar2Data,bar2Options);bar1Data.setValue(0,c+1,Math.floor(visitsData.getValue(c,1)*a/100));bar1.draw(bar1Data,bar1Options);updateGauge()}function initSlidersHorizontal(){var b=0;var c=Math.round(getMaxVisits()*1.5);var a=1;if(a<1){a=1}$("#slider1").slider({range:"min",value:visitsValues[0][1],min:b,max:c,step:a,slide:function(d,e){$("#slider1txt").val(e.value);if(!esIE){changeVisits(0,1,$("#slider1").slider("value"))}},change:function(d,e){changeVisits(0,1,$("#slider1").slider("value"))}});$("#slider1txt").val($("#slider1").slider("value"));$("#slider2").slider({range:"min",value:visitsValues[1][1],min:b,max:c,step:a,slide:function(d,e){$("#slider2txt").val(e.value);if(!esIE){changeVisits(1,1,$("#slider2").slider("value"))}},change:function(d,e){changeVisits(1,1,$("#slider2").slider("value"))}});$("#slider2txt").val($("#slider2").slider("value"));$("#slider3").slider({range:"min",value:visitsValues[2][1],min:b,max:c,step:a,slide:function(d,e){$("#slider3txt").val(e.value);if(!esIE){changeVisits(2,1,$("#slider3").slider("value"))}},change:function(d,e){changeVisits(2,1,$("#slider3").slider("value"))}});$("#slider3txt").val($("#slider3").slider("value"));$("#slider4").slider({range:"min",value:visitsValues[3][1],min:b,max:c,step:a,slide:function(d,e){$("#slider4txt").val(e.value);if(!esIE){changeVisits(3,1,$("#slider4").slider("value"))}},change:function(d,e){changeVisits(3,1,$("#slider4").slider("value"))}});$("#slider4txt").val($("#slider4").slider("value"))}function initSlidersVertical(){var b=0;var c=100;var a=0.2;$("#slider1v").slider({range:"min",value:conversionRates[0][1],min:b,max:c,step:a,orientation:"vertical",slide:function(d,e){$("#slider1vtxt").val(e.value);if(!esIE){changeConversion(0,1,$("#slider1v").slider("value"))}},change:function(d,e){changeConversion(0,1,$("#slider1v").slider("value"))}});$("#slider1vtxt").val($("#slider1v").slider("value"));$("#slider2v").slider({range:"min",value:conversionRates[1][1],min:b,max:c,step:a,orientation:"vertical",slide:function(d,e){$("#slider2vtxt").val(e.value);if(!esIE){changeConversion(1,1,$("#slider2v").slider("value"))}},change:function(d,e){changeConversion(1,1,$("#slider2v").slider("value"))}});$("#slider2vtxt").val($("#slider2v").slider("value"));$("#slider3v").slider({range:"min",value:conversionRates[2][1],min:b,max:c,step:a,orientation:"vertical",slide:function(d,e){$("#slider3vtxt").val(e.value);if(!esIE){changeConversion(2,1,$("#slider3v").slider("value"))}},change:function(d,e){changeConversion(2,1,$("#slider3v").slider("value"))}});$("#slider3vtxt").val($("#slider3v").slider("value"));$("#slider4v").slider({range:"min",value:conversionRates[3][1],min:b,max:c,step:a,orientation:"vertical",slide:function(d,e){$("#slider4vtxt").val(e.value);if(!esIE){changeConversion(3,1,$("#slider4v").slider("value"))}},change:function(d,e){changeConversion(3,1,$("#slider4v").slider("value"))}});$("#slider4vtxt").val($("#slider4v").slider("value"));$("#startDate").datepicker({dateFormat:"yy-mm-dd"});$("#endDate").datepicker({dateFormat:"yy-mm-dd"})}$(document).ready(function(){initSlidersHorizontal();initSlidersVertical();$("#ocultar").click(function(){hideDataDiv()});$("#cambiar").click(function(){hideDataDiv()});$("#dataAccountsList").change(function(){$("#gaIdField").val($("#dataAccountsList").val());if($("#dataAccountsList").val()==""){$("#gaIdField").focus()}})});function getMaxVisits(){var a=0;for(i=0;i<4;++i){if(visitsValues[i][1]>a){a=visitsValues[i][1]}}return a}function cleanArrays(){visitsValues=[["n/a",0],["n/a",0],["n/a",0],["n/a",0]];conversionRates=[["n/a",0],["n/a",0],["n/a",0],["n/a",0]]}function initApp(){drawSourceVisits();drawRateBar();drawConversionBar();drawGauge();initSlidersHorizontal();initSlidersVertical();for(i=1;i<5;++i){$("#slider"+i).slider({value:visitsValues[i-1][1]});$("#slider"+i+"v").slider({value:conversionRates[i-1][1]});$("#prop"+i+"txt").text(visitsValues[i-1][0])}$("#sdate").text($("#startDate").val());$("#edate").text($("#endDate").val());$("#accName").text($("#dataAccountsList option:selected").text());$("#loadingDiv").hide();$("#dashboardDiv").show();$("#dataControls").hide();$("#dataLegend").show()}google.load("gdata","2.x",{packages:["analytics"]});google.setOnLoadCallback(init);function hideDataDiv(){$("#dataControls").slideToggle("fast")}function getStatus(){var a=document.getElementById("getData");a.onclick=getDataFeed;var c=document.getElementById("dataControls");var b=document.getElementById("authButton");if(!google.accounts.user.checkLogin(scope)){c.style.display="none";b.innerHTML="Autenticar con Google Analytics";$("#dataLegend").hide()}else{c.style.display="block";$("#loadingDiv").show();$("#dataAccounts").hide();b.innerHTML="Cerrar sesi&oacute;n";getAccountFeed()}}function getAccountFeed(){var a="https://www.google.com/analytics/feeds/accounts/default?max-results=50";myService.getAccountFeed(a,handleAccountFeed,handleError)}function handleAccountFeed(b){var a=b.feed.getEntries();for(var c=0,d;d=a[c];++c){$("#dataAccountsList").append($("<option></option>").attr("value",d.getPropertyValue("ga:ProfileId")).html(d.getPropertyValue("ga:AccountName")+" | "+d.getTitle().getText()+" | "+d.getPropertyValue("ga:ProfileId")));if(c==0){$("#dataAccountsList option[value='"+d.getPropertyValue("ga:ProfileId")+"']").attr("selected","selected")}}$("#gaIdField").val($("#dataAccountsList").val());$("#gaIdField").change(function(){$("#dataAccountsList option[value='']").attr("selected","selected");$("#dataAccountsList option[value='"+$("#gaIdField").val()+"']").attr("selected","selected")});$("#dataAccountsList").show();$("#loadingDiv").hide();$("#dataAccounts").show()}function getDataFeed(){var a="";if($("#campaigns:checked").length){a="https://www.google.com/analytics/feeds/data?ids=ga:"+document.getElementById("gaIdField").value+"&dimensions=ga:medium&metrics=ga:visits,ga:goalCompletionsAll&filters=ga:source!=(direct);ga:medium!~(organic|cpc|referral)&start-date="+document.getElementById("startDate").value+"&end-date="+document.getElementById("endDate").value+"&max-results=4"}else{a="https://www.google.com/analytics/feeds/data?ids=ga:"+document.getElementById("gaIdField").value+"&dimensions=ga:medium&metrics=ga:visits,ga:goalCompletionsAll&filters=ga:source==(direct),ga:medium=~(organic|cpc|referral)&start-date="+document.getElementById("startDate").value+"&end-date="+document.getElementById("endDate").value+"&max-results=4"}$("#dashboardDiv").hide();$("#dataLegend").hide();$("#loadingDiv").show();myService.getDataFeed(a,handleDataFeed,handleError)}function handleDataFeed(b){var a=b.feed.getEntries();cleanArrays();for(var c=0,d;d=a[c];++c){visitsValues[c]=[d.getValueOf("ga:medium"),d.getValueOf("ga:visits")];conversionRates[c]=[d.getValueOf("ga:medium"),100*d.getValueOf("ga:goalCompletionsAll")/d.getValueOf("ga:visits")]}initApp()}function handleError(b){var a="Lo sentimos, ha ocurrido un error!\n\nRecuerda completar los campos marcados con asterisco (*) con valores v\u00e1lidos.\n\nSi el error persiste, intenta limpiar tus cookies e iniciar una nueva sesi\u00f3n con Google Analytics.\n\nError: ";if(b.cause){a+=b.cause.status}else{a.message}$("#loadingDiv").hide();alert(a)}function init(){myService=new google.gdata.analytics.AnalyticsService("gaExportAPI_wattproject.com_WattIf");scope="https://www.google.com/analytics/feeds";var a=document.getElementById("authButton");a.onclick=function(){if(!google.accounts.user.checkLogin(scope)){google.accounts.user.login(scope)}else{google.accounts.user.logout();getStatus()}};getStatus()};
