/**
     * 登录
     */
    public function login ()
    {
        $result = $this->_Model->checkLogin($this->getParam());

        if ($result === false) {
            jsonExit($this->_Model->getError(), false);    
        }

        jsonExit('ok', true);
    }
Exemple #2
3
	public function add_comment (){
		//添加评论    
	    if(!empty ($_REQUEST['user_id']))
		{
	        $goods_id = !empty ($_REQUEST['goods_id'])?trim($_REQUEST['goods_id']):die;
	        $user_id =trim($_REQUEST['user_id']);
	        $user_name = !empty($_REQUEST['user_name'])?trim($_REQUEST['user_name']):$_SESSION['user_name'];
	        $content = trim($_REQUEST['content']);
	        $content = gbktoutf8($content);
			if(EC_CHARSET == 'utf-8'){
				$user_name = gbktoutf8($user_name);
				$content = gbktoutf8($content);
			}else{
				$user_name =  utf8togbk($user_name);
				$content = utf8togbk($content);
			}
	        $email = !empty($_REQUEST['email']) ? trim($_REQUEST['email']):$_SESSION['email'] ;
	        $email = htmlspecialchars($email);
	        $user_name = htmlspecialchars($user_name);	        $rank = !empty($_REQUEST['rank']) ? trim($_REQUEST['rank']):1 ;
	        $msg= zy_add_comment($goods_id,$user_id,$email,$user_name,$content,$rank);
	        jsonExit($msg);
	    }else
		{
	        $msg = rpcLang('goods.php', 'no_user_id');
	        $error['no_user_id'] = $msg;
	        jsonExit($error);
	    }
	}
Exemple #3
0
function check_write_access($listId = null)
{
    if (have_write_access($listId)) {
        return;
    }
    jsonExit(array('total' => 0, 'list' => array(), 'denied' => 1));
}
Exemple #4
0
 public function memberinfo()
 {
     $status = $this->_status;
     if ($this->_userid) {
         $memberinfo = array('userid' => $this->_userid, 'username' => $this->_username, 'groupid' => $this->_groupid, 'nickname' => $this->_nickname, 'status' => L('status' . $status, '', 'mydiy'));
         $status = array('status' => true, 'msg' => $memberinfo);
         jsonExit($status);
     } else {
         $memberinfo = array();
         $status = array('status' => false, 'msg' => $memberinfo);
         jsonExit($status);
     }
 }
Exemple #5
0
	public function recommendGoods () {
		$article_id = isset($_GET['id']) ? intval($_GET['id']) : 14;
		$article = array();
		if($article_id > 0)
		{
			//文章详细信息
			$article = get_article_info($article_id);
			//文章关联产品
			$article_related_goods = article_related_goods($article_id);		
			$articleArr = array('article'=>$article,'article_related_goods'=>$article_related_goods);
		}
		//var_dump($articleArr);exit;
		jsonExit($articleArr);
	}
