Restringir permissões de tag apenas para staff

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

Atendido / Resolvido Restringir permissões de tag apenas para staff

Mensagem por Jhonny_. em Dom 14 Out 2018 - 2:38

Detalhes da questão


Endereço do fórum: http://bplgames.forumeiros.com/forum
Versão do fórum: ModernBB

Descrição


Olá, utilizei este código em meu javascript para a colocação de tags nos tópicos, queria saber se tem como colocar permissão só pra staff colocar este botão na hora de criar tópico.

Código:
/**
 *! Criar tags no título dos tópicos com painel de seleção.
 *
 *  @author Luiz~
 *  @see <a href="http://ajuda.forumeiros.com">Fórum dos Fóruns</a>
 *  @licence MIT
 */
(function ($) {
  'use strict';
 
  var tags = [
    {
      tag: 'imagem',
      background: '#666'
    },
    {
      tag: 'widget',
      background: '#000'
    }
  ];
 
  $(function () {
    var counter = 1;
 
    /**
    * Parte 1.
    * Aqui nós criamos o seletor de tags acima do editor:
    */
    if (location.pathname === '/post' && $('form input[name="subject"]').length > 0) {
      // Criar a zona para colocar-se os inputs:
      var $textarea = $('#textarea_content');
      var $title = $('form [name="subject"]');
      var $zone = $([
        '<div class="fa-icon-selector">',
        '  <div class="fa-icon-selector-inner">',
        '  </div>',
        '</div>',
      ].join('\n'))
        .prependTo($textarea)
      ;
 
      // Criar-se os inputs dentro da zona criada anteriormente:
      var $appendZone = $zone.find('.fa-icon-selector-inner');
      $.each(tags, function (index, tag) {
        $([
          '<div class="fa-tag-form-group">',
          '  <input type="radio" class="select-tag-input" name="select-tag-radio" id="tag-input-' + counter + '" data-tag="' + tag.tag + '" />',
          '  <label for="tag-input-' + counter + '" class="fa-tag-label">' + tag.tag + '</label>',
          '</div>',
        ].join('\n'))
          .appendTo($appendZone)
        ;
      
        counter++;
      });
 
      // Função para dar focus num input X caso este seja a tag dum tópico X:
      if (/^\[.*\]/gi.test($title.val())) {
        $title.val().replace(/^\[(.*)\]/gi, function (find, match) {
          $('[data-tag="' + match + '"]').prop('checked', true);
        });
      }
 
      // Trigger para a adição/edição do prefixo no input de título:
      $zone
        .find('input.select-tag-input')
          .on('focus', function () {
            setPrefix($(this).attr('data-tag'));
          })
      ;
 
      // Função para setar/editar o prefixo:
      var setPrefix = function (prefix) {
 
        if (/^\[.*\]/gi.test($title.val())) {
          $title.val($title.val().replace(/^\[.*\]/gi, function () {
            return '[' + prefix + ']';
          }));
        
          return;
        }
      
        $title.val('[' + prefix + '] ' + $title.val().trim());
      };
    }
 
    /**
    * Parte 2.
    * Aqui nós iremos substituir a tag entre os colchetes por uma tag real:
    */
    var $link = $('a[href^="/t"]');
    $link.each(function () {
 
      var $this = $(this);
 
      $.each(tags, function (index, tag) {
        var regex = new RegExp ('\\[' + tag.tag + '\\]', 'gim');
        var text = $this.text();
 
        if (!regex.test(text)) {
          return;
        }
 
        $this.addClass('fa-tagged-link');
        $this.text(text.trim().replace(regex, ''));
        $this.prepend('<span class="fa-topic-tag" style="background-color: ' + tag.background + ';">' + tag.tag + '</span>');
      });
    });
 
    /**
    * Parte 3:
    * Estilos.
    */
    var styles = [
      '.fa-icon-selector-inner strong {',
      '  display: block;',
      '  margin-bottom: 4px;',
      '  font-weight: bold;',
      '}',
      '',
      '.fa-icon-selector .fa-tag-form-group {',
      '  display: inline-block;',
      '  margin-right: 15px;',
      '  margin-top: 4px;',
      '}',
      '',
      '.fa-tagged-link {',
      '  text-decoration: none !important;',
      '}',
      '',
      '.fa-tagged-link:hover {',
      '  color: #f73 !important;',
      '  text-decoration: none !important;',
      '}',
      '',
      'span.fa-topic-tag {',
      '  color: #fff;',
      '  background-color: #39c;',
      '  padding: 1px 5px;',
      '  border-radius: 3px;',
      '  margin-right: 4px;',
      '  display: inline;',
      '  text-decoration: none!important',
      '}'
    ].join('\n');
 
    $(['<style type="text/css">', styles, '</style>'].join('\n')).appendTo('head');
  
  });
}(jQuery));
avatar

