class FMDirs

FilesManage holds different classes that store information about the managed files.

Attributes

dir_base[RW]

Public Class Methods

accents_replace(str) click to toggle source
# File Entities/FilesManage.rb, line 42
def self.accents_replace(str)
  str = str.downcase.gsub(/ /, '_')
  accents = Hash[*%w( a àáâä e éèêë i ìíîï o òóôöœ u ùúûü c ç ss ß )]
  dputs(4) { "String was #{str}" }
  accents.each { |k, v|
    str.gsub!(/[#{v}]/, k)
  }
  str.gsub!(/[^a-z0-9_\.-]/, '_')
  dputs(4) { "String is #{str}" }
  str
end

Public Instance Methods

base_dirs() click to toggle source
# File Entities/FilesManage.rb, line 21
def base_dirs
  # puts @data
  return search_by_parent('^$')
end
create(fields) click to toggle source
Calls superclass method
# File Entities/FilesManage.rb, line 7
def create(fields)
  if search_by_path(fields._name, fields._parent)
    return
  end
  super(fields)
end
search_by_path(n, p = nil) click to toggle source
# File Entities/FilesManage.rb, line 34
def search_by_path(n, p = nil)
  if p
    filter_by(name: "^#{n}$", parent: "^#{p}$").first
  else
    find_by_name("^#{n}$")
  end
end
setup_data() click to toggle source
# File Entities/FilesManage.rb, line 14
def setup_data
  @dir_base = '/opt/Files'
  value_str :name
  # If the parent is empty, this is a top-dir
  value_str :parent
end
sub_dirs(base) click to toggle source
# File Entities/FilesManage.rb, line 26
def sub_dirs(base)
  name = base
  if name.class != String
    name = base._name
  end
  return search_by_parent(name)
end