# frozen_string_literal: true require "cgi" module SocialHelper::TumblrMethods def tumblr_title(answer) asker = if answer.question.author_is_anonymous? answer.user.profile.anon_display_name.presence || APP_CONFIG["anonymous_name"] else answer.question.user.profile.safe_name end "#{asker} asked: #{answer.question.content}" end def tumblr_body(answer) answer_url = answer_url( id: answer.id, username: answer.user.screen_name, host: APP_CONFIG["hostname"], protocol: (APP_CONFIG["https"] ? :https : :http), ) "#{answer.content}\n\n[Smile or comment on the answer here](#{answer_url})" end def tumblr_share_url(answer) answer_url = answer_url( id: answer.id, username: answer.user.screen_name, host: APP_CONFIG["hostname"], protocol: (APP_CONFIG["https"] ? :https : :http), ) "https://www.tumblr.com/widgets/share/tool?shareSource=legacy&posttype=text&title=#{CGI.escape(tumblr_title(answer))}&url=#{CGI.escape(answer_url)}&caption=&content=#{CGI.escape(tumblr_body(answer))}" end end