Вход Регистрация
Файл: adultscript-2.0.3-pro/files/admin/modules/pornstar/components/export_xml.php
Строк: 122
<?php
defined
('_VALID') or die('Restricted Access!');
class 
VComponent_Admin_pornstar_export_xml
{
    public function 
__construct()
    {
    }
    
    public function 
render()
    {
        
$errors            = array();
    
        
$method            'display';
        if (isset(
$_POST['submit-export'])) {
            
$method        VF::factory('filter')->get('method');
            
            if (
$method == 'display') {
                
$this->display_xml($this->build_xml());
            } elseif (
$method == 'download') {
                
$this->download_xml($this->build_xml());
            } else {
                
$errors[]    = 'Invalid export method! What exactly did you select/click!?';
            }
        }
    
        
$tpl                VF::factory('template');
        
$tpl->menu            'pornstar';
        
$tpl->submenu        'pornstar_export';
        
$tpl->extramenu        'pornstar_export_xml';
        
$tpl->meta_title    'Admin::Pornstar::Export';
        
$tpl->errors        $errors;
        
$tpl->method        $method;
        
$tpl->load(array('header''pornstar_export_xml''footer'));
        
$tpl->display();
    }
    
    private function 
build_xml()
    {
        
$db VF::factory('database');
        
$db->query("SELECT m.model_id, m.name, m.slug, m.description,
                           m.gender, m.ext, mb.*
                    FROM #__model AS m
                    INNER JOIN #__model_bio AS mb ON (mb.model_id = m.model_id)
                    ORDER BY m.name ASC"
);
        
$pornstars $db->fetch_rows();
        
        
$output        = array();
        
$output[]    = '<?xml version="1.0" encoding="UTF-8" ?>';
        
$output[]    = '<models>';
        
        foreach (
$pornstars as $pornstar) {
            
$name        explode(' '$pornstar['name']);
            
$first_name    $name['0'];
            
$last_name    $name['1'];
            
            
$measures    explode('-'$pornstar['measurements']);
            
$breast        0;
            
$waist        0;
            
$hips        0;
            
            if (isset(
$measures['0'])) {
                
$breast $measures['0'];
            }

            if (isset(
$measures['1'])) {
                
$waist     $measures['1'];
            }

            if (isset(
$measures['2'])) {
                
$hips     $measures['2'];
            }
            
            
$tattoes    = (isset($pornstar['tattoes'])) ? $pornstar['tattoes'] : '';
            
$piercing    = (isset($pornstar['piercings'])) ? $pornstar['piercings'] : '';
        
            
$output[]    = "t<model>";
            
$output[]    = "tt<firstname>".e($first_name).'</firstname>';
            
$output[]    = "tt<lastname>".e($last_name).'</lastname>';
            
$output[]    = "tt<bio>".e($pornstar['description']).'</bio>';
            
$output[]    = "tt<tracking_link>".BASE_URL.'/pornstar/'.$pornstar['slug'].'/'.'</tracking_link>';
            
            if (
$pornstar['photo_url'] == '') {
                
$output[]    = "tt<photo_url>".BASE_URL.'/media/pornstars/'.$pornstar['model_id'].'.'.$pornstar['ext'].'</photo_url>';
            }
            
            
$output[]    = "tt<birth_date>".$pornstar['birth_date'].'</birth_date>';
            
$output[]    = "tt<age>".VDate::age($pornstar['birth_date']).'</age>';
            
$output[]    = "tt<alias>".e($pornstar['aliases']).'</alias>';
            
$output[]    = "tt<height>".$pornstar['height'].'</height>';
            
$output[]    = "tt<weight>".$pornstar['weight'].'</weight>';
            
$output[]   = "tt<measurements>".$pornstar['measurements'].'</measurements>';
            
$output[]    = "tt<breast>".$breast.'</breast>';
            
$output[]    = "tt<waist>".$waist.'</waist>';
            
$output[]    = "tt<hips>".$hips.'</hips>';
            
$output[]    = "tt<tattoo>".$tattoes.'</tattoo>';
            
$output[]    = "tt<piercing>".$piercing.'</piercing>';
            
$output[]    = "tt<nationality>".$pornstar['nationality'].'</nationality>';
            
$output[]    = "tt<ethnicity>".$pornstar['ethnicity'].'</ethnicity>';
            
$output[]    = "tt<hair_color>".$pornstar['hair_color'].'</hair_color>';
            
$output[]    = "tt<eye_color>".$pornstar['eye_color'].'</eye_color>';
            
$output[]    = "tt<skin_color>".$pornstar['skin_color'].'</skin_color>';
            
$output[]    = "t</model>";
        }
        
        
$output[]    = '</models>';
        
        return 
implode("n"$output);
    }
    
    private function 
download_xml($xml)
    {
        
$file    TMP_DIR.'/downloads/models.xml';
        
file_put_contents($file$xml);
        
        
VDownload::force($file);
    }
    
    private function 
display_xml($xml)
    {    
        
VResponse::add_header('Content-Type''text/xml');
        
VResponse::add_header('Pragma''no-cache');
        
VResponse::add_header('Cache-Control''no-cache, must-revalidate');
        
VResponse::add_header('Last-Modified'gmdate('D, d M Y H:i:s').' GMT');
        
VResponse::add_header('Expires''Sat, 26 Jul 1997 05:00:00 GMT');
        
        
VResponse::send_headers();
        echo 
$xml;
        
VF::close();
        exit;
    }
}
Онлайн: 0
Реклама