share_buttons 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +73 -0
  4. data/Rakefile +23 -0
  5. data/app/assets/javascripts/share_buttons.coffee +39 -0
  6. data/app/assets/javascripts/share_buttons/copy.coffee +28 -0
  7. data/app/assets/javascripts/share_buttons/popup.coffee +12 -0
  8. data/app/assets/stylesheets/share_buttons/application.css +13 -0
  9. data/app/controllers/share_buttons/application_controller.rb +4 -0
  10. data/app/helpers/share_buttons/view_helper.rb +28 -0
  11. data/app/views/layouts/share_buttons/application.html.erb +14 -0
  12. data/app/views/share_buttons/_email.html.haml +3 -0
  13. data/app/views/share_buttons/_facebook.html.haml +3 -0
  14. data/app/views/share_buttons/_google_plus.html.haml +3 -0
  15. data/app/views/share_buttons/_link.html.haml +18 -0
  16. data/app/views/share_buttons/_pinterest.html.haml +3 -0
  17. data/app/views/share_buttons/_twitter.html.haml +3 -0
  18. data/config/routes.rb +2 -0
  19. data/lib/generators/share_buttons/install/install_generator.rb +30 -0
  20. data/lib/generators/share_buttons/install/templates/initializer.rb +4 -0
  21. data/lib/share_buttons.rb +32 -0
  22. data/lib/share_buttons/base.rb +38 -0
  23. data/lib/share_buttons/email.rb +12 -0
  24. data/lib/share_buttons/engine.rb +11 -0
  25. data/lib/share_buttons/facebook.rb +23 -0
  26. data/lib/share_buttons/google_plus.rb +13 -0
  27. data/lib/share_buttons/link.rb +17 -0
  28. data/lib/share_buttons/pinterest.rb +13 -0
  29. data/lib/share_buttons/twitter.rb +17 -0
  30. data/lib/share_buttons/version.rb +3 -0
  31. data/lib/tasks/share_buttons_tasks.rake +4 -0
  32. metadata +115 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f864646f16ecd65bceb81bea0a350d1ebb505740
