Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o tema • Voltar para a ficha do tema
Como colocar uma resposta ajax como forumeiros
4 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Como colocar uma resposta ajax como forumeiros
Detalhes da questão
Endereço do fórum: https://lucianomicle.foroactivo.com/
Versão do fórum: phpBB3
Descrição
Olá amigos!
Eu estava vendo isso ao responder a uma mensagem sobre um tópico, e entre outras coisas que você escreve no editor.
Recebi um ajax dizendo que a mensagem está sendo enviada, o envio e o flood caso tenhamos que esperar cerca de 10 segundos para enviar outra mensagem.
Você poderia me dar um suporte de como fazer ou um tutorial? porque eu não consigo encontrar nada
- Exemplo:
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7962
Pontos : 9217
Re: Como colocar uma resposta ajax como forumeiros
Quando eu quero enviar uma mensagem, o ajax continua carregando até dizer "enviado", mas não envia a mensagem para o tópico.
Re: Como colocar uma resposta ajax como forumeiros
LucianoMicle escreveu:o ajax continua carregando até dizer "enviado", mas não envia a mensagem para o tópico.
Primeiramente entre no seu Painel administrativo > Geral > Fórum > Segurança e veja se a opção "Desautorizar formulários não oficiais de postarem no fórum e enviar mensagens privada" está marcada como "Não."
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7962
Pontos : 9217
Re: Como colocar uma resposta ajax como forumeiros
Se solicitado, a opção está desativada, mas o erro continua funcionando para mim ...
Embora eu já tenha retirado todos os js
Embora eu já tenha retirado todos os js
Re: Como colocar uma resposta ajax como forumeiros
O senhor tem alguma conta teste, sem poderes administrativos ou de moderação, que possa usar? Por favor!
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7962
Pontos : 9217
Re: Como colocar uma resposta ajax como forumeiros
Saudações, boa tarde.
Crie um novo javascript com investimento nos tópicos com esse código:
Crie um novo javascript com investimento nos tópicos com esse código:
- Código:
(function($){'use strict';var config={loading:'<i class="fa fa-refresh fa-spin"></i> Postando sua mensagem...',success:'<i class="fa fa-check-circle"></i> Mensagem postada com sucesso!',sceditorError:'<i class="fa fa-exclamation-circle"></i> O SCEditor não está disponível nessa página.',min:'<i class="fa fa-exclamation-circle"></i> Você deve postar uma mensagem com no mínimo 5 caracteres.',max:'<i class="fa fa-exclamation-circle"></i> Você deve postar uma mensagem com no máximo 25000 caracteres.',postAjax:'<i class="fa fa-exclamation-circle"></i> Não foi possível postar a sua mensagem, tendo em vista que um erro AJAX ocorreu.',getAjax:'<i class="fa fa-exclamation-circle"></i> A sua mensagem foi postada com sucesso, no entanto, não foi possível carregá-la aqui.'};window.FA=window.FA||{};window.FA.Ajax=window.FA.Ajax||{};var Post;window.FA.Ajax.Post=Post=function(userConfig){var self=this;self.defaults={loading:'Postando sua mensagem...',success:'Mensagem postada com sucesso!',sceditorError:'O SCEditor não está disponível nessa página.',min:'Você deve postar uma mensagem com no mínimo 5 caracteres.',max:'Você deve postar uma mensagem com no máximo 25000 caracteres.',postAjax:'Não foi possível postar a sua mensagem, tendo em vista que um erro AJAX ocorreu.',getAjax:'A sua mensagem foi postada com sucesso, no entanto, não foi possível carregá-la aqui.'};self.config=$.extend({},self.defaults,userConfig)};Post.prototype.init=function(){var self=this;if(!self.isTopic()){return}self.styles();self.$form=$('#quick_reply');var $div=$(['<fieldset class="fa-posting-options">',' <label>',' <input type="checkbox" name="disable_bbcode" id="fa-disable_bbcode" class="fa-custom-input" />',' <span>Desabilitar o BBCode</span>',' </label>',' <label>',' <input type="checkbox" name="disable_smilies" id="fa-disable_smilies" class="fa-custom-input" />',' <span>Desabilitar os Smileys</span>',' </label>',' <label class="fa-only-mod">',' <input type="checkbox" name="attach_sig" id="fa-attach_sig" checked="checked" class="fa-custom-input" />',' <span>Anexar assinatura</span>',' </label>',' <label>',' <input type="checkbox" name="notify" id="fa-notify" checked="checked" class="fa-custom-input" />',' <span>Notificar respostas</span>',' </label>','</fieldset>'].join('\n')).hide().css('padding','15px').css('margin','10px 0').insertAfter(self.$form.find('input[type="submit"][name="post"]'));var newstat=my_getcookie("nstatus")==="true";$('#fa-notify').prop('checked',newstat);$('#fa-notify').change(function(){var notif=$(this).is(':checked');my_setcookie('nstatus',notif)});$div.find('label').each(function(){var $this=$(this);if(_userdata.user_level===1||_userdata.user_level===2)return;if($this.is('.fa-only-mod'))$this.remove()});$('<button>',{'class':'button2','text':'Opções de postagem','type':'button'}).insertBefore($div).on('click',function(event){event.preventDefault();$div.stop().slideToggle(250)});self.$form.find('input[type="submit"][name="post"]').on('click',function(event){event.preventDefault();var $link=$(this);var data=self.getData();if(!data.status){self.alert(data.response,'error');return}if($link.is('.is-disabled')){return}$link.addClass('is-disabled').prop('disabled',true);self.alert(self.config.loading,'info');self.post(data,function(err){if(err){self.alert(err,'error');return}self.get(function(err,post){if(err){self.alert(err,'error');return}self.alert(self.config.success,'success');self.removeValue();self.border();$link.removeClass('is-disabled').prop('disabled',false);var $img=$('.post:last').find('.topic-title > img');$('.post').not(':last').each(function(){var $this=$(this);$this.find('.topic-title > img').attr('src',$img.attr('src'))})})})})};Post.prototype.isTopic=function(){return/^\/t(\d+)(p\d+-|-).*$/i.test(location.pathname)};Post.prototype.getData=function(){var self=this;if(!$.sceditor){return{status:false,response:self.config.sceditorError}}var $sceditor=$('#text_editor_textarea').sceditor('instance');if($sceditor.val().length<5){return{status:false,response:self.config.min}}if($sceditor.val().length>25000){return{status:false,response:self.config.max}}var $tid=$('[name="tid"]');var $icon=self.$form.find('[name="post_icon"]');var val=$icon.serialize().replace(/^.*=(\d+)$/i,'$1');var data={t:location.pathname.replace(/^\/t(\d+)(p\d+-|-).*$/i,'$1'),message:$sceditor.val(),tid:$tid.val()||'',mode:'reply',status:true,post:1};self.$form.find('.fa-custom-input').each(function(){var $this=$(this);if(!$this.prop('checked'))return;if(!$this.attr('name'))return;data[$this.attr('name')]=1});if($icon.length!==0){if(val!==''){console.log('[FQR] Ícone encontrado e incluído.');data.post_icon=val}else{console.log('[FQR] Ícone encontrado e NÃO incluído.')}}else{console.log('[FQR] Não foi encontrado ícone.')}return data};Post.prototype.post=function(data,callback){var self=this;$.post('/post',data).done(function(){callback.apply(self)}).fail(function(){callback.apply(self,[self.config.postAjax])})};Post.prototype.get=function(callback){var self=this;var topic=location.pathname.replace(/^\/t(\d+)(p\d+-|-).*$/i,'$1');$.get('/viewtopic',{t:topic,view:'newest'}).done(function(context){var $post=$('.post:last',context);$post.hide().insertAfter('.post:last').slideDown();$('html, body').stop().animate({scrollTop:$post.offset().top-120});callback.apply(self)}).fail(function(){callback.apply(self,[self.config.getAjax])})};Post.prototype.border=function(){var $post=$('.post:last');var $user=$post.find('.postprofile strong > a > span[style]');if(!$user.length)return;if(!$user.css('color').length)return;$post.find('.inner').css('border-top-color',$user.css('color'))};Post.prototype.removeValue=function(){$('#text_editor_textarea').sceditor('instance').val('')};Post.prototype.alert=function(content,type){if(!type){type='success'}$('.fa-post-alert').remove();$('<div>',{'class':'fa-post-alert '+type,'html':content}).insertBefore('#textarea_content')};Post.prototype.styles=function(){$('<style>').text(['.fa-post-alert {',' width: 70%;',' margin: 10px auto 20px auto;',' background-color: #ddd;',' border: solid 1px #d0d0d0;',' color: #555;',' padding: 20px;',' border-radius: 3px;',' font-size: 13px;',' font-style: normal !important;',' box-sizing: border-box;','}','','.fa-post-alert.error {',' background-color: #ef3333;',' border-color: #ef3333;',' color: #fff;','}','','.fa-post-alert.success {',' background-color: #68b800;',' border-color: #68b800;',' color: #fff;','}','','.fa-post-alert.info {',' background-color: #39c;',' border-color: #39c;',' color: #fff;','}'].join('\n')).appendTo('head')};$(function(){if($("body#mpage-body-modern").length==1)return;(new window.FA.Ajax.Post(config)).init()})}(jQuery));
Re: Como colocar uma resposta ajax como forumeiros
Olá amigo! @white
Funcionou bem, tive que mudar o texto da minha tradução, mas de antemão, muito obrigado!
Resolvido
Funcionou bem, tive que mudar o texto da minha tradução, mas de antemão, muito obrigado!
Resolvido
Re: Como colocar uma resposta ajax como forumeiros
Tópico resolvidoMovido para "Questões resolvidas". |
Tópicos semelhantes
» Como colocar quote sem refresh via ajax
» Como colocar icones como os da forumeiros
» Como colocar melhor resposta
» Como colocar imagem na resposta rápida
» Como colocar neon na resposta do forum
» Como colocar icones como os da forumeiros
» Como colocar melhor resposta
» Como colocar imagem na resposta rápida
» Como colocar neon na resposta do forum
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos