xd

try to take over the world!

当前为 2017-09-25 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name xd
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description try to take over the world!
  6. // @author You
  7. // @match http://*/*
  8. // @grant none
  9. //@author omdano
  10.  
  11. //@updateURL https://openuserjs.org/meta/omdano/My_Script.meta.js
  12. //@run-at document-end
  13. // @include http://mygju.gju.edu.jo*
  14. // @include https://mygju.gju.edu.jo*
  15. // @include file:///C:/Users/Troll_000/Desktop/My%20Study%20Plan%20Offered%20Courses.html
  16. // @include file:///C:/Users/Troll_000/Desktop/Courseadd2.html
  17. // x.setAttribute( "onclick", "javascript: PrimeFaces.ab({source:'j_idt26:std_menu_bar_id:j_idt30'});return false;" );
  18. // ==/UserScript==
  19. function inject(func) {
  20. var source = func.toString();
  21. var sr = document.getElementById("content");
  22. var script = document.createElement('script');
  23. script.innerHTML = source+"st();";
  24. sr.appendChild(script);
  25. }
  26. function st() {
  27. st.datx = datx;
  28. st.table_sw = table_sw;
  29. st.button_ani =button_ani;
  30. st.button_res = button_res;
  31. st.hxe = hxe;
  32. var blk = [];
  33. var finl = [];
  34. var i = 0;
  35. var subjects = [] ;
  36. var fav_teach = [];
  37. var avo_teach = ["Dia Zeidan"];
  38. var data = [] ;
  39. var possiblities = [];
  40. var j = 0 ;
  41. var z = 0;
  42. var k = 0;
  43. function button_ani(num) {
  44. for(i=0;i<10;i++) {
  45. if(parseInt(document.getElementById("bar").getElementsByTagName("span")[i].innerHTML) === num) {
  46. document.getElementById("bar").getElementsByTagName("span")[i].className = "ui-paginator-page ui-state-default ui-corner-all ui-state-hover";
  47. break;
  48. }
  49. }
  50. }
  51. function button_res(){
  52. for(i=0;i<10;i++) {
  53. document.getElementById("bar").getElementsByTagName("span")[i].className = "ui-paginator-page ui-state-default ui-corner-all";
  54. }
  55. }
  56. function t_val(start,end) {
  57. var stz = 0 ;
  58. var enz = 0;
  59. if (start == "08:00 AM") {
  60. stz = 1;
  61. }
  62. else if (start == "09:30 AM") {
  63. stz = 2;
  64. }
  65. else if (start == "11:00 AM") {
  66. stz = 3;
  67. }
  68. else if (start == "12:30 PM") {
  69. stz = 4;
  70. }
  71. else if (start == "02:00 PM") {
  72. stz = 5;
  73. }
  74. else if (start == "03:30 PM") {
  75. stz = 6;
  76. }
  77. if (end == "09:30 AM") {
  78. enz = 2;
  79. }
  80. else if (end == "11:00 AM") {
  81. enz = 3;
  82. }
  83. else if (end == "12:30 PM") {
  84. enz = 4;
  85. }
  86. else if (end == "02:00 PM") {
  87. enz = 5;
  88. }
  89. else if (end == "03:30 PM") {
  90. enz = 6;
  91. }
  92. else if (end == "05:00 PM") {
  93. enz = 7;
  94. }
  95. return [stz,enz];
  96. }
  97. function plot(inf) {
  98. var ite = 0;
  99. var inf_table = document.getElementById("sch_table");
  100. inf_table.innerHTML = '<tbody id="sch_table" class="ui-datatable-data ui-widget-content" style="text-align:center;"></tbody></table></div></div>';
  101. var d = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
  102. console.log(inf);
  103. for(i=0;i<7;i++){
  104. var str = '<tr><td class="ui-state-default ui-selection-column">'+ d[i] +'</td>';
  105. for(ite=0;ite<6;ite++) {
  106. if(inf[i][1]) {
  107. var fnd = 0;
  108. for(j=0;j<inf[i][1].length;j++) {
  109. console.log(inf[i][1][j][2]);
  110. for(z=0;z<inf[i][1][j][2].length;z++) {
  111. console.log(inf[i][1][j][2][z]);
  112. if(inf[i][1][j][2][z][0] == d[i]) {
  113. console.log("reach0");
  114. console.log(inf[i][1][j][2][z][1]);
  115. var span = 0;
  116. var tim = t_val(inf[i][1][j][2][z][1][0],inf[i][1][j][2][z][1][1]);
  117. if(tim[0]-1 == ite) {
  118. console.log("reach1");
  119. console.log(tim);
  120. if((tim[1]-tim[0]) > 1) {
  121. console.log("reach2");
  122. str = str + '<td colspan="2">' + inf[i][1][j][0] + '<br>' + inf[i][1][j][1] + '</td>';
  123. ite++;
  124. fnd = 1;
  125. }
  126. else {
  127. str = str + '<td>' + inf[i][1][j][0] + '<br>' + inf[i][1][j][1] + '</td>';
  128. fnd = 1;
  129. }
  130.  
  131. }
  132. }
  133.  
  134. }
  135. }
  136. }
  137. if(fnd == 0) {
  138. str = str+ '<td></td>'; }
  139. }
  140. inf_table.innerHTML = inf_table.innerHTML + str + '</tr>'
  141. }
  142. }
  143. function sched_ti(pa) {
  144. var px = [];
  145. var dayz = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
  146. var iterlen = 0;
  147. if (pa.length>10){
  148. iterlen = 10;
  149. }
  150. else {
  151. iterlen = pa.length;
  152. }
  153. for(i=0;i<iterlen;i++){
  154. var tempo = [];
  155. for (day in dayz) {
  156. var sin_day =[];
  157. console.log(pa[i]);
  158. for(cl in pa[i][1]) {
  159. for(timez in pa[i][1][cl][2]) {
  160. if(pa[i][1][cl][2][timez][0] == dayz[day]) {
  161. sin_day.push(pa[i][1][cl]);
  162. }
  163. }
  164. }
  165. tempo.push([dayz[day],sin_day]);
  166. }
  167. px.push(tempo);
  168. }
  169. return px ;
  170. }
  171. function table_sw(p) {
  172. plot(finl[p-1]);
  173. }
  174. function cvt_time(start,end) {
  175. var st = 0 ;
  176. var en = 0;
  177. if (start == "08:00 AM") {
  178. st = 800;
  179. }
  180. else if (start == "09:30 AM") {
  181. st = 930;
  182. }
  183. else if (start == "11:00 AM") {
  184. st = 1100;
  185. }
  186. else if (start == "12:30 PM") {
  187. st = 1230;
  188. }
  189. else if (start == "02:00 PM") {
  190. st = 1400;
  191. }
  192. else if (start == "03:30 PM") {
  193. st = 1530;
  194. }
  195. if (end == "09:30 AM") {
  196. en = 930;
  197. }
  198. else if (end == "11:00 AM") {
  199. en = 1100;
  200. }
  201. else if (end == "12:30 PM") {
  202. en = 1230;
  203. }
  204. else if (end == "02:00 PM") {
  205. en = 1400;
  206. }
  207. else if (end == "03:30 PM") {
  208. en = 1530;
  209. }
  210. else if (end == "05:00 PM") {
  211. en = 1700;
  212. }
  213. return [start,end];
  214. }
  215.  
  216. function fu_fil(dat) {
  217. console.log(dat.length);
  218. var temp = dat;
  219. var len = Math.max.apply(Math, dat.map(function (el) { return el.length;}));
  220. console.log(len);
  221. var new_fil_array = [];
  222. for (i=0;i<dat.length;i++) {
  223. if (dat[i].length <len) {
  224. temp.splice(i,1);
  225. console.log("deleted");
  226. }
  227.  
  228. }
  229. console.log(dat.length);
  230. return temp;
  231. }
  232. function s(x,y){
  233. var pre = ['string' , 'number' , 'bool'];
  234. if(typeof x!== typeof y ){return pre.indexOf(typeof y) - pre.indexOf(typeof x);}
  235.  
  236. if(x === y){return 0;}
  237. else {return (x > y)?1:-1;}
  238.  
  239. }
  240. function dupli(data_unfil) {
  241. xd = data_unfil;
  242. console.log(data_unfil);
  243. console.log("dupli start");
  244. console.log(data_unfil[0]);
  245. for(k=0;k<data_unfil.length;k++) {
  246. for(z=0;z<data_unfil.length;z++) {
  247. var counters = 0 ;
  248. if(k != z && (data_unfil[k] != [] || data_unfil[z] != [])) {
  249. for(i=0;i<data_unfil[z].length;i++) {
  250. if (data_unfil[k].indexOf(data_unfil[z][i]) > -1) {
  251. counters++;
  252.  
  253. }
  254. else {
  255. continue;
  256. } }
  257. }
  258. else {
  259. continue;
  260. }
  261. if(counters == xd[k].length) {
  262. data_unfil[z] = [] ;
  263. xd.splice(z,1);
  264. console.log("delete");
  265. }}}
  266. console.log(xd);
  267. console.log(xd.length);
  268. return xd;
  269. }
  270.  
  271.  
  272. function cartesian(arg) {
  273. var r = [], max = arg.length-1;
  274. function helper(arr, i) {
  275. for (var hj=0, l=arg[i].length; hj<l; hj++) {
  276. var a = arr.slice(0); // clone arr
  277. a.push(arg[i][hj]);
  278. if (i==max)
  279. r.push(a);
  280. else
  281. helper(a, i+1);
  282. }
  283. }
  284. helper([], 0);
  285. console.dir(r,"haxd");
  286. return r;
  287. }
  288. function data_ext(subj,num) {
  289. document.getElementById("progtext").textContent = "Extracting "+subj+" Data.";
  290. table = document.getElementById("manage_course_sections_form:sections_tbl_data") ;
  291. tr = table.getElementsByTagName("tr");
  292. var c = 0;
  293. var sectiondat = [];
  294. function strt() {
  295. setTimeout(function(){
  296. for(i=0;i<tr.length;i++) {
  297. var timings = [];
  298. td = tr[i].getElementsByTagName("td");
  299. if (td[0]) {
  300. if (td[0].className == "ui-selection-column" ){
  301. if(parseInt(td[td.length-2].textContent,10) < parseInt(td[td.length-3].textContent,10) && (td[td.length-1].textContent != "Blocked" || blk[subjects.indexOf(subj)])) {
  302. var section_num = td[3].textContent ;
  303. var times = tr[i].getElementsByTagName("tbody");
  304. var te = times[0].getElementsByTagName("td")[0].textContent;
  305. times = times[1].getElementsByTagName("tr");
  306.  
  307. console.log(te);
  308. for (j=0;j<times.length;j++) {
  309. var days = times[j].getElementsByTagName("td");
  310. timings.push([days[0].textContent,cvt_time(days[1].textContent,days[3].textContent)]);
  311. }
  312. console.log(subj);
  313. if (timings[0]) {
  314. sectiondat.push([subj,section_num,timings,te]);
  315. }
  316. }
  317. }}
  318.  
  319.  
  320.  
  321. }
  322. console.log(sectiondat);
  323. if (c<(num.length-1)) {
  324. console.log(c);
  325. c++;
  326. num[c].click();
  327. strt();
  328. }
  329. },2000);
  330. }
  331. if(c==0) {
  332. strt();
  333. }
  334. setTimeout(function() {
  335. console.log((sectiondat[0] && c == (num.length-1)));
  336. if (sectiondat[0] && c == (num.length-1)) {
  337. console.log("data arch");
  338. document.getElementById("progtext").textContent = "Done Extracting "+subj+" Data.";
  339. data.push(sectiondat);}
  340.  
  341. },2100*num.length);
  342. }
  343. function perf(datax) {
  344. var perfe = [];
  345. for(i=0;i<datax.length;i++) {
  346. var points = 0.0000 ;
  347. for(j=0;j<datax[i].length;j++) {
  348. console.log(datax[i][j][3]);
  349. if (fav_teach.indexOf(datax[i][j][3]) > -1){
  350. console.log("found");
  351. points = points + 0.2;
  352. }
  353. if(avo_teach.indexOf(datax[i][j][3])> -1) {
  354. points = points - 0.2;
  355. }
  356. for(k=0;k<datax[i][j][2].length;k++) {
  357. if(datax[i][j][2][k][1][0] == "08:00 AM") {
  358. points = points + 0.5;
  359.  
  360. }
  361. if(datax[i][j][2][k][1][1] == "05:00 PM") {
  362. points = points - 0.33;
  363.  
  364. }
  365. else if(datax[i][j][2][k][1][1] == "03:30 PM" || datax[i][j][2][k][1][1] == "03:00 PM") {
  366. points = points - 0.25;
  367.  
  368. }
  369. else if(datax[i][j][2][k][1][1] == "02:00 PM" || datax[i][j][2][k][1][1] == "01:30 PM") {
  370. points = points - 0.15;
  371.  
  372. }
  373. else if(datax[i][j][2][k][1][1] == "12:30 PM" || datax[i][j][2][k][1][1] == "12:00 PM") {
  374. points = points - 0.09;
  375.  
  376. }
  377. }
  378. }
  379. perfe.push([points,datax[i]]);
  380. }
  381. perfe.sort(function(a,b){return b[0] - a[0];});
  382. console.log("perf done");
  383. return perfe;
  384. }
  385. function filter(data) {
  386. var heh = 0 ;
  387. var kek = 0 ;
  388. var count = 0 ;
  389. var combi = [];
  390. for(count =0 ;count<data.length;count++){
  391. var found = 0;
  392. for(i=0;i<data[count].length;i++) {
  393. for(j=0;j<data[count].length;j++) {
  394. if (i != j) {
  395. for(heh=0;heh<data[count][i][2].length;heh++) {
  396. for(kek=0;kek<data[count][j][2].length;kek++) {
  397. if(data[count][i][2][heh][0] == data[count][j][2][kek][0] && (data[count][i][2][heh][1][0] == data[count][j][2][kek][1][0] || data[count][i][2][heh][1][1] == data[count][j][2][kek][1][1])){
  398. found = 1;
  399. break;
  400. }
  401. }
  402. }
  403. }
  404.  
  405. }
  406. }
  407. if(found ==0) {
  408. combi.push(data[count]);
  409. }
  410. }
  411. return combi;
  412. }
  413. function sortArrayByLength(arr, ascYN) {
  414. arr.sort(function (a, b) { // sort array by length of text
  415. if (ascYN) return a.length - b.length; // ASC -> a - b
  416. else return b.length - a.length; // DESC -> b - a
  417. });
  418. }
  419. function datx() {
  420. possiblities = [];
  421. data = [];
  422. subjects = [];
  423. fav_teach = [];
  424. blk = [];
  425. var arrxd = [];
  426. var heh =[];
  427. arrxd = [document.getElementById("course1in:course").value,document.getElementById("course2in:course").value,document.getElementById("course3in:course").value,document.getElementById("course4in:course").value,document.getElementById("course5in:course").value,document.getElementById("course6in:course").value,document.getElementById("course7in:course").value,document.getElementById("course8in:course").value];
  428. for(i=0;i<arrxd.length;i++) {
  429. if(arrxd[i]!=="") {
  430. heh.push(arrxd[i]);
  431. }
  432. }
  433. subjects = heh;
  434. var a = [document.getElementById("te1:course"),document.getElementById("te2:course"),document.getElementById("te3:course")];
  435. var t = [];
  436. for(i=0;i<a.length;i++) {
  437. if(a[i]!=="") {
  438. t.push(arrxd[i]);
  439. }
  440. }
  441. fav_teach = t;
  442. break_time(document.getElementById("sun").value,"Sun");
  443. break_time(document.getElementById("mon").value,"Mon");
  444. break_time(document.getElementById("thu").value,"Thu");
  445. console.log(subjects);
  446. blk = [document.getElementById("ck1").checked,document.getElementById("ck2").checked,document.getElementById("ck3").checked,document.getElementById("ck4").checked,document.getElementById("ck5").checked,document.getElementById("ck6").checked,document.getElementById("ck7").checked,document.getElementById("ck8").checked];
  447. document.getElementById("hehz").innerHTML = '<div id="prog" style="text-align:center;letter-spacing:2px;font-family: "Times New Roman", Times, serif;font-size:80px;font-weight:bold;"><div id="progtext" style="padding-top:100px;">Initializing Values</div></div>'+'<div id="myProgress style="margin-top:200px;margin-left:10%;width:80%;background-color:white;height:30px;""><div id="myBar" style="width:1%;height:30px;background-color:green;background-clip:padding-box;position:relative;margin-top:100px;margin-left:10%;"></div></div>'
  448. k=0;
  449. move();
  450. myLoop();
  451. var x = 0 ;
  452. var h = 0;
  453. console.log(subjects.length);
  454. var o = 0;
  455. var y = 0 ;
  456. var cons = 0 ;
  457. var poss = [];
  458. var passec = [];
  459. var pog = [];
  460. setTimeout(function() {
  461. pog= sm_red();
  462. console.log("Hehe");
  463. console.log(data);
  464. document.getElementById("progtext").textContent = "Generating all possible permutations.";
  465. setTimeout(function() {
  466. document.getElementById("progtext").textContent = "Filtering and Scoring.";
  467. if(pog.length == 0) {
  468. console.log("NoPossiblities");
  469. }
  470. else{
  471. pog.sort(function() {
  472. sortArrayByLength(pog,true);
  473. });
  474. console.log(pog.length);
  475. pog = perf(pog);
  476. console.log(pog);
  477. console.log(pog.length);
  478. document.getElementById("progtext").textContent = "Done , Organizing data.";
  479. console.log("finished");
  480. finl = sched_ti(pog);
  481. console.log(finl);
  482. setTimeout(function() {
  483. document.getElementById("hehz").innerHTML = '<div id="who_elem" class="ui-datatable ui-widget dataTableClass" style="font-size:9.4pt;"><div class="ui-datatable-header ui-widget-header ui-corner-top">Possible Top 10 Schedules</div><div id="manage_course_sections_form:sections_tbl_paginator_top" class="ui-paginator ui-paginator-top ui-widget-header"> <span id="bar" class="ui-paginator-pages"><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(1)" onmouseover="st.button_ani(1)" onmouseout="st.button_res()">1</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(2)" onmouseover="st.button_ani(2)"onmouseout="st.button_res()">2</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(3)" onmouseover="st.button_ani(3)"onmouseout="st.button_res()">3</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(4)" onmouseover="st.button_ani(4)"onmouseout="st.button_res()">4</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(5)" onmouseover="st.button_ani(5)"onmouseout="st.button_res()">5</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(6)" onmouseover="st.button_ani(6)"onmouseout="st.button_res()">6</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(7)" onmouseover="st.button_ani(7)"onmouseout="st.button_res()">7</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(8)" onmouseover="st.button_ani(8)"onmouseout="st.button_res()" >8</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(9)"onmouseover="st.button_ani(9)"onmouseout="st.button_res()">9</span><span class="ui-paginator-page ui-state-default ui-corner-all" onclick="st.table_sw(10)"onmouseover="st.button_ani(10)"onmouseout="st.button_res()">10</span></span></div><div id="tab" class="ui-datatable-tablewrapper"><table id="xd" style="display:table;"><thead><tr><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:16%"><span></span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:14%"><span>08:00 - 9:30</span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:14%"><span>9:30 - 11:00</span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:14%"><span>11:00 - 12:30</span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:14%"><span>12:30 - 02:00</span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:14%"><span>02:00 - 3:30</span></th><th id="manage_course_sections_form:sections_tbl:selection" class="ui-state-default ui-selection-column" style="width:16%"><span>03:30 - 5:00</span></th></tr></thead>'+
  484. '<tbody id="sch_table" class="ui-datatable-data ui-widget-content" style="text-align:center;">'+
  485. '</tbody></table></div></div>';
  486. plot(finl[0]);
  487. },3000);
  488. }
  489. },600+1500*subjects.length);
  490.  
  491. },(subjects.length* 30000));
  492. }
  493. function sm_red() {
  494. var lenz = data.length;
  495. var combz = [data[0]];
  496. var jk = 1;
  497. var kr =0;
  498. var br=0;
  499. console.log(data.length,"Kappa");
  500. if(lenz>1) {
  501. for(jk=1;jk<data.length;jk++) {
  502. console.dir(combz);
  503. combz.push(data[jk]);
  504. console.dir(combz);
  505. var kra = cartesian(combz);
  506. if(jk>1){
  507. console.log(kra.length);
  508. for(kr = 0;kr<kra.length;kr++) {
  509. for(br = 0;br<kra[kr][0].length;br++) {
  510. kra[kr].push(kra[kr][0][br]);
  511. }
  512. kra[kr].splice(0,1);
  513. }}
  514. combz = [filter(kra)];
  515. console.log("yewankz");
  516. }}
  517. else{
  518. var kz =0;
  519. kra = [];
  520. console.log("The length");
  521. console.log(data[0].length);
  522. for(kz=0;kz<data[0].length;kz++) {
  523. kra.push([data[0][kz]]);
  524. }
  525. combz = [kra];
  526. }
  527. console.dir(combz[0]);
  528. console.log("haHAA");
  529. return combz[0];
  530.  
  531. }
  532. function move() {
  533. var elem = document.getElementById("myBar");
  534. var width = 1;
  535. var id = setInterval(frame, ((30000*subjects.length)+(600+2000*subjects.length))/80);
  536. function frame() {
  537. if (width >= 80) {
  538. clearInterval(id);
  539. } else {
  540. width++;
  541. elem.style.width = width + '%';
  542. }
  543. }
  544. }
  545. function break_time(num,day) {
  546. var break_arr =[];
  547. if(day == "Sun") {
  548. if(num == "1" ) {
  549. break_arr = [["break","1",[["Sun",["08:00 AM","09:30 AM"]],["Tue",["08:00 AM","09:30 AM"]]],"godliketeacher"]];
  550. }
  551. else if(num == "2" ) {
  552. break_arr = [["break","1",[["Sun",["09:30 AM","11:00 AM"]],["Tue",["09:30 AM","11:00 AM"]]],"godliketeacher"]];
  553. }
  554. else if(num == "3") {
  555. break_arr = [["break","1",[["Sun",["11:00 AM","12:30 PM"]],["Tue",["11:00 AM","12:30 PM"]]],"godliketeacher"]];
  556. }
  557. else if(num == "4") {
  558. break_arr = [["break","1",[["Sun",["12:30 PM","02:00 PM"]],["Tue",["12:30 PM","02:00 PM"]]],"godliketeacher"]];
  559. }
  560. else if(num == "5") {
  561. break_arr = [["break","1",[["Sun",["02:00 PM","03:30 PM"]],["Tue",["02:00 PM","03:30 PM"]]],"godliketeacher"]];
  562. }
  563. else {
  564. return;
  565. }
  566. }
  567. else if(day == "Mon") {
  568. if(num == "1" ) {
  569. break_arr = [["break","1",[["Mon",["08:00 AM","09:30 AM"]],["Wed",["08:00 AM","09:30 AM"]]],"godliketeacher"]];
  570. }
  571. else if(num == "2" ) {
  572. break_arr = [["break","1",[["Mon",["09:30 AM","11:00 AM"]],["Wed",["09:30 AM","11:00 AM"]]],"godliketeacher"]];
  573. }
  574. else if(num == "3") {
  575. break_arr = [["break","1",[["Mon",["11:00 AM","12:30 PM"]],["Wed",["11:00 AM","12:30 PM"]]],"godliketeacher"]];
  576. }
  577. else if(num == "4") {
  578. break_arr = [["break","1",[["Mon",["12:30 PM","02:00 PM"]],["Wed",["12:30 PM","02:00 PM"]]],"godliketeacher"]];
  579. }
  580. else if(num == "5") {
  581. break_arr = [["break","1",[["Mon",["02:00 PM","03:30 PM"]],["Wed",["02:00 PM","03:30 PM"]]],"godliketeacher"]];
  582. }
  583. else {
  584. return;
  585. }
  586. }
  587. else {
  588. if(num == "1" ) {
  589. break_arr = [["break","1",[["Thu",["08:00 AM","09:30 AM"]]],"godliketeacher"]];
  590. }
  591. else if(num == "2" ) {
  592. break_arr = [["break","1",[["Thu",["09:30 AM","11:00 AM"]]],"godliketeacher"]];
  593. }
  594. else if(num == "3") {
  595. break_arr = [["break","1",[["Thu",["11:00 AM","12:30 PM"]]],"godliketeacher"]];
  596. }
  597. else if(num == "4") {
  598. break_arr = [["break","1",[["Thu",["12:30 PM","02:00 PM"]]],"godliketeacher"]];
  599. }
  600. else if(num == "5") {
  601. break_arr = [["break","1",[["Thu",["02:00 PM","03:30 PM"]]],"godliketeacher"]];
  602. }
  603. else {
  604. return;
  605. }
  606. }
  607. data.push(break_arr);
  608. }
  609. var xsum = 0;
  610. function myLoop () {
  611. var hexx = 1;
  612. hexx = document.getElementById("manage_course_sections_form:sections_tbl_paginator_top").getElementsByTagName("span")[5].getElementsByTagName("span");
  613. // create a loop function
  614. setTimeout(function () {
  615. var form = document.getElementById("manage_course_sections_form:course");
  616. form.value = subjects[k];
  617. document.getElementById("manage_course_sections_form:searchBtn").click();
  618. setTimeout(function() {hexx= document.getElementById("manage_course_sections_form:sections_tbl_paginator_top").getElementsByTagName("span")[5].getElementsByTagName("span");xsum +=hexx.length;console.log(k);c=0; data_ext(subjects[k],hexx);k++;
  619. if (k < subjects.length) {
  620. myLoop();
  621. } // .. setTimeout()
  622. },2000); }, 15000);
  623. }
  624. function hxe() {
  625. if (window.location.href == "https://mygju.gju.edu.jo/faces/course_sections/manage_course_sections.xhtml" || window.location.href == "https://mygju.gju.edu.jo/RegistrationSystem/faces/course_sections/manage_course_sections.xhtml"){
  626. var scr = document.getElementById("content");
  627. var hide = document.getElementById("manage_course_sections_form");
  628. hide.style.display = "none";
  629. hide.style.height = "0px";
  630. scr.style.border = "1px solid #cccccc";
  631.  
  632. scr.style.overflow = "hidden";
  633. scr.innerHTML =scr.innerHTML + '<div style="width:100%;height:100px;background-color: #f1f1f1;color: #fff;font-weight: bold;font-family: Helvetica;text-shadow: 0 1px 0 #ccc, 0 2px 0 #c9c9c9, 0 3px 0 #bbb, 0 4px 0 #b9b9b9, 0 5px 0 #aaa, 0 6px 1px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1), 0 1px 3px rgba(0,0,0,.3), 0 3px 5px rgba(0,0,0,.2), 0 5px 10px rgba(0,0,0,.25), 0 10px 10px rgba(0,0,0,.2), 0 20px 20px rgba(0,0,0,.15);"><div style="font-size: 3em;line-height: 70px;padding-left:1em;">GJU Custom Courses</div><div style="text-align:right;padding-right:1em;line-height: 10px;dir=rtl;font-size: 1em;">by Omar A. Al-Tamimi</div></div>'+
  634. '<div id="hehexdz" style="height:500px;width:100%;background-color: #f1f1f1"><div id="hehz"><div id="var" style="width:50%;;float:left;height:500px;text-align:left;font: 50px arial, sans-serif;"><table cellspacing="1px" dir="ltr" style="float: left;padding-left:1em;" width="100%"><tbody><tr><td><label id="course1" class="ui-outputlabel ui-widget">Course Code 1 :</label></td><td><input id="course1in:course" name="course1n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck1" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course2" class="ui-outputlabel ui-widget">Course Code 2 :</label></td><td><input id="course2in:course" name="course2n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck2" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course3" class="ui-outputlabel ui-widget">Course Code 3 :</label></td><td><input id="course3in:course" name="course3n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck3" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course4" class="ui-outputlabel ui-widget">Course Code 4 :</label></td><td><input id="course4in:course" name="course4n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck4" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course5" class="ui-outputlabel ui-widget">Course Code 5 :</label></td><td><input id="course5in:course" name="course5n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck5" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course6" class="ui-outputlabel ui-widget">Course Code 6 :</label></td><td><input id="course6in:course" name="course6n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck6" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course7" class="ui-outputlabel ui-widget">Course Code 7 :</label></td><td><input id="course7in:course" name="course7n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck7" value="1"><span style="font-size:12px">Blocked</span></td></tr><tr><td><label id="course8" class="ui-outputlabel ui-widget">Course Code 8 :</label></td><td><input id="course8in:course" name="course8n" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td><td><input type="checkbox" id="ck8" value="1"><span style="font-size:12px">Blocked</span></td></tr></tbody></table></div>'+
  635. '<div id="var2" style="width:50%;border-spacing=20px 0;height:500px;text-align:left;font: 50px arial, sans-serif;float:left;"><table dir="ltr" style="float: left;border-spacing=10px 0;padding-right:1em;" width="100%"><tbody><tr><td><label id="fav_teach" class="ui-outputlabel ui-widget">Prefered Teachers:</label></td><td><table cellspacing="1px" dir="ltr" style="float: left;padding-left:1em;" width="100%"><tbody><tr><td><input id="te1:course" name="te1" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td></tr><tr><td><input id="te2:course" name="te2" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td></tr><tr><td><input id="te3:course" name="te3" type="text" class="ui-inputfield ui-inputtext ui-widget ui-state-default ui-corner-all" role="textbox" aria-disabled="false" aria-readonly="false" aria-multiline="false"></td></tr></tbody></table></td></tr><tr><td><label id="xdee" class="ui-outputlabel ui-widget">Break Times: &nbsp &nbsp &nbsp &nbsp &nbsp</label></td><td><table dir="ltr" style="float:left;padding-right:1em;" width=100%><tbody><tr><td><label id="fav_teach" class="ui-outputlabel ui-widget">Sunday-Tuesday:</label></td><td><select id="sun" class="ui-selectonemenu ui-widget ui-state-default ui-corner-all ui-helper-clearfix" ><option value="x">None</option><option value="1">08:00-09:30</option><option value="2">09:30-11:00</option><option value="3">11:00-12:30</option><option value="4">12:30-02:00</option><option value="5">02:00-03:30</option></td></tr><tr><td><label id="fav_teach" class="ui-outputlabel ui-widget">Monday-Wednesday:</label></td><td><select id="mon" class="ui-selectonemenu ui-widget ui-state-default ui-corner-all ui-helper-clearfix" ><option value="x">None</option><option value="1">08:00-09:30</option><option value="2">09:30-11:00</option><option value="3">11:00-12:30</option><option value="4">12:30-02:00</option><option value="5">02:00-03:30</option></td></tr><tr><td><label id="fav_teach" class="ui-outputlabel ui-widget">Thursday:</label></td><td><select id="thu" class="ui-selectonemenu ui-widget ui-state-default ui-corner-all ui-helper-clearfix" ><option value="x">None</option><option value="1">08:00-09:30</option><option value="2">09:30-11:00</option><option value="3">11:00-12:30</option><option value="4">12:30-02:00</option><option value="5">02:00-03:30</option></td></tr></tbody></td></tr><tr><td><button id="sub" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-icon-left commandButton" onclick ="st.datx()">Start</button></td></tr></tbody></table></div></div></div>';
  636. scr.style.borderRadius = "25px";
  637. // te1:course ,te2:course,te3:course
  638.  
  639. }}
  640. (function(){
  641. var butz =document.getElementsByTagName("center")[0];
  642. butz.innerHTML = butz.innerHTML + '<td><button class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-icon-left " onclick="st.hxe()" style="margin-top:10px;height:29.5px;width:150px" role="button" aria-disabled="false"><span class="ui-button-text ui-c">Custom Search</span></button></td>';
  643. })();
  644. }
  645.  
  646.  
  647.  
  648. (function() {
  649. 'use strict';
  650. inject(st);
  651.  
  652. })();
  653.  
  654.  
  655.