var current_page = 1; var records_per_page = ads_per_page; var ads_type = ""; var objJson = []; let totalAdvs = 0 function prevPage() { if (current_page > 1) { current_page--; getMyAdvs(ads_type) } } function nextPage(event) { if (current_page < numPages()) { current_page++; getMyAdvs(ads_type) } } function changePage(page) { var btn_next = $("#btn_next"); var btn_prev = $("#btn_prev"); var listing_table = $("#nav-" + ads_type); var page_span = $("#page"); // Validate page if (page < 1) page = 1; if (page > numPages()) page = numPages(); listing_table.html(""); if (objJson.length === 0) { listing_table.html(` `); } for (var i = 0; i < objJson.length; i++) { listing_table.append(addAdsRow(objJson[i].id, objJson[i].detail_url, objJson[i].cover_photo, objJson[i].name, objJson[i].formatted_price, objJson[i].city_name, objJson[i].country_name, objJson[i].cat1_name, objJson[i].cat2_name, objJson[i].status)); } addDropdownBlock() page_span.html(page + "/" + numPages()); if (numPages() === 1) { page_span.hide(); } else { page_span.show(); } if (page === 1) { btn_prev.hide(); } else { btn_prev.show(); } if (page === numPages()) { btn_next.hide(); } else { btn_next.show(); } } function numPages() { return Math.ceil(totalAdvs / records_per_page); } function crud(params, url, type, callback) { $.ajax({ type: type, data: params, url: url, success: function (response) { callback(response); }, }); } function getMyAdvs(type) { crud({'type': type, 'paginate': true, 'page': current_page}, '/ajax/getAdvs', 'GET', function (callback) { ads_type = type; objJson = callback.content.data; totalAdvs = callback.content.total changePage(current_page); }) } $('.profile-advs-tab a').on('click', function () { current_page = 1 getMyAdvs($(this).attr('data-type')) }); const urlString = window.location.href; const url = new URL(urlString); let type = url.searchParams.get("type"); type = type ? type : 'approved'; getMyAdvs(type); function addAdsRow(id, href, image, name, formatted_price, city, country, cat1, cat2, status) { return "
\n" + "
\n" + "
\n" + "" + name + "\n" + "
\n" + "
\n" + "
\n" + "\n" + "
\n" + dropdownRow(id, status) + "
\n" + "
\n" + "" + cat1 + ", " + cat2 + "\n" + "
\n" + "
\n" + "
\n" + "
\n" + "
\n" + "
\n" + "" + formatted_price + "\n" + "
\n" + "
\n" + "" + city + " " + country + "\n" + "
\n
\n
\n
\n\n
"; } function dropdownRow(id, type) { var dropdown = ""; return dropdown; } const dropdownBlock = getBlock('profile/dropdown-ad', {'id': ':id'}) function addDropdownBlock () { const dropdowns = $('.my-ads-dropdown') for (let i = 0; i < dropdowns.length; i++) { const currentDropdown = $(dropdowns[i]) $('.dropdown-menu', currentDropdown).append(dropdownBlock.replace(':id', currentDropdown.data('id'))) } }