Commit 4af98194deed0d9eb5e3480c82a5ce7f9711066f
Committed by
Rafael Manzo
1 parent
bee9ea0a
Exists in
colab
and in
4 other branches
Refactored Project_controller.rb and project_image.rb
Showing
3 changed files
with
26 additions
and
32 deletions
Show diff stats
app/controllers/projects_controller.rb
| @@ -23,7 +23,7 @@ class ProjectsController < ApplicationController | @@ -23,7 +23,7 @@ class ProjectsController < ApplicationController | ||
| 23 | @project = Project.new(project_params) | 23 | @project = Project.new(project_params) |
| 24 | respond_to do |format| | 24 | respond_to do |format| |
| 25 | create_and_redir(format) | 25 | create_and_redir(format) |
| 26 | - add_image_url(project_params[:image_url], @project.id) | 26 | + ProjectImage.create(image_url: project_params[:image_url],project_id: @project.id ) |
| 27 | end | 27 | end |
| 28 | end | 28 | end |
| 29 | 29 | ||
| @@ -39,12 +39,18 @@ class ProjectsController < ApplicationController | @@ -39,12 +39,18 @@ class ProjectsController < ApplicationController | ||
| 39 | # GET /projects/1/edit.json | 39 | # GET /projects/1/edit.json |
| 40 | def edit | 40 | def edit |
| 41 | set_project | 41 | set_project |
| 42 | - check_no_image(@project.id) | 42 | + @project_image = ProjectImage.find_by_project_id(@project.id) |
| 43 | + if !@project_image.nil? | ||
| 44 | + @project_image.check_no_image | ||
| 45 | + end | ||
| 43 | end | 46 | end |
| 44 | 47 | ||
| 45 | def update | 48 | def update |
| 46 | set_project | 49 | set_project |
| 47 | - update_image_url(project_params[:image_url], @project.id) | 50 | + @project_image = ProjectImage.find_by_project_id(@project.id) |
| 51 | + if !@project_image.nil? | ||
| 52 | + @project_image.update(project_params[:image_url]) | ||
| 53 | + end | ||
| 48 | if @project.update(project_params) | 54 | if @project.update(project_params) |
| 49 | redirect_to(project_path(@project.id)) | 55 | redirect_to(project_path(@project.id)) |
| 50 | else | 56 | else |
| @@ -79,7 +85,6 @@ class ProjectsController < ApplicationController | @@ -79,7 +85,6 @@ class ProjectsController < ApplicationController | ||
| 79 | def create_and_redir(format) | 85 | def create_and_redir(format) |
| 80 | if @project.save | 86 | if @project.save |
| 81 | current_user.project_ownerships.create project_id: @project.id | 87 | current_user.project_ownerships.create project_id: @project.id |
| 82 | - | ||
| 83 | format.html { redirect_to project_path(@project.id), notice: 'Project was successfully created.' } | 88 | format.html { redirect_to project_path(@project.id), notice: 'Project was successfully created.' } |
| 84 | format.json { render action: 'show', status: :created, location: @project } | 89 | format.json { render action: 'show', status: :created, location: @project } |
| 85 | else | 90 | else |
| @@ -87,32 +92,4 @@ class ProjectsController < ApplicationController | @@ -87,32 +92,4 @@ class ProjectsController < ApplicationController | ||
| 87 | format.json { render json: @project.errors, status: :unprocessable_entity } | 92 | format.json { render json: @project.errors, status: :unprocessable_entity } |
| 88 | end | 93 | end |
| 89 | end | 94 | end |
| 90 | - | ||
| 91 | - def add_image_url url,project_id | ||
| 92 | - if url.blank? | ||
| 93 | - url = "no-image-available.png" | ||
| 94 | - end | ||
| 95 | - ProjectImage.create(image_url: url,project_id: project_id ) | ||
| 96 | - end | ||
| 97 | - | ||
| 98 | - def update_image_url url,project_id | ||
| 99 | - if url.blank? | ||
| 100 | - url = "no-image-available.png" | ||
| 101 | - end | ||
| 102 | - @project_image = ProjectImage.find_by_project_id(project_id) | ||
| 103 | - if !@project_image.blank? | ||
| 104 | - @project_image.update(image_url: url) | ||
| 105 | - end | ||
| 106 | - end | ||
| 107 | - | ||
| 108 | - def check_no_image project_id | ||
| 109 | - @project_image = ProjectImage.find_by_project_id(project_id) | ||
| 110 | - | ||
| 111 | - if !@project_image.blank? | ||
| 112 | - if @project_image.image_url == "no-image-available.png" | ||
| 113 | - @project_image.image_url = "" | ||
| 114 | - end | ||
| 115 | - end | ||
| 116 | - end | ||
| 117 | - | ||
| 118 | end | 95 | end |
app/models/project.rb
| @@ -13,4 +13,5 @@ class Project < KalibroGatekeeperClient::Entities::Project | @@ -13,4 +13,5 @@ class Project < KalibroGatekeeperClient::Entities::Project | ||
| 13 | def self.latest(count = 1) | 13 | def self.latest(count = 1) |
| 14 | all.sort { |a,b| b.id <=> a.id }.first(count) | 14 | all.sort { |a,b| b.id <=> a.id }.first(count) |
| 15 | end | 15 | end |
| 16 | + | ||
| 16 | end | 17 | end |
app/models/project_image.rb
| 1 | class ProjectImage < ActiveRecord::Base | 1 | class ProjectImage < ActiveRecord::Base |
| 2 | 2 | ||
| 3 | belongs_to :project | 3 | belongs_to :project |
| 4 | + before_save :check_url | ||
| 5 | + | ||
| 6 | + def check_no_image | ||
| 7 | + if !self.blank? | ||
| 8 | + if self.image_url == "no-image-available.png" | ||
| 9 | + self.image_url = "" | ||
| 10 | + end | ||
| 11 | + end | ||
| 12 | + end | ||
| 13 | + | ||
| 14 | + def check_url | ||
| 15 | + if self.image_url.blank? | ||
| 16 | + self.image_url = "no-image-available.png" | ||
| 17 | + end | ||
| 18 | + end | ||
| 19 | + | ||
| 4 | 20 | ||
| 5 | end | 21 | end |