[Tutorial] Trocar titulo (pop-up nos tópicos)

Ver o tópico anterior Ver o tópico seguinte Ir para baixo

Zump
Administrador
Tempo Online : 33d 4h 43m 44s
Mensagens : 52
Reputação : 53

MensagemZump Qua Out 05, 2016 12:30 pm

Autor: Zump
Funcionalidade: Em todas as versões

Acesse:

Painel de Controle -> Modulos -> Html & Javascripts -> Gestão dos códigos Javascripts

Crie um novo javascript com investimento nos tópicos com esse código:

Código:
$(function() {
  var level = _userdata.user_level;
  if (level > 0) {
      if (window.location.href.search('/t') >= 0) {
        // MOD CP
        $('body').append(
            '<span class="mod_button" id="cdm" onclick="open_popup_moderation()">Moderação avançada</span>' +
            '<div id="moderation_tools" class="mod_tools"></div>'
        );
        $('#moderation_tools').append(
            '<div class="tools_inner">' +
            '  <div id="close_popup_moderation" onclick="close_popup_moderation()">x</div>' +
            '      <div class="tools_header">' +
            '      <h2>Mudar título do tópico</h2>' +
            '      </div>' +
            '      <div class="pbck">' +
            '      <label><b>Novo título</b></label>' +
            '      <input type="text" id="muda_titulo" name="muda_titulo" />' +
            '      <br>' +
            '      <input type="button" onclick="mudar()" id="mudar" value="Mudar">' +
            '      <input type="button" onclick="limpar()" id="limpa-editor" value="Limpar Caixa">' +
            '      <br>' +
            '      </div>' +
            '</div>'
        );
      }

      // MOVE TOPIC
      if (window.location.href.search('mode=move') >= 0) {
        var elsHtml = '<dl>' +
            '      <dt></dt>' +
            '      <dd>' +
            '        <label><input id="send_move_post" type="checkbox">Adicionar uma mensagem no tópico informando sobre esta ação?</label>' +
            '      </dd>' +
            '</dl>';
        jQuery(elsHtml).insertBefore('.frm-buttons');
        jQuery('input[name="confirm"]').on('click', function(d) {
            var verify = jQuery('[name="new_forum"]').val();
            if (verify.indexOf('f') >= 0) {
              if (jQuery('#send_move_post').is(':checked')) {
                  d.preventDefault();
                  var forum = jQuery('[name="f"]').val();
                  var topic = jQuery('[name="t"]').val();
                  var currentLocal = jQuery('a.nav[href^="/f"]:last').text();
                  var newLocal = jQuery('[name="new_forum"] option:selected').text().split('--').pop();
                  var TID = jQuery('a[href*="tid="]').attr('href').split('tid=')[1].split('&')[0];
                  var autoMsg = '[alerta="Mensagem automática"][/alerta]\n\n\n\nEste tópico foi movido de "[u]' + currentLocal + '[/u]" para "[u]' + newLocal + '[/u]".';
                  var more = prompt("Mensagem adicional (clique em cancelar caso não queira comentar algo)");
                  if (more) {
                    autoMsg = '[alerta="Mensagem automática"][/alerta]\n\n' + more + '\n\nEste tópico foi movido de "[u]' + currentLocal + '[/u]" para "[u]' + newLocal + '[/u]".';
                  }
                  jQuery.post('/modcp?tid=' + TID, {
                    'new_forum': verify,
                    'mode': 'move',
                    'f': forum,
                    't': topic,
                    'confirm': '1'
                  }).done(function(move) {
                    jQuery.post('/post?t=' + topic, {
                        'mode': 'reply',
                        'message': autoMsg,
                        'post': '1',
                        'attach_sig': '1'
                    }).done(function(send) {
                        location.href = jQuery(send).find('a[href^="/viewtopic"]').attr('href');
                    }).fail(function() {
                        alert("O tópico foi movido, mas ocorreu um erro ao tentar enviar o post");
                        location.href = jQuery(move).find('a[href^="/viewtopic"]').attr('href');
                    });
                  }).fail(function() {
                    alert("Um erro ocorreu ao tentar mover o tópico");
                    location.reload();
                  });
              }
            } else {
              d.preventDefault();
              alert("Selecione um fórum");
            }
        });
      }
  }
verificaPaginacao();
});

function open_popup_moderation() {
  var mod = $('#moderation_tools');
  if (mod.css('display') == 'none') {
      mod.css('display', 'block');
  }
}

function close_popup_moderation() {
  var mod = $('#moderation_tools');
  mod.css('display', 'none');
}

function verificaPaginacao() {
    var paging = $('.paging');
    if(paging.length) {
        var pagingHref = paging.find('a:contains("1")').attr('href');
        if(pagingHref) {
            $.get(pagingHref,  function(data) {
                var primeiroTopicoHref = $('.post:first', data).find('a[href*="editpost"]').attr('href');
                var setStorage = sessionStorage.setItem("href", primeiroTopicoHref);
            });
        }
    } else {
          sessionStorage.removeItem("href");
    }
}

function mudar() {
    var getStorage = sessionStorage.getItem("href");
    var titulo = $('#muda_titulo').val();
    var novo = '';
    var msg = '';
    var primeiroTopicoHref;
    if (titulo.length != 0 && titulo.length > 5) {
    novo = titulo;
        $('#mudar').attr('disabled', true);
        if(getStorage) {
            primeiroTopicoHref = getStorage;
        } else {
            primeiroTopicoHref = $('.post:first').find('a[href*="editpost"]').attr('href');
        }
        $.get(primeiroTopicoHref, function(data) {
                  msg = $('#text_editor_textarea', data).val();
                  $.post(primeiroTopicoHref, {
                        'subject': novo,
                  'message': msg,
              'post': '1',
              'attach_sig': '1'
                }, function(e) {
              location.href = $(e).find('a[href^="/viewtopic"]').attr('href');
          });
        });
    } else {
        alert("Informe um novo título de pelo menos 5 dígitos");
        return false;
    }
}

function limpar() {
  $('#muda_titulo').val('').focus();
}

Resultado:
[Tutorial] Trocar titulo (pop-up nos tópicos) 5c543387a1ce4ca78dddc81fa0b72496

Ver o tópico anterior Ver o tópico seguinte Ir para o topo

Cria uma conta ou logue para postar uma mensagem.

Você precisa ser um membro, para poder postar uma resposta.

Criar conta

Participe de nossa comunidade, basta se registrar. É Fácil!


Criar uma conta

Logar

Já tem uma conta? Sem problemas, Logue agora.


Logar-se

 
Permissões neste sub-fórum
Não podes responder a tópicos