打开/关闭菜单
Toggle preferences menu
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Gadget-unziprecords.js:修订间差异

MediaWiki界面页面
无编辑摘要
无编辑摘要
标签已被回退
第61行: 第61行:
}
}
     $.ajax({
     $.ajax({
         async: false,
         async: true,
         type: "post",
         type: "post",
         url: url,
         url: url,
第68行: 第68行:
         success: function (datas) {
         success: function (datas) {
data =  datas['parse']['text']['*']
data =  datas['parse']['text']['*']
$('#mw-content-text').html(data)
         }
         }
     });
     });
第84行: 第85行:
console.log(unzipped)
console.log(unzipped)
var parsed=parseRecordsJSON('https://www.medforest.cn/medf/api.php',unzipped)
var parsed=parseRecordsJSON('https://www.medforest.cn/medf/api.php',unzipped)
$('#mw-content-text').html(parsed)
}
}
unzipRecords()
unzipRecords()

2022年10月31日 (一) 07:49的版本

function unzip(b64Data) {
    var strData = atob(b64Data);
    strData = pako.ungzip(strData,{to: 'string'});
    return decodeURIComponent(strData);
}
//检查是否为刷题云储存页面
function isRecordsPages(){
	var url = window.location.href
	url = url.split('Records/')
	console.log(url)
	if(url.length>1){
		var id = url[1]
		return id
	}else{
		return false
	}
}

//获取某个页面的历史版本
function getPageRevision(url, title, pageCount){
    var PARAMS = {
        "action": "query",
        "format": "json",
        "prop": "revisions",
        "titles": title,
        "utf8": 1,
        "rvprop": "content",
        "rvlimit": pageCount,
        "rvdir": "older",

    }
    var isSuccess = {}
    $.ajax(
        {
            url: url,
            method: "post",
            async: false,
            data: PARAMS,
            timeout: 5000,
            success: function (results){
                if('-1' in results.query.pages){
                    console.log('===无此页面===')
                    isSuccess = {isSuccess:false, result:results}
                }else {
                    isSuccess = {isSuccess:true, result:results}
                }
            }
        })
    return isSuccess
}
//解析json
function parseRecordsJSON(url,content){
    var data
    var PARAMS = {
	"action": "parse",
	"format": "json",
	"text":content,
	"contentmodel": "json",
	"utf8": 1,
    "origin":"*"
}
    $.ajax({
        async: true,
        type: "post",
        url: url,
        data: PARAMS,
        datatype: 'json',
        success: function (datas) {
			data =  datas['parse']['text']['*']
			$('#mw-content-text').html(data)
        }
    });
    return data
}
//主函数
function unzipRecords(){
	var id = isRecordsPages()
	if(!id){
		return '非题库云储存页面!'
	}
	var zippedContent= $('#mw-content-text').text()
	$('#mw-content-text').html('<h4 style="color:red;">正在分析做题数据</h4>')
	console.log(zippedContent)
	var unzipped = unzip(zippedContent)
	console.log(unzipped)
	var parsed=parseRecordsJSON('https://www.medforest.cn/medf/api.php',unzipped)
	
}
unzipRecords()