acts_as_monitor 1.0.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. data/CHANGELOG.md +9 -0
  2. data/Gemfile +20 -0
  3. data/README.md +29 -13
  4. data/{lib/generators/acts_as_monitor/install/templates → app/assets/images}/acts_as_monitor_green.png +0 -0
  5. data/{lib/generators/acts_as_monitor/install/templates → app/assets/images}/acts_as_monitor_red.png +0 -0
  6. data/{lib/generators/acts_as_monitor/install/templates/acts_as_monitor_loading.gif → app/assets/images/acts_as_monitor_spinner.gif} +0 -0
  7. data/{lib/generators/acts_as_monitor/install/templates → app/assets/images}/acts_as_monitor_yellow.png +0 -0
  8. data/app/assets/javascripts/acts_as_monitor.js.coffee +12 -0
  9. data/{lib/generators/acts_as_monitor/install/templates/acts_as_monitor_javascript.js → app/assets/javascripts/acts_as_monitor_javascript.js.erb.old} +2 -1
  10. data/app/controllers/acts_as_monitor/monitors_controller.rb +2 -8
  11. data/app/helpers/acts_as_monitor_helper.rb +20 -13
  12. data/app/views/acts_as_monitor/monitors/_show.html.erb +28 -0
  13. data/app/views/acts_as_monitor/monitors/show.js.erb +2 -0
  14. data/config/locales/acts_as_monitor.it.yml +41 -0
  15. data/lib/acts_as_monitor.rb +1 -1
  16. data/lib/acts_as_monitor/engine.rb +1 -0
  17. data/lib/acts_as_monitor/exceptions.rb +16 -3
  18. data/lib/acts_as_monitor/monitor.rb +2 -1
  19. data/lib/acts_as_monitor/version.rb +1 -1
  20. data/lib/generators/acts_as_monitor/install/install_generator.rb +4 -31
  21. data/lib/generators/acts_as_monitor/install/templates/config/locales/acts_as_monitor.en.yml +13 -0
  22. data/lib/generators/acts_as_monitor/install/templates/{acts_as_monitor.it.yml → config/locales/acts_as_monitor.it.yml} +3 -2
  23. data/lib/generators/acts_as_monitor/install/templates/vendor/assets/stylesheets/acts_as_monitor.css.scss +78 -0
  24. metadata +52 -89
  25. data/app/views/acts_as_monitor/monitors/show.html.erb +0 -26
  26. data/lib/generators/acts_as_monitor/install/templates/acts_as_monitor.css +0 -48
@@ -1,3 +1,12 @@
1
+ 2.0.0 (Nov 8, 2013)
2
+ - upgrade to rails 3.2 and ruby 1.9.3
3
+
4
+ 1.0.4 (July 13, 2013)
5
+ - update to rails 3.0.15
6
+
7
+ 1.0.3 (July 13, 2013)
8
+ - minor bug fix
9
+
1
10
  1.0.2 (July 13, 2012)
2
11
  - update to rails 3.0.14
3
12
 
data/Gemfile CHANGED
@@ -2,3 +2,23 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in acts_as_monitor.gemspec
4
4
  gemspec
5
+
6
+ group :development, :test do
7
+ gem "sqlite3"
8
+ gem 'ruby-prof'
9
+ gem 'sass-rails'
10
+ gem "factory_girl_rails"
11
+ gem "launchy"
12
+ gem "database_cleaner"
13
+
14
+ if RUBY_VERSION < "1.9"
15
+ gem "capybara", '2.0.3'
16
+ gem "ruby-debug"
17
+ gem "factory_girl", "~> 2.6.0"
18
+ gem "nokogiri", "1.5.5"
19
+ gem "rubyzip", "<= 0.9.9"
20
+ else
21
+ gem "capybara"
22
+ gem 'debugger', :require => 'ruby-debug'
23
+ end
24
+ end
data/README.md CHANGED
@@ -1,7 +1,10 @@
1
1
  # ActsAsMonitor
2
2
 
3
3
  Provide a way to monitor the status of a model.
