- ID de l'analyse :
- 568fac58-6f60-41a6-a9da-08e74aab7546Terminée
- URL soumise :
- https://solar3p.servehttp.com/solar3p.html
- Fin du rapport :
Liens : 1 trouvé(s)
Liens sortants identifiés à partir de la page
Lien | texte |
---|---|
https://play.google.com/store/apps/details?id=tech.pubcloudnews.solar3p&pli=1&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1 |
Variables JavaScript : 38 trouvée(s)
Les variables JavaScript globales chargées dans l'objet fenêtre d'une page sont des variables déclarées en dehors des fonctions et accessibles depuis n'importe quel endroit du code au sein du champ d'application actuel
Nom | Type |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
$ | function |
jQuery | function |
jQuery112407320826558403397 | object |
Chart | function |
ChartDataLabels | object |
setCookie | function |
getCookie | function |
Messages de journal de console : 14 trouvé(s)
Messages consignés dans la console web
Type | Catégorie | Enregistrement |
---|---|---|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
log | other |
|
error | network |
|
HTML
Le corps HTML de la page en données brutes
<!DOCTYPE html><html class="ui-mobile"><head><base href="https://solar3p.servehttp.com/solar3p.html">
<!-- (c) APR Digital Studios - custom code for Solar3P page/app -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js" <="" script="">
<script src="https://code.jquery.com/jquery-3.5.1.min.js"</script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/chart.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
<script>
function setCookie(name,value,days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days*24*60*60*1000));
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + (value || "") + expires + "; path=/";
//console.log('set cookie ' + name + ' : ' + value);
}
function getCookie(name) {
console.log('get cookie ' + name);
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for(var i=0;i < ca.length;i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) {
value = c.substring(nameEQ.length,c.length);
console.log('value ' + value);
return value;
}
}
console.log('value null');
return null;
}
function getValuesforDay(day,myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var values = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
if (day == line.split(' ')[0]) {
value = line.split(' ')[3];
values.push(value)
}
}
}
return values;
}
function getLabelsforDay(day,myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var labels = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
if (day == line.split(' ')[0]) {
label = line.split(' ')[1];
labels.push(label);
}
}
}
return labels;
}
function getValues(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var values = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
value = line.split(' ')[1];
values.push(value)
}
}
return values;
}
function getLabels(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var labels = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
label = line.split(' ')[0];
labels.push(label);
}
}
return labels;
}
function getValues(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var values = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
value = line.split(' ')[1];
values.push(value)
}
}
return values;
}
function getLabels(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var labels = Array();
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
label = line.split(' ')[0];
labels.push(label);
}
}
return labels;
}
function getDays(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var days = Array();
var pday='';
for (i = 0; i < numLines; i++) {
var line = lines[i];
if (line != '') {
day = line.split(' ')[0];
if (day != pday) {
days.push(day);
}
pday=day;
}
}
return days;
}
// EPEX line 0 = date
function getEpexDate(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var line = lines[0];
epexdate = line.split(':')[1];
return epexdate;
}
function getEpexLabels(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var labels = Array();
for (i = 1; i < numLines; i++) {
var line = lines[i];
if (line != '') {
label = line.split(':')[0];
labels.push(label);
}
}
return labels;
}
function getEpexValues(myText) {
var lines = myText.split("\n");
var numLines = lines.length;
var i;
var values = Array();
for (i = 1; i < numLines; i++) {
var line = lines[i];
if (line != '') {
value = line.split(':')[1];
values.push(value)
}
}
return values;
}
// Register the chart plugin to all charts:
Chart.register(ChartDataLabels);
Chart.defaults.set('plugins.datalabels', {
color: '#FFFFFF',
anchor: 'end',
align: 'bottom',
font: { size: 10 },
offset: 0,
rotation: 0,
weight: 'bold'
});
// globals
disable_calculate = false;
dayChart = null;
epexChart = null;
hourCharts = Array();
window.mobileCheck = function() {
let check = false;
(function(a){if(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(a)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(a.substr(0,4))) check = true;})(navigator.userAgent||navigator.vendor||window.opera);
return check;
};
function calculate() {
if (disable_calculate) {
console.log('calculate disabled');
return;
}
console.log('calculate');
period=$('#period').val();
wp=$('#wp').val();
panels=$('#panels').val();
lay=$('#lay').val();
gran=$('#gran').val();
region=$('#region').val();
setCookie('period',period,365);
setCookie('wp',wp,365);
setCookie('panels',panels,365);
setCookie('gran',gran,365);
setCookie('region',region,365);
setCookie('lay',lay,365);
Chart.defaults.set('plugins.datalabels', { rotation: 0,font: { size: 10 },});
if (window.mobileCheck()) {
if (gran=='hour'||gran=='hourcumm') {
Chart.defaults.set('plugins.datalabels', { rotation: 90,font: { size: 8 },});
}
}
url="solar3pweb?period="+period+"&wp="+wp+"&panels="+panels+"&lay="+lay+"&gran="+gran+"®ion="+region
if (period=='week') {
data_label = 'Opbrengst in KWh per dag '
if (gran=='hour'||gran=='hourcumm') { data_label='Opbrengst in KWh per uur ' }
}
if (period=='revenue') { data_label='Opbrengst in eurocent ' }
$.get( url, function( data ) {
if ((period=='week'||period=='revenue') & gran=='day') {
$("#hourChart0").hide();
$("#hourChart1").hide();
$("#hourChart2").hide();
$("#hourChart3").hide();
$("#hourChart4").hide();
$("#dayChart").show();
$("#epexChart").hide();
mylabels = getLabels(data);
myvalues = getValues(data);
mydata = {
labels: mylabels,
datasets: [{
label: data_label,
backgroundColor: 'rgb(63, 30, 160)',
borderColor: 'rgb(63, 30, 160)',
data: myvalues,
}]
};
myconfig = {
type: 'bar',
data: mydata,
options: {}
};
if (dayChart != null) {
dayChart.destroy();
}
dayChart = new Chart( document.getElementById('dayChart'), myconfig);
var ctx = document.getElementById("dayChart").getContext("2d");
}
if (period=='epex') {
Chart.defaults.set('plugins.datalabels', { rotation: 90,font: { size: 8 },});
$("#dayChart").hide();
$("#hourChart0").hide();
$("#hourChart1").hide();
$("#hourChart2").hide();
$("#hourChart3").hide();
$("#hourChart4").hide();
$("#epexChart").show();
mylabels = getEpexLabels(data);
myvalues = getEpexValues(data);
tot=0.0;
for (i=0; i < myvalues.length; i++) {
tot=tot+Number(myvalues[i])
}
average=tot/24;
mydate = getEpexDate(data);
mydata = {
labels: mylabels,
datasets: [{
label: 'euroct/KWh ' + mydate,
backgroundColor: 'rgb(63, 30, 160)',
borderColor: 'rgb(63, 30, 160)',
data: myvalues,
}]
};
myconfig = {
type: 'bar',
data: mydata,
options: {}
};
if (epexChart != null) {
epexChart.destroy();
}
epexChart = new Chart( document.getElementById('epexChart'), myconfig);
var ctx = document.getElementById("epexChart").getContext("2d");
}
if ((period=='week'||period=='revenue') & (gran=='hour'||gran=='hourcumm')) {
$("#dayChart").hide();
$("#epexChart").hide();
$("#hourChart0").show();
if (period != 'revenue') {
$("#hourChart1").show();
$("#hourChart2").show();
$("#hourChart3").show();
$("#hourChart4").show();
} else {
$("#hourChart1").hide();
$("#hourChart2").hide();
$("#hourChart3").hide();
$("#hourChart4").hide();
}
myDays = getDays(data);
for (let i = 0; i < myDays.length; i++) {
day=myDays[i];
col=160 + (30 * i);
bg="rgb(63, 30, " + col + ")";
chartName='hourChart'+i;
mydata = {
labels: getLabelsforDay(day,data),
datasets: [{
label: data_label + day,
backgroundColor: bg,
borderColor: 'rgb(63, 30, 160)',
data: getValuesforDay(day,data)
}]
};
myconfig = {
type: 'bar',
data: mydata,
options: {}
};
if (hourCharts[i] != null) {
hourCharts[i].destroy();
}
hourCharts[i] = new Chart(document.getElementById(chartName), myconfig);
}
}
}); // end get
}
$(document).ready(function(){
disable_calculate = true;
period = getCookie('period'); if (period) { $('#period').val(period); $('#period').change(); }
gran = getCookie('gran'); if (gran) { $('#gran').val(gran); $('#gran').change();}
region = getCookie('region'); if (region) { $('#region').val(region); $('#region').change(); }
panels = getCookie('panels'); if (panels) { $('#panels').val(panels); $('#panels').change(); }
wp = getCookie('wp'); if (wp) { $('#wp').val(wp); $('#wp').change(); }
lay = getCookie('lay'); if (lay) { $('#lay').val(lay); $('#lay').change(); }
disable_calculate = false;
if (window.mobileCheck()) {
$("#appstore").hide();
}
calculate()
}); // end of doc ready
</script><title>Solar Power Predictor</title></head>
<body class="ui-mobile-viewport ui-overlay-a">
<div data-role="page" data-url="/solar3p.html" tabindex="0" class="ui-page ui-page-theme-a ui-page-active" style="">
<div data-role="header" role="banner" class="ui-header ui-bar-inherit">
<h1 class="ui-title" role="heading" aria-level="1">Solar Power Predictor</h1>
</div><!-- /header -->
<div role="main" class="ui-content">
<form method="post" action="" enctype="multipart/form-data" id="myform">
<div class="ui-grid-b">
<div class="ui-block-a">
<label for="period">Grafiek</label>
<div class="ui-select"><div id="period-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>Opbrengst in Kwh</span><select name="period" id="period" onchange="calculate()">
<option value="week">Opbrengst in Kwh</option>
<option value="revenue">Inkomsten (vandaag)</option>
<option value="epex">Stroomprijs</option>
</select></div></div>
</div>
<div class="ui-block-b">
<label for="gran">per Dag of Uur</label>
<div class="ui-select"><div id="gran-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>Per Dag</span><select name="gran" id="gran" onchange="calculate()">
<option value="day">Per Dag</option>
<option value="hour">Per uur</option>
<option value="hourcumm">Per uur cummulatief</option>
</select></div></div>
</div>
<div class="ui-block-c">
<label for="region">Regio</label>
<div class="ui-select"><div id="region-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>Rotterdam</span><select name="region" id="region" onchange="calculate()">
<option value="rotterdam">Rotterdam</option>
<option value="almere">Almere</option>
<option value="amsterdam">Amsterdam</option>
<option value="breda">Breda</option>
<option value="denhelder">Den Helder</option>
<option value="denhaag">Den Haag</option>
<option value="deventer">Deventer</option>
<option value="eindhoven">Eindhoven</option>
<option value="groningen">Groningen</option>
<option value="leeuwarden">Leeuwarden</option>
<option value="maastricht">Maastricht</option>
<option value="middelburg">Middelburg</option>
<option value="utrecht">Utrecht</option>
<option value="texel">Texel</option>
<option value="tilburg">Tilburg</option>
<option value="zwolle">Zwolle</option>
</select></div></div>
</div>
</div><!-- grid a -->
<div class="ui-grid-b">
<div class="ui-block-a">
<label for="panels">Aantal Panelen</label>
<div class="ui-select"><div id="panels-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>12</span><select name="panels" id="panels" onchange="calculate()">
<option value="12">12</option><option value="11">11</option><option value="10">10</option><option value="9">9</option>
<option value="8">8</option><option value="7">7</option><option value="6">6</option><option value="5">5</option>
<option value="4">4</option><option value="3">3</option><option value="2">2</option><option value="13">13</option>
<option value="14">14</option><option value="15">15</option><option value="16">16</option><option value="17">17</option>
<option value="18">18</option><option value="19">19</option><option value="20">20</option>
<option value="21">21</option><option value="22">22</option><option value="23">23</option>
<option value="24">24</option><option value="25">25</option><option value="26">26</option>
<option value="27">27</option><option value="28">28</option><option value="29">29</option>
<option value="30">30</option><option value="35">35</option><option value="40">40</option>
<option value="50">50</option><option value="60">60</option><option value="70">70</option>
<option value="80">80</option><option value="90">90</option><option value="100">100</option>
</select></div></div>
</div>
<div class="ui-block-b">
<label for="wp">WattPiek p.p.</label>
<div class="ui-select"><div id="wp-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>405</span><select name="wp" id="wp" onchange="calculate()">
<option value="405">405</option>
<option value="500">500</option>
<option value="440">440</option>
<option value="430">430</option>
<option value="420">420</option>
<option value="410">410</option>
<option value="400">400</option>
<option value="395">395</option>
<option value="375">375</option>
<option value="350">350</option>
<option value="320">320</option>
<option value="300">300</option>
<option value="275">275</option>
<option value="250">250</option>
<option value="200">200</option>
<option value="150">150</option>
</select></div></div>
</div>
<div class="ui-block-c">
<label for="lay">Ligging</label>
<div class="ui-select"><div id="lay-button" class="ui-btn ui-icon-carat-d ui-btn-icon-right ui-corner-all ui-shadow"><span>Zuid-Oost</span><select name="lay" id="lay" onchange="calculate()">
<option value="SE">Zuid-Oost</option>
<option value="S">Zuid</option>
<option value="SW">Zuid-West</option>
<option value="W">West</option>
<option value="NW">Noord-West</option>
<option value="N">Noord</option>
<option value="NE">Noord-Oost</option>
<option value="E">Oost</option>
</select></div></div>
</div>
</div><!-- grid b -->
</form>
<canvas id="dayChart" width="758" height="379" style="display: block; box-sizing: border-box; height: 379px; width: 758px;"></canvas>
<canvas id="hourChart0" style="display: none;"></canvas>
<canvas id="hourChart1" style="display: none;"></canvas>
<canvas id="hourChart2" style="display: none;"></canvas>
<canvas id="hourChart3" style="display: none;"></canvas>
<canvas id="hourChart4" style="display: none;"></canvas>
<canvas id="epexChart" style="display: none;"></canvas>
<center><p style="font-size: x-small">precision is based on sun/cloud prediction in watt/m3 - 45dg panel angle assumed - EPEX market prices with tax</p></center>
</div><!-- /content -->
<center>
<div id="appstore" name="appstore">
<a href="https://play.google.com/store/apps/details?id=tech.pubcloudnews.solar3p&pli=1&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1" class="ui-link">
<img alt="Get app on Google Play" src="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png" width="300"></a>
</div>
</center>
<div data-role="footer" role="contentinfo" class="ui-footer ui-bar-inherit"><center>(c) APR Digital Studios</center></div><!-- /footer -->
</div><!-- /page -->
<div class="ui-loader ui-corner-all ui-body-a ui-loader-default"><span class="ui-icon-loading"></span><h1>loading</h1></div></body></html>