Jhonny_.
Nível 6

Masculino
Inscrito dia : 04/09/2018
Mensagens : 67
Pontos Ativos : 113

Ver perfil do usuário http://ebrgames.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por RafaelS. em Dom 14 Out 2018 - 3:01

Olá!

Troque por este:
Código:
/**
 *! Criar tags no título dos tópicos com painel de seleção.
 *
 *  @author Luiz~
 *  @see <a href="http://ajuda.forumeiros.com">Fórum dos Fóruns</a>
 *  @licence MIT
 */
(function ($) {
  'use strict';

if(_userdata.user_level < 1) return;
 
  var tags = [
    {
      tag: 'imagem',
      background: '#666'
    },
    {
      tag: 'widget',
      background: '#000'
    }
  ];
 
  $(function () {
    var counter = 1;
 
    /**
    * Parte 1.
    * Aqui nós criamos o seletor de tags acima do editor:
    */
    if (location.pathname === '/post' && $('form input[name="subject"]').length > 0) {
      // Criar a zona para colocar-se os inputs:
      var $textarea = $('#textarea_content');
      var $title = $('form [name="subject"]');
      var $zone = $([
        '<div class="fa-icon-selector">',
        '  <div class="fa-icon-selector-inner">',
        '  </div>',
        '</div>',
      ].join('\n'))
        .prependTo($textarea)
      ;
 
      // Criar-se os inputs dentro da zona criada anteriormente:
      var $appendZone = $zone.find('.fa-icon-selector-inner');
      $.each(tags, function (index, tag) {
        $([
          '<div class="fa-tag-form-group">',
          '  <input type="radio" class="select-tag-input" name="select-tag-radio" id="tag-input-' + counter + '" data-tag="' + tag.tag + '" />',
          '  <label for="tag-input-' + counter + '" class="fa-tag-label">' + tag.tag + '</label>',
          '</div>',
        ].join('\n'))
          .appendTo($appendZone)
        ;
   
        counter++;
      });
 
      // Função para dar focus num input X caso este seja a tag dum tópico X:
      if (/^\[.*\]/gi.test($title.val())) {
        $title.val().replace(/^\[(.*)\]/gi, function (find, match) {
          $('[data-tag="' + match + '"]').prop('checked', true);
        });
      }
 
      // Trigger para a adição/edição do prefixo no input de título:
      $zone
        .find('input.select-tag-input')
          .on('focus', function () {
            setPrefix($(this).attr('data-tag'));
          })
      ;
 
      // Função para setar/editar o prefixo:
      var setPrefix = function (prefix) {
 
        if (/^\[.*\]/gi.test($title.val())) {
          $title.val($title.val().replace(/^\[.*\]/gi, function () {
            return '[' + prefix + ']';
          }));
     
          return;
        }
   
        $title.val('[' + prefix + '] ' + $title.val().trim());
      };
    }
 
    /**
    * Parte 2.
    * Aqui nós iremos substituir a tag entre os colchetes por uma tag real:
    */
    var $link = $('a[href^="/t"]');
    $link.each(function () {
 
      var $this = $(this);
 
      $.each(tags, function (index, tag) {
        var regex = new RegExp ('\\[' + tag.tag + '\\]', 'gim');
        var text = $this.text();
 
        if (!regex.test(text)) {
          return;
        }
 
        $this.addClass('fa-tagged-link');
        $this.text(text.trim().replace(regex, ''));
        $this.prepend('<span class="fa-topic-tag" style="background-color: ' + tag.background + ';">' + tag.tag + '</span>');
      });
    });
 
    /**
    * Parte 3:
    * Estilos.
    */
    var styles = [
      '.fa-icon-selector-inner strong {',
      '  display: block;',
      '  margin-bottom: 4px;',
      '  font-weight: bold;',
      '}',
      '',
      '.fa-icon-selector .fa-tag-form-group {',
      '  display: inline-block;',
      '  margin-right: 15px;',
      '  margin-top: 4px;',
      '}',
      '',
      '.fa-tagged-link {',
      '  text-decoration: none !important;',
      '}',
      '',
      '.fa-tagged-link:hover {',
      '  color: #f73 !important;',
      '  text-decoration: none !important;',
      '}',
      '',
      'span.fa-topic-tag {',
      '  color: #fff;',
      '  background-color: #39c;',
      '  padding: 1px 5px;',
      '  border-radius: 3px;',
      '  margin-right: 4px;',
      '  display: inline;',
      '  text-decoration: none!important',
      '}'
    ].join('\n');
 
    $(['<style type="text/css">', styles, '</style>'].join('\n')).appendTo('head');
 
  });
}(jQuery));