4
- The health of the model is checked by private/public methods, defined by user
4
+ The health of the model is checked by private/public methods, defined by user
5
+
6
+ Version 2.x.x works only with rails 3.1.x and 3.2.x with jQuery
7
+ If you need Rails 3.0.x support, please install v1.x.x
5
8
 
6
9
  ## Installation
7
10
 
@@ -17,7 +20,7 @@ Or install it yourself as:
17
20
 
18
21
  $ gem install acts_as_monitor
19
22
 
20
- Copy icons and other files
23
+ Copy stylesheets and internationalization files
21
24
 
22
25
  rails g acts_as_monitor:install
23
26
 
@@ -55,7 +58,7 @@ You can now check the status of your model using the following code:
55
58
  @user.status_flag
56
59
  > :red
57
60
 
58
- You can query the status of youe model with:
61
+ You can query the status of your model with:
59
62
 
60
63
  User.status_flag_equals(:red) #=> Array of users with :red status
61
64
 
@@ -64,16 +67,28 @@ You can query the status of youe model with:
64
67
  You can use the monitor_tag helper to view a red/green/yellow rapresentation:
65
68
 
66
69
  #app/views/users/index.html.erb
67
- <%= monitor_tag_js %> #Creates hidden div and load css and javascript
70
+ <%= monitor_tag_js %> #load css and javascript
68
71
  ...
69
72
  <%= monitor_tag(@user) %>
70
73
 
71
- Clicking the icon you'll receive, via Ajax, the full error/warning list
74
+ Clicking the icon you'll receive, via Ajax, the full error/warning list
75
+
76
+ If you want, you can add stylesheets and javascripts in your assets and remove monitor\_tag\_js:
77
+
78
+ #app/view/assets/javascript/application.js
79
+ ...
80
+ //= require acts_as_monitor
81
+
72
82
 
83
+ #app/view/assets/stylesheets/application.css
84
+ ..
85
+ //= require acts_as_monitor
86
+
73
87
  ## Internationalization
74
- You can localize the output modifing the acts_as_monitor.it.yml, or cloning for the language you prefear.
75
- Name of models is retrived via human_name, so yuo have to localize the ActiveRecord to change names:
76
- it:
88
+ You can localize the output modifing the acts_as_monitor.en.yml, or cloning for the language you prefear.
89
+ Name of models is retrived via model\_name.human, so you have to localize the ActiveRecord to change names:
90
+
91
+ en:
77
92
  activerecord:
78
93
  models:
79
94
  your_model_name: Your Model Name
@@ -82,12 +97,13 @@ Name of models is retrived via human_name, so yuo have to localize the ActiveRec
82
97
  namespaced_model_name: Your Namespaced Model Name
83
98
 
84
99
  ## Personalization
85
- Feel free to modify the fololwing files to change layouts and text :
86
- - public/stylesheets/acts_as_monitor.css
87
- - config/locales/act_as_monitor.it.yml
100
+ Feel free to modify the fololwing files to change layouts and translations :
101
+
102
+ - vendor/assets/stylesheets/acts\_as\_monitor.css
103
+ - config/locales/act\_as\_monitor.en.yml
88
104
 
89
- If you need a deeper personalization you can try to overload app/views/acts_as_monitor/monitors/show.html.erb
90
- conaining the page template for the error/warning list
105
+ If you need a deeper personalization you can try to overload app/views/acts\_as\_monitor/monitors/_show.html.erb
106
+ containing the page template for the error/warning list
91
107
 
92
108
  ## Contributing
93
109
 
@@ -0,0 +1,12 @@
1
+ actsAsMonitorToggleSpinner = (event) -> $("#"+ event.data.spinner).toggle()
2
+
3
+ $(document).ready ->
4
+ $("div.acts_as_monitor_window").click (e) ->
5
+ $(this).hide()
6
+ e.preventDefault()
7
+
8
+ $("form[data-remote].acts_as_monitor").each (index,element) ->
9
+ $(element)
10
+ .bind('ajax:before',{spinner: $(element).data('spinner')}, actsAsMonitorToggleSpinner)
11
+ .bind('ajax:complete',{spinner: $(element).data('spinner')}, actsAsMonitorToggleSpinner)
12
+ .bind('ajax:error',{spinner: $(element).data('spinner')}, actsAsMonitorToggleSpinner)
@@ -26,7 +26,8 @@ document.observe('dom:loaded', function()
26
26
  class_name: ev.target.getAttribute('data-class')
27
27
  },
