Close Menu
    Facebook X (Twitter) Instagram
    • Home
    • Contact Us
    • About Us
    • Privacy Policy
    • Terms Of Service
    • Advertisement
    Monday, July 6
    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»Politics»Government declares Friday public holiday to mark Eid-ul-Fitr
    Politics

    Government declares Friday public holiday to mark Eid-ul-Fitr

    Chukwu GodloveBy Chukwu GodloveJuly 4, 2026No Comments8 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Government declares Friday public holiday to mark Eid-ul-Fitr
    Share
    Facebook Twitter LinkedIn Pinterest Email
    Post Views: 24

    Government declares Friday public holiday to mark Eid-ul-Fitr

    Government declares Friday public holiday to mark Eid-ul-Fitr

    The government has declared Friday, March 20, 2026, a nationwide public holiday to mark Eid-ul-Fitr. (Photo: File/Ahmed Shafat)

    Read this story aloud

    Listen to the clean text version of this article

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

    Kenya has declared Friday, March 20, 2026, a public holiday to mark Eid-ul-Fitr, with major markets in Mombasa and Nairobi reporting a surge in festive shopping activity

    The government has declared Friday, March 20, 2026, a nationwide public holiday to mark Eid-ul-Fitr.
    The announcement was made through a Kenya Gazette notice dated March 18, 2026.
    “It is notified for the general information of the public that, in exercise of the powers conferred by section 2(1) of the Public Holidays Act, the Cabinet Secretary for Interior and National Administration declares that Friday, the 20th March, 2026, shall be a Public Holiday to mark Eid-ul-Fitr,” reads the notice issued by Interior Cabinet Secretary Kipchumba Murkomen.

    More To Read

    • How to choose coffee beans: A complete beginner’s guide
    • 𝐄𝐚𝐬𝐭𝐥𝐞𝐢𝐠𝐡 𝐕𝐨𝐢𝐜𝐞 𝐚𝐭 𝐍𝐢𝐧𝐞 – Meru miraa farmers push back against new licensing law, demand review
    • Eastleigh business community resolves to promote unity, protect business growth
    • 5 must‑try Yemeni dishes in Nairobi this weekend and where to find them
    • Low customer turnout at Eastleigh businesses as demos in Nairobi keep shoppers away
    • Protests anniversary:The day Gen Z took to the streets and changed Kenya’s politics

    Eid-ul-Fitr is a significant three-day Islamic festival that marks the end of Ramadan.
    The celebration is typically observed with special prayers, wearing new clothes, acts of charity through Zakat al-Fitr, and shared meals with family.
    It is recognised as a public holiday in many regions, including Kenya.

    Latest Stories

    • Somalia intelligence agency kills Al-Shabaab mortar unit leader in Basra operation
    • Junior Starlets edge closer to FIFA U-17 Women’s World Cup after beating South Africa
    • Court declares Ruaraka School land public, rules Sh1.5 billion payout illegal
    • Mozambique President Daniel Chapo hails Rwanda’s security role in Cabo Delgado

    In Mombasa, major markets such as Kongowea and Mackinnon, popularly known as Marikiti, are experiencing a surge in activity.
    Traders have expanded their displays onto adjacent streets, offering clothing, shoes, and household goods, while shopping complexes are reporting unusually long queues.
    A similar trend is evident in Nairobi, particularly in Eastleigh.
    This surge reflects a broader global pattern of increased retail activity leading up to Eid, with demand rising for religious attire and gifts.
    Retailers are intensifying promotions, offering exclusive deals and discounts, while small traders are using social media platforms like TikTok to market limited-time offers directly to customers, further driving the festive shopping rush.

    Other Topics To Read

    Top Stories Today

    • Study finds intermittent fasting helps maintain weight loss for at least a year
    • Somalia intelligence agency kills Al-Shabaab mortar unit leader in Basra operation
    • Court declares Ruaraka School land public, rules Sh1.5 billion payout illegal
    • Sudan’s people subject to ‘relentless’ drone strikes in El Obeid
    • Pope Leo XIV shines spotlight on Mediterranean migration crisis
    • Busia school named among global finalists for 2026 education prize

    `;
    }

    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

    What the World Cup hydration breaks reveal about who governs men’s football
    What the World Cup hydration breaks reveal about who governs men’s footballSports
    |The Conversation
    |5 hours ago
    Messi is old, short and slow: How is he still dominating at the World Cup?
    Messi is old, short and slow: How is he still dominating at the World Cup?Sports
    |The Conversation
    |9 hours ago
    Government announces final repatriation flight for Kenyans in South Africa
    Government announces final repatriation flight for Kenyans in South AfricaNews
    |Rachael Mutabasi
    |12 hours ago
    Mozambique President Daniel Chapo hails Rwanda's security role in Cabo Delgado
    Mozambique President Daniel Chapo hails Rwanda’s security role in Cabo DelgadoRwanda
    |The New Times
    |1 hour ago
    What Kenya's record Sh1.82 trillion forex reserves mean for the economy
    What Kenya’s record Sh1.82 trillion forex reserves mean for the economyBusiness
    |Alfred Onyango
    |9 hours ago

    Somalia intelligence agency kills Al-Shabaab mortar unit leader in Basra operationSomalia
    |Bashir Mbuthia
    |10 minutes ago
    Cape Verde vows to provide stern test for Argentina in round of 32
    Cape Verde vows to provide stern test for Argentina in round of 32Sports
    |XINHUA
    |1 day ago
    Sudanese army intensify offensive to retake strategic city of Kurmuk on Ethiopia borderRegional
    |Addis Standard
    |6 hours ago
    Messi makes history as Argentina survive Cape Verde's unforgettable World Cup fight
    Messi makes history as Argentina survive Cape Verde’s unforgettable World Cup fightNews
    |Erick Kariuki
    |13 hours ago
    Iran begins six-day funeral for late Supreme Leader Ali Khamenei
    Iran begins six-day funeral for late Supreme Leader Ali KhameneiWorld
    |DW News
    |11 hours ago

    Declares FRIDAY Government Holiday Public
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Chukwu Godlove

    Related Posts

    Algerian President hails elections despite low turnout

    July 6, 2026

    Gallant Cadres urge politicians to uphold integrity and end ‘dirty politics’ perception

    July 6, 2026

    Shoday- Holiday

    July 5, 2026
    Leave A Reply Cancel Reply

    Search
    Latest Post

    Street photography, Gen Z dances turn Nairobi’s streets into a tourist attraction

    July 6, 2026

    CS Duale demands $1.3 trillion climate fund for Africa at COP29

    July 6, 2026

    China’s Chery takes over former Nissan car factory in South Africa | Business World Philippines – newspaper

    July 6, 2026

    Dis-Chem Pharmacies navigates growth and strategy. Investors weigh South African healthcare trends

    July 6, 2026

    Nigeria condemns killing of two citizens in South Africa, warns of international action

    July 6, 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

    Street photography, Gen Z dances turn Nairobi’s streets into a tourist attraction

    CS Duale demands $1.3 trillion climate fund for Africa at COP29

    China’s Chery takes over former Nissan car factory in South Africa | Business World Philippines – newspaper

    Most Popular

    Dis-Chem Pharmacies navigates growth and strategy. Investors weigh South African healthcare trends

    Nigeria condemns killing of two citizens in South Africa, warns of international action

    “He’s still in SA?”: Ndoyisile Sibindi’s Durban July attendance sparks questions

    © 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.