Class: UserImportFilesController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/user_import_files_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject

POST /user_import_files POST /user_import_files.json



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'app/controllers/user_import_files_controller.rb', line 59

def create
  @user_import_file = UserImportFile.new(user_import_file_params)
  @user_import_file.user = current_user

  respond_to do |format|
    if @user_import_file.save
      if @user_import_file.mode == 'import'
        Resque.enqueue(UserImportFileQueue, @user_import_file.id)
      end
      format.html { redirect_to @user_import_file, notice: t('import.successfully_created', model: t('activerecord.models.user_import_file')) }
      format.json { render json: @user_import_file, status: :created, location: @user_import_file }
    else
      prepare_options
      format.html { render action: "new" }
      format.json { render json: @user_import_file.errors, status: :unprocessable_entity }
    end
  end
end

#destroyObject

DELETE /user_import_files/1 DELETE /user_import_files/1.json



98
99
100
101
102
103
104
105
# File 'app/controllers/user_import_files_controller.rb', line 98

def destroy
  @user_import_file.destroy

  respond_to do |format|
    format.html { redirect_to(user_import_files_url) }
    format.json { head :no_content }
  end
end

#editObject

GET /user_import_files/1/edit



54
55
# File 'app/controllers/user_import_files_controller.rb', line 54

def edit
end

#indexObject

GET /user_import_files GET /user_import_files.json



7
8
9
10
11
12
13
14
# File 'app/controllers/user_import_files_controller.rb', line 7

def index
  @user_import_files = UserImportFile.order('id DESC').page(params[:page])

  respond_to do |format|
    format.html # index.html.erb
    format.json { render json: @user_import_files }
  end
end

#newObject

GET /user_import_files/new GET /user_import_files/new.json



42
43
44
45
46
47
48
49
50
51
# File 'app/controllers/user_import_files_controller.rb', line 42

def new
  @user_import_file = UserImportFile.new
  @user_import_file.default_user_group = current_user.profile.user_group
  @user_import_file.default_library = current_user.profile.library

  respond_to do |format|
    format.html # new.html.erb
    format.json { render json: @user_import_file }
  end
end

#showObject

GET /user_import_files/1 GET /user_import_files/1.json



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'app/controllers/user_import_files_controller.rb', line 18

def show
  if @user_import_file.user_import.path
    unless ENV['ENJU_STORAGE'] == 's3'
      file = @user_import_file.user_import.path
    end
  end
  @user_import_results = @user_import_file.user_import_results.page(params[:page])

  respond_to do |format|
    format.html # show.html.erb
    format.json { render json: @user_import_file }
    format.download {
      if ENV['ENJU_STORAGE'] == 's3'
        send_data Faraday.get(@user_import_file.user_import.expiring_url).body.force_encoding('UTF-8'),
          filename: File.basename(@user_import_file.user_import_file_name), type: 'application/octet-stream'
      else
        send_file file, filename: @user_import_file.user_import_file_name, type: 'application/octet-stream'
      end
    }
  end
end

#updateObject

PUT /user_import_files/1 PUT /user_import_files/1.json



80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'app/controllers/user_import_files_controller.rb', line 80

def update
  respond_to do |format|
    if @user_import_file.update_attributes(user_import_file_params)
      if @user_import_file.mode == 'import'
        Resque.enqueue(UserImportFileQueue, @user_import_file.id)
      end
      format.html { redirect_to @user_import_file, notice: t('controller.successfully_updated', model: t('activerecord.models.user_import_file')) }
      format.json { head :no_content }
    else
      prepare_options
      format.html { render action: "edit" }
      format.json { render json: @user_import_file.errors, status: :unprocessable_entity }
    end
  end
end