67: def split_path(request)
68:
69: readconfig
70:
71: mount_name, path = request.key.split(File::Separator, 2)
72:
73: raise(ArgumentError, "Cannot find file: Invalid path '%s'" % mount_name) unless mount_name =~ %r{^[-\w]+$}
74:
75: return nil unless mount = find_mount(mount_name, request.environment)
76: if mount.name == "modules" and mount_name != "modules"
77:
78: path = "%s/%s" % [mount_name, path]
79: end
80:
81: if path == ""
82: path = nil
83: elsif path
84:
85: path = path.gsub(/\/+/, "/")
86: end
87:
88: return mount, path
89: end