');
}
else {
$(document.body).append('
');
}
setTimeout(function () {
obj.hideTip();
}, timeout || 3000);
};
obj.showTipError = function (msg, timeout) {
obj.hideTip();
var $element = $(".aDrive div");
if ($element.length) {
$element.append('
');
}
else {
$(document.body).append('
');
}
setTimeout(function () {
obj.hideTip()
}, timeout || 3000);
};
obj.showTipLoading = function (msg, timeout) {
obj.hideTip();
var $element = $(".aDrive div");
if ($element.length) {
$element.append('
');
}
else {
$(document.body).append('
');
}
setTimeout(function () {
obj.hideTip()
}, timeout || 5000);
};
obj.hideTip = function() {
var t = $(".aDrive-notice");
t.length && "function" == typeof t.remove ? t.remove() : "function" == typeof t.removeNode && t.removeNode(!0);
};
obj.addPageFileList = function () {
var send = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function(data) {
this.addEventListener("load", function(event) {
if (this.readyState == 4 && this.status == 200) {
var response = this.response, responseURL = this.responseURL;
if (responseURL.endsWith("/file/get")) {
try { response = JSON.parse(response) } catch (error) { };
if (response instanceof Object) {
obj.file_page.file_info = response;
}
}
else if (responseURL.indexOf("/file/list") > 0 || responseURL.indexOf("/file/search") > 0) {
if (document.querySelector(".ant-modal-mask")) {
//排除【保存 移动 等行为触发】
return;
};
try { response = JSON.parse(response) } catch (error) { };
if (response instanceof Object && response.items) {
try { data = JSON.parse(data) } catch (error) { data = {} };
if (obj.file_page.parent_file_id != data.parent_file_id) {
//变换页面
obj.file_page.parent_file_id = data.parent_file_id;
obj.file_page.order_by = data.order_by;
obj.file_page.order_direction = data.order_direction;
obj.file_page.next_marker_list = [];
obj.file_page.items = [];
}
if (obj.file_page.order_by != data.order_by || obj.file_page.order_direction != data.order_direction) {
//排序改变
obj.file_page.order_by = data.order_by;
obj.file_page.order_direction = data.order_direction;
obj.file_page.next_marker_list = [];
obj.file_page.items = [];
}
var next_marker = response.next_marker, next_marker_list = obj.file_page.next_marker_list;
if (next_marker_list.includes(next_marker)) {
if (next_marker_list.indexOf(next_marker) == 0) {
//重复排序
obj.file_page.next_marker_list = [response.next_marker];
obj.file_page.items = [];
}
}
else {
obj.file_page.next_marker_list.push(response.next_marker)
}
obj.file_page.items = obj.file_page.items.concat(response.items);
obj.showTipSuccess("文件列表获取完成 共:" + obj.file_page.items.length + "项");
if (obj.file_page.items.length) {
if (obj.isHomePage()) {
obj.initDownloadHomePage();
}
else {
obj.initDownloadSharePage();
obj.switchViewArrow();
}
obj.autoLastBtn();
}
}
}
else if (responseURL.indexOf("/file/get_share_link_video_preview_play_info") > 0) {
try { response = JSON.parse(response) } catch (error) { };
if (response instanceof Object) {
obj.video_page.play_info.file_id == response.file_id || (obj.video_page.subtitle_list = []);
obj.video_page.play_info = response;
obj.autoPlayer();
}
}
else if (responseURL.indexOf("/file/get_video_preview_play_info") > 0) {
try { response = JSON.parse(response) } catch (error) { };
if (response instanceof Object) {
obj.video_page.play_info.file_id == response.file_id || (obj.video_page.subtitle_list = []);
obj.video_page.play_info = response;
var info = response.video_preview_play_info
, list = info.live_transcoding_task_list;
if (list[0].hasOwnProperty("preview_url")) {
if (obj.getItem("default_player") != "NativePlayer") {
obj.get_share_link_video_preview_play_info(function (response) {
response || obj.showTipError("播放信息获取失败 请刷新重试", 10000);
});
return;
}
}
obj.autoPlayer();
}
}
}
else if (this.readyState == 4 && this.status == 403) {
if (obj.expires(this.responseURL) && obj.getItem("default_player") != "NativePlayer") {
var media_num = (this.responseURL.match(/media-(\d+)\.ts/) || [])[1] || 0;
if (media_num > 0 && obj.video_page.media_num != media_num) {
obj.video_page.media_num = media_num;
if (obj.getShareId()) {
obj.get_share_link_video_preview_play_info();
}
else {
obj.get_video_preview_play_info();
}
}
}
}
}, false);
send.apply(this, arguments);
};
};
obj.run = function() {
obj.goldlogSpm();
obj.addPageFileList();
obj.initVideoPage();
obj.unlockFileLimit();
var url = location.href;
if (url.indexOf(".aliyundrive.com/s/") > 0) {
obj.newTabOpen();
}
else if (url.indexOf(".aliyundrive.com/drive") > 0) {
obj.customSharePwd();
}
}();
console.log("=== 阿里云盘 好棒棒!===");
// Your code here...
})();