Buscar en La Comunidad

Showing results for tags 'fix'.



More search options

  • Search By Tags

    Añade tags separandolos por comas.
  • Search By Author

Tipo de Contenido


Foros

  • El núcleo de PHPost
    • Novedades e información
    • La taza y el café
    • Presentaciones
  • PHPost Risus
    • Actualizaciones
    • Proyectos derivados
    • Versión 1.1
    • Versión 1.2
    • Reporte de bugs
  • Zona Webmaster
    • Posicionamiento (SEO)
    • Monetización
    • Social Media
    • Programación
  • La esquina
    • Rincón del PC
    • Rincón del móvil

Calendars

No hay resultados


Encontramos 41 resultados

  1. Bueno la pregunta es si tienen la sección de comunidades Temas eliminados y tambien quiero agregar Comunidades eliminadas y he agregado en la parte de Denuncias -> TEMAS y COMUNIDADES que a estos 2 los agregue bien y funcionan...Como sabran nunca he descargado la actualización de las comunidades ni nada parecido, ya que no estaba conectado con internet lo hice todo manualmente, e incluido la instalación correspondiente que tenia cuando habia buscado hace tiempo y agregue más cosas que no las tenia... Tengo: templates/admin_mods/m.mod_report_temas.tpl templates/admin_mods/m.mod_report_comunidades.tpl Faltaria: templates/admin_mods/m.mod_papelera_temas.tpl templates/admin_mods/m.mod_papelera_comunidades.tpl y si hay que hacer o agregar algo más en inc/class/c.moderacion.php para que estos tengan efecto, los 2 verdes andan faltan que funcione los 2 rojo más los 2 ficheros para el directorio admin_mods La comunidad que tengo es entre el año 2014/5 creo, pero es viejo, igualmente funciona todo correctamente y tambien es casi 100% responsive + bootstrap para que no sea tan pesado y le voy a agregar un Mod de premios que se de desde la administración solamente tengo que encontrar algunos iconos o Icon Font para usar con este... En la sección de administración o el archivo m.admin_welcome.tpl he agregado un especie de mod en el que se puede decir que versión del theme + quien la creo versión de la comunidad + quien la creo/editor del mismo lo hice de la misma manera que cuando se instala una versión actualizada del Risus.. cap en caso que no se vea Otra pregunta que no tiene que ver, pero quiero saber si hay topics y si tienen los enlaces... por que lo que quiero es hacer ej: Si es navidad va a ser otro logo, Si es san valentin sea otro logo Desde ya MUCHAS GRACIAS por tomarse el tiempo de verlo
  2. Hola, como verán recientemente hay un usuario que anda molestando con un error en la fuente de los BBcodes. El error consiste básicamente en que dicho BBcode carece de verificación, entonces se podía ingresar algunos carácteres HTML y poner una fuente gigante lo que no permitía navegar por los posts y al cliquear llevaba a una página, no representa un error grave en sí, por lo que no hay que alarmarse ya que sus datos personales y de hosting están seguros. Sin embargo puede ser muy molesto, por lo que es muy recomendado instalar este fix. Instalación automática: Para solucionarlo suban la carpeta INC que subí AQUÍ en la raíz de su sitio y reemplacen los archivos y ya estará solucionado el error. Instalación manual: Si han modificado los archivos, pueden optar por instalarlo manualmente: Abran el archivo bbcode.inc.php ubicado en /inc/ext/bbcode.inc.php y busquen (está en la línea 10): require_once 'JBBCode/validators/ImgValidator.php'; Y abajo coloquen: require_once 'JBBCode/validators/FontValidator.php'; Busquen: $imgValidator = new \JBBCode\validators\ImgValidator(); Y debajo coloquen: $fontValidator = new \JBBCode\validators\FontValidator(); Busquen: array('tag' => 'font', 'replace' => '<span style="font-family: {option}">{param}</span>', 'option' => true), Y lo reemplazan por: array('tag' => 'font', 'replace' => '<span style="font-family: {option}">{param}</span>', 'option' => true, 'validOption' => $fontValidator), 2. Crear un archivo con nombre FontValidator.php dentro de /inc/ext/JBBcode/validators/ con el siguiente contenido: <?php namespace JBBCode\validators; require_once dirname(dirname(__FILE__)) . DIRECTORY_SEPARATOR . 'InputValidator.php'; /** * Validador de fuentes para evitar kakeos * * @author Alan * @since Sep 2016 */ class FontValidator implements \JBBCode\InputValidator { /** * Retorna true si $input es alfabético * * @param $input string a validar */ public function validate($input) { return !!preg_match('/^[a-z0-9\s]+$/i', $input); } } Y ya debería funcionar, no digo que esto sea un fix oficial ya que lamentablemente ya no pertenezco al staff pero cuando Isidro lo vea podrá decidir que es lo que hace. Saludos!
  3. Les traigo un mod actualizado y fixeado. Mod original: Actualizado a la ultima version. Fix de los link ocultos. Abren el c.posts.php de inc/class y buscan: // DATOS DEL POST $query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT c.* ,m.*, u.user_id FROM `p_posts` AS c LEFT JOIN `u_miembros` AS u ON c.post_user = u.user_id LEFT JOIN `u_perfil` AS m ON c.post_user = m.user_id WHERE `post_id` = \''.(int)$post_id.'\' '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == 1 ? '' : 'AND u.user_activo = \'1\' && u.user_baneado = \'0\'').' LIMIT 1'); // $postData = db_exec('fetch_assoc', $query); Abajo agregan: //Comentó este post $sql_comment = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT cid FROM p_comentarios WHERE c_post_id = \''.(int)$post_id.'\' AND c_user = \''.(int)$tsUser->uid.'\' LIMIT 1'); if(!$tsUser->is_member){ $replacement = '<div class="emptyData">Para poder ver los links necesitas estar <a href="javascript:registro_load_form();"> Registrado </a> . O.. ya tienes cuenta? <a href="javascript:open_login_box();"> Logueate!</a></div>'; $postData[post_body] = preg_replace('/[url[^>]+\]\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$][\/url[^>]+\]/i', $replacement, $postData[post_body]); $postData[post_body] = preg_replace('/\[url=(.*?)\](.*?)\[\/url\]/is', $replacement, $postData[post_body]); }elseif(db_exec('num_rows', $sql_comment) == 0){ $replacement = '<div class="emptyData">Para poder ver los links debes comentar el post</div>'; $postData[post_body] = preg_replace('/[url[^>]+\]\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$][\/url[^>]+\]/i', $replacement, $postData[post_body]); $postData[post_body] = preg_replace('/\[url=(.*?)\](.*?)\[\/url\]/is', $replacement, $postData[post_body]); } Y listo!! Caps: (Deslogueado): (Logueado pero sin comentar el post): (Logueado y con el post comentado): Cualquier consultar, problema y queja (? dejen en comentarios.. Hasta luego
  4. Hola... me puse a ver nuevamente el script, como hago siempre... por momento me dan ganas de usarlo!!!! y despues entro al foro y veo lo muerto que esta y se me van las ganas... PERO BUENO! Ahora estoy con ganas asi que me puse a ver un error que nunca se soluciono y yo reporte hace mucho tiempo, y el error esta en que AL PONER EL MAXIMO DE NOTIFICACIONES QUE QUEREMOS MOSTRAR EN EL MONITOR DESDE LA ADMINISTRACION, estos valores no son tomados y se nos hace una lista interminable de notificaciones, "en su momento llegue a tener mas de 200" para solucionar esto hacemos lo siguiente... Abrimos inc/class/c.monitor.php y buscamos. // DATOS $sql = 'SELECT m.*, u.user_name AS usuario FROM u_monitor AS m LEFT JOIN u_miembros AS u ON m.obj_user = u.user_id WHERE m.user_id = \''.$tsUser->uid.'\' ORDER BY m.not_id DESC'; Remplazamos por: // DATOS $sql = 'SELECT m.*, u.user_name AS usuario FROM u_monitor AS m LEFT JOIN u_miembros AS u ON m.obj_user = u.user_id WHERE m.user_id = \''.$tsUser->uid.'\' ORDER BY m.not_id DESC LIMIT '.$tsCore->settings['c_max_nots'].''; Y listo con esto el monitor ya pondra la cantidad de notificaciones que nosotros pongamos desde la administracion. Terminando.... El Fix fue aplicado en la ultima version del script, anque creo que funcionara para todas las versiones ya que es un error que viene hace rato.... saludos y ojala el foro se ponga otra vez en movimiento
  5. Que tal, hace unos dias instlate en mi sitio el Editor WYSIWYG de Tronlar para 1.2 y note que habia un error o bug al intentar comentar en un post el cual solo deja comentar si presionan el boton [/] del editor, depues hice lo que comentó omarb dejando el editor por defecto, afortunadamente me tope con un sitio diseñado por Kmario19 y note que en su theme no tenia el problema, revisando el codigo identifique estas lineas para resolver el error de los comentarios En el archivo: m.posts_comments_form.tpl (../themes/default/templates/modules) buscamos <div class="floatL"> <a class="boto gris floatL" onclick="comentario.nuevo('true')"><div class="btexto">Comentar</div></a> <a onclick="comentario.preview('body_comm','new')" class="boto gris" style="padding: 6px 8px;"><span class="i oji"></span></a> </div> y lo reemplazamos por: <div class="floatL"> <input type="button" onclick="comentario.nuevo('true')" class="mBtn btnOk" value="Enviar Comentario" tabindex="3" id="btnsComment"> <input type="button" onclick="comentario.preview('body_comm','new')" class="mBtn btnGreen" value="Vista Previa" tabindex="2" style="width:auto;"> </div> Si lo desean ya solo le dan estilo con CSS NOTA: El editor es el mismo que publico Tronlar aqui: yo solo modifique los iconos y re-ordene un poco
  6. Hola a todos, como saben estoy haciendo el tema v6 de taringa Necesito que me ayuden a fixear unas cosas... No Loguea No funciona facebook connect Focus del busca Etc... El desarollo lo voy a continuar ni bien esten arreglados estos problemas... Archivos V6 inc Theme Header.php https://mega.nz/#!IpZXnTJa!mBruui3R2uWXbT2MZqEr6-h0yJ0w6G1l-OHMKoJ9kgo Demo
  7. Hola a todos les comparto rápidamente este par de fix a unos problemas que se han presentado desde la ultima actualización del bbcode usando ahora JBBCode, el problema es que al bbcode se parsea primero los emoticones y luego a html por lo que si, por ejemplo, un texto se presenta así: [b]Instrucciones:[/b] 1. Descargar... El parser primero realiza los emoticones, como el del vampiro que es :[ y por lo tanto rompe el bbcode para cerrar la etiqueta de negrita B y todo lo demás aparecerá en negrita, así mismo con cualquier otra etiqueta. Hago referencia a este topic publicado por @boltador: Y otro topic más que no recuerdo pero había reportado @fem se puede apreciar en la demo que con un quote también se rompe el bbcode: Entonces para solucionarlo básicamente trata de parsear primero todos los tags del bbocode y después, si es permitido, parsear los emoticones y menciones. Para ello vamos al archivo inc/class/c.core.php y buscamos la función parseBBCode y la reemplazaremos por esta: function parseBBCode($bbcode, $type = 'normal', $smiles = true, $mentions = true) { // Class BBCode include_once(TS_EXTRA . 'bbcode.inc.php'); $parser =& BBCode::getInstance(); // Seleccionar texto $parser->setText($bbcode); // Seleccionar tipo switch ($type) { // NORMAL case 'normal': // BBCodes permitidos $parser->setRestriction(array('url', 'code', 'quote', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 's', 'align', 'spoiler', 'swf', 'video', 'goear', 'hr', 'sub', 'sup', 'table', 'td', 'tr', 'ul', 'li', 'ol', 'notice', 'info', 'warning', 'error', 'success')); break; // FIRMA case 'firma': // BBCodes permitidos $parser->setRestriction(array('url', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 's', 'align', 'spoiler')); break; // NOTICIAS case 'news': // BBCodes permitidos $parser->setRestriction(array('url', 'b', 'i', 'u', 's')); break; // SOLO SMILES (Esta opción se mantiene por compatibilidad con versiones anteriores, pero en su lugar se recomienda utilizar la opción "normal") case 'smiles': $parser->setRestriction(array('url', 'code', 'quote', 'quotePHPost', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 'align', 'spoiler', 'swf', 'goear', 'hr', 'li')); break; } // HTML $html = $parser->getAsHtml(); // SMILES if ($smiles) $html = $parser->parseSmiles(); // MENCIONES if ($mentions) $html = $parser->parseMentions(); // Retornar resultado return $html; } Ahora en el archivo inc/ext/bbcode.inc.php buscar: return nl2br($this->text); Reemplazar por: return $this->text = nl2br($this->text); Mas abajo buscar: $this->text = substr($this->text, 0, -1); Reemplazar por: return $this->text = substr($this->text, 0, -1); Casi al final buscar: $this->text = str_replace($bbcode, $html, $this->text); Reemplazar por: return $this->text = str_replace($bbcode, $html, $this->text); Y listo con eso se arreglaría el problema. Ahora el segundo detalle es que la opción de "Sin Smileys" que tienen los posts, no funciona. Para solucionarlo ir al archivo inc/class/c.posts.php y buscar: $tsCore->parseBBCode($postData['post_body'], 'firma') Reemplazar por: $tsCore->parseBBCode($postData['post_body'], 'normal', false) Y con esto ya estaría funcionando la opción de NO parsear emoticones. Les dejo algunas capturas: Post: Antes: Ahora: Sin emoticones: Bueno, eso sería todo por este post. Dejen sus dudas, comentarios sugerencias. Ante cualquier problema no dudes en comentarlo, intentaré ayudarte lo más rápido que pueda. Nos vemos en otro aporte, hasta entonces!
  8. Muchos Usuarios experimentan con este mod: ...el problema de que se postea correcto, pero al comentar o enviar mps, el boton ''Responder'' no funciona y no publica...(a menos que le des clic en [/] del editor.) Mi solución: Solo dejar el wysiwyg para publicar (posts), publicar temas y comentar temas (De comunidades) Pero volver a el editor antiguo en MP's, Siguen todos los pasos de la instalación pero en acciones.js de tutheme/js buscan: //Imprimir editores function print_editor() { //Editor de posts if($('#markItUp').length && !$('.wysibb-texarea').length || $('#wysibb').length && !$('.wysibb-texarea').length){ $('#markItUp, #wysibb').removeAttr('onblur onfocus class style').css('height', '400').addClass('required').wysibb(); $('#moreemofn, #emoticons').remove(); } //Editor de posts comentarios if($('#body_comm').length && !$('.wysibb-texarea').length){ $('#body_comm').removeAttr('onblur onfocus class style title').css('height', '100').html('').wysibb(); $('#moreemofn, #emoticons').remove(); } //Editor de respuestas shouts if($('#fulcomx textarea') && !$('#markItUpbody_comm').length){ $('#fulcomx textarea').markItUp(mySettings_cmt_shout); } //Editor de respuestas en fotos if($('#mensaje') && !$('#markItUpbody_comm').length){ $('#mensaje').markItUp(mySettings_cmt_shout); } //Editor de respuestas comunidades if($('#body_resp') && !$('#markItUpbody_resp').length){ $('#body_resp').markItUp(mySettings_cmt); } //Editor de respuestas en mensajes if($('#respuesta').length && !$('.wysibb-texarea').length){ var wbbOpt = { buttons: "smilebox,|,bold,italic,underline,strike,sup,sub,|,img,video,link,|,removeFormat" } $('#respuesta').removeAttr('onblur onfocus class style title').css('height', '80').html('').wysibb(wbbOpt); } } /* FIN - Editor */ y lo reemplazan por: //Imprimir editores function print_editor() { //Editor de posts if($('#markItUp').length && !$('.wysibb-texarea').length || $('#wysibb').length && !$('.wysibb-texarea').length){ $('#markItUp, #wysibb').removeAttr('onblur onfocus class style').css('height', '400').addClass('required').wysibb(); $('#moreemofn, #emoticons').remove(); } //Editor de posts comentarios if($('#body_comm') && !$('#markItUpbody_comm').length){ $('#body_comm').markItUp(mySettings_cmt); } //Editor de respuestas shouts if($('#fulcomx textarea') && !$('#markItUpbody_comm').length){ $('#fulcomx textarea').markItUp(mySettings_cmt_shout); } //Editor de respuestas en fotos if($('#mensaje') && !$('#markItUpbody_comm').length){ $('#mensaje').markItUp(mySettings_cmt_shout); } //Editor de respuestas comunidades if($('#body_resp') && !$('#markItUpbody_resp').length){ $('#body_resp').markItUp(mySettings_cmt); } //Editor de respeustas en mensajes privados if($('#respuesta') && !$('#markItUpbody_comm').length){ $('#respuesta').markItUp(mySettings_cmt_shout); } } /* FIN - Editor */ bye.
  9. Hola gente les comparto un mini-fix de un pequeñ problemita con el que me topé y es que al momento de hacer una denuncia de un postt, si este tiene una comilla simple en su título ( ' ) ocasiona un error en la sintaxis javascript y no permite hacer la denuncia. Algo como esto: http://i.imgur.com/ffUoHAV.png Bueno, para quienes han tenido este problema hay varias formas de solucionarlo, les comparto a mi parecer la mas sencilla sin editar tantos archivos. Ir al archivo templates/modules/m_posts_metadata.tpl y buscar: denuncia.nueva('post',{$tsPost.post_id}, '{$tsPost.post_title}', '{$tsPost.user_name}')Reemplazar por: denuncia.nueva('post',{$tsPost.post_id}, '{$tsPost.post_title|replace:"&#039;":"\&#039;"}', '{$tsPost.user_name}')Y listo eso es todo: PDATA: A quienes interese en el archivo templates/t.php_files/p.denuncia.form.tpl hay un par de errores de ortografía, sin son como yo de compulsivo en estos asuntos, ya saben que hacer... Por eso siempre hay que leer la letra pequeña. Nos vemos en otro aporte
  10. Existe un pequeño error en la sección "Censuras" del panel de administración que se produce al intentar modificar las opciones de un término guardado previamente. Si accedes a esta sección, pulsas Editar sobre un término que ya tengas configurado y después cambias las opciones "Método" o "Tipo", al guardar los cambios recibes el mensaje de error "Ya existe un filtro así". Esto se produce porque la consulta SQL no tiene en cuenta estos dos filtros. Para solucionarlo abrimos inc/class/c.admin.php y buscamos: if (!db_exec('num_rows', db_exec(array(__FILE__, __LINE__), 'query', 'SELECT wid FROM w_badwords WHERE LOWER(word) = \'' . $tsCore->setSecure(strtolower($_POST['before'])) . '\' && LOWER(swop) = \'' . $tsCore-> setSecure(strtolower($_POST['after'])) . '\''))) Lo sustituimos por esto: if (!db_exec('num_rows', db_exec(array(__FILE__, __LINE__), 'query', 'SELECT wid FROM w_badwords WHERE LOWER(word) = \'' . $tsCore->setSecure(strtolower($_POST['before'])) . '\' && LOWER(swop) = \'' . $tsCore->setSecure(strtolower($_POST['after'])) . '\' && method = '.(int)$method.' && type = '.(int)$type.''))) Guardamos y listo.
  11. EL mod de recursante: tenia un bug asi cuando se daba la bienvenida por muro para arreglaro es facil abren b.shouts-beta.tpl y buscan: {$s.p_nick} buscan todo lo que coincida y reemplazan por: {$tsUser->getUserName($s.p_user_pub)} y quedaria ya bien:
  12. Hola amigos, hoy les traigo este Fix que un amigo me pidió para el theme y ahora se los comparto a ustedes. Es un fix de los márgenes del main container, así haremos que la web siempre esté centrada y no se valla... a la putha. Solo me paso estando desconectado de mi usuario, pero conectado no me pasaba, pero igual no hace daño tenerlo jajaja. 1.- Vamos a el archivo main_Header.tpl y buscamos: <section {if $tsPage != 'home' && $tsPage != 'posts'}id="maincontainer"{/if}> 2.- Lo cambiamos por: {if $tsPage != 'home' && $tsPage != 'posts'} <section style="margin: 10px auto!important;" id="maincontainer"> {else} <section {if $tsPage != 'home' && $tsPage != 'posts'}id="maincontainer"{/if}> {/if} y eso sería todo . Aca les dejo unas caps para que no sea tan crap (las tome a diferente hora xD en otro pc): -Antes: -Después: @Leal espero mi -1 :3
  13. Hola! Comienzo esto con una advertencia: No sé php, pero a prueba y error logré adaptar la api V3 de imgur, por esta razón no suelo compartir cosas en el foro pero ya que logré que me funcione y lo están pidiendo quiero compartirlo. Pido por favor a los que saben que corrijan todos los errores que pueda tener, o bien avisen si es un completo desastre Para usar la nueva api hay que registrar una nueva aplicación en imgur para obtener una id, en el ejemplo ya les doy una creada, pero creo que sería conveniente que cada uno cree la suya ya que imgur tiene algunas limitaciones para usuarios free y mejor prevenirse. Aclaro que este fix es para los que usen el editor Wysiwyg, no recuerdo bien como era el otro. Entran al archivo inc/php/iupload.php y reemplazan todo el contenido por el siguiente: <? function upload($image) { $client_id = '73036cb13e58514'; $server = 'https://api.imgur.com/3/image.json'; $headers = array('Authorization: Client-ID ' . $client_id); $image = file_get_contents($image); $pvars = array('image' => base64_encode($image)); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $server); curl_setopt($ch, CURLOPT_TIMEOUT , 30); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER , $headers); curl_setopt($ch, CURLOPT_POSTFIELDS, $pvars); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); $result = curl_exec($ch); curl_close($ch); return $result; } if(isset($_FILES['img'])) { $isIframe = ($_POST["iframe"]) ? true:false; $idarea = $_POST["idarea"]; $response = upload($_FILES['img']['tmp_name']); $data = json_decode($response, true); $img_url = $data['data']['link']; if($isIframe) { echo '<html><body>OK<script>window.parent.$("#'.$idarea.'").insertImage("'.$img_url.'","'.$img_url.'").closeModal().updateUI();</script></body></html>'; }else { header("Content-type: text/javascript"); echo '{"status":1,"msg":"OK","image_link":"'.$img_url.'","thumb_link":"'.$img_url.'"}'; } }else { header("Content-type: text/javascript"); echo '{"status":0,"msg":"Empty"}'; } ?> La id que deberían modificar está después de $client_id = al principio del código, para eso tienen que estar registrados en imgur.com e ir a: https://api.imgur.com/oauth2/addclient Llenan los datos y eligen la opción Anonymous usage without user authorization Y van a obtener el id: Lo reemplazan en el archivo y ya debería funcionar. Al menos en mi caso anduvo. Espero que sirva!
  14. Hola amigos, comprobando las novedades de la actualización me topé con algunos errores, y aquí las posibles soluciones... 1) Evitar que otro admin borre tu cuenta Sucede que otro administrador puede borrar tu cuenta completa desde la administración, y no se le debería permitir borrar la cuenta del primer usuario del sitio, o sea el creador del sitio. Para evitar eso, vamos al c.admin.php y en la línea 1004 aprox. buscan: function deleteContent($user_id){ global $tsUser; y debajo de eso agregamos: if( $user_id == 1) return "No puedes eliminar " . ($_POST['bocuenta'] ? "la cuenta" : "contenido") . " del primer administrador"; Con eso, nadie podrá borrar contenido o la cuenta completa del administrador. 2) Remplazar el Restriction por setRestriction Al parecer, a Isidrin se le paso un código Pues, se puede comprobar en el bbcode.inc.php en la línea 38 aprox, el $restriction está en privado. private $restriction; Y no se puede llamar desde otro archivo, entonces el archivo c.core.php en la línea 444 aprox. lo llama, y se produce un error. $parser->restriction = array('url', 'code', 'quote', 'quotePHPost', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 'align', 'spoiler', 'swf', 'goear', 'hr', 'li'); Para resolverlo, buscan lo anterior en la línea indicada y lo remplazan por: $parser->setRestriction(array('url', 'code', 'quote', 'quotePHPost', 'font', 'size', 'color', 'img', 'b', 'i', 'u', 'align', 'spoiler', 'swf', 'goear', 'hr', 'li')); Y se resolverá 3) Establecer el máximo del size Un usuario al momento de utilizar este bbcode le puede cambiar el número de pixeles que va a tener como tamaño el texto, y si le agrega un número exagerado se muestra enorme el texto y nada bueno. Para resolverlo, remplacen en el archivo SizeValidator.php ubicado en Raiz > inc > ext > JBBCode > validators lo siguiente: return is_numeric($input) && $input > 0; por: if( $input > 0 && $input < 25 ) return is_numeric($input); return false; Donde el número de pixeles no debe ser mayor o igual a 25... Por ahora, eso es todo _______________________ Tambien quiero reportar un bug, sucede que se puede agregar bbcodes en los muros, cosa que no sucedia en versiones anteriores. Y para Isidro, por favor para que active el boton Source del CKEditor, pues con eso me ayudo un poco para hacer los topic
  15. fix

    Hola bueno debido a las nuevas modificaciones de seguridad se han actualizado muchos archivos y modificados otros tantos pero bueno a lo que vamos iba a hacer una mencion a un user en una page actualizada y bueno vi que la url me daba error ya que dicha url me mandaba a www . Domain . Com / NICKUSUARIO cuando en verdad deberia segun lo que tengo entendido salvo que en la nueva version de risus se haya modificado la url del perfil ya que no he probado una version limpia sin modificaciones pero bueno a lo que se va en las versiones anteriores la url del perfil es www . Domain . Com / PERFIL / NICKUSUARIO entonces para fixear esto se van al archivo bbcode.inc.php que esta en inc/ext/ de la raiz del sitio y del script y buscan /** * @name parseMentions * @access public * @param string * @return string * @info PONE LOS LINKS A LOS MENCIONADOS */ public function parseMentions() { global $tsUser; $founds = array(); $this->text .= ' '; preg_match_all('/\B@([a-zA-Z0-9_-]{4,16}+)\b/', $this->text, $users); foreach ($users[1] as $user) { if (!in_array($user, $founds)) { $uid = $tsUser->getUserID($user); if (!empty($uid)) { $find = '@' . $user . ' '; $replace = '@<a href="' . $this->settings['url'] . '/' . $user . '" class="hovercard" uid="' . $uid . '">' . $user . '</a> '; $this->text = str_replace($find, $replace, $this->text); } $founds[] = $user; } } $this->text = substr($this->text, 0, -1); } y lo cambian por /** * @name parseMentions * @access public * @param string * @return string * @info PONE LOS LINKS A LOS MENCIONADOS */ public function parseMentions() { global $tsUser; $founds = array(); $this->text .= ' '; preg_match_all('/\B@([a-zA-Z0-9_-]{4,16}+)\b/', $this->text, $users); foreach ($users[1] as $user) { if (!in_array($user, $founds)) { $uid = $tsUser->getUserID($user); if (!empty($uid)) { $find = '@' . $user . ' '; $replace = '@<a href="' . $this->settings['url'] . '/perfil/' . $user . '" class="hovercard" uid="' . $uid . '">' . $user . '</a> '; $this->text = str_replace($find, $replace, $this->text); } $founds[] = $user; } } $this->text = substr($this->text, 0, -1); } bueno eso es todo Un Saludo
  16. Aqui una correccion para poder usar la herramienta del buscador de IP de la Moderacion, la cual utilizaba un servidor de busqueda para la localizacion de las IP entrantes en nuestras web, pero al parecer elservidor esta inactivo y no se puede utilizar, y mirando su fecha de expiracion esta pronto y no creo regrese, asi que aqui les dejo otro servicio el cual pueden utilizar. Para aplicarlo simplemente se van al archivo m.mod_buscador.tpl ubicado en /themes/default/templates/admin_mods/ y buscan http://oxi.mx/g/ y lo cambian por http://es.geoipview.com/?q= , deberan reemplazarlo las 5 veces que salen para la busqueda en cada seccion. Esto aclaro no es un error del Script, mas bien un descuido del uso de servidores externos, su utilidad no es muy utilizada pero para los que quieran tener las herramientas de uso aqui la manera de corregirla..
  17. Indiferentemente de si se activa o no la opción "Revisión de post tras su publicación" el script muestra las mismas opciones de acceso al post tras completar el proceso de publicación. En el caso de que el post necesite revisión previa, el enlace "Acceder al post" nos envía a la ventana de "Post en revisión", algo que en mi opinión resulta redundante. Con este pequeño FIX cambiaremos la redirección según sea necesario, es decir, si el post requiere revisión nos enviará a la página principal, de lo contrario accederemos a nuestro post. El proceso es muy sencillo. Abrimos inc/php/agregar.php y buscamos: 'but' => 'Acceder al post', 'link' => "{$tsCore->settings['url']}/posts/{$tsCat['c_seo']}/$tsPost/{$tsCore->setSEO($_POST['titulo'])}.html"));Lo sustituimos por esto: 'but' => ''.(!$tsUser->is_admod && ($tsUser->permisos['gorpap'] == true || $tsCore->settings['c_desapprove_post'] == 1) ? 'P&aacute;gina principal' : 'Acceder al post').'', 'link' => ''.(!$tsUser->is_admod && ($tsUser->permisos['gorpap'] == true || $tsCore->settings['c_desapprove_post'] == 1) ? ''.$tsCore->settings['url'].'/posts/' : ''.$tsCore->settings['url'].'/posts/'.$tsCat['c_seo'].'/'.$tsPost.'/'.$tsCore->setSEO($_POST['titulo']).'.html').''));Eso es todo. Un saludo.
  18. Este FIX es para completar el fantástico MOD creado por Kmario19 que permite visualizar la última actividad de los usuarios en nuestra web. Según avisaba el autor en el topic aún estaba pendiente de añadir la identificación por IP que permitiría guardar los registros de actividad de los visitantes de forma independiente en función de su IP. Aquí te dejo los pasos para incluir la identificación por IP de usuarios y visitantes. Paso 1- En primer lugar debes instalar el MOD indicado arriba siguiendo los pasos explicados en el topic por Kmario19. Paso 2- Lo siguiente es añadir una nueva consulta a la base de datos donde se guardará la IP del usuario: ALTER TABLE `u_localizacion` ADD `ip` VARCHAR( 40 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL AFTER `fecha` Paso 3- Abrimos el archivo inc/class/c.localizacion.php y buscamos: // YA TUVO ACTIVIDAD? $sql = mysql_query('SELECT id_user FROM u_localizacion WHERE id_user = '.$user_id); // if (mysql_num_rows($sql) > 0) { // ACTUALIZAMOS LA LOCALIZACION mysql_query('UPDATE u_localizacion SET tipo = \''.$tipo.'\', lugar = \''.$lugar.'\', titulo = \''.$titulo.'\', url = \''.$url.'\', fecha = \''.time().'\' WHERE id_user = '.$user_id); } else { // INSERTAMOS NUEVA LOCALIZACION mysql_query('INSERT INTO u_localizacion (tipo, id_user, lugar, titulo, url, fecha) VALUES (\''.$tipo.'\', \''.$user_id.'\', \''.$lugar.'\', \''.$titulo.'\', \''.$url.'\', \''.time().'\')'); }Lo sustituimos todo por esto: $newip = $tsCore->setSecure($_SERVER['REMOTE_ADDR'] ? $_SERVER['REMOTE_ADDR'] : $_SERVER['X_FORWARDED_FOR']); $caduca = time() - (2 * 3600);// 2 horas $data = db_exec('fetch_assoc', db_exec(array(__FILE__, __LINE__), 'query', 'SELECT id_user, ip FROM u_localizacion WHERE id_user = \''.$user_id.'\' LIMIT 1')); // // Borramos registros de visitantes tras 2 horas db_exec(array(__FILE__, __LINE__), 'query', 'DELETE FROM u_localizacion WHERE id_user = 0 AND fecha <= '.$caduca.''); // HA INICIADO SESION? if ($data['id_user'] >= 1) { // ACTUALIZAMOS LA LOCALIZACION DEL USUARIO db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_localizacion SET tipo = \''.$tipo.'\', lugar = \''.$lugar.'\', titulo = \''.$titulo.'\', url = \''.$url.'\', fecha = \''.time().'\' WHERE id_user = '.$user_id); // // ES UN VISITANTE? } elseif ($data['id_user'] == 0 && $data['ip'] == $newip) { // ACTUALIZAMOS LA LOCALIZACION DEL VISITANTE MEDIANTE SU IP db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE u_localizacion SET tipo = \''.$tipo.'\', lugar = \''.$lugar.'\', titulo = \''.$titulo.'\', url = \''.$url.'\', fecha = \''.time().'\' WHERE ip = \''.$newip.'\' AND id_user = 0'); // } else { // INSERTAMOS NUEVA LOCALIZACION db_exec(array(__FILE__, __LINE__), 'query', 'INSERT INTO u_localizacion (tipo, id_user, lugar, titulo, url, fecha, ip) VALUES (\''.$tipo.'\', \''.$user_id.'\', \''.$lugar.'\', \''.$titulo.'\', \''.$url.'\', \''.time().'\', \''.$newip.'\')'); }Eso sería todo. Ahora las visitas serán filtradas por su IP y se mostrarán los registros de visitantes de forma independiente. Sólo está probado en localhost. EXTRA
  19. Es un fix bastante sencillo pero noto que no esta en phpopst y aquí les traigo, para los usuarios que quieran activar o desactivar el sistema antiflood de su web dentro del paquete comprimido hay dos documentos en word que explica como podemos integrarlo a nuestras webs son pasos bastantes sencillos y lo explique lo mas entendible para que no se les complique a la hora de instalarlo. Aquí unas capturas de como queda en la pestaña de las configuraciones de la web en general y la otra en la pestaña que es para editar al usuario que se desea dejar desactivado el antiflood solo puede cambiarla el administrador o los moderadores que tengan acceso. CONFIGURACIÓN GENERAL: EDICIÓN DE USUARIO: funciona con cualquier plantilla aquí debajo les dejo el link para que descarguen los archivo necesarios para su instalación + las dos guías de como instalarlo de forma individual LINK DE DESCARGA: MEGA
  20. fix

    Bien, me encontre un error en el diseño Default (seguro nadie se había dado cuenta). Al pasar el ratón por encima, aparecen estas opciones que no se ven ya que usan imágenes de Facebook, las cuales ya no existen (como Facebook cambio todo su diseño) Su solución es simple. Van a MENSAJES.css y buscan: .uiGrid i{ background-image: url("http://b.static.ak.fbcdn.net/rsrc.php/v1/zG/r/3aUCNXyvgB6.png"); background-repeat: no-repeat; display: inline-block; height: 12px; width: 12px; } .uiGrid i.read { background-position: -11px -85px; height: 11px; width: 11px; } .uiGrid i.read:hover {background-position: 0 -85px;} .uiGrid i.unread { vertical-align: middle; background-position: -11px -73px; height: 11px; width: 11px; } .uiGrid i.unread:hover {background-position: 0 -73px;} .uiGrid i.delete { background-image: url("http://b.static.ak.fbcdn.net/rsrc.php/v1/za/r/1Be-brvKO2y.png"); height: 11px; margin-top: 1px; width: 11px; } .uiGrid i.delete:hover {background-position: left -22px;} .uiGrid i.return { background-position: -8px -114px; width: 8px; margin-right: 5px; vertical-align: middle; } .uiGrid i.pop { background-position: -23px -64px; height: 13px; width: 9px; }Lo remplazan por: .uiGrid i{ background-image: url("http://i.imgur.com/zMol1Xb.png"); background-repeat: no-repeat; display: inline-block; height: 16px; width: 16px; } .uiGrid i.read { height: 11px; width: 11px; } .uiGrid i.unread { vertical-align: middle; height: 16px; width: 16px; } .uiGrid i.delete { background: url(http://i.imgur.com/GFQ0Nbv.png); height: 16px; width: 16px; } .uiGrid i.return { width: 16px; margin-right: 5px; vertical-align: middle; } .uiGrid i.pop { height: 16px; width: 16px; }Ya esta miren: Adios carnalitos !
  21. Hola les comparto un fix para un problemita que existe desde el 2011 y que no han solucionado muchos culpaban a los diseñadores o al propio usuario de que solo les pasaba a a ellos pero bueno me puse a probar que efectivamente no fuera eso y si resulto que no era eso sino del script . Se van al archivo c.posts.php y buscan: GROUP BY c_post_id y la cambiar por GROUP BY p.post_id simple y rapido con eso ya veran todos sus favoritos espero les sirva para los que lo pedian desde hace 4 años jaja salu2 ANTES DESPUES:
  22. Bueno este mini-complemento lo que hace es no tomar en cuenta si se clickea o no la casilla de Tatuajes o Piercings en /cuenta/ y asi poder llegar al 100% sin necesidad de marcarlos. Lo único que hay que hacer es ir al c.cuenta.php en la carpeta inc/class En el buscan: $tengo = array($tsCore->setSecure($_POST['t_0']),$tsCore->setSecure($_POST['t_1'])); y lo borran. Luego buscan: 'tengo' => serialize($tengo), y lo borran tambien. Eso seria todo, les dejo una cap:
  23. Fix

    Hola amigos después del desastroso resultado de este tema: www.phpost.net/topic/21434-importante-fix-error-sexo-al-registro/ Isidro a dicho de por que el error. Y ahí lo entendí. La consulta, ¿como pude ser tan despistado?. Veresi, PHPost usa la función (int) para forzar a ciertas variables que en la BD se insertaran numeros para evitar inyecciones SQL. Esa función lo que hace es forzar a una variable a ser numérica. Y como en la consulta estaba (int) y yo lo insertaba como 'm' para hombre y 'f' para mujer en la BD siempre quedaría '0' correspondiente al sexo femenino. Por lo tanto, para que algunos no se líen, voy a postear la solución de Isidro, pero aclaro: La hizo Isidro, solo la posteo porque lo pidió Shackur. Asi que creditos totales para Isidro. 1) Abren el c.registro.php de inc/class y buscan: 'user_sexo' => empty($_POST['sexo']) ? 0 : 1, y lo remplazan por: 'user_sexo' => $_POST['sexo'], Ene ese archivo buscan: // INSERTAMOS EL PERFIL mysql_query('INSERT INTO `u_perfil` (`user_id`, `user_dia`, `user_mes`, `user_ano`, `user_pais`, `user_estado`, `user_sexo`) VALUES (\''.(int)$tsData['user_id'].'\', \''.(int)$tsData['user_dia'].'\', \''.(int)$tsData['user_mes'].'\', \''.(int)$tsData['user_anio'].'\', \''.$tsData['user_pais'].'\', \''.$tsData['user_estado'].'\', \''.(int)$tsData['user_sexo'].'\')'); mysql_query('INSERT INTO `u_portal` (`user_id`) VALUES (\''.(int)$tsData['user_id'].'\')'); Y lo remplazan por: // INSERTAMOS EL PERFIL mysql_query('INSERT INTO `u_perfil` (`user_id`, `user_dia`, `user_mes`, `user_ano`, `user_pais`, `user_estado`, `user_sexo`) VALUES (\''.(int)$tsData['user_id'].'\', \''.(int)$tsData['user_dia'].'\', \''.(int)$tsData['user_mes'].'\', \''.(int)$tsData['user_anio'].'\', \''.$tsData['user_pais'].'\', \''.$tsData['user_estado'].'\', \''.($tsData['user_sexo'] == 'f' ? 0 : 1).'\')'); mysql_query('INSERT INTO `u_portal` (`user_id`) VALUES (\''.(int)$tsData['user_id'].'\')'); Y ahora ya funcionaría. (Cap ofrecida por Nico) Y listo!! Creditos: Isidro -> por el fix y por hacer que me diera cuenta del error Nico-> por la cap HADES-> por reportar el error Saludos P.D: Cualquier cosa avisenme
  24. Fix

    Hola amigos de PHPost! Rápidamente antes de que se me acaben las pilas (solo funciono con pilas chinas, las duracell están muy caras), quiero decirles como adaptar este grandioso chat a cualquier theme. Primero instalan el chat: Luego van a hacer estos pequeños cambios: * Para que les funcione los avatars, ya que no se ven al estar publicados - Van al archivo inc/class/c.chat.php y buscan esta linea: public function parseSmiles($st, $path = '/themes/TaringaV5gonzalogranate/images/small/'){ Y cambian TaringaV5gonzalogranate Por el nombre de su theme. * Para que se pueda ver el botón de emoticones: - Van a templates/chat/opcionesxvell.tpl y buscan esta linea: <input type="button" class="mBtn btnOkgonza" value="Emoticones" style="width:308px;margin-left:0px;margin-bottom:4px;cursor:pointer;"/> Y cambian: class="mBtn btnOkgonza" Por class="mBtn btn_g" Eso es todo! Créditos a estos GRANDES usuarios que admiro mucho: - Tron - Vellenger
  25. Fix

    Hola! les paso un fix para el mod de que me paso Isidro así que todos los créditos para el. El error Al poner un código ya sea php, css u otro salen los smileys en forma de url: Al tildar la opción de Sin smileys no salia el sintaxis: El fix Bueno es muy sencillo en el archivo inc/class/c.core.php buscan // FIRMA case 'firma': // BBCodes permitidos $parser->restriction = array("url", "code", "quote", "quotePHPost", "font", "size", "color", "img", "b", "i", "u", "align", "spoiler", "swf", "goear", "hr", "li", "info", "warning", "note", "message", "download", "tu"); // CONVERTIMOS $html = $parser->parseString($bbcode); break; Y lo reemplazan por // FIRMA case 'firma': // BBCodes permitidos $parser->restriction = array("url", "code", "quote", "quotePHPost", "font", "size", "color", "img", "b", "i", "u", "align", "spoiler", 'php', 'css', "swf", "goear", "hr", "li", "info", "warning", "note", "message", "download", "tu"); // CONVERTIMOS $html = $parser->parseString($bbcode); break; Para los que quieran solo editar es en la linea 430 aprox. que comienza con "$parser->restriction = array" y después de "spoiler" ponen: , 'php', 'css' Entonces quedaria dos veces ", 'php', 'css' " en el archivo. Eso es todo.