* folder validation completed

* fixed Issue 18: DMSF menu is not always selected

git-svn-id: http://redmine-dmsf.googlecode.com/svn/trunk/redmine_dmsf@67 5e329b0b-a2ee-ea63-e329-299493fc886d
This commit is contained in:
vit.jonas@gmail.com 2011-05-21 15:44:07 +00:00
parent f9f5f3ae8a
commit 0add714cbd
4 changed files with 18 additions and 0 deletions

View File

@ -19,6 +19,8 @@
class DmsfDetailController < ApplicationController
unloadable
menu_item :dmsf
before_filter :find_project
before_filter :authorize
before_filter :find_parent, :only => [:folder_new, :create_folder, :save_folder]
@ -52,6 +54,10 @@ class DmsfDetailController < ApplicationController
end
def save_folder
unless params[:dmsf_folder]
redirect_to :controller => "dmsf", :action => "index", :id => @project, :folder_id => @folder
return
end
@pathfolder = copy_folder(@folder)
@folder.attributes = params[:dmsf_folder]
if @folder.save

View File

@ -19,6 +19,8 @@
class DmsfStateController < ApplicationController
unloadable
menu_item :dmsf
before_filter :find_project
before_filter :authorize
before_filter :find_folder, :only => [:folder_notify_activate, :folder_notify_deactivate]

View File

@ -36,6 +36,9 @@ class DmsfFile < ActiveRecord::Base
belongs_to :deleted_by_user, :class_name => "User", :foreign_key => "deleted_by_user_id"
validates_presence_of :name
validates_format_of :name, :with => DmsfFolder.invalid_characters,
:message => "contains invalid character(s)"
validate_on_create :validates_name_uniqueness
def validates_name_uniqueness

View File

@ -18,6 +18,10 @@
class DmsfFolder < ActiveRecord::Base
unloadable
cattr_reader :invalid_characters
@@invalid_characters = /\A[^\/\\\?":<>]*\z/
belongs_to :project
belongs_to :folder, :class_name => "DmsfFolder", :foreign_key => "dmsf_folder_id"
has_many :subfolders, :class_name => "DmsfFolder", :foreign_key => "dmsf_folder_id", :order => "name ASC"
@ -28,6 +32,9 @@ class DmsfFolder < ActiveRecord::Base
validates_presence_of :name
validates_uniqueness_of :name, :scope => [:dmsf_folder_id, :project_id]
validates_format_of :name, :with => @@invalid_characters,
:message => "contains invalid character(s)"
validate :check_cycle
def check_cycle