did_convert_elements ) {
return array();
}
return array( self::$script_slug => self::$script_src );
}
public function shortcode( $args, $mid_content = null ) {
global $post,$revSliderVersion;
extract(shortcode_atts(array('alias' => ''), $args, 'rev_slider'));
extract(shortcode_atts(array('settings' => ''), $args, 'rev_slider'));
extract(shortcode_atts(array('order' => ''), $args, 'rev_slider'));
// Below version 6.0
if( !empty($revSliderVersion) && 6 > $revSliderVersion ){
if($settings !== '') $settings = json_decode(str_replace(array('({', '})', "'"), array('[', ']', '"'), $settings) ,true);
if($order !== '') $order = explode(',', $order);
$sliderAlias = ($alias != '') ? $alias : RevSliderFunctions::getVal($args,0);
$gal_ids = RevSliderFunctionsWP::check_for_shortcodes($mid_content);
ob_start();
if(!empty($gal_ids)){ //add a gallery based slider
$slider = RevSliderOutput::putSlider($sliderAlias, '', $gal_ids);
}else{
$slider = RevSliderOutput::putSlider($sliderAlias, '', array(), $settings, $order);
}
$content = ob_get_contents();
ob_clean();
ob_end_clean();
$ids = array();
$slides = $slider->getSlidesForOutput(true,'',$gal_ids);
foreach ($slides as $slide) {
$bgtype = $slide->getParam('background_type', 'image');
$img_data = wp_get_attachment_metadata( $slide->getImageID() );
if($bgtype == 'external'){
$url = esc_url($slide->getParam('slide_bg_external', ''));
$imgalt = esc_attr($slide->getParam('alt_attr', ''));
$img_title = esc_attr($slide->getParam('title_attr', ''));
$img_w = $slide->getParam('ext_width', '1920');
$img_h = $slide->getParam('ext_height', '1080');
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => $url,
'width' => intval($img_w),
'height' => intval($img_h),
'bgtype' => esc_attr($bgtype)
),$attachment_id);
}elseif( $bgtype == 'image'){
$img_data = wp_get_attachment_metadata( $slide->getImageID() );
$url = $slide->getImageUrl();
$attachment_id = $slide->getImageID();
$width = 480;
$height = 270;
if(isset($img_data['width'])){
$width = $img_data['width'];
}
if(isset($img_data['height'])){
$height = $img_data['height'];
}
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => $url,
'width' => intval($width),
'height' => intval($height),
'bgtype' => esc_attr($bgtype)
),$attachment_id);
}elseif( $bgtype == 'youtube' ){
$youtube_id = $slide->getParam('slide_bg_youtube', '');
$cover_img = $slide->getImageUrl();
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => $youtube_id,
'width' => '480',
'height' => '270',
'bgtype' => esc_attr($bgtype),
'cover_img' => $cover_img
),$attachment_id);
}
}
}
// Version 6.0+
elseif ( defined('RS_REVISION') && 6.0 <= RS_REVISION ) {
extract(shortcode_atts(array('alias' => ''), $args, 'rev_slider'));
extract(shortcode_atts(array('settings' => ''), $args, 'rev_slider'));
extract(shortcode_atts(array('order' => ''), $args, 'rev_slider'));
extract(shortcode_atts(array('usage' => ''), $args, 'rev_slider'));
$output = new RevSliderOutput();
$slider_alias = ($alias != '') ? $alias : $output->get_val($args, 0); //backwards compatibility
$output->set_custom_order($order);
$output->set_custom_settings($settings);
$gallery_ids = $output->check_for_shortcodes($mid_content); //check for example on gallery shortcode and do stuff
if($gallery_ids !== false) $output->set_gallery_ids($gallery_ids);
ob_start();
$slider = $output->add_slider_to_stage($slider_alias, $usage);
$content = ob_get_contents();
ob_clean();
ob_end_clean();
$slides = $slider->get_slides_for_output(true,'',$gallery_ids);
foreach ($slides as $slide) {
$bgtype = $slide->get_param(array('bg', 'type'),'');
$image_id = $slide->image_id;
$url = $slide->image_url;
if ( $image_id ) {
$img_data = wp_get_attachment_metadata( $image_id );
}
if($bgtype == 'external'){
$url = esc_url($slide->get_param(array('bg','externalSrc'), ''));
$imgalt = esc_attr($slide->get_param('alt_attr', ''));
$img_title = esc_attr($slide->get_param('title_attr', ''));
$img_w = $slide->get_param('ext_width', '1920');
$img_h = $slide->get_param('ext_height', '1080');
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => $url,
'width' => intval($img_w),
'height' => intval($img_h),
'bgtype' => esc_attr($bgtype)
),$image_id);
}elseif( $bgtype == 'image'){
$width = 480;
$height = 270;
if(isset($img_data['width'])){
$width = $img_data['width'];
}
if(isset($img_data['height'])){
$height = $img_data['height'];
}
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => $url,
'width' => intval($width),
'height' => intval($height),
'bgtype' => esc_attr($bgtype)
),$image_id);
}elseif( $bgtype == 'youtube' ){
$youtube_id = $slide->get_param(array('bg','youtube'), '');
$cover_img = $slide->get_param(array('bg','image'), '');
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => esc_attr($youtube_id),
'width' => '480',
'height' => '270',
'bgtype' => esc_attr($bgtype),
'cover_img' => esc_attr($cover_img)
),$image_id);
}elseif($bgtype == 'vimeo'){
$vimeo_id = $slide->get_param(array('bg','vimeo'), '');
$cover_img = $slide->get_param(array('bg','image'), '');
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => esc_attr($vimeo_id),
'width' => '480',
'height' => '270',
'bgtype' => esc_attr($bgtype),
'cover_img' => esc_attr($cover_img)
),$image_id);
}elseif($bgtype == 'html5'){
$html5_url = $slide->get_param(array('bg','mpeg'), '');
$html5_url = str_replace('http:','https:',$html5_url);
$cover_img = $slide->get_param(array('bg','image'), '');
$urls[] = apply_filters('amp_gallery_image_params', array(
'url' => esc_url($html5_url),
'width' => '480',
'height' => '270',
'bgtype' => esc_attr($bgtype),
'cover_img' => esc_url($cover_img)
),$image_id);
}
}
}
return $this->render( array(
'images' => $urls,
) );
}
public function render( $args ) {
global $redux_builder_amp,$carousel_markup_all;
$this->did_convert_elements = true;
$args = wp_parse_args( $args, array(
'images' => false,
) );
if ( empty( $args['images'] ) ) {
return '';
}
/*Filter*/
$carousel_markup = $amp_image_lightbox = '';
$carousel_markup_all = array(
'1'=>array(
'main-html'=>'{{with_carousel}}
{{amp_image_lightbox}}',
'image-with-caption-html'=>'