annotate .cms/js/rss.js @ 1:1d486627aa1e draft default tip

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