Exemple #6
0
	public function adList () {
		$flashdb = array();
	    if (file_exists(ROOT_PATH .'data/flash_data.xml'))
	    {
	
	        // 兼容v2.7.0及以前版本
	        if (!preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"\stext="([^"]*)"\ssort="([^"]*)"/', file_get_contents(ROOT_PATH . 'data/flash_data.xml'), $t, PREG_SET_ORDER))
	        {
	            preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"\stext="([^"]*)"/', file_get_contents(ROOT_PATH . 'data/flash_data.xml'), $t, PREG_SET_ORDER);
	        }
	       
	        if (!empty($t))
	        {
	            foreach ($t as $key => $val)
	            {
	                $val[4] = isset($val[4]) ? $val[4] : 0;
	                $flashdb[] = array('src'=>$val[1],'url'=>$val[2],'text'=>$val[3],'sort'=>$val[4]);
	            }
	        }
	
	    } else {
	    	
	        // 兼容v2.7.0及以前版本
	        if (!preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"/', file_get_contents(ROOT_PATH . 'data/cycle_image.xml'), $t, PREG_SET_ORDER))
	        {
	            preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"/', file_get_contents(ROOT_PATH . 'data/cycle_image.xml'), $t, PREG_SET_ORDER);
	        }
	       
	        if (!empty($t))
	        {
	            foreach ($t as $key => $val)
	            {
	                $val[4] = isset($val[4]) ? $val[4] : 0;
	                $flashdb[] = array('src'=>$val[1],'url'=>$val[2]);
	            }
	        }
	    	
	    }
	    jsonExit($flashdb); 
	}
Exemple #7
0
 public function public_day()
 {
     //获取当天日期代码
     $now = SYS_TIME;
     $year = date("Y", $now);
     $month = date("m", $now);
     $day = date("d", $now);
     $week = date("w", $now);
     switch ($week) {
         case 0:
             $week = "日";
             break;
         case 1:
             $week = "一";
             break;
         case 2:
             $week = "二";
             break;
         case 3:
             $week = "三";
             break;
         case 4:
             $week = "四";
             break;
         case 5:
             $week = "五";
             break;
         case 6:
             $week = "六";
             break;
     }
     $calendar = new Calendar();
     $arr = $calendar->Cal($year, $month, $day);
     $lunar = "农历" . $arr["month"] . $arr["day"];
     $solar = date("Y.m.d") . "周" . $week;
     $day = $day;
     $status = array('status' => 'true', 'msg' => array('lunar' => $lunar, 'solar' => $solar, 'day' => $day));
     jsonExit($status);
 }
Exemple #8
0
} elseif (isset($_GET['setHideList'])) {
    check_write_access();
    $listId = (int) _post('list');
    $flag = (int) _post('hide');
    $bitwise = $flag == 0 ? 'taskview & ~4' : 'taskview | 4';
    $db->dq("UPDATE {mytinytodo_lists} SET taskview={$bitwise} WHERE id={$listId}");
    module_invoke_all('mytinytodo_set_hide_list', array('list' => $listId, 'flag' => $flag));
    jsonExit(array('total' => 1));
} elseif (isset($_GET['setShowCompletedTasks'])) {
    check_write_access();
    $listId = (int) _post('list');
    $flag = (int) _post('compl');
    $bitwise = $flag == 0 ? 'taskview & ~1' : 'taskview | 1';
    $db->dq("UPDATE {mytinytodo_lists} SET taskview={$bitwise} WHERE id={$listId}");
    module_invoke_all('mytinytodo_set_show_completed_tasks', array('list' => $listId, 'flag' => $flag));
    jsonExit(array('total' => 1));
}
###################################################################################################
function prepareTaskRow($r)
{
    $lang = Lang::instance();
    $dueA = prepare_duedate($r['duedate']);
    $c_date = prepare_duedate($r['c_date']);
    $reminderformat = Config::get('dateformat2');
    $reminderdate = formatTime($reminderformat, $r['r_date']);
    $formatCreatedInline = $formatCompletedInline = Config::get('dateformatshort');
    if (date('Y') != date('Y', $r['d_created'])) {
        $formatCreatedInline = Config::get('dateformat2');
    }
    if ($r['d_completed'] && date('Y') != date('Y', $r['d_completed'])) {
        $formatCompletedInline = Config::get('dateformat2');
Exemple #9
0
function check_admin_access()
{
    if (!is_admin()) {
        jsonExit(array('total' => 0, 'list' => array(), 'denied' => 1));
    }
}
Exemple #10
0
 public function zonghe_remind()
 {
     $this->project_db = pc_base::load_model('project_model');
     $this->products_db = pc_base::load_model('products_model');
     $num1 = $this->project_db->count('status=1');
     $num2 = $this->products_db->count('status=1');
     $this->ststus['success'] = true;
     $this->ststus['msg'] = $num1 + $num2;
     jsonExit($this->ststus);
 }
Exemple #11
0
        $user_id =trim($_REQUEST['user_id']);
        $user_name = !empty($_REQUEST['user_name'])?trim($_REQUEST['user_name']):$_SESSION['user_name'];
        $user_name = utf8togbk($user_name);
        $email = !empty($_REQUEST['email']) ? trim($_REQUEST['email']):$_SESSION['email'] ;
        $email = htmlspecialchars($email);
        $user_name = htmlspecialchars($user_name);
        $content = trim($_REQUEST['content']);
        $content = utf8togbk($content);
        $rank = !empty($_REQUEST['rank']) ? trim($_REQUEST['rank']):1 ;
        $msg= zy_add_comment($goods_id,$user_id,$email,$user_name,$content,$rank);
        jsonExit($msg);
    }else
	{
        $msg = rpcLang('goods.php', 'no_user_id');
        $error['no_user_id'] = $msg;
        jsonExit($error);
    }
}


/**
 * 查询评论内容
 *
 * @access  public
 * @params  integer     $id
 * @params  integer     $type
 * @params  integer     $page
 * @params  integer     $size
 * @return  array
 */
function zy_assign_comment($id, $type, $page = 1, $size=3)
Exemple #12
0
	public function cancel_order () {
		require(RPC_ROOT . 'includes/lib_order.php');
	    include_once('includes/lib_transaction.php');	    
	    checkLogin();
	    $user_id = intval($_SESSION['user_id']);	    
	    $order_id = isset($_GET['order_id']) ? intval($_GET['order_id']) : 0;
	    $msg = zy_cancel_order($order_id, $user_id);	    
	    jsonExit("{\"status\":\"$msg[0]\",\"code\":\"$msg[1]\"}");
	}
Exemple #13
0
	public function done () {
		global $ecs,$db,$_CFG;
		include_once(RPC_ROOT.'includes/lib_clips_ec.php');
	    include_once(RPC_ROOT.'includes/lib_payment.php');
	
	    /* 取得购物类型 */
	    $flow_type = isset($_SESSION['flow_type']) ? intval($_SESSION['flow_type']) : CART_GENERAL_GOODS;
	
	    /* 检查购物车中是否有商品 */
	    $sql = "SELECT COUNT(*) FROM " . $ecs->table('cart') ." WHERE session_id = '" . SESS_ID . "' " .
	           "AND parent_id = 0 AND is_gift = 0 AND rec_type = '$flow_type'";
	    
		if ($db->getOne($sql) == 0)
	    {
			$msg = rpcLang('flow.php', 'no_goods_in_cart');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    /* 检查商品库存,如果使用库存,且下订单时减库存,则减少库存 */
	    if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE)
	    {
	        $cart_goods_stock = get_cart_goods();       
	        $_cart_goods_stock = array();        
	        foreach ($cart_goods_stock['goods_list'] as $value)
	        {
	            $_cart_goods_stock[$value['rec_id']] = $value['goods_number'];
	        }       
	        zy_flow_cart_stock($_cart_goods_stock);        
	        unset($cart_goods_stock, $_cart_goods_stock);
	    }
	
	    /*
	     * 检查用户是否已经登录
	     * 如果用户已经登录了则检查是否有默认的收货地址
	     * 如果没有登录则跳转到登录和注册页面
	     */
	    if (empty($_SESSION['direct_shopping']) && $_SESSION['user_id'] == 0)
	    {
	        /* 用户没有登录且没有选定匿名购物,转向到登录页面 */
	        $msg = rpcLang('user.php', 'nologin');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    $consignee = get_consignee($_SESSION['user_id']);
	
	    /* 检查收货人信息是否完整 */
	    if (!check_consignee_info($consignee, $flow_type))
	    {
	        $msg = rpcLang('flow.php', 'user_address_not_full');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	
	    $_GET['how_oos']	  = isset($_GET['how_oos']) ? intval($_GET['how_oos']) : 0;
	    $_GET['card_message'] = isset($_GET['card_message']) ? htmlspecialchars($_GET['card_message']) : '';
	    $_GET['inv_type']     = !empty($_GET['inv_type']) ? htmlspecialchars($_GET['inv_type']) : '';
	    $_GET['inv_payee']    = isset($_GET['inv_payee']) ? htmlspecialchars($_GET['inv_payee']) : '';
	    $_GET['inv_content']  = isset($_GET['inv_content']) ? htmlspecialchars($_GET['inv_content']) : '';
	    $_GET['postscript']   = isset($_GET['postscript']) ? htmlspecialchars($_GET['postscript']) : '';
	
	    $referer = empty($_GET['referer']) ? 'Android':trim($_GET['referer']);
	    $order = array(
	        //'shipping_id'     => intval($_POST['shipping']),
	    	'shipping_id'     => intval($_GET['shipping']),//快递id
	        'pay_id'          => intval($_GET['payment']),//支付方式id
	        'pack_id'         => isset($_GET['pack']) ? intval($_GET['pack']) : 0,//包装
	        'card_id'         => isset($_GET['card']) ? intval($_GET['card']) : 0,//贺卡
	        'card_message'    => trim($_GET['card_message']),
	        'surplus'         => isset($_POST['surplus']) ? floatval($_POST['surplus']) : 0.00,
	        'integral'        => isset($_POST['integral']) ? intval($_POST['integral']) : 0,
	        'bonus_id'        => isset($_GET['bonus']) ? intval($_GET['bonus']) : 0,
	        'need_inv'        => empty($_POST['need_inv']) ? 0 : 1,
	        'postscript'      => trim($_POST['postscript']),
	        'how_oos'         => isset($_LANG['oos'][$_POST['how_oos']]) ? addslashes($_LANG['oos'][$_POST['how_oos']]) : '',
	        'need_insure'     => isset($_POST['need_insure']) ? intval($_POST['need_insure']) : 0,
	        'user_id'         => $_SESSION['user_id'],
	        'add_time'        => gmtime(),
	        'order_status'    => OS_UNCONFIRMED,
	        'shipping_status' => SS_UNSHIPPED,
	        'pay_status'      => PS_UNPAYED,
	        'agency_id'       => get_agency_by_regions(array($consignee['country'], $consignee['province'], $consignee['city'], $consignee['district']))
	        );
		if(EC_CHARSET == 'utf-8'){
			$order['inv_type'] = gbktoutf8($_GET['inv_type']);
			$order['inv_payee'] = gbktoutf8(trim($_GET['inv_payee']));
			$order['inv_content'] = gbktoutf8($_GET['inv_content']);
		}else{
			$order['inv_type'] = utf8togbk($_GET['inv_type']);
			$order['inv_payee'] = utf8togbk(trim($_GET['inv_payee']));
			$order['inv_content'] = utf8togbk($_GET['inv_content']);
		}
	
	    /* 扩展信息 */
	    if (isset($_SESSION['flow_type']) && intval($_SESSION['flow_type']) != CART_GENERAL_GOODS)
	    {
	        $order['extension_code'] = $_SESSION['extension_code'];
	        $order['extension_id'] = $_SESSION['extension_id'];
	    }
	    else
	    {
	        $order['extension_code'] = '';
	        $order['extension_id'] = 0;
	    }
	    $user_id = $_SESSION['user_id'];
		/*
	    #检查积分余额是否合法
	    $user_id = $_SESSION['user_id'];
	    if ($user_id > 0)
	    {
	        $user_info = user_info($user_id);
	
	        $order['surplus'] = min($order['surplus'], $user_info['user_money'] + $user_info['credit_line']);
	        if ($order['surplus'] < 0)
	        {
	            $order['surplus'] = 0;
	        }
	
	        // 查询用户有多少积分
	        $flow_points = flow_available_points();  // 该订单允许使用的积分
	        $user_points = $user_info['pay_points']; // 用户的积分总数
	
	        $order['integral'] = min($order['integral'], $user_points, $flow_points);
	        if ($order['integral'] < 0)
	        {
	            $order['integral'] = 0;
	        }
	    }
	    else
	    {
	        $order['surplus']  = 0;
	        $order['integral'] = 0;
	    }*/
	
	    #检查红包是否存在
	    if ($order['bonus_id'] > 0)
	    {
	        $bonus = bonus_info($order['bonus_id']);
	
	        if (empty($bonus) || $bonus['user_id'] != $user_id || $bonus['order_id'] > 0 || $bonus['min_goods_amount'] > cart_amount(true, $flow_type))
	        {
	            $order['bonus_id'] = 0;
	        }
	        
	    }
	    elseif (isset($_POST['bonus_sn']))
	    {
	        $bonus_sn = trim($_POST['bonus_sn']);
	        $bonus = bonus_info(0, $bonus_sn);
	        $now = gmtime();
	        if (empty($bonus) || $bonus['user_id'] > 0 || $bonus['order_id'] > 0 || $bonus['min_goods_amount'] > cart_amount(true, $flow_type) || $now > $bonus['use_end_date'])
	        {
	        }
	        else
	        {
	            if ($user_id > 0)
	            {
	                $sql = "UPDATE " . $ecs->table('user_bonus') . " SET user_id = '$user_id' WHERE bonus_id = '$bonus[bonus_id]' LIMIT 1";
	                $db->query($sql);
	            }
	            $order['bonus_id'] = $bonus['bonus_id'];
	            $order['bonus_sn'] = $bonus_sn;
	        }
	    }
		
	
	    /* 订单中的商品 */
	    $cart_goods = cart_goods($flow_type);
	
	    if (empty($cart_goods))
	    {
	        $msg = rpcLang('flow.php', 'no_goods_in_cart');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    /* 检查商品总额是否达到最低限购金额 */
	    if ($flow_type == CART_GENERAL_GOODS && cart_amount(true, CART_GENERAL_GOODS) < $_CFG['min_goods_amount'])
	    {
			$msg = rpcLang('flow.php', 'goods_amount_not_enough');
			jsonExit("{\"status\":\"$msg\"}");
	    }
	
	    /* 收货人信息 */
	    foreach ($consignee as $key => $value)
	    {
	        $order[$key] = addslashes($value);
	    }
	
	    /* 订单中的总额 */
	    $total = order_fee($order, $cart_goods, $consignee);
	
	    $order['bonus']        = $total['bonus'];
	    $order['goods_amount'] = $total['goods_price'];
	    $order['discount']     = $total['discount'];
	    $order['surplus']      = $total['surplus'];
	    $order['tax']          = $total['tax'];
	    #购物车中的商品能享受红包支付的总额
	    $discount_amout = compute_discount_amount();
		#红包和积分最多能支付的金额为商品总额
	    $temp_amout = $order['goods_amount'] - $discount_amout;
		if ($temp_amout <= 0)
	    {
	        $order['bonus_id'] = 0;
	    }
	
	    /* 配送方式 */
	    if ($order['shipping_id'] > 0)
	    {
	        $shipping = shipping_info($order['shipping_id']);
	        $order['shipping_name'] = addslashes($shipping['shipping_name']);
	    }
	    $order['shipping_fee'] = $total['shipping_fee'];
	    $order['insure_fee']   = $total['shipping_insure'];
	
	    /* 支付方式 */
	    if ($order['pay_id'] > 0)
	    {
	        $payment = payment_info($order['pay_id']);
	        $order['pay_name'] = addslashes($payment['pay_name']);
	    }
	    $order['pay_fee'] = $total['pay_fee'];
	    $order['cod_fee'] = $total['cod_fee'];
	
	    /* 商品包装 */
	    if ($order['pack_id'] > 0)
	    {
	        $pack               = pack_info($order['pack_id']);
	        $order['pack_name'] = addslashes($pack['pack_name']);
	    }
	    $order['pack_fee'] = $total['pack_fee'];
	
	
	    /* 祝福贺卡 */
	    if ($order['card_id'] > 0)
	    {
	        $card               = card_info($order['card_id']);
	        $order['card_name'] = addslashes($card['card_name']);
	    }
	    $order['card_fee']      = $total['card_fee'];
	
	    $order['order_amount']  = number_format($total['amount'], 2, '.', '');
	
	    /* 如果全部使用余额支付,检查余额是否足够 */
	    if ($payment['pay_code'] == 'balance' && $order['order_amount'] > 0)
	    {
	        if($order['surplus'] >0) //余额支付里如果输入了一个金额
	        {
	            $order['order_amount'] = $order['order_amount'] + $order['surplus'];
	            $order['surplus'] = 0;
	        }
	        if ($order['order_amount'] > ($user_info['user_money'] + $user_info['credit_line']))
	        {
	            show_message($_LANG['balance_not_enough']);
	        }
	        else
	        {
	            $order['surplus'] = $order['order_amount'];
	            $order['order_amount'] = 0;
	        }
	    }
	
	    /* 如果订单金额为0(使用余额或积分或红包支付),修改订单状态为已确认、已付款 */
	    if ($order['order_amount'] <= 0)
	    {
	        $order['order_status'] = OS_CONFIRMED;
	        $order['confirm_time'] = gmtime();
	        $order['pay_status']   = PS_PAYED;
	        $order['pay_time']     = gmtime();
	        $order['order_amount'] = 0;
	    }
	
	    $order['integral_money']   = $total['integral_money'];
	    $order['integral']         = $total['integral'];
	
	    if ($order['extension_code'] == 'exchange_goods')
	    {
	        $order['integral_money']   = 0;
	        $order['integral']         = $total['exchange_integral'];
	    }
	
	    $order['from_ad']          = !empty($_SESSION['from_ad']) ? $_SESSION['from_ad'] : '0';
	    $order['referer']          = !empty($_SESSION['referer']) ? addslashes($_SESSION['referer']) : '';
	
	    /* 记录扩展信息 */
	    if ($flow_type != CART_GENERAL_GOODS)
	    {
	        $order['extension_code'] = $_SESSION['extension_code'];
	        $order['extension_id'] = $_SESSION['extension_id'];
	    }
	
	    $affiliate = unserialize($_CFG['affiliate']);
	    if(isset($affiliate['on']) && $affiliate['on'] == 1 && $affiliate['config']['separate_by'] == 1)
	    {
	        //推荐订单分成
	        $parent_id = get_affiliate();
	        if($user_id == $parent_id)
	        {
	            $parent_id = 0;
	        }
	    }
	    elseif(isset($affiliate['on']) && $affiliate['on'] == 1 && $affiliate['config']['separate_by'] == 0)
	    {
	        //推荐注册分成
	        $parent_id = 0;
	    }
	    else
	    {
	        //分成功能关闭
	        $parent_id = 0;
	    }
	    $order['parent_id'] = $parent_id;
	
	    /* 插入订单表 */
	    $error_no = 0;
	    do
	    {
	        $order['order_sn'] = get_order_sn(); //获取新订单号
			
	        $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('order_info'), $order, 'INSERT');
	
	        $error_no = $GLOBALS['db']->errno();
	
	        if ($error_no > 0 && $error_no != 1062)
	        {
	            die($GLOBALS['db']->errorMsg());
	        }
	    }
	    while ($error_no == 1062); //如果是订单号重复则重新提交数据
	
	    $new_order_id = $db->insert_id();
	    $order['order_id'] = $new_order_id;
	
	    /* 插入订单商品 */
	    $sql = "INSERT INTO " . $ecs->table('order_goods') . "( " .
	                "order_id, goods_id, goods_name, goods_sn, goods_number, market_price, ".
	                "goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id) ".
	            " SELECT '$new_order_id', goods_id, goods_name, goods_sn, goods_number, market_price, ".
	                "goods_price, goods_attr, is_real, extension_code, parent_id, is_gift, goods_attr_id".
	            " FROM " .$ecs->table('cart') .
	            " WHERE session_id = '".SESS_ID."' AND rec_type = '$flow_type'";
	    $db->query($sql);
	    /* 修改拍卖活动状态 */
	    if ($order['extension_code']=='auction')
	    {
	        $sql = "UPDATE ". $ecs->table('goods_activity') ." SET is_finished='2' WHERE act_id=".$order['extension_id'];
	        $db->query($sql);
	    }
	
	    /* 处理余额、积分、红包 */
	    if ($order['user_id'] > 0 && $order['surplus'] > 0)
	    {
	        log_account_change($order['user_id'], $order['surplus'] * (-1), 0, 0, 0, sprintf($_LANG['pay_order'], $order['order_sn']));
	    }
	    if ($order['user_id'] > 0 && $order['integral'] > 0)
	    {
	        log_account_change($order['user_id'], 0, 0, 0, $order['integral'] * (-1), sprintf($_LANG['pay_order'], $order['order_sn']));
	    }
	
	    if ($order['bonus_id'] > 0 && $temp_amout > 0)
	    {
	        use_bonus($order['bonus_id'], $new_order_id);
	    }
	
	    /* 如果使用库存,且下订单时减库存,则减少库存 */
	    if ($_CFG['use_storage'] == '1' && $_CFG['stock_dec_time'] == SDT_PLACE)
	    {
	        //change_order_goods_storage($order['order_id'], true, SDT_PLACE);
	    }
	error_log('1',3,'flow.log');
	    /* 给商家发邮件 */
	    /* 增加是否给客服发送邮件选项 */
	    if ($_CFG['send_service_email'] && $_CFG['service_email'] != '')
	    {
	    	error_log('2',3,'flow.log');
	        $tpl = get_mail_template('remind_of_new_order');
			/*
			$smarty->assign('order', $order);
	        $smarty->assign('goods_list', $cart_goods);
	        $smarty->assign('shop_name', $_CFG['shop_name']);
	        $smarty->assign('send_date', date($_CFG['time_format']));
	        $content = $smarty->fetch('str:' . $tpl['template_content']);
	        */
			send_mail($_CFG['shop_name'], $_CFG['service_email'], $tpl['template_subject'], $content, $tpl['is_html']);
	    }
	error_log('2',3,'flow.log');
	    /* 如果需要,发短信 */
	    if ($_CFG['sms_order_placed'] == '1' && $_CFG['sms_shop_mobile'] != '')
	    {
	        include_once(RPC_ROOT.'includes/cls_sms.php');
	        $sms = new sms();
	        $msg = $order['pay_status'] == PS_UNPAYED ?
	            $_LANG['order_placed_sms'] : $_LANG['order_placed_sms'] . '[' . $_LANG['sms_paid'] . ']';
	        $sms->send($_CFG['sms_shop_mobile'], sprintf($msg, $order['consignee'], $order['tel']), 0);
	    }
	error_log('3',3,'flow.log');
	    /* 如果订单金额为0 处理虚拟卡 */
	    if ($order['order_amount'] <= 0)
	    {
	        $sql = " SELECT goods_id, goods_name, goods_number AS num FROM ".$GLOBALS['ecs']->table('cart') .
	               " WHERE is_real = 0 AND extension_code = 'virtual_card'".
	               " AND session_id = '".SESS_ID."' AND rec_type = '$flow_type'";
	
	        $res = $GLOBALS['db']->getAll($sql);
	error_log('4',3,'flow.log');
	        $virtual_goods = array();
	        foreach ($res AS $row)
	        {
	            $virtual_goods['virtual_card'][] = array('goods_id' => $row['goods_id'], 'goods_name' => $row['goods_name'], 'num' => $row['num']);
	        }
	
	        if ($virtual_goods AND $flow_type != CART_GROUP_BUY_GOODS)
	        {
	            /* 虚拟卡发货 */
	            if (virtual_goods_ship($virtual_goods,$msg, $order['order_sn'], true))
	            {
	                /* 如果没有实体商品,修改发货状态,送积分和红包 */
	                $sql = "SELECT COUNT(*)" .
	                        " FROM " . $ecs->table('order_goods') .
	                        " WHERE order_id = '$order[order_id]' " .
	                        " AND is_real = 1";
	                if ($db->getOne($sql) <= 0)
	                {
	                    /* 修改订单状态 */
	                    update_order($order['order_id'], array('shipping_status' => SS_SHIPPED, 'shipping_time' => gmtime()));
	error_log('5',3,'flow.log');
	                    /* 如果订单用户不为空,计算积分,并发给用户;发红包 */
	                    if ($order['user_id'] > 0)
	                    {
	                        /* 取得用户信息 */
	                        $user = user_info($order['user_id']);
	
	                        /* 计算并发放积分 */
	                        $integral = integral_to_give($order);
	                        log_account_change($order['user_id'], 0, 0, intval($integral['rank_points']), intval($integral['custom_points']), sprintf($_LANG['order_gift_integral'], $order['order_sn']));
	error_log('6',3,'flow.log');
	                        /* 发放红包 */
	                        send_order_bonus($order['order_id']);
	                    }
	                }
	            }
	        }
	
	    }
	
	    /* 清空购物车 */
	    clear_cart($flow_type);
	error_log('7',3,'flow.log');
	    /* 清除缓存,否则买了商品,但是前台页面读取缓存,商品数量不减少 */
	    clear_all_files();
	
	    /* 插入支付日志 */
	    //$order['log_id'] = insert_pay_log($new_order_id, $order['order_amount'], PAY_ORDER);
	
	   error_log('8',3,'flow.log'); 
		
		/*取得支付代码
	
		#取得支付信息,生成支付代码 
	    if ($order['order_amount'] > 0)
	    {
	        $payment = payment_info($order['pay_id']);
	
	        include_once('includes/modules/payment/' . $payment['pay_code'] . '.php');
	
	        $pay_obj    = new $payment['pay_code'];
	
	        $pay_online = $pay_obj->get_code($order, unserialize_config($payment['pay_config']));
	
	        $order['pay_desc'] = $payment['pay_desc'];
	
	        $smarty->assign('pay_online', $pay_online);
	    }
		*/
	
	    if(!empty($order['shipping_name']))
	    {
	        $order['shipping_name']=trim(stripcslashes($order['shipping_name']));
	    }
	error_log('9',3,'flow.log');
	    /*
		#订单信息
	    $smarty->assign('order',      $order);
	    $smarty->assign('total',      $total);
	    $smarty->assign('goods_list', $cart_goods);
	    $smarty->assign('order_submit_back', sprintf($_LANG['order_submit_back'], $_LANG['back_home'], $_LANG['goto_user_center'])); // 返回提示
		*/
	    //user_uc_call('add_feed', array($order['order_id'], BUY_GOODS)); //推送feed到uc
	    unset($_SESSION['flow_consignee']); // 清除session中保存的收货人信息
	    unset($_SESSION['flow_order']);
	    unset($_SESSION['direct_shopping']);
	
	
		$order_done = array('order'=>$order,'total'=>$total,'cart_goods'=>$cart_goods);
		//var_dump($order_done);exit;
	error_log('10',3,'flow.log');	
		$order_id = $order['order_id'];
		$price = $order['order_amount'];
		$order = array ('order_id'=>$order_id,'order_number'=>$order['order_sn'],'price'=>$price) ;
		error_log('11',3,'flow.log');
		//print_r($order);die;
		jsonExit($order);
		
	}
    /**
     * 编辑合伙人保存
     */
    public function edit() {
        $param = $this->getParam();
        $param['openid'] = $this->_openId;

        $phone = $this->getParam('phone');
        $code = $this->getParam('code');
        if (!empty($phone) && !empty($code)) {
            //检查验证码是否正确
            $rcode = $this->model->checkCode($this->_openId, $phone, $code);
            if ($rcode ['code'] != $code) {
                jsonExit('验证码错误,请重新操作!', false);
            }
            $param ['phone'] = $this->getParam('phone');
        }

        //重新审核
        if ($this->getParam('recheck')) {
            $param['state'] = 0;
        }
        //合伙人
        $result = $this->model->updatePartner($param);

        if ($result === false) {
            jsonExit($this->model->getError(), false);
        }
        //重新审核
        if ($this->getParam('recheck')) {
            jsonExit('申请成功!', true);
        }
        jsonExit('修改成功!', true);
    }
Exemple #15
0
<?php

	/**
	  *	获取制定配置的信息LLX 2012.06.01 16:04:01
	  *	
	  *	@param  code
	  *	@return   value | NO
	  */

	define('IN_ECS', true);
	include_once ('./includes/init.php');

	$code = isset($_GET['code']) ? trim($_GET['code']) : 'shop_name';
	if(!empty($_CFG) && isset($_CFG[$code]))
	{
		$msg = "{\"code\":\"".$_CFG[$code]."\"}";
	}
	else
	{
		$msg = "{\"code\":\"no\"}";
	}

	jsonExit($msg);
Exemple #16
0
 /**
  * **
  *
  * 项目提交
  */
 public function submit()
 {
     $data = array("success" => false, 'msg' => '');
     $id = $_GET['id'];
     if (!isset($id)) {
         $data['msg'] = '数据ID错误';
         jsonExit($data);
     }
     $groupid = $this->memberinfo['groupid'];
     if ($groupid < 12) {
         $data['msg'] = '请等待资料审核通过';
         jsonExit($data);
     }
     $this->content_db = pc_base::load_model('content_model');
     $sql = "update gxw_project set status=1 where id=" . $id;
     $this->content_db->query($sql);
     $data['success'] = true;
     jsonExit($data);
 }
Exemple #17
0
    }
}

/* 验证用户邮箱地址是否被注册 */
elseif($act == 'check_email')
{
    $email = trim($_GET['email']);
    if ($user->check_email($email))
    {
        //echo 'false';
        jsonExit("{\"status\":\"0\",\"code\":\"1\"}"); 
    }
    else
    {
        //echo 'ok';
        jsonExit("{\"status\":\"1\",\"code\":\"0\"}"); 
    }
}


/* 验证用户注册用户名是否可以注册 */
function  is_registered ($username) {
 	include_once(RPC_ROOT . 'includes/lib_passport.php');
 	global $user;
 	$username = json_str_iconv($username);

    if ($user->check_user($username) || admin_registered($username))
    {
        return false;
    }
    else
Exemple #18
0
/**
 * 添加商品到购物车
 *
 * @access  public
 * @param   integer $goods_id   商品编号
 * @param   integer $num        商品数量
 * @param   array   $spec       规格值对应的id数组
 * @param   integer $parent     基本件
 * @return  boolean
 */
function zy_addto_cart($goods_id, $num = 1, $spec = array(), $parent = 0)
{
    $_parent_id = $parent;

    /* 取得商品信息 */
    $sql = "SELECT g.goods_name, g.goods_sn, g.is_on_sale, g.is_real, ".
                "g.market_price, g.shop_price AS org_price, g.promote_price, g.promote_start_date, ".
                "g.promote_end_date, g.goods_weight, g.integral, g.extension_code, ".
                "g.goods_number, g.is_alone_sale, g.is_shipping,".
                "IFNULL(mp.user_price, g.shop_price * '$_SESSION[discount]') AS shop_price ".
            " FROM " .$GLOBALS['ecs']->table('goods'). " AS g ".
            " 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.goods_id = '$goods_id'" .
            " AND g.is_delete = 0";
    $goods = $GLOBALS['db']->getRow($sql);
    
    
    if (empty($goods) && false)
    {
    	error_log('1',3,'flow.model.log');
//        $GLOBALS['err']->add($GLOBALS['_LANG']['goods_not_exists'], ERR_NOT_EXISTS);
        
        return false;
    }

    /* 如果是作为配件添加到购物车的,需要先检查购物车里面是否已经有基本件 */
    if ($parent > 0)
    {
        $sql = "SELECT COUNT(*) FROM " . $GLOBALS['ecs']->table('cart') .
                " WHERE goods_id='$parent' AND session_id='" . SESS_ID . "' AND extension_code <> 'package_buy'";
        if ($GLOBALS['db']->getOne($sql) == 0)
        {
//            $GLOBALS['err']->add($GLOBALS['_LANG']['no_basic_goods'], ERR_NO_BASIC_GOODS);
			error_log('2',3,'flow.model.log');
            return false;
        }
    }

    /* 是否正在销售 */
    if ($goods['is_on_sale'] == 0)
    {
//        $GLOBALS['err']->add($GLOBALS['_LANG']['not_on_sale'], ERR_NOT_ON_SALE);
		error_log('3',3,'flow.model.log');
        return false;
    }

    /* 不是配件时检查是否允许单独销售 */
    if (empty($parent) && $goods['is_alone_sale'] == 0)
    {
//        $GLOBALS['err']->add($GLOBALS['_LANG']['cannt_alone_sale'], ERR_CANNT_ALONE_SALE);
		error_log('4',3,'flow.model.log');
        return false;
    }

    /* 如果商品有规格则取规格商品信息 配件除外 */
   /* $sql = "SELECT * FROM " .$GLOBALS['ecs']->table('products'). " WHERE goods_id = '$goods_id' LIMIT 0, 1";
    $result = mysql_query($sql);
	if($result){
	    $prod = $GLOBALS['db']->getRow($sql);
	
	    if (is_spec($spec) && !empty($prod))
	    {
	        $product_info = get_products_info($goods_id, $spec);
	        
	    }
	    if (empty($product_info))
	    {
	        $product_info = array('product_number' => '', 'product_id' => 0);
	    }
	}*/
    
    /* 检查:库存 */
    if ($GLOBALS['_CFG']['use_storage'] == 1)
    {
        
        //检查:商品购买数量是否大于总库存
        if ($num > $goods['goods_number'])
        {
//          $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['shortage'], $goods['goods_number']), ERR_OUT_OF_STOCK);
            $msg['status'] = rpcLang("goods.php", "no_enough_goods");
            if(EC_CHARSET == 'gbk'){
            	error_log('95',3,'flow.model.log');
            	$msg['status']=mb_convert_encoding($msg['status'],'utf-8','gbk');
	            jsonExit($msg);
            	//echo $_GET['jsoncallback']."(".$msg['status'].")";
            	//exit;
            }else{
            	jsonExit($msg);
            }
            return false;
        }

        //商品存在规格 是货品 检查该货品库存
      /*  if (is_spec($spec) && !empty($prod))
        {
            if (!empty($spec))
            {
                // 取规格的货品库存 
                if ($num > $product_info['product_number'])
                {
                    //$GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['shortage'], $product_info['product_number']), ERR_OUT_OF_STOCK);
                    $msg['status'] = rpcLang("goods.php", "no_enough_spec_product");
                if(EC_CHARSET == 'gbk'){
                	jsonExit($msg['status']);
            		print_r($_GET['jsoncallback'],"(".$msg.")");
            	}else{
            		jsonExit($msg);
           	    }
                    return false;
                }
            }
        }  */     
    }

    /* 计算商品的促销价格 */
    $spec_price             = spec_price($spec);
    $goods_price            = get_final_price($goods_id, $num, true, $spec);
    $goods['market_price'] += $spec_price;
    $goods_attr             = get_goods_attr_info($spec);
    $goods_attr_id          = join(',', $spec);

    /* 初始化要插入购物车的基本件数据 */
    $parent = array(
        'user_id'       => $_SESSION['user_id'],
        'session_id'    => SESS_ID,
        'goods_id'      => $goods_id,
        'goods_sn'      => addslashes($goods['goods_sn']),
       // 'product_id'    => $product_info['product_id'],
        'goods_name'    => addslashes($goods['goods_name']),
        'market_price'  => $goods['market_price'],
        'goods_attr'    => addslashes($goods_attr),
        'goods_attr_id' => $goods_attr_id,
        'is_real'       => $goods['is_real'],
        'extension_code'=> $goods['extension_code'],
        'is_gift'       => 0,
        'is_shipping'   => $goods['is_shipping'],
        'rec_type'      => CART_GENERAL_GOODS
    );

    /* 如果该配件在添加为基本件的配件时,所设置的“配件价格”比原价低,即此配件在价格上提供了优惠, */
    /* 则按照该配件的优惠价格卖,但是每一个基本件只能购买一个优惠价格的“该配件”,多买的“该配件”不享 */
    /* 受此优惠 */
    $basic_list = array();
    $sql = "SELECT parent_id, goods_price " .
            "FROM " . $GLOBALS['ecs']->table('group_goods') .
            " WHERE goods_id = '$goods_id'" .
            " AND goods_price < '$goods_price'" .
            " AND parent_id = '$_parent_id'" .
            " ORDER BY goods_price";
    $res = $GLOBALS['db']->query($sql);
    while ($row = $GLOBALS['db']->fetchRow($res))
    {
        $basic_list[$row['parent_id']] = $row['goods_price'];
    }

    /* 取得购物车中该商品每个基本件的数量 */
    $basic_count_list = array();
    if ($basic_list)
    {
        $sql = "SELECT goods_id, SUM(goods_number) AS count " .
                "FROM " . $GLOBALS['ecs']->table('cart') .
                " WHERE session_id = '" . SESS_ID . "'" .
                " AND parent_id = 0" .
                " AND extension_code <> 'package_buy' " .
                " AND goods_id " . db_create_in(array_keys($basic_list)) .
                " GROUP BY goods_id";
        $res = $GLOBALS['db']->query($sql);
        while ($row = $GLOBALS['db']->fetchRow($res))
        {
            $basic_count_list[$row['goods_id']] = $row['count'];
        }
    }

    /* 取得购物车中该商品每个基本件已有该商品配件数量,计算出每个基本件还能有几个该商品配件 */
    /* 一个基本件对应一个该商品配件 */
    if ($basic_count_list)
    {
        $sql = "SELECT parent_id, SUM(goods_number) AS count " .
                "FROM " . $GLOBALS['ecs']->table('cart') .
                " WHERE session_id = '" . SESS_ID . "'" .
                " AND goods_id = '$goods_id'" .
                " AND extension_code <> 'package_buy' " .
                " AND parent_id " . db_create_in(array_keys($basic_count_list)) .
                " GROUP BY parent_id";
        $res = $GLOBALS['db']->query($sql);
        while ($row = $GLOBALS['db']->fetchRow($res))
        {
            $basic_count_list[$row['parent_id']] -= $row['count'];
        }
    }

    /* 循环插入配件 如果是配件则用其添加数量依次为购物车中所有属于其的基本件添加足够数量的该配件 */
    foreach ($basic_list as $parent_id => $fitting_price)
    {
        /* 如果已全部插入,退出 */
        if ($num <= 0)
        {
            break;
        }

        /* 如果该基本件不再购物车中,执行下一个 */
        if (!isset($basic_count_list[$parent_id]))
        {
            continue;
        }

        /* 如果该基本件的配件数量已满,执行下一个基本件 */
        if ($basic_count_list[$parent_id] <= 0)
        {
            continue;
        }

        /* 作为该基本件的配件插入 */
        $parent['goods_price']  = max($fitting_price, 0) + $spec_price; //允许该配件优惠价格为0
        $parent['goods_number'] = min($num, $basic_count_list[$parent_id]);
        $parent['parent_id']    = $parent_id;

        /* 添加 */
        $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('cart'), $parent, 'INSERT');

        /* 改变数量 */
        $num -= $parent['goods_number'];
    }

    /* 如果数量不为0,作为基本件插入 */
    if ($num > 0)
    {
        /* 检查该商品是否已经存在在购物车中 */
        $sql = "SELECT goods_number FROM " .$GLOBALS['ecs']->table('cart').
                " WHERE session_id = '" .SESS_ID. "' AND goods_id = '$goods_id' ".
                " AND parent_id = 0 AND goods_attr = '" .get_goods_attr_info($spec). "' " .
                " AND extension_code <> 'package_buy' " .
                " AND rec_type = 'CART_GENERAL_GOODS'";

        $row = $GLOBALS['db']->getRow($sql);

        if($row) //如果购物车已经有此物品,则更新
        {
            $num += $row['goods_number'];
            if ($GLOBALS['_CFG']['use_storage'] == 0 || $num <= $goods['goods_number'])
            {
                $goods_price = get_final_price($goods_id, $num, true, $spec);
                $sql = "UPDATE " . $GLOBALS['ecs']->table('cart') . " SET goods_number = '$num'" .
                       " , goods_price = '$goods_price'".
                       " WHERE session_id = '" .SESS_ID. "' AND goods_id = '$goods_id' ".
                       " AND parent_id = 0 AND goods_attr = '" .get_goods_attr_info($spec). "' " .
                       " AND extension_code <> 'package_buy' " .
                       "AND rec_type = 'CART_GENERAL_GOODS'";
                $GLOBALS['db']->query($sql);
            }
            else
            {
//               $GLOBALS['err']->add(sprintf($GLOBALS['_LANG']['shortage'], $num), ERR_OUT_OF_STOCK);
                $msg['status'] = rpcLang("goods.php", "no_enough_goods");
	            if(EC_CHARSET == 'gbk'){
	            	error_log('<269>',3,'flow.model.log');
	            	$msg['status']=mb_convert_encoding($msg['status'],'utf-8','gbk');
	            	jsonExit($msg);
	            	//print_r($_GET['jsoncallback'],"(".$msg.")");
	            }else{
	            	jsonExit($msg);
	            }
	            error_log('6',3,'flow.model.log');
                return false;
            }
        }
        else //购物车没有此物品,则插入
        {
            $goods_price = get_final_price($goods_id, $num, true, $spec);
            $parent['goods_price']  = max($goods_price, 0);
            $parent['goods_number'] = $num;
            $parent['parent_id']    = 0;
            $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table('cart'), $parent, 'INSERT');
        }
    }

    /* 把赠品删除 */
    $sql = "DELETE FROM " . $GLOBALS['ecs']->table('cart') . " WHERE session_id = '" . SESS_ID . "' AND is_gift <> 0";
    $GLOBALS['db']->query($sql);

    return true;
}
Exemple #19
0
	public function showOneHomeage()
	{
		//hot best new 三模块块按更新时间显示前三条数据
		$new_goods = zy_get_recommend_goods('new',1,3,'last_update','desc');
		$hot_goods = zy_get_recommend_goods('hot',1,3,'last_update','desc');
		$best_goods = zy_get_recommend_goods('best',1,3,'last_update','desc');
		
		$new =  array_values($new_goods['goods']);
		$hot =  array_values($hot_goods['goods']);
		$best =  array_values($best_goods['goods']);
		for ($i=0;$i<3;$i++){
			$new_idArr[$i]= $new[$i]['goods_id'];
			$hot_idArr[$i] = $hot[$i]['goods_id'];
			$best_idArr[$i] = $best[$i]['goods_id'];
		}
		for ($i=0;$i<3;$i++) {
			//新品
			$new_good[$i] = zy_get_goods_info($new_idArr[$i]);
			$newArr[$i] = array('id' =>$new_idArr[$i],
							    'name' =>$new_good[$i]['goods_name'],
							    'img'=>$new_good[$i]['goods_img']);
			//热卖
			$hot_good[$i] = zy_get_goods_info($hot_idArr[$i]);
			$hotArr[$i] = array('id' =>$hot_idArr[$i],
								'name' =>$hot_good[$i]['goods_name'],
								'img'=>$hot_good[$i]['goods_img']);
			//精品
			$best_good[$i] = zy_get_goods_info($best_idArr[$i]);
			$bestArr[$i] = array('id' =>$best_idArr[$i],
								 'name' =>$best_good[$i]['goods_name'],
								 'img'=>$best_good[$i]['goods_img']);
		
		}
		$Arr = array('news'=>$newArr,'hot'=>$hotArr,'best'=>$bestArr);
		//var_dump($Arr);	
		jsonExit($Arr);
	}
Exemple #20
0
/**
 *
 * 检测用户是否等录
 *
 */
function checkLogin()
{
	if(empty($_SESSION['user_id']))
	{
		$msg = rpcLang('user.php', 'nologin');
		jsonExit("{\"status\":\"$msg\"}");
	}
}
Exemple #21
0
        /* 检查是否已经存在于用户的收藏夹 */
        $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)
        {
            $result['status'] = rpcLang('goods.php', 'collect_existed');
            $result['code']='1';
            jsonExit($result);
        }
        else
        {
            $time = gmtime();
            $sql = "INSERT INTO " .$GLOBALS['ecs']->table('collect_goods'). " (user_id, goods_id, add_time)" .
                    "VALUES ('$_SESSION[user_id]', '$goods_id', '$time')";

            if ($GLOBALS['db']->query($sql) === false)
            {
                $result['message'] = rpcLang("goods.php", "collect_failure");
                jsonExit($result);
            }
            else
            {
                $result['status'] = rpcLang("goods.php", 'collect_success');
                $result['code']='0';
                jsonExit($result);
            }
        }
    }
}

