Senegal coach devastated by emotional scenes after AFCON exit

Senegal coach devastated by emotional scenes after AFCON exit

Senegal coach Cisse Aliou © CAF Online

Read this story aloud

Listen to the clean text version of this article

Ready
3 min listen
Audio reading is not supported on this browser.

Senegal’s hopes of retaining their Africa Cup of Nations crown were dashed in a dramatic penalty shootout defeat against Cote d’Ivoire, leaving coach Aliou Cisse grappling with the challenge of rebuilding his shattered team

Senegal’s national football team suffered a heartbreaking exit from the Africa Cup of Nations last 16 stage, succumbing to a shock penalty shootout defeat against Cote d’Ivoire.
Aliou Cisse, the head coach, couldn’t hide his disappointment as he consoled his devastated players in the locker room following the dramatic 5-4 loss on penalties after a 1-1 draw in extra time.
“We came here to retain the title and play for our people,” lamented Cisse, expressing his disappointment at falling short of their championship aspirations. The coach revealed the emotional toll of witnessing his players in tears, describing the match as “strange and complicated” despite Senegal’s dominance for much of the game.
Senegal had maintained a lead until the 86th minute when Franck Kessie converted a penalty to level the scores. Reflecting on the outcome, Cisse acknowledged his team’s failure to manage the game effectively in crucial moments, ultimately leading to their demise in the penalty shootout.
“We lost on penalties; we kept our lead until the last 5 minutes. I am disappointed after this defeat, especially after our performance and from the first match,” said Cisse, highlighting the missed opportunity to capitalize on their strong start to the tournament.

Senegal’s coach, Aliou Cissé, has this morning been named the coach of the group stage at #AFCON2023 for winning 3 out of 3 games 👏🏾👏🏾

Latest Stories

  • Quiet revolution behind foldable smartphones and why they’re making a comeback
  • Invisible peacebuilders: How ‘diplomacy works’ to prevent conflict
  • Government extends security operation in Marsabit, declares multiple areas dangerous for 30 more days
  • Three arrested after Linda Mwananchi convoy attacked in Kisii as police hunt for more suspects

— JJ. Omojuwa (@Omojuwa) January 30, 2024
With Senegal’s trophy defense abruptly ended, Cisse acknowledged the need for changes within the team as they embark on a journey of rebuilding. “We need to make changes after this defeat; we’ll see what happens in the future. There is sorrow, and our players are sad, as is the Senegalese people,” admitted Cisse, recognizing the collective disappointment felt by fans back home.
Despite the bitter disappointment, Cisse found solace in Senegal’s undefeated group stage campaign. “We prepared well and let’s not forget we have 3 wins in 3 matches,” he added, reflecting on the team’s achievements leading up to their untimely exit from the tournament.
As Senegal comes to terms with their elimination, Cisse emphasized the importance of resilience and determination in bouncing back stronger from adversity.

Other Topics To Read

  • Aliou Cisse
  • AFCON 2024
  • AFCON 2023

Top Stories Today

  • Three arrested after Linda Mwananchi convoy attacked in Kisii as police hunt for more suspects
  • Invisible peacebuilders: How ‘diplomacy works’ to prevent conflict
  • Quiet revolution behind foldable smartphones and why they’re making a comeback
  • State extends security operation in Marsabit, declares multiple areas dangerous for 30 more days
  • Mbappé fires France past Paraguay into World Cup quarter-finals
  • Cherotich, Odira shine as Kenya dominates Prefontaine Classic despite rare Kipyegon defeat

`;
}

return “;
}

function commentActionsMarkup(comment, canComment) {
const likeLabel = comment.liked_by_me ? ‘Liked’ : ‘Like’;
const likeCount = Number(comment.like_count || 0) > 0
? “
: ”;

const likeButton = canComment && comment.status === ‘approved’
? “
: “;

const replyButton = canComment && comment.status === ‘approved’
? “
: ”;

return `

`;
}

function commentMarkup(comment, canComment, isReply = false) {
const pendingBadge = comment.status && comment.status !== ‘approved’
? “
: ”;

const edited = comment.is_edited
? “
: ”;

const repliesHtml = Array.isArray(comment.replies) && comment.replies.length
? `

`
: “;

return `

`;
}

function replyFormMarkup(commentId) {
return `

