10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/mojito/rendering/templates.rb', line 10
def template(*args, &block)
locals = Hash === args.last ? args.pop : self.request.locals
template = if args.size == 2
Tilt[args.first].new { args.last }
elsif args.size == 1
file = Where.cdir(1) + args.first
Mojito::R::StatusCodes.instance_method(:not_found!).bind(self).call unless file.exist?
if not response.include?('Content-Type') and %r{\.(?<extension>\w+)\.\w+$} =~ file.to_s
response['Content-Type'] = MIME::Types.type_for(extension)
end
Tilt[file.to_s].new file.to_s
end
response.write template.render(self, locals, &block)
end
|