From de9370961a49dfd7009fecf846aac32bc836a1e4 Mon Sep 17 00:00:00 2001
From: Karel Picman
Date: Fri, 16 Aug 2013 15:37:45 +0200
Subject: [PATCH] Email notification failures when files are locked fixed
---
app/controllers/dmsf_files_controller.rb | 2 +-
app/controllers/dmsf_files_copy_controller.rb | 4 ++--
app/models/dmsf_file.rb | 8 +++-----
app/views/dmsf_mailer/files_deleted.html.erb | 7 ++++---
app/views/dmsf_mailer/files_deleted.text.erb | 6 ++++--
.../dmsf_mailer/files_deleted.text.html.rhtml | 17 -----------------
.../dmsf_mailer/files_deleted.text.plain.rhtml | 5 -----
7 files changed, 14 insertions(+), 35 deletions(-)
delete mode 100644 app/views/dmsf_mailer/files_deleted.text.html.rhtml
delete mode 100644 app/views/dmsf_mailer/files_deleted.text.plain.rhtml
diff --git a/app/controllers/dmsf_files_controller.rb b/app/controllers/dmsf_files_controller.rb
index 6b107d33..cd5430b2 100644
--- a/app/controllers/dmsf_files_controller.rb
+++ b/app/controllers/dmsf_files_controller.rb
@@ -125,7 +125,7 @@ class DmsfFilesController < ApplicationController
begin
DmsfMailer.files_updated(User.current, [@file]).deliver
rescue ActionView::MissingTemplate => e
- Rails.logger.error "Could not send email notifications: " + e
+ Rails.logger.error "Could not send email notifications: #{e.message}"
end
redirect_to :action => "show", :id => @file
else
diff --git a/app/controllers/dmsf_files_copy_controller.rb b/app/controllers/dmsf_files_copy_controller.rb
index c1aba7f9..016d0402 100644
--- a/app/controllers/dmsf_files_copy_controller.rb
+++ b/app/controllers/dmsf_files_copy_controller.rb
@@ -72,7 +72,7 @@ class DmsfFilesCopyController < ApplicationController
begin
DmsfMailer.files_updated(User.current, [new_file]).deliver
rescue ActionView::MissingTemplate => e
- Rails.logger.error "Could not send email notifications: " + e
+ Rails.logger.error "Could not send email notifications: #{e.message}"
end
redirect_to :controller => "dmsf_files", :action => "show", :id => new_file
@@ -110,7 +110,7 @@ class DmsfFilesCopyController < ApplicationController
# TODO: implement proper mail notification
DmsfMailer.files_updated(User.current, [@file]).deliver
rescue ActionView::MissingTemplate => e
- Rails.logger.error "Could not send email notifications: " + e
+ Rails.logger.error "Could not send email notifications: #{e.message}"
end
redirect_to :controller => "dmsf_files", :action => "show", :id => @file
diff --git a/app/models/dmsf_file.rb b/app/models/dmsf_file.rb
index 6fd87643..ca5b7461 100644
--- a/app/models/dmsf_file.rb
+++ b/app/models/dmsf_file.rb
@@ -125,7 +125,7 @@ class DmsfFile < ActiveRecord::Base
end
def title
- self.last_revision.title
+ self.last_revision ? self.last_revision.title : self.name
end
def description
@@ -150,10 +150,8 @@ class DmsfFile < ActiveRecord::Base
path
end
- def dmsf_path_str
- path = self.dmsf_path
- string_path = path.map { |element| element.title }
- string_path.join("/")
+ def dmsf_path_str
+ self.dmsf_path.map { |element| element.title }.join('/')
end
def notify?
diff --git a/app/views/dmsf_mailer/files_deleted.html.erb b/app/views/dmsf_mailer/files_deleted.html.erb
index 6c930a4e..f0eb6fe0 100644
--- a/app/views/dmsf_mailer/files_deleted.html.erb
+++ b/app/views/dmsf_mailer/files_deleted.html.erb
@@ -8,9 +8,10 @@
deleted DMSF files in project <%= @project.name %>:
<% @files.each do |file| %>
- <%= h(file.dmsf_path_str) %> (<%= file.name %>),
- <%= number_to_human_size(file.last_revision.size) %>,
- version: <%= file.last_revision.major_version %>.<%= file.last_revision.minor_version %>
+ <%= h(file.dmsf_path_str) %> (<%= file.name %>)
+ <% if file.last_revision %>
+ , <%= number_to_human_size(file.last_revision.size) %>, version: <%= file.last_revision.major_version %>.<%= file.last_revision.minor_version %>
+ <% end %>
<% end %>
- User <%= link_to(h(@user), {:only_path => false, :controller => "users", :action => "show", :id => @user }) %>
- deleted DMSF files in project <%= @project.name %>:
- <% @files.each do |file| %>
-
- <%= h(file.dmsf_path_str) %> (<%= file.name %>),
- <%= number_to_human_size(file.last_revision.size) %>,
- version: <%= file.last_revision.major_version %>.<%= file.last_revision.minor_version %>
-
- <% end %>
-
diff --git a/app/views/dmsf_mailer/files_deleted.text.erb b/app/views/dmsf_mailer/files_deleted.text.erb
index 52905590..fd6fcbb5 100644
--- a/app/views/dmsf_mailer/files_deleted.text.erb
+++ b/app/views/dmsf_mailer/files_deleted.text.erb
@@ -1,5 +1,7 @@
User <%= @user %> deleted DMSF files in project <%= @project.name %>:
<% @files.each do |file| %>
- <%= file.dmsf_path_str %> (<%= file.name %>), <%= number_to_human_size(file.last_revision.size) %>, version: <%= file.last_revision.major_version %>.<%= file.last_revision.minor_version %>
-
+ <%= file.dmsf_path_str %> (<%= file.name %>)
+ <% if file.last_revision %>
+ , <%= number_to_human_size(file.last_revision.size) %>, version: <%= file.last_revision.major_version %>.<%= file.last_revision.minor_version %>
+ <% end %>
<% end %>
\ No newline at end of file
diff --git a/app/views/dmsf_mailer/files_deleted.text.html.rhtml b/app/views/dmsf_mailer/files_deleted.text.html.rhtml
deleted file mode 100644
index 6c930a4e..00000000
--- a/app/views/dmsf_mailer/files_deleted.text.html.rhtml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-