|
29 | 29 | } |
30 | 30 |
|
31 | 31 | function getErrorTripleThings(day: number, group: number) { |
32 | | - let cntSection = 0, cntMale = 0, cntStatus = 0, cntSuksa = 0; |
| 32 | + let cntSection = 0, cntMale = 0, cntStatus = 0, cntSuksa = 0, cntBaan = 0; |
33 | 33 | for (let i = 0; i < $groups_store[day][group].length; i++) { |
34 | 34 | if ($groups_store[day][group][i].section === "ศึกษา") { |
35 | 35 | cntSuksa++; |
|
44 | 44 | if ($groups_store[day][group][i].gender === "ชาย" && $groups_store[day][group][j].gender === "ชาย") { |
45 | 45 | cntMale++; |
46 | 46 | } |
| 47 | + if ($groups_store[day][group][i].baan === $groups_store[day][group][j].baan) { |
| 48 | + cntBaan++; |
| 49 | + } |
47 | 50 | } |
48 | 51 | } |
49 | 52 | if (cntMale >= 3) return "A"; |
50 | 53 | if (cntStatus >= 6) return "B"; |
51 | | - if (cntSection >= 3) return "C"; |
52 | | - if (cntSuksa >= 2) return "D"; |
| 54 | + if (cntBaan >= 3) return "C"; |
| 55 | + if (cntSection >= 3) return "D"; |
| 56 | + if (cntSuksa >= 2) return "E"; |
53 | 57 | return ""; |
54 | 58 | } |
55 | 59 |
|
|
111 | 115 | } |
112 | 116 | } |
113 | 117 |
|
| 118 | + if (groupOfFirstMember === -1) { |
| 119 | + return {groups: [], groupOfMembers: [], error: "Member 1 is not in any group"}; |
| 120 | + } |
| 121 | + if (groupOfSecondMember === -1) { |
| 122 | + return {groups: [], groupOfMembers: [], error: "Member 2 is not in any group"}; |
| 123 | + } |
114 | 124 | if (groupOfFirstMember === groupOfSecondMember) { |
115 | 125 | return {groups: [], groupOfMembers: [], error: "Members are in the same group"}; |
116 | 126 | } |
|
205 | 215 | {:else} |
206 | 216 | <div class={`grid grid-cols-${col.toString()} gap-4 mx-12`}> |
207 | 217 | {#each currentPageRows as group, i} |
208 | | - <div class={`${getErrorTripleThings(page, i) === "A" ? "bg-red-800" : getErrorTripleThings(page, i) === "B" ? "bg-red-600" : getErrorTripleThings(page, i) === "C" ? "bg-red-400" : getErrorTripleThings(page, i) === "D" ? "bg-purple-700" : "bg-orange-400"} ${getErrorTripleThings(page, i) !== "" ? "hover:bg-red-950" : "hover:bg-orange-primary-darken"} text-white-secondary transition-all py-2 px-4 rounded-xl m-2`}> |
| 218 | + <div class={`bg-orange-400 ${getErrorTripleThings(page, i) !== "" ? "hover:bg-red-950" : "hover:bg-orange-primary-darken"} text-white-secondary transition-all py-2 px-4 rounded-xl m-2`}> |
209 | 219 | <h3 class="text-lg font-bold mb-2 flex justify-center text-white">Group : {i + 1}</h3> |
210 | 220 | {#each group as member} |
211 | | - <li class={`${member.name === firstMember || member.name === secondMember ? "bg-orange-600 text-white" : hasForbiddenPairs(page, i, member) ? "bg-red-500 text-white " : "text-orange-primary bg-white"} hover:bg-orange-200 border-2 border-orange-primary transition-all rounded-md py-1 pl-2`}> |
| 221 | + <p class={`${member.name === firstMember || member.name === secondMember ? "bg-orange-600 text-white" : hasForbiddenPairs(page, i, member) && false ? "bg-red-500 text-white " : "text-orange-primary bg-white"} text-center font-bold hover:bg-orange-200 border-2 border-orange-primary transition-all rounded-md py-1`}> |
212 | 222 | {member.name} |
213 | 223 | {#if showDetail} |
214 | 224 | #{member.year} {member.faculty} |
215 | 225 | {/if} |
216 | | - </li> |
| 226 | + </p> |
217 | 227 | {/each} |
218 | 228 | </div> |
219 | 229 | {/each} |
|
0 commit comments