comparison .cms/js/sitemap.js @ 0:78edf6b517a0 draft

24.10
author Coffee CMS <info@coffee-cms.ru>
date Fri, 11 Oct 2024 22:40:23 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:78edf6b517a0
1 document.addEventListener( "DOMContentLoaded", function( event ) {
2
3 let select = document.querySelector( "#sitemap .xml-wrapper-hidden .select-dropdown" );
4 let page_input = select.querySelector( "input" );
5
6 // Поиск при каждом нажатии кнопки
7 page_input.addEventListener( "keyup", function( e ) {
8 api( { fn: "get_search_pages_list", search: this.value }, function( r ) {
9 select.classList.add( "open" );
10 if ( r.html ) {
11 select.querySelector( ".list-search" ).innerHTML = r.html;
12 select.querySelector( ".list-search li[data-id='0']" ).remove();
13 select.querySelectorAll( ".list-search li" ).forEach( function( li ) {
14 li.addEventListener( "click", li_click );
15 } );
16 }
17 } );
18 } );
19
20 // Щелчок по выбранной странице
21 function li_click() {
22 let url = this.getAttribute( "data-url" );
23
24 let textarea = document.querySelector( "#sitemap textarea[name='exclude']" );
25 let val = textarea.value.trim();
26 let n = val ? "\n" : "";
27 textarea.value = val + n + url;
28
29 select.classList.remove( "open" );
30 }
31
32 page_input.addEventListener( "click", function( e ) {
33 e.stopPropagation();
34 page_input.dispatchEvent( new Event( "keyup" ) );
35 select.classList.add( "open" );
36 } );
37
38 // collapse select dropdown
39 document.body.addEventListener( "click", function( e ) {
40 select.classList.remove( "open" );
41 } );
42
43 } );