1
0
mirror of https://gitee.com/koogua/course-tencent-cloud.git synced 2025-06-25 12:09:09 +08:00

Merge branch 'koogua/v1.6.1' of gitee.com:koogua/course-tencent-cloud into koogua/v1.6.1

This commit is contained in:
koogua 2022-11-07 10:34:19 +08:00
commit bd4d340f53
8 changed files with 89 additions and 53 deletions

View File

@ -4,7 +4,7 @@
{% set sort_val = request.get('sort','trim','latest') %} {% set sort_val = request.get('sort','trim','latest') %}
{% set pager_url = url({'for':'home.article.pager'}, params) %} {% set pager_url = url({'for':'home.article.pager'}, params) %}
{% set top_authors_url = url({'for':'home.widget.top_authors'}) %} {% set top_authors_url = url({'for':'home.widget.top_authors'},{'limit':5}) %}
{% set my_tags_url = url({'for':'home.widget.my_tags'},{'type':'article'}) %} {% set my_tags_url = url({'for':'home.widget.my_tags'},{'type':'article'}) %}
<div class="breadcrumb"> <div class="breadcrumb">

View File

@ -1,23 +1,35 @@
{%- macro show_lesson_list(chapter) %}
<ul class="sidebar-lesson-list">
{% for lesson in chapter.children %}
{% set url = url({'for':'home.chapter.show','id':lesson.id}) %}
{% set active = (chapter.id == lesson.id) ? 'active' : 'normal' %}
<li class="lesson-title layui-elip">
{% if lesson.me.owned == 1 %}
<a class="{{ active }}" href="{{ url }}" title="{{ lesson.title }}">{{ lesson.title }}</a>
{% else %}
<span class="deny" title="{{ lesson.title }}">{{ lesson.title }}</span>
{% endif %}
</li>
{% endfor %}
</ul>
{%- endmacro %}
<div class="layui-card sidebar-card sidebar-chapter"> <div class="layui-card sidebar-card sidebar-chapter">
<div class="layui-card-header">课程目录</div> <div class="layui-card-header">课程目录</div>
<div class="layui-card-body"> <div class="layui-card-body">
<div class="sidebar-chapter-list"> {% if catalog|length > 1 %}
{% for item in catalog %} <div class="sidebar-chapter-list">
<div class="chapter-title layui-elip">{{ item.title }}</div> {% for item in catalog %}
<ul class="sidebar-lesson-list"> <div class="chapter-title layui-elip">{{ item.title }}</div>
{% for lesson in item.children %} <div class="sidebar-lesson-list">
{% set url = url({'for':'home.chapter.show','id':lesson.id}) %} {{ show_lesson_list(item) }}
{% set active = (chapter.id == lesson.id) ? 'active' : 'normal' %} </div>
<li class="lesson-title layui-elip"> {% endfor %}
{% if lesson.me.owned == 1 %} </div>
<a class="{{ active }}" href="{{ url }}" title="{{ lesson.title }}">{{ lesson.title }}</a> {% else %}
{% else %} <div class="sidebar-lesson-list">
<span class="deny" title="{{ lesson.title }}">{{ lesson.title }}</span> {{ show_lesson_list(catalog[0]) }}
{% endif %} </div>
</li> {% endif %}
{% endfor %}
</ul>
{% endfor %}
</div>
</div> </div>
</div> </div>

View File

