Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка Invision Community, релизы, темы, плагины и приложения

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Не выдает форму, плагин.

Featured Replies

Posted

Приветствую. Встретился с проблемой. Искал решение этой проблемы, но спустя 3х дней попыток ничего не нашел. Что ж, начнем...
Я сделал отображение кнопки, с помощью которой должна открываться форма.
При нажатии на кнопку происходит ошибка That page does not exist
В плагине следующее строение и код:

Что выполнено неправильно, что пропущено? Жду ответа, буду благодарен каждому решению проблемы.
(версия IPS 4.5.4)

 

1 час назад, SlawkA сказал:

Nahimovets привет.

мне интересно, а на скрине где я пометил это обязательно?

  Показать контент

4343.thumb.png.39ce887bf0bf8194c0e0cb2e1dc1a1ca.png

и нет в коде закрывающего тега внизу. я всего лишь предполагаю.

https://invisioncommunity.com/developers/docs/development/plugins/code-hooks-r42/

  • Author
В 16.06.2021 в 11:37, Desti сказал:

А куда код делся из первого сообщения? :)

 

Удалили из-за нарушения правил. Я опубликовал скрины через хостинг картинок. 

В 15.06.2021 в 21:38, Nahimovets сказал:

Приветствую. Встретился с проблемой. Искал решение этой проблемы, но спустя 3х дней попыток ничего не нашел. Что ж, начнем...
Я сделал отображение кнопки, с помощью которой должна открываться форма.
При нажатии на кнопку происходит ошибка That page does not exist
В плагине следующее строение и код:

Что выполнено неправильно, что пропущено? Жду ответа, буду благодарен каждому решению проблемы.
(версия IPS 4.5.4)

 

xJfxDWc.thumb.png.5e138e83be8b1d9daf70697e93b52855.pnggp7e6XN.png.078ac72b9f939d0d6cd585c4dca16836.pngfVDmMBg.thumb.png.fc83c60b7e123d046981ac528e322e32.pngcWehVGK.thumb.png.fba9ce898c53e362a9d33b27109ecb84.png

Метод нужно добавлять в контролер а не в класс. Добавьте его в \IPS\core\modules\front\members\profile.

И как указываете ссылку на форму эту?

1. хук на \IPS\Theme\class_core_front_profile, добавляем (#elEditProfile, insert after) кнопку, но не напрямую через <li>...</li>, а через шаблон {template='myProfileButton'  group="plugins" location="global" app="core" params='$members'} 
2. создаем темплейт myProfileButton.phtml с кнопкой в dev/html (копируем из edit-profile, например, меняем seoTemplate='profile_testform' и do='testform')
3. создаем code-хук на \IPS\Http\Url\Friendly (фурлу по другому не создать в плагине)

static public function furlDefinition( $revert=false )
	{
		  $furls = parent::furlDefinition( $revert );
	      
	      if( !isset( $furls['profile_testform'] ) )
			{
				$furls['profile_testform'] = array(
					'friendly'  => 'profile/{#id}/testform',
					'real'      => 'app=core&module=members&controller=profile&do=testform',
	                'params'   	=> array(),
	                'regex' 	=> array(),
				);
			}
			return $furls;
	}

4. создаем хук на \IPS\core\modules\front\members\profile - новую функцию, которую мы передаем в do= на п.2 

public function testform() {
            $form = new \IPS\Helpers\Form;
            $form->add( new \IPS\Helpers\Form\Text(’name’));
            \IPS\Output::i()->output = $form;
    }

Радуемся окошку с формой при нажатии на кнопку. Ну или ищем ошибку :)

Edited by Desti

  • Author

myProfileButton.phtml:
 

<a href='{url="app=core&module=members&controller=profile&do=testform" base="front" seoTemplate="profile_testform" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_overlaid' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='Bla'>
  <i class='fa fa-pencil'></i>&nbsp;
  <span class='ipsResponsive_hidePhone ipsResponsive_inline'>&nbsp;&nbsp;Ble</span> 
</a>

Добавление кнопки через шаблон
unknown.png.fbadb519146d2afdf68d40409b72cf7a.png

furl

unknown.png.3ecd59fe7292b086b18fa66abd0af4e4.png

 

Хук

unknown.thumb.png.3fa1f4d46944c0fc14ef89bcc10152f9.png

 

И ошибка при заходе в профиль

unknown.png.6dba6e59e8d0bc7e664f770f14891e5d.png

7 минут назад, Nahimovets сказал:

Добавление кнопки через шаблон

а вот тут у тебя $members переменная, она есть в том шаблоне, куда хук вставляет код? 

Я в своём вижу только в единственном числе $member

  • Author
5 минут назад, accop сказал:

а вот тут у тебя $members переменная, она есть в том шаблоне, куда хук вставляет код? 

Я в своём вижу только в единственном числе $member

Новая ошибка
unknown.png.c5109e783860cd586b9c40d153178d77.png
unknown.thumb.png.4c008bcb3fda5706b9086aa8b9e7d419.png

У файла phtml должен быть хидер, типа <ips:template parameters="$data" />

Если его нет, будет такая ошибка.

<ips:template parameters="$member" />
<a href='{url="app=core&module=members&controller=profile&do=testform" base="front" seoTemplate="profile_testform" seoTitle="$member->members_seo_name"}' class='ipsButton ipsButton_overlaid' data-ipsDialog data-ipsDialog-modal='true' data-ipsDialog-title='Bla'>
  <i class='fa fa-pencil'></i>&nbsp;
  <span class='ipsResponsive_hidePhone ipsResponsive_inline'>&nbsp;&nbsp;Ble</span> 
</a>

 

  • Author

Без dev мода профиль открылся без ошибки, но кнопка не появилась, при этом других ошибок нет.

11 минут назад, Desti сказал:

Из dev режима надо выходить при проверке.

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.