Example #1
0
function get_flash_xml()
{
    $flashdb = array();
    if (file_exists(ROOT_PATH . DATA_DIR . '/flash_data.xml')) {
        // 兼容v2.7.0及以前版本
        if (!preg_match_all('/item_url="([^"]+)"\\slink="([^"]+)"\\stext="([^"]*)"\\ssort="([^"]*)"/', file_get_contents(ROOT_PATH . DATA_DIR . '/flash_data.xml'), $t, PREG_SET_ORDER)) {
            preg_match_all('/item_url="([^"]+)"\\slink="([^"]+)"\\stext="([^"]*)"/', file_get_contents(ROOT_PATH . DATA_DIR . '/flash_data.xml'), $t, PREG_SET_ORDER);
        }
        if (!empty($t)) {
            foreach ($t as $key => $val) {
                $val[4] = isset($val[4]) ? $val[4] : 0;
                $val[2] = substr($val[2], 0, 4) == 'http' ? $val[2] : dirname($GLOBALS['ecs']->url()) . '/' . $val[2];
                $flashdb[] = array('photo' => array('small' => API_DATA('PHOTO', $val[1]), 'thumb' => API_DATA('PHOTO', $val[1]), 'url' => API_DATA('PHOTO', $val[1])), 'url' => $val[2], 'description' => $val[3]);
            }
        }
    }
    return $flashdb;
}
Example #2
0
 function display()
 {
     if (empty($this->vars) && empty($this->_var)) {
         return false;
     }
     if (isset($this->vars)) {
         $this->_var = $this->vars;
     }
     switch ($this->apiName) {
         // case 'search':
         // 	$data = array();
         // 	$data['goods'] = API_DATA("SIMPLEGOODS", $this->_var['goods_list']);
         // 	if (!empty($this->_var['pager'])) {
         // 		$pager = array(
         // 				"total"  => $this->_var['pager']['record_count'],
         // 				"count"  => count($this->_var['goods_list']),
         // 				"more"   => empty($this->_var['pager']['page_next']) ? 0 : 1
         // 		);
         // 	} else {
         // 		$pager = NULL;
         // 	}
         // 	GZ_Api::outPut($data, $pager);
         // 	break;
         case 'list':
             print_r($this->_var);
             exit;
             GZ_Api::outPut(API_DATA("SIMPLEORDER", $this->_var['orders']));
             break;
         case 'goods':
             print_r($this->_var['goods']);
             exit;
             break;
         default:
             print_r($this->_var);
             break;
     }
 }
