志愿云,日期自动填写脚本

对4个日期框做数据同步,修改起始日期会默认对结束日期+7,同时会对“服务时间”框日期部分进行更新。

当前为 2021-07-28 提交的版本,查看 最新版本

// ==UserScript==
// @name         志愿云,日期自动填写脚本
// @namespace    https://penicillin.github.io/
// @description  对4个日期框做数据同步,修改起始日期会默认对结束日期+7,同时会对“服务时间”框日期部分进行更新。
// @version      0.2.1
// @include      *://www.fjvs.org/app/opp/*
// @include      *://fj.zhiyuanyun.com/app/opp/*
// ==/UserScript==

var Weekdiv = document.createElement('div') //创建div标签
Weekdiv.setAttribute('id',"Weekdiv");//定义标签ID
Weekdiv.style.display='inline-block';//设置显示方式
Weekdiv.style.color='white';//设置显示方式
Weekdiv.style.padding='0px 15px'
Weekdiv.style.fontWeight='bold'

var titileStringEL=document.getElementById('opp_name');
titileStringEL.parentNode.appendChild(Weekdiv)

var userV1=document.getElementById('opp_start_date');
var userV2=document.getElementById('opp_end_date');
var userV3=document.getElementById('opp_recruit_start_date');
var userV4=document.getElementById('opp_recruit_end_date');
var userOpp_date_desc=document.getElementById('opp_date_desc');

userV1.removeAttribute('readonly')
userV2.removeAttribute('readonly')
userV3.removeAttribute('readonly')
userV4.removeAttribute('readonly')
for(var i=0;i<4;i++){
document.getElementById('jSelectDateContainer1').remove()
}
userV3.style.opacity='0.3';//灰色显示
userV4.style.opacity='0.3';//灰色显示

var userWeekDiv=document.getElementById('Weekdiv');
var titileStringDate
var startDate
var endDate

function getFormatedDate(str){
    var DateStr=str.split('-');
    return new Date(DateStr[0],DateStr[1]-1,DateStr[2]);
}
function getWeekDay(date){
    var weekDay = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
    var colors;
    switch(date.getDay()){
        case 0:
            colors='red'
            break;
        case 6:
            colors='green'
            break;
        default:
            colors='black'
            break;
    }
    Weekdiv.style.backgroundColor=colors;//设置显示方式
    return weekDay[date.getDay()];
}


function setAllDate(){
    titileStringDate=getFormatedDate(titileStringEL.value.match(/(\(=?)(\S*)(?=\))/)[2]);//拿到标题日期字符串并转为日期格式
    startDate=addDate(titileStringDate, -6);//初始化开始日期为结束前的6天
    endDate=addDate(startDate,6);//初始化结束日期为周六
    userV1.value=startDate.format('yyyy-MM-dd')
    setOtherDate();//设置其余日期
    userOpp_date_desc.value=userOpp_date_desc.value.replaceAll(/\d{4}-\d{2}-\d{2}/g,titileStringDate.format('yyyy-MM-dd'));
}

function addDate(date, days) {
    if (days == undefined || days == '') {
        days = 0;
    }
    return new Date(date.valueOf()+ days * 24 * 60 * 60 * 1000);
}
function setOtherDate(){
    userV2.value=endDate.format('yyyy-MM-dd')
    userV3.value=userV1.value
    userV4.value=userV2.value
    userWeekDiv.innerHTML=getWeekDay(titileStringDate);
}
titileStringEL.addEventListener('keyup',function(){setAllDate()});//注册(不可用)事件
userV1.addEventListener('keyup',function(){userV3.value=userV1.value;setOtherDate()});//注册(不可用)事件
userV2.addEventListener('keyup',function(){userV4.value=userV2.value});//注册(不可用)事件

setAllDate();

//志愿北京一键获取登录(不可用)验证码;by t123yh
    get_login_yzm = function() {
        GM.xmlHttpRequest({
            method: 'GET',
            url: 'https://www.bv2008.cn/app/api/view.php?m=get_login_yzm',
            headers: {
                "User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 MicroMessenger/7.0.20(0x1700142a) NetType/WIFI Language/zh_CN",    // If not specified, navigator.userAgent will be used.
            },
            onload: function(response) {
                if (response.status !== 200) {
                    alert("获取失败 " + response.status.toString());
                    return;
                }
                const matches = response.responseText.match(/[\dA-Z]{6}/g);
                if (matches.length !== 1) {
                    alert("正则匹配失败 " + response.responseText);
                    return;
                }
                document.getElementById("uyzm").value = matches[0];
            },
            onerror: function(response) {
                alert("获取失败");
            }
        })
    }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址