28
28
  onLoading: function(response){
29
- ev.target.src = application_root + '/images/acts_as_monitor_loading.gif';
29
+ //ev.target.src = application_root + '/images/acts_as_monitor_loading.gif';
30
+ ev.target.src = '<%= asset_path 'acts_as_monitor_loading.gif' %>';
30
31
  },
31
32
  onSuccess: function(response){
32
33
  var rsp = response.responseJSON;
@@ -2,15 +2,9 @@ module ActsAsMonitor
2
2
  class MonitorsController < ::ApplicationController
3
3
 
4
4
  def show
5
- @monitor = eval(params[:class_name]).find(params[:id]) if monitor_valid?(params)
6
- Rails::logger.info("MonitorsController @monitor=#{@monitor.inspect}")
5
+ @monitor = eval(params[:class_name]).find(params[:id]) if monitor_valid!(params)
7
6
  respond_to do |format|
8
- format.js do
9
- view = render_to_string "show"
10
- #render :json => {"text" => @status.status}
11
- render :json => {"text" => view}
12
- end
13
- format.html
7
+ format.js
14
8
  end
15
9
  end
16
10
 
@@ -3,24 +3,31 @@ module ActsAsMonitorHelper
3
3
  raise ActsAsMonitor::MissingMethod unless object.respond_to?(:status_flag)
4
4
  status = object.status_flag
5
5
  icon = I18n.t(status, :scope => "acts_as_monitor.icons",
6
- :default => "acts_as_monitor_#{status.to_s}.png")
7
- image_tag icon, :alt => I18n.t("alt_image_#{status.to_s}", :scope => "acts_as_monitor.icons",
8
- :default => status.to_s.capitalize),
9
- :class => "acts_as_monitor_icon_#{status.to_s}",
10
- 'data-class' => object.class.name, 'data-id' => object.id
6
+ :default => "acts_as_monitor_#{status.to_s}.png")
7
+ content_tag(:div, :class => "acts_as_monitor") do
8
+ if status == :green
9
+ image_tag(icon, :class => "acts_as_monitor_#{status.to_s}")
10
+ else
11
+ form_tag(acts_as_monitor_monitor_path(object), :method => :get, :remote => true, :class => 'acts_as_monitor', :data => {:spinner => "acts_as_monitor_spinner_#{object.id}"}) do
12
+ hidden_field_tag("class_name", object.class.name) +
13
+ image_submit_tag(icon, :class => "acts_as_monitor_#{status.to_s}") +
14
+ #submit_tag(icon, :class => "acts_as_monitor_#{status.to_s}") +
15
+ content_tag(:div, "", :class => "acts_as_monitor_window", :id => "acts_as_monitor_window_#{object.id}", :style => "display:none;") +
16
+ image_tag("acts_as_monitor_spinner.gif", :class => "acts_as_monitor_spinner",:id => "acts_as_monitor_spinner_#{object.id}", :style => "display:none;")
17
+ end
18
+ end
19
+ end
11
20
  end
12
21
 
13
22
  def monitor_tag_js()
14
- path = root_path.to_s
15
- content_tag(:div, path, :id => 'acts_as_monitor_status_window', :style => "display: none;") +
16
- javascript_include_tag("acts_as_monitor_javascript.js") +
17
- stylesheet_link_tag('acts_as_monitor.css')
23
+ javascript_include_tag(:acts_as_monitor) +
24
+ stylesheet_link_tag(:acts_as_monitor)
18
25
  end
19
26
 
