t('General'), 'description' => t('Styles for content such as lists, buttons, margins, padding, etc.'), 'weight' => -10, ); $groups['box'] = array( 'title' => t('Box styles'), 'description' => t('Presentational styles for the container.'), ); $groups['typography'] = array( 'title' => t('Typography'), 'description' => t('Fonts, styles, sizes and other typography related skins.'), ); $groups['layout'] = array( 'title' => t('Layout'), 'description' => t('Grid, layout and other structural related skins.'), ); return $groups; } /** * Implementation of hook_skinr_config_info(). */ function skinr_skinr_config_info() { return array('rules'); } /** * Implements hook_skinr_theme_hooks(). */ function skinr_skinr_theme_hooks($module, $element) { $theme_hooks = array(); if ($module == 'rules') { $rule = skinr_rule_load($element); $hooks = explode('__', $rule->rule_type); while (count($hooks)) { $theme_hooks[] = implode('__', $hooks); array_pop($hooks); } } return $theme_hooks; } /** * Implements hook_skinr_elements(). */ function skinr_skinr_elements($variables, $hook) { $elements = array(); if ($hook == 'html' || $hook == 'region') { $elements['rules'] = array(); $rule_type = 'page'; if ($hook == 'region') { $rule_type = 'region__' . $variables['region']; } $rules = skinr_rule_load_multiple(array(), array('rule_type' => $rule_type)); foreach ($rules as $rule) { if (skinr_rule_is_visible($rule->rid)) { $elements['rules'][] = $rule->rid; } } } return $elements; }