Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 31 additions & 22 deletions priv/lib-src/elm/src/Main.elm
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,14 @@ port logError : String -> Cmd msg

-- MAIN

type alias Flags =
{ pageId : PageId
, now : Int
, remarkId : Maybe Int
, isClosed : Bool
}

main : Program ( PageId, Int, Maybe Int ) Model Msg
main : Program Flags Model Msg
main =
Browser.element
{ init = init
Expand Down Expand Up @@ -76,6 +82,7 @@ type alias Model =
, isOngoingTask : Bool
, now : Util.Now
, remarkId : Maybe PageId
, pageIsClosed: Bool
}


Expand All @@ -97,22 +104,21 @@ type alias IsReply =
-- INIT


init : ( PageId, Int, Maybe Int ) -> ( Model, Cmd Msg )
init ( pageId, now, remarkId ) =
init : Flags -> ( Model, Cmd Msg )
init flags =
( { remarks = []
, group = DefaultGroup
, user = Anonymous
, editor = Closed
, pageId = pageId
, pageId = flags.pageId
, isOngoingTask = False
, now = Util.millisToNow now
, remarkId = remarkId
, now = Util.millisToNow flags.now
, remarkId = flags.remarkId
, pageIsClosed = flags.isClosed
}
, Task.attempt GotRemarksData (Api.getRemarksData pageId)
, Task.attempt GotRemarksData (Api.getRemarksData flags.pageId)
)



-- UPDATE


Expand Down Expand Up @@ -259,7 +265,7 @@ view : Model -> Html Msg
view model =
section []
[ viewRemarks model.now model.remarks model.editor model.user False
, viewParticipate model.editor model.user model.pageId
, viewParticipate model.pageIsClosed model.editor model.user model.pageId
]


Expand Down Expand Up @@ -565,14 +571,14 @@ viewRemarkFooterLikes likes =
-- CALL TO ACIONS


viewParticipate : Editor -> User -> PageId -> Html Msg
viewParticipate editor user pageId =
viewParticipate : Bool -> Editor -> User -> PageId -> Html Msg
viewParticipate pageIsClosed editor user pageId =
case ( user, editor ) of
( Anonymous, _ ) ->
text ""

( User profile, Closed ) ->
viewParticipateButton profile pageId
viewParticipateButton pageIsClosed profile pageId

( User profile, Open (New id) editor_ ) ->
Ginger.Util.viewIf (id == pageId) <|
Expand All @@ -583,12 +589,15 @@ viewParticipate editor user pageId =
text ""


viewParticipateButton : Profile -> PageId -> Html Msg
viewParticipateButton profile pageId =
div [ class "status" ]
[ img [ class "avatar", src profile.userAvatarUrl ]
[]
, button
[ class "btn--new-remark", onClick (NewRemark pageId) ]
[ text "Reageer op deze bijdrage" ]
]
viewParticipateButton : Bool -> Profile -> PageId -> Html Msg
viewParticipateButton pageIsClosed profile pageId =
if pageIsClosed then
text "" -- hide the button
else
div [ class "status" ]
[ img [ class "avatar", src profile.userAvatarUrl ]
[]
, button
[ class "btn--new-remark", onClick (NewRemark pageId) ]
[ text "Reageer op deze bijdrage" ]
]
14 changes: 14 additions & 0 deletions priv/lib-src/scss/src/blocks/status-tags.scss
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,16 @@
}
}

.kg-intro_status--closed,
.kg-intro_status--gesloten {
border-color: $greenDarker;
background-color: rgba($greenDarker, 0.6);

&::before {
background-image: url(/lib/images/closed.svg);
}
}

.c-contribution__lvl {
background-color: $greenDarker;
border: none;
Expand All @@ -87,4 +97,8 @@
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
z-index: 2;
pointer-events: none;

&--closed {
background-color: $grey;
}
}
45 changes: 45 additions & 0 deletions priv/lib/images/closed.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 21 additions & 0 deletions priv/templates/_admin_edit_basics_form.contribution.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,28 @@
{% include "_ginger_edit_content_add_to_timeline.tpl" %}

{% catinclude "_ginger_edit_content_status_label.tpl" id extraClass="col-md-6" %}

</fieldset>

