| rev | 
   line source | 
| 
bsw@564
 | 
     1 ui.title(_"Notification settings")
 | 
| 
bsw@286
 | 
     2 
 | 
| 
bsw@286
 | 
     3 util.help("member.settings.notification", _"Notification settings")
 | 
| 
bsw@286
 | 
     4 
 | 
| 
bsw@286
 | 
     5 ui.form{
 | 
| 
bsw@286
 | 
     6   attr = { class = "vertical" },
 | 
| 
bsw@286
 | 
     7   module = "member",
 | 
| 
bsw@348
 | 
     8   action = "update_notify_level",
 | 
| 
bsw@286
 | 
     9   routing = {
 | 
| 
bsw@286
 | 
    10     ok = {
 | 
| 
bsw@286
 | 
    11       mode = "redirect",
 | 
| 
bsw@286
 | 
    12       module = "index",
 | 
| 
bsw@286
 | 
    13       view = "index"
 | 
| 
bsw@286
 | 
    14     }
 | 
| 
bsw@286
 | 
    15   },
 | 
| 
bsw@286
 | 
    16   content = function()
 | 
| 
bsw@560
 | 
    17     ui.tag{ tag = "p", content = _"I like to receive notifications by email about events in my areas and issues:" }
 | 
| 
bsw@286
 | 
    18   
 | 
| 
bsw@286
 | 
    19     ui.container{ content = function()
 | 
| 
bsw@286
 | 
    20       ui.tag{
 | 
| 
bsw@286
 | 
    21         tag = "input", 
 | 
| 
bsw@348
 | 
    22         attr = {
 | 
| 
bsw@474
 | 
    23           id = "notify_level_none",
 | 
| 
bsw@474
 | 
    24           type = "radio", name = "notify_level", value = "none",
 | 
| 
bsw@474
 | 
    25           checked = app.session.member.notify_level == 'none' and "checked" or nil
 | 
| 
bsw@348
 | 
    26         }
 | 
| 
bsw@286
 | 
    27       }
 | 
| 
bsw@474
 | 
    28       ui.tag{
 | 
| 
bsw@474
 | 
    29         tag = "label", attr = { ['for'] = "notify_level_none" },
 | 
| 
bsw@474
 | 
    30         content = _"No notifications at all"
 | 
| 
bsw@474
 | 
    31       }
 | 
| 
bsw@286
 | 
    32     end }
 | 
| 
bsw@474
 | 
    33      
 | 
| 
bsw@474
 | 
    34     slot.put("<br />")
 | 
| 
bsw@474
 | 
    35   
 | 
| 
bsw@286
 | 
    36     ui.container{ content = function()
 | 
| 
bsw@286
 | 
    37       ui.tag{
 | 
| 
bsw@286
 | 
    38         tag = "input", 
 | 
| 
bsw@348
 | 
    39         attr = {
 | 
| 
bsw@474
 | 
    40           id = "notify_level_all",
 | 
| 
bsw@474
 | 
    41           type = "radio", name = "notify_level", value = "all",
 | 
| 
bsw@474
 | 
    42           checked = app.session.member.notify_level == 'all' and "checked" or nil
 | 
| 
bsw@348
 | 
    43         }
 | 
| 
bsw@286
 | 
    44       }
 | 
| 
bsw@474
 | 
    45       ui.tag{
 | 
| 
bsw@474
 | 
    46         tag = "label", attr = { ['for'] = "notify_level_all" },
 | 
| 
bsw@474
 | 
    47         content = _"All of them"
 | 
| 
bsw@474
 | 
    48       }
 | 
| 
bsw@286
 | 
    49     end }
 | 
| 
bsw@474
 | 
    50     
 | 
| 
bsw@474
 | 
    51     slot.put("<br />")
 | 
| 
bsw@286
 | 
    52 
 | 
| 
bsw@286
 | 
    53     ui.container{ content = function()
 | 
| 
bsw@286
 | 
    54       ui.tag{
 | 
| 
bsw@286
 | 
    55         tag = "input", 
 | 
| 
bsw@348
 | 
    56         attr = {
 | 
| 
bsw@474
 | 
    57           id = "notify_level_discussion",
 | 
| 
bsw@348
 | 
    58           type = "radio", name = "notify_level", value = "discussion",
 | 
| 
bsw@348
 | 
    59           checked = app.session.member.notify_level == 'discussion' and "checked" or nil
 | 
| 
bsw@348
 | 
    60         }
 | 
| 
bsw@286
 | 
    61       }
 | 
| 
bsw@474
 | 
    62       ui.tag{
 | 
| 
bsw@474
 | 
    63         tag = "label", attr = { ['for'] = "notify_level_discussion" },
 | 
| 
bsw@474
 | 
    64         content = _"Only for issues reaching the discussion phase"
 | 
| 
bsw@474
 | 
    65       }
 | 
| 
bsw@286
 | 
    66     end }
 | 
| 
bsw@286
 | 
    67 
 | 
| 
bsw@474
 | 
    68     slot.put("<br />")
 | 
| 
bsw@474
 | 
    69 
 | 
| 
bsw@286
 | 
    70     ui.container{ content = function()
 | 
| 
bsw@286
 | 
    71       ui.tag{
 | 
| 
bsw@286
 | 
    72         tag = "input", 
 | 
| 
bsw@348
 | 
    73         attr = {
 | 
| 
bsw@474
 | 
    74           id = "notify_level_verification",
 | 
| 
bsw@474
 | 
    75           type = "radio", name = "notify_level", value = "verification",
 | 
| 
bsw@474
 | 
    76           checked = app.session.member.notify_level == 'verification' and "checked" or nil
 | 
| 
bsw@348
 | 
    77         }
 | 
| 
bsw@286
 | 
    78       }
 | 
| 
bsw@474
 | 
    79       ui.tag{
 | 
| 
bsw@474
 | 
    80         tag = "label", attr = { ['for'] = "notify_level_verification" },
 | 
| 
bsw@474
 | 
    81         content = _"Only for issues reaching the frozen phase"
 | 
| 
bsw@474
 | 
    82       }
 | 
| 
bsw@286
 | 
    83     end }
 | 
| 
bsw@474
 | 
    84     
 | 
| 
bsw@474
 | 
    85     slot.put("<br />")
 | 
| 
bsw@286
 | 
    86 
 | 
| 
bsw@286
 | 
    87     ui.container{ content = function()
 | 
| 
bsw@286
 | 
    88       ui.tag{
 | 
| 
bsw@286
 | 
    89         tag = "input", 
 | 
| 
bsw@348
 | 
    90         attr = {
 | 
| 
bsw@474
 | 
    91           id = "notify_level_voting",
 | 
| 
bsw@474
 | 
    92           type = "radio", name = "notify_level", value = "voting",
 | 
| 
bsw@474
 | 
    93           checked = app.session.member.notify_level == 'voting' and "checked" or nil
 | 
| 
bsw@348
 | 
    94         }
 | 
| 
bsw@286
 | 
    95       }
 | 
| 
bsw@474
 | 
    96       ui.tag{
 | 
| 
bsw@474
 | 
    97         tag = "label", attr = { ['for'] = "notify_level_voting" },
 | 
| 
bsw@474
 | 
    98         content = _"Only for issues reaching the voting phase"
 | 
| 
bsw@474
 | 
    99       }
 | 
| 
bsw@286
 | 
   100     end }
 | 
| 
bsw@286
 | 
   101 
 | 
| 
bsw@474
 | 
   102     slot.put("<br />")
 | 
| 
bsw@286
 | 
   103 
 | 
| 
bsw@348
 | 
   104     ui.submit{ value = _"Change notification settings" }
 | 
| 
bsw@286
 | 
   105   end
 | 
| 
bsw@286
 | 
   106 }
 | 
| 
bsw@287
 | 
   107  
 |