liquid_feedback_frontend

changeset 142:44ba79952610

redirect to initiative if suggestion got deleted when changing to neutral

fixes bug #240
author Daniel Poelzleithner <poelzi@poelzi.org>
date Wed Oct 06 16:18:54 2010 +0200 (2010-10-06)
parents 20e0b64cc1f9
children a33abf457d29
files app/main/suggestion/_list.lua app/main/suggestion/show.lua
line diff
     1.1 --- a/app/main/suggestion/_list.lua	Wed Oct 06 14:34:45 2010 +0200
     1.2 +++ b/app/main/suggestion/_list.lua	Wed Oct 06 16:18:54 2010 +0200
     1.3 @@ -158,12 +158,16 @@
     1.4                            }
     1.5                          end
     1.6                        else
     1.7 +                        -- we need to put initiative_id into the parameters to have a redirect target in case the suggestion is gone after the action
     1.8 +                        params = param.get_all_cgi()
     1.9 +                        params['initiative_id'] = initiative.id
    1.10 +
    1.11                          ui.link{
    1.12                            attr = { class = "action" .. (degree == 2 and " active_green2" or "") },
    1.13                            text = _"must",
    1.14                            module = "opinion",
    1.15                            action = "update",
    1.16 -                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = param.get_all_cgi() } },
    1.17 +                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = params } },
    1.18                            params = {
    1.19                              suggestion_id = record.id,
    1.20                              degree = 2
    1.21 @@ -176,7 +180,7 @@
    1.22                            text = _"should",
    1.23                            module = "opinion",
    1.24                            action = "update",
    1.25 -                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = param.get_all_cgi() } },
    1.26 +                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = params} },
    1.27                            params = {
    1.28                              suggestion_id = record.id,
    1.29                              degree = 1
    1.30 @@ -189,7 +193,7 @@
    1.31                            text = _"neutral",
    1.32                            module = "opinion",
    1.33                            action = "update",
    1.34 -                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = param.get_all_cgi() } },
    1.35 +                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = params } },
    1.36                            params = {
    1.37                              suggestion_id = record.id,
    1.38                              delete = true
    1.39 @@ -202,7 +206,7 @@
    1.40                            text = _"should not",
    1.41                            module = "opinion",
    1.42                            action = "update",
    1.43 -                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = param.get_all_cgi() } },
    1.44 +                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = params } },
    1.45                            params = {
    1.46                              suggestion_id = record.id,
    1.47                              degree = -1
    1.48 @@ -215,7 +219,7 @@
    1.49                            text = _"must not",
    1.50                            module = "opinion",
    1.51                            action = "update",
    1.52 -                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = param.get_all_cgi() } },
    1.53 +                          routing = { default = { mode = "redirect", module = request.get_module(), view = request.get_view(), id = param.get_id_cgi(), params = params } },
    1.54                            params = {
    1.55                              suggestion_id = record.id,
    1.56                              degree = -2
     2.1 --- a/app/main/suggestion/show.lua	Wed Oct 06 14:34:45 2010 +0200
     2.2 +++ b/app/main/suggestion/show.lua	Wed Oct 06 16:18:54 2010 +0200
     2.3 @@ -1,5 +1,23 @@
     2.4  local suggestion = Suggestion:by_id(param.get_id())
     2.5  
     2.6 +-- redirect to initiative if suggestion does not exist anymore
     2.7 +if not suggestion then
     2.8 +  local initiative_id = param.get('initiative_id', atom.integer)
     2.9 +  if initiative_id then
    2.10 +    slot.reset_all{except={"notice", "error"}}
    2.11 +    request.redirect{
    2.12 +      module='initiative',
    2.13 +      view='show',
    2.14 +      id=initiative_id,
    2.15 +      params = { tab = "suggestions" }
    2.16 +    }
    2.17 +  else
    2.18 +    slot.put_into('error', _"Suggestion does not exist anymore")
    2.19 +  end
    2.20 +  return
    2.21 +end
    2.22 +
    2.23 +
    2.24  app.html_title.title = suggestion.name
    2.25  app.html_title.subtitle = _("Suggestion ##{id}", { id = suggestion.id })
    2.26  

Impressum / About Us