diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php
index 14528abc..74fbc380 100644
--- a/app/Http/Controllers/AdminController.php
+++ b/app/Http/Controllers/AdminController.php
@@ -201,8 +201,6 @@ class AdminController extends Controller
$form->text('texture_name_regexp')->hint()->placeholder();
$form->textarea('comment_script')->rows(6)->description();
-
- $form->checkbox('allow_sending_statistics')->label()->hint();
})->handle(function () {
Option::set('site_name_'.config('app.locale'), request('site_name'));
Option::set('site_description_'.config('app.locale'), request('site_description'));
diff --git a/config/options.php b/config/options.php
index 2bc09050..9098db29 100644
--- a/config/options.php
+++ b/config/options.php
@@ -20,7 +20,6 @@ return [
'player_name_length_min' => '3',
'player_name_length_max' => '16',
'comment_script' => '',
- 'allow_sending_statistics' => 'true',
'user_initial_score' => '1000',
'sign_gap_time' => '24',
'sign_score' => '10,100',
diff --git a/resources/assets/src/js/feedback.js b/resources/assets/src/js/feedback.js
deleted file mode 100644
index 3979ac58..00000000
--- a/resources/assets/src/js/feedback.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import { queryStringify } from './utils';
-
-export async function sendFeedback() {
- if (document.cookie.replace(/(?:(?:^|.*;\s*)feedback_sent\s*=\s*([^;]*).*$)|^.*$/, '$1')) {
- return;
- }
-
- const response = await fetch('https://work.prinzeugen.net/statistics/feedback', {
- body: queryStringify({
- site_name: blessing.site_name,
- site_url: blessing.base_url,
- version: blessing.version
- }),
- headers: {
- Accept: 'application/json',
- 'Content-Type': 'application/x-www-form-urlencoded'
- },
- method: 'POST',
- mode: 'cors'
- });
-
- if (response.ok) {
- const { errno } = await response.json();
-
- if (errno === 0) {
- // It will be expired when current session ends
- document.cookie = 'feedback_sent=' + Date.now();
-
- console.info('Feedback sent. Thank you!');
- }
- }
-}
-
-window.sendFeedback = sendFeedback;
diff --git a/resources/assets/src/js/index.js b/resources/assets/src/js/index.js
index cc84f188..f66c2ea9 100644
--- a/resources/assets/src/js/index.js
+++ b/resources/assets/src/js/index.js
@@ -5,7 +5,6 @@ import './event';
import './layout';
import './logout';
import './check-updates';
-import './feedback';
console.log(
`%c Blessing Skin %c v${blessing.version} %c Made with %c<3%c by printempw.%c https://blessing.studio`,
diff --git a/resources/assets/tests/js/__snapshots__/feedback.test.js.snap b/resources/assets/tests/js/__snapshots__/feedback.test.js.snap
deleted file mode 100644
index 3e4244ab..00000000
--- a/resources/assets/tests/js/__snapshots__/feedback.test.js.snap
+++ /dev/null
@@ -1,16 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`send feedback 1`] = `
-Array [
- "https://work.prinzeugen.net/statistics/feedback",
- Object {
- "body": "site_name=Blessing%20Skin&site_url=&version=4.0.0",
- "headers": Object {
- "Accept": "application/json",
- "Content-Type": "application/x-www-form-urlencoded",
- },
- "method": "POST",
- "mode": "cors",
- },
-]
-`;
diff --git a/resources/assets/tests/js/feedback.test.js b/resources/assets/tests/js/feedback.test.js
deleted file mode 100644
index bf5a67a2..00000000
--- a/resources/assets/tests/js/feedback.test.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { sendFeedback } from '@/js/feedback';
-
-test('send feedback', async () => {
- window.fetch = jest.fn()
- .mockResolvedValueOnce({ ok: false })
- .mockResolvedValueOnce({
- ok: true,
- json: () => Promise.resolve({ errno: 1 })
- })
- .mockResolvedValue({
- ok: true,
- json: () => Promise.resolve({ errno: 0 })
- });
-
- await sendFeedback();
- expect(document.cookie).toBe('');
- expect(fetch.mock.calls[0]).toMatchSnapshot();
-
- await sendFeedback();
- expect(document.cookie).toBe('');
-
- await sendFeedback();
- expect(document.cookie).toStartWith('feedback_sent=');
-
- window.fetch.mockClear();
- await sendFeedback();
- expect(window.fetch).not.toBeCalled();
-});
diff --git a/resources/lang/en/options.yml b/resources/lang/en/options.yml
index 8912203b..2bdcf9c7 100644
--- a/resources/lang/en/options.yml
+++ b/resources/lang/en/options.yml
@@ -117,10 +117,6 @@ general:
comment_script:
title: Comment Script
description: Placeholder is available, {tid} will be replaced with texture id, {name} will be replaced with texture name, {url} will be replaced with current URL.
- allow_sending_statistics:
- title: Statistics
- label: Send usage statistics anonymously.
- hint: Privacy information will nerver be sent.
announ:
title: Announcement
diff --git a/resources/lang/zh_CN/options.yml b/resources/lang/zh_CN/options.yml
index 67284098..e2c60190 100644
--- a/resources/lang/zh_CN/options.yml
+++ b/resources/lang/zh_CN/options.yml
@@ -117,10 +117,6 @@ general:
comment_script:
title: 评论代码
description: 评论代码内可使用占位符,{tid} 将会被自动替换为材质的 id,{name} 会被替换为材质名称,{url} 会被替换为当前页面地址。
- allow_sending_statistics:
- title: 统计信息
- label: 发送程序使用情况统计信息以帮助开发
- hint: 隐私信息不会被收集
announ:
title: 站点公告
diff --git a/resources/views/admin/master.blade.php b/resources/views/admin/master.blade.php
index 635be435..5c0f0a6a 100644
--- a/resources/views/admin/master.blade.php
+++ b/resources/views/admin/master.blade.php
@@ -102,10 +102,6 @@
});
- @if (option('allow_sending_statistics'))
-
- @endif
-
@yield('script')