edición general
imparsifal

imparsifal

En menéame desde junio de 2011

11,47 Karma
620 Ranking
398 Enviadas
86 Publicadas
820 Comentarios
409 Notas

El desastre de la programación de Menéame [212]

  1. #32 A nivel de código, el problema principal que ha tenido meneame desde hace muchos años es que el código actual es muy complicado de mantener y escalar y por eso desde hace años simplemente se le han ido aplicado parches para salir del paso. Simplemente con ese pequeño trozo de código se puede intuir a nivel general como está de mantenido el sistema. Creo que la opción de liberar todo el código es la forma más acertada y será un buen paso para la comunidad.
  1. #84 El verano empieza la semana que viene :-)
    Habrá gente aburrida con tiempo libre...

    Bueno, mientras daré de alta una cuenta nueva en GitHub, que la mía tiene demasiada info personal como para usarla para esto.
  1. #76 Venga, yo mismo, hoy estoy de guardia en el curro que me paga así que voy a estar pegado al ordenador todo el puto día.
  1. #32 El codigo 500 no se usa para esto.

    API_Meneame::sendResponse(500, 'error', 'Tu comentario no será publicado porque contiene palabras no permitidas.');

    Eso no es un error de servidor, joder.
  1. #31 Mejor sería tener el código en github y que te dedicaras a revisar PRs :-)

    No creo que sea necesario contratar a nadie. Vamos, salvo que tengas pensadas ideas que la comunidad no fuera a contribuir gratis.
  1. #54 Funciona. Si!!!
    Gracias...!
  1. #59 Voy a poner un punto.

    A ver si funciona.

    edit: siiiiiiiiiiiiiiiiiiiiiiii
  1. #59 gracias
  1. #55 esta frase me da erro 500 aun (cambia espacios por puntos): tiene pinta que ya funciona
  1. #51 creo que meneame está eliminando las barras invertidas, si está correcto en regex y no puede probarlo en local, súbelo a prod y se testea ahí (qué remedio)

Artículo para escribir comentarios de prueba [58]

  1. Aquí lo dejo @imparsifal te recuerdo que los domingo no trabajo.

