Title Link
Delhi Traffic Police Newsletter January 2025 Link
Delhi Traffic Police Newsletter February 2025 Link
Delhi Traffic Police Newsletter March 2025 Link
Delhi Traffic Police Newsletter April 2025 Link
Delhi Traffic Police Newsletter May 2025 Link
Delhi Traffic Police Newsletter June 2025 Link
Delhi Traffic Police Newsletter July 2025 Link
Delhi Traffic Police Newsletter August 2025 Link
Delhi Traffic Police Newsletter September 2025 Link
Delhi Traffic Police Newsletter October 2025 Link
Delhi Traffic Police Newsletter November 2025 Link
______________________________________________ /* ================================================================================================ Traffic news-letter ================================================================================================= */ .traffic-newsletter .nav-tabs .nav-link { border: 2px solid #1f3c88; color: #1f3c88; font-weight: 600; border-radius: 10px 10px 0 0; margin-right: 5px; } .traffic-newsletter.nav-tabs .nav-link.active { background-color: #1f3c88; color: #fff; } .traffic-newsletter .notification-box { border: 2px solid #1f3c88; border-radius: 10px; padding: 20px; margin-top: -1px; } .traffic-newsletter .search-input { margin-bottom: 20px; } .traffic-newsletter table thead th { background-color: #000080 !important; color: #fff !important; text-align: center; vertical-align: middle; font-weight: 800; font-size: 18px; } .traffic-newsletter table tbody td { vertical-align: middle; font-weight: 600; font-size: 18px; } .traffic-newsletter table tbody tr:nth-child(even) { background-color: #f5f5f5; } .traffic-newsletter .view-link { color: #0d6efd; font-weight: 600; text-decoration: none; } .traffic-newsletter .view-link:hover { text-decoration: underline; } #prevBtn, #nextBtn { padding: 10px 20px; margin: 5px; font-size: 14px; font-weight: 500; border: 1px solid #2563eb; background-color: #2563eb; color: #fff; border-radius: 6px; cursor: pointer; transition: all 0.3s ease; } /* Hover effect */ #prevBtn:hover, #nextBtn:hover { background-color: #1e40af; border-color: #1e40af; } #prevBtn:disabled, #nextBtn:disabled { background-color: #c7d2fe; border-color: #c7d2fe; cursor: not-allowed; } /* Container center alignment (optional) */ .pagination { display: flex; justify-content: center; margin-top: 15px; } ____________________________________________ /************** News Letter previous and next ****************************************/ (function ($, Drupal ,once) { Drupal.behaviors.newsletterPagination = { attach: function (context, settings) { const rowsPerPage = 8; const $tableBody = $('#news-letter-table-body', context); const $rows = $tableBody.find('tr'); const $prevBtn = $('#prevBtn', context); const $nextBtn = $('#nextBtn', context); if (!$tableBody.length || !$rows.length) { return; } let currentPage = 1; function showPage(page) { const start = (page - 1) * rowsPerPage; const end = start + rowsPerPage; $rows.each(function (index) { $(this).toggle(index >= start && index < end); }); updateButtons(); } function updateButtons() { // Previous button $prevBtn.toggle(currentPage !== 1); // Next button $nextBtn.toggle(currentPage * rowsPerPage < $rows.length); } // Prevent multiple bindings $prevBtn.on('click', function () { if (currentPage > 1) { currentPage--; showPage(currentPage); } }); $nextBtn.on('click', function () { if (currentPage * rowsPerPage < $rows.length) { currentPage++; showPage(currentPage); } }); showPage(currentPage); } }; })(jQuery, Drupal ,once);