20
- def monitor_valid?(params)
21
- return false if params[:id].blank? || params[:class_name].blank?
22
- Rails::logger.info eval(params[:class_name]).instance_methods.include?("status")
23
- return false unless eval(params[:class_name]).instance_methods.include?("status")
27
+ def monitor_valid!(params)
28
+ Rails.logger.info("Params: #{params.inspect}")
29
+ raise ActsAsMonitor::MalformedParams.new(:error => params.inspect) if params[:id].blank? || params[:class_name].blank?
30
+ raise ActsAsMonitor::MissingMethod unless eval(params[:class_name]).first.respond_to?(:status)
24
31
  true
25
32
  end
26
33
  end
@@ -0,0 +1,28 @@
1
+ <% if monitor %>
2
+ <fieldset>
3
+ <legend><%= monitor.class.model_name.human %></legend>
4
+ <% @status = monitor.status %>
5
+ <% @li_scope = "acts_as_monitor.messages.#{monitor.class.name.underscore.gsub('/','_')}"%>
6
+ <% unless @status[:error].blank? %>
7
+ <section class='acts_as_monitor_errors'>
8
+ <h3><%=I18n.t(:errors, :scope => "acts_as_monitor.messages") %></h3>
9
+ <ul>
10
+ <%@status[:error].each do |error| %>
11
+ <li><%=I18n.t(error, :scope=> @li_scope, :default => error.to_s) %></li>
12
+ <% end %>
13
+ </ul>
14
+ </section>
15
+ <% end %>
16
+ <% unless @status[:warn].blank? %>
17
+ <section class='acts_as_monitor_warnings'>
18
+ <h3><%=I18n.t(:warnings, :scope => "acts_as_monitor.messages") %></h3>
19
+ <ul>
20
+ <%@status[:warn].each do |warn| %>
21
+ <li><%=I18n.t(warn, :scope=> @li_scope, :default => warn.to_s) %></li>
22
+ <% end %>
23
+ </ul>
24
+ </section>
25
+ <% end %>
26
+ <% else %>
27
+ <p><%= I18n.t(:missing_method, :scope=> "acts_as_monitor.errors", :default => "Add acts_as_monitor to monitored Class") %></p>
28
+ <% end %>
@@ -0,0 +1,2 @@
1
+ $('div.acts_as_monitor_window').hide()
2
+ $('#acts_as_monitor_window_<%=@monitor.id%>').html('<%=j raw(render(:partial => "show", :locals => {:monitor => @monitor})) %>').show()
@@ -0,0 +1,41 @@
1
+ it:
2
+ acts_as_monitor:
3
+ icons:
4
+ red: acts_as_monitor_red.png
5
+ yellow: acts_as_monitor_yellow.png
6
+ green: acts_as_monitor_green.png
7
+ alt_image: "Clicca per visualizzare i dettagli"
8
+ errors:
9
+ missing_method: "Aggiungi acts_as_monitor alla classe da monitorare"
10
+ messages:
11
+ errors: Errori
12
+ warnings: Avvisi
13
+ magazzino_document:
14
+ warn_attach: "Allegato mancante"
15
+ warn_body: "Una delle righe bolle contiene un Errore"
16
+ error_body: "Una delle righe bolla contiene un Avviso"
17
+ magazzino_product:
18
+ warn_coerent: "Prodotto non coerente nei magazzino collegati"
19
+ magazzino_documentbody:
20
+ error_sqta: "La quantità con segno è errata!"
21
+ interventi_activity:
22
+ warn_missing_attach: "Allegato mancante"
23
+ warn_missing_rapp_1: "Manca il Rapportino Nest2!"
24
+ warn_missing_rapp_2: "Manca il Rapportino cliente!"
25
+ warn_missing_photo_1: "Manca la Foto prima!"
26
+ warn_missing_photo_2: "Manca la Foto dopo!"
27
+ warn_missing_quality: "Manca la scheda qualità!"
28
+ warn_missing_supplier_billing: "BEF non presente in alcune righe"
29
+ warn_missing_customer_billing: "Consuntivazione non presente in alcune righe"
30
+ admin_attachment:
31
+ error_missing: "Allegato mancante sul server!"
32
+ consuntivazioni_billing:
33
+ warn_checks: "Controllo richiesto ma non presente!"
34
+ warn_order: "Consuntivazione non consolidata!"
35
+ error_order: "Consuntivazione consolidata senza Ordine!"
36
+ consuntivazioni_billing_body:
37
+ warn_missing_check: "Intervento non trovato nel controllo!"
38
+ produzione_order:
39
+ warn_expirating: "Ordine in scadenza"
40
+ error_expirated: "Ordine scaduto!"
41
+
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  require "active_support/dependencies"
2
3
 
