Close Menu
    Facebook X (Twitter) Instagram
    • Home
    • Contact Us
    • About Us
    • Privacy Policy
    • Terms Of Service
    • Advertisement
    Tuesday, July 21
    Facebook X (Twitter) Instagram Pinterest Vimeo
    ABS Africa TV
    • Breaking News
    • Trending
    • Africa News
    • World News
    • Features
    • Technology
    • More
      • Sports
      • Politics
      • Culture
      • Lifestyle
      • Travel
      • Business
      • Environment
      • Legal
      • Health
      • Cameroon
      • Ambazonia
      • AfroSingles
      • Environ/Climate
      • Editorial
      • The Leak Magazine
    • Donate
    Subscription
    ABS Africa TV
    Home»Breaking News»Tunisia scorched by record-breaking heat wave, temperatures near 50 degrees Celsius
    Breaking News

    Tunisia scorched by record-breaking heat wave, temperatures near 50 degrees Celsius

    Nouman mBy Nouman mJuly 19, 2026No Comments8 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Share
    Facebook Twitter LinkedIn Pinterest Email
    Post Views: 12

    Listen to article

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

    UN calls for accountability over migrant torture and trafficking at Tunisia-Libya border

    Bashir Mbuthia

     · 

    2 days agoRead nextOpens a fresh page.

    The National Institute of Meteorology has placed 10 provinces under an orange alert, indicating high weather risk, with the rest under a yellow alert.

    An exceptionally intense heat wave swept across Tunisia, pushing temperatures to nearly 50 degrees Celsius and breaking historical records in multiple regions, local media reported on Saturday.
    Citing data from Anis Sattouri, an engineer at Tunisia’s National Institute of Meteorology, private radio station Mosaique FM reported that Friday marked the peak of the heat wave, with temperatures far above seasonal norms.
    The central governorate of Kairouan recorded 49.7 degrees Celsius, surpassing its previous record of 49.2 degrees. In the northeastern governorate of Zaghouan, the temperature hit 48.6 degrees, topping its prior high of 48 degrees.

    More To Read

    • UN calls for accountability over migrant torture and trafficking at Tunisia-Libya border
    • MPs, Senators urge accelerated climate action and clean energy investment
    • The world has the science to transform food systems: The next frontier is scaling it
    • A Super El Niño is coming: Five hard‑won lessons the world can learn from Africa
    • Slum residents urged to adopt ‘localised solutions’ to mitigate climate change effects
    • How the cocoa price crash is crushing West African farmers

    The National Institute of Meteorology has placed 10 provinces under an orange alert, indicating high weather risk, with the rest under a yellow alert.
    Meteorological and health authorities urge residents to take precautions, including limiting unnecessary travel during the hottest hours of the day, avoiding prolonged sun exposure, and staying well hydrated.

    Latest Stories

    • Ol Kalou violence: Amnesty Kenya wants CS Murkomen to account for police failure during polls
    • Kenya Airways cancels New York to Nairobi flight over severe weather
    • Lamu Leaders, residents back Sh2.2 trillion Dangote-linked oil refinery, demand local inclusion
    • England rewrite history as Saka hat-trick and Mbappé milestones headline unforgettable World Cup bronze thriller

    Other Topics To Read

    Top Stories Today

    • Ol Kalou violence: Amnesty Kenya wants CS Murkomen to account for police failure during polls
    • Kenya Airways cancels New York to Nairobi flight over severe weather
    • KRA gives owners 30 days to collect goods at Kisumu and Isebania customs warehouses or risk auction
    • Lamu Leaders, residents back Sh2.2 trillion Dangote-linked oil refinery, demand local inclusion
    • Kenya among fastest deteriorating food insecurity hotspots as 4.1 million face hunger
    • Tunisia scorched by record-breaking heat wave, temperatures near 50 degrees Celsius

    `;
    }

    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

    Kenyans withdraw billions from Boma Yangu despite growth in housing savings

    Kenyans withdraw billions from Boma Yangu despite growth in housing savingsNews
    |Lucy Mumbi
    |4 hours ago
    Kenya among fastest deteriorating food insecurity hotspots as 4.1 million face hungerNews
    |Lucy Mumbi
    |4 hours ago

    Katiba Institute, Muite demand answers over alleged quarantine of seven Americans at Laikipia Air Base

    Katiba Institute, Muite demand answers over alleged quarantine of seven Americans at Laikipia Air BaseNews
    |Rachael Mutabasi
    |1 day ago

    65 State agency boards retired as government moves to bring in professionals

    65 State agency boards retired as government moves to bring in professionalsNews
    |Lucy Mumbi
    |5 hours ago
    Tunisia scorched by record-breaking heat wave, temperatures near 50 degrees CelsiusAfrica
    |XINHUA
    |1 hour ago

    Hunger deepens for displaced families in Sudan’s El Obeid

    Hunger deepens for displaced families in Sudan’s El ObeidSudan
    |UN News
    |7 hours ago

    Kenya revives residency-by-investment plan to attract more global capital

    Kenya revives residency-by-investment plan to attract more global capitalBusiness
    |Alfred Onyango
    |21 hours ago

    Kenya secures Sh43.5 billion AfDB loan for economic inclusion and climate resilience

    Kenya secures Sh43.5 billion AfDB loan for economic inclusion and climate resilienceBusiness
    |Alfred Onyango
    |1 day ago

    Mildred Cheche eyes U‑17 World Cup knockout stage, urges grassroots investment

    Mildred Cheche eyes U‑17 World Cup knockout stage, urges grassroots investmentNews
    |Erick Kariuki
    |1 day ago

    Lamu Leaders, residents back Sh2.2 trillion Dangote-linked oil refinery, demand local inclusion

    Lamu Leaders, residents back Sh2.2 trillion Dangote-linked oil refinery, demand local inclusionCoast
    |Farhiya Hussein
    |1 hour ago

    heat recordbreaking scorched Tunisia wave
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Nouman m
    • Website

    Related Posts

    SA secures R25bn World Bank loan to fund key infrastructure reforms

    July 21, 2026

    Rio Tinto Receives Wontanara, CSSC Claims This Ship Breaks Three Records

    July 21, 2026

    Civil Servants Reject Salary Review, Threaten Nationwide Strike

    July 21, 2026
    Leave A Reply Cancel Reply

    Search
    Latest Post

    Brazil Surges Ahead of Belgium, Switzerland, France and Other Global Leading Markets as South Africa Tourism Records Thirty Seven Point Five Percent Visitor Growth Between April 2025 and April Twenty Twenty Six, Boosting Global Travel Demand and International Tourism Growth

    July 21, 2026

    World Aquaculture Tanzania 2026 names keynote speaker

    July 21, 2026

    Man of his word: Pope Leo speeches declared human

    July 21, 2026

    Curative CEO says company ditched a $600k-a-year Salesforce contract after vibecoding a CRM in 2 months

    July 21, 2026

    Uganda safeguards essential health services during Ebola outbreak response

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

    Brazil Surges Ahead of Belgium, Switzerland, France and Other Global Leading Markets as South Africa Tourism Records Thirty Seven Point Five Percent Visitor Growth Between April 2025 and April Twenty Twenty Six, Boosting Global Travel Demand and International Tourism Growth

    World Aquaculture Tanzania 2026 names keynote speaker

    Man of his word: Pope Leo speeches declared human

    Most Popular

    Curative CEO says company ditched a $600k-a-year Salesforce contract after vibecoding a CRM in 2 months

    Uganda safeguards essential health services during Ebola outbreak response

    Iran, US accuse each other of hitting civilian infrastructure. Is it legal under international law?

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