liquid_feedback_frontend
view app/main/member/_action/update_api_key.lua @ 52:88ac7798b562
Several bugfixes (getpic.c, accepted but canceled issues, ...); Listing of available policies
- Bugfixes in fastpath/getpic.c (related to crashes since alpha5)
- Respect Content-Types of images in database
(needs database update, as Content-Type was incorrectly stored by previous versions)
- Typo fixed in help messages
- RSS-Feed (currently only after manual authentication while session is valid)
- Listing of available policies
- German translation fixed: "gebe" -> "gib" (Imperativ)
- Bugfixes related to issues which had been accepted but canceled afterwards
- Prohibit creation of initiatives in disabled areas or with disabled policies
- Bugfixes in fastpath/getpic.c (related to crashes since alpha5)
- Respect Content-Types of images in database
(needs database update, as Content-Type was incorrectly stored by previous versions)
- Typo fixed in help messages
- RSS-Feed (currently only after manual authentication while session is valid)
- Listing of available policies
- German translation fixed: "gebe" -> "gib" (Imperativ)
- Bugfixes related to issues which had been accepted but canceled afterwards
- Prohibit creation of initiatives in disabled areas or with disabled policies
| author | bsw/jbe |
|---|---|
| date | Thu Apr 15 19:58:25 2010 +0200 (2010-04-15) |
| parents | 0849be391140 |
| children | 976d493106a1 |
line source
2 local setting_key = "liquidfeedback_frontend_api_key"
3 local setting = Setting:by_pk(app.session.member.id, setting_key)
5 local api_key
7 if param.get("delete", atom.boolean) then
9 if setting then
10 setting:destroy()
11 end
13 else
15 if not setting then
16 setting = Setting:new()
17 setting.member_id = app.session.member.id
18 setting.key = setting_key
19 end
21 api_key = multirand.string(
22 20,
23 '23456789BCDFGHJKLMNPQRSTVWXYZbcdfghjkmnpqrstvwxyz'
24 )
26 setting.value = api_key
28 setting:save()
29 end
32 local setting_key = "liquidfeedback_frontend_api_key_history"
34 setting = SettingMap:new()
35 setting.member_id = app.session.member.id
36 setting.key = setting_key
37 setting.subkey = db:query("SELECT now()")[1].now
38 setting.value = api_key or ""
39 local dberr = setting:try_save()
41 if dberr then
42 if dberr:is_kind_of("IntegrityConstraintViolation.UniqueViolation") then
43 slot.put_into("error", _"The API key has been changed too fast.")
44 return
45 else
46 dberr:escalate()
47 end
48 end
50 if not api_key then
51 slot.put_into("notice", _"API key has been deleted")
52 else
53 slot.put_into("notice", _"API key has been updated")
54 end