@ -1,3 +1,19 @@
{%- macro show_lesson_list(chapter) %}
<ul class="lesson-list">
{% for lesson in chapter.children %}
{% if lesson.model == 1 %}
<li class="lesson-item">{{ vod_lesson_info(lesson) }}</li>
{% elseif lesson.model == 2 %}
<li class="lesson-item">{{ live_lesson_info(lesson) }}</li>
{% elseif lesson.model == 3 %}
<li class="lesson-item">{{ read_lesson_info(lesson) }}</li>
{% elseif lesson.model == 4 %}
<li class="lesson-item">{{ offline_lesson_info(lesson) }}</li>
{% endif %}
{% endfor %}
</ul>
{%- endmacro %}
{%- macro vod_lesson_info(lesson) %} {%- macro vod_lesson_info(lesson) %}
{% set url = lesson.me.owned ? url({'for':'home.chapter.show','id':lesson.id}) : '' %} {% set url = lesson.me.owned ? url({'for':'home.chapter.show','id':lesson.id}) : '' %}
{% set priv = lesson.me.owned ? 'allow' : 'deny' %} {% set priv = lesson.me.owned ? 'allow' : 'deny' %}
@ -87,28 +103,20 @@
{% set show_all = course.lesson_count < 30 %} {% set show_all = course.lesson_count < 30 %}
{% if chapters %} {% if chapters|length > 0 %}
<div class="layui-collapse" lay-accordion="true"> {% if chapters|length > 1 %}
{% for chapter in chapters %} <div class="layui-collapse" lay-accordion="true">
{% set show_class = (show_all or loop.first) ? 'layui-show' : '' %} {% for chapter in chapters %}
<div class="layui-colla-item"> {% set show_class = (show_all or loop.first) ? 'layui-show' : '' %}
<h2 class="layui-colla-title">{{ chapter.title }}</h2> <div class="layui-colla-item">
<div class="layui-colla-content {{ show_class }}"> <h2 class="layui-colla-title">{{ chapter.title }}</h2>
<ul class="lesson-list"> <div class="layui-colla-content {{ show_class }}">
{% for lesson in chapter.children %} {{ show_lesson_list(chapter) }}
{% if lesson.model == 1 %} </div>
<li class="lesson-item">{{ vod_lesson_info(lesson) }}</li>
{% elseif lesson.model == 2 %}
<li class="lesson-item">{{ live_lesson_info(lesson) }}</li>
{% elseif lesson.model == 3 %}
<li class="lesson-item">{{ read_lesson_info(lesson) }}</li>
{% elseif lesson.model == 4 %}
<li class="lesson-item">{{ offline_lesson_info(lesson) }}</li>
{% endif %}
{% endfor %}
</ul>
</div> </div>
</div> {% endfor %}
{% endfor %} </div>
</div> {% else %}
{{ show_lesson_list(chapters[0]) }}
{% endif %}
{% endif %} {% endif %}

View File

@ -4,8 +4,8 @@
{% set sort_val = request.get('sort','trim','latest') %} {% set sort_val = request.get('sort','trim','latest') %}
{% set pager_url = url({'for':'home.question.pager'}, params) %} {% set pager_url = url({'for':'home.question.pager'}, params) %}
{% set hot_questions_url = url({'for':'home.widget.hot_questions'}) %} {% set hot_questions_url = url({'for':'home.widget.hot_questions'},{'limit':10}) %}
{% set top_answerers_url = url({'for':'home.widget.top_answerers'}) %} {% set top_answerers_url = url({'for':'home.widget.top_answerers'},{'limit':5}) %}
{% set my_tags_url = url({'for':'home.widget.my_tags'},{'type':'question'}) %} {% set my_tags_url = url({'for':'home.widget.my_tags'},{'type':'question'}) %}
<div class="breadcrumb"> <div class="breadcrumb">

View File

@ -15,11 +15,17 @@ class TopAuthorList extends LogicService
public function handle() public function handle()
{ {
$limit = $this->request->getQuery('limit', 'int', 10);
$cache = new TopAuthorListCache(); $cache = new TopAuthorListCache();
$result = $cache->get(); $list = $cache->get();
return $result ?: []; if($limit < count($list)) {
$list = array_slice($list, $limit);
}
return $list;
} }
} }

View File

@ -34,10 +34,8 @@ class AccountLogin extends LogicService
$subscribe = $subscribeRepo->findByUserId($userId); $subscribe = $subscribeRepo->findByUserId($userId);
if ($subscribe) { if ($subscribe) {
$notice = new WeChatAccountLoginNotice(); $notice = new WeChatAccountLoginNotice();
$notice->handle($subscribe, $params);
return $notice->handle($subscribe, $params);
} }
} }

View File

@ -15,11 +15,17 @@ class HotQuestionList extends LogicService
public function handle() public function handle()
{ {
$limit = $this->request->getQuery('limit', 'int', 10);
$cache = new HotQuestionListCache(); $cache = new HotQuestionListCache();
$result = $cache->get(); $list = $cache->get();
return $result ?: []; if($limit < count($list)) {
$list = array_slice($list, $limit);
}
return $list;
} }
} }

View File

@ -15,11 +15,17 @@ class TopAnswererList extends LogicService
public function handle() public function handle()
{ {
$limit = $this->request->getQuery('limit', 'int', 10);
$cache = new TopAnswererListCache(); $cache = new TopAnswererListCache();
$result = $cache->get(); $list = $cache->get();
return $result ?: []; if($limit < count($list)) {
$list = array_slice($list, $limit);
}
return $list;
} }
} }