minerva-online下载报告附件

在问卷管理页面生效,点击↓加载附件列表,点击√可一键下载全部附件,点击附件名下载单个附件,如弹出窗口被拦截请允许后再进行操作

目前为 2021-08-27 提交的版本。查看 最新版本

// ==UserScript==
// @name         minerva-online下载报告附件
// @namespace    https://greasyfork.org/scripts/431414-minerva-online%E4%B8%8B%E8%BD%BD%E6%8A%A5%E5%91%8A%E9%99%84%E4%BB%B6
// @version      0.4
// @description  在问卷管理页面生效,点击↓加载附件列表,点击√可一键下载全部附件,点击附件名下载单个附件,如弹出窗口被拦截请允许后再进行操作
// @author       inoki
// @match        https://www.minerva-online.com/document.asp?alias=smngr.surveyexplorer
// @resource     https://cdn.staticfile.org/jquery/1.12.4/jquery.min.js
// @grant        none
// ==/UserScript==

(function() {
    'use strict';


    $("div.sticky-wrap").find(":checkbox").each(function(){//checkbox后添加下载按钮
        var surveyid=$(this).val();
        $(this).after('<button type=button id='+surveyid+' class=download><b>↓');
        $("#"+surveyid+".download").on("click",download_button);
    });


    //获取附件列表
    function download_button(){
        var surveyid=$(this).attr("id");
        $("#"+surveyid+".download").after('<p id='+surveyid+' class=loading><b>......');
        $.get("/document.asp?alias=survey.view&InstanceID="+surveyid,function(data,status){//获取当前survey内容并获取附件数量、名称、链接
            if (status=="success"){
                var attno=$(data).find("td.attachLeftCell").size();
                $("p#"+surveyid+".loading").after('<ol id='+surveyid+' class=attlist>\n#='+attno+'');
                if (attno>0){
                    $(data).find("td.attachLeftCell").each(function(){
                        var fileurl=$(this).find("img.attachedImg").attr("src");
                        if (fileurl.indexOf("Visual.asp?")>=0){
                            fileurl=$(this).find("div.media-player").attr("data-source");
                        }
                        var filename=$(this).next().find("div.propValueContent.propValueFileName").text();
                        if (fileurl.indexOf("getImage")>=0){
                            fileurl=fileurl.replace("Image.asp?","Attachment.asp?Attachment");
                        }
                        $('<li><a id='+surveyid+' class=file href='+fileurl+'>'+filename+'</li>').appendTo("ol#"+surveyid+".attlist");
                    });
                    $("ol#"+surveyid+".attlist").prepend('<button type=button id='+surveyid+' class=yes><b>√');
                    $("button#"+surveyid+".yes").on("click",download_yes);
                    download_button0(surveyid);
                }
                else {
                    download_button0(surveyid);
                }
            }
            else {
                download_button0(surveyid);
            }
        });
    };

    //按钮变为关闭
    function download_button0(surveyid){
        $("p#"+surveyid+".loading").remove();
        $("button#"+surveyid+".download").unbind();
        $("button#"+surveyid+".download").on("click",download_button1);
        $("button#"+surveyid+".download").text("×");
    };

    //按钮重置为初始
    function download_button1(){
        var surveyid=$(this).attr("id");
        $("ol").remove("#"+surveyid);
        $("button#"+surveyid+".download").unbind();
        $("button#"+surveyid+".download").on("click",download_button);
        $("button#"+surveyid+".download").text("↓");
    };

    //确认下载
    function download_yes(){
        var surveyid=$(this).attr("id");
        var url=$("a#"+surveyid+".file");
        for(var i=0;i<url.length;i++){
            window.open($(url[i]).attr("href"));
        }
        $("button#"+surveyid+".yes").text("〇");
    };


})();