get_file_url (Raggle::Engine)

    # File raggle, line 5232
        def Engine::get_file_url(url, last_modified = nil)
          ret = [nil, nil]

          # work with a copy of the url
          path = url.dup

          # strip 'file:' prefix from URL
          path.gsub!(/^\w+?:/, '') if path =~ /^\w+?:/

          if stat = File::stat(path)
            stat_mtime = stat.mtime.to_s

            if last_modified
              # check last-modified header first
              if last_modified == stat_mtime
                # it's the same as the old content
                ret = [nil, last_modified]
              else
                # it's changed, get it again
                ret = get_file_url(url, nil)
              end
            else
              # no cache, just get the result
              if file = File::open(path)
                ret = [file.read, stat_mtime]
                file.close
              else
                raise "Couldn't open file URL: #$!"
              end
            end
          else
            raise "File URL Error: #$!"
          end

          # return URL content and last-modified header
          ret
        end