Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Conhecendo e utilizando eventos sociais

...

Veja a seguir o vídeo How to demonstrando a utilização de eventos sociais.

Conector de Widget
width854
urlhttps://www.youtube.com/watch?v=6Rv9XiwdqS4&index=24
height480


Eventos Eventos

...

beforeSocialShare

Este evento é disparado sempre antes da efetivação do compartilhamento de um objeto social.

Informações
titleObservação

Pode-se alterar a mensagem de compartilhamento passando uma String para o método setText( <valor> ) do objeto "share".


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialShare(companyId, share){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
shareobjeto de socializaçãoSocialShareEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialShare(companyId, share){
  
  var lastUpd = share.getSociable().getLastUpdateDate().getTime();
  log.info("lastUpd: " + lastUpd);
  var daysAgo = new Date();
  daysAgo.setDate(daysAgo.getDate()-3);
  log.info("daysAgo: " + daysAgo);
 
  if (lastUpd < oneMonthAgo) {
    throw "You could not share old socials (more than 3 days old)";
  }
}


afterSocialShare

Esse evento é disparado sempre após a efetivação de um compartilhamento.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialShare(companyId, share){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
shareobjeto de socializaçãoSocialShareEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialShare(companyId, share){
  log.info(share.getUser() + " has shared the sociable " + share.getSociable().getId() + " with text " + share.getText());
}


beforeSocialComment

Esse evento é disparado sempre antes da efetivação de um comentário.

...

Informações
titleObservação

Pode-se alterar a mensagem de compartilhamento passando uma String para o método setText( <valor> ) do objeto "comment".


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialComment(companyId, comment){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
commentobjeto de comentárioSocialCommentEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialComment(companyId, comment){
  if (comment.getSociable().getNumberLikes() < 1) {
    throw "You can not comment a post that was not liked.";
  }
}


afterSocialComment

Esse evento é disparado sempre após a efetivação de um comentário.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialComment(companyId, comment){
  
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
commentobjeto de comentárioSocialCommentEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialComment(companyId, comment){
 log.info(comment.getUser() + " has done the comment " + comment.getText());
}


beforeSocialPost

Esse evento é disparado sempre antes da efetivação de um post.

Informações
titleObservação

Pode-se alterar o conteúdo da publicação passando uma String para o método setText( <valor> ) do objeto "post".


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialPost(companyId, post){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
postObjeto que representa a publicaçãoSocialPostEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialPost(companyId, vopost){
 
    if(vopost.getText().indexOf(" fluid ") > -1) {
        vopost.setText(vopost.getText().replace( " fluid ", " fluig "));
    }
   
    var sociables = post.getSociables();
	for (var i = 0; i < sociables.size(); i++) {
	    var sociable = sociables.get(i);
		log.info("sociable id: " + sociable.getId());
	}
}


afterSocialPost

Esse evento é disparado sempre após a efetivação de um comentário.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialPostafterSocialPost(companyId, post){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
postobjeto de postSocialPostEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialPost(companyId, post){
    if (post.getText().toLowerCase().indexOf("#minhacampanha") > -1) {
        log.info(post.getUser() + " has published a content.");
    }
}


beforeSocialPostRemove

Esse evento é disparado sempre antes da efetivação de uma remoção de um post.


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialPostRemove(companyId, post){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
postobjeto de postSocialPostEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialPostRemove(companyId, post){
  if (post.getText().toLowerCase().indexOf("#important") > -1) {
    throw "You cannot remove a post marked as important.";
  }
}


afterSocialPostRemove

Esse evento é disparado sempre após a efetivação de uma remoção de um post.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialPostRemove(companyId, post){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
postobjeto de post

SocialPostEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialPostRemove(companyId, post){
  log.info(post.getUser() + " has removed the post " + post.getSociablegetPostId().getId());
}


beforeSocialDenounce

O evento é disparado quando um Sociable é denunciado porém antes que a ação seja efetivada.

...

  • Em uma comunidade em que as publicações não podem ser denunciadas pode-se utilizar este evento para bloquear a ação de denúncia.
  • Pode-se limitar a quantidade de denúncias que um usuário pode efetuar por dia para evitar que alguma pessoa mal intencionada denuncie todas as publicações.

Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialDenounce(companyId, denounce){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
denounce
objeto de postSocialDenounceEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialDenounce(companyId, denounce){
  if (denounce.getSociable().getText().toLowerCase().indexOf("#cipa") > -1) {
     throw "You cannot denounce posts about CIPA.";
  }
}


afterSocialDenounce

O evento é disparado após a efetivação de uma ação de denúncia de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialDenounce(companyId, denounce){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
denounce
objeto de post

SocialDenounceEventVO


Exemplo Prático :

Registrar em log as denúncias efetuadas para auditoria.


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialDenounce(companyId, denounce){
  log.info(denounce.getUser() + " has denounced the sociable " + denounce.getSociable().getId() + " with comment " + denounce.getText());
}


beforeSocialLike

O evento é disparado antes de ser efetivada uma ação de "curtir" de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialLike(companyId, like){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
like
Objeto com dados do sociable curtidoSocialLikeEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialLike(companyId, like){
    if (like.getSociable().getText().toLowerCase().indexOf("#greve") > -1) {
         throw "You can not like a post that has this type of comment.";
    }
}


afterSocialLike

O evento é disparado após a efetivação de uma ação de "curtir" de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialLike(companyId, like){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
like
Objeto com dados do sociable curtidoSocialLikeEventVO


Exemplo Prático:

Registrar em log para auditoria todas as publicações curtidas.


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialLike(companyId, like){
  log.info(like.getUser() + " has liked the " + like.getSociable().getUrl());
}


beforeSocialUnlike

O evento é disparado antes de ser efetivada uma ação de "descurtir" de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialUnlike(companyId, unlike){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
unlike
Objeto com dados do sociable descurtidoSocialLikeEventVO


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialUnlike(companyId, unlike){
    throw "You can not unlike a post.";
}


afterSocialUnlike

O evento é disparado após a efetivação de uma ação de "descurtir" de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialUnlike(companyId, unlike){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
unlike
Objeto com dados do sociable descurtidoSocialLikeEventVO


Exemplo Prático:

Registrar em log para auditoria todas as publicações que deixaram de ser apoiadas.


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialUnlike(companyId, unlike){
  log.info(unlike.getUser() + " has unliked the " + unlike.getSociable().getUrl());
}


beforeSocialCommentRemove

O evento é disparado antes da efetivação da remoção de um comentário de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function beforeSocialCommentRemove(companyId, comment){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
comment
Objeto que contém as informações do comentárioSocialCommentEventVO


Exemplo Prático:

Evitar que usuários removam seus comentários em uma publicação de campanha interna da empresa.


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function beforeSocialCommentRemove(companyId, comment){
  if (comment.getSociable().getText().toLowerCase().indexOf("#bolao") > -1) {
    throw "You cannot change your guess.";
  }
}


afterSocialCommentRemove

O evento é disparado após a efetivação da ação de remover o comentário de um sociable.


Estrutura do Evento

Bloco de código
languagejs
linenumberstrue
function afterSocialCommentRemove(companyId, comment){
 
}


Parâmetros da função

Propriedade
Descrição
Tipo
companyIdCódigo da Empresaint
comment
Objeto que contém as informações do comentárioSocialCommentEventVO


Exemplo Prático:

Registrar em log para auditoria todos os comentários com a hashtag "protesto". 


Exemplo de Implementação

Bloco de código
languagejs
linenumberstrue
function afterSocialCommentRemove(companyId, comment){
  if (comment.getText().toLowerCase().indexOf("#protesto") > -1) {
    log.info(comment.getUser() + " has removed the comment " + comment.getText() + " of the sociable " + comment.getSociable().getId());
  }
}


beforeSocialCommentEdit

Esse evento é disparado sempre antes da edição de um comentário.


Estrutura do Evento

Bloco de código
languagejs
titleEstrutura do Evento
function beforeSocialCommentEdit(companyId, comment){
 
}


Parâmetros da função

PropriedadeDescriçãoTipo
companyIdCódigo da Empresaint
comment
Objeto que contém as informações do comentárioSocialCommentEventVO


Exemplo de Implementação

Bloco de código
languagejs
function beforeSocialCommentEdit(companyId, comment){
  comment.setText(comment.getText() + " \n --- Conteúdo editado ---");
}


afterSocialCommentEdit

Esse evento é disparado sempre após a edição de um comentário.


Estrutura do Evento

Bloco de código
languagejs
function afterSocialCommentEdit(companyId, comment){
 
}


Parâmetros da função

PropriedadeDescriçãoTipo
companyIdCódigo da Empresaint
comment
Objeto que contém as informações do comentárioSocialCommentEventVO


Exemplo de Implementação

Bloco de código
languagejs
function afterSocialCommentEdit(companyId, comment){
  System.out.println(comment.getUser() + " editou o conteúdo do post: " + comment.getCommentId());
}



beforeSocialPostEdit

Esse evento é disparado sempre antes da edição de um post.


Estrutura do Evento

Bloco de código
languagejs
titleEstrutura do Evento
function beforeSocialPostEdit(companyId, post){
 
}


Parâmetros da função

PropriedadeDescriçãoTipo
companyIdCódigo da Empresaint
postobjeto de post

SocialPostEventVO


Exemplo de Implementação

Bloco de código
languagejs
function beforeSocialPostEdit(companyId, post){
  post.setText(post.getText() + " \n --- Conteúdo editado ---");
}

...