Ajuste em escolher fóruns para funcionamento do js

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

Atendido / Resolvido Ajuste em escolher fóruns para funcionamento do js

Mensagem por Connor R. em 21.07.18 15:41

Detalhes da questão


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

Descrição


Olá, fui ajudado no tópico abaixo
Link: https://ajuda.forumeiros.com/t112505-escolher-foruns-para-funcionamento-de-codigo-js
Porém esta acontecendo algo, pois quando coloco para apenas aparecer no fórum 7, aparece também nos fóruns 71, 72, 73, 74, 75, 76 etc.
Connor R.

Connor R.
Membro do Fórum

Masculino
Inscrito dia : 06/08/2012
Mensagens : 1041
Pontos Ativos : 1685

Ver perfil do usuário http://somosmugiwara.forumeiros.com https://www.facebook.com/kadandajr https://twitter.com/SomosMugiwara

Atendido / Resolvido Re: Ajuste em escolher fóruns para funcionamento do js

Mensagem por RafaelS. em 21.07.18 15:43

Olá!

Isto deve resolver:

Código:
/*globals jQuery, FA, _userdata*/
        
        /**
         * Change the topic icon with AJAX and JavaScript.
         *
         * @author Luiz
        *
        * Modified by RafaelS. to add buttons to specific forums
        * https://ajuda.forumeiros.com/u54277
        *
         * @version 1.2
         * @licence MIT
         */
        
        (function ($) {
          'use strict';
        
          var config = [
            { name: 'Solved', id  : 4, background: '#8b5', onlyForMod: true, forum: 9 },
            { name: 'In Progress', id  : 1, background: '#ebb537', forum: 7},
            { name: 'Important', id: 5, background: '#e3493b', onlyForAdmin: true, forum: 76 }
          ];
        
          window.FA = window.FA || {};
          FA.Topic = FA.Topic || {};
        
          var MarkIcon;
          FA.Topic.MarkIcon = MarkIcon = function (config) {
            var self = this;
        
            self.userConfig = config;
            self.defaults = {
              name: undefined,
              id: undefined,
              background: undefined,
              onlyForMod: false,
              onlyForAdmin: false,
              forum: undefined,
            };
          
            self.config = $.extend({}, self.defaults, self.userConfig);
        
            $.each(self.config, function (key, value) {
              if (key === undefined) {
                throw new Error ('[Topic Icons] The ' + key + ' key was not specified in the script config.');
              }
        
              if (value === undefined) {
                throw new Error ('[Topic Icons] The ' + value + ' value was not specified in the settings.');
              }
            });
          };
        
          MarkIcon.prototype.init = function () {
            var self = this;
        
            var $post = $('.post:first');
            var $link = $post.find('a[href$="mode=editpost"]');
        
            if (!$link.length) {
              return false;
            }
        
            if (this.config.onlyForMod && (_userdata.user_level !== 1 && _userdata.user_level !== 2)) {
              return false;
            }
        
            if (this.config.onlyForAdmin && _userdata.user_level !== 1) {
              return false;
            }
            var atual = $('.sub-header-path a:last').attr("href");
            console.log("Forum detection by RafaelS.");
            if (atual.indexOf("f"+this.config.forum+"-") < 0) {
              console.log("O ícone "+this-config.name+" não está disponível no fórum: "+ atual);
              return false;
            }
        
            self.messageLink = $link.attr('href');
        
            self.$button = $('<button>', {
              'class'  : 'fa-mark-icon-button',
              'data-id': self.config.id,
              'text'  : self.config.name
            });
        
            self.$button
              .css('background-color', self.config.background)
              .on('click', function (event) {
                event.preventDefault();
        
                self.runAjax();
              })
              .insertBefore($post)
            ;
        
            self.appendStyles();
          };
        
          MarkIcon.prototype.runAjax = function () {
            var self = this;
        
            self.changeText('<i class="fa fa-refresh fa-spin"></i> Marking...');
        
            $.get(self.messageLink)
              .done(function (context) {
                var $form = $('form[action="/post"]', context);
        
                var encode  = document.charset.toLowerCase() === 'utf-8' ? window.encodeURIComponent : window.escape;
        
                var formData = $form.serializeArray();
        
                var data = {};
                $.each(formData, function () {
                  var obj = this;
        
                  data[obj.name] = obj.value;
                });
        
                data.post_icon = self.config.id;
                data.post = 1;
        
                var encoded = $.map(data, function (value, key) {
                  return key + '=' + encode(value);
                }).join('&');
        
                $.post(self.messageLink, encoded)
                  .done(self.changeText('<i class="fa fa-check"></i> Marked!'))
                  .fail(self.error)
                ;
              })
              .fail(self.error)
            ;
          };
        
          MarkIcon.prototype.changeText = function (text) {
            var self = this;
        
            self.runAjax = function () {
              return false;
            };
        
            self.$button
              .html(text)
              .prop('disabled', true)
            ;
          };
        
          MarkIcon.prototype.error = function () {
            alert([
              '[Topic Icons] AJAX Error.',
              'Refresh the page and try again.'
            ].join('\n'));
          };
        
          MarkIcon.prototype.appendStyles = function () {
            $('<style>', {
              'text': [
                '.fa-mark-icon-button {',
                '  padding: 8px 8px 8px 8px;',
                '  border: none;',
                '  color: #fff;',
                '  margin: 10px 0 10px 6px;',
                '  box-shadow: inset 0 0 0 3px rgba(0, 0, 0, 0.08);',
                '  border-radius: 3px;',
                '}'
              ].join('\n')
            }).appendTo('head');
          };
        
          $(function () {
            $.each(config, function () {
              var self = this;
        
              (new FA.Topic.MarkIcon(self)).init();
            });
          });
        }(jQuery));

Até mais. Feliz




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

Seta Para evitar ser punido é importante que leia  o regulamento geral do Fórum dos fóruns.
Seta Antes de criar o seu pedido de suporte certifique-se de ler o regulamento da seção de suporte.
Seta 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!"

Ajuste em escolher fóruns para funcionamento do js 2169
Ajuste em escolher fóruns para funcionamento do js 15074
RafaelS.

RafaelS.
Moderadeiro
Moderadeiro

Masculino
Inscrito dia : 26/04/2014
Mensagens : 4695
Pontos Ativos : 5747

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

Atendido / Resolvido Re: Ajuste em escolher fóruns para funcionamento do js

Mensagem por Connor R. em 21.07.18 16:07

Sim resolveu perfeitamente, muito obrigado cara.
Connor R.

Connor R.
Membro do Fórum

Masculino
Inscrito dia : 06/08/2012
Mensagens : 1041
Pontos Ativos : 1685

Ver perfil do usuário http://somosmugiwara.forumeiros.com https://www.facebook.com/kadandajr https://twitter.com/SomosMugiwara

Atendido / Resolvido Re: Ajuste em escolher fóruns para funcionamento do js

Mensagem por RafaelS. em 21.07.18 16:07

Tópico resolvido


Movido para "Questões resolvidas".




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

Seta Para evitar ser punido é importante que leia  o regulamento geral do Fórum dos fóruns.
Seta Antes de criar o seu pedido de suporte certifique-se de ler o regulamento da seção de suporte.
Seta 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!"

Ajuste em escolher fóruns para funcionamento do js 2169
Ajuste em escolher fóruns para funcionamento do js 15074
RafaelS.

RafaelS.
Moderadeiro
Moderadeiro

Masculino
Inscrito dia : 26/04/2014
Mensagens : 4695
Pontos Ativos : 5747

Ver perfil do usuário http://techmais.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