?>
Exemple #22
0
	public function search () {
		 /**
	     * 参数描述:
	     * @var id 分类id.
	     * @var page 当前页.
	     * @var brand  品牌id.
	     * @var price_max 最高价格.
	     * @var price_min 最低价格.
	     * @var order 排序方式. @enum.<'ASC', 'DESC'>
	     * @var sort 排序字段.@enum.<'goods_id', 'shop_price', 'last_update'>
	     * @var filter_attr table goods_attr 中goods_attr_id使用"."连接。例如9.10.11
	 	*/
		global $_CFG,$ecs,$db;
		$cat_id = isset($_REQUEST['id']) ? intval($_REQUEST['id'])  : 0;
	    if (!$cat_id) {
	    	$result = rpcLang('category.php', 'goodslist_failure');
	        jsonExit("{\"status\":\"$result\"}");
	    }
	    $cat = get_cat_info($cat_id);   // 获得分类的相关信息
	    if (empty($cat)) {
	    	$result = rpcLang('category.php', 'search_cat_failure');
	        jsonExit("{\"status\":\"$result\"}");
	    }	    
	    $page = isset($_REQUEST['page'])   && intval($_REQUEST['page'])  > 0 ? intval($_REQUEST['page'])  : 1;
	    // $size = isset($_CFG['page_size'])  && intval($_CFG['page_size']) > 0 ? intval($_CFG['page_size']) : 1;
	    $size = 10;
	    //品牌筛选.
	    $brand = isset($_REQUEST['brand']) && intval($_REQUEST['brand']) > 0 ? intval($_REQUEST['brand']) : 0;
	    //价格区间
	    $price_max = isset($_REQUEST['price_max']) && intval($_REQUEST['price_max']) > 0 ? intval($_REQUEST['price_max']) : 0;
	    $price_min = isset($_REQUEST['price_min']) && intval($_REQUEST['price_min']) > 0 ? intval($_REQUEST['price_min']) : 0;
	    
	    //属性筛选.格式1.2.3  / attr_id使用.分割
	    $filter_attr_str = isset($_REQUEST['filter_attr']) ? htmlspecialchars(trim($_REQUEST['filter_attr'])) : '0';
	    $filter_attr_str = urldecode($filter_attr_str);
	    
	    $filter_attr = empty($filter_attr_str) ? '' : explode('.', trim($filter_attr_str));
	    
	    
	    /* 排序、方式及类型 */
	    $default_sort_order_method = $_CFG['sort_order_method'] == '0' ? 'DESC' : 'ASC';
	    $default_sort_order_type   = $_CFG['sort_order_type'] == '0' ? 'goods_id' : ($_CFG['sort_order_type'] == '1' ? 'shop_price' : 'last_update');
	    
	    $sort  = (isset($_REQUEST['sort'])  && in_array(trim(strtolower($_REQUEST['sort'])), array('goods_id', 'shop_price', 'last_update'))) ? trim($_REQUEST['sort'])  : $default_sort_order_type;
	    $order = (isset($_REQUEST['order']) && in_array(trim(strtoupper($_REQUEST['order'])), array('ASC', 'DESC')))                              ? trim($_REQUEST['order']) : $default_sort_order_method;
	    
	    $children = get_children($cat_id);
	    
	    //属性筛选
	    $ext = '';
	    if (!empty($filter_attr))
	    {
	        $ext_sql = "SELECT DISTINCT(b.goods_id) FROM " . $ecs->table('goods_attr') . " AS a, " . $ecs->table('goods_attr') . " AS b " .  "WHERE ";
	        $ext_group_goods = array();
	    
	        foreach ($filter_attr AS $k => $v)// 查出符合所有筛选属性条件的商品id */
	        {
	            if (!is_numeric($v) || $v == 0) continue;
	            $sql = $ext_sql . "b.attr_value = a.attr_value  AND a.goods_attr_id = " . $v;
	            $ext_group_goods = $db->getColCached($sql);
	            $ext .= ' AND ' . db_create_in($ext_group_goods, 'g.goods_id');
	        }
	    }
	    $count = get_cagtegory_goods_count($children, $brand, $price_min, $price_max, $ext);
	    $max_page = ($count> 0) ? ceil($count / $size) : 1;
	    if ($page > $max_page) $page = $max_page;
	    
	    $goodslist = category_get_goods($children, $brand, $price_min, $price_max, $ext, $size, $page, $sort, $order);
	    if (!$goodslist) {
			$goodslist = rpcLang('category.php', 'goodslist_empty');
		} 
		$goodslist = array_values($goodslist);
		$pager = get_pager('category.php', $_GET, $count, $page, $size);
		//print_r(array('goods_list'=>$goodslist, 'pager'=>$pager));exit;
	    jsonExit(array('goods_list'=>$goodslist, 'pager'=>$pager));
	}
Exemple #23
0
	public function collect () {
	    $result = array();
	    $goods_id = $_REQUEST['goods_id'];
	    if (!isset($_SESSION['user_id']) || $_SESSION['user_id'] == 0)
	    {
	        $result['status'] = rpcLang('user.php', 'nologin');
	        $result['code']='1';
	        jsonExit($result);
	    }
	    else
	    {
	        /* 检查是否已经存在于用户的收藏夹 */
	        $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)
	        {
	            $result['status'] = rpcLang('goods.php', 'collect_existed');
	            $result['code']='1';
	            jsonExit($result);
	        }
	        else
	        {
	            $time = gmtime();
	            $sql = "INSERT INTO " .$GLOBALS['ecs']->table('collect_goods'). " (user_id, goods_id, add_time)" .
	                    "VALUES ('$_SESSION[user_id]', '$goods_id', '$time')";
	
	            if ($GLOBALS['db']->query($sql) === false)
	            {
	                $result['message'] = rpcLang("goods.php", "collect_failure");
	                jsonExit($result);
	            }
	            else
	            {
	                $result['status'] = rpcLang("goods.php", 'collect_success');
	                $result['code']='0';
	                jsonExit($result);
	            }
        	}
		
		}
	}
Exemple #24
0
                $flashdb[] = array('src'=>$val[1],'url'=>$val[2],'text'=>$val[3],'sort'=>$val[4]);
            }
        }

    } else {
    	
        // 兼容v2.7.0及以前版本
        if (!preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"/', file_get_contents(ROOT_PATH . 'data/cycle_image.xml'), $t, PREG_SET_ORDER))
        {
            preg_match_all('/item_url="([^"]+)"\slink="([^"]+)"/', file_get_contents(ROOT_PATH . 'data/cycle_image.xml'), $t, PREG_SET_ORDER);
        }
       
        if (!empty($t))
        {
            foreach ($t as $key => $val)
            {
                $val[4] = isset($val[4]) ? $val[4] : 0;
                $flashdb[] = array('src'=>$val[1],'url'=>$val[2]);
            }
        }
    	
    }
    jsonExit($flashdb); 
}else
{
    $msg = rpcLang('goods.php', 'error_action');
    jsonExit("{\"status\":\"$msg\"}");
}

