pedagogy: new mobile view and use of css grids for comment display

This commit is contained in:
Antoine Bartuccio 2019-07-08 02:54:49 +02:00
parent d03835d737
commit 52129d7511
Signed by: klmp200
GPG Key ID: E7245548C53F904B
3 changed files with 159 additions and 149 deletions

View File

@ -1689,20 +1689,6 @@ $pedagogy-white-text: #f0f0f0;
&.star-checked { &.star-checked {
color: $pedagogy-orange; color: $pedagogy-orange;
} }
&.stars-grade {
display: none;
}
@media screen and (max-width: $large-devices) {
&.stars-grade {
display: block;
}
&.star-checked {
display: none;
}
&.star-not-checked {
display: none;
}
}
} }
#dynamic_view { #dynamic_view {
@ -1870,18 +1856,6 @@ $pedagogy-white-text: #f0f0f0;
grid-template-columns: 50% 50%; grid-template-columns: 50% 50%;
grid-template-rows: auto auto; grid-template-rows: auto auto;
grid-template-areas: "grade grade-stars" "uv-infos uv-infos"; grid-template-areas: "grade grade-stars" "uv-infos uv-infos";
.pedagogy {
&.stars-grade {
display: none;
}
&.star-checked {
display: inline;
}
&.star-not-checked {
display: inline;
}
}
} }
} }
@ -1909,136 +1883,72 @@ $pedagogy-white-text: #f0f0f0;
padding-left: 10px; padding-left: 10px;
} }
.comment { .comment-container {
max-width: 100%; display: grid;
max-height: 200px; grid-template-columns: auto auto;
overflow: hidden; grid-template-rows: 156px auto auto;
grid-template-areas: "grade-block comment" "grade-block info" "comment-end-bar comment-end-bar";
margin-bottom: 30px; margin-bottom: 30px;
margin-top: 10px; margin-top: 10px;
@media screen and (max-width: $large-devices){
grid-template-columns: auto;
grid-template-rows: 156px auto auto auto;
grid-template-areas: "grade-block" "comment" "info" "comment-end-bar"
}
.grade-block {
grid-area: grade-block;
width: 300px;
display: grid;
grid-template-columns: 150px 150px;
grid-template-rows: auto;
grid-template-areas: "grade-type grade-stars";
grid-gap: 15px;
clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 20%, 80% 0);
align-content: space-evenly;
background-color: $pedagogy-blue;
@media screen and (max-width: $large-devices){
grid-template-columns: 50% 50%;
width: 100%;
clip-path: none;
}
.grade-type {
grid-area: grade-type;
> p {
color: $pedagogy-white-text;
font-weight: bold;
text-align: right;
}
}
.grade-stars {
grid-area: grade-stars;
justify-self: start;
}
}
.comment {
grid-area: comment;
overflow: scroll;
@media screen and (max-width: $large-devices){
border-left: solid;
border-right: solid;
border-color: $pedagogy-blue;
}
.anchor { .anchor {
float: right; float: right;
} }
.grade-block {
.dif-grade {
height: 156px;
width: 8%;
background-color: $pedagogy-blue;
color: $pedagogy-white-text;
height: 156px;
float: left;
font-weight: bold;
text-align: right;
padding: 15px;
padding-top: 0px;
}
.grade {
height: 156px;
width: 8%;
float: left;
text-align: left;
padding: 15px;
padding-right: 40px;
padding-top: 0px;
clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 20%, 75% 0);
background-color: $pedagogy-blue;
}
@media screen and (max-width: $large-devices) {
.dif-grade {
width: 11%;
}
.grade {
width: 8%;
}
}
}
.grade-text {
color: $pedagogy-white-text;
text-align: center;
}
.info {
background-color: $pedagogy-blue;
width: 100%;
float: left;
.date-info {
color: $pedagogy-white-text;
text-align: center;
width : 34%;
padding: 5px;
margin: 0px;
float: left;
@media screen and (max-width: $large-devices) {
width: 0%;
}
}
.author-info {
a {
color: $pedagogy-white-text;
text-align: center;
font-weight: bold;
}
a:hover {
color: $pedagogy-light-blue;
}
padding-right: 33%;
padding: 5px;
margin: 0px;
float: right;
padding-right: 10%;
}
.report {
background-color: $pedagogy-orange;
clip-path: polygon(0 0%, 0 100%, 300px 100%, 250px 0);
width : 33%;
& a {
color: $pedagogy-white-text;
font-weight: bold;
}
padding: 5px;
margin: 0px;
float: left;
@media screen and (max-width: $large-devices) {
clip-path: none;
width : 32%;
}
}
}
.action {
float: right;
text-align: center;
padding: 5px;
margin: 0px;
}
.status-reported {
color: red;
float: left;
padding: 5px;
margin: 0px;
}
.markdown { .markdown {
height: 125px;
margin-top: 0px; margin-top: 0px;
margin-right: 0px; margin-right: 0px;
padding: 10px; padding: 10px;
@ -2047,4 +1957,97 @@ $pedagogy-white-text: #f0f0f0;
text-align: justify; text-align: justify;
} }
} }
.info {
grid-area: info;
margin-bottom: 0px;
@media screen and (max-width: $large-devices){
border-left: solid;
border-right: solid;
border-color: $pedagogy-blue;
}
.status-reported {
color: red;
float: left;
padding-left: 10px;
padding-bottom: 10px;
}
.actions {
float: right;
}
}
.comment-end-bar {
grid-area: comment-end-bar;
display: grid;
grid-template-columns: auto auto auto;
grid-template-rows: 2.5em;
grid-template-areas: "report date author";
background-color: $pedagogy-blue;
margin-top: 0px;
@media screen and (max-width: $large-devices){
grid-template-columns: auto;
grid-template-rows: auto;
grid-template-areas: "author" "date" "report"
}
.report {
grid-area: report;
padding-top: 6px;
padding-left: 20px;
background-color: $pedagogy-orange;
clip-path: polygon(0 0%, 0 200%, 300px 200%, 250px 0);
@media screen and (max-width: $large-devices){
clip-path: none;
text-align: center;
padding-top: 6px;
padding-bottom: 6px;
padding-left: 0px;
}
& a {
color: $pedagogy-white-text;
font-weight: bold;
}
}
.date {
grid-area: date;
color: $pedagogy-white-text;
@media screen and (max-width: $large-devices){
text-align: center;
}
}
.author {
grid-area: author;
justify-self: right;
padding-right: 30px;
a {
color: $pedagogy-white-text;
font-weight: bold;
}
a:hover {
color: $pedagogy-light-blue;
}
@media screen and (max-width: $large-devices){
// text-align: center;
justify-self: center;
padding-right: 0px;
}
}
}
}
} }

