Criação de um Menu para Denúncias

3 participantes

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

Tópico resolvido Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 11:44

Detalhes da questão


Endereço do fórum: https://redenoxus.forumeiros.com
Versão do fórum:ModernBB

Descrição:


Estou tentando desenvolver uma área para meu Fórum, para os usuários poderem denunciar players fazendo atos errados.Estou tentando colocar esse código (https://ajuda.forumeiros.com/t115402-adicionar-campos-na-criacao-de-um-topico), está mais ou menos funcionando, queria saber o que mudar para funcionar nas versões Mobile e no PC (ModernBB), (pois sei muito pouco sobre Javascript)


Última edição por Shznn_. em 03.05.23 13:06, editado 3 vez(es)
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 12:11

Olá @Shznn_.!

Olá! Seja bem-vindo(a) ao suporte Forumeiros!


Como acabou de inscrever-se, aqui estão alguns pontos importantes a saber:

Formulário incompleto


Para que possamos dar continuidade, você deve completar todos os campos do formulário. Queira editar a sua primeira mensagem e preencher os campos devidamente. Caso não seja modificado nos próximos dois dias, este será movido para lixeira.

Para mais informações, leia o regulamento do setor de suporte.

Tópico pendente.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Sleep 03.05.23 13:38

Olá @Shznn_.,

Vejo que já adaptou, verifique estes tópicos seguintes para o auxiliar, alguma ajuda adicional se necessário, peço que seja mais especifico, no que quer como tópico de campos:

Tópicos:
Tutorial fdf sobre os campos.
Questão resolvida
Questão resolvida 2
Questão resolvida 3

Cordialmente,
Sleep.
Sleep

Sleep
Ajudeiro
Ajudeiro

Membro desde : 10/08/2012
Mensagens : 1108
Pontos : 1341

https://ajuda.forumeiros.com/

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 15:38

Eu queria um código que pudesse criar um formulário tipo esse:
https://i.imgur.com/HZquxrn.png

Pois estou procurando algum código parecido, que tivesse compatibilidade com Versão Móvel e de PC (ModernBB)
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 15:47

Olá novamente!

Poderia, por gentileza, fornecer o código que está a utilizar atualmente?

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 17:48

@Fraise , Aqui está o código que está rodando no momento.

Não fiz nenhuma Modificação (pois não sei nada de Javascript), só copiei e colei de um tópico existente aqui no FdF


Código:
/*globals jQuery, FA*/
 
/**
 * Criar inputs na criação do tópico.
 *
 * @author lffg <https://github.com/lffg>
 * @version 1.0
 */
 
(function($) {
  'use strict';
 
  var inputs = [{
    label: 'Envolvidos:',
    placeholder: 'Nome dos jogadores envolvidos',
    insert: '[size=14][b][color=darkblue]Envolvidos:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [19, 20, 21, 22, 23, 24, 25]
  }, {
    label: 'Motivo:',
    placeholder: 'Qual o motivo da denúncia ?',
    insert: '[size=14][b][color=darkblue]Motivo:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [19, 20, 21, 22, 23, 24, 25]
  }, {
    label: 'Descrição:',
    placeholder: 'Descreva o ocorrido',
    insert: '[size=14][b][color=darkblue]Descrição:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [19, 20, 21, 22, 23, 24, 25]
  }, {
    label: 'Provas:',
    placeholder: 'ScreenShoots ou vídeos',
    insert: '[size=14][b][color=darkblue]Provas:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [19, 20, 21, 22, 23, 24, 25]
  }, {
    label: 'Tentou a resolver in-game:',
    placeholder: 'Sim/Não. Se sim, prove-o de contrário será considerado como não e poderá ser punido dependendo do motivo.',
    insert: '[b]Tentou a resolver in-game:[/b] {{CONTENT}}. \n\n',
    required: true,
    forums: [1]
  }];
 
  inputs.reverse();
 
  window.FA = window.FA || {};
  FA.Posting = FA.Posting || {};
 
  var Inputs;
  FA.Posting.Inputs = Inputs = function(userConfig) {
    var self = this;
 
    self.defaults = {
      label: undefined,
      placeholder: undefined,
      insert: undefined,
      forums: ['*'],
      required: false
    };
 
    self.userConfig = userConfig;
 
    self.config = $.extend({}, self.defaults, self.userConfig);
  };
 
  Inputs.prototype.init = function() {
    var self = this;
 
    if (!$.sceditor) {
      return false;
    }
 
    if (self.config.forums.indexOf('*') === -1) {
      var hrefId = parseInt(location.href.replace(/^.*\/post\?f=(\d+)&.*$/g, '$1'));
 
      if (self.config.forums.indexOf(hrefId) === -1) {
        return false;
      }
    }
 
    self.generate();
    self.listen(function() {
      self.parse();
    });
  };
 
  Inputs.prototype.generate = function() {
    var self = this;
 
    self.$wrapper = $([
      '<dl>',
      '  <dt>',
      '    ' + $('<label>', { 'text': self.config.label }).prop('outerHTML'),
      '  </dt>',
      '  <dd>',
      '    ' + $('<input />', { 'type': 'text' }).prop('outerHTML'),
      '  </dd>',
      '</dl>'
    ].join('\n'));
 
    self.$input = self.$wrapper.find('input');
 
    self.$input
      .attr('class', 'inputbox medium fa-generated-input')
      .attr('data-content', self.config.insert)
      .attr('placeholder', self.config.placeholder || '')
    ;
 
    if (self.config.required) {
      self.$input.attr('required', 'required');
    }
 
    $('input[name="subject"]')
      .parents('dl')
      .after(self.$wrapper)
    ;
  };
 
  Inputs.prototype.listen = function(fn) {
    var selectors = [
      '[required]',
      '[required="required"]',
      '[name="subject"]'
    ];
 
    $('[type="submit"]').on('click', function() {
      if ($(selectors.join(',')).val() === '') {
        return;
      }
 
      fn();
    });
  };
 
  Inputs.prototype.parse = function() {
    var self = this;
 
    var $sceditor = $('#text_editor_textarea').sceditor('instance');
 
    var content = self.config.insert;
    var value = $.trim(self.$input.val());
 
    content = content.replace(/{{CONTENT}}/gi, value);
 
    $sceditor.val(content + $sceditor.val());
  };
 
  $(function() {
    $.each(inputs, function() {
      var self = this;
 
      (new FA.Posting.Inputs(self)).init();
    });
  });
}(jQuery));


Última edição por Fraise em 03.05.23 19:02, editado 1 vez(es) (Motivo da edição : Adicionar o código entre as tags [code][/code])
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 19:09

Olá novamente!

O código apresentado encontra-se funcional na versão ModernBB.
Código:
/*globals jQuery, FA*/
 
/**
 * Criar inputs na criação do tópico.
 *
 * @author lffg <https://github.com/lffg>
 * @version 1.0
 */
 
(function($) {
  'use strict';
 
  var inputs = [{
    label: 'Envolvidos:',
    placeholder: 'Nome dos jogadores envolvidos',
    insert: '[size=14][b][color=darkblue]Envolvidos:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [3]
  }, {
    label: 'Motivo:',
    placeholder: 'Qual o motivo da denúncia ?',
    insert: '[size=14][b][color=darkblue]Motivo:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [3]
  }, {
    label: 'Descrição:',
    placeholder: 'Descreva o ocorrido',
    insert: '[size=14][b][color=darkblue]Descrição:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [3]
  }, {
    label: 'Provas:',
    placeholder: 'ScreenShoots ou vídeos',
    insert: '[size=14][b][color=darkblue]Provas:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [3]
  }, {
    label: 'Tentou a resolver in-game:',
    placeholder: 'Sim/Não. Se sim, prove-o de contrário será considerado como não e poderá ser punido dependendo do motivo.',
    insert: '[b]Tentou a resolver in-game:[/b] {{CONTENT}}. \n\n',
    required: true,
    forums: [3]
  }];
 
  inputs.reverse();
 
  window.FA = window.FA || {};
  FA.Posting = FA.Posting || {};
 
  var Inputs;
  FA.Posting.Inputs = Inputs = function(userConfig) {
    var self = this;
 
    self.defaults = {
      label: undefined,
      placeholder: undefined,
      insert: undefined,
      forums: ['*'],
      required: false
    };
 
    self.userConfig = userConfig;
 
    self.config = $.extend({}, self.defaults, self.userConfig);
  };
 
  Inputs.prototype.init = function() {
    var self = this;
 
    if (!$.sceditor) {
      return false;
    }
 
    if (self.config.forums.indexOf('*') === -1) {
      var hrefId = parseInt(location.href.replace(/^.*\/post\?f=(\d+)&.*$/g, '$1'));
 
      if (self.config.forums.indexOf(hrefId) === -1) {
        return false;
      }
    }
 
    self.generate();
    self.listen(function() {
      self.parse();
    });
  };
 
  Inputs.prototype.generate = function() {
    var self = this;
 
    self.$wrapper = $([
      '<dl>',
      '  <dt>',
      '    ' + $('<label>', { 'text': self.config.label }).prop('outerHTML'),
      '  </dt>',
      '  <dd>',
      '    ' + $('<input />', { 'type': 'text' }).prop('outerHTML'),
      '  </dd>',
      '</dl>'
    ].join('\n'));
 
    self.$input = self.$wrapper.find('input');
 
    self.$input
      .attr('class', 'inputbox medium fa-generated-input')
      .attr('data-content', self.config.insert)
      .attr('placeholder', self.config.placeholder || '')
    ;
 
    if (self.config.required) {
      self.$input.attr('required', 'required');
    }
 
    $('input[name="subject"]')
      .parents('dl')
      .after(self.$wrapper)
    ;
  };
 
  Inputs.prototype.listen = function(fn) {
    var selectors = [
      '[required]',
      '[required="required"]',
      '[name="subject"]'
    ];
 
    $('[type="submit"]').on('click', function() {
      if ($(selectors.join(',')).val() === '') {
        return;
      }
 
      fn();
    });
  };
 
  Inputs.prototype.parse = function() {
    var self = this;
 
    var $sceditor = $('#text_editor_textarea').sceditor('instance');
 
    var content = self.config.insert;
    var value = $.trim(self.$input.val());
 
    content = content.replace(/{{CONTENT}}/gi, value);
 
    $sceditor.val(content + $sceditor.val());
  };
 
  $(function() {
    $.each(inputs, function() {
      var self = this;
 
      (new FA.Posting.Inputs(self)).init();
    });
  });
}(jQuery));

Repare:
Código:
forums: [3]

Em cada input/campo, encontra-se o ID do subfórum em que o senhor deseja que o código seja aplicado. Neste caso está aplicado ao subfórum 3. É só modificar esse número.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 19:13

Ele se encontra funcional para a Versão MordernBB Móvel?
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 19:13

Olá novamente!

Correto.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 19:17

Como consigo saber o ID dos Fóruns/SubForuns?
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 19:35

Olá novamente!

Basta abrir o subfórum e verificar o seu número na barra de endereços, como por exemplo, o seu subfórum "Regras Gerais" tem o ID 1.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 19:43

Olá, estou ainda sem sucesso no módulo, pois não sei qual é o erro, alterei os valores para o ID 7 ( Denúncias ), e o mesmo ainda não funciona

https://i.imgur.com/bE2Ip46.png
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 19:53

Olá @Shznn_.!

Verifique se tem o JavaScript ativado em Painel administrativo Seta Módulos Seta HTML & JAVASCRIPT Seta Gestão dos códigos JavaScript, na opção "Habilitar o gerenciamento dos códigos JavaScript" verifique se a opção Sim se encontra selecionada e clique em salvar.

Caso não surta efeito, agradecia que me enviasse o código que editou.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 22:40

Já está habilitado!

Aqui está o código que está rodando no Módulo

Código:
/*globals jQuery, FA*/
 
/**
 * Criar inputs na criação do tópico.
 *
 * @author lffg <https://github.com/lffg>
 * @version 1.0
 */
 
(function($) {
  'use strict';
 
  var inputs = [{
    label: 'Envolvidos:',
    placeholder: 'Nome dos jogadores envolvidos',
    insert: '[size=14][b][color=darkblue]Envolvidos:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [7]
  }, {
    label: 'Motivo:',
    placeholder: 'Qual o motivo da denúncia ?',
    insert: '[size=14][b][color=darkblue]Motivo:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [7]
  }, {
    label: 'Descrição:',
    placeholder: 'Descreva o ocorrido',
    insert: '[size=14][b][color=darkblue]Descrição:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [7]
  }, {
    label: 'Provas:',
    placeholder: 'ScreenShoots ou vídeos',
    insert: '[size=14][b][color=darkblue]Provas:[/color][/b][/size] {{CONTENT}}. \n\n',
    required: true,
    forums: [7]
  }, {
    label: 'Tentou a resolver in-game:',
    placeholder: 'Sim/Não. Se sim, prove-o de contrário será considerado como não e poderá ser punido dependendo do motivo.',
    insert: '[b]Tentou a resolver in-game:[/b] {{CONTENT}}. \n\n',
    required: true,
    forums: [7]
  }];
 
  inputs.reverse();
 
  window.FA = window.FA || {};
  FA.Posting = FA.Posting || {};
 
  var Inputs;
  FA.Posting.Inputs = Inputs = function(userConfig) {
    var self = this;
 
    self.defaults = {
      label: undefined,
      placeholder: undefined,
      insert: undefined,
      forums: ['*'],
      required: false
    };
 
    self.userConfig = userConfig;
 
    self.config = $.extend({}, self.defaults, self.userConfig);
  };
 
  Inputs.prototype.init = function() {
    var self = this;
 
    if (!$.sceditor) {
      return false;
    }
 
    if (self.config.forums.indexOf('*') === -1) {
      var hrefId = parseInt(location.href.replace(/^.*\/post\?f=(\d+)&.*$/g, '$1'));
 
      if (self.config.forums.indexOf(hrefId) === -1) {
        return false;
      }
    }
 
    self.generate();
    self.listen(function() {
      self.parse();
    });
  };
 
  Inputs.prototype.generate = function() {
    var self = this;
 
    self.$wrapper = $([
      '<dl>',
      '  <dt>',
      '    ' + $('<label>', { 'text': self.config.label }).prop('outerHTML'),
      '  </dt>',
      '  <dd>',
      '    ' + $('<input />', { 'type': 'text' }).prop('outerHTML'),
      '  </dd>',
      '</dl>'
    ].join('\n'));
 
    self.$input = self.$wrapper.find('input');
 
    self.$input
      .attr('class', 'inputbox medium fa-generated-input')
      .attr('data-content', self.config.insert)
      .attr('placeholder', self.config.placeholder || '')
    ;
 
    if (self.config.required) {
      self.$input.attr('required', 'required');
    }
 
    $('input[name="subject"]')
      .parents('dl')
      .after(self.$wrapper)
    ;
  };
 
  Inputs.prototype.listen = function(fn) {
    var selectors = [
      '[required]',
      '[required="required"]',
      '[name="subject"]'
    ];
 
    $('[type="submit"]').on('click', function() {
      if ($(selectors.join(',')).val() === '') {
        return;
      }
 
      fn();
    });
  };
 
  Inputs.prototype.parse = function() {
    var self = this;
 
    var $sceditor = $('#text_editor_textarea').sceditor('instance');
 
    var content = self.config.insert;
    var value = $.trim(self.$input.val());
 
    content = content.replace(/{{CONTENT}}/gi, value);
 
    $sceditor.val(content + $sceditor.val());
  };
 
  $(function() {
    $.each(inputs, function() {
      var self = this;
 
      (new FA.Posting.Inputs(self)).init();
    });
  });
}(jQuery));
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 03.05.23 22:43

Olá,

Troque o investimento do JS para "em todas as páginas". Notei agora que tem o investimento marcado de forma incorreta.

Atennciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 03.05.23 22:45

Alterei, mas só aparece para a versão PC (ModernBB), não aparaceu nada na versão móvel..

Pergunta: é possível adicionar mais que um valor?

Código:
foruns [7,8,9]
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Fraise 06.05.23 10:47

Olá @Shznn_.!

Após alguns testes com o código, posso dizer que este código não está adaptado para versões móveis. Relativamente à sua questão sobre os valores, pode sim adicionar mais que um subfórum.

Atenciosamente,
Fraise.
Fraise

Fraise
Ajudeiro
Ajudeiro

Membro desde : 26/06/2015
Mensagens : 6561
Pontos : 8045

https://ajuda.forumeiros.com/ https://twitter.com/@FraiseFdF

Ir para o topo Ir para baixo

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Shznn_. 06.05.23 18:35

Obrigado pela Ajuda! Pode finalizar
Shznn_.

Shznn_.
Novo Membro

Membro desde : 03/05/2023
Mensagens : 11
Pontos : 15

https://google.com

Ir para o topo Ir para baixo

Ajudeiro

Tópico resolvido Re: Criação de um Menu para Denúncias

Mensagem por Sleep 07.05.23 11:13

Tópico resolvido


Movido para "Questões resolvidas".
Sleep

Sleep
Ajudeiro
Ajudeiro

Membro desde : 10/08/2012
Mensagens : 1108
Pontos : 1341

https://ajuda.forumeiros.com/

Ir para o topo Ir para baixo

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

- Tópicos semelhantes

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