Stakeholders from East Africa to convene in Kenya for trade talks

Stakeholders from East Africa to convene in Kenya for trade talks

Delegates at a past BNI convention (Photo: BNI)

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.

In the past 12 months alone, BNI members globally exchanged 14.6 million referrals, generating $22.1 billion (Sh2.8 trillion) in business

More than 500 delegates from Kenya, Uganda, and Tanzania will convene in Naivasha next month, August 16, for an annual conference to deliberate on East Africa’s trade

The conference, hosted by Business Networking International (BNI), seeks to bring together leaders, entrepreneurs, and professionals to exchange insights and forge meaningful connections aimed at accelerating business growth in the region

It further aims to strengthen inter-country trade by fostering strategic business networking among delegates from the three states

More To Read

  • Kenya to benefit from Sh1.2 billion AfDB financial integration grant
  • Africa’s wealth map rewritten as East and West overtake traditional power centres
  • EAC bets on trade, monetary union and peace in new $110.8 million budget
  • Uganda under fire for blocking Martha Karua as rights group warns of cross-border repression
  • Uganda military chief Muhoozi claims responsibility for Martha Karua’s deportation and travel ban
  • Former CJ Maraga condemns Martha Karua’s detention and deportation in Uganda, calls it rule of law violation

BNI is the world’s largest business networking and referral organisation, providing a positive, supportive, and structured environment for professionals to further their business through word-of-mouth marketing

According to BNI National Director Elizaphan Muraguri, the BNI convention provides an invaluable setting where industry leaders can collaborate, share industry trends, and explore new avenues for growth

“Networking is a powerful tool for increasing inter-country trade. By connecting business professionals from different countries, we create opportunities for collaboration and mutual growth that transcend borders,” Muraguri said

Latest Stories

  • Three arrested after Linda Mwananchi convoy attacked in Kisii as police hunt for more suspects
  • Mbappé fires France past Paraguay into World Cup quarter-finals
  • Cherotich, Odira shine as Kenya dominates Prefontaine Classic despite rare Kipyegon defeat
  • Kenya reaffirms ties with Rwanda as it marks Liberation Day celebrations

Muraguri further emphasised the broader impact of networking on business success, saying that effective networking not only drives sales and market expansion but also fosters innovation and problem-solving through diverse perspectives

The convention will feature a diverse lineup of keynote speakers renowned for their expertise in business development and networking strategies


Elizaphan Muraguri, BNI National Director. (Photo: BNI)

Elizaphan Muraguri, BNI National Director. (Photo: BNI)

“This convention is more than an event; it’s a catalyst for driving economic success through collaboration and shared knowledge. We encourage all stakeholders passionate about leveraging networking for business advancement to join us at this transformative event,” Muraguri added

BNI East Africa operates within a global framework that spans 76 countries with 327,000 members in 11,172 chapters

Its members meet in local chapters every week to discuss their businesses, share success stories, and exchange qualified business referrals

This consistent structure and global reach allow members to connect with a vast network of professionals, facilitating business growth across borders and industries

In the past 12 months alone, BNI members globally exchanged 14.6 million referrals, generating $22.1 billion (Sh2.8 trillion) in business

In Kenya, BNI has been active for 14 years, boasting 537 members in 15 chapters

Last year, Kenyan members passed over 30,000 referrals, resulting in over $14 million (Sh1.8 billion) worth of business

Uganda’s BNI network, comprising 358 members in 8 chapters, has passed over $12 million (Sh1.5 billion) in a similar period

Other Topics To Read

Top Stories Today

  • Three arrested after Linda Mwananchi convoy attacked in Kisii as police hunt for more suspects
  • 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
  • Weekly new Ebola cases reach highest level since outbreak began: WHO
  • Kenya reaffirms ties with Rwanda as it marks Liberation Day celebrations

`;
}

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


Three arrested after Linda Mwananchi convoy attacked in Kisii as police hunt for more suspectsNews
|Lucy Mumbi
|34 minutes ago

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

Portugal edge Croatia in dramatic finish to book last-16 spotSports
|The New Times
|2 days ago

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

Somalia intelligence agency kills Al-Shabaab mortar unit leader in Basra operationSomalia
|Bashir Mbuthia
|11 hours ago
SHA seeks Treasury funds to clear NHIF claims above Sh10 millionHealth
|Charity Kilei
|15 hours ago
Kenya reaffirms ties with Rwanda as it marks Liberation Day celebrationsRegional
|Bashir Mbuthia
|9 hours ago
IGAD pushes regional action to tackle plastic pollutionNews
|Rachael Mutabasi
|20 hours ago

Egypt end 92-year wait to reach World Cup last 16News
|Erick Kariuki
|1 day ago

Ethiopia coffee exports hit record Sh388 billion on rising global demandRegional
|Bashir Mbuthia
|1 day ago

Share.
Leave A Reply

Exit mobile version