Ero sivun ”Widget:Levätaulukko” versioiden välillä
Järvi-meriwikistä
p (Tekstin korvaus – ”|limit=1000” muotoon ”|limit=2000”) |
|||
(28 välissä olevaa versiota samalta käyttäjältä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
<includeonly> | <includeonly> | ||
− | <div id="<!--{$id|default:JwAlgalTable|escape:'html'}-->_container"><p>Ladataan tietoja, odota...</p></div> | + | <div id="<!--{$id|default:JwAlgalTable|escape:'html'}-->_container"><p class="ingressi">Ladataan tietoja, odota...</p></div> |
<script type="text/javascript"> | <script type="text/javascript"> | ||
Rivi 15: | Rivi 15: | ||
var vuosi = "<!--{$vuosi|default:1998|escape:'html'}-->"; | var vuosi = "<!--{$vuosi|default:1998|escape:'html'}-->"; | ||
− | var alue = | + | var alue = "<!--{$alue|escape:'html'}-->"; |
var ely, meri; | var ely, meri; | ||
Rivi 21: | Rivi 21: | ||
ely = 'ei'; | ely = 'ei'; | ||
meri = 0; | meri = 0; | ||
− | } | + | } else if ( alue == 'Merialue' ) { |
ely = 'ei'; | ely = 'ei'; | ||
meri = 1; | meri = 1; | ||
} else { | } else { | ||
− | ely = alue.replace('ELY', 'elinkeino-, liikenne- ja ympäristökeskus'); | + | ely = alue.replace( 'ELY', 'elinkeino-, liikenne- ja ympäristökeskus' ); |
meri = 2; | meri = 2; | ||
} | } | ||
Rivi 52: | Rivi 52: | ||
else if (meri == "1") { searchStr += encodeURI("[[Vesistö::Meri]]"); } | else if (meri == "1") { searchStr += encodeURI("[[Vesistö::Meri]]"); } | ||
− | searchStr += encodeURI("|? | + | searchStr += encodeURI("|?SiteID|?SiteName|?Vesistö|?Alue|?Järvi|?Vesistöalue|?Kunta|?Viikko|?Levätilanne|limit=20000"); |
searchStr += '&format=json'; | searchStr += '&format=json'; | ||
− | + | ||
jQuery.ajax({ | jQuery.ajax({ | ||
type: 'GET', | type: 'GET', | ||
Rivi 62: | Rivi 62: | ||
dataType: 'jsonp' | dataType: 'jsonp' | ||
}); | }); | ||
− | |||
+ | function progressIndicator(d) { | ||
+ | jQuery('#<!--{$id|default:JwAlgalTable|escape:'html'}-->_container').html('Ladataan tietoja (' + (maxRows-d) + '/' + maxRows + ')'); | ||
+ | } | ||
+ | |||
+ | function success(request) { | ||
+ | console.log(request); | ||
+ | reqSuccess = true; | ||
+ | |||
+ | if ( request.query.meta.count > 0 ) { | ||
+ | |||
+ | var output = ""; | ||
+ | var lastSite = ""; | ||
+ | var lastWeek = 0; | ||
+ | output += '<div class="mw-content-ltr">' | ||
+ | output += '<table width="100%" class="tablesorter sortable jquery-tablesorter wikitable smwtable Xsmalltable2 tablecompact" id="<!--{$id|default:JwAlgalTable|escape:'html'}-->" >'; | ||
+ | output += '<thead><tr>'; | ||
+ | output += '<th class="headerSort " style="text-align: left;"></th>'; | ||
+ | output += '<th class="headerSort" style="text-align: left;">Vesistö</th>'; | ||
+ | output += '<th class="headerSort" style="text-align: left;">Nimi</th>'; | ||
+ | output += '<th class="headerSort" style="text-align: left;">Kunta</th>'; | ||
+ | output += '<th class="headerSort headerSortSmall" style="text-align: center;">23</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">24</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">25</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">26</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">27</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">28</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">29</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">30</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">31</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">32</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">33</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">34</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">35</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">36</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">37</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">38</th>'; | ||
+ | output += '<th class="headerSort headerSort-compact" style="text-align: center;">39</th>'; | ||
+ | output += '</tr></thead><tbody>'; | ||
+ | |||
+ | maxRows = request.query.results.length; | ||
+ | |||
+ | var siteIDs = new Object(); | ||
+ | |||
+ | for (var i in request.query.results) { | ||
+ | |||
+ | numberOfRows++; | ||
+ | progressIndicator(numberOfRows); | ||
+ | |||
+ | resultItem = request.query.results[i].printouts; | ||
+ | resultPage = resultItem.SiteID[0]; | ||
+ | |||
+ | if (dataArr[resultPage] == undefined) { | ||
+ | |||
+ | dataArr[resultPage] = new Object(); | ||
+ | dataArr[resultPage].url = "//www.jarviwiki.fi/wiki/index.php?curid=" + resultPage; | ||
+ | dataArr[resultPage].SiteName = resultItem.SiteName[0].fulltext; | ||
+ | if (resultItem.Vesistö[0] == 'Meri') { | ||
+ | dataArr[resultPage].sea = true; | ||
+ | } else { | ||
+ | dataArr[resultPage].sea = false; | ||
+ | } | ||
+ | if (resultItem.Alue.length > 0) { | ||
+ | dataArr[resultPage].wBody = resultItem.Alue[0].fulltext; | ||
+ | dataArr[resultPage].wBodyUrl = resultItem.Alue[0].fullurl; | ||
+ | } else { | ||
+ | if (resultItem.Vesistö[0] == 'Järvi') { | ||
+ | dataArr[resultPage].wBody = resultItem.Järvi[0].fulltext; | ||
+ | dataArr[resultPage].wBodyUrl = resultItem.Järvi[0].fullurl; | ||
+ | } else { | ||
+ | dataArr[resultPage].wBody = resultItem.Vesistöalue[0].fulltext; | ||
+ | dataArr[resultPage].wBodyUrl = resultItem.Vesistöalue[0].fullurl; | ||
+ | } | ||
+ | } | ||
+ | dataArr[resultPage].mun = resultItem.Kunta[0].fulltext; | ||
+ | dataArr[resultPage].munUrl = resultItem.Kunta[0].fullurl; | ||
+ | dataArr[resultPage].weeks = new Array(); | ||
+ | } | ||
+ | |||
+ | resultWeek = resultItem.Viikko[0]; | ||
+ | |||
+ | dataArr[resultPage].weeks[resultWeek] = resultItem.Levätilanne[0]; | ||
+ | |||
+ | } | ||
+ | |||
+ | function doRows() { | ||
+ | |||
+ | for (var s in dataArr) { | ||
+ | |||
+ | site = dataArr[s]; | ||
+ | |||
+ | output += '<tr>'; | ||
+ | |||
+ | if (site.sea) { | ||
+ | meripaikkoja = true; | ||
+ | output += '<td data-sort-value="1" valign="middle" class="smwtype_qty">'; | ||
+ | output += '<a href="' + site.url + '" title="' + site.title + '">'; | ||
+ | output += '<img alt="Merialue" src="//www.jarviwiki.fi/w/images/a/ac/Pm_hp_asiantuntija_1_27x27.png" width="27" height="27" style="vertical-align: middle" />'; | ||
+ | output += '</a></td>'; | ||
+ | } else { | ||
+ | output += '<td data-sort-value="0" valign="middle" class="smwtype_qty">'; | ||
+ | output += '<a href="' + site.url + '" title="' + site.title + '">'; | ||
+ | output += '<img alt="Sisävesi" src="//www.jarviwiki.fi/w/images/f/f3/Pm_hp_asiantuntija_2_27x27.png" width="27" height="27" style="vertical-align: middle" />'; | ||
+ | output += '</a></td>'; | ||
+ | } | ||
+ | output += '<td class="smwtype_wpg"><a href="' + site.wBodyUrl + '">' + site.wBody + '</a></td>'; | ||
+ | |||
+ | nimi = site.SiteName.substr(site.SiteName.lastIndexOf('/')); //site.title.substr(site.title.lastIndexOf('/')); | ||
+ | |||
+ | if (nimi.indexOf('(') != -1) { | ||
+ | nimi = nimi.substr(nimi.indexOf('(')); | ||
+ | nimi = nimi.substr(1); | ||
+ | nimi = nimi.substr(0, nimi.length-1); | ||
+ | } else { | ||
+ | nimi = ""; | ||
+ | } | ||
+ | output += '<td class="smwtype_wpg">' + nimi + '</td>'; | ||
+ | output += '<td class="smwtype_wpg"><a href="' + site.munUrl + '">' + site.mun + '</a></td>'; | ||
+ | |||
+ | for (x = 23; x < 40; x++) { | ||
+ | |||
+ | if (site.weeks[x] != undefined) { | ||
+ | resultAlgalVal = site.weeks[x]; | ||
+ | if (resultAlgalVal == 0) { | ||
+ | exportCsv += ";0"; | ||
+ | output += '<td data-sort-value="0" class="smwtype_qty" style="text-align: center; vertical-align: middle; background-color:none">0</td>'; | ||
+ | } else if (resultAlgalVal == 1) { | ||
+ | exportCsv += ";1"; | ||
+ | output += '<td data-sort-value="1" class="smwtype_qty" style="text-align: center; vertical-align: middle; background-color:#6a9d38">1</td>'; | ||
+ | } else if (resultAlgalVal == 2) { | ||
+ | exportCsv += ";2"; | ||
+ | output += '<td data-sort-value="2" class="smwtype_qty" style="text-align: center; vertical-align: middle; background-color:#fd9f00">2</td>'; | ||
+ | } else { | ||
+ | exportCsv += ";3"; | ||
+ | output += '<td data-sort-value="3" class="smwtype_qty" style="text-align: center; vertical-align: middle; background-color:#c80000">3</td>'; | ||
+ | } | ||
+ | } else { | ||
+ | output += '<td data-sort-value="-1" class="smwtype_qty" style="text-align: center; vertical-align: middle; background-color:none">-</td>'; | ||
+ | } | ||
+ | |||
+ | } | ||
+ | output += '</tr>'; | ||
+ | } | ||
+ | |||
+ | output += '</tbody><tfoot></tfoot></table></div>'; | ||
+ | if (meripaikkoja) { | ||
+ | //output += '<div style="border: 0; float: left; margin-left: 13px;"><p class="kuvateksti"><a href="/w/images/a/ac/Pm_hp_asiantuntija_1_27x27.png"><img alt="Merialue" src="/w/images/thumb/a/ac/Pm_hp_asiantuntija_1_27x27.png/21px-Pm_hp_asiantuntija_1_27x27.png" width="21" height="21" /></a> = Merialueen havaintopaikka</p></div>'; | ||
+ | } | ||
+ | output += '</div>'; | ||
+ | |||
+ | jQuery("#<!--{$id|default:JwAlgalTable|escape:'html'}-->_container").html(output); | ||
+ | jQuery("#<!--{$id|default:JwAlgalTable|escape:'html'}-->").tablesorter(); | ||
+ | } | ||
+ | |||
+ | doRows(); | ||
+ | |||
+ | } else { | ||
+ | |||
+ | jQuery("#<!--{$id|default:JwAlgalTable|escape:'html'}-->_container").html( '<p class="ingressi">Hakuehtojen mukaisia tietoja ei löytynyt.</p>' ); | ||
+ | |||
+ | } | ||
+ | //alert(exportCsv); | ||
+ | } | ||
+ | |||
+ | function lataaTiedot() { | ||
+ | var newWindow = window.open("","Lataa","width=300,height=300,scrollbars=1,resizable=1"); | ||
+ | |||
+ | newWindow.document.open(); | ||
+ | newWindow.document.write(exportCsv); | ||
+ | newWindow.document.close(); | ||
+ | |||
+ | //window.open('data:text/csv;charset=utf-8,' + escape(exportCsv)); | ||
+ | } | ||