Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal
fem

[FIX] Subir imágenes al crear post desde editor wysiwyg

Recommended Posts

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 :D

 

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

 

3lIPqP5.png

 

Y van a obtener el id:

LFpSWln.png

 

Lo reemplazan en el archivo y ya debería funcionar. Al menos en mi caso anduvo. Espero que sirva!

Edited by fem
  • Like 5

Share this post


Link to post
Share on other sites
hace 3 horas, Cuarteteros dijo:

exelente amigo gracias por compartir .. funciono de una--- gracias 

 

hace 4 horas, sirjavo dijo:

Excelente aporte amigo muy necesario

Enviado desde mi iPhone utilizando Tapatalk

 

hace 5 horas, jorge51 dijo:

Me funciono de una :D  , ya se pude subir desde la Pc con ese editor  , Gracias por el Fix  ...

 

El mail que te manda imgur

 

http://i.imgur.com/8mMDR9w.png

 

Me alegra que les sirva! Y si, olvidé decir que la id también llega al mail!

 

 

hace 33 minutos, Modelo69 dijo:

Disculpa y para que se suba a mi hosting y no al  imgur  donde modifico, porque como el codigo cambio ya no se como debe quedar

 

Por default risus no trae esa opción así que debe ser algún mod que instalaste, aunque los cambios en imgur no deberían haberte afectado