Cumps. Feliz

Tópico movido de 'Outras questões' para 'Questões sobre códigos'




Eu sou o RafaelS.,
Eu aconselho-lhe ler os seguintes tópicos:

Flecha ajudeiros Para evitar ser punido é importante que leia  o regulamento geral do Fórum dos fóruns.
Flecha ajudeiros Antes de criar o seu pedido de suporte certifique-se de ler o regulamento da seção de suporte.
Flecha ajudeiros Quando for criar o seu tópico tente ser o mais específico possível, para que nós possámos entender!

"Suba na vida, mas não faça de seus amigos os degraus de sua escada, vença pela sua capacidade sempre com Honestidade,Caráter e Amor!"

avatar

RafaelS.
Ajudeiro
Ajudeiro

Masculino
Inscrito dia : 26/04/2014
Mensagens : 3915
Pontos Ativos : 4940

Ver perfil do usuário http://techmais.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por Jhonny_. em Dom 14 Out 2018 - 4:05

Coloquei deu certo só que não ficou com a tag que tinha antes!

Tag
avatar

Jhonny_.
Nível 6

Masculino
Inscrito dia : 04/09/2018
Mensagens : 67
Pontos Ativos : 113

Ver perfil do usuário http://ebrgames.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por RafaelS. em Dom 14 Out 2018 - 10:21

Qual tag tinha antes?
Está se referindo ao Leia com frequência?

Cumps.




Eu sou o RafaelS.,
Eu aconselho-lhe ler os seguintes tópicos:

Flecha ajudeiros Para evitar ser punido é importante que leia  o regulamento geral do Fórum dos fóruns.
Flecha ajudeiros Antes de criar o seu pedido de suporte certifique-se de ler o regulamento da seção de suporte.
Flecha ajudeiros Quando for criar o seu tópico tente ser o mais específico possível, para que nós possámos entender!

"Suba na vida, mas não faça de seus amigos os degraus de sua escada, vença pela sua capacidade sempre com Honestidade,Caráter e Amor!"

avatar

RafaelS.
Ajudeiro
Ajudeiro

Masculino
Inscrito dia : 26/04/2014
Mensagens : 3915
Pontos Ativos : 4940

Ver perfil do usuário http://techmais.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por Jhonny_. em Dom 14 Out 2018 - 16:33

Não, é aquela tag onde está a ultima mensagem do fórum escrito "Importante" em vermelho, está na print.
avatar

Jhonny_.
Nível 6

Masculino
Inscrito dia : 04/09/2018
Mensagens : 67
Pontos Ativos : 113

Ver perfil do usuário http://ebrgames.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por Pedxz em Dom 14 Out 2018 - 17:56

Olá @Jhonny_.,
Mude o código passado pelo meu colega Rafa, para:
Código:
/**
 *! Criar tags no título dos tópicos com painel de seleção.
 *
 *  @author Luiz~
 *  @see <a href="http://ajuda.forumeiros.com">Fórum dos Fóruns</a>
 *  @licence MIT
 */
