@if (!loading && (results.length > 0 || candidates.length > 0)) {
info
Election Status {{ election?.status?.replace('_', ' ') }}
@if (results.length > 0) {
how_to_vote
Total Votes Cast {{ kpis.totalVotes | number }}
}
people
Contested Posts {{ kpis.contestedCount }}
workspace_premium
Unopposed Posts {{ kpis.unopposedCount }}
} @if (loading) {

Fetching election results and metadata...

} @else { @if (canEnterManualCounts && candidates.length > 0) {
how_to_vote

Enter Manual Vote Counts

Physical voting is complete. Please input the vote counts received by each candidate below.

@if (countsSaved) { check_circle Counts Saved }
@for (group of groupCandidatesByPost(); track group.postId) {
badge

{{ group.postName }}

@if (isUnopposed(group)) {
workspace_premium ELECTED
} @else {
S.No Candidate Name Votes Received
@for (candidate of group.candidates; track candidate.id; let idx = $index) {
#{{ candidate.serialNumber }}
@if (symbolCache[candidate.id]) { } @else { {{ candidate.candidateName?.charAt(0) }} }
{{ candidate.candidateName }}
}
}
}
@if (!countsSaved) { } @else if (!editMode) { } @else {
} @if (canDeclare) { @if (!countsSaved) { Please save vote counts first before declaring results. } }
} @if (results.length === 0 && !canEnterManualCounts) {
bar_chart

Results are not yet declared

Once the voting period closes and the results are declared by the CEO/Election Officer, the interactive charts and winners list will display here.

} @if (results.length > 0) {
event Election Date: {{ election?.electionDate | date: 'dd MMM yyyy' }}
@if (results[0]?.declaredDate) {
verified Declared on: {{ results[0].declaredDate | date: 'dd MMM yyyy, hh:mm a' }}
}
@for (group of groupByPost(); track group.postName) { @if (group.results.length > 1) {
badge

{{ group.postName }}

how_to_vote {{ totalVotes(group.results) | number }} votes cast
{{ totalVotes(group.results) | number }} Total Votes
@if (winnersOf(group.results).length === 1) {
emoji_events
WINNER ELECT

{{ winnersOf(group.results)[0].candidateName }}

{{ winnersOf(group.results)[0].voteCount | number }} votes {{ votePercent(winnersOf(group.results)[0].voteCount, group.results) }}% share
} @if (winnersOf(group.results).length > 1) {
diversity_3
{{ winnersOf(group.results).length }} Candidates Elected (Tie/Multiple)
@for (w of winnersOf(group.results); track w.id) { {{ w.candidateName }} }
}
@for (r of group.results; track r.id; let idx = $index) {
@if (r.result === 'WON') {
emoji_events
} @else {
{{ r.rankPosition }}
}
@if (symbolCache[r.candidateId]) { Symbol } @else {
{{ r.candidateName?.charAt(0) }}
}
{{ r.candidateName }} @if (r.result === 'WON') { Elected }
{{ r.voteCount | number }} {{ votePercent(r.voteCount, group.results) }}%
}
} @else {
badge

{{ group.postName }}

ELECTED UNOPPOSED
workspace_premium
@if (symbolCache[group.results[0].candidateId]) { } @else {
{{ group.results[0].candidateName?.charAt(0) }}
}
Winner Elect

{{ group.results[0].candidateName }}

Elected unopposed as the sole candidate for the position of {{ group.postName }}.

} }
} }