El desastre de la programación de Menéame [212]

  1. #31 Por eso decía lo de abrir el código en líneas generales; si no hay dinero para un programador, el código abierto es una manera de externalizarlo ahorrando costes . Que es lo que (de manera malvada) hacen empresas como Google, Microsoft, etc, cuando apuestan por el código abierto; externalizar el I+D que soporta su estructura y que trabajen gratis otros

    Eso tal como lo hacen estas multinacionales está feo claro, pero se puede hacer de manera más consciente y abierta como lo que estás planteando; en una comunidad tan técnica como Menéame no creo que fuera muy difícil acabar montando un esquema medianamente funcional de desarrollo libre con un core de gente que decida sobre las PRs, y que si cuaja se pueda ver cómo dispara las nuevas features, etc . Incluso podría atraer a quien planteó hace unos meses ante el varsavsky-gate montar una alternativa, si se facilita un desarrollo comunitario de Menéame .
  1. #45 Escapando las barras / la regex es correcta:

    PD: estoy pensando que quizás en el comentario te ha eliminado las barras, si las has puesto entonces está bien  media
  1. #45 te va a dar error:  media
  1. #41 la primera y la última / no la escapes, que si no te dará otro error, es lo que identifica en php que lo que hay dentro es una expresión regular
  1. #41 con escapar las / es suficiente, es el único error que veo, puedes copiar la regex en una web como regex101 para php, que es donde yo testeo estas cosas, te va diciendo si es correcta o no
  1. #38 nada se corta te lo pongo en una captura a ver si se ve mejor, hay errores en el preg_match_all, en la captura está el regex corregido  media
  1. #38 en el preg_match_all: tienes que escapar las /, sustituyelas por / (quita el espacio de enmedio)
  1. #34 El código de la clase se ha cortado, puedes poner el código del método: checkBlockedDomainsInContent?
  1. #35 Por eso se lo sata el rol de Admin

    if ($current_user->isAdmin() === false) {
    ...
    if (in_array($domain, $banHostnames)) {
    $urlBlocked = true;
    break;
    }
    }
  1. #31 Aquí os dejo el comment.php

    <?php
    require_once __DIR__ . '/../../../oauth2/init.php';
    require_once __DIR__ . '/../api.php';
    require_once __DIR__ . '/../common.php';
    global $db, $globals, $current_user;

    $link_id = $_GET["link_id"];
    $link = Link::from_db($link_id);

    $comment = $_GET["comment"];
    $reply_to = (isset($_GET["reply_to"]) ? $_GET["reply_to"] : '');
    $process = (!is_numeric($reply_to)) ? 'newcomment' : 'editcomment';

    $api_meneame = new API_Meneame();
    $current_user = new UserAuth();
    $current_user->Authenticate($api_meneame->user->user_login);

    $token_expires = $api_meneame->token_expires;
    $user_id = $api_meneame->user_id;
    $user = $api_meneame->user;
    if ($process == 'editcomment') {
    /** @var Comment $commentFromDb */
    $commentFromDb = Comment::from_db($reply_to);
    if ($commentFromDb) {
    $security_key = md5($commentFromDb->randkey.$api_meneame->site_key);
    }
    } else {
    $security_key = $api_meneame->security_key;
    }

    $user_key = $api_meneame->user_key;
    $cookies = $api_meneame->cookies;
    $randkey = $api_meneame->randkey;
    $base_url = $api_meneame->base_url;

    $url_new_comment = $link->get_permalink(true);
    $url_edit_comment = $base_url . "backend/comment_ajax?id=".$reply_to."&link=".$link_id."&user=".$user_id;
    $url = (!is_numeric($reply_to)) ? $url_new_comment : $url_edit_comment;

    $comment = str_replace('<p>', '', $comment);
    $comment = str_replace('</p>', PHP_EOL, $comment);


    if (LinkValidator::checkBlockedWordsInContent($comment)){
    API_Meneame::sendResponse(500, 'error', 'Tu comentario no será publicado porque contiene palabras no permitidas.');
    } else if (true === LinkValidator::checkBlockedDomainsInContent($comment)) {
    API_Meneame::sendResponse(500, 'error', 'El servidor tiene aplicado un BAN.');
    } else {
    $query_var = array( 'key' => $security_key,
    'process' => $process,
    'randkey' =>…   » ver todo el comentario

Cómo Israel robó uranio estadounidense para construir su arsenal nuclear y cómo JFK intentó impedirlo [Ing] [39]

  1. #14 Goto #12, léete el artículo y la decisión final: PREFERENTEMENTE no se requerirá ningún procedimiento adicional de acceso, pero sólo las páginas que requieran un pago para ese acceso serán penalizadas .

    Preferentemente ≠ obligatoriamente .

    Hay bastantes periódicos que requieren suscripción gratuita para acceder, incluidos los "porosos", que te dan un número de artículos gratis y después, si quieres seguir leyendo sin registro gratuito, necesitas una VPN . Parafraseándote, "Para leer un contenido no me puedes obligar a usar una VPN" . Es lo mismo, ¿no?

    Y esa decisión se tomó para no empobrecer la portada . De todos modos, estaría bien que @imparsifal se pronunciara al respecto .

    Ah, y, de todos modos, el voto no sería "Errónea" :-P

El desastre de la programación de Menéame [212]

  1. Con la plantilla de programadores que tienen, mantener un sitio de éste estilo con éste tráfico no es fácil; Hablamos de ¿dos? personas seguramente llevándolo todo; además el backend está hecho a la vieja usanza seguro: monolito enorme y deployajes que duran la hostia de tiempo con migraciones de base de datos y toda la pesca; si algo peta, por muy familiarizado que esté el programador con el proyecto y muy experto que sea, cuesta mucho rato de arreglar por todo lo anteriormente expuesto y eso cualquiera lo sabe;

    No hay mucho más que añadir aquí; Menéame sigue siendo una empresa pequeña sin los recursos suficientes para pagar a cinco-diez tíos que se hagan cargo de todo ésto para tener disponibilidad 24h; yo de llevar empresas no tengo ni puta idea, tampoco de empresas online, o sea que poco puedo aportar ahí; Lo de los anuncios lo veo básico, eso sí poniéndolos con cuidado, no metiendo anuncios de esos que desencuadran toda la página mientras estás leyendo, creo que eso es culpa de los bastardos de Google o algo así; Unos anuncios bien colocados, quizá un poco de mano comerciata para que vengan gordos a anunciarse (El Corte Inglés, yo qué sé tío) y bueno yo sigo pensando que lo de poner apuestas sobre eventos o sucesos les podría reportar beneficios: "¿crees que Irán ganará la guerra contra Israel?" Y todos a meter perras, seguro que hasta venían más usuarios; ¿Ético? No lo sé, no me importa, estoy hablando de ganar dinero, no de hacer la revolución socialista; Pero Supercinexin cabrón esto va en contra de tus rojeliadas tan rojo que eres; Ya lo sé Antonio pero que te digo que ahora estoy hablando de dinero, no de mis rojeliadas;

    En fin, lo que desde luego me gustaría saber y espero que reporten es qué estaban haciendo, por qué y cómo para que metiendo un signo de punto pete el backend; Por curiosidad profesional únicamente; A ver qué dicen el Lunes @imparsifal y los demás, hoy es Domingo, el Día del Señor, espero que no estén intentando arreglarlo y disfruten de sus familias y del tiempo libre, feliz domingo chicos;

Israel depende de EEUU para aniquilar el proyecto nuclear de Irán, que continúa intacto pese a los constantes ataques aéreos [25]

  1. #11 ¿Se sabe algo sobre el tema del punto? ¿Alguna idea de lo que ha pasado?

Un hombre disfrazado de policía asesina a una congresista demócrata y su marido y hiere a otro en sus casas en Minnesota [44]

  1. #18 Al lumpen sólo nos deja poner puntos si detras va un espacio: ejemplo .Lo tuyo es diferente, será por "tu inquebrantable visión y liderazgo" .

menéame