Breaking News
18 min read
AFPMBAI Seeks Bidders for Janitorial Services Contract
Manila Bulletin
January 19, 2026•3 days ago

AI-Generated SummaryAuto-generated
The Armed Forces and Police Mutual Benefit Association, Inc. (AFPMBAI) is seeking bids for janitorial services. Their Bids and Awards Committee (BAC) on Services has invited prospective bidders to apply for eligibility and participate in the bidding process for these services.
By MB Business
At A Glance
The Armed Forces and Police Mutual Benefit Association, Inc. (AFPMBAI), through its Bids and Awards Committee (BAC) on Services, invites all prospective bidders to apply for the eligibility and subsequently bid for the Engagement of Janitorial Services for AFPMBAI.
The Armed Forces and Police Mutual Benefit Association, Inc. (AFPMBAI), through its Bids and Awards Committee (BAC) on Services, invites all prospective bidders to apply for the eligibility and subsequently bid for the Engagement of Janitorial Services for AFPMBAI.
A copy of the official announcement to be published in the broadsheet can be seen below.
Related Tags
.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
{{ item.title }}
{{ item.subtitle }}
At A Glance
{{ line }}
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { console.log('scroll event'); if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then((data) => { console.log(data); console.log(this); loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); }); // Mutation Observer for Newly Loaded Articles const observer = new MutationObserver(() => { console.log("length: ", articles.length); const articles = document.querySelectorAll(".articles-observe"); if (articles.length > 0) { observeArticles(articles); } }); observer.observe(document.body, { childList: true, subtree: true }); let oberservationCount = 0; // Intersection Observer for Updating URL function observeArticles(articles) { const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl && newUrl !== window.location.pathname) { history.pushState(null, null, newUrl); // Extract metadata const section = entry.target.querySelector('.section-info a:first-of-type')?.textContent?.trim() || ''; const author = entry.target.querySelector('.author-section a')?.textContent?.trim() || ''; const title = entry.target.querySelector('h1, h2, h3, .article-title')?.textContent?.trim() || document.title; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { pSUPERFLY.virtualPage(cleanUrl, { title: title, sections: section, authors: author }); } // Optional: Update document title if (title && title !== document.title) { document.title = title; } console.log('Chartbeat virtual page tracked:', { url: cleanUrl, section: section, author: author, title: title }); } } }); }, { threshold: 0.1 } ); articles.forEach(article => { console.log(oberservationCount++); intersectionObserver.observe(article) }); }
Rate this article
Login to rate this article
Comments
Please login to comment
No comments yet. Be the first to comment!