3
4
  module ActsAsMonitor
@@ -10,6 +11,5 @@ module ActsAsMonitor
10
11
  end
11
12
 
12
13
  require "acts_as_monitor/engine"
13
- #require "acts_as_monitor/version"
14
14
  require "acts_as_monitor/monitor"
15
15
  require "acts_as_monitor/exceptions"
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  module ActsAsMonitor
2
3
  class Engine < Rails::Engine
3
4
  # initialize "acts_as_monitor.load_app_instance_data" do |app|
@@ -1,9 +1,22 @@
1
+ # encoding: utf-8
1
2
  #Defines Custom Exceptions
2
3
  module ActsAsMonitor
3
-
4
- class MissingMethod < StandardError
4
+ class CustomError < StandardError
5
+ def initialize(*args)
6
+ @options = args.extract_options!
7
+ super
8
+ end
9
+
10
+ def to_s
11
+ message
12
+ end
13
+
5
14
  def message
6
- I18n.t(:missing_method, :scope => "acts_as_monitor.errors", :default => "Add acts_as_monitor to your class")
15
+ @options.merge!({:default => "Error : #{@options.inspect}"})
16
+ I18n.t("#{self.class.name.gsub(/::/,'.')}", @options )
7
17
  end
8
18
  end
19
+
20
+ class MissingMethod < CustomError; end
21
+ class MalformedParams < CustomError;end
9
22
  end
@@ -1,3 +1,4 @@
1
+ # encoding: utf-8
1
2
  module ActsAsMonitor
2
3
  module Monitor
3
4
  def self.included(base) # :nodoc:
@@ -53,7 +54,7 @@ module ActsAsMonitor
53
54
  out = {:warn => [], :error => []}
54
55
  methods = self.private_methods
55
56
  methods += self.methods
56
- methods = methods.map{|m| m.match(search) }.compact
57
+ methods = methods.map{|m| m.to_s.match(search) }.compact
57
58
  methods.each do |method|
58
59
  out[method[1].to_sym] << method[0].gsub("?","").to_sym if send(method[0])
59
60
  end
@@ -1,3 +1,3 @@
1
1
  module ActsAsMonitor
2
- VERSION = "1.0.4"
2
+ VERSION = "2.0.0"
3
3
  end
@@ -4,36 +4,9 @@ module ActsAsMonitor
4
4
  desc "Install generator for ActsAsMonitor gem"
5
5
  source_root File.expand_path("../templates", __FILE__)
6
6
 
7
- def copy_icons
8
- icons = ["acts_as_monitor_green.png", "acts_as_monitor_red.png", "acts_as_monitor_yellow.png", "acts_as_monitor_loading.gif"]
9
- icons.each do |icon|
10
- destination = "public/images/" + icon
11
- copy_file icon, destination
12
- end
13
- end
14
-
15
- def copy_locales
16
- file = "acts_as_monitor.it.yml"
17
- destination = "config/locales/" + file
18
- copy_file file, destination
19
- end
20
-
21
- def copy_javascripts
22
- copy_file "acts_as_monitor_javascript.js", "public/javascripts/acts_as_monitor_javascript.js"
23
- end
24
-
25
- def copy_stylesheet
26
- copy_file "acts_as_monitor.css", "public/stylesheets/acts_as_monitor.css"
27
- end
28
-
29
-
30
- def print_usage
31
- usage = <<-START
32
- Add acts_as_monitor to model to monitor
33
- Add a private method warn_*? and error_*? to define warning and error status
34
- Use monitor_tag(model_instance) in your view
35
- START
36
- puts(usage)
37
- end
7
+ def copy_config
8
+ directory "."
9
+ end
10
+
38
11
  end
