function fivestar_color_form in Fivestar 6.2
Same name and namespace in other branches
- 5 fivestar_color.inc \fivestar_color_form()
- 6 fivestar_color.inc \fivestar_color_form()
Form callback. Returns the configuration form.
1 call to fivestar_color_form()
- fivestar_settings in includes/
fivestar.admin.inc - Callback function for admin/settings/fivestar. Display the settings form.
File
- includes/
fivestar.color.inc, line 53 - File containing functions relating to the color widget.
Code
function fivestar_color_form() {
$form = array(
'#tree' => FALSE,
'#theme' => 'fivestar_color_form',
'#type' => 'fieldset',
'#title' => t('Color scheme'),
'#weight' => -1,
'#attributes' => array(
'id' => 'fivestar_color_scheme_form',
),
'#description' => t('A custom color widget must be selected to choose colors. Only the selected widget will be previewed.'),
);
$disabled = variable_get('file_downloads', FILE_DOWNLOADS_PUBLIC) == FILE_DOWNLOADS_PRIVATE;
if ($disabled) {
$form['#description'] = t('Custom colors are only supported when the <a href="!url">download method</a> is set to public.', array(
'!url' => url('admin/settings/file-system'),
));
}
// Create the list of available schemes.
$options = array(
'#fff633,#f5d000,#d2e7f9,#027AC6,#cccccc,#dfdfdf' => t('Blue Lagoon (default)'),
'#ffeb38,#fff385,#ffd60a,#ffe561,#8f8f8f,#e6e6e6' => t('Yellow'),
'#ad0002,#ff5f61,#ff1a1f,#f3b3b4,#8f8f8f,#e6e6e6' => t('Red'),
'#001efa,#bbc3fb,#1022c1,#2e41ee,#8f8f8f,#e6e6e6' => t('Blue'),
'#015700,#7cf47c,#12c610,#c8f9c7,#8f8f8f,#e6e6e6' => t('Green'),
'' => t('Custom'),
);
// See if we're using a predefined scheme.
$palette = explode(',', array_search(t('Blue Lagoon (default)'), $options));
$default_palette['on1'] = $palette[0];
$default_palette['on2'] = $palette[1];
$default_palette['hover1'] = $palette[2];
$default_palette['hover2'] = $palette[3];
$default_palette['off1'] = $palette[4];
$default_palette['off2'] = $palette[5];
$default_palette['matte'] = '#ffffff';
$palette = variable_get('fivestar_colors', $default_palette);
$scheme_default = implode(',', array_slice($palette, 0, count($palette) - 1));
$form['fivestar_color_type'] = array(
'#type' => 'select',
'#title' => t('Color display'),
'#options' => array(
'default' => t('Default display'),
'solid' => t('Solid color'),
'gradient' => t('Gradient'),
),
'#default_value' => variable_get('fivestar_color_type', 'solid'),
'#access' => !$disabled,
);
// Add scheme selector.
$form['scheme'] = array(
'#type' => 'select',
'#title' => t('Color set'),
'#options' => $options,
'#default_value' => isset($options[$scheme_default]) ? $scheme_default : '',
'#access' => !$disabled,
);
// Add palette fields.
$names = array(
'on1' => t('On colors'),
'on2' => NULL,
'hover1' => t('Hover colors'),
'hover2' => NULL,
'off1' => t('Off colors'),
'off2' => NULL,
'matte' => t('Matte color'),
);
$form['fivestar_colors'] = array(
'#tree' => TRUE,
'#access' => !$disabled,
);
foreach ($names as $key => $name) {
$form['fivestar_colors'][$key] = array(
'#type' => 'textfield',
'#title' => $name,
'#default_value' => $palette[$key],
'#size' => 8,
);
}
if ($disabled) {
$form['fivestar_color_type']['#value'] = 'default';
}
return $form;
}