#encoding: UTF-8 module PlataformaSocial class Badge include PlataformaSocial::Support def initialize end # Método para retornar a url do módulo de badges na plataforma def self.socialp_route PlataformaSocial.domains(:badge) end # Método para criar uma nova badge na plataforma # Esse método aceita como parâmetros: # options = { # :badge_reference => REFERENCIA_DA_BADGE, <- Obrigatório # :badge_obj => OBJETO_DA_BADGE <- Obrigatório # } # def create options = {} options.symbolize_keys! verify_if_has_all_required_parameters [:badge_reference, :badge_obj], options post_request "users/badge/#{options[:badge_reference]}", { :badge => options[:badge_obj] } rescue => e return e.to_s end # Método para incrementar o número de eventos que um usuário fez em cima de uma badge # Esse método aceita como parâmetros: # options = { # :user_reference => REFERENCIA_DO_USUARIO, <- Obrigatório # :badges => ID_OU_HASH_COM_AS_INFOS_DA_BADGE <- Obrigatório # Ex: # a) [1,2] Nesse caso irá incrementar 1 evento a mais nas badges 1 e 2 # b) [{ 1 => 10, 2 => 4 }] Nesse caso irá incrementar 10 eventos a mais na badge 1 e 4 eventos a mais na badge 2 # } # def give options = {} options.symbolize_keys! verify_if_has_all_required_parameters [:user_reference, :badges], options post_request "users/#{options[:user_reference]}/badges", { :badges => options[:badges] } rescue => e return e.to_s end # Método para retornar todas as badges de um aplicativo e marca as badges que o usuário em questão ja ganhou # Esse método aceita como parâmetros: # options = { # :user_reference => REFERENCIA_DO_USUARIO, <- Obrigatório # } # def index options = {} options.symbolize_keys! verify_if_has_all_required_parameters [:user_reference], options get_request "users/#{options[:user_reference]}/badges" rescue => e return e.to_s end end end