39
12
  end
@@ -0,0 +1,13 @@
1
+ en:
2
+ ActsAsMonitor:
3
+ MissingMethod: "Add acts_as_monitor to monitored class"
4
+ MalformedParams: "Malformed Params: %{error}"
5
+ acts_as_monitor:
6
+ icons:
7
+ red: acts_as_monitor_red.png
8
+ yellow: acts_as_monitor_yellow.png
9
+ green: acts_as_monitor_green.png
10
+ alt_image: "Show details"
11
+ messages:
12
+ errors: Errors
13
+ warnings: Warns
@@ -1,12 +1,13 @@
1
1
  it:
2
+ ActsAsMonitor:
3
+ MissingMethod: "Aggiungi acts_as_monitor alla classe da monitorare"
4
+ MalformedParams: "Params malformato: %{error}"
2
5
  acts_as_monitor:
3
6
  icons:
4
7
  red: acts_as_monitor_red.png
5
8
  yellow: acts_as_monitor_yellow.png
6
9
  green: acts_as_monitor_green.png
7
10
  alt_image: "Clicca per visualizzare i dettagli"
8
- errors:
9
- missing_method: "Aggiungi acts_as_monitor alla classe da monitorare"
10
11
  messages:
11
12
  errors: Errori
12
13
  warnings: Avvisi
@@ -0,0 +1,78 @@
1
+ $background_color: #F2F2F2;
2
+ $border_color: black;
3
+ $errors_color: red;
4
+ $warnings_color: #FACC2E;
5
+
6
+ div.acts_as_monitor {
7
+ position: relative;
8
+ width: 16px;
9
+
10
+ img.acts_as_monitor_spinner {
11
+ position: absolute;
12
+ z-index:100;
13
+ top: 0px;
14
+ left: 0px;
15
+ }
16
+
17
+ div.acts_as_monitor_window {
18
+ position: absolute;
19
+ z-index:100;
20
+ top: -50px;
21
+ left: 30px;
22
+
23
+ fieldset {
24
+ opacity: 1.0;
25
+ background-color: $background_color;
26
+ padding-left: 5px;
27
+ padding-right: 5px;
28
+ margin-left: 5px;
29
+ margin-right: 10px;
30
+ border: solid $border_color 1px;
31
+ -moz-border-radius:5px;
32
+ border-radius: 5px;
33
+ -webkit-border-radius: 5px;
34
+
35
+ legend {
36
+ -moz-border-radius:5px;
37
+ border-radius: 5px;
38
+ -webkit-border-radius: 5px;
39
+ border: solid $border_color 1px;
40
+ background-color: $border_color;
41
+ color: white;
42
+ }
43
+
44
+ h3 {
45
+ font-weight: normal;
46
+ text-align: center;
47
+ margin: 0px 0px 0px 0px;
48
+ padding-left: -5px;
49
+ padding-right: -5px;
50
+ padding-top: 3px;
51
+ padding-bottom: 3px;
52
+ }
53
+
54
+ section.acts_as_monitor_errors {
55
+ h3 {
56
+ background-color: $errors_color;
57
+ }
58
+
59
+ li{
60
+ list-style-image: url('acts_as_monitor_red.png');
61
+ }
62
+ }
63
+
64
+ section.acts_as_monitor_warnings {
65
+ h3 {
66
+ background-color: $warnings_color;
67
+ }
68
+
69
+ li{
70
+ list-style-image: url('acts_as_monitor_yellow.png');
71
+ }
72
+ }
73
+
74
+
75
+
76
+ }
77
+ }
78
+ }
metadata CHANGED
@@ -1,92 +1,65 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: acts_as_monitor
3
- version: !ruby/object:Gem::Version
4
- hash: 31
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.0.0
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 0
9
- - 4
10
- version: 1.0.4
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Andrea Bignozzi
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2012-07-13 00:00:00 Z
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
12
+ date: 2013-11-08 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
21
15
  name: rails
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
24
17
  none: false
