79 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| /**
 | |
|  * @package     Joomla.Site
 | |
|  * @subpackage  com_users
 | |
|  *
 | |
|  * @copyright   (C) 2022 Open Source Matters, Inc. <https://www.joomla.org>
 | |
|  * @license     GNU General Public License version 2 or later; see LICENSE.txt
 | |
|  */
 | |
| 
 | |
| // Prevent direct access
 | |
| defined('_JEXEC') or die;
 | |
| 
 | |
| use Joomla\CMS\Language\Text;
 | |
| use Joomla\CMS\Router\Route;
 | |
| use Joomla\CMS\Uri\Uri;
 | |
| use Joomla\Component\Users\Site\View\Captive\HtmlView;
 | |
| 
 | |
| /** @var HtmlView $this */
 | |
| 
 | |
| $shownMethods = [];
 | |
| 
 | |
| ?>
 | |
| <div id="com-users-select">
 | |
|     <h2 id="com-users-select-heading">
 | |
|         <?php echo Text::_('COM_USERS_MFA_SELECT_PAGE_HEAD'); ?>
 | |
|     </h2>
 | |
|     <div id="com-users-select-information">
 | |
|         <p>
 | |
|             <?php echo Text::_('COM_USERS_LBL_SELECT_INSTRUCTIONS'); ?>
 | |
|         </p>
 | |
|     </div>
 | |
| 
 | |
|     <div class="com-users-select-methods p-2">
 | |
|         <?php foreach ($this->records as $record) :
 | |
|             if (!array_key_exists($record->method, $this->mfaMethods) && ($record->method != 'backupcodes')) {
 | |
|                 continue;
 | |
|             }
 | |
| 
 | |
|             $allowEntryBatching = isset($this->mfaMethods[$record->method]) ? $this->mfaMethods[$record->method]['allowEntryBatching'] : false;
 | |
| 
 | |
|             if ($this->allowEntryBatching) {
 | |
|                 if ($allowEntryBatching && in_array($record->method, $shownMethods)) {
 | |
|                     continue;
 | |
|                 }
 | |
|                 $shownMethods[] = $record->method;
 | |
|             }
 | |
| 
 | |
|             $methodName = $this->getModel()->translateMethodName($record->method);
 | |
|             ?>
 | |
|         <a class="com-users-method p-2 border-top border-dark bg-light d-flex flex-row flex-wrap justify-content-start align-items-center text-decoration-none gap-2 text-body"
 | |
|            href="<?php echo Route::_('index.php?option=com_users&view=captive&record_id=' . $record->id)?>">
 | |
|             <img src="<?php echo Uri::root() . $this->getModel()->getMethodImage($record->method) ?>"
 | |
|                  alt="<?php echo $this->escape(strip_tags($record->title)) ?>"
 | |
|                  class="com-users-method-image img-fluid" />
 | |
|             <?php if (!$this->allowEntryBatching || !$allowEntryBatching) : ?>
 | |
|                 <span class="com-users-method-title flex-grow-1 fs-5 fw-bold">
 | |
|                     <?php if ($record->method === 'backupcodes') : ?>
 | |
|                         <?php echo $record->title ?>
 | |
|                     <?php else : ?>
 | |
|                         <?php echo $this->escape($record->title) ?>
 | |
|                     <?php endif; ?>
 | |
|                 </span>
 | |
|                 <small class="com-users-method-name text-muted">
 | |
|                     <?php echo $methodName ?>
 | |
|                 </small>
 | |
|             <?php else : ?>
 | |
|                 <span class="com-users-method-title flex-grow-1 fs-5 fw-bold">
 | |
|                     <?php echo $methodName ?>
 | |
|                 </span>
 | |
|                 <small class="com-users-method-name text-muted">
 | |
|                     <?php echo $methodName ?>
 | |
|                 </small>
 | |
|             <?php endif; ?>
 | |
|         </a>
 | |
|         <?php endforeach; ?>
 | |
|     </div>
 | |
| </div>
 |