🏠 Home 

国开自动回帖

国家开放大学自动回帖脚本

  1. // ==UserScript==
  2. // @name 国开自动回帖
  3. // @namespace https://greasyfork.org/zh-CN/users/707063-genexy
  4. // @version 202011222124
  5. // @description 国家开放大学自动回帖脚本
  6. // @author 流浪的蛊惑
  7. // @match *://*.ouchn.cn/*
  8. // @grant none
  9. // ==/UserScript==
  10. (function() {
  11. 'use strict';
  12. var i=0;
  13. var href = location.href;
  14. if(href.indexOf("/forum/")!=-1){
  15. var ht=document.getElementsByClassName("header replies");
  16. if(ht.length>0){ //初始化回帖
  17. ht[0].innerHTML="<input id=\"htlr\" type=\"text\" value=\"谢谢同学参加教学活动,请就你对问题的理解,谈谈你的看法。\"><br /><input type=\"button\" value=\"点击批量回贴\" onclick=\"localStorage.clear();localStorage.setItem('开始回帖','csh');localStorage.setItem('回帖内容',document.getElementById('htlr').value);location.reload();\"/>";
  18. }
  19. if(localStorage.getItem("开始回帖")=="csh"){ //获取0回复帖子
  20. localStorage.setItem("开始回帖","ok"); //暂存帖子ID号
  21. var tbl=document.getElementsByClassName("forumheaderlist"); //帖子区域
  22. var tr=tbl[0].getElementsByTagName("tr");
  23. for(i=1;i<tr.length;i++){
  24. var a=tr[i].getElementsByTagName("td")[2].getElementsByTagName("a"); //未分组不回帖
  25. var b=tr[i].getElementsByTagName("td")[3].getElementsByTagName("a"); //回帖数
  26. if(a.length>0 && b.length>0){
  27. if(b[0].innerText.trim()=="0"){ //查找须要回帖的链接
  28. localStorage.setItem(b[0].getAttribute("href").substring(b[0].getAttribute("href").indexOf("d=") + 2),b[0].getAttribute("href"));
  29. }
  30. }
  31. }
  32. location.reload();
  33. }else{
  34. var isover=true; //是否全部回完
  35. for(i=0;i<localStorage.length;i++){
  36. var kn=localStorage.key(i);
  37. var kv=localStorage.getItem(kn);
  38. if(kv.indexOf("discuss.php?d=")!=-1){
  39. isover=false;
  40. var cz=localStorage.getItem("回帖");
  41. if(cz==null){
  42. localStorage.setItem("开始回帖",kn);
  43. localStorage.setItem("回帖","进入回复");
  44. setInterval(function(){location.href=kv;},1500);
  45. }else{
  46. if(cz=="进入回复"){
  47. var hf=document.getElementsByClassName("commands");
  48. if(hf.length>0){
  49. localStorage.setItem("回帖","开始回复");
  50. setInterval(function(){hf[0].getElementsByTagName("a")[3].click();},1500);
  51. }
  52. }
  53. if(cz=="开始回复"){
  54. document.getElementById("id_submitbutton").setAttribute("onclick","tinyMCE.activeEditor.setContent(\""+localStorage.getItem("回帖内容")+"\")");
  55. localStorage.removeItem("回帖");
  56. localStorage.removeItem(localStorage.getItem("开始回帖"));
  57. setInterval(function(){document.getElementById("id_submitbutton").click();},1500);
  58. }
  59. }
  60. break;
  61. }
  62. }
  63. if(isover){ //结束当前回帖
  64. localStorage.clear();
  65. }
  66. }
  67. }
  68. })();