Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Сортировка элементов в таблице

Камрады, кто знает можно ли таблице типа \IPS\Helpers\Table\Db сделать пользовательскую сортировку элементов на подобие нодов?

Рекомендованные сообщения

Теоритически можно.

Если не особо принципиально, как будет сделано, то я бы добавил кнопку для сортировки + метод с формой, где использовал \IPS\Helpers\Form\Sort

  • Автор

С таблицой наверное только так. Либо Table заменить на \IPS\Helpers\Tree\Tree

  • Автор

Сделал два варианта - с Table и Tree, посмотрим какой больше зайдет.

$tree = new \IPS\Helpers\Tree\Tree(
	$url,
	\IPS\Member::loggedIn()->language()->addToStack( 'menu__smsverification_gateways_manage' ),
	/* Get Roots */
	function() use ( $url )
	{
		$rows = array();
		
		foreach( \IPS\Db::i()->select( '*', 'smsverification_gateways', null, 'position ASC' ) as $row )
		{
			$url = $url->setQueryString( [ 'id' => $row['id'] ] );
		
			$rows[ $row['id'] ] = \IPS\Theme::i()->getTemplate( 'trees', 'core' )->row( $url, $row['id'], \IPS\Member::loggedIn()->language()->addToStack( 'smsgateway_'.$row['gateway'] ), FALSE, 
				array(
					'edit'	=> array(
						'icon'		=> 'pencil',
						'title'		=> 'edit',
						'link'		=> $url->setQueryString( array( 'do' => 'edit' ) ),
						'data' 		=> array( 
							'ipDialog' => '',
							'ipsDialog-title' => \IPS\Member::loggedIn()->language()->addToStack('edit') 
						),
					),
					'delete'	=> array(
						'icon'		=> 'times-circle',
						'title'		=> 'delete',
						'link'		=> $url->setQueryString( array( 'do' => 'delete' ) ),
						'data'		=> array( 'delete' => '' )
					),
				), null, null, $row['position'], NULL, TRUE );
		}
		
		return $rows;
	},
	/* Get Row */
	function( )
	{
		
	},
	/* Get Row's Parent ID */
	function()
	{
		return NULL;
	},
	/* Get Children */
	function( $key )
	{
		return NULL;
	},
	/* Get Root Buttons */
	function() 
	{
		return array(
			'add'	=> array(
				'icon'		=> 'plus',
				'title'		=> 'smsverify_new_gateway',
				'link'		=> \IPS\Http\Url::internal( "app=smsverification&module=gateways&controller=manage&do=add" ),
				'data'		=> array( 
					'ipsDialog' => '',
					'ipsDialog-title' => \IPS\Member::loggedIn()->language()->addToStack('smsverify_new_gateway_title') 
				)
			),
		);
	},
	FALSE,
	TRUE,
	TRUE
);

 

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.