/**
  * Rebuild CSS
  *
  * Cache check called in Styles_Plugin::get_css to avoid initializing this class
  */
 public function get_css()
 {
     global $wp_customize;
     $css = '';
     $this->plugin->customize_register($wp_customize);
     foreach ($this->plugin->customize->get_settings() as $group => $elements) {
         foreach ($elements as $element) {
             if ($class = Styles_Helpers::get_element_class($element)) {
                 $element = apply_filters('styles_pre_get_css', $element);
                 $control = new $class($group, $element);
                 $css .= $control->get_css();
             }
         }
     }
     $css = apply_filters('styles_css_output', $css);
     $css = implode('', $this->google_fonts) . $css;
     $css = $this->minify($css);
     update_option(Styles_Helpers::get_option_key('css'), $css);
     return $css;
 }
 /**
  * Register individual customize fields in WordPress 3.4+
  * Settings & Controls are within each class (type calls different classes)
  */
 public function add_items($group_id, $elements, $add_item = true)
 {
     static $i;
     foreach ((array) $elements as $element) {
         $i++;
         $element['priority'] = $i;
         if ($class = Styles_Helpers::get_element_class($element)) {
             // PHP <= 5.2 support
             // Otherwise, would be: $class::add_item( $group_id, $element );
             $control = new $class($group_id, $element);
             if ($add_item) {
                 $control->add_item();
             }
             $this->controls[] = $control;
         }
     }
 }