[ Index ]

PHP Cross Reference of Joomla 4.2.2 documentation

title

Body

[close]

/administrator/components/com_modules/tmpl/module/ -> edit_assignment.php (source)

   1  <?php
   2  
   3  /**
   4   * @package     Joomla.Administrator
   5   * @subpackage  com_modules
   6   *
   7   * @copyright   (C) 2009 Open Source Matters, Inc. <https://www.joomla.org>
   8   * @license     GNU General Public License version 2 or later; see LICENSE.txt
   9   */
  10  
  11  defined('_JEXEC') or die;
  12  
  13  use Joomla\CMS\HTML\HTMLHelper;
  14  use Joomla\CMS\Language\Multilanguage;
  15  use Joomla\CMS\Language\Text;
  16  use Joomla\Component\Menus\Administrator\Helper\MenusHelper;
  17  use Joomla\Component\Modules\Administrator\Helper\ModulesHelper;
  18  
  19  // Initialise related data.
  20  $menuTypes = MenusHelper::getMenuLinks();
  21  
  22  $this->document->getWebAssetManager()
  23      ->useScript('joomla.treeselectmenu')
  24      ->useScript('com_modules.admin-module-edit-assignment');
  25  
  26  ?>
  27  <div class="control-group">
  28      <label id="jform_menus-lbl" class="control-label" for="jform_assignment"><?php echo Text::_('COM_MODULES_MODULE_ASSIGN'); ?></label>
  29      <div id="jform_menus" class="controls">
  30          <select class="form-select" name="jform[assignment]" id="jform_assignment">
  31              <?php echo HTMLHelper::_('select.options', ModulesHelper::getAssignmentOptions($this->item->client_id), 'value', 'text', $this->item->assignment, true); ?>
  32          </select>
  33      </div>
  34  </div>
  35  <div id="menuselect-group" class="control-group">
  36      <label id="jform_menuselect-lbl" class="control-label" for="jform_menuselect"><?php echo Text::_('JGLOBAL_MENU_SELECTION'); ?></label>
  37      <div id="jform_menuselect" class="controls">
  38          <?php if (!empty($menuTypes)) : ?>
  39          <div class="card-header">
  40              <section class="d-flex align-items-center flex-wrap w-100" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL'); ?>">
  41                  <div class="d-flex align-items-center flex-fill mb-1" role="group" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL_ASSIGN'); ?>"><?php echo Text::_('COM_MODULES_GLOBAL_ASSIGN'); ?>
  42                      <button id="treeCheckAll" class="btn btn-secondary btn-sm mx-1" type="button">
  43                          <?php echo Text::_('JALL'); ?>
  44                      </button>
  45                      <button id="treeUncheckAll" class="btn btn-secondary btn-sm mx-1" type="button">
  46                          <?php echo Text::_('JNONE'); ?>
  47                      </button>
  48                  </div>
  49                  <div class="d-flex align-items-center mb-1 flex-fill" role="group" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL_TREE_EXPAND'); ?>"><?php echo Text::_('COM_MODULES_GLOBAL_TREE_EXPAND'); ?>
  50                      <button id="treeExpandAll" class="btn btn-secondary btn-sm mx-1" type="button">
  51                          <?php echo Text::_('JALL'); ?>
  52                      </button>
  53                      <button id="treeCollapseAll" class="btn btn-secondary btn-sm mx-1" type="button">
  54                          <?php echo Text::_('JNONE'); ?>
  55                      </button>
  56                  </div>
  57                  <div role="search" class="flex-grow-1">
  58                      <label for="treeselectfilter" class="visually-hidden"><?php echo Text::_('COM_MODULES_SEARCH_MENUITEM'); ?></label>
  59                      <input type="text" id="treeselectfilter" name="treeselectfilter" class="form-control search-query" autocomplete="off" placeholder="<?php echo Text::_('JSEARCH_FILTER'); ?>">
  60                  </div>
  61              </section>
  62          </div>
  63          <div class="card-body">
  64              <ul class="treeselect">
  65                  <?php foreach ($menuTypes as &$type) : ?>
  66                      <?php if (count($type->links)) : ?>
  67                          <?php $prevlevel = 0; ?>
  68                      <li>
  69                          <div class="treeselect-item treeselect-header">
  70                              <label class="nav-header"><?php echo $type->title; ?></label></div>
  71                          <?php foreach ($type->links as $i => $link) : ?>
  72                              <?php
  73                              if ($prevlevel < $link->level) {
  74                                  echo '<ul class="treeselect-sub">';
  75                              } elseif ($prevlevel > $link->level) {
  76                                  echo str_repeat('</li></ul>', $prevlevel - $link->level);
  77                              } else {
  78                                  echo '</li>';
  79                              }
  80                              $selected = 0;
  81                              if ($this->item->assignment == 0) {
  82                                  $selected = 1;
  83                              } elseif ($this->item->assignment < 0) {
  84                                  $selected = in_array(-$link->value, $this->item->assigned);
  85                              } elseif ($this->item->assignment > 0) {
  86                                  $selected = in_array($link->value, $this->item->assigned);
  87                              }
  88                              ?>
  89                              <li>
  90                                  <div class="treeselect-item">
  91                                      <?php
  92                                      $uselessMenuItem = in_array($link->type, array('separator', 'heading', 'alias', 'url'));
  93                                      $id = 'jform_menuselect';
  94                                      ?>
  95                                      <input type="checkbox" class="novalidate form-check-input" name="jform[assigned][]" id="<?php echo $id . $link->value; ?>" value="<?php echo (int) $link->value; ?>"<?php echo $selected ? ' checked="checked"' : '';
  96                                      echo $uselessMenuItem ? ' disabled="disabled"' : ''; ?>>
  97                                      <label for="<?php echo $id . $link->value; ?>" class="">
  98                                          <?php echo $link->text; ?>
  99                                          <?php if (Multilanguage::isEnabled() && $link->language != '' && $link->language != '*') : ?>
 100                                              <?php if ($link->language_image) : ?>
 101                                                  <?php echo HTMLHelper::_('image', 'mod_languages/' . $link->language_image . '.gif', $link->language_title, array('title' => $link->language_title), true); ?>
 102                                              <?php else : ?>
 103                                                  <?php echo '<span class="badge bg-secondary" title="' . $link->language_title . '">' . $link->language_sef . '</span>'; ?>
 104                                              <?php endif; ?>
 105                                          <?php endif; ?>
 106                                          <?php if ($link->published == 0) : ?>
 107                                              <?php echo ' <span class="badge bg-secondary">' . Text::_('JUNPUBLISHED') . '</span>'; ?>
 108                                          <?php endif; ?>
 109                                          <?php if ($uselessMenuItem) : ?>
 110                                              <?php echo ' <span class="badge bg-secondary">' . Text::_('COM_MODULES_MENU_ITEM_' . strtoupper($link->type)) . '</span>'; ?>
 111                                          <?php endif; ?>
 112                                      </label>
 113                                  </div>
 114                              <?php
 115  
 116                              if (!isset($type->links[$i + 1])) {
 117                                  echo str_repeat('</li></ul>', $link->level);
 118                              }
 119                              $prevlevel = $link->level;
 120                              ?>
 121                          <?php endforeach; ?>
 122                      </li>
 123                      <?php endif; ?>
 124                  <?php endforeach; ?>
 125              </ul>
 126              <joomla-alert id="noresultsfound" type="warning" style="display:none"><?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?></joomla-alert>
 127              <div class="hidden" id="treeselectmenu">
 128                  <div class="nav-hover treeselect-menu">
 129                      <div class="dropdown">
 130                          <button type="button" data-bs-toggle="dropdown" class="dropdown-toggle btn btn-sm btn-light">
 131                              <span class="caret"></span>
 132                              <span class="visually-hidden"><?php echo Text::sprintf('JGLOBAL_TOGGLE_DROPDOWN'); ?></span>
 133                          </button>
 134                          <div class="dropdown-menu">
 135                              <h1 class="dropdown-header"><?php echo Text::_('COM_MODULES_SUBITEMS'); ?></h1>
 136                              <div class="dropdown-divider"></div>
 137                              <a class="dropdown-item checkall" href="javascript://"><span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JSELECT'); ?></a>
 138                              <a class="dropdown-item uncheckall" href="javascript://"><span class="icon-square" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_DESELECT'); ?></a>
 139                              <div class="treeselect-menu-expand">
 140                                  <div class="dropdown-divider"></div>
 141                                  <a class="dropdown-item expandall" href="javascript://"><span class="icon-plus" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_EXPAND'); ?></a>
 142                                  <a class="dropdown-item collapseall" href="javascript://"><span class="icon-minus" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_COLLAPSE'); ?></a>
 143                              </div>
 144                          </div>
 145                      </div>
 146                  </div>
 147              </div>
 148          </div>
 149          <?php endif; ?>
 150      </div>
 151  </div>


Generated: Wed Sep 7 05:41:13 2022 Chilli.vc Blog - For Webmaster,Blog-Writer,System Admin and Domainer