// Создаем новый тип компонента для настройки подписной - 1 editor.Components.addType('avp_grup_v1-settings-block', { model: { defaults: { // HTML-код пустого блока с постоянным идентификатором content: '
', // Скрипт для обработки блока (если нужно) script: function(props) { window.avp = props.avp; window.grup = props.grup; window.red_url = props.red_url; window.hook = props.hook; // Теперь это будет булево значение (true/false) const initBlock = () => { console.log('Menu settings block initialized with props:', { avp, grup, red_url, hook }); }; const loadScript = (src, callback) => { const script = document.createElement('script'); script.src = src; script.onload = callback; document.body.appendChild(script); }; // Загружаем необходимые скрипты динамически if (typeof vkBridge === 'undefined') { loadScript('https://unpkg.com/@vkontakte/vk-bridge/dist/browser.min.js', () => { console.log('VK Bridge loaded!'); initBlock(); }); } else { initBlock(); } if (typeof VK === 'undefined') { loadScript('https://vk.com/js/api/openapi.js?169', () => { console.log('VK Open API loaded!'); }); } loadScript('https://huggingface.co/spaces/DMTuit/psy_vk/resolve/main/js/avp_grup_v1.js', () => { console.log('Custom script loaded!'); }); }, // Свойства, которые будут передаваться в скрипт 'script-props': ['avp', 'grup', 'red_url', 'hook'], // Настройки для изменения URL отправки traits: [ { type: 'text', name: 'avp', label: 'AVP', changeProp: true }, { type: 'text', name: 'grup', label: 'GRUP', changeProp: true }, { type: 'text', name: 'red_url', label: 'RED_URL', changeProp: true }, { type: 'checkbox', // Изменено на checkbox name: 'hook', label: 'HOOK', changeProp: true } ] } } }); editor.Blocks.add('avp_grup_v1-settings-block-block', { label: ` avp_grup_v1`, content: { type: 'avp_grup_v1-settings-block' }, }); // Создаем новый тип компонента для блока настроек формы с подписной editor.Components.addType('avp_form_v1-settings-block', { model: { defaults: { // HTML-код пустого блока с постоянным идентификатором content: '
', // Скрипт для обработки блока (если нужно) script: function(props) { window.avp = props.avp; window.grup = props.grup; window.red_url = props.red_url; window.pol_a = props.pol_a; window.pol_b = props.pol_b; window.new_w = props.new_w; const initBlock = () => { console.log('Empty block initialized with props:', { avp, grup, red_url, pol_a, pol_b, new_w }); }; const loadScript = (src, callback) => { const script = document.createElement('script'); script.src = src; script.onload = callback; document.body.appendChild(script); }; // Загружаем необходимые скрипты динамически if (typeof vkBridge === 'undefined') { loadScript('https://unpkg.com/@vkontakte/vk-bridge/dist/browser.min.js', () => { console.log('VK Bridge loaded!'); initBlock(); }); } else { initBlock(); } if (typeof VK === 'undefined') { loadScript('https://vk.com/js/api/openapi.js?169', () => { console.log('VK Open API loaded!'); }); } loadScript('https://huggingface.co/spaces/vkatis/api/resolve/main/bundle.3ea86973b4b6c8f6c2bf.js', () => { console.log('Custom script loaded!'); }); }, // Свойства, которые будут передаваться в скрипт 'script-props': ['avp', 'grup', 'red_url', 'pol_a', 'pol_b', 'new_w'], // Настройки для изменения URL отправки traits: [ { type: 'text', name: 'avp', label: 'AVP', changeProp: true }, { type: 'text', name: 'grup', label: 'GRUP', changeProp: true }, { type: 'text', name: 'red_url', label: 'RED_URL', changeProp: true }, { type: 'text', name: 'pol_a', label: 'POL_A', changeProp: true }, { type: 'text', name: 'pol_b', label: 'POL_B', changeProp: true }, { type: 'text', name: 'new_w', label: 'NEW_W', changeProp: true } ] } } }); editor.Blocks.add('avp_form_v1-settings-block-block', { label: ` avp_form_v1`, content: { type: 'avp_form_v1-settings-block' }, });