Ero sivun ”Widget:Leväbarometri” versioiden välillä
Järvi-meriwikistä
Rivi 32: | Rivi 32: | ||
function <!--{$id|default:algalbarochart|escape:'html'}-->_init() { | function <!--{$id|default:algalbarochart|escape:'html'}-->_init() { | ||
− | + | var today = new Date(); | |
− | + | var vuosi = <!--{$vuosi|default:0|escape:'html'}-->; | |
− | + | if (vuosi == 0) { vuosi = (today.getFullYear()); } | |
− | + | var viikko = <!--{$viikko|default:100|escape:'html'}-->; | |
− | + | if (viikko == 100) { viikko = today.getWeek(); } | |
− | + | var vertaa = <!--{$vertaa|default:undefined|escape:'html'}-->; | |
− | + | var meri = <!--{$meri|default:2|escape:'html'}-->; | |
− | + | var ely = "<!--{$ely|default:xxx|escape:'html'}-->"; | |
− | + | var showTitle = <!--{$showTitle|default:1|escape:'html'}-->; | |
− | + | //elySearch = ely.split(' ').join('%20'); | |
− | + | //elySearch= elySearch.split('ä').join('%C3%A4'); | |
− | + | //elySearch= elySearch.split('ö').join('%C3%B6'); | |
− | + | var elySearch = encodeURI(ely); | |
− | + | var minweek = <!--{$minweek|default:23|escape:'html'}-->; | |
− | + | var maxweek = <!--{$maxweek|default:39|escape:'html'}-->; | |
− | + | var lang = '<!--{$lang|default:fi|escape:'html'}-->'; | |
− | + | if (ely == "xxx") { ely = undefined; } | |
− | + | var successCount = 0; | |
− | + | var options1; | |
− | + | var data1; | |
− | + | var chart1; | |
− | + | var options2; | |
− | + | var data2; | |
− | + | var chart2; | |
− | + | var Rdata1 = new Array(); | |
− | + | var Rdata2 = new Array(); | |
− | + | for (i=minweek; i<=maxweek; i++) { | |
− | + | Rdata1[(i-minweek)] = [i.toString(), null, "", null, "", null, "", null, "", null, ""]; | |
− | + | Rdata2[(i-minweek)] = [i.toString(), null, "", null, "", null, "", null, "", null, ""]; | |
− | + | } | |
− | + | if (ely != undefined) { | |
− | + | searchStr = "action=ask&query=[[Lev%C3%A4barometridataELY::%3E0]]"; | |
− | + | searchStr += "[[ELY-keskus::" + elySearch + "]]"; | |
− | + | } else { | |
− | + | searchStr = "action=ask&query=[[Lev%C3%A4barometridataUUSI::%3E0]]"; | |
− | + | } | |
− | + | if (meri == "0") { | |
− | + | searchStr += encodeURI("[[Vesistö::Järvi]]"); | |
− | + | } else if (meri == "1") { | |
− | + | searchStr += encodeURI("[[Vesistö::Meri]]"); | |
− | + | } | |
− | + | searchStr += "[[Tyyppi::Viikkoarvo]]"; | |
− | + | searchStr += "[[Vuosi::" + vuosi + "]]"; | |
− | + | searchStr += "[[Viikko::%3E" + minweek.toString() + "]][[Viikko::%3C" + maxweek.toString() + "]]"; | |
− | + | searchStr += encodeURI('|?Viikko|?Leväbarometri|?Vesistö|limit=100'); | |
− | + | searchStr += '&format=json'; | |
− | + | jQuery.ajax({ | |
− | + | type: 'GET', | |
− | + | url: queryApi, | |
− | + | data: searchStr, | |
− | + | success: success, | |
− | + | dataType: 'jsonp' | |
− | + | }); | |
− | + | if (ely != undefined) { | |
− | + | searchStr2 = "action=ask&query=[[Lev%C3%A4barometridataELY::%3E0]]"; | |
− | + | searchStr2 += "[[ELY-keskus::" + elySearch + "]]"; | |
− | + | } else { | |
− | + | searchStr2 = "action=ask&query=[[Lev%C3%A4barometridataUUSI::%3E0]]"; | |
− | + | } | |
− | + | if (meri == "0") { | |
− | + | searchStr2 += encodeURI("[[Vesistö::Järvi]]"); | |
− | + | } else if (meri == "1") { | |
− | + | searchStr2 += encodeURI("[[Vesistö::Meri]]"); | |
− | + | } | |
− | + | if (vertaa == undefined) { | |
− | + | searchStr2 += "[[Tyyppi::Vertailuarvo]][[Vuosi::" + (today.getFullYear()) + "]]"; | |
− | + | } else { | |
− | + | searchStr2 += "[[Tyyppi::Viikkoarvo]][[Vuosi::" + vertaa + "]]"; | |
− | + | } | |
− | + | searchStr2 += "[[Viikko::%3E" + minweek.toString() + "]][[Viikko::%3C" + maxweek.toString() + "]]"; | |
− | + | searchStr2 += encodeURI('|?Viikko|?Tyyppi|?Leväbarometri|?Vesistö|limit=100'); | |
− | + | searchStr2 += '&format=json'; | |
− | + | jQuery.ajax({ | |
− | + | type: 'GET', | |
− | + | url: queryApi, | |
− | + | data: searchStr2, | |
− | + | success: success, | |
− | + | dataType:'jsonp' | |
− | + | }); | |
− | + | function i18n( text, lang ) { | |
− | + | var o = {}; | |
− | + | o[ 'Sinileväbarometri' ] = { 'en': 'Blue-green algal barometer', 'sv': 'Blågrönalgbarometer' }; | |
− | + | o[ 'Sisävedet' ] = { 'en': 'Inland waters', 'sv': 'Inlandsvatten' }; | |
− | + | o[ 'Merialueet' ] = { 'en': 'Sea areas', 'sv': 'Havsområden' }; | |
− | + | o[ 'Viikko' ] = { 'en': 'Week', 'sv': 'Vecka' }; | |
− | + | o[ 'Määritelty viikko' ] = { 'en': 'Specified week', 'sv': 'Angiven vecka' }; | |
− | + | o[ 'Ei levähavaintoja' ] = { 'en': 'No blue-green algae observations', 'sv': 'Inga blögrönalgobservationer' }; | |
+ | o[ 'Liian vähän havaintoja' ] = { 'en': 'Not enough observations', 'sv': 'För lite observationer' }; | ||
+ | o[ 'Liukuva keskiarvo' ] = { 'en': 'Moving average', 'sv': 'Glidande medelvärde' }; | ||
+ | var response = text; | ||
− | + | if ( typeof o[ text ] != 'undefined' ) { | |
− | + | if ( typeof o[ text ][ lang ] != 'undefined' ) { | |
− | + | response = o[ text ][ lang ]; | |
− | + | } | |
− | |||
− | |||
− | |||
− | |||
} | } | ||
+ | |||
+ | return response; | ||
+ | |||
} | } | ||
− | |||
− | |||
− | |||
− | |||
function success(request) { | function success(request) { | ||
Rivi 336: | Rivi 334: | ||
data2 = new google.visualization.DataTable(); | data2 = new google.visualization.DataTable(); | ||
− | data2.addColumn('string', 'Viikko'); | + | data2.addColumn('string', i18n( 'Viikko', lang )); |
data2.addColumn('number', vuosi); | data2.addColumn('number', vuosi); | ||
data2.addColumn({type:'string', role:'tooltip'}); | data2.addColumn({type:'string', role:'tooltip'}); | ||
Rivi 345: | Rivi 343: | ||
} | } | ||
data2.addColumn({type:'string', role:'tooltip'}); | data2.addColumn({type:'string', role:'tooltip'}); | ||
− | data2.addColumn('number', 'Liian vähän havaintoja'); | + | data2.addColumn('number', i18n( 'Liian vähän havaintoja', lang )); |
data2.addColumn({type:'string', role:'tooltip'}); | data2.addColumn({type:'string', role:'tooltip'}); | ||
− | data2.addColumn('number', 'Valittu viikko'); | + | data2.addColumn('number', i18n( 'Valittu viikko', lang )); |
data2.addColumn({type:'string', role:'tooltip'}); | data2.addColumn({type:'string', role:'tooltip'}); | ||
− | data2.addColumn('number', ' | + | data2.addColumn('number', i18n( 'Sinileväbarometri', lang ) + ' 0'); |
data2.addColumn({type:'string', role:'tooltip'}); | data2.addColumn({type:'string', role:'tooltip'}); | ||