文案:全站「你」改为「您」
用户要求邮件模板统一用敬语,确认后网页也一并改。
范围:
- lib/mailer.php 61 处(全部邮件模板:回执/回复/状态/审核/关闭/不公开/新反馈)
- new.php 6 处(提交页提示、占位文字)
- thread.php 4 处(提交成功提示、回复框占位)
- lib/layout.php 1 处(页脚隐私说明)
- admin.php 5 处(测试邮件正文、关闭邮件主题模板、通知规则说明、
先审后显说明)
已核查无「您们」等机械替换产生的别扭表达;
邮件模板渲染后「你」零残留、「您」77 处,文案通顺。
线上四个页面可见文字均无「你」,全站路由 200。
This commit is contained in:
@@ -302,7 +302,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['act'])) {
|
|||||||
'id' => 0,
|
'id' => 0,
|
||||||
'software_id' => $swRow ? (int)$swRow['id'] : 0,
|
'software_id' => $swRow ? (int)$swRow['id'] : 0,
|
||||||
'title' => '这是一封测试邮件,用来检查排版与配色',
|
'title' => '这是一封测试邮件,用来检查排版与配色',
|
||||||
'body' => "这是测试用的反馈正文。\n如果你收到这封信,说明 SMTP 配置正确,配色与图标也应当对应「"
|
'body' => "这是测试用的反馈正文。\n如果您收到这封信,说明 SMTP 配置正确,配色与图标也应当对应「"
|
||||||
. ($swRow ? (string)$swRow['name'] : '默认软件') . "」。\n\n发送时间:" . date('Y-m-d H:i:s'),
|
. ($swRow ? (string)$swRow['name'] : '默认软件') . "」。\n\n发送时间:" . date('Y-m-d H:i:s'),
|
||||||
'author_name' => '测试',
|
'author_name' => '测试',
|
||||||
'author_email' => $to,
|
'author_email' => $to,
|
||||||
@@ -1157,11 +1157,11 @@ fb_layout_head('管理后台', ['robots' => 'noindex,nofollow']);
|
|||||||
<input type="hidden" name="oss_visibility" value="<?php echo e((string)fb_cfg('oss.visibility', 'private')); ?>">
|
<input type="hidden" name="oss_visibility" value="<?php echo e((string)fb_cfg('oss.visibility', 'private')); ?>">
|
||||||
|
|
||||||
<h2 style="margin:24px 0 10px">审核</h2>
|
<h2 style="margin:24px 0 10px">审核</h2>
|
||||||
<label class="check"><input type="checkbox" name="moderation_enabled" value="1"<?php echo fb_moderation_on() ? ' checked' : ''; ?>> 先审后显(新提交的问题默认不公开,需你通过后才显示)</label>
|
<label class="check"><input type="checkbox" name="moderation_enabled" value="1"<?php echo fb_moderation_on() ? ' checked' : ''; ?>> 先审后显(新提交的问题默认不公开,需您通过后才显示)</label>
|
||||||
<label class="field"><span>关闭通知邮件标题</span>
|
<label class="field"><span>关闭通知邮件标题</span>
|
||||||
<input type="text" name="moderation_close_mail_subject"
|
<input type="text" name="moderation_close_mail_subject"
|
||||||
placeholder="留空即用:关于你反馈的问题《%s》"
|
placeholder="留空即用:关于您反馈的问题《%s》"
|
||||||
value="<?php echo e(fb_form_val(fb_cfg('moderation.close_mail_subject', '关于你反馈的问题《%s》'), '关于你反馈的问题《%s》', 'moderation.close_mail_subject')); ?>">
|
value="<?php echo e(fb_form_val(fb_cfg('moderation.close_mail_subject', '关于您反馈的问题《%s》'), '关于您反馈的问题《%s》', 'moderation.close_mail_subject')); ?>">
|
||||||
<i class="hint">%s 会替换成问题标题。留空则用默认模板。</i></label>
|
<i class="hint">%s 会替换成问题标题。留空则用默认模板。</i></label>
|
||||||
|
|
||||||
<div class="form-actions">
|
<div class="form-actions">
|
||||||
@@ -1284,7 +1284,7 @@ fb_layout_head('管理后台', ['robots' => 'noindex,nofollow']);
|
|||||||
$smVerify= (bool)fb_cfg('smtp.verify_ssl', true);
|
$smVerify= (bool)fb_cfg('smtp.verify_ssl', true);
|
||||||
?>
|
?>
|
||||||
<label class="check"><input type="checkbox" name="smtp_enabled" value="1"<?php echo $smOn ? ' checked' : ''; ?>> 开启邮件通知
|
<label class="check"><input type="checkbox" name="smtp_enabled" value="1"<?php echo $smOn ? ' checked' : ''; ?>> 开启邮件通知
|
||||||
<span class="hint" style="display:block;margin:2px 0 0 24px">开启后,有人回复你反馈的问题会发信通知提交人。填好下方参数并用「发送测试邮件」验证通了再勾。</span></label>
|
<span class="hint" style="display:block;margin:2px 0 0 24px">开启后,有人回复您反馈的问题会发信通知提交人。填好下方参数并用「发送测试邮件」验证通了再勾。</span></label>
|
||||||
|
|
||||||
<div class="grid2">
|
<div class="grid2">
|
||||||
<label class="field"><span>SMTP 服务器</span>
|
<label class="field"><span>SMTP 服务器</span>
|
||||||
|
|||||||
+1
-1
@@ -127,7 +127,7 @@ function fb_layout_foot() {
|
|||||||
?>
|
?>
|
||||||
<footer class="foot">
|
<footer class="foot">
|
||||||
<div class="wrap">
|
<div class="wrap">
|
||||||
<p class="muted">本站仅保存你提交的昵称、邮箱与内容,用于问题跟进;页面不会公开展示邮箱与手机号。</p>
|
<p class="muted">本站仅保存您提交的昵称、邮箱与内容,用于问题跟进;页面不会公开展示邮箱与手机号。</p>
|
||||||
<p class="muted foot-line">
|
<p class="muted foot-line">
|
||||||
<?php if ($showCredit): ?><span><?php echo e((string)fb_cfg('site_name', '轻反馈')); ?> · 由 <a href="<?php echo e($creditUrl); ?>" target="_blank" rel="noopener">FeedLite</a> 驱动</span><?php endif; ?>
|
<?php if ($showCredit): ?><span><?php echo e((string)fb_cfg('site_name', '轻反馈')); ?> · 由 <a href="<?php echo e($creditUrl); ?>" target="_blank" rel="noopener">FeedLite</a> 驱动</span><?php endif; ?>
|
||||||
<?php if ($showCredit): ?><span class="dot">·</span><?php endif; ?>
|
<?php if ($showCredit): ?><span class="dot">·</span><?php endif; ?>
|
||||||
|
|||||||
+61
-61
@@ -128,8 +128,8 @@ function fb_smtp_send(array $s, $to, $subject, $html) {
|
|||||||
* echo fb_mail_layout([
|
* echo fb_mail_layout([
|
||||||
* 'preheader' => '预览摘要(收件箱列表里显示的那行灰字)',
|
* 'preheader' => '预览摘要(收件箱列表里显示的那行灰字)',
|
||||||
* 'badge' => ['text' => '处理中', 'color' => '#0a6cf5'],
|
* 'badge' => ['text' => '处理中', 'color' => '#0a6cf5'],
|
||||||
* 'title' => '你的反馈已被受理',
|
* 'title' => '您的反馈已被受理',
|
||||||
* 'intro' => '老杨,你好:',
|
* 'intro' => '老杨,您好:',
|
||||||
* 'blocks' => [ ... ], // 内容块,见下
|
* 'blocks' => [ ... ], // 内容块,见下
|
||||||
* 'button' => ['text' => '查看详情', 'url' => 'https://...'],
|
* 'button' => ['text' => '查看详情', 'url' => 'https://...'],
|
||||||
* 'footer' => '此邮件由系统自动发送。',
|
* 'footer' => '此邮件由系统自动发送。',
|
||||||
@@ -431,7 +431,7 @@ if (!function_exists('fb_mail_layout')) {
|
|||||||
. ($recipient !== ''
|
. ($recipient !== ''
|
||||||
? '<p style="margin:0;font-size:11.5px;line-height:1.6;color:#b3b9c2">'
|
? '<p style="margin:0;font-size:11.5px;line-height:1.6;color:#b3b9c2">'
|
||||||
. '这封邮件发给了 ' . fb_mail_esc($recipient) . '。'
|
. '这封邮件发给了 ' . fb_mail_esc($recipient) . '。'
|
||||||
. '如果这不是你,忽略即可。</p>' : '')
|
. '如果这不是您,忽略即可。</p>' : '')
|
||||||
. '<p style="margin:8px 0 0;font-size:11.5px;color:#b3b9c2">'
|
. '<p style="margin:8px 0 0;font-size:11.5px;color:#b3b9c2">'
|
||||||
. '<a href="' . fb_mail_esc($base) . '" target="_blank"'
|
. '<a href="' . fb_mail_esc($base) . '" target="_blank"'
|
||||||
. ' style="color:#9aa2ad;text-decoration:none">'
|
. ' style="color:#9aa2ad;text-decoration:none">'
|
||||||
@@ -456,8 +456,8 @@ function fb_notify_html($thread, $reply, $isAdmin) {
|
|||||||
$safeRName = htmlspecialchars($rname, ENT_QUOTES, 'UTF-8');
|
$safeRName = htmlspecialchars($rname, ENT_QUOTES, 'UTF-8');
|
||||||
|
|
||||||
return '<div style="font-family:-apple-system,Segoe UI,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.7;color:#1f2329">'
|
return '<div style="font-family:-apple-system,Segoe UI,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.7;color:#1f2329">'
|
||||||
. '<p>' . $safeName . ',你好:</p>'
|
. '<p>' . $safeName . ',您好:</p>'
|
||||||
. '<p>你在「' . htmlspecialchars($site, ENT_QUOTES, 'UTF-8') . '」提交的问题 <strong>《' . $safeTitle . '》</strong> 有了新的回复:</p>'
|
. '<p>您在「' . htmlspecialchars($site, ENT_QUOTES, 'UTF-8') . '」提交的问题 <strong>《' . $safeTitle . '》</strong> 有了新的回复:</p>'
|
||||||
. '<blockquote style="margin:12px 0;padding:12px 16px;border-left:3px solid #0a6cf5;background:#f5f8ff;border-radius:6px">'
|
. '<blockquote style="margin:12px 0;padding:12px 16px;border-left:3px solid #0a6cf5;background:#f5f8ff;border-radius:6px">'
|
||||||
. '<div style="color:#6b7280;font-size:13px;margin-bottom:6px">' . $safeRName . ' 回复:</div>'
|
. '<div style="color:#6b7280;font-size:13px;margin-bottom:6px">' . $safeRName . ' 回复:</div>'
|
||||||
. $rbody
|
. $rbody
|
||||||
@@ -504,19 +504,19 @@ function fb_notify_closed_html(array $thread, string $note) {
|
|||||||
$mail = htmlspecialchars((string)fb_cfg('admin_email'), ENT_QUOTES, 'UTF-8');
|
$mail = htmlspecialchars((string)fb_cfg('admin_email'), ENT_QUOTES, 'UTF-8');
|
||||||
|
|
||||||
return '<div style="font-family:-apple-system,Segoe UI,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.7;color:#1f2329">'
|
return '<div style="font-family:-apple-system,Segoe UI,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.7;color:#1f2329">'
|
||||||
. '<p>' . $name . ',你好:</p>'
|
. '<p>' . $name . ',您好:</p>'
|
||||||
. '<p>感谢你反馈 <strong>《' . $title . '》</strong>。我们已经核实过,'
|
. '<p>感谢您反馈 <strong>《' . $title . '》</strong>。我们已经核实过,'
|
||||||
. '<strong>该情况并不是应用的问题</strong>,因此这条反馈已被关闭(不会公开显示)。</p>'
|
. '<strong>该情况并不是应用的问题</strong>,因此这条反馈已被关闭(不会公开显示)。</p>'
|
||||||
. '<div style="margin:14px 0;padding:12px 16px;border-left:3px solid #0a6cf5;background:#f5f8ff;border-radius:6px">'
|
. '<div style="margin:14px 0;padding:12px 16px;border-left:3px solid #0a6cf5;background:#f5f8ff;border-radius:6px">'
|
||||||
. '<div style="color:#6b7280;font-size:13px;margin-bottom:6px">官方说明:</div>'
|
. '<div style="color:#6b7280;font-size:13px;margin-bottom:6px">官方说明:</div>'
|
||||||
. $noteH
|
. $noteH
|
||||||
. '</div>'
|
. '</div>'
|
||||||
. '<p style="color:#6b7280;font-size:13px">你当时反馈的内容:</p>'
|
. '<p style="color:#6b7280;font-size:13px">您当时反馈的内容:</p>'
|
||||||
. '<div style="margin:8px 0 16px;padding:10px 14px;background:#f7f8fa;border-radius:6px;color:#4b5563;font-size:14px">'
|
. '<div style="margin:8px 0 16px;padding:10px 14px;background:#f7f8fa;border-radius:6px;color:#4b5563;font-size:14px">'
|
||||||
. $body
|
. $body
|
||||||
. '</div>'
|
. '</div>'
|
||||||
. ($mail !== '' ? '<p>如果上面的说明没能解决你的疑问,可以直接回复本邮件,我们会继续跟进;'
|
. ($mail !== '' ? '<p>如果上面的说明没能解决您的疑问,可以直接回复本邮件,我们会继续跟进;'
|
||||||
. '也可以发邮件到 ' . $mail . ' 补充说明。</p>' : '<p>如果上面的说明没能解决你的疑问,可以直接回复本邮件,我们会继续跟进。</p>')
|
. '也可以发邮件到 ' . $mail . ' 补充说明。</p>' : '<p>如果上面的说明没能解决您的疑问,可以直接回复本邮件,我们会继续跟进。</p>')
|
||||||
. '<hr style="border:none;border-top:1px solid #e5e7eb;margin:18px 0">'
|
. '<hr style="border:none;border-top:1px solid #e5e7eb;margin:18px 0">'
|
||||||
. '<p style="color:#9aa2ad;font-size:12px">此邮件由「' . htmlspecialchars($site, ENT_QUOTES, 'UTF-8') . '」自动发送。</p>'
|
. '<p style="color:#9aa2ad;font-size:12px">此邮件由「' . htmlspecialchars($site, ENT_QUOTES, 'UTF-8') . '」自动发送。</p>'
|
||||||
. '</div>';
|
. '</div>';
|
||||||
@@ -569,7 +569,7 @@ function fb_notify_log2(PDO $pdo, array $thread, $to, $reason, $ok, $err) {
|
|||||||
* 邮件通知事件(工单 #2)
|
* 邮件通知事件(工单 #2)
|
||||||
*
|
*
|
||||||
* 全部事件:
|
* 全部事件:
|
||||||
* reply 有人回复了你的反馈 → 发帖人
|
* reply 有人回复了您的反馈 → 发帖人
|
||||||
* status 处理状态变了 → 发帖人
|
* status 处理状态变了 → 发帖人
|
||||||
* approve 审核通过、已公开 → 发帖人
|
* approve 审核通过、已公开 → 发帖人
|
||||||
* hide 转为不公开 → 发帖人
|
* hide 转为不公开 → 发帖人
|
||||||
@@ -788,33 +788,33 @@ if (!function_exists('fb_notify_status_meta')) {
|
|||||||
$map = [
|
$map = [
|
||||||
'open' => [
|
'open' => [
|
||||||
'badge' => '待处理', 'color' => '#5c6572', 'tone' => 'muted',
|
'badge' => '待处理', 'color' => '#5c6572', 'tone' => 'muted',
|
||||||
'title' => '你的反馈已收到,正在等待处理',
|
'title' => '您的反馈已收到,正在等待处理',
|
||||||
'intro' => '我们已经收到你的反馈,会尽快安排处理。',
|
'intro' => '我们已经收到您的反馈,会尽快安排处理。',
|
||||||
'tip' => null,
|
'tip' => null,
|
||||||
],
|
],
|
||||||
'doing' => [
|
'doing' => [
|
||||||
'badge' => '处理中', 'color' => '#0a6cf5', 'tone' => 'info',
|
'badge' => '处理中', 'color' => '#0a6cf5', 'tone' => 'info',
|
||||||
'title' => '你反馈的问题正在处理中',
|
'title' => '您反馈的问题正在处理中',
|
||||||
'intro' => '我们已经开始跟进你反馈的问题,有进展会第一时间告诉你。',
|
'intro' => '我们已经开始跟进您反馈的问题,有进展会第一时间告诉您。',
|
||||||
'tip' => '感谢你的耐心等待,暂时不需要你做任何操作。',
|
'tip' => '感谢您的耐心等待,暂时不需要您做任何操作。',
|
||||||
],
|
],
|
||||||
'resolved' => [
|
'resolved' => [
|
||||||
'badge' => '已完成', 'color' => '#1e7b3c', 'tone' => 'ok',
|
'badge' => '已完成', 'color' => '#1e7b3c', 'tone' => 'ok',
|
||||||
'title' => '你反馈的问题已完成并上线',
|
'title' => '您反馈的问题已完成并上线',
|
||||||
'intro' => '好消息:你反馈的内容我们已经处理完成,并已发布上线。',
|
'intro' => '好消息:您反馈的内容我们已经处理完成,并已发布上线。',
|
||||||
'tip' => '建议更新到最新版本后试一下。如果问题仍然存在,直接在本页回复即可,我们会继续跟进。',
|
'tip' => '建议更新到最新版本后试一下。如果问题仍然存在,直接在本页回复即可,我们会继续跟进。',
|
||||||
],
|
],
|
||||||
'closed' => [
|
'closed' => [
|
||||||
'badge' => '已关闭', 'color' => '#8a6a15', 'tone' => 'warn',
|
'badge' => '已关闭', 'color' => '#8a6a15', 'tone' => 'warn',
|
||||||
'title' => '你反馈的问题已关闭',
|
'title' => '您反馈的问题已关闭',
|
||||||
'intro' => '你反馈的问题已经关闭。',
|
'intro' => '您反馈的问题已经关闭。',
|
||||||
'tip' => null,
|
'tip' => null,
|
||||||
],
|
],
|
||||||
'wontfix' => [
|
'wontfix' => [
|
||||||
'badge' => '不予考虑', 'color' => '#b4553c', 'tone' => 'warn',
|
'badge' => '不予考虑', 'color' => '#b4553c', 'tone' => 'warn',
|
||||||
'title' => '关于你反馈的问题,我们的处理意见',
|
'title' => '关于您反馈的问题,我们的处理意见',
|
||||||
'intro' => '感谢你的反馈。经核实,这条反馈我们暂时不会改动,原因如下。',
|
'intro' => '感谢您的反馈。经核实,这条反馈我们暂时不会改动,原因如下。',
|
||||||
'tip' => '如果你认为这个判断有误,或者有补充信息,直接在本页回复即可。',
|
'tip' => '如果您认为这个判断有误,或者有补充信息,直接在本页回复即可。',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
return isset($map[$key]) ? $map[$key] : $map['open'];
|
return isset($map[$key]) ? $map[$key] : $map['open'];
|
||||||
@@ -871,15 +871,15 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
|
|
||||||
/* 像博客评论通知那样带上上下文:
|
/* 像博客评论通知那样带上上下文:
|
||||||
* 用户可能同时提过好几条反馈,只给「回复内容」根本想不起来是哪一条。
|
* 用户可能同时提过好几条反馈,只给「回复内容」根本想不起来是哪一条。
|
||||||
* 所以固定三段:① 你反馈了什么 ② 谁回复了什么 ③ 去哪里继续。 */
|
* 所以固定三段:① 您反馈了什么 ② 谁回复了什么 ③ 去哪里继续。 */
|
||||||
$origBody = (string)(isset($thread['body']) ? $thread['body'] : '');
|
$origBody = (string)(isset($thread['body']) ? $thread['body'] : '');
|
||||||
$blocks = [
|
$blocks = [
|
||||||
['type' => 'text', 'text' => ($swName !== '' ? '你在「' . $swName . '」提交的反馈' : '你提交的反馈')
|
['type' => 'text', 'text' => ($swName !== '' ? '您在「' . $swName . '」提交的反馈' : '您提交的反馈')
|
||||||
. '有新的回复。'],
|
. '有新的回复。'],
|
||||||
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
||||||
];
|
];
|
||||||
if (trim($origBody) !== '') {
|
if (trim($origBody) !== '') {
|
||||||
$blocks[] = ['type' => 'quote', 'who' => '你当时反馈的内容:', 'text' => fb_excerpt($origBody, 220)];
|
$blocks[] = ['type' => 'quote', 'who' => '您当时反馈的内容:', 'text' => fb_excerpt($origBody, 220)];
|
||||||
}
|
}
|
||||||
$blocks[] = ['type' => 'quote', 'who' => $rname . ' 回复:', 'text' => $rbody];
|
$blocks[] = ['type' => 'quote', 'who' => $rname . ' 回复:', 'text' => $rbody];
|
||||||
if ($isAdmin) {
|
if ($isAdmin) {
|
||||||
@@ -891,8 +891,8 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => $rname . ':' . fb_excerpt($rbody, 60),
|
'preheader' => $rname . ':' . fb_excerpt($rbody, 60),
|
||||||
'badge' => ['text' => $isOff, 'color' => $isAdmin ? fb_mail_brand() : '#5c6572'],
|
'badge' => ['text' => $isOff, 'color' => $isAdmin ? fb_mail_brand() : '#5c6572'],
|
||||||
'title' => $isAdmin ? '官方回复了你的反馈' : '有人回复了你的反馈',
|
'title' => $isAdmin ? '官方回复了您的反馈' : '有人回复了您的反馈',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'button' => ['text' => '查看并回复', 'url' => $url],
|
'button' => ['text' => '查看并回复', 'url' => $url],
|
||||||
'link' => $url,
|
'link' => $url,
|
||||||
@@ -948,7 +948,7 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
'preheader' => '状态更新为「' . $label . '」',
|
'preheader' => '状态更新为「' . $label . '」',
|
||||||
'badge' => ['text' => $meta['badge'], 'color' => $meta['color']],
|
'badge' => ['text' => $meta['badge'], 'color' => $meta['color']],
|
||||||
'title' => $meta['title'],
|
'title' => $meta['title'],
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'button' => ['text' => $btnText, 'url' => $btnUrl],
|
'button' => ['text' => $btnText, 'url' => $btnUrl],
|
||||||
// 下载按钮之外,始终保留「查看这条反馈」的原文链接
|
// 下载按钮之外,始终保留「查看这条反馈」的原文链接
|
||||||
@@ -960,19 +960,19 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
|
|
||||||
/* ---------------- 3. 审核通过 ---------------- */
|
/* ---------------- 3. 审核通过 ---------------- */
|
||||||
elseif ($reason === 'approve') {
|
elseif ($reason === 'approve') {
|
||||||
$subject = $pfx . '你的反馈已发布:' . $short;
|
$subject = $pfx . '您的反馈已发布:' . $short;
|
||||||
$layout = [
|
$layout = [
|
||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => '你的反馈已经公开可见',
|
'preheader' => '您的反馈已经公开可见',
|
||||||
'badge' => ['text' => '已发布', 'color' => '#1e7b3c'],
|
'badge' => ['text' => '已发布', 'color' => '#1e7b3c'],
|
||||||
'title' => '你的反馈已通过审核并公开',
|
'title' => '您的反馈已通过审核并公开',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => [
|
'blocks' => [
|
||||||
['type' => 'text', 'text' => '你提交的反馈已通过审核,现在可以在'
|
['type' => 'text', 'text' => '您提交的反馈已通过审核,现在可以在'
|
||||||
. ($swName !== '' ? '「' . $swName . '」的' : '') . '公开列表中看到了。'],
|
. ($swName !== '' ? '「' . $swName . '」的' : '') . '公开列表中看到了。'],
|
||||||
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
||||||
['type' => 'callout', 'tone' => 'info',
|
['type' => 'callout', 'tone' => 'info',
|
||||||
'text' => '后续的处理进展与回复,我们会通过邮件通知你。'],
|
'text' => '后续的处理进展与回复,我们会通过邮件通知您。'],
|
||||||
],
|
],
|
||||||
'button' => ['text' => '查看并跟踪这条反馈', 'url' => $url],
|
'button' => ['text' => '查看并跟踪这条反馈', 'url' => $url],
|
||||||
'link' => $url,
|
'link' => $url,
|
||||||
@@ -983,24 +983,24 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
/* ---------------- 4. 转为不公开 ---------------- */
|
/* ---------------- 4. 转为不公开 ---------------- */
|
||||||
elseif ($reason === 'hide') {
|
elseif ($reason === 'hide') {
|
||||||
$note = trim((string)(isset($extra['note']) ? $extra['note'] : ''));
|
$note = trim((string)(isset($extra['note']) ? $extra['note'] : ''));
|
||||||
$subject = $pfx . '你的反馈已转为不公开:' . $short;
|
$subject = $pfx . '您的反馈已转为不公开:' . $short;
|
||||||
|
|
||||||
$blocks = [
|
$blocks = [
|
||||||
['type' => 'text', 'text' => '你提交的反馈已从公开列表中撤下,不再对其他人可见。'],
|
['type' => 'text', 'text' => '您提交的反馈已从公开列表中撤下,不再对其他人可见。'],
|
||||||
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
||||||
];
|
];
|
||||||
if ($note !== '') {
|
if ($note !== '') {
|
||||||
$blocks[] = ['type' => 'quote', 'who' => '官方说明:', 'text' => $note];
|
$blocks[] = ['type' => 'quote', 'who' => '官方说明:', 'text' => $note];
|
||||||
}
|
}
|
||||||
$blocks[] = ['type' => 'callout', 'tone' => 'muted',
|
$blocks[] = ['type' => 'callout', 'tone' => 'muted',
|
||||||
'text' => '这条反馈本身仍然保留,你依然可以通过原链接访问和处理进展。'];
|
'text' => '这条反馈本身仍然保留,您依然可以通过原链接访问和处理进展。'];
|
||||||
|
|
||||||
$layout = [
|
$layout = [
|
||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => '这条反馈已不对其他人可见',
|
'preheader' => '这条反馈已不对其他人可见',
|
||||||
'badge' => ['text' => '不公开', 'color' => '#5c6572'],
|
'badge' => ['text' => '不公开', 'color' => '#5c6572'],
|
||||||
'title' => '你的反馈已转为不公开',
|
'title' => '您的反馈已转为不公开',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'button' => ['text' => '查看这条反馈', 'url' => $url],
|
'button' => ['text' => '查看这条反馈', 'url' => $url],
|
||||||
'link' => $url,
|
'link' => $url,
|
||||||
@@ -1014,31 +1014,31 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
$body = (string)$thread['body'];
|
$body = (string)$thread['body'];
|
||||||
$mail = trim((string)fb_cfg('admin_email', ''));
|
$mail = trim((string)fb_cfg('admin_email', ''));
|
||||||
|
|
||||||
$subject = $pfx . '关于你反馈的问题《' . $short . '》';
|
$subject = $pfx . '关于您反馈的问题《' . $short . '》';
|
||||||
|
|
||||||
$blocks = [
|
$blocks = [
|
||||||
['type' => 'text',
|
['type' => 'text',
|
||||||
'text' => '感谢你的反馈。我们已经核实过,这个情况并不是'
|
'text' => '感谢您的反馈。我们已经核实过,这个情况并不是'
|
||||||
. ($swName !== '' ? '「' . $swName . '」' : '应用') . '本身的问题,因此这条反馈已关闭(不会公开显示)。'],
|
. ($swName !== '' ? '「' . $swName . '」' : '应用') . '本身的问题,因此这条反馈已关闭(不会公开显示)。'],
|
||||||
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
||||||
];
|
];
|
||||||
if ($note !== '') {
|
if ($note !== '') {
|
||||||
$blocks[] = ['type' => 'quote', 'who' => '官方说明:', 'text' => $note];
|
$blocks[] = ['type' => 'quote', 'who' => '官方说明:', 'text' => $note];
|
||||||
}
|
}
|
||||||
$blocks[] = ['type' => 'quote', 'who' => '你当时反馈的内容:', 'text' => $body];
|
$blocks[] = ['type' => 'quote', 'who' => '您当时反馈的内容:', 'text' => $body];
|
||||||
$blocks[] = [
|
$blocks[] = [
|
||||||
'type' => 'callout', 'tone' => 'info',
|
'type' => 'callout', 'tone' => 'info',
|
||||||
'text' => ($mail !== ''
|
'text' => ($mail !== ''
|
||||||
? '如果上面的说明没能解决你的疑问,直接回复本邮件即可,我们继续跟进;也可以发到 ' . $mail . '。'
|
? '如果上面的说明没能解决您的疑问,直接回复本邮件即可,我们继续跟进;也可以发到 ' . $mail . '。'
|
||||||
: '如果上面的说明没能解决你的疑问,直接回复本邮件即可,我们继续跟进。'),
|
: '如果上面的说明没能解决您的疑问,直接回复本邮件即可,我们继续跟进。'),
|
||||||
];
|
];
|
||||||
|
|
||||||
$layout = [
|
$layout = [
|
||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => '关于你反馈的问题,我们的说明',
|
'preheader' => '关于您反馈的问题,我们的说明',
|
||||||
'badge' => ['text' => '已关闭', 'color' => '#8a6a15'],
|
'badge' => ['text' => '已关闭', 'color' => '#8a6a15'],
|
||||||
'title' => '关于你反馈的问题,我们的说明',
|
'title' => '关于您反馈的问题,我们的说明',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'recipient' => $to,
|
'recipient' => $to,
|
||||||
];
|
];
|
||||||
@@ -1078,7 +1078,7 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
'preheader' => $name . ':' . fb_excerpt($body, 60),
|
'preheader' => $name . ':' . fb_excerpt($body, 60),
|
||||||
'badge' => ['text' => '新反馈', 'color' => '#b4553c'],
|
'badge' => ['text' => '新反馈', 'color' => '#b4553c'],
|
||||||
'title' => ($swName !== '' ? $swName . ' 收到一条新反馈' : '收到一条新反馈'),
|
'title' => ($swName !== '' ? $swName . ' 收到一条新反馈' : '收到一条新反馈'),
|
||||||
'intro' => '你好:',
|
'intro' => '您好:',
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'button' => ['text' => '去后台处理这条反馈', 'url' => $adminUrl],
|
'button' => ['text' => '去后台处理这条反馈', 'url' => $adminUrl],
|
||||||
'link' => $adminUrl,
|
'link' => $adminUrl,
|
||||||
@@ -1091,25 +1091,25 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
elseif ($reason === 'receipt') {
|
elseif ($reason === 'receipt') {
|
||||||
$body = (string)$thread['body'];
|
$body = (string)$thread['body'];
|
||||||
|
|
||||||
$subject = $pfx . '已收到你的反馈:' . $short;
|
$subject = $pfx . '已收到您的反馈:' . $short;
|
||||||
|
|
||||||
$blocks = [
|
$blocks = [
|
||||||
['type' => 'text', 'text' => '我们已收到你在'
|
['type' => 'text', 'text' => '我们已收到您在'
|
||||||
. ($swName !== '' ? '「' . $swName . '」' : '本站')
|
. ($swName !== '' ? '「' . $swName . '」' : '本站')
|
||||||
. '提交的反馈,感谢你的反馈!'],
|
. '提交的反馈,感谢您的反馈!'],
|
||||||
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
['type' => 'field', 'rows' => ['反馈标题' => $title]],
|
||||||
['type' => 'quote', 'who' => '你提交的内容:', 'text' => fb_excerpt($body, 400)],
|
['type' => 'quote', 'who' => '您提交的内容:', 'text' => fb_excerpt($body, 400)],
|
||||||
['type' => 'callout', 'tone' => 'info',
|
['type' => 'callout', 'tone' => 'info',
|
||||||
'text' => '这条反馈正在等待管理员审核,请耐心等待。审核通过后会在列表中公开显示。'],
|
'text' => '这条反馈正在等待管理员审核,请耐心等待。审核通过后会在列表中公开显示。'],
|
||||||
['type' => 'text', 'text' => '审核结果与后续处理进展,我们都会通过邮件通知你,无需反复回来查看。'],
|
['type' => 'text', 'text' => '审核结果与后续处理进展,我们都会通过邮件通知您,无需反复回来查看。'],
|
||||||
];
|
];
|
||||||
|
|
||||||
$layout = [
|
$layout = [
|
||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => '已收到你的反馈,正在等待审核',
|
'preheader' => '已收到您的反馈,正在等待审核',
|
||||||
'badge' => ['text' => '已收到', 'color' => fb_mail_brand()],
|
'badge' => ['text' => '已收到', 'color' => fb_mail_brand()],
|
||||||
'title' => '已收到你的反馈',
|
'title' => '已收到您的反馈',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => $blocks,
|
'blocks' => $blocks,
|
||||||
'button' => ['text' => '查看这条反馈', 'url' => $url],
|
'button' => ['text' => '查看这条反馈', 'url' => $url],
|
||||||
'link' => $url,
|
'link' => $url,
|
||||||
@@ -1122,10 +1122,10 @@ if (!function_exists('fb_notify_render')) {
|
|||||||
$subject = $pfx . $short;
|
$subject = $pfx . $short;
|
||||||
$layout = [
|
$layout = [
|
||||||
'software' => $sw,
|
'software' => $sw,
|
||||||
'preheader' => '你有一条新的通知',
|
'preheader' => '您有一条新的通知',
|
||||||
'title' => '你有一条新的通知',
|
'title' => '您有一条新的通知',
|
||||||
'intro' => ($name !== '' ? $name . ',你好:' : '你好:'),
|
'intro' => ($name !== '' ? $name . ',您好:' : '您好:'),
|
||||||
'blocks' => [['type' => 'text', 'text' => '你关注的反馈有更新。']],
|
'blocks' => [['type' => 'text', 'text' => '您关注的反馈有更新。']],
|
||||||
'button' => ['text' => '查看详情', 'url' => $url],
|
'button' => ['text' => '查看详情', 'url' => $url],
|
||||||
'link' => $url,
|
'link' => $url,
|
||||||
'recipient' => $to,
|
'recipient' => $to,
|
||||||
|
|||||||
@@ -146,9 +146,9 @@ fb_layout_head('我要反馈', ['robots' => 'noindex,follow', 'software' => $sw]
|
|||||||
<h1>我要反馈</h1>
|
<h1>我要反馈</h1>
|
||||||
<?php if ($sw): ?>
|
<?php if ($sw): ?>
|
||||||
<div class="sw-context"><?php echo fb_software_badge($sw, 'md'); ?>
|
<div class="sw-context"><?php echo fb_software_badge($sw, 'md'); ?>
|
||||||
<span class="muted small">你正在为「<?php echo e(fb_software_site_title($sw)); ?>」提交反馈</span></div>
|
<span class="muted small">您正在为「<?php echo e(fb_software_site_title($sw)); ?>」提交反馈</span></div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<p class="muted">请描述你遇到的问题或想要的功能。提交后会先进入审核,确认为有效问题后才会公开显示;<b>若经确认不是应用的问题,我们会把结论与说明通过邮件发送给你</b>(请填写常用邮箱)。</p>
|
<p class="muted">请描述您遇到的问题或想要的功能。提交后会先进入审核,确认为有效问题后才会公开显示;<b>若经确认不是应用的问题,我们会把结论与说明通过邮件发送给您</b>(请填写常用邮箱)。</p>
|
||||||
|
|
||||||
<?php fb_flash_box($err, 'error'); ?>
|
<?php fb_flash_box($err, 'error'); ?>
|
||||||
|
|
||||||
@@ -178,18 +178,18 @@ fb_layout_head('我要反馈', ['robots' => 'noindex,follow', 'software' => $sw]
|
|||||||
|
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>标题 <b class="req">*</b></span>
|
<span>标题 <b class="req">*</b></span>
|
||||||
<input type="text" name="title" maxlength="80" value="<?php echo e($form['title']); ?>" placeholder="一句话概括你的问题" required>
|
<input type="text" name="title" maxlength="80" value="<?php echo e($form['title']); ?>" placeholder="一句话概括您的问题" required>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>详细描述 <b class="req">*</b></span>
|
<span>详细描述 <b class="req">*</b></span>
|
||||||
<textarea name="body" rows="9" maxlength="5000" placeholder="请尽量说明:你做了什么、期望的结果、实际的结果;如是同步问题,可说明使用的邮箱 / 服务器类型。" required><?php echo e($form['body']); ?></textarea>
|
<textarea name="body" rows="9" maxlength="5000" placeholder="请尽量说明:您做了什么、期望的结果、实际的结果;如是同步问题,可说明使用的邮箱 / 服务器类型。" required><?php echo e($form['body']); ?></textarea>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<div class="row2">
|
<div class="row2">
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>昵称 <b class="req">*</b></span>
|
<span>昵称 <b class="req">*</b></span>
|
||||||
<input type="text" name="name" maxlength="24" value="<?php echo e($form['name']); ?>" placeholder="怎么称呼你" required>
|
<input type="text" name="name" maxlength="24" value="<?php echo e($form['name']); ?>" placeholder="怎么称呼您" required>
|
||||||
</label>
|
</label>
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>邮箱 <b class="req">*</b><i class="hint">仅用于接收回复通知,不会公开</i></span>
|
<span>邮箱 <b class="req">*</b><i class="hint">仅用于接收回复通知,不会公开</i></span>
|
||||||
@@ -220,7 +220,7 @@ fb_layout_head('我要反馈', ['robots' => 'noindex,follow', 'software' => $sw]
|
|||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<p class="muted small">提示:本页面不会公开展示你的邮箱与手机号。请勿在内容中填写密码等敏感信息。可上传截图或录屏帮助说明问题;文件会直接传到对象存储,不占用本站服务器空间。</p>
|
<p class="muted small">提示:本页面不会公开展示您的邮箱与手机号。请勿在内容中填写密码等敏感信息。可上传截图或录屏帮助说明问题;文件会直接传到对象存储,不占用本站服务器空间。</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
|||||||
+4
-4
@@ -26,9 +26,9 @@ if (!fb_thread_public($thread)) {
|
|||||||
fb_layout_head('提交成功', ['robots' => 'noindex,nofollow']);
|
fb_layout_head('提交成功', ['robots' => 'noindex,nofollow']);
|
||||||
echo '<div class="empty">'
|
echo '<div class="empty">'
|
||||||
. '<h2 style="margin:0 0 10px">提交成功,等待审核</h2>'
|
. '<h2 style="margin:0 0 10px">提交成功,等待审核</h2>'
|
||||||
. '<p>你的反馈已收到(编号 #' . (int)$thread['id'] . '),我们会先确认它是否为应用问题:</p>'
|
. '<p>您的反馈已收到(编号 #' . (int)$thread['id'] . '),我们会先确认它是否为应用问题:</p>'
|
||||||
. '<p>· 确认为问题 —— 审核通过后会公开显示,其他人也能查看与回复;<br>'
|
. '<p>· 确认为问题 —— 审核通过后会公开显示,其他人也能查看与回复;<br>'
|
||||||
. '· 确认不是问题 —— 我们会关闭它,并把结论与说明发送到你留下的邮箱。</p>'
|
. '· 确认不是问题 —— 我们会关闭它,并把结论与说明发送到您留下的邮箱。</p>'
|
||||||
. '<p class="muted">审核通常在 1~2 个工作日内完成,请留意邮箱。</p>'
|
. '<p class="muted">审核通常在 1~2 个工作日内完成,请留意邮箱。</p>'
|
||||||
. '<p><a class="btn primary" href="index.php">返回问题列表</a></p>'
|
. '<p><a class="btn primary" href="index.php">返回问题列表</a></p>'
|
||||||
. '</div>';
|
. '</div>';
|
||||||
@@ -217,7 +217,7 @@ fb_layout_head(fb_excerpt($thread['title'], 50), ['software' => $thSwForColor]);
|
|||||||
<div class="row2">
|
<div class="row2">
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>昵称 <b class="req">*</b></span>
|
<span>昵称 <b class="req">*</b></span>
|
||||||
<input type="text" name="name" maxlength="24" value="<?php echo e($form['name']); ?>" placeholder="怎么称呼你" required>
|
<input type="text" name="name" maxlength="24" value="<?php echo e($form['name']); ?>" placeholder="怎么称呼您" required>
|
||||||
</label>
|
</label>
|
||||||
<label class="field" id="emailField">
|
<label class="field" id="emailField">
|
||||||
<span>邮箱 <b class="req">*</b><i class="hint">仅用于接收回复通知,不会公开</i></span>
|
<span>邮箱 <b class="req">*</b><i class="hint">仅用于接收回复通知,不会公开</i></span>
|
||||||
@@ -227,7 +227,7 @@ fb_layout_head(fb_excerpt($thread['title'], 50), ['software' => $thSwForColor]);
|
|||||||
|
|
||||||
<label class="field">
|
<label class="field">
|
||||||
<span>回复内容 <b class="req">*</b></span>
|
<span>回复内容 <b class="req">*</b></span>
|
||||||
<textarea name="body" rows="6" maxlength="5000" placeholder="说说你的看法或补充…" required><?php echo e($form['body']); ?></textarea>
|
<textarea name="body" rows="6" maxlength="5000" placeholder="说说您的看法或补充…" required><?php echo e($form['body']); ?></textarea>
|
||||||
</label>
|
</label>
|
||||||
|
|
||||||
<?php fb_uploaders($atts); ?>
|
<?php fb_uploaders($atts); ?>
|
||||||
|
|||||||
Reference in New Issue
Block a user