Created
February 4, 2015 16:51
-
-
Save raidenz/5810cd7760995d464f61 to your computer and use it in GitHub Desktop.
frontend.class.php
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
#PLUGIN FRONT-END MANAGEMENT | |
class hslider_frontend{ | |
#CONSTRUCT | |
public function __constuct(){ | |
} | |
#IMPLEMENT SHORTCODE LISTENER | |
public function get_shortcode_content($atts){ | |
//load global helper | |
global $hmaps_helper; | |
//load global wpdb | |
global $wpdb; | |
//get hmaps_mapId | |
$hslider_slider_id = $atts['id']; | |
//return 'Shortcode intercepted.<br />my_id='.$atts['my_id']; | |
return ' | |
<script type="text/javascript"> | |
var ajaxurl = "'.admin_url('admin-ajax.php').'"; | |
var pluginurl = "'.plugins_url().'"; | |
var basepluginurl = "'.plugins_url().'"; | |
</script> | |
<script type="text/javascript" src="'.plugins_url().'/hslider/assets/js/hslider_slider_frontend.js"></script> | |
<script type="text/javascript"> | |
jQuery(function(){ | |
var hslider_id = '.$atts['id'].'; | |
heroLoadSlides(hslider_id); | |
}); | |
</script> | |
<!-- START | SIMULATE AREA --> | |
<div class="simulate_area"> | |
<!-- START | HERO MAIN SLIDER --> | |
<div class="hero_slider_main"> | |
<!-- START | HERO SLIDER BUTTONS --> | |
<div class="hero_slider_btn_left"></div> | |
<div class="hero_slider_btn_right"></div> | |
<div class="hero_slider_pager"> | |
<div class="hero_slider_buttons"></div> | |
</div> | |
<div class="hero_loader_holder"> | |
<div class="hero_loading"></div> | |
</div> | |
<div class="hero_percentage"></div> | |
<!-- END | HERO SLIDER BUTTONS --> | |
<!-- START | HERO SLIDER HOLDER --> | |
<div class="hero_slider_slide_holder"> | |
</div> | |
<!-- END | HERO SLIDER HOLDER --> | |
</div> | |
<!-- END | HERO MAIN SLIDER --> | |
</div> | |
<!-- END | SIMULATE AREA --> | |
<div class="hero_hidden_images"></div> | |
'; | |
} | |
public function get_slider_front(){ | |
//load global helper | |
global $hmaps_helper; | |
//load global wpdb | |
global $wpdb; | |
//get slider result | |
$slider_id = $_POST['id']; | |
$result = $wpdb->get_results(" | |
SELECT | |
`s`.`sliderId`, | |
`s`.`sliderWidth`, | |
`s`.`sliderHeight`, | |
`s`.`sliderTime`, | |
`s`.`sliderTimeShow`, | |
`s`.`sliderTheme`, | |
`s`.`sliderArrows`, | |
`s`.`sliderPager`, | |
`s`.`deleted`, | |
`sl`.`slideId`, | |
`sl`.`slideImage`, | |
`sl`.`slideOrder`, | |
`el`.`elementId`, | |
`el`.`elementImage`, | |
`el`.`elementTop`, | |
`el`.`elementLeft`, | |
`el`.`elementAnimation`, | |
`el`.`elementAnimationType`, | |
`el`.`elementDelay`, | |
`el`.`elementDuration`, | |
`el`.`elementRotation`, | |
`el`.`elementOrder`, | |
`el`.`elementLink`, | |
`el`.`elementTarget` | |
FROM | |
`". $wpdb->prefix ."hslider_sliders` AS `s` | |
LEFT JOIN `". $wpdb->prefix ."hslider_slides` AS `sl` ON(`sl`.`sliderId` = `s`.`sliderId` AND `sl`.`deleted` = 0) | |
LEFT JOIN `". $wpdb->prefix ."hslider_elements` AS `el` ON (`el`.`slideId` = `sl`.`slideId` AND `el`.`deleted` = 0) | |
WHERE | |
`s`.`sliderId` = ".$slider_id." | |
AND | |
`s`.`deleted` = 0 | |
ORDER BY | |
`sl`.`slideOrder` ASC; | |
"); | |
#SLIDER OBJECT | |
$slider_object = array( | |
'slider' => array(), | |
'slides' => array() | |
); | |
if($result){ | |
$slider_object['slider'] = array( | |
'id' => $result[0]->sliderId, | |
'width' => $result[0]->sliderWidth, | |
'height' => $result[0]->sliderHeight, | |
'time' => $result[0]->sliderTime, | |
'timeshow' => $result[0]->sliderTimeShow, | |
'theme' => $result[0]->sliderTheme, | |
'arrows' => $result[0]->sliderArrows, | |
'pager' => $result[0]->sliderPager | |
); | |
//get slide data | |
foreach($result as $element){ | |
$key = $this->search_array($slider_object['slides'],'slideId',$element->slideId); | |
if(!is_numeric($key)){ | |
//create new slides entry and add the first element | |
array_push($slider_object['slides'], array( | |
'slideId' => $element->slideId, | |
'slideImage' => $element->slideImage, | |
'slideOrder' => $element->slideOrder, | |
'elements' => array( | |
array( | |
'elementId' => $element->elementId, | |
'elementImage' => $element->elementImage, | |
'elementTop' => $element->elementTop, | |
'elementLeft' => $element->elementLeft, | |
'elementAnimation' => $element->elementAnimation, | |
'elementAnimationType' => $element->elementAnimationType, | |
'elementDelay' => $element->elementDelay, | |
'elementDuration' => $element->elementDuration, | |
'elementRotation' => $element->elementRotation, | |
'elementOrder' => $element->elementOrder, | |
'elementLink' => $element->elementLink, | |
'elementTarget' => $element->elementTarget | |
) | |
) | |
)); | |
}else{ | |
//add element to slide entry | |
array_push($slider_object['slides'][$key]['elements'],array( | |
'elementId' => $element->elementId, | |
'elementImage' => $element->elementImage, | |
'elementTop' => $element->elementTop, | |
'elementLeft' => $element->elementLeft, | |
'elementAnimation' => $element->elementAnimation, | |
'elementAnimationType' => $element->elementAnimationType, | |
'elementDelay' => $element->elementDelay, | |
'elementDuration' => $element->elementDuration, | |
'elementRotation' => $element->elementRotation, | |
'elementOrder' => $element->elementOrder, | |
'elementLink' => $element->elementLink, | |
'elementTarget' => $element->elementTarget | |
)); | |
} | |
} | |
} else { | |
//EXPLODE | |
echo json_encode(false); | |
exit; | |
} | |
echo json_encode($slider_object); | |
exit; | |
} | |
//SEARCH ARRAY | |
private function search_array($array,$id,$val){ | |
foreach($array as $key => $item){ | |
if($item[$id] === $val){ | |
return $key; | |
} | |
} | |
return false; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
$plugins_url not defined