Ticket #1967: xml-package-info.patch

File xml-package-info.patch, 5.6 KB (added by Blondak <blondak@…>, 5 years ago)
  • gui/orderpanel/.htaccess

    diff -NbBru ISPCP-1.0.2/gui/orderpanel/.htaccess ISPCP-DEV/gui/orderpanel/.htaccess
    old new  
     1<IfModule mod_rewrite.c> 
     2  RewriteEngine on 
     3  <IfModule !proxy_balancer_module> 
     4          RewriteBase /orderpanel/ 
     5  </IfModule> 
     6  RewriteCond %{REQUEST_FILENAME} !-f 
     7  RewriteCond %{REQUEST_FILENAME} !-l 
     8  RewriteCond %{REQUEST_FILENAME} !-d 
     9  RewriteCond %{REQUEST_FILENAME} !-F 
     10  RewriteRule ^([^.]*)_packages.xml ./index.php?user_name=$1&mode=xml [L,QSA] 
     11  RewriteRule ^([^.]*)_packages ./index.php?user_name=$1 [L,QSA] 
     12</IfModule> 
  • gui/orderpanel/index.php

    diff -NbBru ISPCP-1.0.2/gui/orderpanel/index.php ISPCP-DEV/gui/orderpanel/index.php
    old new  
    2121require '../include/ispcp-lib.php'; 
    2222 
    2323$tpl = new pTemplate(); 
     24if (isset($_GET['mode']) && ($_GET['mode'] == 'xml')){ 
     25        $tpl->define_dynamic('page', Config::get('PURCHASE_TEMPLATE_PATH') . '/index.xml.tpl'); 
     26        header("Content-type: application/xml"); 
     27}else 
     28        $tpl->define_dynamic('page', Config::get('PURCHASE_TEMPLATE_PATH') . '/index.tpl'); 
    2429 
    25 $tpl->define_dynamic('page', Config::get('PURCHASE_TEMPLATE_PATH') . '/index.tpl'); 
    2630$tpl->define_dynamic('purchase_list', 'page'); 
    2731$tpl->define_dynamic('purchase_message', 'page'); 
    2832$tpl->define_dynamic('purchase_header', 'page'); 
     
    3135/* 
    3236* Functions start 
    3337*/ 
    34 function gen_packages_list(&$tpl, &$sql, $user_id) { 
     38function gen_packages_list(&$tpl, &$sql, $user_id, $user_name) { 
    3539    if (Config::exists('HOSTING_PLANS_LEVEL') && Config::get('HOSTING_PLANS_LEVEL') === 'admin') { 
    3640        $query = <<<SQL_QUERY 
    3741                        select 
     
    5761                                        * 
    5862                                from 
    5963                                        hosting_plans 
     64                                        ,admin 
    6065                                where 
     66                                        reseller_id = admin.admin_id 
     67                                  and (  
     68                                        admin.admin_name = ?  
     69                                        OR  
    6170                                        reseller_id = ? 
     71                                  )  
    6272                                  and 
    6373                                        status = '1' 
    6474SQL_QUERY; 
    6575 
    66         $rs = exec_query($sql, $query, array($user_id)); 
     76        $rs = exec_query($sql, $query, array(urldecode($user_name), $user_id)); 
    6777    } 
    6878 
    6979    if ($rs->RecordCount() == 0) { 
     
    90100                    'PRICE' => $price, 
    91101                    ) 
    92102                ); 
     103                if (isset($_GET['mode']) && ($_GET['mode'] == 'xml')){ 
     104                                $props = $rs->fields['props']; 
     105                                list($hp_php, $hp_cgi, $hp_sub, $hp_als, $hp_mail, $hp_ftp, $hp_sql_db, $hp_sql_user, $hp_traff, $hp_disk) = explode(";", $props); 
     106 
     107                                if (!function_exists('translateToXml')){ 
     108                                        function translateToXml($value){ 
     109                                                switch ($value){ 
     110                                                        case '-1' : return 'limit="0"'; 
     111                                                        case '0' : return 'nolimit="nolimit"'; 
     112                                                } 
     113                                                return 'limit="'.$value.'"'; 
     114                                        }  
     115                                } 
     116                         
     117                                $tpl->assign( 
     118                                        array( 
     119                                                'PACKAGE_PRICE'=>$rs->fields['price'], 
     120                                                'PACKAGE_PRICE_PERIOD'=>$rs->fields['payment'], 
     121                                                'PACKAGE_PRICE_CURRENCY'=>$rs->fields['value'], 
     122                                                'PACKAGE_SETUP_FEE'=>$rs->fields['setup_fee'], 
     123                                                'PACKAGE_ALIASES' => translateToXml($hp_als), 
     124                                                'PACKAGE_SUBDOMAINS' => translateToXml($hp_sub), 
     125                                                'PACKAGE_HDD_SPACE' => translateToXml($hp_disk), 
     126                                                'PACKAGE_TRAFFIC' => translateToXml($hp_traff), 
     127                                                'PACKAGE_PHP' => ($hp_php=='_yes_')+0, 
     128                                                'PACKAGE_CGI' => ($hp_cgi=='_yes_')+0, 
     129                                                'PACKAGE_MAIL' => translateToXml($hp_mail), 
     130                                                'PACKAGE_FTP' => translateToXml($hp_ftp), 
     131                                                'PACKAGE_SQL_DB' => translateToXml($hp_sql_db), 
     132                                                'PACKAGE_SQL_USR' => translateToXml($hp_sql_user), 
     133                                         
     134                                        )); 
     135                } 
    93136 
    94137            $tpl->parse('PURCHASE_LIST', '.purchase_list'); 
    95138 
     
    119162if (isset($_SESSION['plan_id'])) 
    120163    unset($_SESSION['plan_id']); 
    121164 
     165$user_name = ''; 
     166if (isset($_GET['user_name'])) 
     167        $user_name = $_GET['user_name']; 
     168 
    122169gen_purchase_haf($tpl, $sql, $user_id); 
    123 gen_packages_list($tpl, $sql, $user_id); 
     170gen_packages_list($tpl, $sql, $user_id, $user_name); 
    124171 
    125172gen_page_message($tpl); 
    126173 
  • gui/themes/omega_original/orderpanel/index.xml.tpl

    diff -NbBru ISPCP-1.0.2/gui/themes/omega_original/orderpanel/index.xml.tpl ISPCP-DEV/gui/themes/omega_original/orderpanel/index.xml.tpl
    old new  
     1<?xml version="1.0" encoding="UTF-8"?> 
     2<packages> 
     3<!-- BDP: purchase_list --> 
     4        <package> 
     5                <title>{PACK_NAME}</title> 
     6                <prices currency="{PACKAGE_PRICE_CURRENCY}"> 
     7                        <setupfee>{PACKAGE_SETUP_FEE}</setupfee> 
     8                        <price frequency="{PACKAGE_PRICE_PERIOD}">{PACKAGE_PRICE}</price> 
     9                </prices> 
     10                <info>{PACK_INFO}</info> 
     11                <detail href="package_info.php?id={PACK_ID}&amp;user_id={USER_ID}" /> 
     12                <order href="addon.php?id={PACK_ID}&amp;user_id={USER_ID}" /> 
     13                <support> 
     14                                <aliases {PACKAGE_ALIASES} /> 
     15                                <subdomains {PACKAGE_SUBDOMAINS} /> 
     16                                <disk {PACKAGE_HDD_SPACE} /> 
     17                                <traffic {PACKAGE_TRAFFIC} /> 
     18                                <php enabled="{PACKAGE_PHP}" /> 
     19                                <cgi enabled="{PACKAGE_CGI}" /> 
     20                                <email {PACKAGE_MAIL} /> 
     21                                <ftp {PACKAGE_FTP} /> 
     22                                <database {PACKAGE_SQL_DB} /> 
     23                                <database_users {PACKAGE_SQL_USR}  /> 
     24                </support> 
     25        </package> 
     26<!-- EDP: purchase_list --> 
     27</packages>