25
- requirements:
26
- - - ~>
27
- - !ruby/object:Gem::Version
28
- hash: 27
29
- segments:
30
- - 3
31
- - 0
32
- - 14
33
- version: 3.0.14
18
+ requirements:
19
+ - - <
20
+ - !ruby/object:Gem::Version
21
+ version: 4.0.0
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
24
+ version: 3.1.0
34
25
  type: :runtime
35
- version_requirements: *id001
36
- - !ruby/object:Gem::Dependency
37
- name: rake
38
- prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
40
- none: false
41
- requirements:
42
- - - ">="
43
- - !ruby/object:Gem::Version
44
- hash: 3
45
- segments:
46
- - 0
47
- version: "0"
48
- type: :development
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: rspec
52
26
  prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
27
+ version_requirements: !ruby/object:Gem::Requirement
54
28
  none: false
55
- requirements:
56
- - - ">="
57
- - !ruby/object:Gem::Version
58
- hash: 3
59
- segments:
60
- - 0
61
- version: "0"
62
- type: :development
63
- version_requirements: *id003
29
+ requirements:
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: 4.0.0
33
+ - - ! '>='
34
+ - !ruby/object:Gem::Version
35
+ version: 3.1.0
64
36
  description: Monitor model via private methods warn_*? and error_*?
65
- email:
37
+ email:
66
38
  - skylord73@gmail.com
67
39
  executables: []
68
-
69
40
  extensions: []
70
-
71
41
  extra_rdoc_files: []
72
-
73
- files:
74
- - app/views/acts_as_monitor/monitors/show.html.erb
75
- - app/helpers/acts_as_monitor_helper.rb
42
+ files:
43
+ - app/assets/images/acts_as_monitor_green.png
44
+ - app/assets/images/acts_as_monitor_red.png
45
+ - app/assets/images/acts_as_monitor_spinner.gif
46
+ - app/assets/images/acts_as_monitor_yellow.png
47
+ - app/assets/javascripts/acts_as_monitor.js.coffee
48
+ - app/assets/javascripts/acts_as_monitor_javascript.js.erb.old
76
49
  - app/controllers/acts_as_monitor/monitors_controller.rb
77
- - lib/acts_as_monitor.rb
50
+ - app/helpers/acts_as_monitor_helper.rb
51
+ - app/views/acts_as_monitor/monitors/_show.html.erb
52
+ - app/views/acts_as_monitor/monitors/show.js.erb
78
53
  - lib/acts_as_monitor/engine.rb
79
54
  - lib/acts_as_monitor/exceptions.rb
80
- - lib/acts_as_monitor/version.rb
81
55
  - lib/acts_as_monitor/monitor.rb
56
+ - lib/acts_as_monitor/version.rb
57
+ - lib/acts_as_monitor.rb
82
58
  - lib/generators/acts_as_monitor/install/install_generator.rb
83
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor.it.yml
84
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor_green.png
85
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor_yellow.png
86
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor_loading.gif
87
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor_red.png
88
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor.css
89
- - lib/generators/acts_as_monitor/install/templates/acts_as_monitor_javascript.js
59
+ - lib/generators/acts_as_monitor/install/templates/config/locales/acts_as_monitor.en.yml
60
+ - lib/generators/acts_as_monitor/install/templates/config/locales/acts_as_monitor.it.yml
61
+ - lib/generators/acts_as_monitor/install/templates/vendor/assets/stylesheets/acts_as_monitor.css.scss
62
+ - config/locales/acts_as_monitor.it.yml
90
63
  - config/routes.rb
91
64
  - Rakefile
92
65
  - Gemfile
@@ -95,36 +68,26 @@ files:
95
68
  - LICENSE
96
69
  homepage:
97
70
  licenses: []
98
-
99
71
  post_install_message:
100
72
  rdoc_options: []
101
-
102
- require_paths:
73
+ require_paths:
103
74
  - lib
104
- required_ruby_version: !ruby/object:Gem::Requirement
75
+ required_ruby_version: !ruby/object:Gem::Requirement
105
76
  none: false
