Ejemplo n.º 1
0
    protected function render_inner_html()
    {
        return parent::render_inner_html() . <<<EOT
{$this->elements['login']}
{$this->elements['password']}
EOT;
    }
Ejemplo n.º 2
0
 /**
  * @throws ElementIsEmpty if the inner HTML is empty.
  */
 protected function render_inner_html()
 {
     $html = parent::render_inner_html();
     if (!$html) {
         throw new ElementIsEmpty();
     }
     return $html;
 }
Ejemplo n.º 3
0
 protected function render_inner_html()
 {
     $rc = new Element('input', ['type' => 'hidden', 'name' => $this['name'], 'value' => $this['value']]) . parent::render_inner_html();
     $constructor = $this[self::T_CONSTRUCTOR];
     $rc .= '<div class="search">';
     $rc .= new Text(['class' => 'search', 'placeholder' => I18n\t('Search')]);
     $rc .= $this->get_results(['selected' => $this['value']], $constructor);
     $rc .= '</div>';
     $this->dataset['constructor'] = $constructor;
     return $rc;
 }
Ejemplo n.º 4
0
 public function render_inner_html()
 {
     $value = $this['value'];
     if ($value) {
         if (is_string($value)) {
             $value = json_decode($value, true);
         }
         foreach ($value as $identifier => $v) {
             $this->elements[$identifier]['value'] = $v;
         }
     }
     return parent::render_inner_html();
 }
Ejemplo n.º 5
0
    public function render_inner_html()
    {
        $app = $this->app;
        $selected_category = null;
        $selected_subcategory = null;
        $selected_view = $this['value'];
        $categories = [];
        $descriptors = $app->modules->descriptors;
        $views = $app->views;
        foreach ($views as $id => $view) {
            list($module_id, $type) = explode('/', $id) + [1 => null];
            if (!isset($app->modules[$module_id])) {
                continue;
            }
            $category = 'Misc';
            $subcategory = 'Misc';
            if ($type !== null && isset($descriptors[$module_id])) {
                $descriptor = $descriptors[$module_id];
                if (isset($descriptor[Descriptor::CATEGORY])) {
                    $category = $descriptors[$module_id][Descriptor::CATEGORY];
                    $category = $this->t($category, [], ['scope' => 'module_category']);
                }
                $subcategory = $descriptor[Descriptor::TITLE];
                $subcategory = $this->t(strtr($module_id, '.', '_'), [], ['scope' => 'module_title', 'default' => $subcategory]);
            }
            $categories[$category][$subcategory][$id] = $view;
            if ($id == $selected_view) {
                $selected_category = $category;
                $selected_subcategory = $subcategory;
            }
        }
        uksort($categories, 'ICanBoogie\\unaccent_compare_ci');
        foreach ($categories as $category => $subcategories) {
            uksort($subcategories, 'ICanBoogie\\unaccent_compare_ci');
            $categories[$category] = $subcategories;
        }
        $rendered_categories = $this->render_categories($categories, $selected_category);
        $rendered_subcategories = $this->render_subcategories($categories, $selected_category, $selected_subcategory);
        $rendered_views = $this->render_views($categories, $selected_category, $selected_subcategory, $selected_view);
        return parent::render_inner_html() . <<<EOT
<table>
\t<tr>
\t\t<td class="view-editor-categories">{$rendered_categories}</td>
\t\t<td class="view-editor-subcategories">{$rendered_subcategories}</td>
\t\t<td class="view-editor-views">{$rendered_views}</td>
\t</tr>
</table>
EOT;
    }
Ejemplo n.º 6
0
 protected function render_inner_html()
 {
     $rc = parent::render_inner_html();
     $value = $this['value'];
     $name = $this['name'];
     if ($value && !is_numeric($value)) {
         $value = json_decode($value);
     }
     $class = 'Icybee\\Modules\\Nodes\\PopNode';
     $constructor = $this['data-constructor'] ?: 'nodes';
     if ($constructor == 'images') {
         $class = 'Icybee\\Modules\\Images\\PopImage';
     }
     $rc .= (string) new $class(array(\Icybee\Modules\Nodes\PopNode::T_CONSTRUCTOR => $constructor, 'name' => $name, 'value' => $value));
     return $rc;
 }
Ejemplo n.º 7
0
 public function render_inner_html()
 {
     global $core;
     $config = $core->configs->synthesize('widgets', 'merge');
     if (!$config) {
         return new Alert('There is no widget defined.', array(Alert::CONTEXT => Alert::CONTEXT_INFO));
     }
     $rc = parent::render_inner_html();
     $value = $this['value'];
     $name = $this['name'];
     $value = is_array($value) ? array_flip($value) : array();
     // TODO-20100204: check deprecated widgets ids
     $list = array_merge($value, $config);
     //\ICanBoogie\log('value: \1, list: \2 \3', array($value, $list, array_merge($value, $list)));
     foreach ($list as $id => $widget) {
         $rc .= '<li>';
         $rc .= new Element(Element::TYPE_CHECKBOX, array(Element::LABEL => $widget['title'], 'name' => $name . '[' . $id . ']', 'checked' => isset($value[$id])));
         $rc .= '</li>';
     }
     return $rc;
 }
Ejemplo n.º 8
0
 /**
  * Add hidden input elements and log messages to the inner HTML of the element
  * being converted to a string.
  *
  * @inheritdoc
  */
 protected function render_inner_html()
 {
     $inner_html = parent::render_inner_html();
     $hiddens = $this->render_hiddens($this->hiddens);
     if (!$inner_html) {
         $this->add_class('has-no-content');
     } else {
         $this->remove_class('has-no-content');
     }
     #
     # alert message
     #
     $alert = null;
     if (!$this[self::NO_LOG]) {
         $name = $this->name;
         $errors = retrieve_form_errors($name);
         if ($errors) {
             $alert = $this->render_errors($errors);
             store_form_errors($name, []);
             // reset form errors.
         }
     }
     #
     # actions
     #
     $actions = $this[self::ACTIONS];
     if ($actions) {
         $this->add_class('has-actions');
         $actions = $this->render_actions($actions);
     } else {
         $this->remove_class('has-actions');
     }
     if (!$inner_html && !$actions) {
         throw new ElementIsEmpty();
     }
     return $hiddens . $alert . $inner_html . $actions;
 }