Merge pull request #53 from zhaospei/master

Change pre-expand-blog style
This commit is contained in:
Phuoc Dinh Le 2023-02-05 10:21:41 -06:00 committed by GitHub
commit b04370f7ce
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 520 additions and 493 deletions

File diff suppressed because it is too large Load diff

View file

@ -402,6 +402,9 @@ msgstr ""
msgid "monotonic-queue" msgid "monotonic-queue"
msgstr "" msgstr ""
msgid "mst"
msgstr ""
msgid "multiplicative" msgid "multiplicative"
msgstr "" msgstr ""
@ -555,6 +558,9 @@ msgstr ""
msgid "tortoise-hare" msgid "tortoise-hare"
msgstr "" msgstr ""
msgid "Training"
msgstr ""
msgid "treap/splay" msgid "treap/splay"
msgstr "" msgstr ""

View file

@ -222,20 +222,26 @@
padding-bottom: 0; padding-bottom: 0;
} }
.pre-expand-blog::before { .show-more {
color: black;
font-style: italic;
font-size: 16px;
font-weight: 700;
padding: 0px 12px;
margin-top: 5px;
position: absolute; position: absolute;
z-index: 1; inset: 50% 0px 60px;
top: 0; background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 1%, #f3f3f3 95%, #f3f3f3 100%);
left: 0; display: flex;
width: 100%; -webkit-box-pack: end;
height: 100%; justify-content: flex-end;
content: ""; align-items: flex-end;
background-image: -webkit-linear-gradient(bottom, gray, lightgray 3%, transparent 8%, transparent 100%); cursor: pointer;
border-radius: 8px; padding: 16px 16px;
} }
.pre-expand-blog:hover { .actionbar-box {
background-color: #f3f3f3; margin: 8px 16px;
} }
.post-full { .post-full {

View file

@ -1938,16 +1938,11 @@ noscript #noscript {
border-bottom-color: rgb(140, 130, 115); border-bottom-color: rgb(140, 130, 115);
color: rgb(232, 230, 227); color: rgb(232, 230, 227);
} }
.pre-expand-blog::before { .show-more {
background-image: -webkit-linear-gradient(bottom, color: white;
rgb(96, 104, 108), background: linear-gradient(rgba(24, 26, 27, 0) 1%, rgb(31, 33, 35) 95%, rgb(31, 33, 35) 100%);
rgb(49, 53, 55) 3%,
rgba(0, 0, 0, 0) 8%,
rgba(0, 0, 0, 0) 100%);
}
.pre-expand-blog:hover {
background-color: rgb(31, 33, 35);
} }
@media (min-width: 800px) { @media (min-width: 800px) {
.blog-box { .blog-box {
border-left-color: rgb(60, 65, 68); border-left-color: rgb(60, 65, 68);

View file

@ -1,18 +1,20 @@
{% set logged_in = request.user.is_authenticated %} {% set logged_in = request.user.is_authenticated %}
{% set profile = request.profile if logged_in else None %} {% set profile = request.profile if logged_in else None %}
{% if logged_in %} {% if logged_in %}
{% if include_hr %}<hr>{% endif %} {% if include_hr %}
<hr>{% endif %}
<div class="page-vote actionbar"> <div class="page-vote actionbar">
<span class="actionbar-block" style="justify-content: flex-start;"> <span class="actionbar-block" style="justify-content: flex-start;">
<span id="like-button-{{pagevote.id}}" <span id="like-button-{{pagevote.id}}"
class="like-button actionbar-button {% if pagevote.vote_score(request.profile) == 1 %}voted{% endif %}" class="like-button actionbar-button {% if pagevote.vote_score(request.profile) == 1 %}voted{% endif %}"
onclick="javascript:pagevote_upvote({{ pagevote.id }})" onclick="javascript:pagevote_upvote({{ pagevote.id }})">
>
<span class="pagevote-score" id="pagevote-score-{{pagevote.id}}">{{ pagevote.score }}</span> <span class="pagevote-score" id="pagevote-score-{{pagevote.id}}">{{ pagevote.score }}</span>
<i class="fa fa-thumbs-o-up" style="font-size: large;"></i> <i class="fa fa-thumbs-o-up" style="font-size: large;"></i>
<span class="actionbar-text">{{_("Like")}}</span> <span class="actionbar-text">{{_("Like")}}</span>
</span> </span>
<span id="dislike-button-{{pagevote.id}}" class="dislike-button actionbar-button {% if pagevote.vote_score(request.profile) == -1 %}voted{% endif %}" onclick="javascript:pagevote_downvote({{ pagevote.id }})"> <span id="dislike-button-{{pagevote.id}}"
class="dislike-button actionbar-button {% if pagevote.vote_score(request.profile) == -1 %}voted{% endif %}"
onclick="javascript:pagevote_downvote({{ pagevote.id }})">
<i class="fa fa-thumbs-o-down" style="font-size: large;"></i> <i class="fa fa-thumbs-o-down" style="font-size: large;"></i>
</span> </span>
</span> </span>
@ -20,21 +22,22 @@
<span class="actionbar-block"> <span class="actionbar-block">
<span class="actionbar-button actionbar-comment"> <span class="actionbar-button actionbar-comment">
<i class="fa fa-comment-o" style="font-size: large;"></i> <i class="fa fa-comment-o" style="font-size: large;"></i>
<span class="actionbar-text">{{_("Comment")}} {% if comment_list.count() %} ({{comment_list.count()}}) {% endif %}</span> <span class="actionbar-text">{{_("Comment")}} {% if comment_list.count() %} ({{comment_list.count()}}) {% endif
%}</span>
</span> </span>
</span> </span>
{% endif %} {% endif %}
<span class="actionbar-block"> <span class="actionbar-block">
<span id="bookmark-button-{{bookmark.id}}" <span id="bookmark-button-{{bookmark.id}}"
class="bookmark-button actionbar-button {% if bookmark.get_bookmark(request.profile) == True %} bookmarked {% endif %}" class="bookmark-button actionbar-button {% if bookmark.get_bookmark(request.profile) == True %} bookmarked {% endif %}"
onclick="javascript:bookmark({{ bookmark.id }})" onclick="javascript:bookmark({{ bookmark.id }})">
>
<i class="fa fa-bookmark-o" style="font-size: large;"></i> <i class="fa fa-bookmark-o" style="font-size: large;"></i>
<span class="actionbar-text">{{_("Bookmark")}}</span> <span class="actionbar-text">{{_("Bookmark")}}</span>
</span> </span>
</span> </span>
<span class="actionbar-block" > <span class="actionbar-block" style="justify-content: flex-end;">
<span class="actionbar-button actionbar-share" style="position: relative" {{"share-url=" + share_url if share_url else ""}}> <span class="actionbar-button actionbar-share" style="position: relative"
{{"share-url=" + share_url if share_url else ""}}>
<i class=" fa fa-share" style="font-size: large;"></i> <i class=" fa fa-share" style="font-size: large;"></i>
<span class="actionbar-text">{{_("Share")}}</span> <span class="actionbar-text">{{_("Share")}}</span>
</span> </span>

View file

@ -42,6 +42,9 @@
{{ post.summary|default(post.content, true)|markdown(lazy_load=True)|reference|str|safe }} {{ post.summary|default(post.content, true)|markdown(lazy_load=True)|reference|str|safe }}
{% endcache %} {% endcache %}
</div> </div>
</div>
<div class="show-more"> {{_("...More")}} </div>
<div class="actionbar-box">
{% set pagevote = post.pagevote %} {% set pagevote = post.pagevote %}
{% set bookmark = post.bookmark %} {% set bookmark = post.bookmark %}
{% set hide_actionbar_comment = True %} {% set hide_actionbar_comment = True %}

View file

@ -5,14 +5,16 @@
{% block middle_content %} {% block middle_content %}
<div class="problem-feed-option"> <div class="problem-feed-option">
<a href="{{url('problem_feed')}}" class="button small {{'btn-midnightblue' if feed_type=='for_you' else 'btn-gray'}}"> <a href="{{url('problem_feed')}}"
class="button small {{'btn-midnightblue' if feed_type=='for_you' else 'btn-gray'}}">
{{_('FOR YOU')}} {{_('FOR YOU')}}
</a> </a>
<a href="{{url('problem_feed_new')}}" class="button small {{'btn-midnightblue' if feed_type=='new' else 'btn-gray'}}"> <a href="{{url('problem_feed_new')}}" class="button small {{'btn-midnightblue' if feed_type=='new' else 'btn-gray'}}">
{{_('NEW')}} {{_('NEW')}}
</a> </a>
{% if request.user.has_perm('judge.suggest_problem_changes') %} {% if request.user.has_perm('judge.suggest_problem_changes') %}
<a href="{{url('problem_feed_volunteer')}}" class="button small {{'btn-midnightblue' if feed_type=='volunteer' else 'btn-gray'}}"> <a href="{{url('problem_feed_volunteer')}}"
class="button small {{'btn-midnightblue' if feed_type=='volunteer' else 'btn-gray'}}">
{{_('VOLUNTEER')}} {{_('VOLUNTEER')}}
</a> </a>
{% endif %} {% endif %}
@ -58,26 +60,23 @@
{{ problem.description|markdown(lazy_load=True)|reference|str|safe }} {{ problem.description|markdown(lazy_load=True)|reference|str|safe }}
{% endcache %} {% endcache %}
{% if problem.pdf_description %} {% if problem.pdf_description %}
<embed src="{{url('problem_pdf_description', problem.code)}}" width="100%" height="500" type="application/pdf" style="margin-top: 0.5em"> <embed src="{{url('problem_pdf_description', problem.code)}}" width="100%" height="500" type="application/pdf"
style="margin-top: 0.5em">
{% endif %} {% endif %}
</div> </div>
{% set include_hr = True %}
{% set hide_actionbar_comment = True %}
{% set pagevote = problem.pagevote %}
{% set bookmark = problem.bookmark %}
{% set share_url = request.build_absolute_uri(problem.get_absolute_url()) %}
{% include "actionbar/list.html" %}
{% if feed_type=='volunteer' and request.user.has_perm('judge.suggest_problem_changes') %} {% if feed_type=='volunteer' and request.user.has_perm('judge.suggest_problem_changes') %}
<br> <br>
<a href="#" class="view-statement-src">{{ _('View source') }}</a> <a href="#" class="view-statement-src">{{ _('View source') }}</a>
<pre class="statement-src" style="display: none">{{ problem.description|str }}</pre> <pre class="statement-src" style="display: none">{{ problem.description|str }}</pre>
<hr> <hr>
<center><h3>{{_('Volunteer form')}}</h3></center> <center>
<h3>{{_('Volunteer form')}}</h3>
</center>
<br> <br>
<button class="edit-btn" id="edit-{{problem.id}}" pid="{{problem.id}}" style="float: right">{{_('Edit')}}</button> <button class="edit-btn" id="edit-{{problem.id}}" pid="{{problem.id}}" style="float: right">{{_('Edit')}}</button>
<form class="volunteer-form" id="form-{{problem.id}}" pid="{{problem.id}}" style="display: none;" method="POST"> <form class="volunteer-form" id="form-{{problem.id}}" pid="{{problem.id}}" style="display: none;" method="POST">
<input type="submit" class="volunteer-submit-btn" id="submit-{{problem.id}}" pid="{{problem.id}}" pcode="{{problem.code}}" style="float: right" value="{{_('Submit')}}"> <input type="submit" class="volunteer-submit-btn" id="submit-{{problem.id}}" pid="{{problem.id}}"
pcode="{{problem.code}}" style="float: right" value="{{_('Submit')}}">
<table class="table"> <table class="table">
<thead> <thead>
<tr> <tr>
@ -124,7 +123,8 @@
<label for="feedback"><i>{{ _('Feedback') }}</i></label> <label for="feedback"><i>{{ _('Feedback') }}</i></label>
</td> </td>
<td> <td>
<textarea id="feedback-{{problem.id}}" rows="2" style="width: 100%" placeholder="{{_('Any additional note here')}}"></textarea> <textarea id="feedback-{{problem.id}}" rows="2" style="width: 100%"
placeholder="{{_('Any additional note here')}}"></textarea>
</td> </td>
</tr> </tr>
</tbody> </tbody>
@ -133,6 +133,15 @@
<center id="thank-{{problem.id}}" style="display: none; margin-top: 3em"></center> <center id="thank-{{problem.id}}" style="display: none; margin-top: 3em"></center>
{% endif %} {% endif %}
</div> </div>
<div class="show-more"> {{_("...More")}} </div>
<div class="actionbar-box">
{% set pagevote = problem.pagevote %}
{% set bookmark = problem.bookmark %}
{% set hide_actionbar_comment = True %}
{% set include_hr = True %}
{% set share_url = request.build_absolute_uri(problem.get_absolute_url()) %}
{% include "actionbar/list.html" %}
</div>
</div> </div>
{% endfor %} {% endfor %}
{% if page_obj.num_pages > 1 %} {% if page_obj.num_pages > 1 %}

View file

@ -32,21 +32,20 @@
{% block js_media %} {% block js_media %}
<script type="text/javascript"> <script type="text/javascript">
function activateBlogBoxOnClick() { function activateBlogBoxOnClick() {
$('.blog-box').on('click', function () { $('.show-more').on('click', function () {
var $description = $(this).children('.blog-description'); var $description = $(this).parent().children('.blog-description');
var max_height = $description.css('max-height'); var max_height = $description.css('max-height');
if (max_height !== 'fit-content') { if (max_height !== 'fit-content') {
$description.css('max-height', 'fit-content'); $description.css('max-height', 'fit-content');
$(this).css('cursor', 'auto'); $(this).parent().css('cursor', 'auto');
$(this).removeClass('pre-expand-blog'); $(this).parent().removeClass('pre-expand-blog');
$(this).find('.actionbar').show(); console.log($(this).parent());
$(this).hide();
} }
}) })
$('.blog-box').each(function () { $('.blog-box').each(function () {
if ($(this).prop('scrollHeight') > $(this).height()) { if ($(this).prop('scrollHeight') > $(this).height()) {
$(this).addClass('pre-expand-blog'); $(this).addClass('pre-expand-blog');
$(this).css('cursor', 'pointer');
$(this).find('.actionbar').hide();
} }
}); });
} }