Example #3
0
//   }
// }
// $sql = "SELECT COUNT(*) FROM " .$ecs->table('order_info'). " WHERE user_id = '$user_id'". GZ_order_query_sql($type);
//  print_r($sql);exit;
$pager = get_pager('user.php', array('act' => $action), $record_count, $page, $page_parm['count']);
$orders = GZ_get_user_orders($user_id, $pager['size'], $pager['start'], $type);
// print_r($orders);exit;
foreach ($orders as $key => $value) {
    unset($orders[$key]['order_status']);
    $orders[$key]['order_time'] = formatTime($value['order_time']);
    $goods_list = GZ_order_goods($value['order_id']);
    //$orders[$key]['ss'] = $goods_list;
    $goods_list_t = array();
    // $goods_list = API_DATA("SIMPLEGOODS", $goods_list);
    foreach ($goods_list as $v) {
        $goods_list_t[] = array("goods_id" => $v['goods_id'], "name" => $v['goods_name'], "goods_number" => $v['goods_number'], "subtotal" => price_format($v['subtotal'], false), "formated_shop_price" => price_format($v['goods_price'], false), "img" => array('small' => API_DATA('PHOTO', $v['goods_thumb']), 'thumb' => API_DATA('PHOTO', $v['goods_img']), 'url' => API_DATA('PHOTO', $v['original_img'])));
    }
    $orders[$key]['goods_list'] = $goods_list_t;
    $order_detail = get_order_detail($value['order_id'], $user_id);
    $orders[$key]['formated_integral_money'] = $order_detail['formated_integral_money'];
    //积分 钱
    $orders[$key]['formated_bonus'] = $order_detail['formated_bonus'];
    //红包 钱
    $orders[$key]['formated_shipping_fee'] = $order_detail['formated_shipping_fee'];
    //运送费
    if ($order_detail['pay_id'] > 0) {
        $payment = payment_info($order_detail['pay_id']);
    }
    $subject = $orders[$key]['goods_list'][0]['name'] . '等' . count($orders[$key]['goods_list']) . '种商品';
    $orders[$key]['order_info'] = array('pay_code' => $payment['pay_code'], 'order_amount' => $order_detail['order_amount'], 'order_id' => $order_detail['order_id'], 'subject' => $subject, 'desc' => $subject, 'order_sn' => $order_detail['order_sn']);
}
Example #4
0
    case 'list':
        include_once EC_PATH . '/includes/lib_clips.php';
        $page = GZ_Api::$pagination;
        $user_id = $_SESSION['user_id'];
        $rec_id = _POST('rec_id', 0);
        $add = '';
        if ($rec_id) {
            $add = " AND rec_id < {$rec_id} ";
        }
        $record_count = $db->getOne("SELECT COUNT(*) FROM " . $ecs->table('collect_goods') . " WHERE user_id='{$user_id}' {$add}");
        $smarty->assign('goods_list', GZ_get_collection_goods($user_id, $page['count'], $page['page'], $rec_id));
        $smarty->assign('url', $ecs->url());
        $smarty->assign('user_id', $user_id);
        $data = array();
        foreach ($smarty->_var['goods_list'] as $key => $value) {
            $temp = API_DATA("SIMPLEGOODS", $value);
            $temp['rec_id'] = $value['rec_id'];
            $data[] = $temp;
        }
        $pager = get_pager('collection', array(), $record_count, $page['page'], $page['count']);
        GZ_Api::outPut($data, array("total" => $record_count, "count" => count($data), "more" => intval($pager['page_count'] > $pager['page'])));
        break;
    default:
        GZ_Api::outPut(101);
        break;
}
/**
 *  获取指定用户的收藏商品列表
 *
 * @access  public
 * @param   int     $user_id        用户ID
Example #5
0
require EC_PATH . '/includes/init.php';
include_once EC_PATH . '/includes/lib_transaction.php';
$categoryGoods = array();
$category = get_categories_tree();
if (!empty($category)) {
    foreach ($category as $key => $val) {
        $goods = array();
        $children = get_children($val['id']);
        $goods = gz_get_category_recommend_goods('best', $children);
        if (count($goods) > 3) {
            $goods = array_slice($goods, 0, 3);
        }
        $ngoods = array();
        if (!empty($goods)) {
            foreach ($goods as $k => $v) {
                $ngoods[] = array('id' => $v['id'], 'name' => $v['name'], 'market_price' => $v['market_price'], 'shop_price' => $v['shop_price'], 'promote_price' => $v['promote_price'], 'brief' => $v['brief'], 'img' => array('thumb' => API_DATA('PHOTO', $v['goods_img']), 'url' => API_DATA('PHOTO', $v['original_img']), 'small' => API_DATA('PHOTO', $v['thumb'])));
            }
        }
        $categoryGoods[] = array('id' => $val['id'], 'name' => $val['name'], 'goods' => $ngoods);
    }
}
// print_r($categoryGoods);exit;
function gz_get_category_recommend_goods($type = '', $cats = '', $brand = 0, $min = 0, $max = 0, $ext = '')
{
    $brand_where = $brand > 0 ? " AND g.brand_id = '{$brand}'" : '';
    $price_where = $min > 0 ? " AND g.shop_price >= {$min} " : '';
    $price_where .= $max > 0 ? " AND g.shop_price <= {$max} " : '';
    $sql = 'SELECT g.goods_id, g.goods_name, g.goods_name_style, g.market_price, g.shop_price AS org_price, g.promote_price, ' . "IFNULL(mp.user_price, g.shop_price * '{$_SESSION['discount']}') AS shop_price, " . 'promote_start_date, promote_end_date, g.goods_brief, g.goods_thumb, goods_img, g.original_img, b.brand_name ' . 'FROM ' . $GLOBALS['ecs']->table('goods') . ' AS g ' . 'LEFT JOIN ' . $GLOBALS['ecs']->table('brand') . ' AS b ON b.brand_id = g.brand_id ' . "LEFT JOIN " . $GLOBALS['ecs']->table('member_price') . " AS mp " . "ON mp.goods_id = g.goods_id AND mp.user_rank = '{$_SESSION['user_rank']}' " . 'WHERE g.is_on_sale = 1 AND g.is_alone_sale = 1 AND g.is_delete = 0 ' . $brand_where . $price_where . $ext;
    $num = 0;
    $type2lib = array('best' => 'recommend_best', 'new' => 'recommend_new', 'hot' => 'recommend_hot', 'promote' => 'recommend_promotion');
    $num = get_library_number($type2lib[$type]);
Example #6
0
     GZ_Api::outPut($cart_goods['total']);
     break;
 case 'delete':
     $rec_id = _POST('rec_id', 0);
     flow_drop_cart_goods($rec_id);
     $cart_goods = get_cart_goods();
     GZ_Api::outPut($cart_goods['total']);
     break;
 case 'list':
     $GLOBALS['_CFG']['show_goods_in_cart'] = 3;
     $cart_goods = gz_get_cart_goods();
     if (!empty($cart_goods['goods_list'])) {
         foreach ($cart_goods['goods_list'] as $key => $value) {
             unset($cart_goods['goods_list'][$key]['user_id']);
             unset($cart_goods['goods_list'][$key]['session_id']);
             $cart_goods['goods_list'][$key]['img'] = array('thumb' => API_DATA("PHOTO", $value['goods_img']), 'url' => API_DATA("PHOTO", $value['original_img']), 'small' => API_DATA("PHOTO", $value['goods_thumb']));
             // $cart_goods['goods_list'][$key]['id'] = $value['rec_id'];
             if (isset($cart_goods['goods_list'][$key]['product_id'])) {
                 unset($cart_goods['goods_list'][$key]['product_id']);
             }
             unset($cart_goods['goods_list'][$key]['goods_thumb']);
             if (!empty($value['goods_attr'])) {
                 $goods_attr = explode("\n", $value['goods_attr']);
                 $goods_attr = array_filter($goods_attr);
                 $cart_goods['goods_list'][$key]['goods_attr'] = array();
                 foreach ($goods_attr as $v) {
                     $a = explode(':', $v);
                     if (!empty($a[0]) && !empty($a[1])) {
                         $cart_goods['goods_list'][$key]['goods_attr'][] = array('name' => $a[0], 'value' => $a[1]);
                     }
                 }
Example #7
0
function API_DATA($type, $readData)
{
    $outData = array();
    if (empty($readData)) {
        return $readData;
    }
    if (is_array($readData)) {
        $first = current($readData);
        if ($first && is_array($first)) {
            foreach ($readData as $key => $value) {
                $outData[] = API_DATA($type, $value);
            }
            return array_filter($outData);
        }
    }
    switch ($type) {
        case 'PHOTO':
            $outData = getImage($readData);
            break;
        case 'SIMPLEGOODS':
            $outData = array("goods_id" => $readData['goods_id'], "name" => $readData['goods_name'], "market_price" => $readData['market_price'], "shop_price" => $readData['shop_price'], "promote_price" => $readData['promote_price'], "img" => array('thumb' => API_DATA('PHOTO', $readData['goods_img']), 'url' => API_DATA('PHOTO', $readData['original_img']), 'small' => API_DATA('PHOTO', $readData['goods_thumb'])));
            break;
        case 'SEARCHGOODS':
            $outData = array("goods_id" => $readData['goods_id'], "name" => $readData['goods_name'], "market_price" => $readData['market_price'], "shop_price" => $readData['shop_price'], "promote_price" => $readData['promote_price'], "cart_num" => $readData['cart_num'], "img" => array('thumb' => API_DATA('PHOTO', $readData['goods_img']), 'url' => API_DATA('PHOTO', $readData['original_img']), 'small' => API_DATA('PHOTO', $readData['goods_thumb'])));
            break;
        case 'ADDRESS':
            $outData = array("id" => 15, "consignee" => "联系人姓名", "email" => "联系人email", "country" => "国家id", "province" => "省id", "city" => "城市id", "district" => "地区id", "address" => "详细地址", "zipcode" => "邮政编码", "tel" => "联系电话", "mobile" => "手机", "sign_building" => "标志建筑", "best_time" => "最佳送货时间");
            break;
        case 'SIGNUPFIELDS':
            $outData = array("id" => 12, "name" => "说明", "need" => 0);
            break;
        case 'CONFIG':
            $outData = array("shop_closed" => 0, "close_comment" => "关闭原因");
            break;
        case 'CATEGORY':
            $outData = array("id" => 12, "name" => "分类名称", "children" => array('id' => 13, 'name' => 'ssss'));
            break;
        case 'SIMPLEORDER':
            $outData = array("id" => $readData['order_id'], "order_sn" => $readData['order_sn'], "order_time" => $readData['order_time'], "order_status" => $readData['order_status'], "total_fee" => $readData['total_fee']);
            break;
        case 'GOODS':
            $readData['original_img'] || ($readData['original_img'] = $readData['goods_thumb']);
            $outData = array("id" => $readData['goods_id'], "cat_id" => $readData['cat_id'], "goods_sn" => $readData['goods_sn'], "goods_name" => $readData['goods_name'], "month_sumbuy" => $readData['month_sumbuy'], "collected" => $readData['collected'], "market_price" => $readData['market_price'], "shop_price" => price_format($readData['shop_price'], false), "integral" => $readData['integral'], "click_count" => $readData['click_count'], "brand_id" => $readData['brand_id'], "goods_number" => is_numeric($readData['goods_number']) ? $readData['goods_number'] : 65535, "goods_weight" => $readData['goods_weight'], "promote_price" => $readData['promote_price_org'], "formated_promote_price" => price_format($readData['promote_price_org'], false), "promote_start_date" => bjTime($readData['promote_start_date']), "promote_end_date" => bjTime($readData['promote_end_date']), "is_shipping" => $readData['is_shipping'], "img" => array('thumb' => API_DATA('PHOTO', $readData['goods_img']), 'url' => API_DATA('PHOTO', $readData['original_img']), 'small' => API_DATA('PHOTO', $readData['goods_thumb'])), "rank_prices" => array(), "pictures" => array(), "properties" => array(), "specification" => array());
            foreach ($readData['rank_prices'] as $key => $value) {
                $outData['rank_prices'][] = array("id" => $key, "rank_name" => $value['rank_name'], "price" => $value['price']);
            }
            foreach ($readData['pictures'] as $key => $value) {
                $outData['pictures'][] = array("small" => API_DATA('PHOTO', $value['thumb_url']), "thumb" => API_DATA('PHOTO', $value['thumb_url']), "url" => API_DATA('PHOTO', $value['img_url']));
            }
            if (!empty($readData['properties'])) {
                // $readData['properties'] = current($readData['properties']);
                foreach ($readData['properties'] as $key => $value) {
                    // 处理分组
                    foreach ($value as $k => $v) {
                        $v['value'] = strip_tags($v['value']);
                        $outData['properties'][] = $v;
                    }
                }
            }
            foreach ($readData['specification'] as $key => $value) {
                if (!empty($value['values'])) {
                    $value['value'] = $value['values'];
                    unset($value['values']);
                }
                $outData['specification'][] = $value;
            }
            break;
        default:
            break;
    }
    return $outData;
}
Example #8
0
/**
 * by carter ByXiangYang
 * 取得订单商品
 *
 *
 * @param   int     $order_id   订单id
 * @param   string  $goods_field   需要查询的字段
 * @return  array   订单商品数组
 */
