WidGet Status
2 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre HTML e BBCode
Página 1 de 1 • Compartilhe
WidGet Status
Detalhes da questão
Endereço do fórum: perfectshot-rpg.forumeiros.com
Versão do fórum: PunBB
Descrição
estou com esse widget no meu forum
http://prntscr.com/9y3xf4
e só eu posso atualizar status nele!! nao teria como configurar ele para que qualquer pessoa possa usar ele!!?
- Código:
<ul id="recent_status">
Carregando...
</ul><a href="javascript:void(0)" onclick="atualizarStatus()" class="atualiza_status">Atualizar Status</a><script type="text/javascript">
jQuery(function() {
jQuery.ajax({
url: '/u1wall',
type: 'GET',
success: function(responseHtml)
{
var status = jQuery('li.clearfix:contains("status_update")', responseHtml).wrapAll('<div>').parent().html();
if(status) {
jQuery('#recent_status').each(function() {
jQuery(this).html(status);
jQuery(this).html(
jQuery(this).html()
.replace(/\ - status_update/g,'')
).find('ul.message-footer, .message-header img, .message-header em').remove();
});
} else {
jQuery('#recent_status').html('Não há status atualizado recentemente');
}
},
error: function(err)
{
console.log("AJAX error in request (Recent status update: Loading messages)");
}
});
});
function atualizarStatus() {
var novoStatus = prompt("Digite o seu novo status:");
if(novoStatus === '') {
alert("Vazio");
} else if(novoStatus === null) {
return false;
} else {
var TID = jQuery('a[href*="tid="]').attr('href').split('tid=')[1].split('&')[0];
jQuery.post("/ajax_profile.forum?jsoncallback=?", {
id: -20,
user: _userdata.user_id,
active: "1",
content: '[["profile_field_2_-20", "' + novoStatus + '"]]',
tid: TID
}, function(data){/*Only for calback reasons!*/},
"json"
).done(function() {
jQuery.ajax({
url: '/u1wall',
type: 'GET',
success: function(responseHtml)
{
var matches = responseHtml.match(/\- (.*?)<\/title\>/);
var user = matches[1];
jQuery.post('/privmsg?mode=post_profile', {
message: novoStatus,
post: '1',
subject: 'status_update',
folder: 'profile',
username: user
}).done(function() {
alert("Status atualizado & salvo com sucesso!");
location.reload();
});
},
error: function(err)
{
console.log("AJAX error in request (Recent status update: Save in profile)");
}
});
}).fail(function() {
console.log("AJAX error in request (ajax_profile)");
});
// To fast return!!!
return false;
}
}
</script><style type="text/css">
.atualiza_status {
display: block;
margin-top: 8px;
text-align: center;
background-color: #f0f0f0;
padding: 6px;
border: 1px solid #e0e0e0;
}
#recent_status {padding-left: 0 !important;}
#recent_status li.clearfix {list-style-type: none;padding: 5px 0;}
#recent_status .avatar {
float: left;
-moz-border-radius: 0;
-moz-box-shadow: 0 2px 2px rgba(0,0,0,0.1);
-webkit-border-radius: 0;
-webkit-box-shadow: 0 2px 2px rgba(0,0,0,0.1);
background: #fff;
border: 1px solid #d5d5d5;
border-radius: 0;
box-shadow: 0 2px 2px rgba(0,0,0,0.1);
padding: 1px;
}
#recent_status .avatar, #recent_status .avatar img {
height: 30px;
width: 30px;
}
#recent_status .message-date {float: right;}
#recent_status .message-block {margin-left: 40px;}
</style>
Última edição por xBullet_Storm em 05.02.16 0:58, editado 1 vez(es)
Re: WidGet Status
Qualquer pessoa pode utilizar este widget... o problema é que em seu perfil está sem permissão para postagens de mensagens de perfil, impossibilitando assim, de serem gravadas os status que são atualizados!
Isto você irá configurar no seu próprio perfil, na aba "Preferências"!
@Edit:
Dei uma pequena alterada no código (Não interfere em nada do que eu digitei acima... faça tudo que foi dito):
Isto você irá configurar no seu próprio perfil, na aba "Preferências"!
@Edit:
Dei uma pequena alterada no código (Não interfere em nada do que eu digitei acima... faça tudo que foi dito):
- Código:
<div id="recent_status">Carregando...</div>
<script type="text/javascript">
jQuery(function() {
var el = jQuery('#recent_status');
var session = _userdata.session_logged_in;
var content = '';
if(session > 0) {
content = '<a href="javascript:void(0)" onclick="atualizarStatus()" class="atualiza_status">Atualizar Status</a>';
} else {
content = '<a href="/login" class="atualiza_status">Fazer login</a>';
}
jQuery.ajax({
url: '/u1wall',
type: 'GET',
success: function(responseHtml)
{
var status = jQuery('li.clearfix:contains("status_update")', responseHtml).wrapAll('<div>').parent().html();
if(status) {
content = '<ul>' + status + '</ul>' + content;
el.html(content).each(function() {
jQuery(this).html(
jQuery(this).html()
.replace(/\ - status_update/g,'')
).find('ul.message-footer, .message-header img, .message-header em').remove();
});return false;
}
content = 'Não há status atualizado recentemente' + content;
el.html(content);
},
error: function(err)
{
console.log("AJAX error in request (Recent status update: Loading messages)");
}
});
});
function atualizarStatus() {
var novoStatus = prompt("Digite o seu novo status:");
if(novoStatus === '') {
alert("Vazio");
} else if(novoStatus === null) {
return false;
} else {
var TID = jQuery('a[href*="tid="]').attr('href').split('tid=')[1].split('&')[0];
jQuery.post("/ajax_profile.forum?jsoncallback=?", {
id: -20,
user: _userdata.user_id,
active: "1",
content: '[["profile_field_2_-20", "' + novoStatus + '"]]',
tid: TID
}, function(data){/*Only for calback reasons!*/},
"json"
).done(function() {
jQuery.ajax({
url: '/u1wall',
type: 'GET',
success: function(responseHtml)
{
var matches = responseHtml.match(/\- (.*?)<\/title\>/);
var user = matches[1];
jQuery.post('/privmsg?mode=post_profile', {
message: novoStatus,
post: '1',
subject: 'status_update',
folder: 'profile',
username: user
}).done(function() {
alert("Status atualizado & salvo com sucesso!");
location.reload();
});
},
error: function(err)
{
console.log("AJAX error in request (Recent status update: Save in profile)");
}
});
}).fail(function() {
console.log("AJAX error in request (ajax_profile)");
});
// To fast return!!!
return false;
}
}
</script>
<style type="text/css">
.atualiza_status {
display: block;
margin-top: 8px;
text-align: center;
background-color: #f0f0f0;
padding: 6px;
border: 1px solid #e0e0e0;
}
#recent_status > ul {padding-left: 0 !important;}
#recent_status ul li.clearfix {list-style-type: none;padding: 5px 0;}
#recent_status .avatar {
float: left;
-moz-border-radius: 0;
-moz-box-shadow: 0 2px 2px rgba(0,0,0,0.1);
-webkit-border-radius: 0;
-webkit-box-shadow: 0 2px 2px rgba(0,0,0,0.1);
background: #fff;
border: 1px solid #d5d5d5;
border-radius: 0;
box-shadow: 0 2px 2px rgba(0,0,0,0.1);
padding: 1px;
}
#recent_status .avatar, #recent_status .avatar img {
height: 30px;
width: 30px;
}
#recent_status .message-date {float: right;}
#recent_status .message-block {margin-left: 40px;}
</style>
Tópicos semelhantes
» Widget de Status sem funcionamento
» Widget status sem efeito
» Sistema de status
» Widget de mudar status
» Problema em widget status
» Widget status sem efeito
» Sistema de status
» Widget de mudar status
» Problema em widget status
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre HTML e BBCode
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos