Sha256: b05163c8a88b4365ddb37812962ab56905be8727f077f7c3cf1ab672b725a331

Contents?: true

Size: 1.15 KB

Versions: 1

Compression:

Stored size: 1.15 KB

Contents

require 'el_finder/action'

module Optimacms


  class ElfinderController < ApplicationController
    skip_before_filter :verify_authenticity_token, :only => ['elfinder']

    def index
       render :layout => false
    end

    def elfinder
      rootpath = File.join(Rails.public_path, 'uploads')
      rooturl = '/uploads'

      h, r = ElFinder::Connector.new(
        :root => rootpath,
        :url => rooturl,
        :perms => {
           #/^(Welcome|README)$/ => {:read => true, :write => false, :rm => false},
           '.' => {:read => true, :write => true, :rm => true}, # '.' is the proper way to specify the home/root directory.
           #/^test$/ => {:read => true, :write => true, :rm => false},
           #'logo.png' => {:read => true},
           #/\.png$/ => {:read => false} # This will cause 'logo.png' to be unreadable.
           # Permissions err on the safe side. Once false, always false.
        },
        :thumbs => true
      ).run(params)

      headers.merge!(h)

      if r.empty?
        (render :nothing => true) and return
      end

      render :json => r, :layout => false
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
optimacms-0.1.1 app/controllers/optimacms/elfinder_controller.rb