announcements 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,10 +1,10 @@
1
- .DS_Store
2
- .bundle
3
- db/*.sqlite3
4
- log/*.log
5
- tmp/
6
- .sass-cache/
7
- .idea/
1
+ .DS_Store
2
+ .bundle
3
+ db/*.sqlite3
4
+ log/*.log
5
+ tmp/
6
+ .sass-cache/
7
+ .idea/
8
8
  *.gem
9
9
  .bundle
10
10
  Gemfile.lock
data/.rspec CHANGED
@@ -1 +1 @@
1
- "--color"
1
+ "--color"
data/LICENSE CHANGED
@@ -1,20 +1,20 @@
1
- Copyright (c) 2012 Svilen Gospodinov
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
1
+ Copyright (c) 2012 Svilen Gospodinov
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
20
  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -1,90 +1,90 @@
1
- # announcements
2
-
3
- The Announcements gem provides an easy way to publish short messages in your views, which the user can then hide permanently.
4
- It was influenced by the gem `paul_revere` by thoughtbot, but unlike `paul_revere`, `announcements` doesn't use partials (instead,
5
- there is a single helper method which you can customise) and is a bit more flexible (you have an additional 'type' attribute by default). Announcements can also output text in a twitter-bootstrap style format (see below).
6
-
7
- ## Quick start
8
-
9
- 1. Requirements: rails >= 3.1.0 and jquery-rails
10
- 2. Add `gem 'announcements'` to your Gemfile and run `bundle`
11
- 3. Run `rails g announcements:install`
12
- 4. Use `<%= announce Announcement.newest %>` in your views to display the latest announcement
13
- 5. Create your first announcement in `rails c` by simply creating a new Announcement record, like `Announcement.create(:body => 'This is my first announcement!')`
14
- 6. Next, relax bootstrap's got the rest.
15
-
16
- ## Styling
17
-
18
- By default, the announcement text and hide message text are wrapped in a div called "info" (if you want to customise that, see the Customisation section below).
19
- You can use the following css in your application.css file to start:
20
-
21
- ```css
22
- .info {
23
- background: #D5EDF8;
24
- color: #205791;
25
- padding: 0.8em;
26
- margin-bottom: 1em;
27
- border: 2px solid #92CAE4;
28
- }
29
-
30
- .hide_announcement {
31
- cursor: pointer;
32
- float: right;
33
- }
34
- ```
35
-
36
- ## Customization
37
-
38
- The default HTML output of the `announce` helper is
39
-
40
- ```html
41
- <div class="info">
42
- My announcement!
43
- <span class="hide_announcement" data-announcementid="1">hide message</span>
44
- </div>
45
- ```
46
-
47
- The default div class is `info`. You can customise it like that:
48
-
49
- ```
50
- <%= announce Announcement.newest, :div_class => "mydiv" %>
51
- ```
52
-
53
- You can also change the "hide message" text:
54
-
55
- ```
56
- <%= announce Announcement.newest, :hide_message => "×" %>
57
- ```
58
-
59
- The output from the helper is marked as html_safe, so you can have links or add more formatting in the announcement text itself.
60
-
61
- ## For Twitter Bootstrap users
62
-
63
- A new option has been added to `announcements` to display alerts in the `twitter-bootstrap` [style](http://twitter.github.com/bootstrap/components.html#alerts) through the following usage:
64
-
65
- ```
66
- <%= announce Announcement.newest, :format => "bootstrap" %>
67
- ```
68
-
69
- You can also change the "alert heading" text (twitter bootstrap option only):
70
-
71
- ```
72
- <%= announce Announcement.newest, {:format => "bootstrap", :alert_heading => "Achtung!"} %>
73
- ```
74
-
75
- Be sure to use one of the twitter-bootstrap gems.
76
-
77
- ## How it works
78
-
79
- The gem creates an Announcement model with a few class methods like `Announcement.newest`. The Announcement model has a body:text (the actual announcement text)
80
- and a type:string (which you can use for different types of announcements, e.g. public (everyone) and private (only for registered users)). There is also a js file in vendor/assets/javascripts
81
- which permanently hides the announcement by creating a cookie (that's when you click on the 'hide message' text).
82
-
83
- ## How to uninstall
84
-
85
- There is no uninstaller at this point, but you can simply remove the following files manually:
86
-
87
- 1. app/models/announcement.rb
88
- 2. vendor/assets/javascripts/announcements.js
89
-
1
+ # announcements
2
+
3
+ The Announcements gem provides an easy way to publish short messages in your views, which the user can then hide permanently.
4
+ It was influenced by the gem `paul_revere` by thoughtbot, but unlike `paul_revere`, `announcements` doesn't use partials (instead,
5
+ there is a single helper method which you can customise) and is a bit more flexible (you have an additional 'type' attribute by default). Announcements can also output text in a twitter-bootstrap style format (see below).
6
+
7
+ ## Quick start
8
+
9
+ 1. Requirements: rails >= 3.1.0 and jquery-rails
10
+ 2. Add `gem 'announcements'` to your Gemfile and run `bundle`
11
+ 3. Run `rails g announcements:install`
12
+ 4. Use `<%= announce Announcement.newest %>` in your views to display the latest announcement
13
+ 5. Create your first announcement in `rails c` by simply creating a new Announcement record, like `Announcement.create(:body => 'This is my first announcement!')`
14
+ 6. You're done! You can now add some styling and have a look at the customization options below.
15
+
16
+ ## Styling
17
+
18
+ By default, the announcement text and hide message text are wrapped in a div called "info" (if you want to customise that, see the Customisation section below).
19
+ You can use the following css in your application.css file to start:
20
+
21
+ ```css
22
+ .info {
23
+ background: #D5EDF8;
24
+ color: #205791;
25
+ padding: 0.8em;
26
+ margin-bottom: 1em;
27
+ border: 2px solid #92CAE4;
28
+ }
29
+
30
+ .hide_announcement {
31
+ cursor: pointer;
32
+ float: right;
33
+ }
34
+ ```
35
+
36
+ ## Customization
37
+
38
+ The default HTML output of the `announce` helper is
39
+
40
+ ```html
41
+ <div class="info">
42
+ My announcement!
43
+ <span class="hide_announcement" data-announcementid="1">hide message</span>
44
+ </div>
45
+ ```
46
+
47
+ The default div class is `info`. You can customise it like that:
48
+
49
+ ```
50
+ <%= announce Announcement.newest, :div_class => "mydiv" %>
51
+ ```
52
+
53
+ You can also change the "hide message" text:
54
+
55
+ ```
56
+ <%= announce Announcement.newest, :hide_message => "×" %>
57
+ ```
58
+
59
+ The output from the helper is marked as html_safe, so you can have links or add more formatting in the announcement text itself.
60
+
61
+ ## For Twitter Bootstrap users
62
+
63
+ A new option has been added to `announcements` to display alerts in the `twitter-bootstrap` [style](http://twitter.github.com/bootstrap/components.html#alerts) through the following usage:
64
+
65
+ ```
66
+ <%= announce Announcement.newest, :format => "bootstrap" %>
67
+ ```
68
+
69
+ You can also change the "alert heading" text (twitter bootstrap option only):
70
+
71
+ ```
72
+ <%= announce Announcement.newest, {:format => "bootstrap", :alert_heading => "Achtung!"} %>
73
+ ```
74
+
75
+ Be sure to use one of the twitter-bootstrap gems.
76
+
77
+ ## How it works
78
+
79
+ The gem creates an Announcement model with a few class methods like `Announcement.newest`. The Announcement model has a body:text (the actual announcement text)
80
+ and a type:string (which you can use for different types of announcements, e.g. public (everyone) and private (only for registered users)). There is also a js file in vendor/assets/javascripts
81
+ which permanently hides the announcement by creating a cookie (that's when you click on the 'hide message' text).
82
+
83
+ ## How to uninstall
84
+
85
+ There is no uninstaller at this point, but you can simply remove the following files manually:
86
+
87
+ 1. app/models/announcement.rb
88
+ 2. vendor/assets/javascripts/announcements.js
89
+
90
90
  You also have to remove the `//= require announcements` line in your app/assets/javascripts/application.js file, and rollback the `create_announcements` migration.
@@ -1,26 +1,26 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "announcements/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.name = "announcements"
7
- s.version = Announcements::VERSION
8
- s.authors = ["Svilen Gospodinov", "Chase Southard"]
9
- s.email = "svilen@gospodinov.co.uk"
10
- s.homepage = "https://github.com/svileng/announcements"
11
- s.summary = "Announcements gem for Rails"
12
- s.description = "The Announcements gem makes it easier to display short announcement messages in your views"
13
-
14
- s.rubyforge_project = "announcements"
15
-
16
- s.files = `git ls-files`.split("\n")
17
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
- s.require_paths = ["lib"]
20
-
21
- s.add_development_dependency "rspec"
22
-
23
- s.add_runtime_dependency "rails", "~> 3.1"
24
- s.add_runtime_dependency "jquery-rails"
25
-
26
- end
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "announcements/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "announcements"
7
+ s.version = Announcements::VERSION
8
+ s.authors = ["Svilen Gospodinov", "and others"]
9
+ s.email = "svilen.gospodinov@gmail.com"
10
+ s.homepage = "https://github.com/svileng/announcements"
11
+ s.summary = "Announcements gem for Rails"
12
+ s.description = "The Announcements gem makes it easier to display short announcement messages in your views"
13
+
14
+ s.rubyforge_project = "announcements"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
+ s.require_paths = ["lib"]
20
+
21
+ s.add_development_dependency "rspec"
22
+
23
+ s.add_runtime_dependency "rails", ">= 3.1.0"
24
+ s.add_runtime_dependency "jquery-rails"
25
+
26
+ end
@@ -1,40 +1,40 @@
1
- module AnnouncementsHelper
2
-
3
- # Outputs given announcement in HTML (with optional twitter bootstrap style).
4
- #
5
- # Basic usage: <%= announce Announcement.newest %>
6
- # Alt usage: <%= announce Announcement.newest, :format => "boostrap" %>
7
- #
8
- # Options:
9
- # div_class -- name for a custom div class, which wraps the announcement text and hide message, default is "info"
10
- # hide_message -- clickable text which hides the announcement, default is "hide message"
11
- # format[:boostrap] -- format announcement to use the twitter bootstrap Alert style, defaults to normals stylings.
12
- # alert_heading -- Adding an alert heading when used with the bootstrap option.
13
- def announce announcement, options = {}
14
- result = nil
15
- data_attribute = { :announcementid => announcement.id }
16
-
17
- if announcement != nil && cookies["announcement_" + announcement.id.to_s] != "hidden"
18
- if options[:format] == "bootstrap"
19
- text = options[:hide_message] || "x"
20
- div_class = options[:div_class] || "alert alert-block"
21
- alert_heading = options[:alert_heading] || "Warning!"
22
-
23
- close_content_tag = content_tag(:a, text, :class => "close", data: data_attribute)
24
- alert_content_tag = content_tag(:h4, alert_heading, :class => "alert-heading")
25
-
26
- result = content_tag(:div, close_content_tag + alert_content_tag + announcement.body.html_safe, class: div_class)
27
- else
28
- text = options[:hide_message] || "hide message"
29
- div_class = options[:div_class] || "info"
30
-
31
- close_content_tag = content_tag(:span, text, :class => "hide_announcement", data: data_attribute)
32
-
33
- result = content_tag(:div, announcement.body.html_safe + close_content_tag, class: div_class)
34
- end
35
- end
36
-
37
- result
38
- end
39
-
40
- end
1
+ module AnnouncementsHelper
2
+
3
+ # Outputs given announcement in HTML (with optional twitter bootstrap style).
4
+ #
5
+ # Basic usage: <%= announce Announcement.newest %>
6
+ # Alt usage: <%= announce Announcement.newest, :format => "boostrap" %>
7
+ #
8
+ # Options:
9
+ # div_class -- name for a custom div class, which wraps the announcement text and hide message, default is "info"
10
+ # hide_message -- clickable text which hides the announcement, default is "hide message"
11
+ # format[:boostrap] -- format announcement to use the twitter bootstrap Alert style, defaults to normals stylings.
12
+ # alert_heading -- Adding an alert heading when used with the bootstrap option.
13
+ def announce announcement, options = {}
14
+ result = nil
15
+
16
+ if announcement != nil && cookies["announcement_" + announcement.id.to_s] != "hidden"
17
+ data_attribute = { :announcementid => announcement.id }
18
+ if options[:format] == "bootstrap"
19
+ text = options[:hide_message] || "x"
20
+ div_class = options[:div_class] || "alert alert-warning"
21
+ alert_heading = announcement.try(:heading) || options[:alert_heading] || "Warning!"
22
+
23
+ close_content_tag = content_tag(:a, text, :class => "close", data: data_attribute)
24
+ alert_content_tag = content_tag(:h4, alert_heading, :class => "alert-heading")
25
+
26
+ result = content_tag(:div, close_content_tag + alert_content_tag + announcement.body.html_safe, class: div_class)
27
+ else
28
+ text = options[:hide_message] || "hide message"
29
+ div_class = options[:div_class] || "info"
30
+
31
+ close_content_tag = content_tag(:span, text, :class => "hide_announcement", data: data_attribute)
32
+
33
+ result = content_tag(:div, announcement.body.html_safe + close_content_tag, class: div_class)
34
+ end
35
+ end
36
+
37
+ result
38
+ end
39
+
40
+ end
@@ -1,3 +1,3 @@
1
- module Announcements
2
- VERSION = "0.1.0"
3
- end
1
+ module Announcements
2
+ VERSION = "0.2.0"
3
+ end
@@ -8,7 +8,7 @@ module Announcements
8
8
  say "--- Creating model in app/models..."
9
9
  template "announcement.rb", "app/models/announcement.rb"
10
10
  say "--- Creating the migration ..."
11
- generate("model", "announcement body:text type:string --skip")
11
+ generate("model", "announcement body:text heading:text type:string --skip")
12
12
  say "--- Running the migration..."
13
13
  rake("db:migrate")
14
14
  end
@@ -22,4 +22,4 @@ module Announcements
22
22
  end
23
23
 
24
24
  end
25
- end
25
+ end
@@ -1,17 +1,17 @@
1
- class Announcement < ActiveRecord::Base
2
-
3
- validates_presence_of :body
4
-
5
- def self.newest
6
- Announcement.last
7
- end
8
-
9
- def self.newest_private
10
- Announcement.where("type is null").order("id desc").first
11
- end
12
-
13
- def self.newest_public
14
- Announcement.where("type = 'public'").order("id desc").first
15
- end
16
-
17
- end
1
+ class Announcement < ActiveRecord::Base
2
+
3
+ validates_presence_of :body
4
+
5
+ def self.newest
6
+ Announcement.last
7
+ end
8
+
9
+ def self.newest_private
10
+ Announcement.where("type is null").order("id desc").first
11
+ end
12
+
13
+ def self.newest_public
14
+ Announcement.where("type = 'public'").order("id desc").first
15
+ end
16
+
17
+ end
@@ -1,21 +1,21 @@
1
- $(function() {
2
-
3
- $('.hide_announcement, .close').click(function() {
4
- var a_id = $(this).data("announcementid");
5
- createCookie("announcement_" + a_id, "hidden", 45);
6
- $(this).parent().slideUp();
7
- });
8
-
9
- function createCookie(name, value, days) {
10
- var expires = "";
11
- if (days) {
12
- var date = new Date();
13
- date.setTime(date.getTime() + (days*24*60*60*1000));
14
- expires = "; expires=" + date.toGMTString();
15
- } else {
16
- expires = "";
17
- }
18
-
19
- document.cookie = name + "=" + value + expires + "; path=/";
20
- }
1
+ $(function() {
2
+
3
+ $('.hide_announcement, .close').click(function() {
4
+ var a_id = $(this).data("announcementid");
5
+ createCookie("announcement_" + a_id, "hidden", 45);
6
+ $(this).parent().slideUp();
7
+ });
8
+
9
+ function createCookie(name, value, days) {
10
+ var expires = "";
11
+ if (days) {
12
+ var date = new Date();
13
+ date.setTime(date.getTime() + (days*24*60*60*1000));
14
+ expires = "; expires=" + date.toGMTString();
15
+ } else {
16
+ expires = "";
17
+ }
18
+
19
+ document.cookie = name + "=" + value + expires + "; path=/";
20
+ }
21
21
  });
@@ -1,44 +1,44 @@
1
- require 'spec_helper'
2
- include ActionView::Context
3
- include ActionView::Helpers
4
- include AnnouncementsHelper
5
-
6
- describe AnnouncementsHelper do
7
-
8
- before do
9
- @announcement = Announcement.new
10
- @announcement.id = 1
11
- @announcement.body = "announcement text"
12
-
13
- @mocked_cookies = Hash.new
14
- stub!(:cookies).and_return(@mocked_cookies)
15
- end
16
-
17
- it "should output announcement text with no params" do
18
- @mocked_cookies["announcement_1"] = "not hidden"
19
- output = announce(@announcement)
20
- output.should include("x")
21
- output.should include("announcement text")
22
- end
23
-
24
- it "should not output announcement if was already hidden by user" do
25
- @mocked_cookies["announcement_1"] = "hidden"
26
- output = announce(@announcement)
27
- output.should be_nil
28
- end
29
-
30
- it "should output custom hide message and div class" do
31
- @mocked_cookies["announcement_1"] = "not hidden"
32
- output = announce(@announcement, hide_message: "X", div_class: "customdiv")
33
- output.should include("<div class=\"customdiv\"")
34
- output.should include(">X</span>")
35
- end
36
-
37
- it "should output bootstrap style" do
38
- @mocked_cookies["announcement_1"] = "not hidden"
39
- output = announce(@announcement, format: "bootstrap")
40
- output.should include("<a class=\"close\"")
41
- output.should include("<h4 class=\"alert-heading\"")
42
- end
43
-
1
+ require 'spec_helper'
2
+ include ActionView::Context
3
+ include ActionView::Helpers
4
+ include AnnouncementsHelper
5
+
6
+ describe AnnouncementsHelper do
7
+
8
+ before do
9
+ @announcement = Announcement.new
10
+ @announcement.id = 1
11
+ @announcement.body = "announcement text"
12
+
13
+ @mocked_cookies = Hash.new
14
+ stub!(:cookies).and_return(@mocked_cookies)
15
+ end
16
+
17
+ it "should output announcement text with no params" do
18
+ @mocked_cookies["announcement_1"] = "not hidden"
19
+ output = announce(@announcement)
20
+ output.should include("x")
21
+ output.should include("announcement text")
22
+ end
23
+
24
+ it "should not output announcement if was already hidden by user" do
25
+ @mocked_cookies["announcement_1"] = "hidden"
26
+ output = announce(@announcement)
27
+ output.should be_nil
28
+ end
29
+
30
+ it "should output custom hide message and div class" do
31
+ @mocked_cookies["announcement_1"] = "not hidden"
32
+ output = announce(@announcement, hide_message: "X", div_class: "customdiv")
33
+ output.should include("<div class=\"customdiv\"")
34
+ output.should include(">X</span>")
35
+ end
36
+
37
+ it "should output bootstrap style" do
38
+ @mocked_cookies["announcement_1"] = "not hidden"
39
+ output = announce(@announcement, format: "bootstrap")
40
+ output.should include("<a class=\"close\"")
41
+ output.should include("<h4 class=\"alert-heading\"")
42
+ end
43
+
44
44
  end
@@ -1,5 +1,5 @@
1
- require "action_view"
2
- require "active_support/core_ext"
3
- require "announcements"
4
-
1
+ require "action_view"
2
+ require "active_support/core_ext"
3
+ require "announcements"
4
+
5
5
  Dir["#{File.dirname(__FILE__)}/support/*.rb"].each{|f| require f}
@@ -1,4 +1,4 @@
1
- class Announcement
2
- attr_accessor :body
3
- attr_accessor :id
1
+ class Announcement
2
+ attr_accessor :body
3
+ attr_accessor :id
4
4
  end
metadata CHANGED
@@ -1,20 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: announcements
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Svilen Gospodinov
9
- - Chase Southard
9
+ - and others
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-04-19 00:00:00.000000000Z
13
+ date: 2014-03-14 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rspec
17
- requirement: &30209508 !ruby/object:Gem::Requirement
17
+ requirement: !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,21 +22,31 @@ dependencies:
22
22
  version: '0'
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: *30209508
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ! '>='
29
+ - !ruby/object:Gem::Version
30
+ version: '0'
26
31
  - !ruby/object:Gem::Dependency
27
32
  name: rails
28
- requirement: &30209160 !ruby/object:Gem::Requirement
33
+ requirement: !ruby/object:Gem::Requirement
29
34
  none: false
30
35
  requirements:
31
- - - ~>
36
+ - - ! '>='
32
37
  - !ruby/object:Gem::Version
33
- version: '3.1'
38
+ version: 3.1.0
34
39
  type: :runtime
35
40
  prerelease: false
36
- version_requirements: *30209160
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: 3.1.0
37
47
  - !ruby/object:Gem::Dependency
38
48
  name: jquery-rails
39
- requirement: &30208848 !ruby/object:Gem::Requirement
49
+ requirement: !ruby/object:Gem::Requirement
40
50
  none: false
41
51
  requirements:
42
52
  - - ! '>='
@@ -44,10 +54,15 @@ dependencies:
44
54
  version: '0'
45
55
  type: :runtime
46
56
  prerelease: false
47
- version_requirements: *30208848
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ none: false
59
+ requirements:
60
+ - - ! '>='
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
48
63
  description: The Announcements gem makes it easier to display short announcement messages
49
64
  in your views
50
- email: svilen@gospodinov.co.uk
65
+ email: svilen.gospodinov@gmail.com
51
66
  executables: []
52
67
  extensions: []
53
68
  extra_rdoc_files: []
@@ -88,8 +103,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
88
103
  version: '0'
89
104
  requirements: []
90
105
  rubyforge_project: announcements
91
- rubygems_version: 1.8.11
106
+ rubygems_version: 1.8.19
92
107
  signing_key:
93
108
  specification_version: 3
94
109
  summary: Announcements gem for Rails
95
- test_files: []
110
+ test_files:
111
+ - spec/announcements/announcements_helper_spec.rb
112
+ - spec/spec_helper.rb
113
+ - spec/support/announcement.rb