liquid_feedback_frontend

annotate app/main/admin/_action/member_update.lua @ 582:09a91ebcbb8c

Correctly display discussion and pad links
author bsw
date Wed Jun 20 14:24:27 2012 +0200 (2012-06-20)
parents c676054cb0bc
children 6fc640d87c8f
rev   line source
bsw@357 1 local id = param.get_id()
bsw/jbe@0 2
bsw@357 3 local member = Member:by_id(id) or Member:new()
bsw/jbe@0 4
bsw@581 5 param.update(member, "identification", "notify_email", "admin", "locked")
bsw/jbe@0 6
bsw/jbe@0 7 local err = member:try_save()
bsw/jbe@0 8
bsw/jbe@0 9 if err then
bsw/jbe@0 10 slot.put_into("error", (_("Error while updating member, database reported:<br /><br /> (#{errormessage})"):gsub("#{errormessage}", tostring(err.message))))
bsw/jbe@0 11 return false
bsw@357 12 end
bsw@357 13
bsw@357 14 if not id and config.single_unit_id then
bsw@357 15 local privilege = Privilege:new()
bsw@357 16 privilege.member_id = member.id
bsw@357 17 privilege.unit_id = config.single_unit_id
bsw@357 18 privilege.voting_right = true
bsw@359 19 privilege:save()
bsw@357 20 end
bsw@357 21
bsw@512 22 local units = Unit:new_selector()
bsw@512 23 :add_field("privilege.member_id NOTNULL", "privilege_exists")
bsw@512 24 :add_field("privilege.voting_right", "voting_right")
bsw@512 25 :left_join("privilege", nil, { "privilege.member_id = ? AND privilege.unit_id = unit.id", member.id })
bsw@512 26 :exec()
bsw@512 27
bsw@512 28 for i, unit in ipairs(units) do
bsw@512 29 local value = param.get("unit_" .. unit.id, atom.boolean)
bsw@512 30 if value and not unit.privilege_exists then
bsw@512 31 privilege = Privilege:new()
bsw@512 32 privilege.unit_id = unit.id
bsw@512 33 privilege.member_id = member.id
bsw@512 34 privilege.voting_right = true
bsw@512 35 privilege:save()
bsw@512 36 elseif not value and unit.privilege_exists then
bsw@512 37 local privilege = Privilege:by_pk(unit.id, member.id)
bsw@512 38 privilege:destroy()
bsw@512 39 end
bsw@512 40 end
bsw@512 41
bsw@581 42 if not member.activated and param.get("invite_member", atom.boolean) then
bsw@581 43 member:send_invitation()
bsw@581 44 end
bsw@581 45
bsw@357 46 if id then
bsw@357 47 slot.put_into("notice", _"Member successfully updated")
bsw/jbe@0 48 else
bsw@357 49 slot.put_into("notice", _"Member successfully registered")
bsw@244 50 end

Impressum / About Us