Пример #1
0
function Obtener_IDFanPage($Nombre_FanPage = "")
{
    $ID_Obtenido = "";
    $URL_Recuperacion = "https://graph.facebook.com/{$Nombre_FanPage}";
    $contenido_url = @cargar_url($URL_Recuperacion);
    //Si se ha obtenido respuesta entonces procesa el JSON
    if ($contenido_url != "") {
        $JSON_Decodificado = json_decode($contenido_url);
        /*echo '<pre>'; // Esto para que sea mas legible
          var_dump($JSON_Decodificado);
          echo '</pre>';*/
    }
    return $ID_Obtenido;
}
Пример #2
0
function ObtenerEntradas_FacebookFanPage($Nombre_FanPage = "", $ID_FanPage = "", $Cantidad = 1, $FormatoProveedor = "rss20", $FormatoSalida = "arreglo")
{
    //Por defecto inicia en blanco si es formato crudo
    if ($FormatoSalida == "crudo") {
        $EntradasFanPage = "";
    }
    //Si el ID de consulta directa es vacio intenta averiguarlo con el nombre
    if ($ID_FanPage == "" && $Nombre_FanPage != "") {
        $ID_FanPage = Obtener_IDFanPage($Nombre_FanPage);
    }
    //Cuando ya se cuenta con un ID de FanPage hace la consulta
    if ($ID_FanPage != "") {
        $URL_Recuperacion = "https://www.facebook.com/feeds/page.php?id={$ID_FanPage}&format={$FormatoProveedor}";
        $contenido_url = @cargar_url($URL_Recuperacion);
        //Si se ha obtenido respuesta entonces procesa entradas
        if ($contenido_url != "") {
            // Usa SimpleXML Directamente para interpretar respuesta
            $EntradasObtenidas = simplexml_load_string($contenido_url);
            // Procesa la respuesta recibida en el XML
            $NumEntradaProcesada = 1;
            //Procesa si el formato recibido es RSS 2.0
            if ($FormatoProveedor = "rss20") {
                foreach ($EntradasObtenidas->channel->item as $Entrada) {
                    //Si el formato es crudo agrega entrada como concatenacion
                    if ($FormatoSalida == "crudo") {
                        $EntradasFanPage .= $Entrada->title;
                        $EntradasFanPage .= $Entrada->description;
                        $EntradasFanPage .= $Entrada->link;
                        $EntradasFanPage .= $Entrada->pubDate;
                    }
                    //Si el formato es arreglo agrega entrada como elemento del arreglo
                    if ($FormatoSalida == "arreglo") {
                        $EntradasFanPage[] = @array(Titulo => $Entrada->title, Descripcion => $Entrada->description, Enlace => $Entrada->link, Fecha => $Entrada->pubDate);
                    }
                    //Cuenta la entrada procesada y se detiene segun las deseadas
                    $NumEntradaProcesada++;
                    if ($NumEntradaProcesada > $Cantidad) {
                        break;
                    }
                }
            }
        }
    }
    return $EntradasFanPage;
}
Пример #3
0
function ObtenerEntradas_GitHub($ID_Usuario = "", $Cantidad = 5)
{
    //Cuando ya se cuenta con un ID de FanPage hace la consulta
    if ($ID_Usuario != "") {
        $URL_Recuperacion = "https://github.com/{$ID_Usuario}.atom";
        $contenido_url = @cargar_url($URL_Recuperacion);
        //Si se ha obtenido respuesta entonces procesa entradas
        if ($contenido_url != "") {
            // Usa SimpleXML Directamente para interpretar respuesta
            $EntradasObtenidas = simplexml_load_string($contenido_url);
            // Procesa la respuesta recibida en el XML
            $NumEntradaProcesada = 1;
            foreach ($EntradasObtenidas->entry as $Entrada) {
                /*                                
                                              //Parsea contenido HTML mediante DOM/XML
                                              $Contenido_Entrada=$Entrada->content;
                                              # Crea objeto DOM y carga el contenido
                                              $dom = new DOMDocument();
                                              @$dom->loadHTML("<html><body> $Contenido_Entrada </body></html>");
                                              
                                              $contenidosss= $dom->getElementsByTagName('a');
                                              echo $contenidosss->getAttribute('href');
                                              
                                              //Carga los de tipo enlace solamente
                                              ///$link=$dom->getElementsByTagName('a') ;
                
                                                //      echo $link->getAttribute('href');
                                              //echo $Contenido_Entrada->$blockquote;
                */
                $EntradasGitHub[] = @array(Fecha => $Entrada->published, Titulo => $Entrada->title, Enlace => $Entrada->content);
                //Cuenta la entrada procesada y se detiene segun las deseadas
                $NumEntradaProcesada++;
                if ($NumEntradaProcesada > $Cantidad) {
                    break;
                }
            }
        }
    }
    return $EntradasGitHub;
}
Пример #4
0
 // Inicia la autenticacion como una solicitud de webservices interna
 // Determina si la conexion actual de Practico esta encriptada
 if (empty($_SERVER["HTTPS"])) {
     $protocolo_webservice = "http://";
 } else {
     $protocolo_webservice = "https://";
 }
 // Si se tiene un protocolo preferido sobreescribe lo auto-detectado
 if (@$Auth_ProtoTransporte == "http" || @$Auth_ProtoTransporte == "https") {
     $protocolo_webservice = $Auth_ProtoTransporte . "://";
 }
 // Construye la URL para solicitar el webservice.  La URL se debe poder resolver por el servidor web correctamente, ya sea por dominio o IP (interna o publica).  Ver /etc/hosts si algo.
 $prefijo_webservice = $_SERVER['SERVER_NAME'] . ':' . $_SERVER['SERVER_PORT'] . $_SERVER['PHP_SELF'];
 $webservice_validacion = $protocolo_webservice . $prefijo_webservice . "?PCO_WSOn=1&PCO_WSKey=" . $LlaveDePaso . "&PCO_WSSecret=" . $LlaveDePaso . "&PCO_WSId=verificar_credenciales&uid=" . $uid . "&clave=" . $clave;
 // Carga el contenido en una variable para validar la conexion
 $contenido_url = @cargar_url($webservice_validacion);
 // Valida si se logro cargar o no el contenido
 if ($contenido_url != "") {
     // Usa SimpleXML Directamente para interpretar respuesta
     $resultado_webservice = @simplexml_load_string($contenido_url);
     // Analiza la respuesta recibida en el XML
     if (@$resultado_webservice->credencial[0]->aceptacion == 1) {
         $ok_login = 1;
     }
 } else {
     limpiar_entradas();
     mensaje($MULTILANG_LoginNoWSTit, $MULTILANG_LoginNoWSDes . "<br>Test URL=<a href='" . $webservice_validacion . "' target=_BLANK>Auth WebService</a> (entradas filtradas)", '', 'fa fa-times fa-5x icon-red texto-blink', 'alert alert-danger alert-dismissible');
 }
 $clave_correcta = 0;
 if ($clave != "" && $ok_login == 1 && $ok_captcha == 1) {
     // Busca datos del usuario Practico, sin importar metodo de autenticacion para tener configuraciones de permisos y parametros propios de la herramienta
Пример #5
0
function buscar_actualizaciones($PCOSESS_LoginUsuario = '', $PCO_Accion = '')
{
    global $MULTILANG_Atencion, $MULTILANG_ActAlertaVersion;
    // Genera un aleatorio entre 1 y 10 para no sacar siempre el aviso y buscar nuevas versiones.
    $buscar = rand(0, 7);
    if ($PCOSESS_LoginUsuario == "admin" && $PCO_Accion == "Ver_menu" && $buscar == 1) {
        $path_ultima_version = "https://raw.githubusercontent.com/unix4you2/practico/master/dev_tools/version_publicada.txt";
        $version_actualizada = @cargar_url($path_ultima_version);
        $archivo_origen = "inc/version_actual.txt";
        $archivo = fopen($archivo_origen, "r");
        if ($archivo) {
            $version_practico = trim(fgets($archivo, 1024));
            fclose($archivo);
        }
        if ($version_actualizada > $version_practico) {
            mensaje($MULTILANG_Atencion, $MULTILANG_ActAlertaVersion, '', 'fa fa-exclamation-triangle fa-5x', 'TextosEscritorio');
        }
    }
}