'', 'id' => '', 'accent_color' => '', 'background_color' => '', 'border_size' => '', 'box_shadow' => 'no', 'icon' => '', 'type' => 'general', 'animation_type' => '', 'animation_direction' => 'left', 'animation_speed' => '' ), $args ); extract( $defaults ); self::$args = $defaults; switch( $args['type'] ) { case 'general': $this->alert_class = 'info'; if( ! $icon || $icon != 'none' ) { self::$args['icon'] = $icon = 'fa-info-circle'; } break; case 'error': $this->alert_class = 'danger'; if( ! $icon || $icon != 'none' ) { self::$args['icon'] = $icon = 'fa-exclamation-triangle'; } break; case 'success': $this->alert_class = 'success'; if( ! $icon || $icon != 'none' ) { self::$args['icon'] = $icon = 'fa-check-circle'; } break; case 'notice': $this->alert_class = 'warning'; if( ! $icon || $icon != 'none' ) { self::$args['icon'] = $icon = 'fa-lg fa-cog'; } break; case 'blank': $this->alert_class = 'blank'; break; case 'custom': $this->alert_class = 'custom'; break; } $html = sprintf( '
', FusionCore_Plugin::attributes( 'alert-shortcode' ) ) . "\n"; $html .= sprintf( ' ', FusionCore_Plugin::attributes( 'alert-shortcode-button' ) ) . "\n"; if( $icon && $icon != 'none' ) { $html .= sprintf( '', FusionCore_Plugin::attributes( 'alert-icon' ), FusionCore_Plugin::attributes( 'alert-shortcode-icon' ) ); } $html .= do_shortcode( $content ); $html .= '
' . "\n"; return $html; } function attr() { $attr = array(); $attr['class'] = sprintf( 'fusion-alert alert %s alert-dismissable alert-%s', self::$args['type'], $this->alert_class ); if( self::$args['box_shadow'] == 'yes' ) { $attr['class'] .= ' alert-shadow'; } if( $this->alert_class == 'custom' ) { $attr['style'] = sprintf( 'background-color:%s;color:%s;border-color:%s;border-width:%s;', self::$args['background_color'], self::$args['accent_color'], self::$args['accent_color'], self::$args['border_size'] ); } if( self::$args['animation_type'] ) { $animations = FusionCore_Plugin::animations( array( 'type' => self::$args['animation_type'], 'direction' => self::$args['animation_direction'], 'speed' => self::$args['animation_speed'], ) ); $attr = array_merge( $attr, $animations ); $attr['class'] .= ' ' . $attr['animation_class']; unset($attr['animation_class']); } if( self::$args['class'] ) { $attr['class'] .= ' ' . self::$args['class']; } if( self::$args['id'] ) { $attr['id'] = self::$args['id']; } return $attr; } function icon_attr() { $attr = array(); $attr['class'] = sprintf( 'fa fa-lg %s', FusionCore_Plugin::font_awesome_name_handler( self::$args['icon'] ) ); return $attr; } function button_attr() { $attr = array(); if( $this->alert_class == 'custom' ) { $attr['style'] = sprintf( 'color:%s;border-color:%s;', self::$args['accent_color'], self::$args['accent_color'] ); } $attr['type'] = 'button'; $attr['class'] = 'close toggle-alert'; $attr['data-dismiss'] = 'alert'; $attr['aria-hidden'] = 'true'; return $attr; } } new FusionSC_Alert();