changing photo now updates all user images in page

This commit is contained in:
danielvincent 2010-10-20 12:35:16 -07:00
parent 65ffe2ecdd
commit e9ced7b2e6
3 changed files with 8 additions and 3 deletions

View file

@ -60,7 +60,7 @@ module ApplicationHelper
image_location = person.profile.image_url image_location = person.profile.image_url
image_location ||= "/images/user/default.png" image_location ||= "/images/user/default.png"
image_tag image_location, :class => "avatar", :alt => person.real_name, :title => person.real_name image_tag image_location, :class => "avatar", :alt => person.real_name, :title => person.real_name, "data-person_id" => person.id
end end
def person_image_link(person) def person_image_link(person)

View file

@ -77,7 +77,7 @@
%div{:id => @photo.id} %div{:id => @photo.id}
#show_photo #show_photo
.edit_pane .edit_pane
.controls{:data=>{:actor=>"#{@photo.person.owner.id}",:image_url=>"#{@photo.url(:thumb_medium)}"}} .controls{:data=>{:actor=>"#{@photo.person.owner.id}",:actor_person=>"#{@photo.person.id}",:image_url=>"#{@photo.url(:thumb_medium)}"}}
= link_to 'make profile photo', '#', :class => "make_profile_photo" = link_to 'make profile photo', '#', :class => "make_profile_photo"
= linked_scaled_photo @photo, @album = linked_scaled_photo @photo, @album
.caption .caption

View file

@ -107,12 +107,17 @@ function openVideo(type, videoid, link) {
$(".make_profile_photo").live("click", function(){ $(".make_profile_photo").live("click", function(){
var user_id = $(this).closest(".controls").attr('data-actor'); var user_id = $(this).closest(".controls").attr('data-actor');
person_id = $(this).closest(".controls").attr('data-actor_person');
photo_url = $(this).closest(".controls").attr('data-image_url'); photo_url = $(this).closest(".controls").attr('data-image_url');
$.ajax({ $.ajax({
type: "PUT", type: "PUT",
url: '/users/'+user_id, url: '/users/'+user_id,
data: {"user":{"profile":{ "image_url": photo_url }}}, data: {"user":{"profile":{ "image_url": photo_url }}},
success: window.location.reload() success: function(){
$("img[data-person_id='"+ person_id +"']").each( function() {
$(this).attr('src', photo_url);
});
}
}); });
}); });