Fix: errors.add_to_base is not Rails3 compliant - changed with errors[:base] <<
Update: UI updates to better notify of locked status
This commit is contained in:
parent
86bc901965
commit
e3831b409f
@ -185,7 +185,7 @@ class DmsfController < ApplicationController
|
||||
if @delete_folder.delete
|
||||
flash[:notice] = l(:notice_folder_deleted)
|
||||
else
|
||||
flash[:error] = l(:error_folder_is_not_empty)
|
||||
flash[:error] = @delete_folder.errors[:base][0]
|
||||
end
|
||||
end
|
||||
redirect_to :controller => "dmsf", :action => "show", :id => @project, :folder_id => @folder
|
||||
|
||||
@ -152,7 +152,7 @@ class DmsfFilesController < ApplicationController
|
||||
log_activity("deleted")
|
||||
else
|
||||
# TODO: check this error handling
|
||||
@revision.errors.each {|e| flash[:error] = e[1]}
|
||||
@revision.errors.each {|e,msg| flash[:error] = msg}
|
||||
end
|
||||
end
|
||||
redirect_to :action => "show", :id => @file
|
||||
|
||||
@ -103,7 +103,7 @@ class DmsfFile < ActiveRecord::Base
|
||||
|
||||
def delete
|
||||
if locked_for_user?
|
||||
errors.add_to_base(l(:error_file_is_locked))
|
||||
errors[:base] << l(:error_file_is_locked)
|
||||
return false
|
||||
end
|
||||
if Setting.plugin_redmine_dmsf["dmsf_really_delete_files"]
|
||||
@ -204,7 +204,7 @@ class DmsfFile < ActiveRecord::Base
|
||||
|
||||
def move_to(project, folder)
|
||||
if self.locked_for_user?
|
||||
errors.add_to_base(l(:error_file_is_locked))
|
||||
errors[:base] << l(:error_file_is_locked)
|
||||
return false
|
||||
end
|
||||
|
||||
|
||||
@ -63,11 +63,11 @@ class DmsfFileRevision < ActiveRecord::Base
|
||||
|
||||
def delete(delete_all = false)
|
||||
if self.file.locked_for_user?
|
||||
errors.add_to_base(l(:error_file_is_locked))
|
||||
errors[:base] << l(:error_file_is_locked)
|
||||
return false
|
||||
end
|
||||
if !delete_all && self.file.revisions.length <= 1
|
||||
errors.add_to_base(l(:error_at_least_one_revision_must_be_present))
|
||||
errors[:base] << l(:error_at_least_one_revision_must_be_present)
|
||||
return false
|
||||
end
|
||||
dependent = DmsfFileRevision.find(:all, :conditions =>
|
||||
|
||||
@ -86,7 +86,13 @@ class DmsfFolder < ActiveRecord::Base
|
||||
end
|
||||
|
||||
def delete
|
||||
return false if !self.subfolders.visible.empty? || !self.files.visible.empty?
|
||||
if self.locked?
|
||||
errors[:base] << l(:error_folder_is_locked)
|
||||
return false
|
||||
elsif !self.subfolders.visible.empty? || !self.files.visible.empty?
|
||||
errors[:base] << l(:error_folder_is_not_empty)
|
||||
return false
|
||||
end
|
||||
destroy
|
||||
end
|
||||
|
||||
|
||||
@ -49,7 +49,7 @@
|
||||
<div class="controls" style="float: left">
|
||||
<%= submit_tag(l(:submit_download), :title => l(:title_download_checked), :name => "download_entries") %>
|
||||
<%= submit_tag(l(:submit_email), :title => l(:title_send_checked_by_email), :name => "email_entries") %>
|
||||
<% if User.current.allowed_to?(:file_manipulation, @project) %>
|
||||
<% if User.current.allowed_to?(:file_manipulation, @project) && (!@folder.nil? && !@folder.locked_for_user?) %>
|
||||
<button type="button" id="entries_delete_button" title="<%=l(:title_delete_checked)%>"><%=l(:button_delete)%></button>
|
||||
<% end %>
|
||||
</div>
|
||||
@ -81,7 +81,15 @@
|
||||
<%= render "custom_fields", :object => subfolder %>
|
||||
</td>
|
||||
<td class="size" title="<%= l(:title_total_size_of_all_files)%>"><%= number_to_human_size(subfolder.deep_size) %></td>
|
||||
<td class="modified"><%= subfolder.updated_at.strftime("%Y-%m-%d %H:%M") %></td>
|
||||
<td class="modified"><%= subfolder.updated_at.strftime("%Y-%m-%d %H:%M") %>
|
||||
<% if subfolder.locked_for_user? %>
|
||||
<%= link_to(image_tag("locked.png", :plugin => :redmine_dmsf),
|
||||
{:controller => "users", :action => "show", :id => subfolder.lock.reverse[0].user },
|
||||
:title => l(:title_locked_by_user, :user => subfolder.lock.reverse[0].user.to_s)) %>
|
||||
<% elsif subfolder.locked? %>
|
||||
<%= image_tag("lockedbycurrent.png", :title => l(:title_locked_by_you), :plugin => :redmine_dmsf) %>
|
||||
<% end %>
|
||||
</td>
|
||||
<td class="version"></td>
|
||||
<td class="author"><%= h(subfolder.user) %></td>
|
||||
<td class="actions">
|
||||
@ -103,7 +111,7 @@
|
||||
<div style="float: left">
|
||||
<%= link_to(image_tag("edit.png", :class =>"detail_icon"),
|
||||
{:action => "edit", :id => @project, :folder_id => subfolder },
|
||||
:title => l(:link_edit, :title => h(subfolder.title))) %>
|
||||
:title => l(:link_edit, :title => h(subfolder.title))) unless subfolder.locked_for_user? %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div style="float: right; width: 44px;">
|
||||
@ -115,7 +123,7 @@
|
||||
:id => @project, :folder_id => subfolder)}')",
|
||||
:title => l(:title_unlock_file))%>
|
||||
<% else %>
|
||||
<%= image_tag("locked.png", :plugin => :redmine_dmsf, :title => l(:title_folder_parent_locked, :name => subfolder.folder.lock.reverse[0].folder.title)) %>
|
||||
<%= image_tag("locked.png", :plugin => :redmine_dmsf, :title => l(:title_folder_parent_locked, :name => subfolder.lock.reverse[0].folder.title)) %>
|
||||
<% end %>
|
||||
<% else %>
|
||||
<%= link_to_function(image_tag("lock.png", :plugin => :redmine_dmsf),
|
||||
@ -127,7 +135,7 @@
|
||||
<% end %>
|
||||
<%= link_to_function(image_tag("delete.png", :plugin => :redmine_dmsf),
|
||||
"confirmation_link('#{url_for(:action => 'delete', :id => @project, :folder_id => @folder, :delete_folder_id => subfolder)}')",
|
||||
:title => l(:title_delete))%>
|
||||
:title => l(:title_delete)) unless (subfolder.locked_for_user?)%>
|
||||
</div>
|
||||
</div>
|
||||
<br class="clear" />
|
||||
@ -307,5 +315,5 @@ sUrl = "jquery.dataTables/#{I18n.locale.to_s.downcase}.json" if I18n.locale && !
|
||||
</script>
|
||||
<% end %>
|
||||
|
||||
<%= render(:partial => "multi_upload") if User.current.allowed_to?(:file_manipulation, @project) %>
|
||||
<%= render(:partial => "multi_upload") if (User.current.allowed_to?(:file_manipulation, @project) && (!@folder.nil? && !@folder.locked_for_user?)) %>
|
||||
<br />
|
||||
|
||||
@ -75,7 +75,7 @@ class DmsfConvertDocuments
|
||||
if dry
|
||||
puts "Dry check folder: " + folder.title
|
||||
if folder.invalid?
|
||||
folder.errors.each {|e| puts "#{e[0]}: #{e[1]}"}
|
||||
folder.errors.each {|e,msg| puts "#{e}: #{msg}"}
|
||||
end
|
||||
else
|
||||
begin
|
||||
@ -120,7 +120,7 @@ class DmsfConvertDocuments
|
||||
if dry
|
||||
puts "Dry check file: " + file.name
|
||||
if file.invalid?
|
||||
file.errors.each {|e| puts "#{e[0]}: #{e[1]}"}
|
||||
file.errors.each {|e.msg| puts "#{e}: #{msg}"}
|
||||
end
|
||||
else
|
||||
file.save!
|
||||
@ -158,7 +158,7 @@ class DmsfConvertDocuments
|
||||
if dry
|
||||
puts "Dry check revision: " + revision.title
|
||||
if revision.invalid?
|
||||
revision.errors.each {|e| puts "#{e[0]}: #{e[1]}"}
|
||||
revision.errors.each {|e,msg| puts "#{e}: #{msg}"}
|
||||
end
|
||||
else
|
||||
revision.save!
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user