Commit 2ccb6626 by Xuan Trung Le

fix bugs

parent 4e7d7240
......@@ -15,13 +15,14 @@ class AppliesController < ApplicationController
@application = ApplyJob.new(application_params)
@application.user = current_user
@application.job_id = session[:job_id]
session[:candidate] = {name: application_params[:name],
@application.cv = current_user.cv if application_params[:cv].blank?
session[:candidate] = { name: application_params[:name],
email: application_params[:email],
cv: application_params[:cv]}
cv: (application_params[:cv] || current_user.cv) }
unless @application.valid?
flash[:error] = @application.errors.full_messages.to_sentence
redirect_to apply_path(job_id: session[:job_id])
redirect_to apply_applies_path(job_id: session[:job_id])
return
end
end
......@@ -30,6 +31,7 @@ class AppliesController < ApplicationController
@application = ApplyJob.new(user: current_user,
job_id: session[:job_id])
@application.attributes = session[:candidate]
@application.cv = current_user.cv if @application.cv.file.nil?
if @application.save
flash[:notice] = 'Congratulation! Job was successfully applied'
......
class ApplyJob < ApplicationRecord
belongs_to :job
belongs_to :user
validates :cv, presence: true
validates_size_of :cv, maximum: 5.megabytes, message: 'size should be less than 5MB'
validates :email, presence: true
validates :name, presence: true
# CarrierWave
mount_uploader :cv, CvUploader
end
......@@ -66,8 +66,4 @@ class Job < ApplicationRecord
def self.filter_link_exist(links)
links - Job.where(original_link: links).pluck(:original_link)
end
def applied_at(user_id)
apply_jobs.select{ |application| application.user_id = user_id }.first.created_at
end
end
......@@ -5,7 +5,7 @@
<p class="text-info">1. Apply form</p>
</div>
<div class="form-horizontal">
<%= form_for @application, url: confirm_applies_path do |f| %>
<%= form_for(@application, url: confirm_applies_path, html: {method: :post, multipart: true}) do |f| %>
<div class="form-group">
<%= f.label :Email, 'Email:', class: "control-label col-md-2" %>
<div class="col-sm-10">
......@@ -23,7 +23,7 @@
<div class="form-group">
<%= f.label :cv, 'Cv:',class: "control-label col-md-2" %>
<div class="col-sm-10">
<label for="apply_job_cv"><%= @application.cv %></label>
<label for="apply_job_cv"><%= @application.cv.filename %></label>
<%= f.file_field :cv, class: "form-control" %>
</label>
</div>
......
......@@ -7,7 +7,7 @@
<div class="col-md-offset-2 col-md-10">
<p>Fullname: <%= @application.name %></p>
<p>Email: <%= @application.email %></p>
<p>Cv: <%= @application.cv %></p>
<p>Cv: <%= @application.cv.filename %></p>
<div class="col-md-10">
<%= button_to "Edit",
apply_applies_path(job_id: session[:job_id]),
......
......@@ -51,7 +51,7 @@
<div class="col-md-6">
<%= button_to "Favorite",
job_favorites_path(job_id: @job.id),
class: "btn btn-primary btn-lg" %>
class: "btn btn-primary btn-lg btn-block" %>
</div>
</div>
</div>
......
......@@ -10,7 +10,7 @@
<p>
<span><strong>Location:</strong> <%= "#{job.location}" %></span>
<span><strong>Salary:</strong> <%= job.salary %></span>
<span class="navbar-right"><strong>Applied at:</strong> <%= job.applied_at(current_user.id).strftime('%m/%d/%y') %></span>
<span class="navbar-right"><strong>Applied at:</strong> <%= job.created_at.strftime('%m/%d/%y') %></span>
</p>
</div>
</div>
......
......@@ -36,7 +36,7 @@ Rails.application.routes.draw do
get 'download' => 'my_pages#download_cv'
end
end
resources :applies do
resources :applies, path: '', only: [] do
collection do
get :apply
post :confirm
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment