public static function options($type, $options)
{
$options = (array) $options;
if (!is_object($options) && isset($options['options'])) {
$options_temp = $options['options'];
unset($options['options']);
$options = array_merge($options_temp, $options);
$override = array('class');
foreach ($override as $check) {
if (isset($options_temp[$check])) {
$options[$check] = $options_temp[$check];
}
}
}
$defaults = self::options_setup($type, $options);
$core_defaults = array('id' => 0, 'label' => '', 'description' => '', 'help' => '', 'default' => null, 'attributes' => array(), 'class' => '', 'grouped' => 0);
$defaults = array_merge($core_defaults, $defaults);
foreach ($defaults as $option => $settings) {
$default = $settings;
if (is_array($settings) && isset($settings['default'])) {
$default = $settings['default'];
}
if (!isset($options[$option])) {
$options[$option] = $default;
}
}
return $options;
}