DmitrMakeev commited on
Commit
582317d
·
verified ·
1 Parent(s): 9e9e048

Update pages.html

Browse files
Files changed (1) hide show
  1. pages.html +4 -62
pages.html CHANGED
@@ -359,82 +359,23 @@ const editor = grapesjs.init({
359
  editor.Components.addType('menu-list-set', {
360
  model: {
361
  defaults: {
362
- content: '<div id="dropdown-settings"><ul id="menu-list"></ul></div>',
363
  script: function(props) {
 
 
364
  const loadScriptToBody = (src, callback) => {
365
  const script = document.createElement('script');
366
  script.src = src;
367
  script.onload = callback;
368
  document.body.appendChild(script);
369
  };
370
-
371
- // Проверка на наличие переданных данных
372
- if (!props.menu_list || !props.library) {
373
- console.error('menu_list or library is not provided');
374
- return;
375
- }
376
-
377
- // Загрузка библиотеки в зависимости от выбранной опции
378
  const library = props.library;
379
  let dropdownjsSrc;
380
-
381
  if (library === '1') {
382
  dropdownjsSrc = 'https://huggingface.co/spaces/DMTuit/psy_vk/resolve/main/js/menu_gen.js';
383
  loadScriptToBody(dropdownjsSrc, () => {
384
  console.log('DropdownJS script loaded!');
385
-
386
- // Проверяем, доступен ли объект меню и вызываем инициализацию
387
- if (window.menu_list && window.menu_list.menu) {
388
- initializeMenu(window.menu_list);
389
- } else {
390
- console.error('menu_list is not available or not in the correct format');
391
- }
392
- });
393
- } else {
394
- console.error('No valid library selected');
395
- }
396
-
397
- // Функция инициализации меню
398
- function initializeMenu(menu_list) {
399
- const menuElement = document.getElementById('menu-list');
400
- if (!menuElement) {
401
- console.error('Menu element not found');
402
- return;
403
- }
404
-
405
- menuElement.innerHTML = ''; // Очищаем текущий список
406
-
407
- menu_list.menu.forEach(item => {
408
- const li = document.createElement('li');
409
- li.innerHTML = `<button data-link="${item.link}">${item.title}</button>`;
410
- if (item.submenu) {
411
- li.classList.add('dropdown');
412
- const submenu = createSubmenu(item.submenu);
413
- li.appendChild(submenu);
414
- }
415
- menuElement.appendChild(li);
416
  });
417
-
418
- // Обработка кликов на кнопках
419
- document.querySelectorAll('button').forEach(button => {
420
- button.addEventListener('click', function() {
421
- const link = this.getAttribute('data-link');
422
- if (link) {
423
- window.location.href = link;
424
- }
425
- });
426
- });
427
-
428
- function createSubmenu(submenuItems) {
429
- const ul = document.createElement('ul');
430
- ul.classList.add('dropdown-content');
431
- submenuItems.forEach(subItem => {
432
- const li = document.createElement('li');
433
- li.innerHTML = `<button data-link="${subItem.link}">${subItem.title}</button>`;
434
- ul.appendChild(li);
435
- });
436
- return ul;
437
- }
438
  }
439
  },
440
  'script-props': ['menu_list', 'library'],
@@ -465,6 +406,7 @@ editor.Blocks.add('dropdown-settings-block', {
465
  label: 'Настройка выпадающего списка',
466
  content: { type: 'menu-list-set' },
467
  });
 
468
  </script>
469
 
470
 
 
359
  editor.Components.addType('menu-list-set', {
360
  model: {
361
  defaults: {
362
+ content: '<div id="dropdown-settings"></div>',
363
  script: function(props) {
364
+ window.menu_list = props.menu_list;
365
+ console.log('Dropdown settings initialized with menu_list:', window.menu_list);
366
  const loadScriptToBody = (src, callback) => {
367
  const script = document.createElement('script');
368
  script.src = src;
369
  script.onload = callback;
370
  document.body.appendChild(script);
371
  };
 
 
 
 
 
 
 
 
372
  const library = props.library;
373
  let dropdownjsSrc;
 
374
  if (library === '1') {
375
  dropdownjsSrc = 'https://huggingface.co/spaces/DMTuit/psy_vk/resolve/main/js/menu_gen.js';
376
  loadScriptToBody(dropdownjsSrc, () => {
377
  console.log('DropdownJS script loaded!');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
378
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
379
  }
380
  },
381
  'script-props': ['menu_list', 'library'],
 
406
  label: 'Настройка выпадающего списка',
407
  content: { type: 'menu-list-set' },
408
  });
409
+
410
  </script>
411
 
412