diff --git a/CHANGELOG.md b/CHANGELOG.md
index a45fce5..4f3ac3c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,19 @@
# CHANGE
+## 0.6.0 pre
+
+2022年10月日
+
+### 修改
+
+- 解毒提醒UI调整
+- 传单助手UI调整
+
+### 添加
+
+- 更多设置
+
## 0.5.9
2022年10月14日
diff --git a/src/class/ZhongIcon.ts b/src/class/ZhongIcon.ts
index 7f042a7..21bb919 100644
--- a/src/class/ZhongIcon.ts
+++ b/src/class/ZhongIcon.ts
@@ -28,6 +28,7 @@ import MDUtils from "./utils/MDUtils";
import Test from "../test/Test";
import TornStyleSwitch from "./utils/TornStyleSwitch";
import Global from "./Global";
+import BuyBeerHelper from "./action/BuyBeerHelper";
export default class ZhongIcon extends WuhuBase {
public static ZhongNode: MyHTMLElement = null;
@@ -785,7 +786,7 @@ export default class ZhongIcon extends WuhuBase {
private constructWuhuSettingList(): ZhongIcon {
const date = new Date();
- let { beer, popup_node } = ZhongIcon.glob;
+ let beer = BuyBeerHelper.getInstance();
let list: MenuItemConfig[] = [];
@@ -1176,7 +1177,7 @@ export default class ZhongIcon extends WuhuBase {
list.push({
domType: 'checkbox',
domId: 'wh-dev-mode',
- domText: ` 开发者模式${ Log.debug() ? ' ' : '' }`,
+ domText: '开发模式',
dictName: 'isDev',
isHide: true,
});
@@ -1186,20 +1187,35 @@ export default class ZhongIcon extends WuhuBase {
domId: null,
domText: '查看日志',
clickFunc: () => {
- let pop = new Popup('
', '查看日志');
+ let pop = new Popup('', '查看日志');
let text = pop.getElement().querySelector('textarea');
text.innerHTML = Log.getLogs();
- pop.getElement().querySelector('button').onclick = () => text.select();
- //
+ text.onclick = () => text.select();
}
});
// 更多设定
- if (Log.debug()) list.push({
+ list.push({
domType: 'button', domId: 'wh-otherBtn', domText: '更多设定',
clickFunc: () => {
- new Popup(`清空设置数据、请求通知权限、测试跨域请求`, '更多设定');
+ let pop = new Popup('', '更多设定');
+ let insertHtml = '
';
+ pop.getElement().insertAdjacentHTML('beforeend', insertHtml);
+ let [btn1, btn2, btn3] = Array.from(pop.getElement().querySelectorAll('button'));
+ btn1.addEventListener('click', () => {
+ localStorage.setItem('wh_trv_alarm', '');
+ localStorage.setItem('wh_trans_settings', '');
+ localStorage.setItem('whuuid', '');
+ localStorage.setItem('wh-gs-storage', '');
+ localStorage.setItem('WHTEST', '');
+ new Alert('已清空,刷新页面');
+ window.location.reload();
+ });
+ btn2.addEventListener('click', () => {
+ });
+ btn3.addEventListener('click', () => {
+ });
},
- isHide: true,
+ // isHide: true,
});
this.settingItemList = list;
diff --git a/src/class/utils/Alert.ts b/src/class/utils/Alert.ts
index 8532f81..e921fa0 100644
--- a/src/class/utils/Alert.ts
+++ b/src/class/utils/Alert.ts
@@ -19,14 +19,17 @@ export default class Alert extends WuhuBase {
let { timeout, callback, sysNotify, } = options;
// 后台窗口、iframe内判断
- if (!WindowActiveState.getInstance().get() || (self !== top)) return null;
+ if (!WindowActiveState.getInstance().get() || (self !== top)) {
+ Log.warn('后台通知已被屏蔽');
+ return null;
+ }
// 通知的容器
if (Alert.container === null) Alert.initContainer();
this.callback = callback || (() => null);
Alert.create(this, msg, timeout || 3);
- Log.info('创建新通知:', this);
+ Log.info('创建新通知:', this, msg);
if (sysNotify) NotificationUtils.getInstance().push(msg, options);
}
diff --git a/src/class/utils/Popup.ts b/src/class/utils/Popup.ts
index 0aeaa1e..3987509 100644
--- a/src/class/utils/Popup.ts
+++ b/src/class/utils/Popup.ts
@@ -1,5 +1,6 @@
import WuhuBase from "../WuhuBase";
import POPUP_HTML from "../../static/html/popup.html";
+import Log from "../Log";
export default class Popup extends WuhuBase {
protected className = 'Popup';
@@ -8,7 +9,11 @@ export default class Popup extends WuhuBase {
constructor(innerHTML: string, title: string = '芜湖助手') {
super();
- if (Popup.glob.popup_node) Popup.glob.popup_node.close();
+ if (Popup.glob.popup_node) {
+ Log.info('关闭前一个弹窗');
+ Popup.glob.popup_node.close();
+ }
+ Log.info('新建弹窗', { innerHTML, title });
const popup = document.createElement('div');
popup.id = 'wh-popup';
popup.innerHTML = POPUP_HTML.replace('{{}}', title).replace('{{}}', innerHTML);
diff --git a/src/func/module/adHelper.ts b/src/func/module/adHelper.ts
index 81275f6..c30351e 100644
--- a/src/func/module/adHelper.ts
+++ b/src/func/module/adHelper.ts
@@ -19,6 +19,9 @@ export default function adHelper() {
clear_button.innerText = '清空所有聊天框';
paste_button.innerText = '粘贴剪切板';
style.innerHTML = '#chatRoot > div{z-index:199999 !important;}';
+ place_button.classList.add('torn-btn');
+ clear_button.classList.add('torn-btn');
+ paste_button.classList.add('torn-btn');
place_button.addEventListener('click', () => {
let chats = Array.from(document.querySelectorAll('#chatRoot textarea[name="chatbox2"]') as NodeListOf);
diff --git a/src/func/module/travelHelper.ts b/src/func/module/travelHelper.ts
index 68c511f..fd045b3 100644
--- a/src/func/module/travelHelper.ts
+++ b/src/func/module/travelHelper.ts
@@ -7,7 +7,9 @@ import Alert from "../../class/utils/Alert";
import ActionButtonUtils from "../../class/utils/ActionButtonUtils";
import WuhuConfig from "../../class/WuhuConfig";
import CommonUtils from "../../class/utils/CommonUtils";
-import Log from "../../class/Log";
+import TRAVEL_ALARM_CSS from "../../static/css/travel_alarm.css";
+import TRAVEL_ALARM_HTML from "../../static/html/travel_alarm.html";
+import TornStyleBlock from "../../class/utils/TornStyleBlock";
export default async function travelHelper(): Promise {
let { href, bodyAttrs, device } = WuhuBase.glob;
@@ -43,85 +45,11 @@ export default async function travelHelper(): Promise {
wh_trv_alarm_node.id = 'wh-trv-alarm';
wh_trv_alarm_node.style.left = `${ wh_trv_alarm.node_pos[0] }px`;
wh_trv_alarm_node.style.top = `${ wh_trv_alarm.node_pos[1] }px`;
- wh_trv_alarm_node.innerHTML = `
-
-
-
-
-
-
-
正在${ dest_cn === '回城' ? dest_cn : '飞往' + dest_cn } ✈
-
-
-
-
-
-`;
- CommonUtils.addStyle(`
-#wh-trv-alarm{
-position:absolute;
-width:248px;
-/*left:${ wh_trv_alarm.node_pos[0] || 240 }px;
-top:${ wh_trv_alarm.node_pos[1] || 240 }px;*/
-background:white;
-border-radius:4px;
-box-shadow:#0000001f 0 0 10px 4px;
-border:solid 1px #aaa;
-z-index:100001;
-margin:2em;
-}
-#wh-trv-alarm button{
-margin:0;
-}
-#wh-trv-error{
-position:absolute;
-width:100%;
-height:100%;
-/*display: table;*/
-display:none;
-}
-#wh-trv-error p{
-background:#ffd0d0;
-color:red;
-display:table-cell;
-vertical-align:middle;
-padding:1em;
-text-align:center;
-}
-#wh-trv-alarm-title{
-height: 30px;
-border-bottom: solid #aaa 1px;
-cursor: move;
-}
-/*#wh-trv-alarm-move-btn span{
-background:url(/images/v2/home_main/move.svg);
-width: 30px;
-height: 30px;
-float: right;
-cursor: move;
-}*/
-h5#wh-trv-alarm-header{
- height: 100%;
- line-height: 30px;
- padding:0 12px;
- font-weight: bold;
- text-align: center;
-}
-#wh-trv-alarm-bottom{
- padding: 12px;
-}
-#wh-trv-alarm-remaining{
-float:right;
-color:red;
-}
-#wh-trv-alarm-cont input[type="number"]{
- width: 42px;
- border-bottom: solid 1px #aaa;
-}
-.wh-trv-alarm-stop-hide{
-display:none;
-}
-`);
+ wh_trv_alarm_node.innerHTML = TRAVEL_ALARM_HTML
+ .replace('{{}}', dest_cn === '回城' ? dest_cn : '飞往' + dest_cn)
+ .replace('{{}}', wh_trv_alarm.enable ? 'checked ' : '')
+ .replace('{{}}', wh_trv_alarm.alert_time || 30);
+ CommonUtils.addStyle(TRAVEL_ALARM_CSS);
document.body.append(wh_trv_alarm_node);
// 报错dom
const error_node = wh_trv_alarm_node.querySelector('#wh-trv-error') as HTMLElement;
@@ -252,28 +180,6 @@ display:none;
flying_ani.innerHTML = `${ flying_arr[flying_index] }`;
flying_index = (flying_index + 1) % flying_arr.length;
}, 1000);
- Log.info({
- dest_cn,
- remaining_arr,
- wh_trv_alarm,
- wh_trv_alarm_node,
- error_node,
- remaining_node,
- set_node,
- cd_time,
- count_down_notify,
- stop_node,
- enable_node,
- remaining_sec,
- land_timestamp,
- audio,
- audio_play_flag,
- user_stop_alert,
- audio_play_id,
- flying_status,
- flying_index,
- id
- });
}
// 落地转跳 落地前事件
@@ -298,18 +204,20 @@ display:none;
}
// 解毒提醒
if (bodyAttrs['data-country'] === 'switzerland') {
- let page_title = document.querySelector('h4#skip-to-content');
- let msg = document.createElement('div');
- msg.innerHTML = ``;
- msg.classList.add('info-msg-cont', 'green', 'border-round', 'm-bottom10');
- page_title.before(msg);
+ let block = new TornStyleBlock('解毒提醒').insert2Dom();
+ block.setContent('❤️ 点击前往解毒
');
+// let page_title = document.querySelector('h4#skip-to-content');
+// let msg = document.createElement('div');
+// msg.innerHTML = ``;
+// msg.classList.add('info-msg-cont', 'green', 'border-round', 'm-bottom10');
+// page_title.before(msg);
}
}
return;
@@ -402,7 +310,7 @@ async function travelBack(): Promise {
new Alert(res);
if (!res.includes('error')) {
new Alert('成功,即将刷新');
- setTimeout(() => location.reload(), 3000);
+ window.setTimeout(() => location.reload(), 3000);
} else {
new Alert('出错了');
}
diff --git a/src/static/css/travel_alarm.css b/src/static/css/travel_alarm.css
new file mode 100644
index 0000000..2458af9
--- /dev/null
+++ b/src/static/css/travel_alarm.css
@@ -0,0 +1,62 @@
+#wh-trv-alarm {
+ position: absolute;
+ width: 248px;
+ background: white;
+ border-radius: 4px;
+ box-shadow: #0000001f 0 0 10px 4px;
+ border: solid 1px #aaa;
+ z-index: 100001;
+ margin: 2em;
+}
+
+#wh-trv-alarm button {
+ margin: 0;
+}
+
+#wh-trv-error {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ display: none;
+}
+
+#wh-trv-error p {
+ background: #ffd0d0;
+ color: red;
+ display: table-cell;
+ vertical-align: middle;
+ padding: 1em;
+ text-align: center;
+}
+
+#wh-trv-alarm-title {
+ height: 30px;
+ border-bottom: solid #aaa 1px;
+ cursor: move;
+}
+
+h5#wh-trv-alarm-header {
+ height: 100%;
+ line-height: 30px;
+ padding: 0 12px;
+ font-weight: bold;
+ text-align: center;
+}
+
+#wh-trv-alarm-bottom {
+ padding: 12px;
+}
+
+#wh-trv-alarm-remaining {
+ float: right;
+ color: red;
+}
+
+#wh-trv-alarm-cont input[type="number"] {
+ width: 42px;
+ border-bottom: solid 1px #aaa;
+}
+
+.wh-trv-alarm-stop-hide {
+ display: none;
+}
\ No newline at end of file
diff --git a/src/static/html/travel_alarm.html b/src/static/html/travel_alarm.html
new file mode 100644
index 0000000..bcf8bc7
--- /dev/null
+++ b/src/static/html/travel_alarm.html
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
正在{{}} ✈
+
+
+
+
+
+
+
+
+
\ No newline at end of file