liquid_feedback_frontend

annotate app/main/member/_action/update_images.lua @ 118:93f4e465b50d

add initiator support in delegation

if a delegation is issued from the initiative view, the initiators
from that one are added to the delegation target list. this makes it easier to delegate to the author without the need to add him to the contact list.
author Daniel Poelzleithner <poelzi@poelzi.org>
date Mon Sep 20 20:32:04 2010 +0200 (2010-09-20)
parents 733f65c0c0a0
children 5ae3b8d819c5
rev   line source
bsw/jbe@4 1 local member_id = app.session.member_id
bsw/jbe@4 2
bsw/jbe@4 3 local deleted = 0
bsw/jbe@4 4 local updated = 0
bsw/jbe@4 5
bsw/jbe@4 6 for i, image_type in ipairs{"avatar", "photo"} do
bsw/jbe@4 7
bsw/jbe@4 8 local member_image = MemberImage:by_pk(member_id, image_type, false)
bsw/jbe@4 9 local member_image_scaled = MemberImage:by_pk(member_id, image_type, true)
bsw/jbe@4 10
bsw/jbe@4 11 if param.get(image_type .. "_delete", atom.boolean) then
bsw/jbe@4 12 if member_image then
bsw/jbe@4 13 member_image:destroy()
bsw/jbe@4 14 end
bsw/jbe@4 15 if member_image_scaled then
bsw/jbe@4 16 member_image_scaled:destroy()
bsw/jbe@4 17 end
bsw/jbe@4 18 deleted = deleted + 1
bsw/jbe@4 19 else
bsw/jbe@4 20
bsw/jbe@4 21 local data = param.get(image_type)
bsw/jbe@4 22 if data and #data > 0 and #data < 1024*1024 then
bsw/jbe@4 23 local convert_func = config.member_image_convert_func[image_type]
bsw/jbe@4 24 local data_scaled, err, status = convert_func(data)
bsw/jbe@4 25 if status ~= 0 or data_scaled == nil then
bsw@75 26 slot.put_into("error", _"Error while converting image. Please note, that only JPG files are supported!")
bsw@75 27 return false
bsw/jbe@4 28 end
bsw/jbe@4 29
bsw/jbe@4 30 if not member_image then
bsw/jbe@4 31 member_image = MemberImage:new()
bsw/jbe@4 32 member_image.member_id = member_id
bsw/jbe@4 33 member_image.image_type = image_type
bsw/jbe@4 34 member_image.scaled = false
bsw/jbe@52 35 member_image.content_type = cgi.post_types[image_type] or nil
bsw/jbe@4 36 member_image.data = ""
bsw/jbe@4 37 member_image:save()
bsw/jbe@4 38 end
bsw/jbe@4 39
bsw/jbe@4 40 if not member_image_scaled then
bsw/jbe@4 41 member_image_scaled = MemberImage:new()
bsw/jbe@4 42 member_image_scaled.member_id = member_id
bsw/jbe@4 43 member_image_scaled.image_type = image_type
bsw/jbe@4 44 member_image_scaled.scaled = true
bsw/jbe@52 45 member_image_scaled.content_type = config.member_image_content_type
bsw/jbe@4 46 member_image_scaled.data = ""
bsw/jbe@4 47 member_image_scaled:save()
bsw/jbe@4 48 end
bsw/jbe@4 49
bsw/jbe@4 50 if data and #data > 0 then
bsw/jbe@4 51 db:query{ "UPDATE member_image SET data = $ WHERE member_id = ? AND image_type='" .. image_type .. "' AND scaled=FALSE", { db:quote_binary(data) }, app.session.member.id }
bsw/jbe@4 52 end
bsw/jbe@4 53
bsw/jbe@4 54 if data_scaled and #data_scaled > 0 then
bsw/jbe@4 55 db:query{ "UPDATE member_image SET data = $ WHERE member_id = ? AND image_type='" .. image_type .. "' AND scaled=TRUE", { db:quote_binary(data_scaled) }, app.session.member.id }
bsw/jbe@4 56 end
bsw/jbe@4 57
bsw/jbe@4 58 updated = updated + 1
bsw/jbe@4 59 end
bsw/jbe@4 60 end
bsw/jbe@4 61 end
bsw/jbe@4 62
bsw/jbe@4 63 if updated > 0 then
bsw/jbe@4 64 slot.put_into("notice", _("#{number} Image(s) has been updated", { number = updated }))
bsw/jbe@4 65 end
bsw/jbe@4 66 if updated > 0 and deleted > 0 then
bsw/jbe@4 67 slot.put_into("notice", " &middot; ")
bsw/jbe@4 68 end
bsw/jbe@4 69 if deleted > 0 then
bsw/jbe@4 70 slot.put_into("notice", _("#{number} Image(s) has been deleted", { number = deleted }))
bsw/jbe@4 71 end
bsw/jbe@4 72
bsw/jbe@4 73 if updated == 0 and deleted == 0 then
bsw/jbe@4 74 slot.put_into("warning", _("No changes to your images were made"))
bsw/jbe@4 75 end

Impressum / About Us