4
+ data.tar.gz: 0ef06fa8322ab5eac269bb89cb8e6225101ee3dd
5
+ SHA512:
6
+ metadata.gz: b14f4d2f4da73a1f41416a8f24cd9b3fd77fc250a6cc2b2ebebe41e78ed6c365f346dce81e456ac173d85d48408691365af49595f1a07b523f899672a57524b6
7
+ data.tar.gz: 0021d96cc21f75f98cee086db1214dc4cd3cf5b96116de2bd7e806f25cb1da45000167229a04818d1336bb7f5ca68908a7deabcb4e4b063e7aaa13763c61d971
@@ -0,0 +1,20 @@
1
+ Copyright 2014 Valentin Ballestrino
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,73 @@
1
+ # Share Buttons
2
+
3
+ Small sharing buttons helpers lib.
4
+
5
+ **Note :** Templates markup is written with
6
+ [Twitter Bootstrap v3](http://getbootstrap.com/) in mind and the javascript for
7
+ the `link_share_button` helper uses Bootsrap's `collapse` plugin.
8
+ You can override the plugin's view markup for every helper and delete the
9
+ `[data-link-button]` attribute for the `link_share_button` helper to avoid
10
+ the associated javascript to run.
11
+
12
+ ## Installation
13
+
14
+ Add to your Gemfile and `bundle install` :
15
+
16
+ ```ruby
17
+ gem 'share_buttons', github: 'glyph-fr/share_buttons'
18
+ ```
19
+
20
+ Use the included generator to generate the initializer file and the customizable views :
21
+
22
+ ```bash
23
+ rails generate share_buttons:install
24
+ ```
25
+
26
+ At last, include the javascript file in your `application.js` with :
27
+
28
+ ```javascript
29
+ //= require share_buttons
30
+ ```
31
+
32
+ ## Configuration
33
+
34
+ For Facebook sharing, you need to add you Facebook APP_ID to the generated
35
+ initializer configuration file in `config/initializers/share_buttons.rb` :
36
+
37
+ ```ruby
38
+ ShareButtons.configure do |config|
39
+ # Configure your facebook App ID for sharing
40
+ config.facebook.app_id = ENV['FACEBOOK_KEY']
41
+ end
42
+ ```
43
+
44
+ ## Usage
45
+
46
+ In your views, use any of the included helpers :
47
+
48
+ ```erb
49
+ <%= facebook_share_button(resource_path(resource), title: resource.title) %>
50
+ <%= twitter_share_button(resource_path(resource), title: resource.title) %>
51
+ <%= google_plus_share_button(resource_path(resource), title: resource.title) %>
52
+ <%= pinterest_share_button(resource_path(resource), title: resource.title, image_url: resource.image.url) %>
53
+ <%= email_share_button(resource_path(resource), title: resource.title) %>
54
+ <%= link_share_button(resource_path(resource), title: resource.title) %>
55
+ ```
56
+
57
+ And customize the generated views to your needs in `app/views/share_buttons/_<provider>.html.haml`
58
+
59
+ ### Facebook
60
+
61
+ Facebook's `redirect_uri` parameter will be set to `request.original_url` by
62
+ default but you can pass a custom URL as follow
63
+
64
+ ```erb
65
+ <%= facebook_share_button(resource_path(resource), title: resource.title, redirect_uri: a_custom_url) %>
66
+ ```
67
+
68
+ Useful if you want to handle when user cancelled dialog (e.g. close popup) or
69
+ successfully shared on his wall (e.g. track sharing hits)
70
+
71
+ ## Licence
72
+
73
+ This project rocks and uses MIT-LICENSE.
@@ -0,0 +1,23 @@
1
+ begin
2
+ require 'bundler/setup'
3
+ rescue LoadError
4
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
+ end
6
+
7
+ require 'rdoc/task'
8
+
9
+ RDoc::Task.new(:rdoc) do |rdoc|
10
+ rdoc.rdoc_dir = 'rdoc'
11
+ rdoc.title = 'ShareButtons'
12
+ rdoc.options << '--line-numbers'
13
+ rdoc.rdoc_files.include('README.rdoc')
14
+ rdoc.rdoc_files.include('lib/**/*.rb')
15
+ end
16
+
17
+ APP_RAKEFILE = File.expand_path("../spec/dummy/Rakefile", __FILE__)
18
+ load 'rails/tasks/engine.rake'
19
+
20
+
21
+
22
+ Bundler::GemHelper.install_tasks
23
+
@@ -0,0 +1,39 @@
1
+ #= require zeroclipboard
2
+ #= require_self
3
+ #= require share_buttons/popup
4
+ #= require share_buttons/copy
5
+
6
+ @ShareButtons =
7
+ _plugins: {}
8
+
9
+ # Custom page ready handler allowing to automatically handle apps with or
10
+ # without Turbolinks
11
+ onPageReady: (callback) ->
12
+ $(document).ready(-> callback() unless window.Turbolinks)
13
+ $(document).on('page:change', callback);
14
+
15
+ register: (type, plugin) ->
16
+ ShareButtons._plugins[type] = plugin
17
+
18
+ initializePlugins: ($container) ->
19
+ for type, plugin of ShareButtons._plugins
20
+ $container.find("[data-share='#{ type }']").each (i, el) ->
21
+ $button = $(el)
22
+ # Avoid double initialization
23
+ return if $button.data('share-button')
24
+ # Initialize plugin and cache it
25
+ button = new plugin($button)
26
+ $button.data('share-button', button)
27
+
28
+ # Expose jQuery plugin to initialize share buttons inside a given container
29
+ #
30
+ # Usage: $('body').ShareButtons()
31
+ #
32
+ $.fn.shareButtons = ->
33
+ @each (i, el) -> ShareButtons.initializePlugins($(el))
34
+
35
+ # Auto initialize plugins on page ready
36
+ #
37
+ ShareButtons.onPageReady ->
38
+ $('body').shareButtons()
39
+
@@ -0,0 +1,28 @@
1
+ class ShareButtons.CopyButton
2
+ constructor: (@$button) ->
3
+ @clipboard = new ZeroClipboard(@$button[0])
4
+ @clipboard.on('load', => @_initializeClipboardHandlers())
5
+ @$modal = $(@$button.data('target'))
6
+ @$button.on('click', => @_buttonClicked())
7
+
8
+ _initializeClipboardHandlers: ->
9
+ @clipboard.on('complete', => @_linkCopied())
10
+
11
+ _buttonClicked: ->
12
+ if @$modal.hasClass('in') then @_openModal() else @_closeModal()
13
+
14
+ _closeModal: ->
15
+ @$modal.modal('hide')
16
+
17
+ _openModal: ->
18
+ @$modal.modal('show')
19
+
20
+ _linkCopied: ->
21
+ @$modal.find('.copy-alert-text').hide(0)
22
+
23
+ @$modal.one 'shown.bs.modal', =>
24
+ @$modal.find('.copied-alert-text').collapse('show')
25
+
26
+ @_openModal()
27
+
28
+ ShareButtons.register('copy', ShareButtons.CopyButton)
@@ -0,0 +1,12 @@
1
+ class ShareButtons.PopupButton
2
+ constructor: (@$el) ->
3
+ @$el.on('click', (e) => @_buttonClicked(e))
4
+
5
+ _buttonClicked: (e) ->
6
+ e.preventDefault()
7
+ window.open(@$el.attr('href'), 'share-popup', @_popupOptions())
8
+
9
+ _popupOptions: ->
10
+ 'menubar=no, scrollbars=no, top=0, left=0, width=700, height=300'
11
+
12
+ ShareButtons.register('popup', ShareButtons.PopupButton)
@@ -0,0 +1,13 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the top of the
9
+ * compiled file, but it's generally better to create a new file per style scope.
10
+ *
11
+ *= require_self
12
+ *= require_tree .
13
+ */
@@ -0,0 +1,4 @@
1
+ module ShareButtons
2
+ class ApplicationController < ActionController::Base
3
+ end
4
+ end
@@ -0,0 +1,28 @@
1
+ module ShareButtons
2
+ module ViewHelper
3
+ ShareButtons::HELPER_NAMES.each do |medium|
4
+ define_method(:"#{ medium }_share_button") do |*args|
5
+ url, options = extract_url_and_options(*args)
6
+
7
+ handler_class = ShareButtons.const_get(medium.camelize)
8
+ button = handler_class.new(request, url, options)
9
+
10
+ render partial: "share_buttons/#{ medium }", locals: { button: button }
11
+ end
12
+ end
13
+
14
+ private
15
+
16
+ def extract_url_and_options url = nil, options = nil
17
+ unless options
18
+ if url.kind_of?(Hash)
19
+ options = url
20
+ url = nil
21
+ else
22
+ options = {}
23
+ end
24
+ end
25
+ [url, options]
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,14 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title>ShareButtons</title>
5
+ <%= stylesheet_link_tag "share_buttons/application", media: "all" %>
6
+ <%= javascript_include_tag "share_buttons/application" %>
7
+ <%= csrf_meta_tags %>
8
+ </head>
9
+ <body>
10
+
11
+ <%= yield %>
12
+
13
+ </body>
14
+ </html>
@@ -0,0 +1,3 @@
1
+ = mail_to nil, body: button.url, subject: button.title, class: 'btn btn-default', data: { share: 'email' } do
2
+ %i.fa.fa-envelope
3
+ = button.label
@@ -0,0 +1,3 @@
1
+ = link_to button.href, class: 'btn btn-default', data: { share: 'popup' } do
2
+ %i.fa.fa-facebook
3
+ = button.label
@@ -0,0 +1,3 @@
1
+ = link_to button.href, class: 'btn btn-default', data: { share: 'popup' } do
2
+ %i.fa.fa-google-plus
3
+ = button.label
@@ -0,0 +1,18 @@
1
+ %button.btn.btn-default{ type: 'button', data: { share: 'copy', target: "##{ button.dom_id }", :"clipboard-text" => button.url, :title => button.label } }
2
+ %i.fa.fa-link
3
+ = button.label
4
+
5
+ .link-button-alert.collapse{ id: button.dom_id }
6
+ = text_area_tag :share_link, button.url, readonly: 'readonly', class: 'form-control'
7
+ %p.help-text.copy-alert-text.collapse.in
8
+ Sélectionnez l'adresse URL ci-dessus et copiez là
9
+ %p.help-text.copied-alert-text.collapse
10
+ Le lien ci-dessus a bien été copié dans votre presse-papier !
11
+ = link_to "##{ button.dom_id }", data: { toggle: 'collapse' } do
12
+ %u
13
+ &times;
14
+ Masquer
15
+
16
+ .clearfix
17
+
18
+
@@ -0,0 +1,3 @@
1
+ = link_to button.href, class: 'btn btn-default', data: { share: 'popup', :'pin-do' => 'buttonBookmark' } do
2
+ %i.fa.fa-pinterest
3
+ = button.label
@@ -0,0 +1,3 @@
1
+ = link_to button.href, class: 'btn btn-default', data: { share: 'popup' } do
2
+ %i.fa.fa-twitter
3
+ = button.label
@@ -0,0 +1,2 @@
1
+ ShareButtons::Engine.routes.draw do
2
+ end
@@ -0,0 +1,30 @@
1
+ require 'fileutils'
2
+
3
+ module ShareButtons
4
+ class InstallGenerator < Rails::Generators::Base
5
+ source_root File.expand_path('../templates', __FILE__)
6
+
7
+ desc "Share Buttons install generator"
8
+
9
+ def welcome
10
+ say "Installing Share Buttons ..."
11
+ end
12
+
13
+ def copy_initializer_file
14
+ say "Installing default initializer template"
15
+ copy_file "initializer.rb", "config/initializers/share_buttons.rb"
16
+ end
17
+
18
+ def copy_views
19
+ folder = %w(app views share_buttons)
20
+
21
+ source = File.join('..', '..', '..', '..', '..', *folder)
22
+ source_dir = File.expand_path(source, __FILE__)
23
+ dest_dir = Rails.root.join(*folder)
24
+
25
+ print "Copying share buttons views to #{ dest_dir } ... "
26
+ FileUtils.cp_r(source_dir, dest_dir)
27
+ puts 'done !'
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,4 @@
1
+ ShareButtons.configure do |config|
2
+ # Configure your facebook App ID for sharing
3
+ # config.facebook.app_id = ENV['FACEBOOK_APP_ID']
4
+ end
@@ -0,0 +1,32 @@
1
+ require 'zeroclipboard-rails'
2
+ require "share_buttons/engine"
3
+ require 'active_support/dependencies/autoload'
4
+
5
+ module ShareButtons
6
+ extend ActiveSupport::Autoload
7
+
8
+ autoload :Base, 'share_buttons/base'
9
+ autoload :Facebook, 'share_buttons/facebook'
10
+ autoload :Twitter, 'share_buttons/twitter'
11
+ autoload :GooglePlus, 'share_buttons/google_plus'
12
+ autoload :Email, 'share_buttons/email'
13
+ autoload :Link, 'share_buttons/link'
14
+ autoload :Pinterest, 'share_buttons/pinterest'
15
+
16
+ HELPER_NAMES = %w(facebook twitter google_plus pinterest email link)
17
+
18
+ def self.configure(&block)
19
+ configuration = ShareButtons::Configuration.new
20
+ block_given? ? yield(configuration) : configuration
21
+ end
22
+
23
+ class Configuration
24
+ # Allow users to configure each provider class attributes by accessing
25
+ # `config.provider_name.attribute`
26
+ HELPER_NAMES.each do |helper|
27
+ define_method(helper) do
28
+ ShareButtons.const_get(helper.camelize)
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,38 @@
1
+ module ShareButtons
2
+ class Base
3
+ attr_accessor :request, :url, :options
4
+
5
+ def initialize(request, url, options)
6
+ @request = request
7
+ @url = url || request.original_url
8
+ @options = options
9
+ end
10
+
11
+ def href
12
+ [share_url, url_options.to_param].join('?')
13
+ end
14
+
15
+ def label
16
+ options.fetch(:label, "Partager sur #{ medium_name }")
17
+ end
18
+
19
+ def medium_name
20
+ self.class.name.demodulize.underscore.humanize
21
+ end
22
+
23
+ private
24
+
25
+ def share_url
26
+ raise 'Implement #share_url in subsclass'
27
+ end
28
+
29
+ def url_options
30
+ {}
31
+ end
32
+
33
+ # More explicit shortcut to access class attributes
34
+ def config
35
+ self.class
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,12 @@
1
+ module ShareButtons
2
+ class Email < ShareButtons::Base
3
+ def label
4
+ options.fetch(:label, 'Partager par e-mail')
5
+ end
6
+
7
+ def title
8
+ options[:title]
9
+ end
10
+
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ module ShareButtons
2
+ class Engine < ::Rails::Engine
3
+ isolate_namespace ShareButtons
4
+
5
+ initializer 'include ShareButtons helpers in views' do |app|
6
+ ActiveSupport.on_load(:action_view) do
7
+ include(ShareButtons::ViewHelper)
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,23 @@
1
+ module ShareButtons
2
+ class Facebook < ShareButtons::Base
3
+ cattr_accessor :app_id
4
+
5
+ private
6
+
7
+ def share_url
8
+ "https://www.facebook.com/dialog/share"
9
+ end
10
+
11
+ def url_options
12
+ {
13
+ display: 'popup', redirect_uri: redirect_uri,
14
+ app_id: config.app_id, href: url
15
+ }
16
+ end
17
+
18
+ def redirect_uri
19
+ options[:redirect_uri] || request.original_url
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,13 @@
1
+ module ShareButtons
2
+ class GooglePlus < ShareButtons::Base
3
+ private
4
+
5
+ def share_url
6
+ 'https://plus.google.com/share'
7
+ end
8
+
9
+ def url_options
10
+ { url: url }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ module ShareButtons
2
+ class Link < ShareButtons::Base
3
+ def label
4
+ 'Copier le lien'
5
+ end
6
+
7
+ def dom_id
8
+ @dom_id ||= "share-buttons-link-#{ seed }"
9
+ end
10
+
11
+ private
12
+
13
+ def seed
14
+ (Time.now.to_f * 10**5).to_i.to_s
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ module ShareButtons
2
+ class Pinterest < ShareButtons::Base
3
+ private
4
+
5
+ def share_url
6
+ "https://www.pinterest.com/pin/create/button"
7
+ end
8
+
9
+ def url_options
10
+ { media: options[:image_url], url: url }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,17 @@
1
+ module ShareButtons
2
+ class Twitter < ShareButtons::Base
3
+ private
4
+
5
+ def share_url
6
+ 'https://twitter.com/home'
7
+ end
8
+
9
+ def url_options
10
+ { status: status }
11
+ end
12
+
13
+ def status
14
+ url
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,3 @@
1
+ module ShareButtons
2
+ VERSION = "1.0.0"
3
+ end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :share_buttons do
3
+ # # Task goes here
4
+ # end
metadata ADDED
@@ -0,0 +1,115 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: share_buttons
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Valentin Ballestrino
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-05-11 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '4.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: zeroclipboard-rails
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.0.13
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.0.13
41
+ - !ruby/object:Gem::Dependency
42
+ name: sqlite3
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: Simple social share buttons helpers for Rails.
56
+ email:
57
+ - vala@glyph.fr
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - MIT-LICENSE
63
+ - README.md
64
+ - Rakefile
65
+ - app/assets/javascripts/share_buttons.coffee
66
+ - app/assets/javascripts/share_buttons/copy.coffee
67
+ - app/assets/javascripts/share_buttons/popup.coffee
68
+ - app/assets/stylesheets/share_buttons/application.css
69
+ - app/controllers/share_buttons/application_controller.rb
70
+ - app/helpers/share_buttons/view_helper.rb
71
+ - app/views/layouts/share_buttons/application.html.erb
72
+ - app/views/share_buttons/_email.html.haml
73
+ - app/views/share_buttons/_facebook.html.haml
74
+ - app/views/share_buttons/_google_plus.html.haml
75
+ - app/views/share_buttons/_link.html.haml
76
+ - app/views/share_buttons/_pinterest.html.haml
77
+ - app/views/share_buttons/_twitter.html.haml
78
+ - config/routes.rb
79
+ - lib/generators/share_buttons/install/install_generator.rb
80
+ - lib/generators/share_buttons/install/templates/initializer.rb
81
+ - lib/share_buttons.rb
82
+ - lib/share_buttons/base.rb
83
+ - lib/share_buttons/email.rb
84
+ - lib/share_buttons/engine.rb
85
+ - lib/share_buttons/facebook.rb
86
+ - lib/share_buttons/google_plus.rb
87
+ - lib/share_buttons/link.rb
88
+ - lib/share_buttons/pinterest.rb
89
+ - lib/share_buttons/twitter.rb
90
+ - lib/share_buttons/version.rb
91
+ - lib/tasks/share_buttons_tasks.rake
92
+ homepage: http://www.glyph.fr
93
+ licenses: []
94
+ metadata: {}
95
+ post_install_message:
96
+ rdoc_options: []
97
+ require_paths:
98
+ - lib
99
+ required_ruby_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ required_rubygems_version: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
109
+ requirements: []
110
+ rubyforge_project:
111
+ rubygems_version: 2.4.4
112
+ signing_key:
113
+ specification_version: 4
114
+ summary: Simple social share buttons helpers for Rails.
115
+ test_files: []