桀桀桀,小可爱1.0

快到点了打开图书馆网站

目前為 2023-10-13 提交的版本,檢視 最新版本

// ==UserScript==
// @name         桀桀桀,小可爱1.0
// @namespace    http://tampermonkey.net/
// @version      0.1.1
// @description  快到点了打开图书馆网站
// @author       小李同学
// @match        http://172.16.47.84/
// @match        http://172.16.47.84/DayNavigation.aspx
// @match        http://172.16.47.84/AppSTom.aspx?roomid=2201&hei=790&wd=1528
// @icon         https://www.google.com/s2/faviconsz=64&domain=47.84
// @grant        none
// @license MIT
// ==/UserScript==
var currentUrl = window.location.href;
if (currentUrl == "http://172.16.47.84/") {
  var redirectTime = new Date();
  redirectTime.setHours(18, 19, 0);
  var currentTime = new Date();
  var timeDiff = redirectTime.getTime() - currentTime.getTime();

  if (timeDiff > 0) {
    setTimeout(function() {
      location.assign("http://172.16.47.84/");
    }, timeDiff);
  }
}
function runCode() {
   var count = localStorage.getItem("count");
    console.log(count)
    function getCurrentPage() {
        var currentPage = window.location.href;

        if (currentPage === 'http://172.16.47.84/') {
            localStorage.setItem("count", 0)
            return 1;
        } else if (currentPage === 'http://172.16.47.84/DayNavigation.aspx' && count <= 3) {
            return 2;
        } else if (currentPage === 'http://172.16.47.84/AppSTom.aspx?roomid=2201&hei=790&wd=1528'&& count <= 3) {
            return 3;
        } else if (currentPage === 'http://172.16.47.84/Verify.aspx?seatid=1201***') {
            return 5;
        } else {
            return 4;
        }
    }
    async function executeSteps() {
        var currentPage = getCurrentPage();
        if (currentPage === 1) {
            await login();
            await cli();
        } else if (currentPage === 2) {
            if (count == 0)
                setTimeout(selectDay, 100)
            if (count == 1)
                setTimeout(selectRoom, 100)
            if (count == 2)
                setTimeout(switchSeat, 100)
        } else if (currentPage === 3) {
              if (count == 3)
                setTimeout(switchSeat2, 100)
        } else if (currentPage === 4) {
            setTimeout(function() {
            window.location.href = 'http://172.16.47.84/';
        }, 8000);

        } else if (currentPage === 5) {
            newProgram();
        }
    }
    function login() {
        return new Promise(function (resolve, reject) {
            var usernameField = document.getElementById('TextBox1');
            var passwordField = document.getElementById('TextBox2');

            if (usernameField && passwordField) {
                usernameField.value = '学号';//你自己的
                passwordField.value = '密码';//看上面
            }

           /* window.onload = function () {
                var element = document.querySelector('#Button1');
                if (element) {
                    element.click();
                }
            };*/

            resolve();
        });
    }
        function cli() {
        return new Promise(function (resolve, reject) {

            var element = document.querySelector('#Button1');
                if (element) {
                    element.click();
                console.log("cli")

            }
            localStorage.setItem("count", 0)
            resolve();
        });
    }

    function selectDay() {
        return new Promise(function (resolve, reject) {
            var select = document.querySelector('#ddlDay');
            if (select) {
                select.value = '明日';//别动!!!
                select.onchange()
                localStorage.setItem("count", 1)
                resolve();
            } else {
                resolve();
            }
        });
    }


    function selectRoom() {
        return new Promise(function (resolve, reject) {
            var select1 = document.querySelector('#ddlRoom');
            if (select1) {
                select1.value = '2201001';//介个嘛...中区101室 2101001 201室 2201001  206室 2206001 211室 2211001 请自行查阅更改,东区西区的....网页源码在下面自己康
                /*
    <option selected="selected" value="1201001">东区图书馆自习室201室</option>
    <option value="1202001">东区图书馆自习室202室</option>
    <option value="1293001">东区图书馆自习室293室</option>
    <option value="1294001">东区图书馆自习室294室</option>
    <option value="1401001">东区图书馆自习室401室</option>
    <option value="1702001">东区图书馆自习室702室</option>
    <option value="2101001">中区图书馆自习室101室</option>
    <option value="2201001">中区图书馆自习室201室</option>
    <option value="2206001">中区图书馆自习室206室</option>
    <option value="2211001">中区图书馆自习室211室</option>
    <option value="3401001">西区图书馆自习室401室</option>
    <option value="3408001">西区图书馆自习室408室</option>

*/
                select1.onchange();
                localStorage.setItem("count", 2)
                resolve();
            } else {
                resolve();
            }
        });
    }

    function step4() {
        return new Promise(function (resolve, reject) {
            var select1 = document.querySelector('#ddlRoom');
            if (select1) {
                select1.value = '3408001';

                var event = new MouseEvent('mousedown', {
                    bubbles: true,
                    cancelable: true,
                    view: window
                });
                select1.dispatchEvent(event);

                event = new MouseEvent('mouseup', {
                    bubbles: true,
                    cancelable: true,
                    view: window
                });
                select1.dispatchEvent(event);

                resolve();
            } else {
                resolve();
            }
        });
    }
    function switchSeat() {
        return new Promise(function (resolve, reject) {

            var button = document.querySelector('#Button2');
            if (button) {
                button.click();
                console.log("switchSeat")

            }
            localStorage.setItem("count", 3)
            resolve();
        });
    }

    function switchSeat2() {
        return new Promise(function (resolve, reject) {
            window.location.href = 'Verify.aspx?seatid=2201106';//2201144 、解析:前四位为教室号,参考选自习室是的前四位,后四位为座位号 你选1号就是001, 101号就是101,以此类推
             select.onchange()
                localStorage.setItem("count", 1)
            resolve();
        });
    }
    function newProgram() {
        1

    }

    executeSteps();
}
let now = new Date();
let start = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 18, 19, 0);
let end = new Date(now.getFullYear(), now.getMonth(), now.getDate(), 18, 25, 0);
if (now >= start && now <= end) {
    runCode();
}