diff --git a/app/models/services/facebook.rb b/app/models/services/facebook.rb index 0c90bac97..a0d39ec85 100644 --- a/app/models/services/facebook.rb +++ b/app/models/services/facebook.rb @@ -9,7 +9,15 @@ class Services::Facebook < Service Rails.logger.debug("event=post_to_service type=facebook sender_id=#{self.user_id}") message = public_message(post, url) begin - Faraday.post("https://graph.facebook.com/me/feed", {:message => message, :access_token => self.access_token}.to_param) + if /https?:\/\/(.+) / =~ message + link = /https?:\/\/(.+) /.match(message)[0] + Faraday.post("https://graph.facebook.com/me/feed", {:message => message, :link => link, :access_token => self.access_token}.to_param) + elsif /https?:\/\/(.+)$/ =~ message + link = /https?:\/\/(.+)$/.match(message)[0] + Faraday.post("https://graph.facebook.com/me/feed", {:message => message, :link => link, :access_token => self.access_token}.to_param) + else + Faraday.post("https://graph.facebook.com/me/feed", {:message => message, :access_token => self.access_token}.to_param) + end rescue Exception => e Rails.logger.info("#{e.message} failed to post to facebook") end