liquid_feedback_frontend

view 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
line source
1 local member_id = app.session.member_id
3 local deleted = 0
4 local updated = 0
6 for i, image_type in ipairs{"avatar", "photo"} do
8 local member_image = MemberImage:by_pk(member_id, image_type, false)
9 local member_image_scaled = MemberImage:by_pk(member_id, image_type, true)
11 if param.get(image_type .. "_delete", atom.boolean) then
12 if member_image then
13 member_image:destroy()
14 end
15 if member_image_scaled then
16 member_image_scaled:destroy()
17 end
18 deleted = deleted + 1
19 else
21 local data = param.get(image_type)
22 if data and #data > 0 and #data < 1024*1024 then
23 local convert_func = config.member_image_convert_func[image_type]
24 local data_scaled, err, status = convert_func(data)
25 if status ~= 0 or data_scaled == nil then
26 slot.put_into("error", _"Error while converting image. Please note, that only JPG files are supported!")
27 return false
28 end
30 if not member_image then
31 member_image = MemberImage:new()
32 member_image.member_id = member_id
33 member_image.image_type = image_type
34 member_image.scaled = false
35 member_image.content_type = cgi.post_types[image_type] or nil
36 member_image.data = ""
37 member_image:save()
38 end
40 if not member_image_scaled then
41 member_image_scaled = MemberImage:new()
42 member_image_scaled.member_id = member_id
43 member_image_scaled.image_type = image_type
44 member_image_scaled.scaled = true
45 member_image_scaled.content_type = config.member_image_content_type
46 member_image_scaled.data = ""
47 member_image_scaled:save()
48 end
50 if data and #data > 0 then
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 }
52 end
54 if data_scaled and #data_scaled > 0 then
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 }
56 end
58 updated = updated + 1
59 end
60 end
61 end
63 if updated > 0 then
64 slot.put_into("notice", _("#{number} Image(s) has been updated", { number = updated }))
65 end
66 if updated > 0 and deleted > 0 then
67 slot.put_into("notice", " &middot; ")
68 end
69 if deleted > 0 then
70 slot.put_into("notice", _("#{number} Image(s) has been deleted", { number = deleted }))
71 end
73 if updated == 0 and deleted == 0 then
74 slot.put_into("warning", _("No changes to your images were made"))
75 end

Impressum / About Us