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»Breaking News»Why gov’t should put breaks on livestock vaccination plan – Veterinary doctors
    Breaking News

    Why gov’t should put breaks on livestock vaccination plan – Veterinary doctors

    Nouman mBy Nouman mJuly 6, 2026No Comments10 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Share
    Facebook Twitter LinkedIn Pinterest Email
    Post Views: 7

    Why gov’t should put breaks on livestock vaccination plan – Veterinary doctors

    Why gov’t should put breaks on livestock vaccination plan – Veterinary doctors

    A livestock restocking event in Samburu County. (Photo: File/Issa Hussein)

    Read this story aloud

    Listen to the clean text version of this article

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

    The government plans to vaccinate approximately 22 million cattle and 50 million goats, sheep, and small livestock next year as part of its nationwide livestock vaccination campaign

    The Kenya Veterinary Association (KVA) has urged the government to suspend its planned nationwide vaccination of 22 million cattle, which is set to begin in January next year.
    The association has sharply criticised the programme, arguing that it was developed without consulting key stakeholders.
    In a statement issued on Tuesday, KVA National Chairman Kelvin Osore expressed concerns over the lack of public involvement in the initiative. He said that despite the government’s focus on controlling greenhouse gas emissions, the priority should instead be to allow time for public sensitisation.
    “There was no stakeholders’ engagement. We were only involved after the programme received controversy from the public. We were not involved in the conception and along the way. The government just rushed to us recently,” Osore said.
    The association also raised concerns about the government’s failure to adequately inform the public, which has led to widespread resistance and misinformation among livestock keepers and the general public.
    Osore warned that this lack of communication could hinder effective disease control and potentially lead to further outbreaks.

    Latest Stories

    • DCI arrests man accused of conning job seekers Sh8.6 million in fake KDF, NPS and PSC recruitment scam
    • Wajir begins construction of Baitulmaal Level 4 Hospital to expand access to healthcare
    • The world has the science to transform food systems: The next frontier is scaling it
    • Nigeria demands probe after two citizens killed in South Africa amid rising xenophobia concerns

    “The government’s failure to conduct adequate public sensitisation has fueled widespread resistance and misinformation among livestock keepers and the general public. This situation not only hampers disease control but also risks creating further outbreaks,” Osore added.
    “Stakeholders, including farmers, veterinary professionals, and community leaders, were not sufficiently involved in planning, leading to mistrust and confusion, including in professional circles.”
    KVA has also called on the government to avoid using forceful language to try to secure public support for the vaccination. The association insists that many crucial questions remain unanswered, including which diseases the programme aims to target, its duration, and the identities of its sponsors.
    “There’s a lot of misinformation about the programme. We as the veterinary association have tried to get more information from the government – so far, nothing. We don’t know how long it will run,” Osore said.
    The KVA further argues that some of the diseases that the government has identified as targets for vaccination are localised, suggesting that a national campaign may not be justified. Osore pointed out that diseases such as foot-and-mouth disease occur in specific regions and should be dealt with accordingly.
    “A vaccination should be tailored for specific regions. You can’t vaccinate for foot and mouth across the whole country; there are specific areas. Let them vaccinate specific areas. These diseases are not widespread across the country,” he added.
    “On greenhouse emissions, as an association, we cannot prove those allegations on curbing emissions.”
    Despite their concerns, the KVA reiterated its support for efforts to control livestock diseases such as Foot-and-Mouth Disease (FMD) and Peste des Petits Ruminants (PPR) through targeted and strategic vaccination campaigns.
    The association is now calling for the suspension of the programme and for the government to focus on other urgent issues facing the livestock sector before investing billions of shillings in the vaccination initiative.
    “It’s a pity that even a professional organisation like ours doesn’t know what is happening. The government needs to stop lecturing people; the cow belongs to the people,” Osore said.
    The government plans to vaccinate approximately 22 million cattle and 50 million goats, sheep, and small livestock next year as part of its nationwide livestock vaccination campaign.

    Other Topics To Read

    • Vaccinations
    • livestock vaccination
    • Kenya Veterinary Association

    Top Stories Today

    • Man arrested over Sh8.6 million fake KDF, police jobs scam
    • Saba Saba organisers notify police of peaceful march to Parliament
    • Wajir expands healthcare with new Baitulmaal Level 4 Hospital project
    • Why scaling innovation is the missing link in global food security
    • Abuja warns of diplomatic fallout after killing of Nigerians in South Africa
    • Kenya’s Stephen Yiembe lands historic UEFA Super Cup officiating role

    `;
    }

    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

    Wajir begins construction of Baitulmaal Level 4 Hospital to expand access to healthcare
    Wajir begins construction of Baitulmaal Level 4 Hospital to expand access to healthcareNorthern Kenya
    |Abdirahman Khalif
    |6 hours ago
    The world has the science to transform food systems: The next frontier is scaling it
    The world has the science to transform food systems: The next frontier is scaling itClimate Change
    |The Conversation
    |6 hours ago
    Government announces final repatriation flight for Kenyans in South Africa
    Government announces final repatriation flight for Kenyans in South AfricaNews
    |Rachael Mutabasi
    |1 day ago
    Government releases Sh4 billion to settle NHIF hospital claims
    Government releases Sh4 billion to settle NHIF hospital claimsHealth
    |Lucy Mumbi
    |14 hours ago
    Somali Embassy hosts Kenya leaders, diplomats for 66th Independence Day celebrations
    Somali Embassy hosts Kenya leaders, diplomats for 66th Independence Day celebrationsSomalia
    |Abdirahman Khalif
    |16 hours ago
    Zamzam fires warning over ODM nomination as Mombasa succession politics intensify
    Zamzam fires warning over ODM nomination as Mombasa succession politics intensifyPolitics
    |Farhiya Hussein
    |7 hours ago
    UN reviews impact as US ends support for AUSSOM logistics
    UN reviews impact as US ends support for AUSSOM logisticsSomalia
    |Abdirahman Khalif
    |16 hours ago
    Cherotich, Odira shine as Kenya dominates Prefontaine Classic despite rare Kipyegon defeat
    Cherotich, Odira shine as Kenya dominates Prefontaine Classic despite rare Kipyegon defeatSports
    |Erick Kariuki
    |21 hours ago
    Slum residents urged to adopt 'localised solutions' to mitigate climate change effects
    Slum residents urged to adopt ‘localised solutions’ to mitigate climate change effectsNews
    |Hussein Hassan
    |1 day ago
    IGAD pushes regional action to tackle plastic pollution
    IGAD pushes regional action to tackle plastic pollutionNews
    |Rachael Mutabasi
    |1 day ago

    breaks Govt livestock should vaccination
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Nouman m
    • Website

    Related Posts

    2026 FIFA World Cup: Norway shocks Brazil to reach quarterfinals

    July 6, 2026

    Europe’s livestock sector faces heatwave reckoning after millions of chickens die

    July 6, 2026

    Agriculture leads Africa in investor exits as private capital activity shifts in Q1 2026

    July 6, 2026
    Leave A Reply Cancel Reply

    Search
    Latest Post

    Pope urges Europe to protect migrants in visit to Island Frontier

    July 6, 2026

    South African Court Allows Private Rhino Horn Exports

    July 6, 2026

    I left Google and spent a year traveling. 6 months on a Thai island led me to a career I never expected.

    July 6, 2026

    Ruto calls for production of affordable fertiliser in Africa

    July 6, 2026

    Legal experts in Lanka oppose changing judges retirement age

    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

    Pope urges Europe to protect migrants in visit to Island Frontier

    South African Court Allows Private Rhino Horn Exports

    I left Google and spent a year traveling. 6 months on a Thai island led me to a career I never expected.

    Most Popular

    Ruto calls for production of affordable fertiliser in Africa

    Legal experts in Lanka oppose changing judges retirement age

    Woman jailed five years for sexually exploiting four girls

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