function GZ_order_info_goods($order_id, $goods_field)
{
    //所有商品带库号id
    $sql = "SELECT  " . $goods_field . " FROM " . $GLOBALS['ecs']->table('order_goods') . " og  JOIN " . $GLOBALS['ecs']->table('goods') . " g ON g.goods_id=og.goods_id WHERE order_id = '{$order_id}'";
    $res = $GLOBALS['db']->query($sql);
    while ($row = $GLOBALS['db']->fetchRow($res)) {
        if ($row['extension_code'] == 'package_buy') {
            $row['package_goods_list'] = get_package_goods($row['goods_id']);
        }
        $goods_list[] = $row;
    }
    //二次开发 ByXiangYang 需要子订单号 查询物流
    //根据订单id判断库号带商品列表
    $sql = 'SELECT order_id,order_sn,order_status,shipping_name,order_amount,invoice_no,l_id  FROM ' . $GLOBALS['ecs']->table('order_info2');
    $where = " WHERE ";
    $i = 1;
    //整理出商品
    foreach ($goods_list as $gv) {
        if (!isset($result[$gv['l_id']]['goods'])) {
            $where .= $i === 1 ? '(' : ' OR ';
            $where .= "l_id=" . $gv['l_id'];
            $result[$gv['l_id']]['goods'] = array();
        }
        $goods_list_t = array("goods_id" => $gv['goods_id'], "name" => $gv['goods_name'], "goods_status" => $gv['goods_status'], "goods_commented" => $gv['goods_commented'], "goods_number" => $gv['goods_number'], "subtotal" => price_format($gv['subtotal'], false), "formated_shop_price" => price_format($gv['goods_price'], false), "img" => array('small' => API_DATA('PHOTO', $gv['goods_thumb']), 'thumb' => API_DATA('PHOTO', $gv['goods_img']), 'url' => API_DATA('PHOTO', $gv['original_img'])));
        array_push($result[$gv['l_id']]['goods'], $goods_list_t);
        $i++;
    }
    $where .= ') AND order_id2=' . $order_id;
    $sql .= $where;
    $res = $GLOBALS['db']->query($sql);
    while ($row = $GLOBALS['db']->fetchRow($res)) {
        $temp_order2[] = $row;
    }
    //整理出来订单信息
    foreach ($temp_order2 as $tov) {
        foreach ($tov as $tovkey => $tovval) {
            $result[$tov['l_id']][$tovkey] = $tovval;
        }
    }
    $out = array();
    foreach ($result as $k => $v) {
        $out[] = $v;
    }
    return $out;
}
Example #9
0
}
$url_format .= "&amp;min_price=" . $_REQUEST['min_price'] . "&amp;max_price=" . $_REQUEST['max_price'] . "&amp;sort={$sort}";
$url_format .= "{$attr_url}&amp;order={$order}&amp;page=";
$pager['search'] = array('keywords' => stripslashes(urlencode($_REQUEST['keywords'])), 'category' => $category, 'brand' => $brand, 'sort' => $sort, 'order' => $order, 'min_price' => $_REQUEST['min_price'], 'max_price' => $_REQUEST['max_price'], 'action' => $action, 'intro' => empty($intromode) ? '' : trim($intromode), 'goods_type' => $_REQUEST['goods_type'], 'sc_ds' => $_REQUEST['sc_ds'], 'outstock' => $_REQUEST['outstock']);
$pager['search'] = array_merge($pager['search'], $attr_arg);
$pager = get_pager('search.php', $pager['search'], $count, $page, $size);
$pager['display'] = $display;
$smarty->assign('url_format', $url_format);
$smarty->assign('pager', $pager);
assign_template();
assign_dynamic('search');
$position = assign_ur_here(0, $ur_here . ($_REQUEST['keywords'] ? '_' . $_REQUEST['keywords'] : ''));
$smarty->assign('page_title', $position['title']);
// 页面标题
$smarty->assign('ur_here', $position['ur_here']);
// 当前位置
$smarty->assign('intromode', $intromode);
$smarty->assign('categories', get_categories_tree());
// 分类树
$smarty->assign('helps', get_shop_help());
// 网店帮助
$smarty->assign('top_goods', get_top10());
// 销售排行
$smarty->assign('promotion_info', get_promotion_info());
$data = API_DATA("SIMPLEGOODS", $smarty->_var['goods_list']);
if (!empty($smarty->_var['pager'])) {
    $pager = array("total" => $smarty->_var['pager']['record_count'], "count" => count($smarty->_var['goods_list']), "more" => empty($smarty->_var['pager']['page_next']) ? 0 : 1);
} else {
    $pager = NULL;
}
GZ_Api::outPut($data, $pager);
Example #10
0
$data['collected'] = 0;
if (!empty($tmp[0]) && $tmp[0] == 'desc') {
    $base = sprintf('<base href="%s/" />', dirname($GLOBALS['ecs']->url()));
    $html = '<!DOCTYPE html><html><head><title>' . $data['goods_name'] . '</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta name="viewport" content="width=device-width, initial-scale=0.4"><meta name="viewport" content="initial-scale = 0.4 , minimum-scale = 0.4 , maximum-scale = 1.0" /><style>img {width: auto\\9;height: auto;vertical-align: middle;border: 0;-ms-interpolation-mode: bicubic;max-width: 100%; }html { font-size:100%; } </style>' . $base . '</head><body>' . $data['goods_desc'] . '</body></html>';
    // print_r($html);exit;
    GZ_Api::outPut(array('data' => $html));
} else {
    if (GZ_Api::$session['uid']) {
        // 查询收藏夹状态
        $sql = "SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('collect_goods') . " WHERE user_id='{$_SESSION['user_id']}' AND goods_id = '{$goods_id}'";
        if ($GLOBALS['db']->GetOne($sql) > 0) {
            $data['collected'] = 1;
        }
    }
    // print_r($data);exit;
    GZ_Api::outPut(API_DATA('GOODS', $data));
}
function gz_get_goods_gallery($goods_id)
{
    $sql = 'SELECT img_id, img_url, thumb_url, img_desc, img_original' . ' FROM ' . $GLOBALS['ecs']->table('goods_gallery') . " WHERE goods_id = '{$goods_id}' LIMIT " . $GLOBALS['_CFG']['goods_gallery_number'];
    $row = $GLOBALS['db']->getAll($sql);
    /* 格式化相册图片路径 */
    foreach ($row as $key => $gallery_img) {
        $row[$key]['img_url'] = get_image_path($goods_id, $gallery_img['img_original'], false, 'gallery');
        $row[$key]['thumb_url'] = get_image_path($goods_id, $gallery_img['img_url'], true, 'gallery');
    }
    return $row;
}
/**
 * 获得指定商品的关联文章
 *