?>
WHERE      placesid = '{$placesid}'
ORDER BY   {$sidx} {$sord}
LIMIT      {$start}, {$limit}
TXT;
    $result = $sqlcn->ExecuteSQL($sql) or die('Не могу выбрать список помещений/пользователей! ' . mysqli_error($sqlcn->idsqlconnection));
    $responce = new stdClass();
    $responce->page = $page;
    $responce->total = $total_pages;
    $responce->records = $count;
    $i = 0;
    while ($row = mysqli_fetch_array($result)) {
        $responce->rows[$i]['id'] = $row['plid'];
        $responce->rows[$i]['cell'] = array($row['plid'], $row['name']);
        $i++;
    }
    jsonExit($responce);
}
if ($oper == 'add') {
    // Проверяем может ли пользователь добавлять?
    $user->TestRoles('1,4') or die('Недостаточно прав');
    if ($placesid == '' or $name == '') {
        die;
    }
    $sql = "INSERT INTO places_users (id, placesid, userid) VALUES (null, '{$placesid}', '{$name}')";
    $sqlcn->ExecuteSQL($sql) or die('Не могу добавить помещение/пользователя! ' . mysqli_error($sqlcn->idsqlconnection));
    exit;
}
if ($oper == 'edit') {
    // Проверяем может ли пользователь редактировать?
    $user->TestRoles('1,5') or die('Недостаточно прав');
    $sql = "UPDATE places_users SET userid = '{$name}' WHERE id = '{$id}'";
Exemple #26
0
function addTask($db, $listId, $title, $tag, $note = null, $priority = null, $duedate = null, $tags = null)
{
    $t = array();
    $t['total'] = 0;
    $title = trim($title);
    if ($title == '') {
        return $t;
    }
    if ($note) {
        $note = str_replace("\r\n", "\n", trim($note));
    } else {
        $note = "";
    }
    $duedate = parse_duedate(trim($duedate));
    $prio = 0;
    if ($tags) {
        $tags = trim($tags);
    } else {
        $tags = '';
    }
    if (Config::get('smartsyntax') != 0) {
        $a = parse_smartsyntax($title);
        if ($a === false) {
            jsonExit($t);
        }
        $title = $a['title'];
        $prio = $a['prio'];
        $tags = ($tags ? $tags . "," : "") . $a['tags'];
    }
    if ($priority) {
        $prio = (int) $priority;
    }
    if ($prio < -1) {
        $prio = -1;
    } elseif ($prio > 2) {
        $prio = 2;
    }
    if (Config::get('autotag')) {
        $tags .= ',' . _post('tag');
    }
    $ow = 1 + (int) $db->sq("SELECT MAX(ow) FROM {$db->prefix}todolist WHERE list_id={$listId} AND compl=0");
    $db->ex("BEGIN");
    $db->dq("INSERT INTO {$db->prefix}todolist (uuid,list_id,title,d_created,d_edited,ow,prio,note,duedate) VALUES(?,?,?,?,?,?,?,?,?)", array(generateUUID(), $listId, $title, time(), time(), $ow, $prio, $note, $duedate));
    $id = $db->last_insert_id();
    if ($tags != '') {
        $aTags = prepareTags($tags);
        if ($aTags) {
            addTaskTags($id, $aTags['ids'], $listId);
            $db->ex("UPDATE {$db->prefix}todolist SET tags=?,tags_ids=? WHERE id={$id}", array(implode(',', $aTags['tags']), implode(',', $aTags['ids'])));
        }
    }
    $db->ex("COMMIT");
    $r = $db->sqa("SELECT * FROM {$db->prefix}todolist WHERE id={$id}");
    $t['list'][] = prepareTaskRow($r, loadLists($db, ''));
    $t['total'] = 1;
    return $t;
}
Exemple #27
0
	jsonExit($related_articles);
}
//精品推荐
else if ($act = 'recommendGoods') {
	$article_id = isset($_GET['id']) ? intval($_GET['id']) : 14;
	$article = array();
	if($article_id > 0)
	{
		//文章详细信息
		$article = get_article_info($article_id);
		//文章关联产品
		$article_related_goods = article_related_goods($article_id);		
		$articleArr = array('article'=>$article,'article_related_goods'=>$article_related_goods);
	}
	//var_dump($articleArr);exit;
	jsonExit($articleArr);
}


