Class: Admin::ResourcesController

Inherits:
BaseController
  • Object
show all
Defined in:
vendor/plugins/resources/app/controllers/admin/resources_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'vendor/plugins/resources/app/controllers/admin/resources_controller.rb', line 12

def create
  @resource = Resource.create(params[:resource])

  unless params[:insert]
    if @resource.valid?
      flash[:notice] = "'#{@resource.title}' was successfully created."
      unless from_dialog?
        redirect_to :action => 'index'
      else
        render :text => "<script type='text/javascript'>parent.window.location = '#{admin_resources_url}';</script>"
      end
    else
      self.new # important for dialogs
      render :action => 'new'
    end
  else
    if @resource.valid?
      @resource_id = @resource.id
      @resource = nil
    end
    self.insert
  end
end

#indexObject



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'vendor/plugins/resources/app/controllers/admin/resources_controller.rb', line 36

def index
  if searching?
    @resources = Resource.paginate_search params[:search],
                                          :page => params[:page],
                                          :order => "created_at DESC"
  else
    @resources = Resource.paginate  :page => params[:page],
                                    :order => "created_at DESC"
  end

  if RefinerySetting.find_or_set(:group_resources_by_date_uploaded, true)
    @grouped_resources = []
    @resources.each do |resource|
      key = resource.created_at.strftime("%Y-%m-%d")
      resource_group = @grouped_resources.collect{|resources| resources.last if resources.first == key }.flatten.compact << resource
      (@grouped_resources.delete_if {|i| i.first == key}) << [key, resource_group]
    end
  end
end

#insertObject



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# File 'vendor/plugins/resources/app/controllers/admin/resources_controller.rb', line 56

def insert
  self.new if @resource.nil?

  @url_override = admin_resources_url(:dialog => from_dialog?, :insert => true)

  if params[:conditions].present?
    extra_condition = params[:conditions].split(',')

    extra_condition[1] = true if extra_condition[1] == "true"
    extra_condition[1] = false if extra_condition[1] == "false"
    extra_condition[1] = nil if extra_condition[1] == "nil"
    paginate_resources({extra_condition[0].to_sym => extra_condition[1]})
  else
    paginate_resources
  end
  render :action => "insert"
end

#newObject



6
7
8
9
10
# File 'vendor/plugins/resources/app/controllers/admin/resources_controller.rb', line 6

def new
  @resource = Resource.new if @resource.nil?

  @url_override = admin_resources_url(:dialog => from_dialog?)
end