(function ($) {
  'use strict';
 
  var tags = [
    {
      tag: 'important',
      background: 'red'
    },
    {
      tag: 'widget',
      background: '#000'
    }
  ];
 
  $(function () {
    var counter = 1;
 
    if(_userdata.user_level < 1) return;

    /**
    * Parte 1.
    * Aqui nós criamos o seletor de tags acima do editor:
    */
    if (location.pathname === '/post' && $('form input[name="subject"]').length > 0) {
      // Criar a zona para colocar-se os inputs:
      var $textarea = $('#textarea_content');
      var $title = $('form [name="subject"]');
      var $zone = $([
        '<div class="fa-icon-selector">',
        '  <div class="fa-icon-selector-inner">',
        '  </div>',
        '</div>',
      ].join('\n'))
        .prependTo($textarea)
      ;
 
      // Criar-se os inputs dentro da zona criada anteriormente:
      var $appendZone = $zone.find('.fa-icon-selector-inner');
      $.each(tags, function (index, tag) {
        $([
          '<div class="fa-tag-form-group">',
          '  <input type="radio" class="select-tag-input" name="select-tag-radio" id="tag-input-' + counter + '" data-tag="' + tag.tag + '" />',
          '  <label for="tag-input-' + counter + '" class="fa-tag-label">' + tag.tag + '</label>',
          '</div>',
        ].join('\n'))
          .appendTo($appendZone)
        ;
      
        counter++;
      });
 
      // Função para dar focus num input X caso este seja a tag dum tópico X:
      if (/^\[.*\]/gi.test($title.val())) {
        $title.val().replace(/^\[(.*)\]/gi, function (find, match) {
          $('[data-tag="' + match + '"]').prop('checked', true);
        });
      }
 
      // Trigger para a adição/edição do prefixo no input de título:
      $zone
        .find('input.select-tag-input')
          .on('focus', function () {
            setPrefix($(this).attr('data-tag'));
          })
      ;
 
      // Função para setar/editar o prefixo:
      var setPrefix = function (prefix) {
 
        if (/^\[.*\]/gi.test($title.val())) {
          $title.val($title.val().replace(/^\[.*\]/gi, function () {
            return '[' + prefix + ']';
          }));
        
          return;
        }
      
        $title.val('[' + prefix + '] ' + $title.val().trim());
      };
    }
 
    /**
    * Parte 2.
    * Aqui nós iremos substituir a tag entre os colchetes por uma tag real:
    */
    var $link = $('a[href^="/t"]');
    $link.each(function () {
 
      var $this = $(this);
 
      $.each(tags, function (index, tag) {
        var regex = new RegExp ('\\[' + tag.tag + '\\]', 'gim');
        var text = $this.text();
 
        if (!regex.test(text)) {
          return;
        }
 
        $this.addClass('fa-tagged-link');
        $this.text(text.trim().replace(regex, ''));
        $this.prepend('<span class="fa-topic-tag" style="background-color: ' + tag.background + ';">' + tag.tag + '</span>');
      });
    });
 
    /**
    * Parte 3:
    * Estilos.
    */
    var styles = [
      '.fa-icon-selector-inner strong {',
      '  display: block;',
      '  margin-bottom: 4px;',
      '  font-weight: bold;',
      '}',
      '',
      '.fa-icon-selector .fa-tag-form-group {',
      '  display: inline-block;',
      '  margin-right: 15px;',
      '  margin-top: 4px;',
      '}',
      '',
      '.fa-tagged-link {',
      '  text-decoration: none !important;',
      '}',
      '',
      '.fa-tagged-link:hover {',
      '  color: #f73 !important;',
      '  text-decoration: none !important;',
      '}',
      '',
      'span.fa-topic-tag {',
      '  color: #fff;',
      '  background-color: #39c;',
      '  padding: 1px 5px;',
      '  border-radius: 3px;',
      '  margin-right: 4px;',
      '  display: inline;',
      '  text-decoration: none!important',
      '}'
    ].join('\n');
 
    $(['<style type="text/css">', styles, '</style>'].join('\n')).appendTo('head');
  
  });
}(jQuery));


Cordialmente,
pedxz.


Fórum dos Fóruns
Fórum de suporte Forumeiros
Leia as Regras do Fórum dos Fóruns.
Alguns setores possuem regras específicas.
Verifique se sua questão já não foi respondida.
Pedxz - Ajudeiro Voluntário  2007 Forumeiros

avatar

Pedxz
Ajudeiro
Ajudeiro

Masculino
Inscrito dia : 13/01/2017
Mensagens : 1784
Pontos Ativos : 2299

Ver perfil do usuário https://ajuda.forumeiros.com

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por Jhonny_. em Dom 14 Out 2018 - 19:38

Pode fechar Deu certo
avatar

Jhonny_.
Nível 6

Masculino
Inscrito dia : 04/09/2018
Mensagens : 67
Pontos Ativos : 113

Ver perfil do usuário http://ebrgames.forumeiros.com/

Atendido / Resolvido Re: Restringir permissões de tag apenas para staff

Mensagem por Pedxz em Dom 14 Out 2018 - 20:22

Tópico resolvido


Movido para "Questões resolvidas".


Fórum dos Fóruns
Fórum de suporte Forumeiros
Leia as Regras do Fórum dos Fóruns.
Alguns setores possuem regras específicas.
Verifique se sua questão já não foi respondida.
Pedxz - Ajudeiro Voluntário  2007 Forumeiros

avatar

Pedxz
Ajudeiro
Ajudeiro

Masculino
Inscrito dia : 13/01/2017
Mensagens : 1784
Pontos Ativos : 2299

Ver perfil do usuário https://ajuda.forumeiros.com

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


Permissão deste fórum:
Você não pode responder aos tópicos neste fórum