Commit d4d02da8eb9762b2e0f9a0eebd809ed02fd0e4b6

Authored by Nick Recobra
1 parent dbde149f
Exists in master and in 1 other branch production

All errors atom feed.

app/controllers/errs_controller.rb
... ... @@ -4,7 +4,14 @@ class ErrsController < ApplicationController
4 4  
5 5 def index
6 6 app_scope = current_user.admin? ? App.all : current_user.apps
7   - @errs = Err.for_apps(app_scope).unresolved.ordered.paginate(:page => params[:page], :per_page => Err.per_page)
  7 + respond_to do |format|
  8 + format.html do
  9 + @errs = Err.for_apps(app_scope).unresolved.ordered.paginate(:page => params[:page], :per_page => Err.per_page)
  10 + end
  11 + format.atom do
  12 + @errs = Err.for_apps(app_scope).unresolved.ordered
  13 + end
  14 + end
8 15 end
9 16  
10 17 def all
... ...
app/models/user.rb
... ... @@ -10,7 +10,7 @@ class User
10 10  
11 11 field :name
12 12 field :admin, :type => Boolean, :default => false
13   -
  13 +
14 14 after_destroy :destroy_watchers
15 15  
16 16 validates_presence_of :name
... ...
app/views/errs/index.atom.builder 0 → 100644
... ... @@ -0,0 +1,11 @@
  1 +atom_feed do |feed|
  2 + feed.title("Errbit notices at #{root_url}")
  3 + feed.updated(@errs.first.created_at)
  4 +
  5 + for err in @errs
  6 + feed.entry(err, :url => app_err_url(err.app, err)) do |entry|
  7 + entry.title "[#{ err.environment }] #{ err.app.name } at \"#{ err.where }\""
  8 + entry.summary(err.notices.first.try(:message))
  9 + end
  10 + end
  11 +end
... ...
app/views/errs/index.html.haml
1 1 - content_for :title, 'Unresolved Errs'
  2 +- content_for :head do
  3 + = auto_discovery_link_tag :atom, errs_url(User.token_authentication_key => current_user.authentication_token, :format => "atom"), :title => "Errbit notices at #{root_url}"
2 4 - content_for :action_bar do
3 5 = link_to 'show resolved', all_errs_path, :class => 'button'
4 6 = render 'table', :errs => @errs
5 7 \ No newline at end of file
... ...