<fieldset>
<div id="status-closed-container" style="display: none;">
{_ status-close-remark-reminder _}
<!-- TODO embed the elm app -->
</div>
</fieldset>
{% javascript %}
$(document).ready(function() {
const $statusField = $('#status-label');
const $closedContainer = $('#status-closed-container');

function toggleClosedWarning() {
const value = $statusField.val()?.toLowerCase();
$closedContainer.toggle(value === 'closed');
}

$statusField.on('change', toggleClosedWarning);
});
{% endjavascript %}
{% endwith %}


3 changes: 2 additions & 1 deletion priv/templates/_ginger_edit_content_status_label.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
<option value="Meetup" {% if id.status_label == "Meetup" %}selected{% endif %}>{_ Meetup _}</option>
<option value="Insights" {% if id.status_label == "Insights" %}selected{% endif %}>{_ Insights _}</option>
<option value="Discussion" {% if id.status_label == "Discussion" %}selected{% endif %}>{_ Discussion _}</option>
<option value="Closed" {% if id.status_label == "Closed" %}selected{% endif %}>{_ Closed _}</option>
</select>
</div>
</div>
</div>
8 changes: 7 additions & 1 deletion priv/templates/comments/comments.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,15 @@
hash = null
};

//ocataco: last flag is passed to indicate this page is closed, and no new remarks are allowed
var app = Elm.Main.init({
node: remarksElement,
flags: [{{ id }}, now, hash]
flags: {
pageId: {{ id }},
now: now,
remarkId: hash,
isClosed: {{id.status_label == 'Closed'}}
}
});

app.ports.scrollIdIntoView.subscribe(function(domId) {
Expand Down
6 changes: 5 additions & 1 deletion priv/templates/list/list-item-kg.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,11 @@
{% endif %}
<a href="{{ ref.page_url }}">
{% if id.status_label %}
<div class="list-item-kg-contribution__lvl">{{ id.status_label|translate }}</div>
{% if id.status_label == 'Closed' %}
<div class=" list-item-kg-contribution__lvl list-item-kg-contribution__lvl--closed">{{ id.status_label|translate }}</div>
{% else %}
<div class="list-item-kg-contribution__lvl">{{ id.status_label|translate }}</div>
{% endif %}
{% endif %}
<div {% if dep %}class="list-item-kg-contribution__content"{% endif %}>
<div class="list-item-kg__top">
Expand Down
4 changes: 3 additions & 1 deletion priv/templates/page.contribution.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,9 @@
<div class="page-body">
{{ id.body|show_media }}

{% include "library/add-references.tpl" %}
{% if id.status_label != "Closed" %}
{% include "library/add-references.tpl" %}
{% endif %}
</div>
{% endblock %}

Expand Down
2 changes: 2 additions & 0 deletions priv/templates/page.event.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,11 @@
Registreer of log in om te reageren
</a>
{% else %}
{% if id.status_label != "Closed" %}
<a href="#reacties" class="do_anchor btn--primary -is-anchor">
Direct reageren
</a>
{% endif %}
{% endif %}
</div>

Expand Down
12 changes: 10 additions & 2 deletions priv/translations/nl.po
Original file line number Diff line number Diff line change
Expand Up @@ -640,7 +640,11 @@ msgstr "Voortgang labels zijn zichtbaar in de kennisgroep"

#: user/sites/kenniscloud/templates/_ginger_edit_content_status_label.tpl:20
msgid "Status labels are visible on contributions and meetups"
msgstr "Status labels zijn zichtbaar op bijdragen en meetups"
msgstr "Status labels zijn zichtbaar op bijdragen en meetups."

#: user/sites/kenniscloud/templates/_admin_edit_basics_form.contribution.tpl
msgid "status-close-remark-reminder"
msgstr "Vergeet niet een laatste reactie te geven voor je de bijdrage sluit!"

#: user/sites/kenniscloud/templates/_admin_edit_basics.acl_collaboration_group.tpl:
msgid "Timeline off"
Expand Down Expand Up @@ -734,10 +738,14 @@ msgstr "Inzichten"
msgid "Discussion"
msgstr "Discussie"

#priv/templates/keywords/status-tags.tpl
msgid "Closed"
msgstr "Gesloten"

#priv/templates/keywords/knowledge-lvl-tags.tpl
msgid "Question"
msgstr "Vraag"

#priv/templates/keywords/knowledge-lvl-tags.tpl
msgid "Insight"
msgstr "Inzicht"
msgstr "Inzicht"