liquid_feedback_frontend
view app/main/draft/new.lua @ 1383:e43ff9fd6c05
Removed line break
| author | bsw | 
|---|---|
| date | Wed Aug 08 17:41:22 2018 +0200 (2018-08-08) | 
| parents | 32cc544d5a5b | 
| children | 17e7082c377a | 
 line source
     1 local initiative = Initiative:by_id(param.get("initiative_id"))
     2 initiative:load_everything_for_member_id(app.session.member_id)
     3 initiative.issue:load_everything_for_member_id(app.session.member_id)
     5 if initiative.issue.closed then
     6   slot.put_into("error", _"This issue is already closed.")
     7   return
     8 elseif initiative.issue.half_frozen then 
     9   slot.put_into("error", _"This issue is already frozen.")
    10   return
    11 elseif initiative.issue.phase_finished then
    12   slot.put_into("error", _"Current phase is already closed.")
    13   return
    14 end
    16 local draft = initiative.current_draft
    17 if config.initiative_abstract then
    18   draft.abstract = string.match(draft.content, "(.+)<!%--END_OF_ABSTRACT%-->")
    19   if draft.abstract then
    20     draft.content = string.match(draft.content, "<!%--END_OF_ABSTRACT%-->(.*)")
    21   end
    22 end
    24 ui.form{
    25   record = draft,
    26   attr = { class = "vertical section" },
    27   module = "draft",
    28   action = "add",
    29   params = { initiative_id = initiative.id },
    30   routing = {
    31     ok = {
    32       mode = "redirect",
    33       module = "initiative",
    34       view = "show",
    35       id = initiative.id
    36     }
    37   },
    38   content = function()
    40     ui.grid{ content = function()
    41       ui.cell_main{ content = function()
    42         ui.container{ attr = { class = "mdl-card mdl-shadow--2dp mdl-card__fullwidth" }, content = function()
    43           ui.container{ attr = { class = "mdl-card__title mdl-card--border" }, content = function()
    44             ui.heading { attr = { class = "mdl-card__title-text" }, level = 2, content = initiative.display_name }
    45           end }
    46           ui.container{ attr = { class = "mdl-card__content mdl-card--border" }, content = function()
    47             if param.get("preview") then
    48               ui.sectionRow( function()
    49                 if config.initiative_abstract then
    50                   ui.field.hidden{ name = "abstract", value = param.get("abstract") }
    51                   ui.container{
    52                     attr = { class = "abstract" },
    53                     content = param.get("abstract")
    54                   }
    55                   slot.put("<br />")
    56                 end
    57                 local draft_text = param.get("content")
    58                 local draft_text = util.wysihtml_preproc(draft_text)
    59                 ui.field.hidden{ name = "content", value = draft_text }
    60                 ui.container{
    61                   attr = { class = "draft" },
    62                   content = function()
    63                     slot.put(draft_text)
    64                   end
    65                 }
    66                 slot.put("<br />")
    68                 ui.tag{
    69                   tag = "input",
    70                   attr = {
    71                     type = "submit",
    72                     class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--colored",
    73                     value = _'Publish now'
    74                   },
    75                   content = ""
    76                 }
    77                 slot.put("   ")
    79                 ui.tag{
    80                   tag = "input",
    81                   attr = {
    82                     type = "submit",
    83                     name = "edit",
    84                     class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect",
    85                     value = _'Edit again'
    86                   },
    87                   content = ""
    88                 }
    89                 slot.put("   ")
    91                 ui.link{
    92                   attr = { class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect" },
    93                   content = _"Cancel",
    94                   module = "initiative",
    95                   view = "show",
    96                   id = initiative.id
    97                 }
    98               end )
   100             else
   101               ui.sectionRow( function()
   102                 if config.initiative_abstract then
   103                   ui.container { content = _"Enter abstract:" }
   104                   ui.container{ attr = { class = "mdl-textfield mdl-js-textfield mdl-textfield--expandable mdl-textfield__fullwidth" }, content = function()
   105                     ui.field.text{
   106                       name = "abstract",
   107                       multiline = true, 
   108                       attr = { id = "abstract", style = "height: 20ex; width: 100%;" },
   109                       value = param.get("abstract")
   110                     }
   111                   end }
   112                 end
   114                 ui.container { content = _"Enter your proposal and/or reasons:" }
   115                 ui.field.wysihtml{
   116                   name = "content",
   117                   multiline = true, 
   118                   attr = { id = "draft", style = "height: 50ex; width: 100%;" },
   119                   value = param.get("content")
   120                 }
   121                 if not issue or issue.state == "admission" or issue.state == "discussion" then
   122                   ui.container { content = _"You can change your text again anytime during admission and discussion phase" }
   123                 else
   124                   ui.container { content = _"You cannot change your text again later, because this issue is already in verfication phase!" }
   125                 end
   126                 slot.put("<br />")
   128                 ui.tag{
   129                   tag = "input",
   130                   attr = {
   131                     type = "submit",
   132                     name = "preview",
   133                     class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect mdl-button--colored",
   134                     value = _'Preview'
   135                   },
   136                   content = ""
   137                 }
   138                 slot.put("   ")
   140                 ui.link{
   141                   content = _"Cancel",
   142                   module = "initiative",
   143                   view = "show",
   144                   id = initiative.id,
   145                   attr = { class = "mdl-button mdl-js-button mdl-button--raised mdl-js-ripple-effect" }
   146                 }
   148               end )
   149             end
   150           end }
   151         end }
   152       end }
   153     end }
   154   end
   155 }
