You are here

function themekey_debug_properties in ThemeKey 6.3

Same name and namespace in other branches
  1. 6.4 themekey_debug.module \themekey_debug_properties()
  2. 6.2 themekey_debug.module \themekey_debug_properties()
  3. 7.3 themekey_debug.module \themekey_debug_properties()
  4. 7 themekey_debug.module \themekey_debug_properties()
  5. 7.2 themekey_debug.module \themekey_debug_properties()

Iterates over all ThemeKey Properties and prints out their current values.

1 call to themekey_debug_properties()
themekey_init in ./themekey.module
Implements hook_init().

File

./themekey_debug.module, line 17
Provides a debug mode for the ThemeKey module.

Code

function themekey_debug_properties() {
  global $user;
  if (1 == $user->uid || variable_get('themekey_debug_non_admin_users', FALSE)) {
    module_load_include('inc', 'themekey', 'themekey_base');
    $properties = variable_get('themekey_properties', array());
    $message = t('These are the current values of all available ThemeKey Properties. By clicking the value you can start creating a corresponding Theme Switching Rule.') . '<ul>';
    $parameters = themekey_get_global_parameters();
    foreach ($properties as $property) {
      if (!isset($parameters[$property])) {
        themekey_property_value($parameters, $property);
      }
      $value = '';
      if (is_null($parameters[$property])) {
        if ('drupal:path' == $property) {
          $value = '<em>no debug information</em>';
        }
        else {
          $value = '<em>empty</em>';
        }
      }
      else {
        $values = is_array($parameters[$property]) ? $parameters[$property] : array(
          $parameters[$property],
        );
        $links = array();
        foreach ($values as $single_value) {
          $links[] = l($single_value, 'admin/settings/themekey', array(
            'fragment' => 'themekey_new_rule',
            'query' => array(
              'property' => $property,
              'value' => $single_value,
            ),
          ));
        }
        $value = implode('<br />', $links);
      }
      $message .= '<li>' . $property . '<br />' . $value . '</li><br />';
    }
    $message .= '</ul>';
    themekey_set_debug_message($message, array(), FALSE);
  }
}