示例#1
0
 /**
  * {@inheritdoc}
  */
 protected function preArticle($articleContent, $module_id)
 {
     // ---------- moduleselect: nur module nehmen auf die der user rechte hat
     if ($this->mode == 'edit') {
         $MODULE = rex_sql::factory();
         $modules = $MODULE->getArray('select * from ' . rex::getTablePrefix() . 'module order by name');
         $template_ctypes = isset($this->template_attributes['ctype']) ? $this->template_attributes['ctype'] : [];
         // wenn keine ctyes definiert sind, gibt es immer den CTYPE=1
         if (count($template_ctypes) == 0) {
             $template_ctypes = [1 => 'default'];
         }
         $this->MODULESELECT = [];
         foreach ($template_ctypes as $ct_id => $ct_name) {
             foreach ($modules as $m) {
                 if (rex::getUser()->getComplexPerm('modules')->hasPerm($m['id'])) {
                     if (rex_template::hasModule($this->template_attributes, $ct_id, $m['id'])) {
                         $this->MODULESELECT[$ct_id][] = ['name' => rex_i18n::translate($m['name'], false), 'id' => $m['id']];
                     }
                 }
             }
         }
     }
     return parent::preArticle($articleContent, $module_id);
 }