config = $config;
$this->options = $options;
}
public function render() {
foreach($this->config as $tab_name => $sub_menus):
echo '
';
foreach($sub_menus as $sub_menu_name => $options):
echo '
';
endforeach;
echo '
';
endforeach;
}
public function i($data) {
return strtolower(str_replace([' ', '/'], '_', $data));
}
public function f($type, $option_name, $select) {
switch($type):
case 'checkbox' : $comp = new Form\Checkbox;
$comp->render($this->options[$option_name]);
break;
case 'colour' : $comp = new Form\Colour;
$comp->render($this->options[$option_name]);
break;
case 'textarea' : $comp = new Form\TextArea;
$comp->render($this->options[$option_name]);
break;
case 'select' : $comp = new Form\Select;
$comp->render($this->options[$option_name], $select);
break;
case 'image' : $comp = new Form\Image;
$comp->render($this->options[$option_name]);
break;
case 'menu_ordering' : $comp = new Form\MenuOrdering;
$comp->render($this->options[$option_name]);
break;
case 'header_ordering' : $comp = new Form\HeaderBarOrdering;
$comp->render($this->options[$option_name]);
break;
case 'fonticons' : $comp = new Form\FontIconPageList;
$comp->render($this->options[$option_name]);
break;
case 'import' : $comp = new Form\Import;
$comp->render();
break;
case 'export' : $comp = new Form\Export;
$comp->render();
break;
case 'reset' : $comp = new Form\Reset;
$comp->render();
break;
default : $comp = new Form\Text;
$comp->render($this->options[$option_name]);
break;
endswitch;
}
}