106
- requirements:
107
- - - ">="
108
- - !ruby/object:Gem::Version
109
- hash: 3
110
- segments:
111
- - 0
112
- version: "0"
113
- required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ! '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
114
82
  none: false
115
- requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- hash: 3
119
- segments:
120
- - 0
121
- version: "0"
83
+ requirements:
84
+ - - ! '>='
85
+ - !ruby/object:Gem::Version
86
+ version: '0'
122
87
  requirements: []
123
-
124
88
  rubyforge_project:
125
- rubygems_version: 1.8.24
89
+ rubygems_version: 1.8.23
126
90
  signing_key:
127
91
  specification_version: 3
128
92
  summary: Monitor models
129
93
  test_files: []
130
-
@@ -1,26 +0,0 @@
1
- <% if @monitor %>
2
- <fieldset class='acts_as_monitor_status_window'>
3
- <legend class='acts_as_monitor_status_window'><%= @monitor.class.human_name %></legend>
4
- <% @status = @monitor.status %>
5
- <% @li_scope = "acts_as_monitor.messages.#{@monitor.class.name.underscore.gsub('/','_')}"%>
6
- <% unless @status[:error].blank? %>
7
- <h3 class="acts_as_monitor_errors_title"><%=I18n.t(:errors, :scope => "acts_as_monitor.messages") %></h3>
8
- <ul class="acts_as_monitor_list_errors">
9
- <%@status[:error].each do |error| %>
10
- <li class= "acts_as_monitor_list_errors"><%=I18n.t(error, :scope=> @li_scope, :default => error.to_s) %></li>
11
- <% end %>
12
- </ul>
13
- <% end %>
14
- <% unless @status[:warn].blank? %>
15
- <h3 class="acts_as_monitor_warnings_title"><%=I18n.t(:warnings, :scope => "acts_as_monitor.messages") %></h3>
16
- <ul class="acts_as_monitor_list_warnings">
17
- <%@status[:warn].each do |warn| %>
18
- <li class="acts_as_monitor_list_warnings"><%=I18n.t(warn, :scope=> @li_scope, :default => warn.to_s) %></li>
19
- <% end %>
20
- </ul>
21
- <% end %>
22
- <% else %>
23
- <p><%= I18n.t(:missing_method, :scope=> "acts_as_monitor.errors", :default => "Add acts_as_monitor to monitored Class") %></p>
24
- <% end %>
25
-
26
-
@@ -1,48 +0,0 @@
1
- .acts_as_monitor_status_window{
2
- background-color: #F2F2F2;
3
- border: solid black 1px;
4
- opacity: 0.9;
5
- width: 150px;
6
- }
7
-
8
- .acts_as_monitor_status_window legend{
9
- opacity: 1.0;
10
- background-color: #F2F2F2;
11
- padding-left: 5px;
12
- padding-right: 5px;
13
- margin-left: 5px;
14
- margin-right: 10px;
15
-
16
- }
17
-
18
- .acts_as_monitor_status_window h3.acts_as_monitor_errors_title{
19
- font-weight: normal;
20
- background-color: red;
21
- text-align: center;
22
- padding-left: 5px;
23
- padding-right: 5px;
24
- padding-top: 3px;
25
- padding-bottom: 3px;
26
- }
27
-
28
- .acts_as_monitor_status_window h3.acts_as_monitor_warnings_title{
29
- font-weight: normal;
30
- background-color: #FACC2E;
31
- text-align: center;
32
- padding-left: 5px;
33
- padding-right: 5px;
34
- padding-top: 3px;
35
- padding-bottom: 3px;
36
- }
37
-
38
- .acts_as_monitor_status_window ul{
39
- margin-left: 10px;
40
- }
41
-
42
- li.acts_as_monitor_list_errors{
43
- list-style-image: url('../images/acts_as_monitor_red.png');
44
- }
45
-
46
- li.acts_as_monitor_list_warnings{
47
- list-style-image: url('../images/acts_as_monitor_yellow.png');
48
- }