* finished Issue 30: File upload strange behavior for files with same filename
git-svn-id: http://redmine-dmsf.googlecode.com/svn/trunk/redmine_dmsf@78 5e329b0b-a2ee-ea63-e329-299493fc886d
This commit is contained in:
parent
a4b1292071
commit
d1a72ce048
@ -126,13 +126,14 @@ class DmsfDetailController < ApplicationController
|
||||
end
|
||||
@revision.set_workflow(params[:workflow])
|
||||
|
||||
if @revision.save
|
||||
@file.name = @revision.name
|
||||
@file.folder = @revision.folder
|
||||
|
||||
if @revision.save && @file.valid?
|
||||
unless file_upload.nil?
|
||||
@revision.copy_file_content(file_upload)
|
||||
end
|
||||
|
||||
@file.name = @revision.name
|
||||
@file.folder = @revision.folder
|
||||
if @file.locked?
|
||||
DmsfFileLock.file_lock_state(@file, false)
|
||||
flash[:notice] = l(:notice_file_unlocked) + ", "
|
||||
|
||||
@ -39,11 +39,12 @@ class DmsfFile < ActiveRecord::Base
|
||||
validates_format_of :name, :with => DmsfFolder.invalid_characters,
|
||||
:message => l(:error_contains_invalid_character)
|
||||
|
||||
validate_on_create :validates_name_uniqueness
|
||||
validate :validates_name_uniqueness
|
||||
|
||||
def validates_name_uniqueness
|
||||
errors.add(:name, "has already been taken") if
|
||||
!DmsfFile.find_file_by_name(self.project, self.folder, self.name).nil?
|
||||
existing_file = DmsfFile.find_file_by_name(self.project, self.folder, self.name)
|
||||
errors.add(:name, "has already been taken") unless
|
||||
existing_file.nil? || existing_file.id == self.id
|
||||
end
|
||||
|
||||
acts_as_event :title => Proc.new {|o| "#{o.name}"},
|
||||
|
||||
@ -47,6 +47,7 @@
|
||||
<% end %>
|
||||
</h2>
|
||||
|
||||
<%= error_messages_for("file") %>
|
||||
<%= error_messages_for("revision") %>
|
||||
|
||||
<% if User.current.allowed_to?(:file_manipulation, @file.project) %>
|
||||
@ -155,7 +156,7 @@
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<% if @revision.valid? %>
|
||||
<% if @revision.valid? && @file.valid? %>
|
||||
<script type="text/javascript">
|
||||
jQuery(document).ready(function() {
|
||||
jQuery("#newRevisionFormContentToggle").text("[+]");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user