Close Menu
    Facebook X (Twitter) Instagram
    • Home
    • Contact Us
    • About Us
    • Privacy Policy
    • Terms Of Service
    • Advertisement
    Wednesday, August 19
    Facebook X (Twitter) Instagram Pinterest Vimeo
    ABS Africa TV
    • Breaking News
    • Trending
    • Africa News
    • World News
    • Features
    • Technology
    • Sports
    • Politics
    • More
      • Culture
      • Lifestyle
      • Travel
      • Business
      • Environment
      • Legal
      • Health
      • Cameroon
      • Ambazonia
      • AfroSingles
      • Environ/Climate
      • Editorial
      • The Leak Magazine
    • Donate
    Subscription
    ABS Africa TV
    Home»Sports»Elachi pushes for tougher match-fixing laws ahead of 2027 AFCON
    Sports

    Elachi pushes for tougher match-fixing laws ahead of 2027 AFCON

    Johnson BenguruBy Johnson BenguruJuly 29, 2026No Comments7 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Elachi pushes for tougher match-fixing laws ahead of 2027 AFCON
    Share
    Facebook Twitter LinkedIn Pinterest Email

    Listen to article

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

    Thanks for listening. Continue with a related story, or tap the speaker icon on the next page to listen.

    Gachagua urges Judiciary to consider MPs Junet, Jalang’o bribery claims in impeachment case

    Rachael Mutabasi

     · 

    12 minutes agoRead nextOpens a fresh page.

    Elachi wants tougher match-fixing laws, including lifetime bans, while calling for stricter betting oversight and better protection for athletes ahead of the 2027 AFCON.

    Dagoretti North MP Beatrice Elachi has urged Parliament to fast-track tougher laws against match-fixing ahead of the 2027 AFCON tournament, calling for lifetime bans, suspensions and hefty fines for offenders.
    Speaking in Parliament, Elachi also called for better education for athletes, stricter regulation of betting companies and an independent body to investigate match-fixing and protect the integrity of sports and young athletes’ careers.

    Latest Stories

    • Gachagua urges Judiciary to consider MPs Junet, Jalang’o bribery claims in impeachment case
    • Scientists identify new dinosaur species in Zimbabwe
    • Uganda opposition leader Kizza Besigye collapses during heated court protest over legal representation
    • El Niño-linked extreme weather deepens Tigray crisis as hailstorm kills child, displaces more than 10,000 people

    Other Topics To Read

    • Elachi pushes for tougher match-fixing laws ahead of 2027 AFCON

    Top Stories Today

    • Gachagua urges Judiciary to consider MPs Junet, Jalang’o bribery claims in impeachment case
    • Uganda opposition leader Besigye collapses in court during treason trial
    • Renowned psychologist Dr Victoria Mutiso shot dead in Nairobi
    • Senators Sifuna, Osotsi removed from key Senate oversight committees amid ODM rifts
    • AfDB downgrades Kenya’s growth prospects to 4.6 per cent in 2026 on global headwinds
    • WHO introduces shorter, safer treatment for deadly kala-azar disease

    `;
    }

    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

    Renowned psychologist Dr Victoria Mutiso shot dead in NairobiNews
    |Mary Wambui
    |1 hour ago
    Russia issues arrest warrant for Telegram founder Pavel Durov over alleged terrorismNews
    |Margaret Wanjiru
    |7 hours ago

    EACC arrests three over alleged Sh4.8 million Igembe North NG-CDF fraud

    EACC arrests three over alleged Sh4.8 million Igembe North NG-CDF fraudNews
    |Lucy Mumbi
    |8 hours ago
    MPs set to review procurement Bill afresh as Ruto declines assent over investment concernsNews
    |Lucy Mumbi
    |8 hours ago
    KWS launches probe after 15 elephants die in Amboseli ecosystemNews
    |XINHUA
    |8 hours ago

    <img src="https://publish.eastleighvoice.co.ke/mugera_lock/uploads/2024/08/Screenshot-2024-08-16-170240.png" alt="AfCFTA nears full African adoption as 49 out of 54 states ratify trade pact” loading=”lazy”>

    AfCFTA nears full African adoption as 49 out of 54 states ratify trade pactBusiness
    |Alfred Onyango
    |6 hours ago

    Treasury to submit monthly IFMIS reports to senators to strengthen county finance oversight

    Treasury to submit monthly IFMIS reports to senators to strengthen county finance oversightNews
    |Lucy Mumbi
    |5 hours ago

    High Court declares shisha ban unconstitutional, stops enforcement of 2017 rules

    High Court declares shisha ban unconstitutional, stops enforcement of 2017 rulesNews
    |Carolyne Kubwa
    |1 day ago
    AFC Leopards sign Eric Namaan Balecho from Bandari on two-year dealSports
    |Bashir Mbuthia
    |21 hours ago

    High Court dismisses bid to halt 2027 General Election preparations pending constitutional review

    High Court dismisses bid to halt 2027 General Election preparations pending constitutional reviewNews
    |Carolyne Kubwa
    |22 hours ago

    Post Views: 216

    Elachi Laws matchfixing pushes tougher
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Johnson Benguru
    • Website

    Related Posts

    World Cup winner Patrick Vieira appointed Senegal coach in return to country of his birth

    August 19, 2026

    Which countries have qualified

    August 18, 2026

    Africa’s World Cup breakthrough: What ten teams reveal about institutional capacity

    August 17, 2026
    Leave A Reply Cancel Reply

    Search
    Latest Post

    South Africa launches ETA to attract more international tourists

    August 19, 2026

    Carbon pollution has fuelled ‘massive expansion’ of marine heatwaves in Europe, study finds

    August 19, 2026

    Reliance & Rolls-Royce Pitch Engine Deal for India’s AMCA

    August 19, 2026

    West African countries pledge stronger response to epidemics

    August 19, 2026

    Chidimma Adetshina immigration case: Court postpone judgement on weda Chidimma Adetshina fit remain for South Africa

    August 19, 2026

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • TikTok
    ABS TV and ABS Network News is a leading Pan-African 24/7 broadcasting network delivering nonstop news, talk shows, lifestyle programs, and digital media content worldwide through Satellite, Streaming Platforms, and Roku TV.
     
    Based in the United States, we connect Africa to the world while empowering creators, journalists, and brands through innovative media and broadcasting services.
    Facebook X (Twitter) Pinterest WhatsApp Instagram

    Our Picks

    Travel

    South Africa launches ETA to attract more international tourists

    Carbon pollution has fuelled ‘massive expansion’ of marine heatwaves in Europe, study finds

    Africa News

    Reliance & Rolls-Royce Pitch Engine Deal for India’s AMCA

    Most Popular

    Features

    West African countries pledge stronger response to epidemics

    Trending

    Chidimma Adetshina immigration case: Court postpone judgement on weda Chidimma Adetshina fit remain for South Africa

    Breaking News

    Helicopter Reportedly Crashes Close To Mt.Ololokwe In Samburu

    © 2026 Copyright. All Rights Reserved by ABSAFRICATV
    • Privacy Policy
    • Terms of Services

    Type above and press Enter to search. Press Esc to cancel.

    We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.