function theme_color_scheme_form

Returns HTML for a theme's color form.

Parameters

$variables: An associative array containing:

  • form: A render element representing the form.

Related topics

1 theme call to theme_color_scheme_form()
color_form_system_theme_settings_alter in modules/color/color.module
Implements hook_form_FORM_ID_alter().

File

modules/color/color.module, line 264

Code

function theme_color_scheme_form($variables) {
    $form = $variables['form'];
    $theme = $form['theme']['#value'];
    $info = $form['info']['#value'];
    $path = drupal_get_path('theme', $theme) . '/';
    drupal_add_css($path . $info['preview_css']);
    $preview_js_path = isset($info['preview_js']) ? $path . $info['preview_js'] : drupal_get_path('module', 'color') . '/' . 'preview.js';
    // Add the JS at a weight below color.js.
    drupal_add_js($preview_js_path, array(
        'weight' => -1,
    ));
    $output = '';
    $output .= '<div class="color-form clearfix">';
    // Color schemes
    $output .= drupal_render($form['scheme']);
    // Palette
    $output .= '<div id="palette" class="clearfix">';
    foreach (element_children($form['palette']) as $name) {
        $output .= drupal_render($form['palette'][$name]);
    }
    $output .= '</div>';
    // Preview
    $output .= drupal_render_children($form);
    $output .= '<h2>' . t('Preview') . '</h2>';
    // Attempt to load preview HTML if the theme provides it.
    $preview_html_path = DRUPAL_ROOT . '/' . (isset($info['preview_html']) ? drupal_get_path('theme', $theme) . '/' . $info['preview_html'] : drupal_get_path('module', 'color') . '/preview.html');
    $output .= file_get_contents($preview_html_path);
    // Close the wrapper div.
    $output .= '</div>';
    return $output;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.