public function build_shortcode_clean_atts($atts)
 {
     unset($atts['_type']);
     unset($atts['elements']);
     foreach ($atts as $key => $value) {
         if ('content' == $key) {
             continue;
         }
         if (!is_scalar($value)) {
             unset($atts[$key]);
             continue;
         }
     }
     if (isset($atts['class'])) {
         $atts['class'] = cs_sanitize_html_classes($atts['class']);
     }
     return $atts;
 }
 public function build_shortcode_clean_atts($atts)
 {
     unset($atts['_type']);
     unset($atts['elements']);
     foreach ($atts as $key => $value) {
         if ($value == '' || !is_scalar($value)) {
             unset($atts[$key]);
             continue;
         }
         if ($value === true) {
             $atts[$key] = 'true';
             continue;
         }
         if ($value === false) {
             $atts[$key] = 'false';
             continue;
         }
         if (is_array($value) && 5 == count($value) && ($value[4] == 'linked' || $value[4] == 'unlinked')) {
             $atts[$key] = Cornerstone_Control_Dimensions::simplify($value);
             continue;
         }
     }
     if (isset($atts['class'])) {
         $atts['class'] = cs_sanitize_html_classes($atts['class']);
     }
     return $atts;
 }
 /**
  * Helper function used in render methods.
  * This creates a string that can be used to speed up shortcode building.
  * @param  array $params
  * @return string
  */
 public function extra($atts)
 {
     $extra = '';
     if (isset($atts['id']) && $atts['id'] != '') {
         $extra .= " id=\"{$atts['id']}\"";
     }
     if (isset($atts['class']) && $atts['class'] != '') {
         $class = cs_sanitize_html_classes($atts['class']);
         $extra .= " class=\"{$class}\"";
     }
     if (isset($atts['style']) && $atts['style'] != '') {
         $extra .= " style=\"{$atts['style']}\"";
     }
     return $extra;
 }
function cs_build_shortcode($name, $attributes, $extra = '', $content = '')
{
    $output = "[{$name}";
    if (isset($attributes['class'])) {
        $attributes['class'] = cs_sanitize_html_classes($attributes['class']);
    }
    foreach ($attributes as $attribute => $value) {
        $clean = cs_clean_shortcode_att($value);
        $att = sanitize_key($attribute);
        $output .= " {$att}=\"{$clean}\"";
    }
    if ($extra != '') {
        $output .= " {$extra}";
    }
    if ($content == '') {
        $output .= "]";
    } else {
        $output .= "]{$content}[/{$name}]";
    }
    return $output;
}