mirror of
https://gitee.com/koogua/course-tencent-cloud.git
synced 2025-06-26 04:21:27 +08:00
Merge branch 'koogua/v1.5.7' into demo
This commit is contained in:
commit
77d7fef2a9
@ -1,7 +1,11 @@
|
||||
### [v1.5.7](https://gitee.com/koogua/course-tencent-cloud/releases/v1.5.7)(2022-08-28)
|
||||
|
||||
- 清理群组残留
|
||||
- 升级腾讯云存储SDK到v2.5.6
|
||||
- 优化HtmlPurifier缓存目录自动创建
|
||||
- 优化问题回答排序问题
|
||||
- 整理查询构建语句
|
||||
- 整理优化CSS
|
||||
|
||||
### [v1.5.6](https://gitee.com/koogua/course-tencent-cloud/releases/v1.5.6)(2022-08-08)
|
||||
|
||||
|
@ -10,9 +10,9 @@
|
||||
</div>
|
||||
|
||||
<div class="layout-main">
|
||||
<div class="writer-content wrap">
|
||||
<div class="layout-content writer-content wrap">
|
||||
<form class="layui-form" method="POST" action="{{ url({'for':'home.answer.create'}) }}">
|
||||
<div class="layui-form-item first-form-item">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input" type="text" name="title" value="{{ question.title }}" disabled="disabled">
|
||||
</div>
|
||||
@ -30,12 +30,11 @@
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="layout-sidebar writer-sidebar wrap">
|
||||
{{ partial('answer/tips') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if auth_user.answer_count < 3 %}
|
||||
<div id="tips" data-url="{{ url({'for':'home.answer.tips'}) }}"></div>
|
||||
{% endif %}
|
||||
|
||||
{% endblock %}
|
||||
|
||||
{% block include_js %}
|
||||
|
@ -10,9 +10,9 @@
|
||||
</div>
|
||||
|
||||
<div class="layout-main">
|
||||
<div class="writer-content wrap">
|
||||
<div class="layout-content writer-content wrap">
|
||||
<form class="layui-form" method="POST" action="{{ url({'for':'home.answer.update','id':answer.id}) }}">
|
||||
<div class="layui-form-item first-form-item">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input" type="text" name="title" value="{{ question.title }}" disabled="disabled">
|
||||
</div>
|
||||
@ -29,6 +29,9 @@
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="layout-sidebar writer-sidebar wrap">
|
||||
{{ partial('answer/tips') }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
|
@ -6,20 +6,17 @@
|
||||
{% set action_url = article.id > 0 ? url({'for':'home.article.update','id':article.id}) : url({'for':'home.article.create'}) %}
|
||||
{% set source_url_display = article.source_type == 1 ? 'display:none;' : 'display:block;' %}
|
||||
|
||||
<div class="writer-breadcrumb">
|
||||
<div class="breadcrumb">
|
||||
<span class="layui-breadcrumb">
|
||||
<a href="/">首页</a>
|
||||
<a><cite>{{ title }}</cite></a>
|
||||
</span>
|
||||
<span class="publish">
|
||||
<a href="javascript:" class="layui-btn layui-btn-sm">发布文章 <i class="layui-icon layui-icon-triangle-d"></i></a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="layout-main">
|
||||
<form class="layui-form" method="POST" action="{{ action_url }}">
|
||||
<div class="writer-content wrap">
|
||||
<div class="layui-form-item first-form-item">
|
||||
<form class="layui-form" method="POST" action="{{ action_url }}">
|
||||
<div class="layout-main">
|
||||
<div class="layout-content writer-content wrap">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input" type="text" name="title" value="{{ article.title }}" placeholder="请输入标题..." lay-verify="required">
|
||||
</div>
|
||||
@ -30,42 +27,40 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="layer-publish" style="display:none;">
|
||||
<div class="writer-sidebar">
|
||||
<div class="layout-sidebar writer-sidebar wrap">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">分类标签</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="xm-tag-ids"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">来源类型</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="source_type" lay-filter="source_type" lay-verify="required">
|
||||
<option value="">请选择</option>
|
||||
{% for value,title in source_types %}
|
||||
<option value="{{ value }}" {% if article.source_type == value %}selected="selected"{% endif %}>{{ title }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div id="source-url-block" style="{{ source_url_display }}">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">分类标签</label>
|
||||
<label class="layui-form-label">来源网址</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="xm-tag-ids"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">来源类型</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="source_type" lay-filter="source_type" lay-verify="required">
|
||||
<option value="">请选择</option>
|
||||
{% for value,title in source_types %}
|
||||
<option value="{{ value }}" {% if article.source_type == value %}selected="selected"{% endif %}>{{ title }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div id="source-url-block" style="{{ source_url_display }}">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">来源网址</label>
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input" type="text" name="source_url" value="{{ article.source_url }}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item last-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn layui-btn-fluid kg-submit" lay-submit="true" lay-filter="go">确认发布</button>
|
||||
<input class="layui-input" type="text" name="source_url" value="{{ article.source_url }}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn layui-btn-fluid kg-submit" lay-submit="true" lay-filter="go">确认发布</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="layui-hide">
|
||||
<input type="hidden" name="xm_tags" value='{{ xm_tags|json_encode }}'>
|
||||
|
@ -5,20 +5,17 @@
|
||||
{% set title = question.id > 0 ? '编辑问题' : '提问题' %}
|
||||
{% set action_url = question.id > 0 ? url({'for':'home.question.update','id':question.id}) : url({'for':'home.question.create'}) %}
|
||||
|
||||
<div class="writer-breadcrumb">
|
||||
<div class="breadcrumb">
|
||||
<span class="layui-breadcrumb">
|
||||
<a href="/">首页</a>
|
||||
<a><cite>{{ title }}</cite></a>
|
||||
</span>
|
||||
<span class="publish">
|
||||
<a href="javascript:" class="layui-btn layui-btn-sm">发布问题 <i class="layui-icon layui-icon-triangle-d"></i></a>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="layout-main">
|
||||
<form class="layui-form" method="POST" action="{{ action_url }}">
|
||||
<div class="writer-content wrap">
|
||||
<div class="layui-form-item first-form-item">
|
||||
<form class="layui-form" method="POST" action="{{ action_url }}">
|
||||
<div class="layout-main">
|
||||
<div class="layout-content writer-content wrap">
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<input class="layui-input" type="text" name="title" value="{{ question.title }}" placeholder="请输入标题..." lay-verify="required">
|
||||
</div>
|
||||
@ -29,23 +26,21 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="layer-publish" style="display:none;">
|
||||
<div class="writer-sidebar">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">分类标签</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="xm-tag-ids"></div>
|
||||
</div>
|
||||
<div class="layout-sidebar writer-sidebar wrap">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">分类标签</label>
|
||||
<div class="layui-input-block">
|
||||
<div id="xm-tag-ids"></div>
|
||||
</div>
|
||||
<div class="layui-form-item last-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn layui-btn-fluid kg-submit" lay-submit="true" lay-filter="go">确认发布</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<div class="layui-input-block">
|
||||
<button class="layui-btn layui-btn-fluid kg-submit" lay-submit="true" lay-filter="go">确认发布</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="layui-hide">
|
||||
<input type="hidden" name="xm_tags" value='{{ xm_tags|json_encode }}'>
|
||||
|
@ -61,11 +61,6 @@
|
||||
{% endif %}
|
||||
</div>
|
||||
<div id="answer-anchor"></div>
|
||||
{% if question.me.allow_answer == 1 %}
|
||||
<div class="answer-wrap wrap">
|
||||
<button class="layui-btn layui-btn-fluid btn-answer" data-url="{{ answer_add_url }}">回答问题</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if question.closed == 1 %}
|
||||
<div class="answer-wrap wrap">
|
||||
<button class="layui-btn layui-btn-fluid layui-btn-disabled">问题已关闭</button>
|
||||
@ -90,6 +85,11 @@
|
||||
<div class="sidebar">
|
||||
{{ partial('question/show_owner') }}
|
||||
</div>
|
||||
{% if question.me.allow_answer == 1 %}
|
||||
<div class="sidebar wrap">
|
||||
<button class="layui-btn layui-btn-danger layui-btn-fluid btn-answer" data-url="{{ answer_add_url }}">回答问题</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="sidebar" id="sidebar-related" data-url="{{ question_related_url }}"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -39,7 +39,11 @@ class Answer extends Repository
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
@ -54,11 +58,11 @@ class Answer extends Repository
|
||||
case 'popular':
|
||||
$orderBy = 'like_count DESC';
|
||||
break;
|
||||
case 'latest':
|
||||
$orderBy = 'id DESC';
|
||||
case 'accepted':
|
||||
$orderBy = 'accepted DESC, like_count DESC';
|
||||
break;
|
||||
default:
|
||||
$orderBy = 'accepted DESC, like_count DESC';
|
||||
$orderBy = 'id DESC';
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -50,7 +50,11 @@ class Article extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['category_id'])) {
|
||||
$builder->andWhere('category_id = :category_id:', ['category_id' => $where['category_id']]);
|
||||
if (is_array($where['category_id'])) {
|
||||
$builder->inWhere('category_id', $where['category_id']);
|
||||
} else {
|
||||
$builder->andWhere('category_id = :category_id:', ['category_id' => $where['category_id']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['owner_id'])) {
|
||||
@ -58,7 +62,11 @@ class Article extends Repository
|
||||
}
|
||||
|
||||
if (isset($where['source_type'])) {
|
||||
$builder->andWhere('source_type = :source_type:', ['source_type' => $where['source_type']]);
|
||||
if (is_array($where['source_type'])) {
|
||||
$builder->inWhere('source_type', $where['source_type']);
|
||||
} else {
|
||||
$builder->andWhere('source_type = :source_type:', ['source_type' => $where['source_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['title'])) {
|
||||
@ -73,8 +81,12 @@ class Article extends Repository
|
||||
$builder->andWhere('featured = :featured:', ['featured' => $where['featured']]);
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (!empty($where['published'])) {
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['closed'])) {
|
||||
|
@ -37,15 +37,23 @@ class Comment extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['item_type'])) {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
if (is_array($where['item_type'])) {
|
||||
$builder->inWhere('item_type', $where['item_type']);
|
||||
} else {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['parent_id'])) {
|
||||
$builder->andWhere('parent_id = :parent_id:', ['parent_id' => $where['parent_id']]);
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (!empty($where['published'])) {
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -49,8 +49,12 @@ class Consult extends Repository
|
||||
$builder->andWhere('private = :private:', ['private' => $where['private']]);
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (!empty($where['published'])) {
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -33,7 +33,11 @@ class FlashSale extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['item_type'])) {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
if (is_array($where['item_type'])) {
|
||||
$builder->inWhere('item_type', $where['item_type']);
|
||||
} else {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
|
@ -37,7 +37,11 @@ class Notification extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['event_type'])) {
|
||||
$builder->andWhere('event_type = :event_type:', ['event_type' => $where['event_type']]);
|
||||
if (is_array($where['event_type'])) {
|
||||
$builder->inWhere('event_type', $where['event_type']);
|
||||
} else {
|
||||
$builder->andWhere('event_type = :event_type:', ['event_type' => $where['event_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['viewed'])) {
|
||||
|
@ -44,11 +44,27 @@ class Order extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['item_type'])) {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
if (is_array($where['item_type'])) {
|
||||
$builder->inWhere('item_type', $where['item_type']);
|
||||
} else {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['promotion_type'])) {
|
||||
if (is_array($where['promotion_type'])) {
|
||||
$builder->inWhere('promotion_type', $where['promotion_type']);
|
||||
} else {
|
||||
$builder->andWhere('promotion_type = :promotion_type:', ['promotion_type' => $where['promotion_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['status'])) {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
if (is_array($where['status'])) {
|
||||
$builder->inWhere('status', $where['status']);
|
||||
} else {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -29,7 +29,11 @@ class PointGift extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['type'])) {
|
||||
$builder->andWhere('type = :type:', ['type' => $where['type']]);
|
||||
if (is_array($where['type'])) {
|
||||
$builder->inWhere('type', $where['type']);
|
||||
} else {
|
||||
$builder->andWhere('type = :type:', ['type' => $where['type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['name'])) {
|
||||
|
@ -33,7 +33,11 @@ class PointHistory extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['event_type'])) {
|
||||
$builder->andWhere('event_type = :event_type:', ['event_type' => $where['event_type']]);
|
||||
if (is_array($where['event_type'])) {
|
||||
$builder->inWhere('event_type', $where['event_type']);
|
||||
} else {
|
||||
$builder->andWhere('event_type = :event_type:', ['event_type' => $where['event_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
switch ($sort) {
|
||||
|
@ -50,6 +50,14 @@ class Question extends Repository
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['category_id'])) {
|
||||
if (is_array($where['category_id'])) {
|
||||
$builder->inWhere('category_id', $where['category_id']);
|
||||
} else {
|
||||
$builder->andWhere('category_id = :category_id:', ['category_id' => $where['category_id']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['owner_id'])) {
|
||||
$builder->andWhere('owner_id = :owner_id:', ['owner_id' => $where['owner_id']]);
|
||||
}
|
||||
@ -70,8 +78,12 @@ class Question extends Repository
|
||||
$builder->andWhere('solved = :solved:', ['solved' => $where['solved']]);
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (!empty($where['published'])) {
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -35,7 +35,11 @@ class Refund extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['status'])) {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
if (is_array($where['status'])) {
|
||||
$builder->inWhere('status', $where['status']);
|
||||
} else {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -29,7 +29,11 @@ class Report extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['item_type'])) {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
if (is_array($where['item_type'])) {
|
||||
$builder->inWhere('item_type', $where['item_type']);
|
||||
} else {
|
||||
$builder->andWhere('item_type = :item_type:', ['item_type' => $where['item_type']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['owner_id'])) {
|
||||
|
@ -37,8 +37,12 @@ class Review extends Repository
|
||||
$builder->andWhere('owner_id = :owner_id:', ['owner_id' => $where['owner_id']]);
|
||||
}
|
||||
|
||||
if (isset($where['published'])) {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
if (!empty($where['published'])) {
|
||||
if (is_array($where['published'])) {
|
||||
$builder->inWhere('published', $where['published']);
|
||||
} else {
|
||||
$builder->andWhere('published = :published:', ['published' => $where['published']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -43,11 +43,19 @@ class Trade extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['channel'])) {
|
||||
$builder->andWhere('channel = :channel:', ['channel' => $where['channel']]);
|
||||
if (is_array($where['channel'])) {
|
||||
$builder->inWhere('channel', $where['channel']);
|
||||
} else {
|
||||
$builder->andWhere('channel = :channel:', ['channel' => $where['channel']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['status'])) {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
if (is_array($where['status'])) {
|
||||
$builder->inWhere('status', $where['status']);
|
||||
} else {
|
||||
$builder->andWhere('status = :status:', ['status' => $where['status']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['deleted'])) {
|
||||
|
@ -41,11 +41,19 @@ class User extends Repository
|
||||
}
|
||||
|
||||
if (!empty($where['edu_role'])) {
|
||||
$builder->andWhere('edu_role = :edu_role:', ['edu_role' => $where['edu_role']]);
|
||||
if (is_array($where['edu_role'])) {
|
||||
$builder->inWhere('edu_role', $where['edu_role']);
|
||||
} else {
|
||||
$builder->andWhere('edu_role = :edu_role:', ['edu_role' => $where['edu_role']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($where['admin_role'])) {
|
||||
$builder->andWhere('admin_role = :admin_role:', ['admin_role' => $where['admin_role']]);
|
||||
if (is_array($where['admin_role'])) {
|
||||
$builder->inWhere('admin_role', $where['admin_role']);
|
||||
} else {
|
||||
$builder->andWhere('admin_role = :admin_role:', ['admin_role' => $where['admin_role']]);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($where['vip'])) {
|
||||
|
@ -36,6 +36,8 @@ class AnswerList extends LogicService
|
||||
$page = $pagerQuery->getPage();
|
||||
$limit = $pagerQuery->getLimit();
|
||||
|
||||
$sort = $sort ?: 'accepted';
|
||||
|
||||
$answerRepo = new AnswerRepo();
|
||||
|
||||
$pager = $answerRepo->paginate($params, $sort, $page, $limit);
|
||||
|
@ -186,7 +186,7 @@ class Storage extends Service
|
||||
|
||||
try {
|
||||
|
||||
$response = $this->client->deleteObject([
|
||||
$response = $this->client->DeleteObject([
|
||||
'Bucket' => $bucket,
|
||||
'Key' => $key,
|
||||
]);
|
||||
|
@ -11,7 +11,7 @@
|
||||
"peppeocchi/php-cron-scheduler": "^3.0",
|
||||
"yansongda/pay": "^2.9",
|
||||
"tencentcloud/tencentcloud-sdk-php": "^3.0",
|
||||
"qcloud/cos-sdk-v5": "^2.0",
|
||||
"qcloud/cos-sdk-v5": "^2.5",
|
||||
"workerman/gateway-worker": "^3.0",
|
||||
"workerman/gatewayclient": "^3.0",
|
||||
"whichbrowser/parser": "^2.0",
|
||||
|
162
composer.lock
generated
162
composer.lock
generated
@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
"content-hash": "43344cdd5886ec75ae87aab19a6d2394",
|
||||
"content-hash": "622aedbe5e6c6efd01392f6d81b10bc9",
|
||||
"packages": [
|
||||
{
|
||||
"name": "bacon/bacon-qr-code",
|
||||
@ -15,16 +15,16 @@
|
||||
"reference": "3e9d791b67d0a2912922b7b7c7312f4b37af41e4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/3e9d791b67d0a2912922b7b7c7312f4b37af41e4",
|
||||
"reference": "3e9d791b67d0a2912922b7b7c7312f4b37af41e4",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/3e9d791b67d0a2912922b7b7c7312f4b37af41e4",
|
||||
"reference": "3e9d791b67d0a2912922b7b7c7312f4b37af41e4",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"dasprid/enum": "^1.0.3",
|
||||
@ -715,16 +715,16 @@
|
||||
"homepage": "https://github.com/endroid/qr-code",
|
||||
"keywords": [
|
||||
"bundle",
|
||||
"code",
|
||||
"endroid",
|
||||
"php",
|
||||
"qr",
|
||||
"qrcode"
|
||||
"code",
|
||||
"endroid",
|
||||
"php",
|
||||
"qr",
|
||||
"qrcode"
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/endroid/qr-code/issues",
|
||||
"source": "https://github.com/endroid/qr-code/tree/3.9.6"
|
||||
},
|
||||
"support": {
|
||||
"issues": "https://github.com/endroid/qr-code/issues",
|
||||
"source": "https://github.com/endroid/qr-code/tree/3.9.6"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
"url": "https://github.com/endroid",
|
||||
@ -801,16 +801,16 @@
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/guzzle/command/zipball/2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
|
||||
"reference": "2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"reference": "2aaa2521a8f8269d6f5dfc13fe2af12c76921034",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"guzzlehttp/guzzle": "^6.2",
|
||||
"guzzlehttp/promises": "~1.3",
|
||||
"guzzlehttp/psr7": "~1.0",
|
||||
@ -2255,50 +2255,66 @@
|
||||
},
|
||||
"time": "2017-10-23T01:57:42+00:00"
|
||||
},
|
||||
{
|
||||
"name": "qcloud/cos-sdk-v5",
|
||||
"version": "v2.1.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/tencentyun/cos-php-sdk-v5.git",
|
||||
"reference": "8dab76e9898f862c2cdc074b8411cbd77ca291f3"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/tencentyun/cos-php-sdk-v5/zipball/8dab76e9898f862c2cdc074b8411cbd77ca291f3",
|
||||
"reference": "8dab76e9898f862c2cdc074b8411cbd77ca291f3",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"guzzlehttp/guzzle": "~6.3",
|
||||
"guzzlehttp/guzzle-services": "~1.1",
|
||||
"php": ">=5.3.0"
|
||||
},
|
||||
"type": "library",
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Qcloud\\Cos\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
{
|
||||
"name": "qcloud/cos-sdk-v5",
|
||||
"version": "v2.5.6",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/tencentyun/cos-php-sdk-v5.git",
|
||||
"reference": "607ee49d372a799964206b6ae0a9eb2816201c42"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/tencentyun/cos-php-sdk-v5/zipball/607ee49d372a799964206b6ae0a9eb2816201c42",
|
||||
"reference": "607ee49d372a799964206b6ae0a9eb2816201c42",
|
||||
"shasum": "",
|
||||
"mirrors": [
|
||||
{
|
||||
"url": "https://mirrors.aliyun.com/composer/dists/%package%/%reference%.%type%",
|
||||
"preferred": true
|
||||
}
|
||||
]
|
||||
},
|
||||
"require": {
|
||||
"ext-curl": "*",
|
||||
"ext-json": "*",
|
||||
"ext-simplexml": "*",
|
||||
"guzzlehttp/guzzle": "^6.2.1 || ^7.0",
|
||||
"guzzlehttp/guzzle-services": "^1.1",
|
||||
"guzzlehttp/psr7": "^1.3.1 || ^2.0",
|
||||
"php": ">=5.6"
|
||||
},
|
||||
"type": "library",
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "2.4-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
"files": [
|
||||
"src/Common.php"
|
||||
],
|
||||
"psr-4": {
|
||||
"Qcloud\\Cos\\": "src/"
|
||||
}
|
||||
},
|
||||
"notification-url": "https://packagist.org/downloads/",
|
||||
"license": [
|
||||
"MIT"
|
||||
],
|
||||
"authors": [
|
||||
{
|
||||
"name": "yaozongyou",
|
||||
"email": "yaozongyou@vip.qq.com"
|
||||
},
|
||||
{
|
||||
"name": "lewzylu",
|
||||
"email": "327874225@qq.com"
|
||||
}
|
||||
{
|
||||
"name": "yaozongyou",
|
||||
"email": "yaozongyou@vip.qq.com"
|
||||
},
|
||||
{
|
||||
"name": "lewzylu",
|
||||
"email": "327874225@qq.com"
|
||||
},
|
||||
{
|
||||
"name": "tuunalai",
|
||||
"email": "550566181@qq.com"
|
||||
}
|
||||
],
|
||||
"description": "PHP SDK for QCloud COS",
|
||||
"keywords": [
|
||||
@ -2308,9 +2324,9 @@
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://github.com/tencentyun/cos-php-sdk-v5/issues",
|
||||
"source": "https://github.com/tencentyun/cos-php-sdk-v5/tree/v2.1.1"
|
||||
"source": "https://github.com/tencentyun/cos-php-sdk-v5/tree/v2.5.6"
|
||||
},
|
||||
"time": "2020-09-27T03:57:55+00:00"
|
||||
"time": "2022-06-07T14:49:19+00:00"
|
||||
},
|
||||
{
|
||||
"name": "ralouphie/getallheaders",
|
||||
|
@ -123,12 +123,12 @@
|
||||
width: 320px;
|
||||
}
|
||||
|
||||
.writer-sidebar {
|
||||
padding: 20px;
|
||||
.writer-content {
|
||||
padding-top: 30px;
|
||||
}
|
||||
|
||||
.writer-content .first-form-item {
|
||||
margin-top: 10px;
|
||||
.writer-sidebar {
|
||||
padding-top: 30px;
|
||||
}
|
||||
|
||||
.writer-content .layui-input-block,
|
||||
@ -147,7 +147,6 @@
|
||||
text-align: inherit;
|
||||
}
|
||||
|
||||
.writer-sidebar .last-form-item,
|
||||
.report-form .last-form-item {
|
||||
margin-top: 20px;
|
||||
}
|
||||
@ -156,14 +155,6 @@
|
||||
min-height: 80px;
|
||||
}
|
||||
|
||||
.writer-breadcrumb {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
height: 30px;
|
||||
line-height: 30px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.breadcrumb .share {
|
||||
position: absolute;
|
||||
top: 2px;
|
||||
@ -598,7 +589,7 @@
|
||||
}
|
||||
|
||||
.answer-tips h3 {
|
||||
margin-bottom: 5px;
|
||||
margin-bottom: 10px;
|
||||
font-weight: normal;
|
||||
font-size: inherit;
|
||||
}
|
||||
@ -607,6 +598,10 @@
|
||||
color: #666;
|
||||
}
|
||||
|
||||
.answer-tips li {
|
||||
line-height: 30px;
|
||||
}
|
||||
|
||||
.answer-tips .suggest-text,
|
||||
.answer-tips .layui-icon-ok-circle {
|
||||
color: green;
|
||||
|
@ -2,15 +2,5 @@ layui.use(['jquery', 'layer'], function () {
|
||||
|
||||
var $ = layui.jquery;
|
||||
var layer = layui.layer;
|
||||
var $tips = $('#tips');
|
||||
|
||||
if ($tips.length > 0) {
|
||||
layer.open({
|
||||
type: 2,
|
||||
title: '答题指南',
|
||||
content: $tips.data('url'),
|
||||
area: ['600px', '320px'],
|
||||
});
|
||||
}
|
||||
|
||||
});
|
Loading…
x
Reference in New Issue
Block a user