From f8f1ef3f91fb237f54b45dd35fd408f749f90513 Mon Sep 17 00:00:00 2001 From: The Lambda Calculus Date: Tue, 13 Sep 2011 03:04:22 -0400 Subject: [PATCH] Refactored code so that the controller got thinner while the model become fatter [Finishes #1126] --- app/controllers/photos_controller.rb | 7 +------ app/models/photo.rb | 9 +++++++++ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/controllers/photos_controller.rb b/app/controllers/photos_controller.rb index b21ff49f1..d9190ae0f 100644 --- a/app/controllers/photos_controller.rb +++ b/app/controllers/photos_controller.rb @@ -127,13 +127,8 @@ class PhotosController < ApplicationController format.json{ render :nothing => true, :status => 204 } format.html do flash[:notice] = I18n.t 'photos.destroy.notice' - if photo.status_message_guid - if photo.status_message.text_and_photos_blank? - photo.status_message.destroy - respond_with photo, :location => person_photos_path(current_user.person) - else + if StatusMessage.find_by_guid(photo.status_message_guid) respond_with photo, :location => post_path(photo.status_message) - end else respond_with photo, :location => person_photos_path(current_user.person) end diff --git a/app/models/photo.rb b/app/models/photo.rb index 0f8118257..cdebd3f2a 100644 --- a/app/models/photo.rb +++ b/app/models/photo.rb @@ -19,8 +19,17 @@ class Photo < Post validate :ownership_of_status_message before_destroy :ensure_user_picture + after_destroy :clear_empty_status_message after_create :queue_processing_job + def clear_empty_status_message + if self.status_message_guid && self.status_message.text_and_photos_blank? + self.status_message.destroy + else + true + end + end + def ownership_of_status_message message = StatusMessage.find_by_guid(self.status_message_guid) if self.status_message_guid && message