/**
 * 获得最新的文章列表。
 *
 * @access  private
 * @return  array
 */
function index_get_new_articles($id=0)
{
    $sql = 'SELECT a.article_id, a.title, ac.cat_name, a.add_time, a.file_url, a.open_type, ac.cat_id, ac.cat_name ' .
            ' FROM ' . $GLOBALS['ecs']->table('article') . ' AS a, ' .
                $GLOBALS['ecs']->table('article_cat') . ' AS ac' .
            ' WHERE a.is_open = 1 AND a.cat_id = ac.cat_id AND ac.cat_type = 1' ;
Exemple #28
0
    Config::set('dateformat2', _post('dateformat2'));
    Config::set('dateformatshort', _post('dateformatshort'));
    Config::set('title', trim(_post('title')));
    Config::set('showdate', (int) _post('showdate'));
    Config::save();
    $t['saved'] = 1;
    jsonExit($t);
}
if (isset($_POST['resetSignature'])) {
    $t = array();
    $sig = md5(uniqid(rand(), true));
    Config::set('signature', $sig);
    Config::save();
    $t['signature'] = $sig;
    $t['saved'] = 1;
    jsonExit($t);
}
function _c($key)
{
    return Config::get($key);
}
function getLangs($withContents = 0)
{
    if (!($h = opendir(MTTPATH . 'lang'))) {
        return false;
    }
    $a = array();
    while (false !== ($file = readdir($h))) {
        if (preg_match('/(.+)\\.php$/', $file, $m) && $file != 'class.default.php') {
            $a[$m[1]] = $m[1];
            if ($withContents) {
$uploaddir = WUO_ROOT . '/photos/maps/';
$userfile_name = strtoupper(basename($_FILES['filedata']['name']));
$len = strlen($userfile_name);
$ext_file = substr($userfile_name, $len - 4, $len);
if ($ext_file == '.PNG') {
    $tmp = GetRandomId(20);
    $userfile_name = $tmp . $ext_file;
    $uploadfile = $uploaddir . '0-0-0-' . $userfile_name;
    $sr = $_FILES['filedata']['tmp_name'];
    $dest = $uploadfile;
    $rs = array('fname' => '', 'msg' => '');
    $res = move_uploaded_file($sr, $dest);
    if ($res) {
        $rs = array('fname' => "0-0-0-{$userfile_name}", 'msg' => '');
        if ($geteqid != '') {
            $sql = "UPDATE org SET picmap = '{$userfile_name}' WHERE id = '{$geteqid}'";
            $result = $sqlcn->ExecuteSQL($sql) or die('Не могу обновить фото! ' . mysqli_error($sqlcn->idsqlconnection));
            cuttingimg(1, $userfile_name, 2);
            cuttingimg(2, $userfile_name, 4);
            cuttingimg(3, $userfile_name, 8);
        } else {
            $rs = array('fname' => "0-0-0-{$userfile_name}", 'msg' => 'error org');
        }
    } else {
        $rs = array('fname' => "0-0-0-{$userfile_name}", 'msg' => 'error file load');
    }
} else {
    $rs = array('fname' => "0-0-0-{$userfile_name}", 'msg' => 'Файл не формата png');
}
jsonExit($rs);
Exemple #30
0
        $price_arr = array();
        foreach ($price_grade as $key=>$val)
        {
            $price_arr[$key]['goods_num'] = $val['goods_num'];
            $price_arr[$key]['start'] = $row['min'] + round($dx * $val['sn']);
            $price_arr[$key]['end'] = $row['min'] + round($dx * ($val['sn'] + 1));
        }
    } else {
    	$result = rpcLang('category.php', 'prices_empty');
        jsonExit("{\"status\":\"$result\"}");
    }
     jsonExit($price_arr);
}
else {
    $result = rpcLang('category.php', 'act_not_exsist');
    jsonExit("{\"status\":\"$result\"}");
}
			 
/**
 * 获得分类的信息
 *
 * @param   integer $cat_id
 *
 * @return  void
 */
function get_cat_info($cat_id)
{
    return $GLOBALS['db']->getRow('SELECT cat_name, keywords, cat_desc, style, grade, filter_attr, parent_id FROM ' . $GLOBALS['ecs']->table('category') .
        " WHERE cat_id = '$cat_id'");
}