function processShortcodeDivider($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Align = new PBAlign(); $Border = new PBBorder(); $Validation = new PBValidation(); $style = array(); $class = array('pb-divider', 'pb-clear-fix'); if ($Validation->isNumber($attribute['line_width'], 0, 9999)) { $style['width'] = $attribute['line_width'] . 'px'; } if ($Validation->isNumber($attribute['line_height'], 0, 9999)) { $style['border-bottom-width'] = $attribute['line_height'] . 'px'; } if (array_key_exists($attribute['line_style'], $Border->style)) { $style['border-style'] = $attribute['line_style']; } if ($Validation->isColor($attribute['line_color'])) { $style['border-color'] = PBColor::getColor($attribute['line_color']); } if (array_key_exists($attribute['align'], $Align->align)) { array_push($class, $Align->getCSSClass($attribute['align'])); } if ($Validation->isNumber($attribute['margin_top'], 0, 9999)) { $style['margin-top'] = $attribute['margin_top'] . 'px'; } if ($Validation->isNumber($attribute['margin_bottom'], 0, 9999)) { $style['margin-bottom'] = $attribute['margin_bottom'] . 'px'; } array_push($class, $attribute['css_class']); $html = ' <div' . PBHelper::createClassAttribute($class) . PBHelper::createStyleAttribute($style) . '></div> '; return PBHelper::formatHTML($html); }
function processShortcodeVerticalGrid($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Validation = new PBValidation(); $this->lineNumber = 0; $this->lineStyle = array('even' => array('name' => null, 'value' => null), 'odd' => array('name' => null, 'value' => null)); if ($Validation->isEmpty($content)) { return $html; } $style = array(); if ($Validation->isNumber($attribute['column_name_width'], 1, 100)) { $style['odd']['name']['width'] = $attribute['column_name_width'] . '%'; $style['even']['name']['width'] = $attribute['column_name_width'] . '%'; } if ($Validation->isNumber($attribute['column_value_width'], 1, 100)) { $style['odd']['value']['width'] = $attribute['column_value_width'] . '%'; $style['even']['value']['width'] = $attribute['column_value_width'] . '%'; } if ($Validation->isColor($attribute['line_even_column_name_text_color'])) { $style['even']['name']['color'] = PBColor::getColor($attribute['line_even_column_name_text_color']); } if ($Validation->isColor($attribute['line_even_column_value_text_color'])) { $style['even']['value']['color'] = PBColor::getColor($attribute['line_even_column_value_text_color']); } if ($Validation->isColor($attribute['line_even_column_name_bg_color'])) { $style['even']['name']['background-color'] = PBColor::getColor($attribute['line_even_column_name_bg_color']); } if ($Validation->isColor($attribute['line_even_column_value_bg_color'])) { $style['even']['value']['background-color'] = PBColor::getColor($attribute['line_even_column_value_bg_color']); } if ($Validation->isColor($attribute['line_odd_column_name_text_color'])) { $style['odd']['name']['color'] = PBColor::getColor($attribute['line_odd_column_name_text_color']); } if ($Validation->isColor($attribute['line_odd_column_value_text_color'])) { $style['odd']['value']['color'] = PBColor::getColor($attribute['line_odd_column_value_text_color']); } if ($Validation->isColor($attribute['line_odd_column_name_bg_color'])) { $style['odd']['name']['background-color'] = PBColor::getColor($attribute['line_odd_column_name_bg_color']); } if ($Validation->isColor($attribute['line_odd_column_value_bg_color'])) { $style['odd']['value']['background-color'] = PBColor::getColor($attribute['line_odd_column_value_bg_color']); } $this->lineStyle['even']['name'] = PBHelper::createStyleAttribute($style['even']['name']); $this->lineStyle['even']['value'] = PBHelper::createStyleAttribute($style['even']['value']); $this->lineStyle['odd']['name'] = PBHelper::createStyleAttribute($style['odd']['name']); $this->lineStyle['odd']['value'] = PBHelper::createStyleAttribute($style['odd']['value']); $class = array('pb-vertical-grid', 'pb-clear-fix', $attribute['css_class']); $html = ' <div' . PBHelper::createClassAttribute($class) . '> <ul' . PBHelper::createClassAttribute(array('pb-reset-list')) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '</ul> </div> '; return PBHelper::formatHTML($html, PBHelper::formatContent($content, true, false, false)); }
function processShortcodeScreenPreloader($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Validation = new PBValidation(); if (!$Validation->isColor($attribute['bg_color'])) { return $html; } if (!$Validation->isNumber($attribute['z_index'], 0, 999999)) { return $html; } $style = array(); $class = array('pb-screen-preloader', $attribute['css_class']); $style['z-index'] = $attribute['z_index']; $style['background-color'] = PBColor::getColor($attribute['bg_color']); $id = PBHelper::createId('pb_screen_preloader'); $html = ' <div' . PBHelper::createStyleAttribute($style) . PBHelper::createClassAttribute($class) . ' id="' . esc_attr($id) . '"></div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBScreenPreloader(); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeHeaderSubheaderSubheader($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $style = array(); $Font = new PBFont(); $Header = new PBHeader(); $Validation = new PBValidation(); if ($Validation->isEmpty($content)) { return $html; } if (!array_key_exists($attribute['important'], $Header->important)) { return $html; } if ($Validation->isNumber($attribute['font_size'], 1, 200, true)) { $style['font-size'] = $attribute['font_size'] . 'px'; } if (array_key_exists($attribute['font_weight'], $Font->weight)) { $style['font-weight'] = $attribute['font_weight']; } if (array_key_exists($attribute['font_style'], $Font->style)) { $style['font-style'] = $attribute['font_style']; } if ($Validation->isColor($attribute['font_color'])) { $style['color'] = PBColor::getColor($attribute['font_color']); } if ($Validation->isNotEmpty($attribute['line_height'])) { $style['line-height'] = $attribute['line_height']; } $class = array(array('pb-subheader'), array('pb-subheader-content')); $html = '<h' . (int) $attribute['important'] . PBHelper::createClassAttribute($class[0]) . PBHelper::createStyleAttribute($style) . '><span' . PBHelper::createClassAttribute($class[1]) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '</span></h' . (int) $attribute['important'] . '>'; return PBHelper::formatHTML($html, $content); }
function processShortcodeCounterListItem($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Validation = new PBValidation(); if ($Validation->isEmpty($attribute['name'])) { return $html; } if (!$Validation->isNumber($attribute['value'], 0, 99999, false)) { return $html; } $lineCharacterAfter = null; $lineCharacterBefore = null; if ($Validation->isNotEmpty($this->character['before'])) { $lineCharacterBefore = '<span' . PBHelper::createClassAttribute(array('pb-counter-list-value-character-before')) . '>' . esc_html($this->character['before']) . '</span>'; } if ($Validation->isNotEmpty($this->character['after'])) { $lineCharacterAfter = '<span' . PBHelper::createClassAttribute(array('pb-counter-list-value-character-after')) . '>' . esc_html($this->character['after']) . '</span>'; } $html = ' <li class="pb-value-' . (int) $attribute['value'] . '"> <span class="pb-counter-list-label">' . esc_html($attribute['name']) . '</span> <span class="pb-counter-list-value"> ' . $lineCharacterBefore . ' <span class="pb-counter-list-value-value">' . (int) $attribute['value'] . '</span> ' . $lineCharacterAfter . ' </span> <span class="pb-counter-list-foreground"></span> <span class="pb-counter-list-background"></span> </li> '; return PBHelper::formatHTML($html); }
function processShortcodeIframe($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Validation = new PBValidation(); if ($Validation->isEmpty($attribute['src'])) { return null; } $style = array(array(), array()); if ($Validation->isNumber($attribute['width'], 1, 9999)) { $style[0]['width'] = (int) $attribute['width'] . 'px'; } if ($Validation->isNumber($attribute['height'], 1, 9999)) { $style[1]['height'] = (int) $attribute['height'] . 'px'; $style[1]['padding-bottom'] = '0px'; } $class = array(array('pb-iframe', $attribute['css_class']), array('pb-iframe-content')); $html = '<div' . PBHelper::createClassAttribute($class[0]) . PBHelper::createStyleAttribute($style[0]) . '><div' . PBHelper::createClassAttribute($class[1]) . PBHelper::createStyleAttribute($style[1]) . '><iframe src="' . esc_attr($attribute['src']) . '"></iframe></div></div>'; return PBHelper::formatCode($html); }
function processShortcodeSpace($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $style = array(); $Validation = new PBValidation(); if ($Validation->isNumber($attribute['height'], -9999, 9999)) { if ((int) $attribute['height'] >= 0) { $style['height'] = (int) $attribute['height'] . 'px'; } else { $style['margin-top'] = (int) $attribute['height'] . 'px'; } } $class = array('pb-space', 'pb-clear-fix', $attribute['css_class']); $html = '<div' . PBHelper::createClassAttribute(array('pb-space-line')) . '></div><div' . PBHelper::createClassAttribute($class) . PBHelper::createStyleAttribute($style) . '></div>'; return PBHelper::formatHTML($html); }
function processShortcodeAudio($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $option = array(); $this->track = array(); $this->trackIndex = 0; $Validation = new PBValidation(); if ($Validation->isEmpty($content)) { return $html; } if (!$Validation->isNumber($attribute['volume'], 0, 100)) { return $html; } if (!$Validation->isBool($attribute['muted'])) { return $html; } if (!$Validation->isBool($attribute['playlist_enable'])) { return $html; } $attribute['volume'] /= 100; $key = array('muted', 'volume', 'playlist_enable'); foreach ($key as $value) { $option[$value] = $attribute[$value]; } $id = PBHelper::createId('audio'); $idPlayer = PBHelper::createId('audio_player'); $idPlayerContainer = PBHelper::createId('audio_player_container'); do_shortcode($content); if (!count($this->track)) { return $html; } $html .= $this->createJPlayerTemplate($id, $idPlayer, $idPlayerContainer); $html .= ' <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBAudio(' . json_encode(array('idPlayer' => $idPlayer, 'idPlayerContainer' => $idPlayerContainer)) . ',' . json_encode($option) . ',' . json_encode($this->track) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeList($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Validation = new PBValidation(); if (PBComponentData::get($this->getComponentId(), 'icon_type') === 'gr') { $classBullet = null; if ($Validation->isNotEmpty($attribute['bullet'])) { $classBullet = 'pb-list-icon-name-' . PBHelper::createHash($attribute['bullet']); } $class = array('pb-list', 'pb-list-icon-type-gr', $classBullet, $attribute['css_class']); } else { $class = array('pb-list', 'pb-list-icon-type-fa', $attribute['css_class']); } $id = PBHelper::createId('pb_list'); $html = '<div' . PBHelper::createClassAttribute($class) . ' id="' . esc_attr($id) . '">' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '</div>'; if (PBComponentData::get($this->getComponentId(), 'icon_type') === 'fa' && $Validation->isNotEmpty($attribute['font_icon_name'])) { $option = array(); $option['icon_type'] = 'fa'; if ($Validation->isNotEmpty($attribute['font_icon_name'])) { $option['font_icon_name'] = $attribute['font_icon_name']; } if ($Validation->isColor($attribute['font_icon_color'])) { $option['font_icon_color'] = $attribute['font_icon_color']; } if ($Validation->isNumber($attribute['font_icon_size'], 1, 200)) { $option['font_icon_size'] = $attribute['font_icon_size']; } $html .= ' <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBList(' . json_encode($option) . '); }); </script> </div> '; } return PBHelper::formatHTML($html, $content); }
function processShortcodeVideo($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Validation = new PBValidation(); $src = $this->parseVideoURL($attribute['src'], $attribute['type']); if ($src === false) { return $html; } $style = array(); if ($Validation->isNumber($attribute['player_width'], 1, 9999)) { $style['width'] = (int) $attribute['player_width'] . 'px'; } $class = array(array('pb-video', $attribute['css_class']), array('pb-video-content')); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . PBHelper::createStyleAttribute($style) . '> <div' . PBHelper::createClassAttribute($class[1]) . '> <iframe src="' . esc_attr($src) . '" frameborder="0" allowfullscreen></iframe> </div> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeRedirect($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Validation = new PBValidation(); if ($Validation->isEmpty($attribute['url']) && $Validation->isEmpty($attribute['post_id'])) { return; } if ($Validation->isEmpty($attribute['url'])) { if ($Validation->isNumber($attribute['post_id'], 1, 99999999)) { $url = get_permalink($attribute['post_id']); } else { return; } } else { $url = $attribute['url']; } if (ob_get_contents()) { ob_clean(); } wp_redirect($url, $attribute['status']); ob_end_flush(); exit; }
function processShortcodeBackgroundVideo($attribute, $content, $tag) { $html = null; $option = array(); $Validation = new PBValidation(); $attribute = $this->processAttribute($tag, $attribute); if (!$Validation->isBool($attribute['loop'])) { return $html; } if (!$Validation->isBool($attribute['muted'])) { return $html; } if (!$Validation->isNumber($attribute['volume'], 0, 100)) { return $html; } if (!$Validation->isFloat($attribute['playback_rate'], -999.99, 999.99)) { return $html; } if ($Validation->isEmpty($attribute['video_format_webm']) && $Validation->isEmpty($attribute['video_format_ogg']) && $Validation->isEmpty($attribute['video_format_mp4'])) { return $html; } $key = array('loop', 'muted', 'poster', 'volume', 'position', 'playback_rate', 'video_format_mp4', 'video_format_ogg', 'video_format_webm'); foreach ($key as $value) { $option[$value] = $attribute[$value]; } $html = ' <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'body\').PBBackgroundVideo(' . json_encode($option) . '); }); </script> </div> '; return $html; }
function processShortcodeDropcap($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Validation = new PBValidation(); $style = array(); $class = array('pb-dropcap', 'pb-clear-fix', $attribute['css_class']); if ($Validation->isNumber($attribute['font_size'], 1, 100)) { $style['font-size'] = $attribute['font_size'] . 'px'; } if ($Validation->isColor($attribute['font_color'])) { $style['color'] = PBColor::getColor($attribute['font_color']); } if ($Validation->isColor($attribute['bg_color'])) { $style['background-color'] = PBColor::getColor($attribute['bg_color']); } $letter = mb_substr($content, 0, 1); $content = mb_substr($content, 1); $html = ' <p' . PBHelper::createClassAttribute($class) . '> <span class="pb-dropcap-first-letter" ' . PBHelper::createStyleAttribute($style) . '>' . $letter . '</span>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . ' </p> '; return PBHelper::formatHTML($html, PBHelper::formatContent($content, true, false, false)); }
function processShortcodeZAccordion($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Image = new PBImage(); $Easing = new PBEasing(); $Validation = new PBValidation(); $html = null; $imageHTML = null; $imageBoxHTML = null; $option = array(); if (!array_key_exists($attribute['data_source'], $this->dataSource)) { return $html; } if ($attribute['data_source'] == 1) { $query = PBFile::getImage(explode(',', $attribute['image'])); if ($query === false) { return $html; } if (!count($query->posts)) { return $html; } } else { $argument = array('meta_query' => array(array('key' => '_thumbnail_id'))); if ($Validation->isNotEmpty($attribute['post_type'])) { $argument['post_type'] = explode(',', $attribute['post_type']); } if ($Validation->isNotEmpty($attribute['post_status'])) { $argument['post_status'] = explode(',', $attribute['post_status']); } if ($Validation->isNotEmpty($attribute['post__in'])) { $argument['post__in'] = explode(',', $attribute['post__in']); } if ($Validation->isNotEmpty($attribute['post__not_in'])) { $argument['post__not_in'] = explode(',', $attribute['post__not_in']); } if ($Validation->isNotEmpty($attribute['posts_per_page'])) { $argument['posts_per_page'] = $attribute['posts_per_page'] == -2 ? -1 : $attribute['posts_per_page']; } if ($Validation->isNotEmpty($attribute['orderby'])) { $argument['orderby'] = $attribute['orderby']; } if ($Validation->isNotEmpty($attribute['order'])) { $argument['order'] = $attribute['order']; } $query = new WP_Query($argument); if ($query === false) { return $html; } if ($query->post_count == 0) { return $html; } } if (!PBFile::isWPImage($attribute['image_size'])) { return $html; } if (!$Validation->isBool($attribute['preloader_enable'])) { return $html; } if (!$Validation->isNumber($attribute['starting_slide'], 0, 999)) { return $html; } if (!$Validation->isNumber($attribute['timeout'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['speed'], 0, 99999)) { return $html; } if (!$Validation->isBool($attribute['auto'])) { return $html; } if (!$Validation->isBool($attribute['pause'])) { return $html; } if (!array_key_exists($attribute['easing'], $Easing->easingType)) { return $html; } if (!array_key_exists($attribute['trigger'], $this->tabOpenTriggerEvent)) { return $html; } if (!$Validation->isBool($attribute['display_slide_title'])) { return $html; } if (!$Validation->isBool($attribute['display_slide_excerpt'])) { return $html; } $imageSize = $Image->getImageDimension($attribute['image_size']); if ($imageSize === false) { return $html; } $key = array('preloader_enable', 'starting_slide', 'timeout', 'speed', 'auto', 'pause', 'easing', 'trigger', 'display_slide_title', 'display_slide_excerpt'); foreach ($key as $index) { $option[$index] = $attribute[$index]; } $option['width'] = $imageSize['width']; $option['height'] = $imageSize['height']; $class = array(array(), array(), array(), array()); array_push($class[0], 'pb-zaccordion', $attribute['css_class']); array_push($class[1], 'pb-reset-list'); if ($attribute['preloader_enable'] == 1) { array_push($class[1], 'pb-preloader'); array_push($class[2], 'pb-image-box', 'pb-image-preloader'); } array_push($class[3], 'pb-image'); global $post; $bPost = $post; while ($query->have_posts()) { $query->the_post(); $url = null; if ($attribute['data_source'] == 1) { $meta = PBMeta::get($post->ID); PBHelper::removeUIndex($meta, 'media_library_url'); if ($Validation->isNotEmpty($attribute['url'])) { $url = $attribute['url']; } elseif ($Validation->isNotEmpty($meta['media_library_url'])) { $url = $meta['media_library_url']; } $src = wp_get_attachment_image_src(get_the_ID(), $attribute['image_size']); } else { $url = get_the_permalink(); $src = wp_get_attachment_image_src(get_post_thumbnail_id(get_the_ID()), $attribute['image_size']); } $captionHTML = null; if ($attribute['display_slide_title'] == 1) { $captionHTML .= '<span' . PBHelper::createClassAttribute(array('pb-zaccordion-caption-box-title')) . '>' . ($attribute['data_source'] == 1 ? strip_tags(get_the_excerpt()) : get_the_title()) . '</span>'; } if ($attribute['display_slide_excerpt'] == 1) { $captionHTML .= '<span' . PBHelper::createClassAttribute(array('pb-zaccordion-caption-box-excerpt')) . '>' . ($attribute['data_source'] == 1 ? get_the_content() : strip_tags(get_the_excerpt())) . '</span>'; } if ($Validation->isNotEmpty($captionHTML)) { $captionHTML = '<span' . PBHelper::createClassAttribute(array('pb-zaccordion-caption-box"')) . '>' . $captionHTML . '</span>'; } $imageHTML = null; if ($Validation->isNotEmpty($url)) { $imageHTML = '<a href="' . esc_attr($url) . '"' . PBHelper::createClassAttribute($class[3]) . '><img src="' . $src[0] . '" alt=""/>' . $captionHTML . '</a>'; } else { $imageHTML = '<img src="' . $src[0] . '" alt="" data-thumb="' . $src[0] . '"/>' . $captionHTML; } $imageBoxHTML .= ' <li> <div' . PBHelper::createClassAttribute($class[2]) . '>' . $imageHTML . '</div> </li> '; } wp_reset_query(); $post = $bPost; $id = PBHelper::createId('accordion'); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . '> <ul' . PBHelper::createClassAttribute($class[1]) . ' id="' . $id . '"> ' . $imageBoxHTML . ' </ul> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBZAccordion(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeBox($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $option = array(); $style = array(array(), array()); $Border = new PBBorder(); $Validation = new PBValidation(); /***/ if (!$Validation->isBool($attribute['icon_enable'])) { return $html; } if (!array_key_exists($attribute['icon_size'], $this->icon)) { return $html; } if (!array_key_exists($attribute['icon_position'], $this->iconPosition)) { return $html; } /***/ if ($Validation->isColor($attribute['background_color'])) { $style[0]['background-color'] = PBColor::getColor($attribute['background_color']); } if (array_key_exists($attribute['border_top_style'], $Border->style)) { $style[0]['border-top-style'] = $attribute['border_top_style']; } if ($Validation->isNumber($attribute['border_top_width'], 0, 999)) { $style[0]['border-top-width'] = $attribute['border_top_width'] . 'px'; } if ($Validation->isColor($attribute['border_top_color'])) { $style[0]['border-top-color'] = PBColor::getColor($attribute['border_top_color']); } if ($Validation->isNumber($attribute['border_top_radius'], 0, 999)) { $style[0]['-webkit-border-top-left-radius'] = $attribute['border_top_radius'] . 'px'; $style[0]['-moz-border-radius-topleft'] = $attribute['border_top_radius'] . 'px'; $style[0]['border-top-left-radius'] = $attribute['border_top_radius'] . 'px'; } if (array_key_exists($attribute['border_right_style'], $Border->style)) { $style[0]['border-right-style'] = $attribute['border_right_style']; } if ($Validation->isNumber($attribute['border_right_width'], 0, 999)) { $style[0]['border-right-width'] = $attribute['border_right_width'] . 'px'; } if ($Validation->isColor($attribute['border_right_color'])) { $style[0]['border-right-color'] = PBColor::getColor($attribute['border_right_color']); } if ($Validation->isNumber($attribute['border_right_radius'], 0, 999)) { $style[0]['-webkit-border-top-right-radius'] = $attribute['border_right_radius'] . 'px'; $style[0]['-moz-border-radius-topright'] = $attribute['border_right_radius'] . 'px'; $style[0]['border-top-right-radius'] = $attribute['border_right_radius'] . 'px'; } if (array_key_exists($attribute['border_bottom_style'], $Border->style)) { $style[0]['border-bottom-style'] = $attribute['border_bottom_style']; } if ($Validation->isNumber($attribute['border_bottom_width'], 0, 999)) { $style[0]['border-bottom-width'] = $attribute['border_bottom_width'] . 'px'; } if ($Validation->isColor($attribute['border_bottom_color'])) { $style[0]['border-bottom-color'] = PBColor::getColor($attribute['border_bottom_color']); } if ($Validation->isNumber($attribute['border_bottom_radius'], 0, 999)) { $style[0]['-webkit-border-bottom-right-radius'] = $attribute['border_bottom_radius'] . 'px'; $style[0]['-moz-border-radius-bottomright'] = $attribute['border_bottom_radius'] . 'px'; $style[0]['border-bottom-right-radius'] = $attribute['border_bottom_radius'] . 'px'; } if (array_key_exists($attribute['border_left_style'], $Border->style)) { $style[0]['border-left-style'] = $attribute['border_left_style']; } if ($Validation->isNumber($attribute['border_left_width'], 0, 999)) { $style[0]['border-left-width'] = $attribute['border_left_width'] . 'px'; } if ($Validation->isColor($attribute['border_left_color'])) { $style[0]['border-left-color'] = PBColor::getColor($attribute['border_left_color']); } if ($Validation->isNumber($attribute['border_left_radius'], 0, 999)) { $style[0]['-webkit-border-bottom-left-radius'] = $attribute['border_left_radius'] . 'px'; $style[0]['-moz-border-radius-bottomleft'] = $attribute['border_left_radius'] . 'px'; $style[0]['border-bottom-left-radius'] = $attribute['border_left_radius'] . 'px'; } if ($Validation->isNumber($attribute['padding_top'], 0, 999)) { $style[0]['padding-top'] = $attribute['padding_top'] . 'px'; } if ($Validation->isNumber($attribute['padding_right'], 0, 999)) { $style[0]['padding-right'] = $attribute['padding_right'] . 'px'; } if ($Validation->isNumber($attribute['padding_bottom'], 0, 999)) { $style[0]['padding-bottom'] = $attribute['padding_bottom'] . 'px'; } if ($Validation->isNumber($attribute['padding_left'], 0, 999)) { $style[0]['padding-left'] = $attribute['padding_left'] . 'px'; } if ($Validation->isColor($attribute['text_color_link'])) { $option['out']['color'] = PBColor::getColor($attribute['text_color_link']); } if ($Validation->isColor($attribute['text_color_link_hover'])) { $option['in']['color'] = PBColor::getColor($attribute['text_color_link_hover']); } $id = PBHelper::createId('pb_box'); $class[0] = array('pb-box', 'pb-clear-fix', $attribute['css_class']); if ($attribute['icon_enable'] == 1) { array_push($class[0], 'pb-box-icon'); array_push($class[0], 'pb-box-icon-size-' . $attribute['icon_size']); array_push($class[0], 'pb-box-icon-position-' . $attribute['icon_position']); array_push($class[0], 'pb-box-icon-' . PBHelper::createHash($attribute['icon'])); if ($Validation->isNotEmpty($attribute['icon_background_position'])) { $style[1]['background-position'] = $attribute['icon_background_position']; } } $class[1] = array('pb-box-inner'); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . PBHelper::createStyleAttribute($style[0]) . ' id="' . $id . '"> <div' . PBHelper::createClassAttribute($class[1]) . PBHelper::createStyleAttribute($style[1]) . '> ' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . ' </div> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBBox(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html, PBHelper::formatContent($content, true, false, false)); }
function processShortcodeButton($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $option = array(); $class = array_fill(0, 4, array()); $style = array_fill(0, 4, array()); $Font = new PBFont(); $Window = new PBWindow(); $Border = new PBBorder(); $Validation = new PBValidation(); if ($Validation->isEmpty($content)) { return $html; } if ($Validation->isEmpty($attribute['src'])) { return $html; } if (!$Validation->isBool($attribute['arrow_enable'])) { return $html; } if (!$Validation->isBool($attribute['icon_enable'])) { return $html; } if (!array_key_exists($attribute['size'], $this->buttonSize)) { return $html; } if (!array_key_exists($attribute['src_target'], $Window->linkTarget)) { return $html; } if ($attribute['icon_enable'] == 1) { if ($Validation->isEmpty($attribute['icon'])) { return $html; } if (!in_array($attribute['icon_position'], array_keys($this->buttonIconPosition))) { return $html; } } /***/ if ($Validation->isColor($attribute['text_color'])) { $style[1]['color'] = PBColor::getColor($attribute['text_color']); $option['out']['color'] = $style[1]['color']; } if ($Validation->isColor($attribute['bg_color'])) { $style[1]['background-color'] = PBColor::getColor($attribute['bg_color']); $option['out']['background-color'] = $style[1]['background-color']; } if ($attribute['border_style'] != -1) { if (array_key_exists($attribute['border_style'], $Border->style)) { $style[1]['border-style'] = $attribute['border_style']; $option['out']['border-style'] = $style[1]['border-style']; } } if ($Validation->isColor($attribute['border_color'])) { $style[1]['border-color'] = PBColor::getColor($attribute['border_color']); $option['out']['border-color'] = $style[1]['border-color']; } if ($Validation->isNumber($attribute['border_width'], 0, 999)) { $style[1]['border-width'] = $attribute['border_width'] . 'px'; $option['out']['border-width'] = $style[1]['border-width']; } if ($Validation->isNumber($attribute['border_radius'], 0, 999)) { $style[1]['border-radius'] = $attribute['border_radius'] . 'px'; $option['out']['border-radius'] = $style[1]['border-radius']; } if ($attribute['font_weight'] != -1) { if (array_key_exists($attribute['font_weight'], $Font->weight)) { $style[1]['font-weight'] = $attribute['font_weight']; $option['out']['font-weight'] = $style[1]['font-weight']; } } /***/ if ($Validation->isColor($attribute['text_color_hover'])) { $option['in']['color'] = PBColor::getColor($attribute['text_color_hover']); } if ($Validation->isColor($attribute['bg_color_hover'])) { $option['in']['background-color'] = PBColor::getColor($attribute['bg_color_hover']); } if ($attribute['border_style_hover'] != -1) { if (array_key_exists($attribute['border_style_hover'], $Border->style)) { $option['in']['border-style'] = $attribute['border_style_hover']; } } if ($Validation->isColor($attribute['border_color_hover'])) { $option['in']['border-color'] = PBColor::getColor($attribute['border_color_hover']); } if ($Validation->isNumber($attribute['border_width_hover'], 0, 999)) { $option['in']['border-width'] = $attribute['border_width_hover'] . 'px'; } if ($Validation->isNumber($attribute['border_radius_hover'], 0, 999)) { $option['in']['border-radius'] = $attribute['border_radius_hover'] . 'px'; } if ($attribute['font_weight'] != -1) { if (array_key_exists($attribute['font_weight_hover'], $Font->weight)) { $option['in']['font-weight'] = $attribute['font_weight_hover']; } } /***/ $class[0] = array('pb-button'); $class[1] = array($Window->getTargetCSSClass($attribute['src_target'])); $class[2] = array('pb-button-icon'); $class[3] = array('pb-button-content'); array_push($class[0], 'pb-button-size-' . $attribute['size']); if ($attribute['icon_enable'] == 1) { array_push($class[0], 'pb-button-icon'); array_push($class[0], 'pb-button-icon-position-' . $attribute['icon_position']); array_push($class[2], 'pb-button-icon-' . PBHelper::createHash($attribute['icon'])); } $class[0][] = $attribute['css_class']; $id = PBHelper::createId('pb_button'); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . ' id="' . $id . '"> <a href="' . esc_attr($attribute['src']) . '"' . PBHelper::createClassAttribute($class[1]) . PBHelper::createStyleAttribute($style[1]) . '> <span class="pb-button-box"> <span' . PBHelper::createClassAttribute($class[2]) . PBHelper::createStyleAttribute($style[2]) . '></span> <span' . PBHelper::createClassAttribute($class[3]) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . ($attribute['arrow_enable'] == 1 ? '<i class="pb-button-arrow pb-button-arrow-right"></i>' : null) . '</span> </span> </a> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBButton(' . json_encode($option) . '); }); </script> </div> </div> '; return PBHelper::formatHTML($html, $content); }
function processShortcodeMenu($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Easing = new PBEasing(); $Validation = new PBValidation(); if (!array_key_exists($attribute['responsive_mode'], $this->responiveMode)) { return; } if (!$Validation->isBool($attribute['sticky_enable'])) { return; } if (!$Validation->isBool($attribute['hide_scroll_enable'])) { return; } if (!$Validation->isBool($attribute['menu_animation_enable'])) { return; } if (!$Validation->isNumber($attribute['menu_animation_speed_open'], 0, 99999)) { return; } if (!$Validation->isNumber($attribute['menu_animation_speed_close'], 0, 99999)) { return; } if (!$Validation->isNumber($attribute['menu_animation_delay'], 0, 99999)) { return; } if (!$Validation->isBool($attribute['scroll_animation_enable'])) { return; } if (!$Validation->isNumber($attribute['scroll_animation_speed'], 0, 99999)) { return; } if (!array_key_exists($attribute['scroll_animation_easing'], $Easing->easingType)) { return; } $html = null; $logoHTML = null; $option = array(); $key = array('responsive_mode', 'sticky_enable', 'hide_scroll_enable', 'menu_animation_enable', 'menu_animation_speed_open', 'menu_animation_speed_close', 'menu_animation_delay', 'scroll_animation_enable', 'scroll_animation_speed', 'scroll_animation_easing'); foreach ($key as $value) { $option[$value] = $attribute[$value]; } $option['responsive_menu_id'] = PBHelper::createId('pb_menu_responsive'); $option['responsive_menu_label'] = __('Menu'); $id = PBHelper::createId('pb_menu'); $classLogo = array('pb-logo'); $classMenu = array('pb-menu-default'); $classMenuResponsive = array('pb-menu-responsive'); $class = array('pb-menu', $attribute['css_class']); $menuAttribute = array('menu' => $attribute['menu_id'], 'walker' => new PBMenuWalker(), 'menu_class' => 'sf-menu pb-reset-list pb-clear-fix', 'container' => '', 'container_class' => '', 'echo' => 0); $menuResponsiveAttribute = array('id' => $option['responsive_menu_id'], 'menu' => $attribute['menu_id'], 'walker' => new PBMenuResponsiveWalker(), 'menu_class' => 'pb-clear-fix', 'container' => '', 'container_class' => '', 'echo' => 0, 'items_wrap' => '<div id="%1$s" class="%2$s"><div id="' . $option['responsive_menu_id'] . '"><ul>%3$s</ul></div></div>'); if ($Validation->isURL($attribute['logo_src'])) { $logoHTML = ' <a href="' . get_home_url() . '"> <img src="' . esc_attr($attribute['logo_src']) . '" alt=""/> </a> '; } $html = ' <div' . PBHelper::createClassAttribute($class) . ' id="' . $id . '"> <div class="pb-main pb-clear-fix"> <div' . PBHelper::createClassAttribute($classLogo) . '> ' . $logoHTML . ' </div> <div' . PBHelper::createClassAttribute($classMenu) . '> ' . wp_nav_menu($menuAttribute) . ' </div> <div' . PBHelper::createClassAttribute($classMenuResponsive) . '> ' . wp_nav_menu($menuResponsiveAttribute) . ' </div> </div> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBMenu(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatCode($html); }
function adminSaveMetaBox($postId) { if ($_POST) { if (PBHelper::checkSavePost($postId, PLUGIN_PAGE_BUILDER_CONTEXT . '_team_noncename', 'adminSaveMetaBox') === false) { return false; } $option = PBHelper::getPOSTOption('team'); $Validation = new PBValidation(); /***/ PBHelper::removeUIndex($option, 'team_skill_name', 'team_skill_level', 'team_skill_order'); $skill = array('team_skill_name' => $option['team_skill_name'], 'team_skill_level' => $option['team_skill_level'], 'team_skill_order' => $option['team_skill_order']); unset($option['team_skill_name'], $option['team_skill_level'], $option['team_skill_order']); foreach ($skill['team_skill_name'] as $index => $value) { if ($Validation->isEmpty($value)) { continue; } if (!array_key_exists($index, $skill['team_skill_level'])) { continue; } if (!$Validation->isNumber($skill['team_skill_level'][$index], 1, 100)) { continue; } $option['team_skill'][] = array('team_skill_name' => $value, 'team_skill_level' => $skill['team_skill_level'][$index], 'team_skill_order' => array_key_exists($index, $skill['team_skill_order']) ? $skill['team_skill_order'][$index] : 0); } /***/ PBHelper::removeUIndex($option, 'team_social_name', 'team_social_url', 'team_social_order'); $social = array('team_social_name' => $option['team_social_name'], 'team_social_url' => $option['team_social_url'], 'team_social_order' => $option['team_social_order']); unset($option['team_social_name'], $option['team_social_url'], $option['team_social_order']); foreach ($social['team_social_name'] as $index => $value) { if (!array_key_exists($value, $this->social)) { continue; } if (!array_key_exists($index, $social['team_social_url'])) { continue; } if (!$Validation->isURL($social['team_social_url'][$index])) { continue; } $option['team_social'][] = array('team_social_name' => $value, 'team_social_url' => $social['team_social_url'][$index], 'team_social_order' => array_key_exists($index, $social['team_social_order']) ? $social['team_social_order'][$index] : 0); } PBMeta::update($postId, $option); } }
function processShortcodeFeature($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Border = new PBBorder(); $Layout = new PBLayout(); $Easing = new PBEasing(); $Validation = new PBValidation(); $CarouFredSel = new PBCarouFredSel(); /***/ if (!array_key_exists($attribute['layout'], $this->layout)) { return $html; } if (!array_key_exists($attribute['icon_position'], $this->iconPosition)) { return $html; } if (!$Validation->isBool($attribute['carousel_autoplay_enable'])) { return $html; } if (!$Validation->isBool($attribute['carousel_circular_enable'])) { return $html; } if (!$Validation->isBool($attribute['carousel_infinite_enable'])) { return $html; } if (!$Validation->isBool($attribute['carousel_scroll_pause_hover'])) { return $html; } if (!array_key_exists($attribute['carousel_scroll_fx'], $CarouFredSel->scrollFX)) { return $html; } if (!array_key_exists($attribute['carousel_scroll_easing'], $Easing->easingType)) { return $html; } if (!$Validation->isNumber($attribute['carousel_scroll_duration'], 0, 99999)) { return $html; } if (!array_key_exists($attribute['waypoint_type'], $this->waypointType)) { return $html; } if (!$Validation->isNumber($attribute['waypoint_duration'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['waypoint_opacity_initial'], 0, 100)) { return $html; } if (!array_key_exists($attribute['icon_size'], $this->icon)) { return $html; } /***/ $this->attrLayout = $attribute['layout']; $this->attrLayoutColumnIndex = 0; $option = array(); $key = array('carousel_enable', 'carousel_autoplay_enable', 'carousel_circular_enable', 'carousel_infinite_enable', 'carousel_scroll_pause_hover', 'carousel_scroll_fx', 'carousel_scroll_easing', 'carousel_scroll_duration'); foreach ($key as $index) { $option['carousel'][$index] = $attribute[$index]; } $key = array('waypoint_type', 'waypoint_easing', 'waypoint_duration', 'waypoint_offset_trigger', 'waypoint_opacity_initial'); foreach ($key as $index) { $option['waypoint'][$index] = $attribute[$index]; } /**/ $this->style = array('odd' => array(), 'even' => array()); foreach ($this->style as $index => $value) { if (PBComponentData::get($this->getComponentId(), 'icon_type') !== 'gr') { if ($Validation->isColor($attribute['element_' . $index . '_icon_color'])) { $this->style[$index]['color'] = PBColor::getColor($attribute['element_' . $index . '_icon_color']); } } if ($Validation->isColor($attribute['element_' . $index . '_icon_bg_color'])) { $this->style[$index]['background-color'] = PBColor::getColor($attribute['element_' . $index . '_icon_bg_color']); } if (array_key_exists($attribute['element_' . $index . '_icon_border_style'], $Border->style)) { $this->style[$index]['border-style'] = $attribute['element_' . $index . '_icon_border_style']; } if ($Validation->isColor($attribute['element_' . $index . '_icon_border_color'])) { $this->style[$index]['border-color'] = PBColor::getColor($attribute['element_' . $index . '_icon_border_color']); } if ($Validation->isNumber($attribute['element_' . $index . '_icon_border_width'], 0, 999)) { $this->style[$index]['border-width'] = $attribute['element_' . $index . '_icon_border_width'] . 'px'; } if ($Validation->isNumber($attribute['element_' . $index . '_icon_border_radius'], 0, 100)) { $this->style[$index]['border-radius'] = $attribute['element_' . $index . '_icon_border_radius'] . '%'; } } /**/ $this->attrIconSize = $attribute['icon_size']; $this->attrIconPosition = $attribute['icon_position']; $id = PBHelper::createId('pb_feature'); $class = array(array('pb-feature', 'pb-feature-icon-size-' . $attribute['icon_size'], 'pb-feature-icon-position-' . $attribute['icon_position'], 'pb-clear-fix'), array($Layout->getLayoutCSSClass($attribute['layout']), 'pb-reset-list', 'pb-clear-fix')); if (PBComponentData::get($this->getComponentId(), 'icon_type') === 'gr') { array_push($class[0], 'pb-feature-icon-type-gr'); } else { array_push($class[0], 'pb-feature-icon-type-fa'); } array_push($class[0], $attribute['css_class']); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . ' id="' . $id . '"> <ul' . PBHelper::createClassAttribute($class[1]) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '</ul> <div class="pb-slider-pagination"></div> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $("#' . $id . '").PBFeature(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html, PBHelper::formatContent($content, true, false, false)); }
function processShortcodeNotice($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Validation = new PBValidation(); $style = array(array(), array()); if ($Validation->isColor($attribute['box_bg_color'])) { $style[1]['background-color'] = PBColor::getColor($attribute['box_bg_color']); } if ($Validation->isNumber($attribute['box_border_top_width'], 0, 9999)) { $style[1]['border-top-width'] = $attribute['box_border_top_width'] . 'px'; } if ($Validation->isColor($attribute['box_border_top_color'])) { $style[1]['border-top-color'] = PBColor::getColor($attribute['box_border_top_color']); } if ($Validation->isNumber($attribute['box_border_right_width'], 0, 9999)) { $style[1]['border-right-width'] = $attribute['box_border_right_width'] . 'px'; } if ($Validation->isColor($attribute['box_border_right_color'])) { $style[1]['border-right-color'] = PBColor::getColor($attribute['box_border_right_color']); } if ($Validation->isNumber($attribute['box_border_bottom_width'], 0, 9999)) { $style[1]['border-bottom-width'] = $attribute['box_border_bottom_width'] . 'px'; } if ($Validation->isColor($attribute['box_border_bottom_color'])) { $style[1]['border-bottom-color'] = PBColor::getColor($attribute['box_border_bottom_color']); } if ($Validation->isNumber($attribute['box_border_left_width'], 0, 9999)) { $style[1]['border-left-width'] = $attribute['box_border_left_width'] . 'px'; } if ($Validation->isColor($attribute['box_border_left_color'])) { $style[1]['border-left-color'] = PBColor::getColor($attribute['box_border_left_color']); } $class = array('pb-notice', $attribute['css_class']); $id = PBHelper::createId('pb_notice'); $timelineHTML = null; $closeButtonHTML = null; /***/ if ($Validation->isNotEmpty($attribute['icon'])) { array_push($class, 'pb-notice-icon', 'pb-notice-icon-' . PBHelper::createHash($attribute['icon'])); if ($Validation->isColor($attribute['icon_bg_color'])) { $style[0]['background-color'] = PBColor::getColor($attribute['icon_bg_color']); } } /***/ if ($attribute['timeline_enable'] == 1 && $attribute['timeline_time_to_close'] > 0) { $tStyle = array(array(), array()); $tClass = array('pb-notice-timeline'); if ($Validation->isNumber($attribute['timeline_height'], 0, 9999)) { $tStyle[0]['height'] = $attribute['timeline_height'] . 'px'; } if ($Validation->isColor($attribute['timeline_bg_color'])) { $tStyle[1]['background-color'] = PBColor::getColor($attribute['timeline_bg_color']); } array_push($class, 'pb-notice-time-to-close-' . (int) $attribute['timeline_time_to_close']); $timelineHTML = ' <div' . PBHelper::createClassAttribute($tClass) . PBHelper::createStyleAttribute($tStyle[0]) . '> <div' . PBHelper::createStyleAttribute($tStyle[1]) . '></div> </div> '; } /***/ $tStyle = array(); $tClass = array('pb-notice-close-button'); if ($Validation->isColor($attribute['close_button_text_color'])) { $tStyle['color'] = PBColor::getColor($attribute['close_button_text_color']); } $label = $Validation->isNotEmpty($timelineHTML) ? sprintf(__('Close within <span>%s</span> seconds', PLUGIN_PAGE_BUILDER_DOMAIN), $attribute['timeline_time_to_close']) : __('Close', PLUGIN_PAGE_BUILDER_DOMAIN); if ($attribute['close_button_enable'] != 1) { $tStyle['display'] = 'none'; } $closeButtonHTML = ' <div><a href="#"' . PBHelper::createClassAttribute($tClass) . PBHelper::createStyleAttribute($tStyle) . '>' . $label . '</a></div> '; /***/ $html = ' <div' . PBHelper::createClassAttribute($class) . PBHelper::createStyleAttribute($style[0]) . ' id="' . esc_attr($id) . '"> <div class="pb-notice-content"' . PBHelper::createStyleAttribute($style[1]) . '> ' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . ' ' . $timelineHTML . ' ' . $closeButtonHTML . ' </div> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $("#' . $id . '").PBNotice(); }); </script> </div> '; return PBHelper::formatHTML($html, PBHelper::formatContent($content, true, false, false)); }
function processShortcodeSocialIcon($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $style = array(); $social = array(); $Window = new PBWindow(); $Validation = new PBValidation(); if (!array_key_exists($attribute['target'], $Window->linkTarget)) { return $html; } if (!$Validation->isBool($attribute['native_color_enable'])) { return $html; } foreach ($this->social as $index => $value) { $url = 'profile_' . $index . '_url'; $order = 'profile_' . $index . '_order'; PBHelper::removeUIndex($attribute, $url, $order); if (!$Validation->isURL($attribute[$url])) { continue; } $orderValue = (int) $attribute[$order]; $socialData = array('id' => $index, 'url' => $attribute[$url]); if ($Validation->isNumber($attribute[$order], 0, 99)) { if (isset($social[$orderValue])) { array_push($social, $socialData); } else { $social[$orderValue] = $socialData; } } else { array_push($social, $socialData); } } ksort($social); if (!count($social)) { return; } $option = array('in' => array(), 'out' => array()); if ($Validation->isNumber($attribute['width'], 0, 999)) { $style['width'] = $attribute['width'] . 'px'; } if ($Validation->isNumber($attribute['height'], 0, 999)) { $style['height'] = $attribute['height'] . 'px'; } $borderRadius = null; if ($Validation->isNumber($attribute['border_radius_top_left'], 0, 999)) { $borderRadius .= ' ' . $attribute['border_radius_top_left'] . 'px'; } else { $borderRadius .= ' 0px'; } if ($Validation->isNumber($attribute['border_radius_top_right'], 0, 999)) { $borderRadius .= ' ' . $attribute['border_radius_top_right'] . 'px'; } else { $borderRadius .= ' 0px'; } if ($Validation->isNumber($attribute['border_radius_bottom_right'], 0, 999)) { $borderRadius .= ' ' . $attribute['border_radius_bottom_right'] . 'px'; } else { $borderRadius .= ' 0px'; } if ($Validation->isNumber($attribute['border_radius_bottom_left'], 0, 999)) { $borderRadius .= ' ' . $attribute['border_radius_bottom_left'] . 'px'; } else { $borderRadius .= ' 0px'; } $borderRadius = trim($borderRadius); $style['-webkit-border-radius'] = $borderRadius; $style['-moz-border-radius'] = $borderRadius; $style['border-radius'] = $borderRadius; if ($Validation->isNumber($attribute['border_width'], 0, 999)) { $style['border-width'] = $attribute['border_width'] . 'px'; $option['out']['border-width'] = $style['border-width']; } if ($Validation->isColor($attribute['bg_color'])) { $style['background-color'] = PBColor::getColor($attribute['bg_color']); $option['out']['background-color'] = $style['background-color']; } if ($Validation->isColor($attribute['border_color'])) { $style['border-color'] = PBColor::getColor($attribute['border_color']); $option['out']['border-color'] = $style['border-color']; } if ($Validation->isNumber($attribute['border_width_hover'], 0, 999)) { $option['in']['border-width'] = $attribute['border_width_hover'] . 'px'; } if ($Validation->isColor($attribute['bg_color_hover'])) { $option['in']['background-color'] = PBColor::getColor($attribute['bg_color_hover']); } if ($Validation->isColor($attribute['border_color_hover'])) { $option['in']['border-color'] = PBColor::getColor($attribute['border_color_hover']); } foreach ($social as $index => $value) { $class = array('pb-social-icon-' . $value['id'], $Window->getTargetCSSClass($attribute['target'])); $html .= ' <li><a href="' . esc_attr($value['url']) . '"' . PBHelper::createClassAttribute($class) . PBHelper::createStyleAttribute($style) . '></a></li> '; } $id = PBHelper::createId('pb_social_icon'); $class = array('pb-social-icon'); if ($attribute['native_color_enable'] == 1) { array_push($class, 'pb-social-icon-color-native'); } array_push($class, 'pb-reset-list', 'pb-clear-fix', $attribute['css_class']); $html = ' <ul' . PBHelper::createClassAttribute($class) . ' id="' . esc_attr($id) . '"> ' . $html . ' </ul> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBSocialIcon(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeCallToActionButton($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $style = array(); $option = array(); $Window = new PBWindow(); $Validation = new PBValidation(); $src = !$Validation->isEmpty($attribute['src']) ? $attribute['src'] : '#'; $class = array($Window->getTargetCSSClass($attribute['src_target'])); if ($Validation->isColor($attribute['text_color'])) { $style['color'] = PBColor::getColor($attribute['text_color']); $option['out']['color'] = $style['color']; } if ($Validation->isColor($attribute['bg_color'])) { $style['background-color'] = PBColor::getColor($attribute['bg_color']); $option['out']['background-color'] = $style['background-color']; } if ($Validation->isColor($attribute['border_color'])) { $style['border-color'] = PBColor::getColor($attribute['border_color']); $option['out']['border-color'] = $style['border-color']; } if ($Validation->isColor($attribute['text_color_hover'])) { $option['in']['color'] = PBColor::getColor($attribute['text_color_hover']); } if ($Validation->isColor($attribute['bg_color_hover'])) { $option['in']['background-color'] = PBColor::getColor($attribute['bg_color_hover']); } if ($Validation->isColor($attribute['border_color_hover'])) { $option['in']['border-color'] = PBColor::getColor($attribute['border_color_hover']); } if ($Validation->isNumber($attribute['padding_top'], 0, 9999)) { $style['padding-top'] = $attribute['padding_top'] . 'px'; } if ($Validation->isNumber($attribute['padding_right'], 0, 9999)) { $style['padding-right'] = $attribute['padding_right'] . 'px'; } if ($Validation->isNumber($attribute['padding_bottom'], 0, 9999)) { $style['padding-bottom'] = $attribute['padding_bottom'] . 'px'; } if ($Validation->isNumber($attribute['padding_left'], 0, 9999)) { $style['padding-left'] = $attribute['padding_left'] . 'px'; } if ($Validation->isNumber($attribute['margin_top'], -9999, 9999)) { $style['margin-top'] = $attribute['margin_top'] . 'px'; } if ($Validation->isNumber($attribute['margin_bottom'], -9999, 9999)) { $style['margin-bottom'] = $attribute['margin_bottom'] . 'px'; } $html = ' <div> <a href="' . $src . '"' . PBHelper::createClassAttribute($class) . PBHelper::createStyleAttribute($style) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '<i class="pb-button-arrow pb-button-arrow-right"></i></a> <input type="hidden" value="' . esc_attr(json_encode($option)) . '"/> </div> '; return PBHelper::formatHTML($html, $content); }
function processShortcodeRecentPost($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $html = null; $Layout = new PBLayout(); $Validation = new PBValidation(); $ImageHover = new PBImageHover(); if (!PBFile::isWPImage($attribute['image_size'])) { return $html; } if (!array_key_exists($attribute['layout'], $this->layout)) { return $html; } if (!array_key_exists($attribute['template'], $this->template)) { return $html; } if (!$Validation->isNumber($attribute['post_count'], 1, 999)) { return $html; } if (!$Validation->isBool($attribute['preloader_enable'])) { return $html; } if (!$Validation->isBool($attribute['hover_enable'])) { return $html; } if (!array_key_exists($attribute['hover_type'], $ImageHover->type)) { return $html; } if (!$Validation->isBool($attribute['date_enable'])) { return $html; } if (!$Validation->isBool($attribute['image_enable'])) { return $html; } if (!$Validation->isBool($attribute['header_enable'])) { return $html; } if (!$Validation->isBool($attribute['author_enable'])) { return $html; } if (!$Validation->isBool($attribute['excerpt_enable'])) { return $html; } if (!$Validation->isBool($attribute['category_enable'])) { return $html; } $option = array(); $key = array('hover_type', 'hover_enable', 'preloader_enable'); foreach ($key as $index) { $option[$index] = $attribute[$index]; } $data = $this->getPost($attribute); if ($data === false) { return null; } if (!count($data->posts)) { return null; } $i = 0; global $post; $bPost = $post; while ($data->have_posts()) { $data->the_post(); $class = array('pb-layout-' . $Layout->getLayoutColumnCSSClass($attribute['layout'], $i)); $meta = array('date' => null, 'comment_count' => null, 'image' => null, 'header' => null, 'excerpt' => null, 'meta' => null); if ($attribute['date_enable']) { $meta['date'] = '<div class="pb-recent-post-date">' . get_the_date() . '</div>'; } if ($attribute['image_enable']) { if (has_post_thumbnail()) { $commentCountHTML = null; if ($attribute['template'] == 1) { if ($attribute['comment_count_enable'] == 1 && comments_open(get_the_id())) { $commentCount = wp_count_comments(get_the_id()); $commentCountHTML = '<div class="pb-recent-post-comment-count"><span class="pb-recent-post-comment-count-value">' . $commentCount->approved . '</span><span class="pb-recent-post-comment-count-arrow"></span></div>'; } } $classImage = array(array('pb-recent-post-image', 'pb-image-box'), array('pb-image')); if ($attribute['preloader_enable'] == 1) { array_push($classImage[0], 'pb-image-preloader', 'pb-image-preloader-animation-enable'); } if ($attribute['hover_enable'] == 1) { array_push($classImage[0], 'pb-image-hover', 'pb-image-hover-type-' . $attribute['hover_type']); } if ($attribute['hover_enable'] == 1) { $meta['image'] = '<a href="' . get_permalink(get_the_ID()) . '"' . PBHelper::createClassAttribute($classImage[1]) . '>' . get_the_post_thumbnail(get_the_ID(), $attribute['image_size']) . '<span><span><span></span></span></span></a>'; } else { $meta['image'] = '<div' . PBHelper::createClassAttribute($classImage[1]) . '>' . get_the_post_thumbnail(get_the_ID(), $attribute['image_size']) . '</div>'; } $meta['image'] = '<div' . PBHelper::createClassAttribute($classImage[0]) . '>' . $meta['image'] . $commentCountHTML . '</div>'; } } if ($attribute['header_enable']) { $meta['header'] = '<h' . PBComponentData::get($this->getComponentId(), 'header_important_default') . ' class="pb-recent-post-header"><a href="' . get_permalink(get_the_ID()) . '">' . get_the_title() . '</a></h' . PBComponentData::get($this->getComponentId(), 'header_important_default') . '>'; } if ($attribute['excerpt_enable']) { $meta['excerpt'] = '<div class="pb-recent-post-excerpt">' . get_the_excerpt() . '</div>'; } if ($attribute['author_enable'] || $attribute['category_enable'] || $attribute['template'] == 2 && $attribute['comment_count_enable'] == 1 && comments_open(get_the_id())) { $authorHTML = null; $categoryHTML = null; $commentCountHTML = null; if ($attribute['author_enable']) { $authorHTML = '<div class="pb-recent-post-meta-author">' . get_the_author() . '</div>'; } $category = get_the_category(get_the_ID()); $count = count($category); if ($count) { foreach ($category as $index => $value) { $separator = $index == $count - 1 ? '' : ', '; $title = $Validation->isEmpty($value->description) ? sprintf(__('View all posts filed under %s', PLUGIN_PAGE_BUILDER_DOMAIN), $value->name) : strip_tags(apply_filters('category_description', $value->description, $value)); $categoryHTML .= '<li><a href="' . get_category_link($value->term_id) . '" title="' . esc_attr($title) . '">' . esc_html($value->name) . '</a>' . $separator . '</li>'; } $categoryHTML = '<div class="pb-recent-post-meta-category"><ul class="pb-reset-list">' . $categoryHTML . '</ul></div>'; } if ($attribute['template'] == 2) { if ($attribute['comment_count_enable'] == 1 && comments_open(get_the_id())) { $commentCount = wp_count_comments(get_the_id()); $commentCountHTML = '<div class="pb-recent-post-meta-comment-count">' . __(sprintf('%d Comments', $commentCount->approved), PLUGIN_PAGE_BUILDER_DOMAIN) . '</div>'; } } $meta['meta'] = '<div class="pb-recent-post-meta pb-clear-fix">' . $authorHTML . $categoryHTML . $commentCountHTML . '</div>'; } $templateHTML = array(); $templateOrder = array('date', 'image', 'header', 'excerpt', 'meta'); if ($attribute['template'] == 2) { $templateOrder = array('image', 'header', 'date', 'excerpt', 'meta'); } foreach ($templateOrder as $value) { if (isset($meta[$value])) { $templateHTML[$value] = $meta[$value]; } } $html .= '<li' . PBHelper::createClassAttribute($class) . '><div>' . implode($templateHTML) . '</div></li>'; $i++; } wp_reset_query(); $post = $bPost; $id = PBHelper::createId('pb_recent_post'); $class = array(); $class[0] = array('pb-recent-post', 'pb-recent-post-template-' . $attribute['template'], $attribute['css_class']); $class[1] = array('pb-clear-fix', 'pb-reset-list', $Layout->getLayoutCSSClass($attribute['layout'])); $html = ' <div' . PBHelper::createClassAttribute($class[0]) . ' id="' . $id . '"> <ul' . PBHelper::createClassAttribute($class[1]) . '> ' . $html . ' </ul> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $("#' . $id . '").PBRecentPost(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function validateProperty($property) { $data = array(); $Validation = new PBValidation(); foreach ($property as $name => $value) { $unit = 'px'; if (is_array($value)) { if (isset($value['unit'])) { $unit = $value['unit']; } if (isset($value['value'])) { $value = $value['value']; } } switch ($name) { case 'left': case 'width': case 'height': case 'font-size': case 'padding-top': case 'padding-left': case 'padding-right': case 'padding-bottom': if ($Validation->isNumber($value, 0, 9999)) { $data[$name] = $value . $unit; } break; case 'top': case 'margin-top': case 'margin-left': case 'margin-right': case 'margin-bottom': if ($Validation->isNumber($value, -9999, 9999)) { $data[$name] = $value . $unit; } break; case 'color': case 'border-color': case 'border-top-color': case 'border-right-color': case 'border-bottom-color': case 'border-left-color': case 'outline-color': case 'background-color': $value = PBColor::getColor($value); if ($Validation->isNotEmpty($value)) { $data[$name] = $value; } break; case 'font-family': foreach ((array) $value as $family) { if ($Validation->isNotEmpty($family)) { PBHelper::removeUIndex($data, $name); if ($Validation->isNotEmpty($data[$name])) { $data[$name] .= ','; } $data[$name] .= '\'' . $family . '\''; } } break; case 'font-style': if (isset($this->fontStyle[$value])) { $data[$name] = $value; } break; case 'font-weight': if (isset($this->fontWeight[$value])) { $data[$name] = $value; } break; case 'display': case 'background': case 'background-repeat': case 'background-position': if ($Validation->isNotEmpty($value)) { $data[$name] = $value; } break; case 'background-image': if ($Validation->isNotEmpty($value)) { $data[$name] = 'url(\'' . $value . '\')'; } break; } } return $data; }
function processShortcodeGoogleMapMapTypeStyle($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Validation = new PBValidation(); $data = array(); $style = array(); if (array_key_exists($attribute['feature_type'], $this->mapTypeStyleFeatureType)) { if ($attribute['feature_type'] != 'all') { $data['featureType'] = $attribute['feature_type']; } } if (array_key_exists($attribute['element_type'], $this->mapTypeStyleElementType)) { if ($attribute['element_type'] != 'all') { $data['elementType'] = $attribute['element_type']; } } if ($Validation->isColor($attribute['hue'], false)) { $style[]['hue'] = PBColor::getColor($attribute['hue']); } if ($Validation->isNumber($attribute['lightness'], -100, 100, false)) { $style[]['lightness'] = $attribute['lightness']; } if ($Validation->isNumber($attribute['saturation'], -100, 100, false)) { $style[]['saturation'] = $attribute['saturation']; } if ($Validation->isFloat($attribute['gamma'], 0, 10, false)) { $style[]['gamma'] = $attribute['gamma']; } if ($Validation->isBool($attribute['inverse_lightness'])) { $style[]['inverse_lightness'] = $attribute['inverse_lightness']; } if (array_key_exists($attribute['visibility'], $this->mapTypeStyleVisibility)) { $style[]['visibility'] = $attribute['visibility']; } if ($Validation->isColor($attribute['color'], false)) { $style[]['color'] = PBColor::getColor($attribute['color']); } if ($Validation->isNumber($attribute['weight'], 1, 999, false)) { $style[]['weight'] = $attribute['weight']; } $data['stylers'] = $style; return ',' . json_encode($data); }
function processShortcodeTwitterUserTimeline($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $Easing = new PBEasing(); $Validation = new PBValidation(); $CarouFredSel = new PBCarouFredSel(); if ($Validation->isEmpty($attribute['twitter_username'])) { return null; } if ($Validation->isEmpty($attribute['twitter_consumer_key'])) { return null; } if ($Validation->isEmpty($attribute['twitter_consumer_key_secret'])) { return null; } if ($Validation->isEmpty($attribute['twitter_access_token'])) { return null; } if ($Validation->isEmpty($attribute['twitter_access_token_secret'])) { return null; } if (!$Validation->isNumber($attribute['twitter_tweet_number'], 1, 200)) { return null; } if (!$Validation->isBool($attribute['carousel_enable'])) { return null; } if (!$Validation->isBool($attribute['carousel_autoplay_enable'])) { return null; } if (!$Validation->isBool($attribute['carousel_circular_enable'])) { return null; } if (!$Validation->isBool($attribute['carousel_infinite_enable'])) { return null; } if (!$Validation->isBool($attribute['carousel_scroll_pause_hover'])) { return null; } if (!array_key_exists($attribute['carousel_scroll_fx'], $CarouFredSel->scrollFX)) { return null; } if (!array_key_exists($attribute['carousel_scroll_easing'], $Easing->easingType)) { return null; } if (!$Validation->isNumber($attribute['carousel_scroll_duration'], 1, 99999)) { return null; } $this->includeLibrary('twitteroauth/twitteroauth.php'); $connection = new TwitterOAuth($attribute['twitter_consumer_key'], $attribute['twitter_consumer_key_secret'], $attribute['twitter_access_token'], $attribute['twitter_access_token_secret']); $tweet = $connection->get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=' . $attribute['twitter_username'] . '&count=' . $attribute['twitter_tweet_number']); if (is_null($tweet)) { return null; } if (is_wp_error($tweet)) { return null; } if (array_key_exists('errors', $tweet)) { if (count($tweet['errors'])) { return; } } $data = array(); $data['tweet'] = $tweet; $data['attribute'] = $attribute; $data['id'] = PBHelper::createId('pb_twitter_user_timeline'); $data['option'] = PBHelper::getValueFromArray($attribute, array('carousel_enable', 'carousel_autoplay_enable', 'carousel_circular_enable', 'carousel_infinite_enable', 'carousel_scroll_pause_hover', 'carousel_scroll_fx', 'carousel_scroll_easing', 'carousel_scroll_duration')); $Template = new PBTemplate($data, $this->getTemplateFullPath('template')); return $Template->output(true); }
function processShortcodeNivoSlider($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $option = array(); $html = null; $imageHTML = null; $imageBoxHTML = null; $paginationHTML = null; $Validation = new PBValidation(); $file = PBFile::getImage(explode(',', $attribute['image'])); if ($file === false) { return $html; } if (!count($file->posts)) { return $html; } if (!PBFile::isWPImage($attribute['image_size'])) { return $html; } if (!array_key_exists($attribute['transition_effect'], $this->effect)) { return $html; } if (!$Validation->isNumber($attribute['count_slice'], 0, 999)) { return $html; } if (!$Validation->isNumber($attribute['count_column'], 0, 999)) { return $html; } if (!$Validation->isNumber($attribute['count_row'], 0, 999)) { return $html; } if (!$Validation->isNumber($attribute['transition_speed'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['pause_time'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['start_slide'], 0, 999)) { return $html; } if (!$Validation->isBool($attribute['preloader_enable'])) { return $html; } if (!$Validation->isBool($attribute['direction_navigation_enable'])) { return $html; } if (!$Validation->isBool($attribute['control_navigation_enable'])) { return $html; } if (!$Validation->isBool($attribute['control_navigation_thumbs_enable'])) { return $html; } if (!$Validation->isBool($attribute['pause_on_hover'])) { return $html; } if (!$Validation->isBool($attribute['manual_advance_enable'])) { return $html; } if (!$Validation->isBool($attribute['random_start_enable'])) { return $html; } $key = array('transition_effect', 'count_slice', 'count_column', 'count_row', 'transition_speed', 'pause_time', 'start_slide', 'preloader_enable', 'direction_navigation_enable', 'control_navigation_enable', 'control_navigation_thumbs_enable', 'pause_on_hover', 'manual_advance_enable', 'random_start_enable'); foreach ($key as $index) { $option[$index] = $attribute[$index]; } $class = array(array(), array()); if ($attribute['preloader_enable'] == 1) { array_push($class[0], 'pb-image-box', 'pb-image-preloader'); } array_push($class[1], 'pb-image'); global $post; $bPost = $post; while ($file->have_posts()) { $file->the_post(); $src = wp_get_attachment_image_src(get_the_ID(), $attribute['image_size']); $url = null; $meta = PBMeta::get($post->ID); PBHelper::removeUIndex($meta, 'media_library_url'); if ($Validation->isNotEmpty($attribute['url'])) { $url = $attribute['url']; } elseif ($Validation->isNotEmpty($meta['media_library_url'])) { $url = $meta['media_library_url']; } if ($Validation->isNotEmpty($url)) { $imageHTML = '<a href="' . esc_attr($url) . '"><img src="' . $src[0] . '" alt=""/></a>'; } else { $imageHTML = '<img src="' . $src[0] . '" alt="" data-thumb="' . $src[0] . '"/>'; } $imageBoxHTML .= ' <div' . PBHelper::createClassAttribute($class[0]) . '> <div' . PBHelper::createClassAttribute($class[1]) . '>' . $imageHTML . '</div> </div> '; } wp_reset_query(); $post = $bPost; $id = PBHelper::createId('pb_nivo_slider'); $class = array(array(), array()); array_push($class[0], 'pb-nivo-slider', $attribute['css_class']); if ($attribute['preloader_enable'] == 1) { array_push($class[1], 'pb-preloader'); } $html = ' <div' . PBHelper::createClassAttribute($class[0]) . '> <div' . PBHelper::createClassAttribute($class[1]) . ' id="' . $id . '"> ' . $imageBoxHTML . ' ' . $paginationHTML . ' </div> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBNivoSlider(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeFlexSlider($attribute, $content, $tag) { $Easing = new PBEasing(); $attribute = $this->processAttribute($tag, $attribute); $option = array(); $class = array(array(), array(), array(), array()); $html = null; $imageHTML = null; $imageBoxHTML = null; $Validation = new PBValidation(); $file = PBFile::getImage(explode(',', $attribute['image'])); if ($file === false) { return $html; } if (!count($file->posts)) { return $html; } if (!PBFile::isWPImage($attribute['image_size'])) { return $html; } if (!array_key_exists($attribute['easing'], $Easing->easingType)) { return $html; } if (!array_key_exists($attribute['animation'], $this->animation)) { return $html; } if (!array_key_exists($attribute['direction'], $this->direction)) { return $html; } if (!$Validation->isBool($attribute['preloader_enable'])) { return $html; } if (!$Validation->isNumber($attribute['start_at'], 0, 999)) { return $html; } if (!$Validation->isNumber($attribute['init_delay'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['slideshow_speed'], 0, 99999)) { return $html; } if (!$Validation->isNumber($attribute['animation_speed'], 0, 99999)) { return $html; } if (!$Validation->isBool($attribute['touch'])) { return $html; } if (!$Validation->isBool($attribute['reverse'])) { return $html; } if (!$Validation->isBool($attribute['use_css'])) { return $html; } if (!$Validation->isBool($attribute['keyboard'])) { return $html; } if (!$Validation->isBool($attribute['slideshow'])) { return $html; } if (!$Validation->isBool($attribute['randomize'])) { return $html; } if (!$Validation->isBool($attribute['mousewheel'])) { return $html; } if (!$Validation->isBool($attribute['control_nav'])) { return $html; } if (!$Validation->isBool($attribute['direction_nav'])) { return $html; } if (!$Validation->isBool($attribute['smooth_height'])) { return $html; } if (!$Validation->isBool($attribute['animation_loop'])) { return $html; } if (!$Validation->isBool($attribute['pause_on_hover'])) { return $html; } if (!$Validation->isBool($attribute['pause_on_action'])) { return $html; } if (!$Validation->isBool($attribute['multiple_keyboard'])) { return $html; } $key = array('easing', 'animation', 'direction', 'start_at', 'init_delay', 'slideshow_speed', 'animation_speed', 'preloader_enable', 'touch', 'use_css', 'reverse', 'keyboard', 'slideshow', 'randomize', 'mousewheel', 'control_nav', 'direction_nav', 'smooth_height', 'pause_on_hover', 'animation_loop', 'pause_on_action', 'multiple_keyboard'); foreach ($key as $index) { $option[$index] = $attribute[$index]; } if ($attribute['preloader_enable'] == 1) { array_push($class[0], 'pb-image-box', 'pb-image-preloader'); } array_push($class[1], 'pb-image'); global $post; $bPost = $post; while ($file->have_posts()) { $file->the_post(); $src = wp_get_attachment_image_src(get_the_ID(), $attribute['image_size']); $url = null; $meta = PBMeta::get($post->ID); PBHelper::removeUIndex($meta, 'media_library_url'); if ($Validation->isNotEmpty($attribute['url'])) { $url = $attribute['url']; } elseif ($Validation->isNotEmpty($meta['media_library_url'])) { $url = $meta['media_library_url']; } if ($Validation->isNotEmpty($url)) { $imageHTML = '<a href="' . esc_attr($url) . '"><img src="' . $src[0] . '" alt=""/></a>'; } else { $imageHTML = '<img src="' . $src[0] . '" alt="" data-thumb="' . $src[0] . '"/>'; } $imageBoxHTML .= ' <li' . PBHelper::createClassAttribute($class[0]) . '> <div' . PBHelper::createClassAttribute($class[1]) . '>' . $imageHTML . '</div> </li> '; } wp_reset_query(); $post = $bPost; $id = PBHelper::createId('pb_flex_slider'); array_push($class[2], 'pb-flex-slider', $attribute['css_class']); if ($attribute['preloader_enable'] == 1) { array_push($class[2], 'pb-preloader'); } array_push($class[3], 'pb-reset-list', 'slides'); $html = ' <div' . PBHelper::createClassAttribute($class[2]) . ' id="' . $id . '"> <ul' . PBHelper::createClassAttribute($class[3]) . '> ' . $imageBoxHTML . ' </ul> </div> <div class="pb-script-tag"> <script type="text/javascript"> jQuery(document).ready(function($) { $(\'#' . $id . '\').PBFlexSlider(' . json_encode($option) . '); }); </script> </div> '; return PBHelper::formatHTML($html); }
function processShortcodeAccordionPanelHeader($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $style = array(); $Validation = new PBValidation(); if ($Validation->isNumber(PBComponentData::get('accordion', 'header_font_size'), 1, 100, false)) { $style['font-size'] = PBComponentData::get('accordion', 'header_font_size') . 'px'; } $html = ' <h' . PBComponentData::get($this->getComponentId(), 'header_important_default') . '><a href="#"' . PBHelper::createStyleAttribute($style) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '<span></span></a></h' . PBComponentData::get($this->getComponentId(), 'header_important_default') . '> '; return PBHelper::formatHTML($html, $content); }
function processShortcodeTabNavigationHeader($attribute, $content, $tag) { $attribute = $this->processAttribute($tag, $attribute); $style = array(); $Validation = new PBValidation(); if ($Validation->isNumber(PBComponentData::get('tab', 'header_font_size'), 1, 100, false)) { $style['font-size'] = PBComponentData::get('tab', 'header_font_size') . 'px'; } $html = ' <li><a href="#"' . PBHelper::createStyleAttribute($style) . '>' . PLUGIN_PAGE_BUILDER_SHORTCODE_CONTENT . '</a><span></span></li> '; return PBHelper::formatHTML($html, $content); }