luci-app-jd-dailybonus:bump to v1.0.2 (#6247)

This commit is contained in:
EnnawYang 2021-01-25 09:54:03 +08:00 committed by GitHub
parent 1c271cdd2c
commit 3a50f6d523
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 323 additions and 299 deletions

View File

@ -7,8 +7,8 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=luci-app-jd-dailybonus
LUCI_PKGARCH:=all
PKG_VERSION:=1.0.0
PKG_RELEASE:=2
PKG_VERSION:=1.0.2
PKG_RELEASE:=20210124
include $(INCLUDE_DIR)/package.mk
@ -18,7 +18,7 @@ define Package/luci-app-jd-dailybonus
SUBMENU:=3. Applications
TITLE:=Luci for JD dailybonus Script
PKGARCH:=all
DEPENDS:=+node +wget +lua-cjson +lua-md5 +luasec
DEPENDS:=+node +wget +lua
endef
define Build/Prepare
@ -44,7 +44,6 @@ define Package/luci-app-jd-dailybonus/install
$(INSTALL_DIR) $(1)/usr/share/jd-dailybonus
$(INSTALL_BIN) ./root/usr/share/jd-dailybonus/*.sh $(1)/usr/share/jd-dailybonus/
$(INSTALL_DATA) ./root/usr/share/jd-dailybonus/*.js $(1)/usr/share/jd-dailybonus/
$(INSTALL_DATA) ./root/usr/share/jd-dailybonus/*.lua $(1)/usr/share/jd-dailybonus/
$(INSTALL_DIR) $(1)/usr/share/rpcd/acl.d
$(INSTALL_DATA) ./root/usr/share/rpcd/acl.d/* $(1)/usr/share/rpcd/acl.d
@ -63,6 +62,7 @@ define Package/luci-app-jd-dailybonus/install
$(INSTALL_DIR) $(1)/usr/lib/lua/luci/view/jd-dailybonus
$(INSTALL_DATA) ./luasrc/view/jd-dailybonus/* $(1)/usr/lib/lua/luci/view/jd-dailybonus/
endef
$(eval $(call BuildPackage,luci-app-jd-dailybonus))

View File

@ -1,7 +1,6 @@
-- Copyright (C) 2020 jerrykuku <jerrykuku@gmail.com>
-- Licensed to the public under the GNU General Public License v3.
module('luci.controller.jd-dailybonus', package.seeall)
package.path = package.path .. ';/usr/share/jd-dailybonus/?.lua'
function index()
if not nixio.fs.access('/etc/config/jd-dailybonus') then
return
@ -30,9 +29,6 @@ function run()
local e = {}
local uci = luci.model.uci.cursor()
local data = luci.http.formvalue()
data.auto_run = data.auto_run ~= nil and data.auto_run or 0
data.auto_update = data.auto_update ~= nil and data.auto_update or 0
uci:tset('jd-dailybonus', '@global[0]', data)
uci:commit('jd-dailybonus')
local json_data = {
@ -75,25 +71,63 @@ function update()
luci.http.write_json(e)
end
local User_Agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36'
local Host='Host: plogin.m.jd.com'
local Accept='Accept: application/json, text/plain, */*'
local Accept_Language='Accept-Language: zh-cn'
local cookie='/tmp/jd_cookie'
function get_timestamp()
return os.time()*1000
end
function get_s_token()
luci.sys.exec('rm -f ' .. cookie)
local timestamp = get_timestamp()
local url =
'https://plogin.m.jd.com/cgi-bin/mm/new_login_entrance?lang=chs&appid=300&returnurl=https://wq.jd.com/passport/LoginRedirect?state=' ..
timestamp .. '&returnurl=https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&/myJd/home.action&source=wq_passport'
local referer =
'https://plogin.m.jd.com/login/login?appid=300&returnurl=https://wq.jd.com/passport/LoginRedirect?state=' ..
timestamp .. '&returnurl=https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&/myJd/home.action&source=wq_passport'
local s_token = luci.sys.exec("echo -n $(wget-ssl --header='"..Accept.."' --header='"..Accept_Language.."' --header='"..Host.."' --referer='"..referer.."' --user-agent='"..User_Agent.."' --save-cookies="..cookie.." --keep-session-cookies -q -O - '"..url.."' | sed s/[[:space:]]//g | grep -oE '\"s_token\":\"(.+?)\"' | awk -F \\\" '{print $4}')")
return s_token
end
--获取二维码
function qrcode()
local jd_cookie = require 'jd_cookie'
local e = {}
e.error = 0
e.data = jd_cookie.get_qrcode()
local timestamp = get_timestamp()
local s_token = get_s_token()
local url = 'https://plogin.m.jd.com/cgi-bin/m/tmauthreflogurl?s_token='..s_token..'&v='..timestamp..'&remember=true'
local referer = 'https://plogin.m.jd.com/login/login?appid=300&returnurl=https://wq.jd.com/passport/LoginRedirect?state=' .. timestamp .. '&returnurl=https://home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&/myJd/home.action&source=wq_passport'
local response = luci.sys.exec("echo -n $(wget-ssl --header='"..Accept.."' --header='"..Accept_Language.."' --header='"..Host.."' --referer='"..referer.."' --user-agent='"..User_Agent.."' --load-cookies="..cookie.." --save-cookies="..cookie.." --keep-session-cookies -q -O - '"..url.."')")
local token = luci.sys.exec("echo -n $(echo \'"..response.."\' | grep -oE '\"token\":\"(.+?)\"' | awk -F \\\" '{print $4}')")
local ou_state = luci.sys.exec("echo -n $(echo \'"..response.."\' | grep -oE '\"ou_state\":(\\d+)' | awk -F : '{print $2}')")
local okl_token = luci.sys.exec("echo -n $(cat "..cookie.." | grep okl_token | awk '{print $7}')")
local return_json = {
qrcode_url = 'https://plogin.m.jd.com/cgi-bin/m/tmauth?appid=300&client_type=m&token=' .. token,
check_url = 'https://plogin.m.jd.com/cgi-bin/m/tmauthchecktoken?&token=' .. token .. '&ou_state=' .. ou_state .. '&okl_token=' .. okl_token,
}
luci.http.prepare_content('application/json')
luci.http.write_json(e)
luci.http.write_json(return_json)
end
--检测登录
function check_login()
local jd_cookie = require 'jd_cookie'
local uci = luci.model.uci.cursor()
local data = luci.http.formvalue()
local id = data.id
local e = jd_cookie.checkLogin(data.check_url, data.cookies)
if e.error == 0 then
local cookieStr = 'pt_key=' .. e.cookie.pt_key .. ';pt_pin=' .. e.cookie.pt_pin .. ';'
local post_data = 'lang=chs&appid=300&source=wq_passport&returnurl=https://wqlogin2.jd.com/passport/LoginRedirect?state=1100399130787&returnurl=//home.m.jd.com/myJd/newhome.action?sceneval=2&ufc=&/myJd/home.action'
local referer='https://plogin.m.jd.com/login/login?appid=300&returnurl=https://wqlogin2.jd.com/passport/LoginRedirect?state='
local response = luci.sys.exec("echo -n $(wget-ssl --post-data='"..post_data.."' --header='"..Accept.."' --header='"..Accept_Language.."' --header='"..Host.."' --referer='"..referer.."' --user-agent='"..User_Agent.."' --load-cookies="..cookie.." --save-cookies="..cookie.." --keep-session-cookies -q -O - '"..data.check_url.."')")
local return_json = {
error = tonumber(luci.sys.exec("echo -n $(echo \'"..response.."\' | grep -oE '\"errcode\":(\\d+)' | awk -F : '{print $2}')")),
msg = luci.sys.exec("echo -n $(echo \'"..response.."\' | grep -oE '\"message\":\"(.+?)\"' | awk -F \\\" '{print $4}')"),
}
if return_json.error == 0 then
local pt_key = luci.sys.exec("echo -n $(cat "..cookie.." | grep pt_key | awk '{print $7}')")
local pt_pin = luci.sys.exec("echo -n $(cat "..cookie.." | grep pt_pin | awk '{print $7}')")
local cookieStr = 'pt_key=' .. pt_key .. ';pt_pin=' .. pt_pin .. ';'
uci:set('jd-dailybonus', '@global[0]', id, cookieStr)
local json_data = {
CookieJD = uci:get('jd-dailybonus', '@global[0]', 'cookie'),
@ -104,9 +138,9 @@ function check_login()
write_json('/root/CookieSet.json', json_data)
write_json('/www/CookieSet.json', json_data)
uci:commit('jd-dailybonus')
e.cstr = cookieStr
return_json.cookie = cookieStr
end
luci.http.prepare_content('application/json')
luci.http.write_json(e)
end
luci.http.write_json(return_json)
end

View File

@ -85,12 +85,13 @@ o.default = 1
o.rmempty = true
o:depends('auto_update', '1')
o = s:option(ListValue, 'remote_url', translate('更新源地址'))
o = s:option(Value, 'remote_url', translate('更新源地址'))
o:value('https://raw.githubusercontent.com/NobyDa/Script/master/JD-DailyBonus/JD_DailyBonus.js', translate('GitHub'))
o:value('https://cdn.jsdelivr.net/gh/NobyDa/Script/JD-DailyBonus/JD_DailyBonus.js', translate('GitHub CDN'))
o:value('https://gitee.com/jerrykuku/staff/raw/master/JD_DailyBonus.js', translate('Gitee'))
o.default = 'nil'
o.rmempty = false
o.description = translate('当GitHub源无法更新时,可以选择使用国内Gitee源')
o.description = translate('当GitHub源无法更新时,可以选择使用国内Gitee源,GitHub CDN可能比原地址更晚更新但速度快')
o = s:option(DummyValue, '', '')
o.rawhtml = true

View File

@ -2,13 +2,13 @@
<label class="cbi-value-title"><%= translate("获取Cookie") %></label>
<div class="cbi-value-field">
<input type="button" data-rel="1" class="cbi-button cbi-input-reload cookie-button" value="<%= translate('获取第一Cookie') %>" />
<input type="button" data-rel="2" class="cbi-button cbi-input-reload cookie-button" value="<%= translate('获取第二Cookie') %>" />
<br>
<div class="cbi-value-description">
<span class="cbi-value-helpicon"><img src="/luci-static/resources/cbi/help.gif" alt="帮助"></span>
<%= translate("点击上面按钮使用京东手机app扫码获取Cookie")%>
</div>
<input type="button" data-rel="1" class="cbi-button cbi-input-reload cookie-button" value="<%= translate('获取第一Cookie') %>" />
<input type="button" data-rel="2" class="cbi-button cbi-input-reload cookie-button" value="<%= translate('获取第二Cookie') %>" />
<br>
<div class="cbi-value-description">
<span class="cbi-value-helpicon"><img src="/luci-static/resources/cbi/help.gif" alt="帮助"></span>
<%= translate("点击上面按钮使用京东手机app扫码获取Cookie")%>
</div>
</div>
<%+cbi/valuefooter%>

View File

@ -5,38 +5,38 @@
var jq=$.noConflict();
</script>
<style>
.modals-bg {
position: fixed;
z-index: 999;
width: 100%;
height: 100%;
left: 0;
top: 0;
background: rgba(255, 255, 255, 0.8);
.modals-bg {
position: fixed;
z-index: 999;
width: 100%;
height: 100%;
left: 0;
top: 0;
background: rgba(255, 255, 255, 0.8);
transition: all 0.3s ease-in-out;
transform: scale(1);
}
}
.modals {
position: fixed;
z-index: 100;
width: 60%;
height: 500px;
background: #172b4d;
left: 20%;
top: 15%;
color: #fff;
border-radius: 10px;
padding: 20px;
.modals {
position: fixed;
z-index: 100;
width: 60%;
height: 500px;
background: #172b4d;
left: 20%;
top: 15%;
color: #fff;
border-radius: 10px;
padding: 20px;
box-sizing: border-box;
-moz-box-sizing: border-box;
/* Firefox */
-webkit-box-sizing: border-box;
/* Safari */
box-sizing: border-box;
-moz-box-sizing: border-box;
/* Firefox */
-webkit-box-sizing: border-box;
/* Safari */
transition: all 0.3s ease-in-out;
transform: scale(1);
}
}
.modals-bg.hide {
visibility: hidden;
opacity: 0;
@ -51,47 +51,47 @@ var jq=$.noConflict();
}
.modals h2 {
color: #fff;
background: transparent;
padding: 0 !important;
}
.modals h2 {
color: #fff;
background: transparent;
padding: 0 !important;
}
.modals h3 {
font-size: 14px;
color: #f5365c !important;
background: transparent;
margin: 0 0 1em 0;
padding: 0 0 0.5em 0;
}
.modals h3 {
font-size: 14px;
color: #f5365c !important;
background: transparent;
margin: 0 0 1em 0;
padding: 0 0 0.5em 0;
}
#log_content3 {
border: 0;
width: 99%;
height: calc(100% - 4rem);
font-family: 'Lucida Console';
font-size: 11px;
background: transparent;
color: #FFFFFF;
outline: none;
padding-left: 3px;
padding-right: 22px;
overflow: hidden
}
#log_content3 {
border: 0;
width: 99%;
height: calc(100% - 4rem);
font-family: 'Lucida Console';
font-size: 11px;
background: transparent;
color: #FFFFFF;
outline: none;
padding-left: 3px;
padding-right: 22px;
overflow: hidden
}
.cbi-value-version {
word-wrap: break-word;
font-size: 0.875rem;
line-height: 1.6;
color: #5e72e4;
font-weight: bold;
padding: .7rem;
padding-left: 0;
width: 23rem;
float: left;
text-align: left;
display: table-cell;
}
.cbi-value-version {
word-wrap: break-word;
font-size: 0.875rem;
line-height: 1.6;
color: #5e72e4;
font-weight: bold;
padding: .7rem;
padding-left: 0;
width: 23rem;
float: left;
text-align: left;
display: table-cell;
}
#qrcontainer {
position: fixed;
@ -157,41 +157,41 @@ var jq=$.noConflict();
padding: 1rem 0 0 0;
}
@media screen and (max-width: 1024px) {
.modals {
position: fixed;
z-index: 100;
width: 80%;
height: 500px;
background: #172b4d;
left: 10%;
top: 15%;
color: #fff;
border-radius: 10px;
padding: 20px;
}
}
@media screen and (max-width: 1024px) {
.modals {
position: fixed;
z-index: 100;
width: 80%;
height: 500px;
background: #172b4d;
left: 10%;
top: 15%;
color: #fff;
border-radius: 10px;
padding: 20px;
}
}
@media screen and (max-width: 700px) {
.modals-bg {
position: fixed;
z-index: 100000;
@media screen and (max-width: 700px) {
.modals-bg {
position: fixed;
z-index: 100000;
}
}
.modals {
width: 100%;
height: 100%;
left: 0;
top: 0;
}
}
.modals {
width: 100%;
height: 100%;
left: 0;
top: 0;
}
}
</style>
<label class="cbi-value-title"><%= translate("执行") %></label>
<div class="cbi-value-field">
<input class="cbi-button cbi-button-reload" id="update_service" type="button" size="0"
value="<%= translate("保存Cookie,并马上进行签到") %>">
<input class="cbi-button cbi-button-reload" id="update_service" type="button" size="0"
value="<%= translate("保存Cookie,并马上进行签到") %>">
</div>
<%+cbi/valuefooter%>
@ -199,8 +199,8 @@ var jq=$.noConflict();
<%+cbi/valueheader%>
<label class="cbi-value-title"><%= translate("更新脚本") %></label>
<div class="cbi-value-field">
<input class="cbi-button cbi-button-reload" id="update_script" type="button" size="0"
value="<%= translate("手动检查脚本更新当前版本v")..self.version %>">
<input class="cbi-button cbi-button-reload" id="update_script" type="button" size="0"
value="<%= translate("手动检查脚本更新当前版本v")..self.version %>">
</div>
<%+cbi/valuefooter%>
@ -219,160 +219,168 @@ var jq=$.noConflict();
<script type="text/javascript">
const SAVE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","run")%>';
const CHECK_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","check_update")%>';
const QRCODE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","qrcode")%>';
const CHECK_LOGIN_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","check_login")%>';
const UPDATE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","update")%>';
const CHECKING_TEXT = '<%= translate("正在检查是否存在新的版本 ...") %>';
const UPDATING_TEXT = '<%= translate("正在更新脚本,请稍候 ...") %>';
const NEW_VERSION = '<%= translate("当前已是最新版本。") %>';
const UPDATE_TEXT = '<%= translate("有新的版本,请点击更新") %>';
const SAVE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","run")%>';
const CHECK_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","check_update")%>';
const QRCODE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","qrcode")%>';
const CHECK_LOGIN_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","check_login")%>';
const UPDATE_URL = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus","update")%>';
const CHECKING_TEXT = '<%= translate("正在检查是否存在新的版本 ...") %>';
const UPDATING_TEXT = '<%= translate("正在更新脚本,请稍候 ...") %>';
const NEW_VERSION = '<%= translate("当前已是最新版本。") %>';
const UPDATE_TEXT = '<%= translate("有新的版本,请点击更新") %>';
var needUpdate = false;
var newVersion;
var _responseLen;
var noChange = 0;
var needUpdate = false;
var newVersion;
var _responseLen;
var noChange = 0;
var ckid = 0;
var modal = '<div class="modals-bg hide">' +
'<div class="modals hide">' +
'<h2><%:Sign in info%></h2>' +
'<h3 style="margin-left:0;"><%:Service is running,Please do not refresh!%></h3>' +
'<textarea cols="63" rows="28" wrap="on" readonly="readonly" id="log_content3" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"></textarea>' +
'</div>' +
'</div>';
var modal = '<div class="modals-bg hide">' +
'<div class="modals hide">' +
'<h2>签到信息</h2>' +
'<h3 style="margin-left:0;">服务正在执行中,请勿刷新!</h3>' +
'<textarea cols="63" rows="28" wrap="on" readonly="readonly" id="log_content3" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"></textarea>' +
'</div>' +
'</div>';
//显示并开始刷新订阅
function update_service() {
jq("body").append(modal);
//显示并开始刷新订阅
function update_service() {
jq("body").append(modal);
jq(".modals-bg").removeClass("hide");
setTimeout(function(){
jq(".modals").removeClass("hide");
}, 100);
setTimeout("get_realtime_log();", 500);
}
//保存订阅按钮
jq("#update_service").click(function () {
let prefix_array = jq(".cbi-input-text").eq(0).attr("id").split(".");
prefix_array.pop()
var prefix = prefix_array.join(".")+".";
let array = jq("form[name*='cbi'").serializeArray()
var json = {};
jq.each(array, function () {
if(this.name.indexOf(prefix) != -1){
let aname = this.name.replace(prefix, "");
if (json[aname]) {
if (!json[aname].push) {
json[aname] = [json[aname]];
}
json[aname].push(this.value || '');
}
function el(dom_el){
let prefix_array = jq("#cbi-jd-dailybonus-global .cbi-section-node").attr("id").split("-");
let prefix = prefix_array[prefix_array.length - 1];
return jq("[name='cbid.jd-dailybonus." + prefix + "." + dom_el + "']");
}
//保存订阅按钮
jq("#update_service").click(function () {
if(el("cookie").val() == ""){
alert("请至少填写cookie1");
return false;
}
var json = {
auto_update: el("auto_update").is(":checked")?"1":"0",
auto_update_time: el("auto_update").is(":checked")?el("auto_update_time").val():"0",
auto_run: el("auto_run").is(":checked")?"1":"0",
auto_run_time_h: el("auto_run").is(":checked")?el("auto_run_time_h").val():"0",
auto_run_time_h: el("auto_run").is(":checked")?el("auto_run_time_m").val():"0",
cookie: el("cookie").val(),
cookie2: el("cookie2").val(),
stop: el("stop").val(),
out: el("out").val(),
serverchan: el("serverchan").val(),
tg_token: el("tg_token").val(),
tg_userid: el("tg_userid").val(),
serverurl: el("serverurl").val(),
remote_url: el("remote_url").val()
}
jq.ajax({
type: "post",
url: SAVE_URL,
dataType: "json",
data: json,
success: function (d) {
if (d.error == 0) {
update_service();
} else {
json[aname] = this.value || '';
alert("请填写cookies");
}
}
});
jq.ajax({
type: "post",
url: SAVE_URL,
dataType: "json",
data: json,
success: function (d) {
if (d.error == 0) {
update_service();
} else {
alert("请填写cookies");
}
}
});
return false;
});
return false;
});
//更新脚本
jq("#update_script").click(function () {
check_version()
return false;
});
//更新脚本
jq("#update_script").click(function () {
check_version()
return false;
});
function updateS(){
jq("#update_script").attr("disabled", true);
jq("#update_script").val(UPDATING_TEXT);
//console.log(data);
var data = {
version: jq("#update_script").attr("data-version")
}
jq.ajax({
type: "post",
url: UPDATE_URL,
dataType: "json",
data: data,
success: function (d) {
if (d.error == 0) {
jq("#update_script").val(NEW_VERSION);
jq(".cbi-value-version").text("v" + newVersion);
} else {
jq("#update_script").attr("disabled", false);
alert("更新错误请重试");
}
}
});
}
function get_realtime_log() {
jq.ajax({
url: '/JD_DailyBonus.htm?v=' + parseInt(Math.random() * 100000000),
dataType: 'html',
error: function (xhr) {
setTimeout("get_realtime_log();", 1000);
},
success: function (response) {
var retArea = document.getElementById("log_content3");
if (response.search(" 秒") != -1) {
noChange++;
}
console.log(noChange);
if (noChange > 10) {
window.location.href = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus")%>';
return false;
} else {
setTimeout("get_realtime_log();", 250);
}
retArea.value = response;
retArea.scrollTop = retArea.scrollHeight;
_responseLen = response.length;
},
error: function () {
setTimeout("get_realtime_log();", 500);
}
});
}
function check_version() {
jq("#update_script").attr("disabled", true);
jq("#update_script").val(CHECKING_TEXT);
jq.ajax({
url: CHECK_URL,
dataType: 'json',
error: function (xhr) {
},
success: function (data) {
if(data.new_version == 501){
jq("#update_script").attr("disabled", false);
jq("#update_script").val("无法获取新版本,请重试!");
}else if (data.new_version > <%= self.version %>) {
jq("#update_script").attr("disabled", false);
jq("#update_script").val(UPDATE_TEXT + " v" + data.new_version);
jq("#update_script").attr("data-version", data.new_version);
newVersion = data.new_version;
updateS();
} else {
updateS();
jq("#update_script").val(NEW_VERSION + " v" + data.new_version);
}
function updateS(){
jq("#update_script").attr("disabled", true);
jq("#update_script").val(UPDATING_TEXT);
//console.log(data);
var data = {
version: jq("#update_script").attr("data-version")
}
});
}
jq.ajax({
type: "post",
url: UPDATE_URL,
dataType: "json",
data: data,
success: function (d) {
if (d.error == 0) {
jq("#update_script").val(NEW_VERSION);
jq(".cbi-value-version").text("v" + newVersion);
} else {
jq("#update_script").attr("disabled", false);
alert("更新错误请重试");
}
}
});
}
function get_realtime_log() {
jq.ajax({
url: '/JD_DailyBonus.htm?v=' + parseInt(Math.random() * 100000000),
dataType: 'html',
error: function (xhr) {
setTimeout("get_realtime_log();", 1000);
},
success: function (response) {
var retArea = document.getElementById("log_content3");
if (response.search(" 秒") != -1) {
noChange++;
}
console.log(noChange);
if (noChange > 10) {
window.location.href = '<%=luci.dispatcher.build_url("admin", "services", "jd-dailybonus")%>';
return false;
} else {
setTimeout("get_realtime_log();", 250);
}
retArea.value = response;
retArea.scrollTop = retArea.scrollHeight;
_responseLen = response.length;
},
error: function () {
setTimeout("get_realtime_log();", 500);
}
});
}
function check_version() {
jq("#update_script").attr("disabled", true);
jq("#update_script").val(CHECKING_TEXT);
jq.ajax({
url: CHECK_URL,
dataType: 'json',
error: function (xhr) {
},
success: function (data) {
if(data.new_version == 501){
jq("#update_script").attr("disabled", false);
jq("#update_script").val("无法获取新版本,请重试!");
}else if (data.new_version > <%= self.version %>) {
jq("#update_script").attr("disabled", false);
jq("#update_script").val(UPDATE_TEXT + " v" + data.new_version);
jq("#update_script").attr("data-version", data.new_version);
newVersion = data.new_version;
updateS();
} else {
updateS();
jq("#update_script").val(NEW_VERSION + " v" + data.new_version);
}
}
});
}
qrcode = new QRCode(document.getElementById("qrcode"),
{
@ -381,23 +389,27 @@ var jq=$.noConflict();
});
//获取二维码
function get_code() {
function get_code(){
let timeStamp = (new Date()).getTime()
$.get('/qrcode?t='+timeStamp, function (data) {
if (data.err == 0) {
jq.ajax({
url: QRCODE_URL+"?t="+timeStamp,
dataType: 'json',
error: function () {
alert("出错了请重试。")
},
success: function (data) {
jq("#qrcontainer").removeClass("hidden")
jq("#refresh_qrcode").addClass("hidden")
console.log(data.qrcode_url)
qrcode.clear();
qrcode.makeCode(data.qrcode);
checkLogin();
} else {
Swal.fire({
text: data.msg,
icon: "error"
})
qrcode.makeCode(data.qrcode_url);
checkLogin(data.check_url);
}
});
return false;
}
jq(".cookie-button").click(function(){
ckid = jq(this).attr("data-rel");
get_code()
@ -406,32 +418,10 @@ var jq=$.noConflict();
jq('.refresh').click(get_code);
function get_code(){
let timeStamp = (new Date()).getTime()
jq.ajax({
url: QRCODE_URL+"?t="+timeStamp,
dataType: 'json',
success: function (data) {
if(data.error == 0){
jq("#qrcontainer").removeClass("hidden")
jq("#refresh_qrcode").addClass("hidden")
console.log(data.data.qrcode_url)
qrcode.clear();
qrcode.makeCode(data.data.qrcode_url);
checkLogin(data.data.check_url,data.data.cookies);
} else {
alert("出错了请重试。")
}
}
});
return false;
}
function checkLogin(check_url,cookies){
function checkLogin(check_url){
var timeId = setInterval(() => {
let cname = ckid == 1?"cookie":"cookie2"
jq.post( CHECK_LOGIN_URL, { check_url:check_url,cookies: cookies ,id: cname}, function( data ) {
jq.post( CHECK_LOGIN_URL, { check_url:check_url,id: cname}, function( data ) {
if (data.error == 0) {
clearInterval(timeId)
jq("#qrcontainer").addClass("hidden")
@ -439,8 +429,7 @@ var jq=$.noConflict();
let prefix_array = jq(".cbi-input-text").eq(0).attr("id").split(".");
prefix_array.pop()
let prefix = prefix_array.join(".")+".";
console.log("."+prefix+cname,data.cstr);
document.getElementById(prefix+cname).value =data.cstr
document.getElementById(prefix+cname).value =data.cookie
} else if (data.error == 21 || data.error == 261) {
clearInterval(timeId)
jq("#refresh_qrcode").removeClass("hidden")
@ -448,4 +437,4 @@ var jq=$.noConflict();
}, "json");
}, 3000)
}
</script>
</script>