`;
}

function setNotice(widget, message, type = ‘info’) {
const notice = widget.querySelector(‘[data-role=”notice”]’);
if (!notice) return;

if (!message) {
notice.hidden = true;
notice.textContent = ”;
notice.classList.remove(‘is-error’);
return;
}

notice.hidden = false;
notice.textContent = message;
notice.classList.toggle(‘is-error’, type === ‘error’);
}

function setCount(widget, total) {
const count = widget.querySelector(‘[data-role=”count”]’);
if (!count) return;

const num = Number(total || 0);
count.textContent = num === 1 ? ‘1 comment’ : `${num} comments`;
}

function openReplyBox(widget, commentId) {
widget.querySelectorAll(‘[data-role=”reply-box”]’).forEach(box => {
box.hidden = true;
box.innerHTML = ”;
});

const targetItem = widget.querySelector(`.ev-comments__item[data-comment-id=”${commentId}”]`);
if (!targetItem) return;

const replyBox = targetItem.querySelector(‘[data-role=”reply-box”]’);
if (!replyBox) return;

replyBox.hidden = false;
replyBox.innerHTML = replyFormMarkup(commentId);

const textarea = replyBox.querySelector(‘textarea’);
if (textarea) textarea.focus();
}

function closeReplyBox(container) {
if (!container) return;
container.hidden = true;
container.innerHTML = ”;
}

async function initCommentsWidget(widget) {
const state = {
articleId: Number(widget.dataset.articleId),
loadUrl: widget.dataset.loadUrl,
storeUrl: widget.dataset.storeUrl,
commentsBaseUrl: widget.dataset.commentsBaseUrl,
canComment: widget.dataset.canComment === ‘1’,
page: 1,
perPage: 10,
sort: ‘newest’,
total: 0,
hasMore: false,
busy: false
};

const list = widget.querySelector(‘[data-role=”list”]’);
const loading = widget.querySelector(‘[data-role=”loading”]’);
const empty = widget.querySelector(‘[data-role=”empty”]’);
const loadMoreBtn = widget.querySelector(‘[data-role=”load-more”]’);
const sortSelect = widget.querySelector(‘[data-role=”sort”]’);
const composerForm = widget.querySelector(‘[data-role=”composer-form”]’);

async function loadComments(reset = true) {
if (state.busy) return;

state.busy = true;
setNotice(widget, ”);
loading.hidden = false;

if (reset) {
state.page = 1;
list.innerHTML = ”;
empty.hidden = true;
}

try {
const url = new URL(state.loadUrl, window.location.origin);
url.searchParams.set(‘page’, state.page);
url.searchParams.set(‘per_page’, state.perPage);
url.searchParams.set(‘sort’, state.sort);

const response = await requestJson(url.toString(), {
method: ‘GET’,
headers: {
‘Accept’: ‘application/json’,
‘X-Requested-With’: ‘XMLHttpRequest’
}
});

const items = Array.isArray(response.data) ? response.data : [];
const meta = response.meta || {};

state.total = Number(meta.total || 0);
state.hasMore = !!meta.has_more;

setCount(widget, state.total);

if (reset) {
list.innerHTML = ”;
}

if (!items.length && reset) {
empty.hidden = false;
} else {
empty.hidden = true;
list.insertAdjacentHTML(
‘beforeend’,
items.map(item => commentMarkup(item, state.canComment, false)).join(”)
);
}

loadMoreBtn.hidden = !state.hasMore;
} catch (error) {
if (!list.children.length) {
empty.hidden = false;
empty.textContent = ‘Unable to load comments right now.’;
}
setNotice(widget, error.message || ‘Unable to load comments.’, ‘error’);
} finally {
loading.hidden = true;
state.busy = false;
}
}

async function submitTopLevelComment(form) {
const textarea = form.querySelector(‘textarea[name=”content”]’);
const button = form.querySelector(‘[data-role=”submit-comment”]’);

if (!textarea) return;

const content = textarea.value.trim();
if (!content) return;

const originalText = button ? button.textContent : ”;

try {
if (button) {
button.disabled = true;
button.textContent = ‘Posting…’;
}

const response = await requestJson(state.storeUrl, {
method: ‘POST’,
headers: buildJsonHeaders(),
body: JSON.stringify({
article_id: state.articleId,
content: content,
source_url: window.location.href
})
});

textarea.value = ”;

if (response?.data) {
list.insertAdjacentHTML(
‘afterbegin’,
commentMarkup(response.data, state.canComment, false)
);
empty.hidden = true;

if ((response.data.status || ”) === ‘approved’) {
state.total += 1;
setCount(widget, state.total);
}
}

setNotice(widget, response.message || ‘Comment posted successfully.’);
} catch (error) {
setNotice(widget, error.message || ‘Unable to post comment.’, ‘error’);
} finally {
if (button) {
button.disabled = false;
button.textContent = originalText || ‘Post comment’;
}
}
}

async function submitReply(form) {
const commentId = Number(form.dataset.commentId || 0);
const textarea = form.querySelector(‘textarea[name=”content”]’);
const button = form.querySelector(‘.ev-comments__reply-submit’);

if (!commentId || !textarea) return;

const content = textarea.value.trim();
if (!content) return;

const originalText = button ? button.textContent : ”;

try {
if (button) {
button.disabled = true;
button.textContent = ‘Posting…’;
}

const response = await requestJson(`${state.commentsBaseUrl}/${commentId}/reply`, {
method: ‘POST’,
headers: buildJsonHeaders(),
body: JSON.stringify({
article_id: state.articleId,
content: content,
source_url: window.location.href
})
});

if (response?.data) {
const parentItem = widget.querySelector(`.ev-comments__item[data-comment-id=”${commentId}”]`);
if (parentItem) {
const repliesWrap = parentItem.querySelector(‘.ev-comments__replies’);
if (repliesWrap) {
repliesWrap.insertAdjacentHTML(
‘beforeend’,
commentMarkup(response.data, state.canComment, true)
);
}
}
}

closeReplyBox(form.closest(‘[data-role=”reply-box”]’));
setNotice(widget, response.message || ‘Reply posted successfully.’);
} catch (error) {
setNotice(widget, error.message || ‘Unable to post reply.’, ‘error’);
} finally {
if (button) {
button.disabled = false;
button.textContent = originalText || ‘Post reply’;
}
}
}

async function toggleLike(button) {
const commentId = Number(button.dataset.commentId || 0);
if (!commentId) return;

const originalHtml = button.innerHTML;

try {
button.disabled = true;
button.innerHTML = ‘Working…’;

const response = await requestJson(`${state.commentsBaseUrl}/${commentId}/like`, {
method: ‘POST’,
headers: buildJsonHeaders(),
body: JSON.stringify({})
});

const liked = !!response?.data?.liked;
const likeCount = Number(response?.data?.like_count || 0);

button.classList.toggle(‘is-liked’, liked);
button.innerHTML = `${liked ? ‘Liked’ : ‘Like’} ${likeCount > 0 ? “ : ”}`;
} catch (error) {
button.innerHTML = originalHtml;
setNotice(widget, error.message || ‘Unable to update like.’, ‘error’);
} finally {
button.disabled = false;
}
}

if (composerForm) {
composerForm.addEventListener(‘submit’, function (e) {
e.preventDefault();
submitTopLevelComment(composerForm);
});
}

if (sortSelect) {
sortSelect.addEventListener(‘change’, function () {
state.sort = this.value || ‘newest’;
loadComments(true);
});
}

if (loadMoreBtn) {
loadMoreBtn.addEventListener(‘click’, function () {
if (state.busy || !state.hasMore) return;
state.page += 1;
loadComments(false);
});
}

widget.addEventListener(‘click’, function (e) {
const likeBtn = e.target.closest(‘[data-action=”toggle-like”]’);
if (likeBtn) {
e.preventDefault();
toggleLike(likeBtn);
return;
}

const replyBtn = e.target.closest(‘[data-action=”toggle-reply”]’);
if (replyBtn) {
e.preventDefault();
openReplyBox(widget, Number(replyBtn.dataset.commentId || 0));
return;
}

const cancelReplyBtn = e.target.closest(‘[data-action=”cancel-reply”]’);
if (cancelReplyBtn) {
e.preventDefault();
closeReplyBox(cancelReplyBtn.closest(‘[data-role=”reply-box”]’));
}
});

widget.addEventListener(‘submit’, function (e) {
const replyForm = e.target.closest(‘.ev-comments__reply-form’);
if (replyForm) {
e.preventDefault();
submitReply(replyForm);
}
});

loadComments(true);
}

document.addEventListener(‘DOMContentLoaded’, function () {
document.querySelectorAll(‘.ev-comments’).forEach(initCommentsWidget);
});
})();

Trending


Invisible peacebuilders: How ‘diplomacy works’ to prevent conflictWorld
|UN News
|40 minutes ago

Morocco continue historic rise with record-breaking World Cup victory against CanadaSports
|Erick Kariuki
|10 hours ago

Mbappé fires France past Paraguay into World Cup quarter-finalsSports
|Erick Kariuki
|2 hours ago

UK, France agree with Oman on multinational military mission to secure Strait of HormuzNews
|Mary Wambui
|21 hours ago

Sudan’s people subject to ‘relentless’ drone strikes in El ObeidSudan
|UN News
|14 hours ago

UN Rights Chief Volker Türk issues ‘Red Alert’ over escalating violence in Sudan’s El ObeidNews
|Mary Wambui
|1 day ago

SHA seeks Treasury funds to clear NHIF claims above Sh10 millionHealth
|Charity Kilei
|16 hours ago

Renewable energy boom cuts global fossil fuel bill by Sh62 trillion in 2025Business
|Alfred Onyango
|1 day ago

Cherotich, Odira shine as Kenya dominates Prefontaine Classic despite rare Kipyegon defeatSports
|Erick Kariuki
|2 hours ago

16 CITAM Woodley pupils stable after bee attack during Lake Baringo tourNews
|Rachael Mutabasi
|22 hours ago

Share.
Leave A Reply

Exit mobile version