167 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			167 lines
		
	
	
		
			8.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * @package     Joomla.Administrator
 | |
|  * @subpackage  com_users
 | |
|  *
 | |
|  * @copyright   (C) 2010 Open Source Matters, Inc. <https://www.joomla.org>
 | |
|  * @license     GNU General Public License version 2 or later; see LICENSE.txt
 | |
|  */
 | |
| 
 | |
| defined('_JEXEC') or die;
 | |
| 
 | |
| use Joomla\CMS\HTML\HTMLHelper;
 | |
| use Joomla\CMS\Language\Text;
 | |
| use Joomla\CMS\Layout\LayoutHelper;
 | |
| use Joomla\CMS\Router\Route;
 | |
| 
 | |
| /** @var \Joomla\Component\Users\Administrator\View\Debuguser\HtmlView $this */
 | |
| 
 | |
| $listOrder = $this->escape($this->state->get('list.ordering'));
 | |
| $listDirn  = $this->escape($this->state->get('list.direction'));
 | |
| 
 | |
| $loginActions = [];
 | |
| $actions = [];
 | |
| 
 | |
| /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */
 | |
| $wa = $this->getDocument()->getWebAssetManager();
 | |
| $wa->useScript('table.columns');
 | |
| 
 | |
| ?>
 | |
| <form action="<?php echo Route::_('index.php?option=com_users&view=debuguser&user_id=' . (int) $this->state->get('user_id')); ?>" method="post" name="adminForm" id="adminForm">
 | |
|     <div id="j-main-container" class="j-main-container">
 | |
|         <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?>
 | |
|         <?php if (empty($this->items)) : ?>
 | |
|             <div class="alert alert-info">
 | |
|                 <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span>
 | |
|                 <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?>
 | |
|             </div>
 | |
|         <?php else : ?>
 | |
|             <?php
 | |
|             // Split the actions table
 | |
|             foreach ($this->actions as $action) :
 | |
|                 $name = $action[0];
 | |
|                 if (in_array($name, ['core.login.site', 'core.login.admin', 'core.login.api', 'core.login.offline'])) :
 | |
|                     $loginActions[] = $action;
 | |
|                 else :
 | |
|                     $actions[] = $action;
 | |
|                 endif;
 | |
|             endforeach;
 | |
|             ?>
 | |
|             <div class="d-flex flex-wrap">
 | |
|                 <?php foreach ($loginActions as $action) :
 | |
|                     $name  = $action[0];
 | |
|                     $check = $this->items[0]->checks[$name];
 | |
|                     if ($check === true) :
 | |
|                         $class  = 'text-success icon-check';
 | |
|                         $button = 'btn-success';
 | |
|                         $text   = Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW');
 | |
|                     elseif ($check === false) :
 | |
|                         $class  = 'text-danger icon-times';
 | |
|                         $button = 'btn-danger';
 | |
|                         $text   = Text::_('COM_USERS_DEBUG_EXPLICIT_DENY');
 | |
|                     elseif ($check === null) :
 | |
|                         $class  = 'text-danger icon-minus-circle';
 | |
|                         $button = 'btn-warning';
 | |
|                         $text   = Text::_('COM_USERS_DEBUG_IMPLICIT_DENY');
 | |
|                     endif;
 | |
|                     ?>
 | |
|                 <div class="d-inline p-2">
 | |
|                     <?php echo Text::_($action[1]); ?>
 | |
|                     <span class="<?php echo $class; ?>" aria-hidden="true"></span>
 | |
|                     <span class="visually-hidden"><?php echo Text::_($text); ?></span>
 | |
|                 </div>
 | |
|                 <?php endforeach; ?>
 | |
|             </div>
 | |
| 
 | |
|             <table class="table">
 | |
|                 <caption class="visually-hidden">
 | |
|                     <?php echo Text::_('COM_USERS_DEBUG_USER_TABLE_CAPTION'); ?>,
 | |
|                             <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>,
 | |
|                             <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span>
 | |
|                 </caption>
 | |
|                 <thead>
 | |
|                     <tr>
 | |
