function _slick_typecast_optionset in Slick Carousel 7.2
Same name and namespace in other branches
- 7.3 includes/slick.admin.inc \_slick_typecast_optionset()
Returns the typecast values, so that JSON object has the right values.
Parameters
array $options: An array of Optionset options.
int $breakpoints: The number of breakpoints if specified.
3 calls to _slick_typecast_optionset()
- SlickUi::edit_form_submit in slick_ui/
plugins/ export_ui/ SlickUi.class.php - Overrides the edit form submit handler.
- slick_optionset_load_all in includes/
slick.admin.inc - Fetches all optionsets from the storage.
- slick_optionset_save in includes/
slick.admin.inc - Saves the given option set to the database.
File
- includes/
slick.admin.inc, line 261 - Contains optional functions called only if needed by admin pages.
Code
function _slick_typecast_optionset(array &$options = array(), $breakpoints = 0) {
if (empty($options)) {
return;
}
$slick_options = slick_get_options();
foreach ($slick_options as $name => $value) {
if (isset($options['settings'][$name])) {
$cast = gettype($slick_options[$name]);
settype($options['settings'][$name], $cast);
}
}
if (isset($options['responsives']['responsive']) && $breakpoints) {
$slick_responsive_options = slick_get_responsive_options($breakpoints);
foreach ($slick_responsive_options as $i => $items) {
foreach ($items as $name => $item) {
switch ($name) {
case 'breakpoint':
settype($options['responsives']['responsive'][$i][$name], 'int');
break;
case 'unslick':
settype($options['responsives']['responsive'][$i][$name], 'bool');
break;
case 'settings':
foreach ($item as $key => $setting) {
if (isset($options['responsives']['responsive'][$i][$name][$key])) {
$cast = gettype($item[$key]);
settype($options['responsives']['responsive'][$i][$name][$key], $cast);
}
}
break;
default:
break;
}
}
}
}
drupal_alter('slick_typecast_optionset_info', $options, $breakpoints);
}