Edited by fem

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Solo_Duvan
      Hola amigos, me percate que los comentarios de los post no se pueden editar, les dejo un pequeño fix por si les molesta este problema.
       
      Vamos a funciones.js ubicado en themes/default/js y buscamos:
       
      var text = textarea.bbcode();  
      Lo reemplazamos con esto:

       
      var text = (type == 'new') ? textarea.bbcode() : textarea.val();  
      Listo, ahora podremos editar comentarios, espero les funciones. Saludos 😉
    • By Kmario19
      Hola a todos, soy Kmario19. Tal vez me recuerden de mods como la portada de los posts, o secciones como las de juegos y las comunidades. Esta vez vengo con un fix para aquellos sitios que tengan millones de visitas y la tabla w_visitas esté afectando la carga de un post ya que es la tabla que más registros genera.
       
      Junto a @Rengo estuvimos analizando por qué los posts cargaba tan lento, después de un rato noté que una consulta en particular era la culpable:
       
      db_exec(array(__FILE__, __LINE__), 'query', 'UPDATE `w_visitas` SET `date` = \''.time().'\', ip = \''.$tsCore->getIP().'\' WHERE `for` = \''.(int)$post_id.'\' && `type` = \'2\' && `user` = \''.$tsUser->uid.'\' LIMIT 1'); Esta línea está en c.posts.php en la función getPost. (esta consulta actualiza la fecha de visita del usuario logueado al post)
       
      El problema es que después de que el sitio tenga suficiente tiempo online o muchísimas visitas, esta tabla w_visitas llega a tener millones de registros y cuando una tabla así no está indexada tiende a hacer una consulta "FULL SCAN" por lo que básicamente tiene que recorrer todos los registros para poder finalizar su tarea, y en el caso del sitio de pruebas tiene más de 2 millones de registros.
       
      Entonces, para todos aquellos que quieran evitar este pequeño problema de rendimiento a futuro cuando tengan muchas visitas o si ya se les presenta el caso, la solución es ir a su base de datos y ejecutar la siguiente consulta:
       
      ALTER TABLE `w_visitas` ADD INDEX (`for`, `type`, `user`);  
      Y listo, eso soluciona el problema.
       
      Para que se hagan una idea de los resultados, esta es una consulta antes de agregar el indice:
       

       
      Y esta es la misma consulta después de agregar el índice:
       

       
      Estamos hablando de una absurda reducción de 91150% de acuerdo al tiempo de ejecución de MySQL pero realmente pasamos a un tiempo de carga del sitio de unos 6 segundos aprox. a menos de 1 segundo.
       
      Bueno, es un índice que debería ir por defecto en el .sql con el que se instala el script para evitar ese inconveniente a futuro. Seguramente algunas otras secciones críticas del script con el pasar del tiempo y vayan creciendo necesitarán de estos índices para mejorar los tiempos de consulta de la base de datos.
       
      Bueno no siendo más, me despido. Hasta otra ocasión... espero no tan tardía xD
    • By Miguel92
      Problemas al comentar y/o enviar mensaje 
      después de haber agregado el wysibb
       
      Si actualizaste y te has topado con este problema, bueno te traigo la solución.
       
      [1] SOLUCIONADO: No puedo comentar
      Ir a default/js/funciones.js y buscan
          // NUEVO COMENTARIO     nuevo: function(mostrar_resp, comentarionum){         // EVITAR FLOOD         $('#btnsComment').attr({'disabled':'disabled'});         //         var textarea = $('#body_comm');         var text = textarea.val(); y en la parte que dice .val(); lo cambian por .bbcode();
              var text = textarea.bbcode();  
      [2] SOLUCIONADO: No puedo previsualizar el comentario
      Ir a default/js/funciones.js y buscan
      // VISTA PREVIA DEL COMENTARIO     preview: function(id, type){         var textarea = (type == 'new') ? $('#' + id) : $('#edit-comment-' + id);         var text = textarea.val(); lo mismo que el paso anterior
              var text = (type == 'new') ? textarea.bbcode() : textarea.val(); // 26/09/2019 16/05/2018
      Con la nueva actualización del script phpost_1.3.0.000 tiene este problema, en el momento que lo estaba haciendo me había funcionado de la manera que esta publicado..luego tuve el error de no poder editar el comentario y la solución fue revertir este paso y de esa manera edita y previsualiza
       
       
      SOLUCIONADO: No puedo previsualizar el mensaje
      Ir a default/js/funciones.js y buscan
          // VISTA PREVIA DEL MENSAJE     previewms: function(id, type){         var textarea = (type == 'new') ? $('#' + id) : $('#edit-comment-' + id);         var text = textarea.val(); lo mismo que el paso anterior
              var text = textarea.bbcode();  
      [3] SOLUCIONADO: No puedo enviar mensaje desde "Mensajes"
      Ir a default/js/acciones.js y buscan
          // RESPONDER     responder: function(mp_id){         this.vars['mp_id'] = $('#mp_id').val();         this.vars['mp_body'] = encodeURIComponent($('#respuesta').val()); // Fix: 14/12/2014 - 1.1.000.9 lo mismo que el paso anterior  .val(); lo cambian por .bbcode();
              this.vars['mp_body'] = encodeURIComponent($('#respuesta').bbcode()); // Fix: 14/12/2014 - 1.1.000.9  
      En el caso de encontrar mas lo ire colocando!
    • By Tronlar
      Hola a [email protected],os dejo como hacer funcionar el sistema de captcha en las V5,V6,lo acabo de probar y funciona bien.
       
       
      Ejecutar esta consulta:
      ALTER TABLE `w_configuracion` ADD `pkey` VARCHAR(55) NOT NULL AFTER `offline_message`, ADD `skey` VARCHAR(55) NOT NULL AFTER `pkey`;  
      En c.admin.php --> inc/class/c.admin.php
       
      Buscar:
      'newr' => empty($_POST['newr']) ? 0 : 1);
      Cambiar por:
      'newr' => empty($_POST['newr']) ? 0 : 1, 'pkey' => $tsCore->setSecure($_POST['pkey']), 'skey' => $tsCore->setSecure($_POST['skey']),  
       
      Buscar:
      '\', `offline_message` = \'' . $c['offline_message'] .  
      Añadir al lado:
      '\', `pkey` = \'' . $c['pkey'] . '\', `skey` = \'' . $c['skey'] .
      Tiene que quedar así:
      '\', `offline_message` = \'' . $c['offline_message'] . '\', `pkey` = \'' . $c['pkey'] . '\', `skey` = \'' . $c['skey'] .  
       

      En c.registro.php --> inc/class/c.registro.php
       
      Buscar:
      'user_captacha_challenge' => $_POST['recaptcha_challenge_field'], 'user_captacha_response' => $_POST['recaptcha_response_field'],  
      Cambiar por:
      'user_captcha' => $_POST['g-recaptcha-response'],  
      Buscar:
      'captacha' => 'El código es incorrecto'
      Cambiar por:
      'captcha' => 'Validación incorrecta',  
       
      Buscar:
      // CAPTACHA require(TS_EXTRA . 'recaptchalib.php'); $robot = recaptcha_check_answer(RC_PIK,$_SERVER["REMOTE_ADDR"],$tsData['user_captacha_challenge'],$tsData['user_captacha_response']); if(!$robot->is_valid) return 'recaptcha: El código es incorrecto.';

      Cambiar por:        
      /** reCAPTCHA **/ $recaptcha = 'https://www.google.com/recaptcha/api/siteverify?secret=' . $tsCore->settings['skey'] . '&response=' . $tsData['user_captcha'] . '&remoteip=' . $tsCore->getIP(); // Obtener respuesta $response = file_get_contents($recaptcha); // Extraer resultado $ext1 = explode('"success":', $response); $ext2 = explode(',', $ext1[1]); // Comprobar resultado $valid = trim($ext2[0]); // Devolver respuesta si es incorrecta if ($valid == 'false') { return 'recaptcha: No hemos podido validar tu humanidad'; }  
       
      registro.js --> default/js/registro.js
      registro.js --> V6/js/registro.js
       
      Buscar:
      /* reCAPTCHA */ case 'recaptcha_challenge_field': return true; break; case 'recaptcha_response_field': //Si ya paso por aca y no hubieron cambios, devuelvo el mismo status if(!force_check && this.datos[campo] === value && this.datos['recaptcha_challenge_field'] == $('#RegistroForm .pasoDos #recaptcha_challenge_field').val()) if(this.datos_status[campo]=='empty') return no_empty ? this.show_status(el, this.datos_status[campo], this.datos_text[campo]) : this.hide_status(el, this.datos_status[campo], this.datos_text[campo]); else return this.show_status(el, this.datos_status[campo], this.datos_text[campo]); //Almaceno el dato this.datos[campo] = value; this.datos['recaptcha_challenge_field'] = $('#RegistroForm .pasoDos #recaptcha_challenge_field').val(); //!empty if(empty(value)){ var status = 'empty'; var text = 'El campo es requerido'; if(no_empty) return this.show_status(el, status, text); else return this.hide_status(el, status, text); } return registro.show_status(el, 'ok', 'OK'); break; } },  

      Cambiar por:    
      /* reCAPTCHA */ case 'g-recaptcha-response': this.datos[campo] = value; //!empty if (!value) { return this.show_status($('#RegistroForm .g-recaptcha'), 'empty', 'Demuestra que eres humano'); } return registro.show_status($('#RegistroForm .g-recaptcha'), 'ok', 'OK'); break; } },  
       
      Buscar:
      case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm #recaptcha_response_field'), 'error', h.substring(strpos(h, ':')+2)); break;
         
      Cambiar por:
      case 'recaptcha': //reCAPTCHA registro.change_paso(2, true); registro.show_status($('#RegistroForm .g-recaptcha'), 'error', h.substring(strpos(h, ':') + 2)); break;

      t.registro.tpl --> default/templates/t.registro.tpl
      t.registro.tpl --> V6/templates/t.registro.tpl    
          
       Buscar:
      <div class="form-line"> <label for="recaptcha_response_field">Ingresa el código de la imagen</label> <div id="recaptcha_ajax"> <div id="recaptcha_image"></div> <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" /> </div> <div class="help recaptcha" id="nubex"><span id="puy"></span><span><em></em></span></div> </div>  

      Cambiar por:
      <div class="form-line"> <label>Confirme humanidad:</label> <div class="g-recaptcha" data-sitekey="{$tsConfig.pkey}"></div> <div class="help"><span><em></em></span></div> </div>
         
      Buscar:
      <script type="text/javascript"> // $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ //Seteo el pais seleccionado //registro.datos['pais']='MX'; //registro.datos_status['pais']='ok'; //registro.datos_text['pais']='OK'; // registro.change_paso(1); //Genero el autocomplete de la ciudad /*$('#RegistroForm .pasoDos #ciudad').autocomplete('/registro-geo.php', { minChars: 2, width: 298 }).result(function(event, data, formatted){ registro.datos['ciudad_id'] = (data) ? data[1] : ''; registro.datos['ciudad_text'] = (data) ? data[0].toLowerCase() : ''; if(data) $('#RegistroForm .pasoDos #terminos').focus(); });*/ mydialog.procesando_fin(); }); //Load recaptcha $.getScript("http://www.google.com/recaptcha/api/js/recaptcha_ajax.js", function(){ Recaptcha.create('6LcXvL0SAAAAAPJkBrro96lnXGZ56TBRExEmVM3L', 'recaptcha_ajax', { theme:'custom', lang:'es', tabindex:'13', custom_theme_widget: 'recaptcha_ajax', callback: function(){ $('#recaptcha_response_field').blur(function(){ registro.blur(this); }).focus(function(){ registro.focus(this); }).attr('title', 'Ingrese el código de la imagen'); } }); }); </script>

      Cambiar por:       
      <script type="text/javascript"> // $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ //Seteo el pais seleccionado //registro.datos['pais']='MX'; //registro.datos_status['pais']='ok'; //registro.datos_text['pais']='OK'; // registro.change_paso(1); //Genero el autocomplete de la ciudad /*$('#RegistroForm .pasoDos #ciudad').autocomplete('/registro-geo.php', { minChars: 2, width: 298 }).result(function(event, data, formatted){ registro.datos['ciudad_id'] = (data) ? data[1] : ''; registro.datos['ciudad_text'] = (data) ? data[0].toLowerCase() : ''; if(data) $('#RegistroForm .pasoDos #terminos').focus(); });*/ mydialog.procesando_fin(); }); </script> <script src="https://www.google.com/recaptcha/api.js" async defer></script> <script type="text/javascript"> $.getScript("{$tsConfig.js}/registro.js{literal}", function(){ registro.change_paso(1); mydialog.procesando_fin(); }); </script>

       m.admin_configs.tpl     --> default/templates/admin_mods/m.admin_configs.tpl            
       m.admin_configs.tpl     --> V6/templates/admin_mods/m.admin_configs.tpl    
              
      Buscar:   
      <dl> <dt><label for="ai_xat">Xat ID:</label><br /><span>Por defecto puedes agregar un chat de <a href="http://xat.com">Xat</a> para tu web, solo crea tu grupo he ingresa el nombre.</span></dt> <dd><input type="text" id="ai_xat" name="xat" maxlength="20" value="{$tsConfig.xat_id}" /> </dd> </dl> <hr />  

      Añadir debajo:
      <dl> <dt> <label for="pkey">reCaptcha pública</label> <br /><span>Clave pública de <a href="https://www.google.com/recaptcha/admin">reCatpcha</a>.</span> </dt> <dd> <input type="text" id="pkey" name="pkey" value="{$tsConfig.pkey}" /> </dd> </dl> <dl> <dt> <label for="skey">reCaptcha secreta</label> <br /><span>Clave privada de <a href="https://www.google.com/recaptcha/admin">reCatpcha</a>.</span> </dt> <dd> <input type="text" id="skey" name="skey" value="{$tsConfig.skey}" /> </dd> </dl> <hr />  
       
       
      Y con eso ya la tienen funcionando,saludos.


       
       
       
       
       

              
           
       
    • By Tronlar
      Hola a [email protected],os dejo como poner el editor WYSIWYG igual que la versión 1.3 , lo he probado en la V5 pero tiene que funcionar en cualquier tema.Si tienes problemas con otro tema o lo que sea respecto al mod,coméntalo aquí dejando tu web y un usuario demo.

      En c.core.php --> inc/class/c.core.php

      Buscar:
      /* parseBBCode($bbcode) */ function parseBBCode($bbcode, $type = 'normal', $smiles = true, $mentions = true) { // Class BBCode include_once(TS_EXTRA . 'bbcode.inc.php'); $parser = new BBCode(); // 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; }  
       
      Cambiar por:
      /* parseBBCode($bbcode) */ function parseBBCode($bbcode, $type = 'normal') { // Class BBCode include_once(TS_EXTRA . 'bbcode.inc.php'); $parser = new BBCode(); // 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')); // SMILES $parser->parseSmiles(); // MENCIONES $parser->parseMentions(); 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')); // SMILES $parser->parseSmiles(); 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')); // SMILES $parser->parseSmiles(); // MENCIONES $parser->parseMentions(); break; } // Retornar resultado HTML return $parser->getAsHtml(); }  

      En acciones.js --> themes/tutema/js/acciones.js

      Buscar:
      /* Citar comentarios */ function citar_comment(id, nick){ var textarea = $('#body_comm'); textarea.focus(); textarea.val(((textarea.val()!='') ? textarea.val() + '\n' : '') + '[quote=' + nick + ']' + htmlspecialchars_decode($('#citar_comm_'+id).html(), 'ENT_NOQUOTES') + '[/quote]\n'); }  

      Cambiar por:
      /* Citar comentarios */ function citar_comment(id, nick){ var textarea = $('#body_comm'); var message = $.trim($('#comment-body-'+id).html()); $('.wysibb-texarea').execCommand('quote',{autor: nick, seltext: message}); }  
       
      Buscar:
      //Imprimir editores function print_editor(){ //Editor de posts if($('#markItUp') && !$('#markItUpMarkItUp').length){ $('#markItUp').markItUp(mySettings); $('#emoticons a').live("click",function(){ emoticon = ' ' + $(this).attr("smile") + ' '; $.markItUp({ replaceWith:emoticon }); return false; }); } //Editor de posts comentarios if($('#body_comm') && !$('#markItUpbody_comm').length){ $('#body_comm').markItUp(mySettings_cmt); } //Editor de respuestas comunidades if($('#body_resp') && !$('#markItUpbody_resp').length){ $('#body_resp').markItUp(mySettings_cmt); } } /* FIN - Editor */  

      Cambiar 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').length && !$('.wysibb-texarea').length){ var wbbOpt = { buttons: "smilebox,|,bold,italic,underline,strike,sup,sub,|,img,video,link" } $('#body_comm').removeAttr('onblur onfocus class style title').css('height', '80').html('').wysibb(wbbOpt); } //Editor de respuestas comunidades if($('#body_resp') && !$('#markItUpbody_resp').length){ $('#body_resp').markItUp(mySettings_cmt); } //Editor de respuesta de 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 */  
       
      Buscar:
      mydialog.buttons(true, true, 'Enviar', 'mensaje.enviar(0)', true, true, true, 'Cancelar', 'close', true, false); mydialog.center();  
       
      Cambiar por:
      mydialog.buttons(true, true, 'Enviar', '$(\'.wysibb-texarea\').sync(); mensaje.enviar(0)', true, true, true, 'Cancelar', 'close', true, false); var wbbOpt = { resize_maxheight: 170, buttons: "smilebox,|,bold,italic,underline,strike,sup,sub,|,img,video,link,|,removeFormat" } $('#msg_body').wysibb(wbbOpt); mydialog.center();  

      Buscar:
      // RESPONDER responder: function(mp_id){ this.vars['mp_id'] = $('#mp_id').val(); this.vars['mp_body'] = encodeURIComponent($('#respuesta').val()); // Fix: 14/12/2014 - 1.1.000.9 if(this.vars['mp_body'] == '') { $('#respuesta').focus(); return; } // this.ajax('respuesta','id=' + this.vars['mp_id'] + '&body=' + this.vars['mp_body'], function(h){ $('#respuesta').val(''); // LIMPIAMOS switch(h.charAt(0)){ case '0': mydialog.alert("Error", h.substring(3)); break; case '1': $('#historial').append($(h.substring(3)).fadeIn('slow')); break; } $('#respuesta').focus(); }); },
          
      Cambiar por:
      // RESPONDER responder: function(mp_id){ this.vars['mp_id'] = $('#mp_id').val(); this.vars['mp_body'] = encodeURIComponent($('#respuesta').bbcode()); // Fix: 06/05/2018 - 1.3 if(this.vars['mp_body'] == '') { $('#respuesta').focus(); return; } // this.ajax('respuesta','id=' + this.vars['mp_id'] + '&body=' + this.vars['mp_body'], function(h){ $('#respuesta').val(''); // LIMPIAMOS $('.wysibb-body').html(''); switch(h.charAt(0)){ case '0': mydialog.alert("Error", h.substring(3)); break; case '1': $('#historial').append($(h.substring(3)).fadeIn('slow')); break; } $('#respuesta').focus(); }); },  

          
      En funciones.js --> themes/tutema/js/funciones.js

      Buscar:
      // NUEVO COMENTARIO nuevo: function(mostrar_resp, comentarionum){ // EVITAR FLOOD $('#btnsComment').attr({'disabled':'disabled'}); // var textarea = $('#body_comm'); var text = textarea.val();
      Cambiar por:
      // NUEVO COMENTARIO nuevo: function(mostrar_resp, comentarionum){ // EVITAR FLOOD $('#btnsComment').attr({'disabled':'disabled'}); // var textarea = $('#body_comm'); var text = textarea.bbcode();  
       
      Buscar:
      // VISTA PREVIA DEL COMENTARIO preview: function(id, type){ var textarea = (type == 'new') ? $('#' + id) : $('#edit-comment-' + id); var text = textarea.val();  

      Cambiar por:
      // VISTA PREVIA DEL COMENTARIO preview: function(id, type){ var textarea = (type == 'new') ? $('#' + id) : $('#edit-comment-' + id); var text = textarea.bbcode();  

      En main_header.tpl --> themes/tutema/templates/sections/main_header.tpl    
              
      Buscar:
      <link href="{$tsConfig.tema.t_url}/extras.css" rel="stylesheet" type="text/css" />  

      Agregar debajo:
      <link href="{$tsConfig.css}/wysibb.css" rel="stylesheet" type="text/css" />  
       
      Buscar:
       
      <script src="{$tsConfig.js}/funciones.js" type="text/javascript"></script>
      Agregar debajo:
      <script src="{$tsConfig.js}/wysibb.js" type="text/javascript"></script>  
      Subir esta carpeta y ya lo tienen funcionando.
       
       

       

       

       

       

       

       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Patrocinador



  • ×