Bot resolvido de novo
2 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
Bot resolvido de novo
Detalhes da questão
Endereço do fórum: http://peniel-ro.forumeiros.com
Versão do fórum: ModernBB
Descrição
Eu tinha pedido nesse tópico que ajudassem a consertar os botoes para aparecem, mas foi removido a opção que fazia aparecer tudo pra mod e só 1 pra conta normal, agora qualquer conta tem acesso aos botoes... Não era assim que eu queria.. ... Eu marquei como resolvido o outro topico mas tinha esquecido de testar com conta nao adm...
Os botoes estavam restringidos 99% só pra mostrar pros adm, e 1 só pra quem criou o topico, mas alguma configuração não está permitindo eles aparecerem pra adm e nem o unico botao pra membro, removendo tudo eles aparecem pra qler um, queria que funcionasse da forma correta
https://ajuda.forumeiros.com/t110935-ajeitar-os-botoes-de-resolvido
Re: Bot resolvido de novo
Olá novamente,
Troque o código por esse:
Vamos ver se resulta dessa vez.
Até mais!
Troque o código por esse:
- Código:
(function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
var $dropdown = $('<div>', {
'class': 'sceditor-dropdown sceditor-dropdown-moderacao',
})
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery)
Vamos ver se resulta dessa vez.
Até mais!
Re: Bot resolvido de novo
Oi amigo, continua na mesma.Ketholy escreveu:Olá novamente,
Troque o código por esse:
- Código:
(function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
var $dropdown = $('<div>', {
'class': 'sceditor-dropdown sceditor-dropdown-moderacao',
})
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery)
Vamos ver se resulta dessa vez.
Até mais!
Re: Bot resolvido de novo
Estranho eu testei e está privado para membros normais, o senhor aplico o código em como em todas as páginas? Lembre-se que os botões vão aparecer para qualquer um que tenha poderes moderativos, membros normais não conseguem visualizar. O senhor teria uma conta de teste para eu visualizar o que está ocorrendo?
Re: Bot resolvido de novo
Ketholy escreveu:Estranho eu testei e está privado para membros normais, o senhor aplico o código em como em todas as páginas? Lembre-se que os botões vão aparecer para qualquer um que tenha poderes moderativos, membros normais não conseguem visualizar. O senhor teria uma conta de teste para eu visualizar o que está ocorrendo?
Nas conf de icone de mensagem tem 1 pra membro, 1 pra adm e 7 pra mod, mas nenhum apareceu pra conta de teste e adm... Estava para topicos a js, mudei pra todas as paginas e mesmo assim nada...
Ai a conta teste.. Log: Luka Pw: teste123
Re: Bot resolvido de novo
Não consigo visualizar os ícones, o senhor tem certeza que os demais membros comuns consegui visualizar?
Última edição por Ketholy em 04.12.17 16:44, editado 1 vez(es)
Re: Bot resolvido de novo
Eu voltei o js do topico anterior, olha la http://peniel-ro.forumeiros.com/t3-suportetopico-de-teste ele aparece pra quem postou o topico, sendo q so o primeiro devia aparecer pra quem criasse, o restante pros mod/adm....Ketholy escreveu:Não consigo visualizar os ícones, o senhor tem certeza que os demais membros comuns consegui visualizar?
Re: Bot resolvido de novo
Troque o código por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Re: Bot resolvido de novo
nadaKetholy escreveu:Troque o código por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Re: Bot resolvido de novo
Perdão foi erro meu, troque por esse:
Caso não funcione troque novamente por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($)
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Caso não funcione troque novamente por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($) }
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Re: Bot resolvido de novo
Tá complicado rsrsKetholy escreveu:Perdão foi erro meu, troque por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($)
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Caso não funcione troque novamente por esse:
- Código:
if (_userdata["user_level"] == 1 || _userdata["user_level"] == 2) {
// (function ($) }
'use strict';
var config = [
{ name: 'Resolvido', id: 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id: 2, img: 'https://i.imgur.com/uerMgFY.png' },
{ name: 'Recusado', id: 3, img: 'https://i.imgur.com/jaVe8sF.png' },
{ name: 'Sem Resposta', id: 4, img: 'https://i.imgur.com/Y6EUpgX.png' },
{ name: 'Fechado', id: 5, img: 'https://i.imgur.com/nlQ6ScL.png' },
{ name: 'Em Análise', id: 6, img: 'https://i.imgur.com/mJClJod.png' },
{ name: 'Aprovado', id: 7, img: 'https://i.imgur.com/91D2JJM.png' },
{ name: 'Aguardando', id: 8, img: 'https://i.imgur.com/9SdXR6Z.png' },
{ name: 'Cancelado', id: 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif' },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Re: Bot resolvido de novo
Tenho uma solução mais fácil e muito mais ágil. Retire o código e crie os ícones em:
Basta o senhor criar o ícone e dá permissão para quem deve visualizar ou não.
Além de ser mais ágil o seu fórum não vai se poluir de tanto Script, e esse método é o mais recomendável.
Até mais!
Painel de controle>Visualização>Imagens e cores>Gestão das imagens>Modo avançado>ícones de mensagens
Basta o senhor criar o ícone e dá permissão para quem deve visualizar ou não.
Além de ser mais ágil o seu fórum não vai se poluir de tanto Script, e esse método é o mais recomendável.
Até mais!
Re: Bot resolvido de novo
Oi, o único problema, é que sempre vai precisar entrar no modo de edição de tópico pra ter acesso aos botões, e queria algo que não precisasse fazer isso, e que o membro podia utilizar o botão de resolvido ou algum outro conf. e aplicar no tópico, ou por aqui existe algo assim que funcione na minha versão? Pois tinha encontrado um que tinha "em curso" e "resolvido", mas ele não marcava, tava mais pra enfeite eheh... E como disse, aquele ultimo js do topico anterior funcionava 50% porém mostrava botões que eram pra mostrar somente pra mod/adm, ou seja dos 9 botoes, ele mostrava os 9 ao inves de 1 pros membros, e pra adm/mod mostrava os 9 como ja era de se esperar. E na versão original desse js ele só mostrava 3 botoes, independente seja pra mod/adm ou membro.Ketholy escreveu:Tenho uma solução mais fácil e muito mais ágil. Retire o código e crie os ícones em:Painel de controle>Visualização>Imagens e cores>Gestão das imagens>Modo avançado>ícones de mensagens
Basta o senhor criar o ícone e dá permissão para quem deve visualizar ou não.
Além de ser mais ágil o seu fórum não vai se poluir de tanto Script, e esse método é o mais recomendável.
Até mais!
Re: Bot resolvido de novo
Creio que agora vá funcionar:
Troque novamente o código por esse:
Até mais!
Troque novamente o código por esse:
- Código:
/*globals jQuery, FA, _userdata*/
/**
* Alterar o ícone do tópico com AJAX.
*
* @author lffg <https://github.com/lffg>
* @version 1.2
*/
(function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id : 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id : 2, img: 'https://i.imgur.com/uerMgFY.png', onlyForMod: true },
{ name: 'Recusado', id : 3, img: 'https://i.imgur.com/jaVe8sF.png', onlyForMod: true },
{ name: 'Sem Resposta', id : 4, img: 'https://i.imgur.com/Y6EUpgX.png', onlyForMod: true },
{ name: 'Fechado', id : 5, img: 'https://i.imgur.com/nlQ6ScL.png', onlyForMod: true },
{ name: 'Em Análise', id : 6, img: 'https://i.imgur.com/mJClJod.png', onlyForMod: true },
{ name: 'Aprovado', id : 7, img: 'https://i.imgur.com/91D2JJM.png', onlyForMod: true },
{ name: 'Aguardando', id : 8, img: 'https://i.imgur.com/9SdXR6Z.png', onlyForMod: true },
{ name: 'Cancelado', id : 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif', onlyForMod: true },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Até mais!
Re: Bot resolvido de novo
Master top, funcionou perfeitamente como eu queria, muito obrigadoKetholy escreveu:Creio que agora vá funcionar:
Troque novamente o código por esse:
- Código:
/*globals jQuery, FA, _userdata*/
/**
* Alterar o ícone do tópico com AJAX.
*
* @author lffg <https://github.com/lffg>
* @version 1.2
*/
(function ($) {
'use strict';
var config = [
{ name: 'Resolvido', id : 1, img: 'https://i.imgur.com/ttvUM89.png' },
{ name: 'Em curso', id : 2, img: 'https://i.imgur.com/uerMgFY.png', onlyForMod: true },
{ name: 'Recusado', id : 3, img: 'https://i.imgur.com/jaVe8sF.png', onlyForMod: true },
{ name: 'Sem Resposta', id : 4, img: 'https://i.imgur.com/Y6EUpgX.png', onlyForMod: true },
{ name: 'Fechado', id : 5, img: 'https://i.imgur.com/nlQ6ScL.png', onlyForMod: true },
{ name: 'Em Análise', id : 6, img: 'https://i.imgur.com/mJClJod.png', onlyForMod: true },
{ name: 'Aprovado', id : 7, img: 'https://i.imgur.com/91D2JJM.png', onlyForMod: true },
{ name: 'Aguardando', id : 8, img: 'https://i.imgur.com/9SdXR6Z.png', onlyForMod: true },
{ name: 'Cancelado', id : 9, img: 'https://2img.net/i/itest/smilies/default/default110.gif', onlyForMod: true },
];
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
};
self.config = $.extend({}, self.defaults, self.userConfig);
$.each(self.config, function (key, value) {
if (key === undefined) {
throw new Error ('Não foi especificado um: ' + key + ' para o script de botões.');
}
if (value === undefined) {
throw new Error ('Não foi especificado um valor: ' + value + ' para o script de botões.');
}
});
};
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;
}
self.messageLink = $link.attr('href');
self.$button = $('<button>', {
'class' : 'fa-mark-icon-button',
'data-id': self.config.id,
'html' : $('<img />', { 'src': self.config.img }).prop('outerHTML')
});
self.$button
.on('click', function (event) {
event.preventDefault();
self.runAjax();
})
.insertBefore($post)
;
self.appendStyles();
};
MarkIcon.prototype.runAjax = function () {
var self = this;
$.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)
.fail(self.error)
;
})
.fail(self.error)
;
};
MarkIcon.prototype.error = function () {
var self = this;
alert([
'Houve um erro ao marcar o tópico como "' + self.config.name + '".',
'Por favor, contate o suporte técnico.'
].join('\n'));
};
MarkIcon.prototype.appendStyles = function () {
$('<style>', {
'text': [
'.fa-mark-icon-button {',
' margin: 10px 0 10px 6px;',
' background-color: transparent;',
' border: none;',
'}'
].join('\n')
}).appendTo('head');
};
$(function () {
$.each(config, function () {
var self = this;
(new FA.Topic.MarkIcon(self)).init();
});
});
}(jQuery));
Até mais!
Re: Bot resolvido de novo
Disponha!
Questão marcada como Resolvida ou o Autor solicitou que ela fosse arquivada. Tópico marcado como Resolvido e movido para Questões resolvidas. |
Tópicos semelhantes
» [Resolvido] [Resolvido] [Resolvido] Tira o Forum gratis : antes do titulo
» [Resolvido] [Resolvido] Como colocar barrinhas/ranks para indicar o número de posts
» [Resolvido] Denunciei um fórum (um tópico, na verdade), mas o problema já foi resolvido.
» [Resolvido] Como colocar um Botão Resolvido no meu Forum
» [Resolvido][Códigos] Sistema de Link + Botão resolvido
» [Resolvido] [Resolvido] Como colocar barrinhas/ranks para indicar o número de posts
» [Resolvido] Denunciei um fórum (um tópico, na verdade), mas o problema já foi resolvido.
» [Resolvido] Como colocar um Botão Resolvido no meu Forum
» [Resolvido][Códigos] Sistema de Link + Botão resolvido
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