|                         <th scope="col">
 | |
|                             <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_TITLE', 'a.title', $listDirn, $listOrder); ?>
 | |
|                         </th>
 | |
|                         <th scope="col">
 | |
|                             <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_NAME', 'a.name', $listDirn, $listOrder); ?>
 | |
|                         </th>
 | |
|                         <?php foreach ($actions as $key => $action) : ?>
 | |
|                         <th scope="col" class="w-6 text-center">
 | |
|                             <?php echo Text::_($action[1]); ?>
 | |
|                         </th>
 | |
|                         <?php endforeach; ?>
 | |
|                         <th scope="col" class="w-6">
 | |
|                             <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_LFT', 'a.lft', $listDirn, $listOrder); ?>
 | |
|                         </th>
 | |
|                         <th scope="col" class="w-3">
 | |
|                             <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?>
 | |
|                         </th>
 | |
|                     </tr>
 | |
|                 </thead>
 | |
|                 <tbody>
 | |
|                     <?php foreach ($this->items as $i => $item) :?>
 | |
|                         <tr class="row0" scope="row">
 | |
|                             <td>
 | |
|                                 <?php echo $this->escape(Text::_($item->title)); ?>
 | |
|                             </td>
 | |
|                             <td>
 | |
|                                 <?php echo LayoutHelper::render('joomla.html.treeprefix', ['level' => $item->level + 1]) . $this->escape($item->name); ?>
 | |
|                             </td>
 | |
|                             <?php foreach ($actions as $action) : ?>
 | |
|                                 <?php
 | |
|                                 $name  = $action[0];
 | |
|                                 $check = $item->checks[$name];
 | |
|                                 if ($check === true) :
 | |
|                                     $class  = 'text-success icon-check';
 | |
|                                     $button = 'btn-success';
 | |
|                                     $text   = Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW');
 | |
|                                 elseif ($check === false) :
 | |
|                                     $class  = 'text-danger icon-times';
 | |
|                                     $button = 'btn-danger';
 | |
|                                     $text   = Text::_('COM_USERS_DEBUG_EXPLICIT_DENY');
 | |
|                                 elseif ($check === null) :
 | |
|                                     $class  = 'text-danger icon-minus-circle';
 | |
|                                     $button = 'btn-warning';
 | |
|                                     $text   = Text::_('COM_USERS_DEBUG_IMPLICIT_DENY');
 | |
|                                 else :
 | |
|                                     $class  = '';
 | |
|                                     $button = '';
 | |
|                                     $text   = '';
 | |
|                                 endif;
 | |
|                                 ?>
 | |
|                             <td class="text-center">
 | |
|                                 <span class="<?php echo $class; ?>" aria-hidden="true"></span>
 | |
|                                 <span class="visually-hidden"> <?php echo $text; ?></span>
 | |
|                             </td>
 | |
|                             <?php endforeach; ?>
 | |
|                             <td>
 | |
|                                 <?php echo (int) $item->lft; ?>
 | |
|                                 - <?php echo (int) $item->rgt; ?>
 | |
|                             </td>
 | |
|                             <td>
 | |
|                                 <?php echo (int) $item->id; ?>
 | |
|                             </td>
 | |
|                         </tr>
 | |
|                     <?php endforeach; ?>
 | |
|                 </tbody>
 | |
|             </table>
 | |
| 
 | |
|             <div class="legend">
 | |
|                 <span class="text-danger icon-minus-circle" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); ?> 
 | |
|                 <span class="text-success icon-check" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); ?> 
 | |
|                 <span class="text-danger icon-times" aria-hidden="true"> </span><?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); ?>
 | |
|             </div>
 | |
| 
 | |
|             <?php // load the pagination. ?>
 | |
|             <?php echo $this->pagination->getListFooter(); ?>
 | |
| 
 | |
|             <input type="hidden" name="task" value="">
 | |
|             <input type="hidden" name="boxchecked" value="0">
 | |
|             <?php echo HTMLHelper::_('form.token'); ?>
 | |
|         <?php endif; ?>
 | |
|     </div>
 | |
| </form>
 |