View File

@ -8,7 +8,6 @@
<span class="fa fa-star pedagogy star-not-checked"></span> <span class="fa fa-star pedagogy star-not-checked"></span>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
<span class="pedagogy stars-grade grade-text">{{ grade + 1 }}/5</span>
{% else %} {% else %}
<span class="grade-text"> {% trans %} not rated {% endtrans %} </span> <span class="grade-text"> {% trans %} not rated {% endtrans %} </span>
{% endif %} {% endif %}

View File

@ -138,16 +138,17 @@
{% if object.comments.exists() %} {% if object.comments.exists() %}
<h2>{% trans %}Comments{% endtrans %}</h2> <h2>{% trans %}Comments{% endtrans %}</h2>
{% for comment in object.comments.order_by("-publish_date").all() %} {% for comment in object.comments.order_by("-publish_date").all() %}
<div id="{{ comment.id }}" class="comment"> <div id="{{ comment.id }}" class="comment-container">
<div class="grade-block"> <div class="grade-block">
<div class="dif-grade"> <div class="grade-type">
<p>{% trans %}global grade{% endtrans %}</p> <p>{% trans %}global grade{% endtrans %}</p>
<p>{% trans %}utility{% endtrans %}</p> <p>{% trans %}utility{% endtrans %}</p>
<p>{% trans %}interest{% endtrans %}</p> <p>{% trans %}interest{% endtrans %}</p>
<p>{% trans %}teaching{% endtrans %}</p> <p>{% trans %}teaching{% endtrans %}</p>
<p>{% trans %}work load{% endtrans %}</p> <p>{% trans %}work load{% endtrans %}</p>
</div> </div>
<div class="grade"> <div class="grade-stars">
<p>{{ display_star(comment.grade_global) }}</p> <p>{{ display_star(comment.grade_global) }}</p>
<p>{{ display_star(comment.grade_utility) }}</p> <p>{{ display_star(comment.grade_utility) }}</p>
<p>{{ display_star(comment.grade_interest) }}</p> <p>{{ display_star(comment.grade_interest) }}</p>
@ -155,11 +156,15 @@
<p>{{ display_star(comment.grade_work_load) }}</p> <p>{{ display_star(comment.grade_work_load) }}</p>
</div> </div>
</div> </div>
<div class="comment">
<div class="anchor"> <div class="anchor">
<a href="{{ url('pedagogy:uv_detail', uv_id=uv.id) }}#{{ comment.id }}"><i class="fa fa-paragraph"></i></a> <a href="{{ url('pedagogy:uv_detail', uv_id=uv.id) }}#{{ comment.id }}"><i class="fa fa-paragraph"></i></a>
</div> </div>
{{ comment.comment|markdown }} {{ comment.comment|markdown }}
</div>
<div class="info">
{% if comment.is_reported %} {% if comment.is_reported %}
<p class="status-reported"> <p class="status-reported">
{% trans %}This comment has been reported{% endtrans %} {% trans %}This comment has been reported{% endtrans %}
@ -167,16 +172,19 @@
{% endif %} {% endif %}
{% if user.is_owner(comment) %} {% if user.is_owner(comment) %}
<p class="action"> <p class="actions">
<a href="{{ url('pedagogy:comment_update', comment_id=comment.id) }}">{% trans %}Edit{% endtrans %}</a> <a href="{{ url('pedagogy:comment_update', comment_id=comment.id) }}">{% trans %}Edit{% endtrans %}</a>
<a href="{{ url('pedagogy:comment_delete', comment_id=comment.id) }}">{% trans %}Delete{% endtrans %}</a> <a href="{{ url('pedagogy:comment_delete', comment_id=comment.id) }}">{% trans %}Delete{% endtrans %}</a>
</p> </p>
{% endif %} {% endif %}
</div>
<div class="info"> <div class="comment-end-bar">
<p class="report"><a href="{{ url('pedagogy:comment_report', comment_id=comment.id) }}">{% trans %}Report this comment{% endtrans %}</a></p> <p class="report"><a href="{{ url('pedagogy:comment_report', comment_id=comment.id) }}">{% trans %}Report this comment{% endtrans %}</a></p>
<p class="date-info">{{ comment.publish_date.strftime('%d/%m/%Y') }}</p>
<p class="author-info">{{ user_profile_link(comment.author) }}</p> <p class="date">{{ comment.publish_date.strftime('%d/%m/%Y') }}</p>
<p class="author">{{ user_profile_link(comment.author) }}</p>
</div> </div>
</div> </div>