%PDF- %PDF-
Direktori : /var/www/html/shaban/laviva/wp-content/plugins/slider-wd/admin/views/ |
Current File : /var/www/html/shaban/laviva/wp-content/plugins/slider-wd/admin/views/WDSViewWDSExport.php |
<?php class WDSViewWDSExport { //////////////////////////////////////////////////////////////////////////////////////// // Events // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Constants // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Variables // //////////////////////////////////////////////////////////////////////////////////////// private $model; //////////////////////////////////////////////////////////////////////////////////////// // Constructor & Destructor // //////////////////////////////////////////////////////////////////////////////////////// public function __construct($model) { $this->model = $model; } //////////////////////////////////////////////////////////////////////////////////////// // Public Methods // //////////////////////////////////////////////////////////////////////////////////////// public function display($slider_id) { if ($slider_id) { $this->export_onee(); } else { $this->export_full(); } } public function export_full() { $data = $this->model->export_full(); $this->export($data); } public function export_onee() { $data = $this->model->export_one(); $this->export($data); } public function export($data) { $t = isset($_GET["imagesexport"]) ? esc_html($_GET["imagesexport"]) : FALSE; $filename = "sliders_" . date('Ymd His'); $xml_str = '<?xml version="1.0" encoding="utf-8" ?>'; $zip = new ZipArchive(); $zip->open($filename, ZipArchive::CREATE); $xml_str .= '<sliders version="' . get_option('wds_version').'">'; foreach ($data as $key => $value) { $xml_str .= '<slider>'; foreach ($value as $key_slider => $value_slider) { if (!is_array($value_slider)) { if (strpos($value_slider, site_url()) !== FALSE) { if (strpos($value_slider, WDS()->plugin_url . '/images/') !== FALSE) { $value_slider = str_replace(site_url(), WDS()->site_url_placeholder, $value_slider); } else { $file_url = html_entity_decode($value_slider, ENT_QUOTES); $base_name = basename($file_url); $download_file = file_get_contents(str_replace(" ", "%20", $file_url)); $zip->addFromString(WDS()->site_url_buttons_placeholder . $base_name, $download_file); if ($key_slider != "built_in_watermark_url") { if ($key_slider != "music_url") { // Create thumbnail url to check if it exist. $thumb_url = str_replace($base_name, 'thumb/' . $base_name, $file_url); // Thumbnail filname from url. $thumb_filename = str_replace(site_url(), ABSPATH, $thumb_url); if (file_exists($thumb_filename)) { // If thumbnail exist (buttons default images). $download_file = file_get_contents(str_replace(" ", "%20", str_replace($base_name, 'thumb/' . $base_name, $file_url))); } $zip->addFromString(WDS()->site_url_buttons_placeholder . '_thumb_' . $base_name, $download_file); } } $value_slider = WDS()->site_url_buttons_placeholder . basename($value_slider); } } $value->built_in_watermark_url = ''; $xml_str .= '<'. $key_slider.' value="' . htmlspecialchars($value_slider, ENT_QUOTES) . '" />'; } elseif ($key_slider == 'slides') { foreach ($value_slider as $key_slides => $value_slides) { $xml_str .= '<slide>'; if (!is_array($value_slides)) { $image_url = $value_slides->image_url; if ($t == 'true') { if ($value_slides->type == 'image') { if (strpos($value_slides->image_url, site_url()) !== FALSE) { $download_file = file_get_contents(html_entity_decode(str_replace(" ", "%20", $image_url), ENT_QUOTES)); $zip->addFromString(basename(html_entity_decode($image_url, ENT_QUOTES)), $download_file); $value_slides->image_url = WDS()->site_url_placeholder. basename($image_url); } if (strpos($value_slides->thumb_url , site_url()) !== FALSE) { $download_file = file_get_contents(html_entity_decode(str_replace(" ", "%20", $value_slides->thumb_url), ENT_QUOTES)); $zip->addFromString('thumb_' . basename(html_entity_decode($image_url, ENT_QUOTES)), $download_file); $value_slides->thumb_url = WDS()->site_url_placeholder . basename($image_url); } } if ($value_slides->type == 'video') { if (ctype_digit($value_slides->thumb_url)) { $value_slides->thumb_url = wp_get_attachment_url(get_post_thumbnail_id($value_slides->thumb_url)) ? wp_get_attachment_url(get_post_thumbnail_id($value_slides->thumb_url)) : WDS()->plugin_url . '/images/no-video.png'; } if (strpos($value_slides->thumb_url , site_url()) !== FALSE) { $download_file = file_get_contents(html_entity_decode(str_replace(" ", "%20", $value_slides->thumb_url), ENT_QUOTES)); $zip->addFromString('featured_' . basename(html_entity_decode($value_slides->thumb_url, ENT_QUOTES)), $download_file); $value_slides->thumb_url = WDS()->site_url_placeholder . basename($value_slides->thumb_url); } if (strpos($value_slides->image_url, site_url()) !== FALSE) { $download_file = file_get_contents(html_entity_decode(str_replace(" ", "%20", $image_url), ENT_QUOTES)); $zip->addFromString(basename(html_entity_decode($image_url, ENT_QUOTES)), $download_file); $value_slides->image_url = WDS()->site_url_placeholder. basename($image_url); } } } else { if ($value_slides->type == 'image' && strpos($value_slides->image_url, site_url()) !== FALSE) { $value_slides->image_url = ''; } if ($value_slides->type == 'image' && strpos($value_slides->thumb_url, site_url()) !== FALSE) { $value_slides->thumb_url = ''; } if ($value_slides->type == 'video') { $value_slides->image_url = ''; $value_slides->thumb_url = ''; } } } foreach ($value_slides as $key_slide => $value_slide) { if ($key_slide == 'slidelayers') { foreach ($value_slide as $key_layers => $value_layers) { $xml_str .= '<layer>'; if (!is_array($value_layers)) { if ($t == 'true') { if (strpos($value_layers->image_url, site_url()) !== FALSE) { $file_url = html_entity_decode($value_layers->image_url, ENT_QUOTES); $base_name = basename($file_url); $download_file = file_get_contents(str_replace(" ", "%20", $file_url)); $zip->addFromString($base_name, $download_file); // Create thumbnail url to check if it exist. $thumb_url = str_replace($base_name, 'thumb/' . $base_name, $file_url); // Thumbnail filname from url. $thumb_filename = str_replace(site_url(), ABSPATH, $thumb_url); if (file_exists($thumb_filename)) { // If thumbnail exist (layer images uploaded with spider uploader). $download_file = file_get_contents(str_replace(" ", "%20", str_replace($base_name, 'thumb/' . $base_name, $file_url))); } $zip->addFromString('thumb_' . $base_name, $download_file); $value_layers->image_url = WDS()->site_url_placeholder . basename($value_layers->image_url); } } elseif (strpos($value_layers->image_url, site_url()) !== FALSE) { $value_layers->image_url = ''; } } foreach ($value_layers as $key_layer => $value_layer) { $xml_str .= '<' . $key_layer .'>' . htmlspecialchars($value_layer, ENT_QUOTES) . '</' . $key_layer .'>'; } $xml_str .= '</layer>'; } } else { $xml_str .= '<'.$key_slide .' value="' . htmlspecialchars($value_slide, ENT_QUOTES) . '" />'; } } $xml_str .= '</slide>'; } } } $xml_str .= '</slider>'; } $xml_str .= '</sliders>'; $zip->addFromString($filename . ".xml", $xml_str); $zip->close(); header("Content-Disposition: attachment; filename=\"$filename.zip\""); header("Content-Type:text/xml, charset=utf-8"); ob_end_clean(); readfile($filename); @unlink($filename); die(''); } //////////////////////////////////////////////////////////////////////////////////////// // Getters & Setters // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Private Methods // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Listeners // //////////////////////////////////////////////////////////////////////////////////////// }