|
@@ -5,12 +5,11 @@
|
|
|
*
|
|
|
*
|
|
|
*
|
|
|
-
|
|
|
*/
|
|
|
defined('InShopNC') or exit('Access Invalid!');
|
|
|
-class memberModel extends Model {
|
|
|
-
|
|
|
- public function __construct(){
|
|
|
+class memberModel extends Model
|
|
|
+{
|
|
|
+ public function __construct() {
|
|
|
parent::__construct('member');
|
|
|
}
|
|
|
|
|
@@ -20,7 +19,8 @@ class memberModel extends Model {
|
|
|
* @param string $field
|
|
|
* @return array
|
|
|
*/
|
|
|
- public function getMemberInfo($condition, $field = '*', $master = false) {
|
|
|
+ public function getMemberInfo($condition, $field = '*', $master = false)
|
|
|
+ {
|
|
|
return $this->table('member')->field($field)->where($condition)->master($master)->find();
|
|
|
}
|
|
|
|
|
@@ -31,7 +31,8 @@ class memberModel extends Model {
|
|
|
* @param string $field 需要取得的缓存键值, 例如:'*','member_name,member_sex'
|
|
|
* @return array
|
|
|
*/
|
|
|
- public function getMemberInfoByID($member_id, $fields = '*') {
|
|
|
+ public function getMemberInfoByID($member_id, $fields = '*')
|
|
|
+ {
|
|
|
$member_info = rcache($member_id, 'member', $fields);
|
|
|
if (empty($member_info)) {
|
|
|
$member_info = $this->getMemberInfo(array('member_id'=>$member_id),'*',true);
|
|
@@ -47,7 +48,8 @@ class memberModel extends Model {
|
|
|
* @param number $page
|
|
|
* @param string $order
|
|
|
*/
|
|
|
- public function getMemberList($condition = array(), $field = '*', $page = 0, $order = 'member_id desc', $limit = '') {
|
|
|
+ public function getMemberList($condition = array(), $field = '*', $page = 0, $order = 'member_id desc', $limit = '')
|
|
|
+ {
|
|
|
return $this->table('member')->where($condition)->page($page)->order($order)->limit($limit)->select();
|
|
|
}
|
|
|
|
|
@@ -65,7 +67,8 @@ class memberModel extends Model {
|
|
|
* @param array $condition
|
|
|
* @param array $data
|
|
|
*/
|
|
|
- public function editMember($condition, $data) {
|
|
|
+ public function editMember($condition, $data)
|
|
|
+ {
|
|
|
$update = $this->table('member')->where($condition)->update($data);
|
|
|
if ($update && $condition['member_id']) {
|
|
|
dcache($condition['member_id'], 'member');
|
|
@@ -78,7 +81,8 @@ class memberModel extends Model {
|
|
|
*
|
|
|
* @param array $member_info 会员信息
|
|
|
*/
|
|
|
- public function createSession($member_info = array(),$reg = false) {
|
|
|
+ public function createSession($member_info = array(),$reg = false)
|
|
|
+ {
|
|
|
if (empty($member_info) || !is_array($member_info)) return ;
|
|
|
|
|
|
$_SESSION['is_login'] = '1';
|
|
@@ -105,7 +109,8 @@ class memberModel extends Model {
|
|
|
$this->addExppoint($member_info);
|
|
|
}
|
|
|
|
|
|
- if(!empty($member_info['member_login_time'])) {
|
|
|
+ if(!empty($member_info['member_login_time']))
|
|
|
+ {
|
|
|
$update_info = array(
|
|
|
'member_login_num'=> ($member_info['member_login_num']+1),
|
|
|
'member_login_time'=> TIMESTAMP,
|
|
@@ -120,12 +125,12 @@ class memberModel extends Model {
|
|
|
}
|
|
|
/**
|
|
|
* 获取会员信息
|
|
|
- *
|
|
|
* @param array $param 会员条件
|
|
|
* @param string $field 显示字段
|
|
|
* @return array 数组格式的返回结果
|
|
|
*/
|
|
|
- public function infoMember($param, $field='*') {
|
|
|
+ public function infoMember($param, $field='*')
|
|
|
+ {
|
|
|
if (empty($param)) return false;
|
|
|
|
|
|
//得到条件语句
|
|
@@ -137,7 +142,8 @@ class memberModel extends Model {
|
|
|
$param['limit'] = 1;
|
|
|
$member_list = Db::select($param);
|
|
|
$member_info = $member_list[0];
|
|
|
- if (intval($member_info['store_id']) > 0){
|
|
|
+ if (intval($member_info['store_id']) > 0)
|
|
|
+ {
|
|
|
$param = array();
|
|
|
$param['table'] = 'store';
|
|
|
$param['field'] = 'store_id';
|
|
@@ -155,7 +161,8 @@ class memberModel extends Model {
|
|
|
/**
|
|
|
* 注册
|
|
|
*/
|
|
|
- public function register($register_info) {
|
|
|
+ public function register($register_info)
|
|
|
+ {
|
|
|
// 注册验证
|
|
|
$obj_validate = new Validate();
|
|
|
$obj_validate->validateparam = array(
|
|
@@ -188,9 +195,10 @@ class memberModel extends Model {
|
|
|
//添加邀请人(推荐人)会员积分 by abc.com
|
|
|
$member_info['inviter_id'] = $register_info['inviter_id'];
|
|
|
$insert_id = $this->addMember($member_info);
|
|
|
- if($insert_id) {
|
|
|
+ if($insert_id)
|
|
|
+ {
|
|
|
//添加会员积分
|
|
|
- if (C('points_isuse')){
|
|
|
+ if (C('points_isuse')) {
|
|
|
Model('points')->savePointsLog('regist',array('pl_memberid'=>$insert_id,'pl_membername'=>$register_info['username']),false);
|
|
|
//添加邀请人(推荐人)会员积分 by abc.com
|
|
|
$inviter_name = Model('member')->table('member')->getfby_member_id($member_info['inviter_id'],'member_name');
|
|
@@ -216,39 +224,55 @@ class memberModel extends Model {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ private function empty_model($param)
|
|
|
+ {
|
|
|
+ $member = array();
|
|
|
+
|
|
|
+ $passwd = trim($param['member_passwd']);
|
|
|
+ $member['member_passwd'] = empty($passwd) ? $passwd : md5($passwd);
|
|
|
+
|
|
|
+ $member['member_time'] = TIMESTAMP;
|
|
|
+ $member['member_login_time'] = TIMESTAMP;
|
|
|
+ $member['member_old_login_time'] = TIMESTAMP;
|
|
|
+ $member['member_login_ip'] = getIp();
|
|
|
+ $member['member_old_login_ip'] = $member['member_login_ip'];
|
|
|
+
|
|
|
+ return $member;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 注册商城会员
|
|
|
*
|
|
|
* @param array $param 会员信息
|
|
|
* @return array 数组格式的返回结果
|
|
|
*/
|
|
|
- public function addMember($param) {
|
|
|
+ public function addMember($param)
|
|
|
+ {
|
|
|
if(empty($param)) {
|
|
|
return false;
|
|
|
}
|
|
|
- try {
|
|
|
+
|
|
|
+ try
|
|
|
+ {
|
|
|
$this->beginTransaction();
|
|
|
- $member_info = array();
|
|
|
- $member_info['member_id'] = $param['member_id'];
|
|
|
- $member_info['member_name'] = $param['member_name'];
|
|
|
- $member_info['member_passwd'] = md5(trim($param['member_passwd']));
|
|
|
- $member_info['member_email'] = $param['member_email'];
|
|
|
- $member_info['member_time'] = TIMESTAMP;
|
|
|
- $member_info['member_login_time'] = TIMESTAMP;
|
|
|
- $member_info['member_old_login_time'] = TIMESTAMP;
|
|
|
- $member_info['member_login_ip'] = getIp();
|
|
|
- $member_info['member_old_login_ip'] = $member_info['member_login_ip'];
|
|
|
-
|
|
|
- $member_info['member_truename'] = $param['member_truename'];
|
|
|
- $member_info['member_qq'] = $param['member_qq'];
|
|
|
- $member_info['member_sex'] = $param['member_sex'];
|
|
|
- $member_info['member_avatar'] = $param['member_avatar'];
|
|
|
- $member_info['member_qqopenid'] = $param['member_qqopenid'];
|
|
|
- $member_info['member_qqinfo'] = $param['member_qqinfo'];
|
|
|
- $member_info['member_sinaopenid'] = $param['member_sinaopenid'];
|
|
|
- $member_info['member_sinainfo'] = $param['member_sinainfo'];
|
|
|
- //添加邀请人(推荐人)会员积分 by abc.com
|
|
|
- $member_info['inviter_id'] = $param['inviter_id'];
|
|
|
+ $member_info = $this->empty_model($param);
|
|
|
+
|
|
|
+ foreach ($param as $key => $value)
|
|
|
+ {
|
|
|
+ if($key == 'member_passwd') {
|
|
|
+ $passwd = trim($param['member_passwd']);
|
|
|
+ $member_info['member_passwd'] = empty($passwd) ? $passwd : md5($passwd);
|
|
|
+ } elseif($key == 'member_time') {
|
|
|
+ $member_info['member_time'] = TIMESTAMP;
|
|
|
+ } elseif($key == 'member_login_time') {
|
|
|
+ $member_info['member_login_time'] = TIMESTAMP;
|
|
|
+ } elseif($key == 'member_login_ip') {
|
|
|
+ $member_info['member_login_ip'] = getIp();
|
|
|
+ } else {
|
|
|
+ $member_info[$key] = $value;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
$insert_id = $this->table('member')->insert($member_info);
|
|
|
if (!$insert_id) {
|
|
|
throw new Exception();
|
|
@@ -269,7 +293,8 @@ class memberModel extends Model {
|
|
|
* 会员登录检查
|
|
|
*
|
|
|
*/
|
|
|
- public function checkloginMember() {
|
|
|
+ public function checkloginMember()
|
|
|
+ {
|
|
|
if($_SESSION['is_login'] == '1') {
|
|
|
@header("Location: index.php");
|
|
|
exit();
|
|
@@ -280,7 +305,8 @@ class memberModel extends Model {
|
|
|
* 检查会员是否允许举报商品
|
|
|
*
|
|
|
*/
|
|
|
- public function isMemberAllowInform($member_id) {
|
|
|
+ public function isMemberAllowInform($member_id)
|
|
|
+ {
|
|
|
$condition = array();
|
|
|
$condition['member_id'] = $member_id;
|
|
|
$member_info = $this->getMemberInfo($condition,'inform_allow');
|
|
@@ -297,7 +323,8 @@ class memberModel extends Model {
|
|
|
* @param unknown $condition
|
|
|
* @param string $fields
|
|
|
*/
|
|
|
- public function getMemberCommonInfo($condition = array(), $fields = '*') {
|
|
|
+ public function getMemberCommonInfo($condition = array(), $fields = '*')
|
|
|
+ {
|
|
|
return $this->table('member_common')->where($condition)->field($fields)->find();
|
|
|
}
|
|
|
|
|
@@ -306,7 +333,8 @@ class memberModel extends Model {
|
|
|
* @param unknown $data
|
|
|
* @return Ambigous <mixed, boolean, number, unknown, resource>
|
|
|
*/
|
|
|
- public function addMemberCommon($data) {
|
|
|
+ public function addMemberCommon($data)
|
|
|
+ {
|
|
|
return $this->table('member_common')->insert($data);
|
|
|
}
|
|
|
|
|
@@ -316,7 +344,8 @@ class memberModel extends Model {
|
|
|
* @param unknown $condition
|
|
|
* @return Ambigous <mixed, boolean, number, unknown, resource>
|
|
|
*/
|
|
|
- public function editMemberCommon($data,$condition) {
|
|
|
+ public function editMemberCommon($data,$condition)
|
|
|
+ {
|
|
|
return $this->table('member_common')->where($condition)->update($data);
|
|
|
}
|
|
|
|
|
@@ -324,7 +353,8 @@ class memberModel extends Model {
|
|
|
* 添加会员积分
|
|
|
* @param unknown $member_info
|
|
|
*/
|
|
|
- public function addPoint($member_info) {
|
|
|
+ public function addPoint($member_info)
|
|
|
+ {
|
|
|
if (!C('points_isuse') || empty($member_info)) return;
|
|
|
|
|
|
//一天内只有第一次登录赠送积分
|
|
@@ -341,7 +371,8 @@ class memberModel extends Model {
|
|
|
* 添加会员经验值
|
|
|
* @param unknown $member_info
|
|
|
*/
|
|
|
- public function addExppoint($member_info) {
|
|
|
+ public function addExppoint($member_info)
|
|
|
+ {
|
|
|
if (empty($member_info)) return;
|
|
|
|
|
|
//一天内只有第一次登录赠送经验值
|
|
@@ -358,7 +389,8 @@ class memberModel extends Model {
|
|
|
* 取得会员安全级别
|
|
|
* @param unknown $member_info
|
|
|
*/
|
|
|
- public function getMemberSecurityLevel($member_info = array()) {
|
|
|
+ public function getMemberSecurityLevel($member_info = array())
|
|
|
+ {
|
|
|
$tmp_level = 0;
|
|
|
if ($member_info['member_email_bind'] == '1') {
|
|
|
$tmp_level += 1;
|
|
@@ -378,10 +410,12 @@ class memberModel extends Model {
|
|
|
* @param int $exppoints 会员经验值
|
|
|
* @param array $cur_level 会员当前等级
|
|
|
*/
|
|
|
- public function getMemberGradeArr($show_progress = false,$exppoints = 0,$cur_level = ''){
|
|
|
+ public function getMemberGradeArr($show_progress = false,$exppoints = 0,$cur_level = '')
|
|
|
+ {
|
|
|
$member_grade = C('member_grade')?unserialize(C('member_grade')):array();
|
|
|
//处理会员等级进度
|
|
|
- if ($member_grade && $show_progress){
|
|
|
+ if ($member_grade && $show_progress)
|
|
|
+ {
|
|
|
$is_max = false;
|
|
|
if ($cur_level === ''){
|
|
|
$cur_gradearr = $this->getOneMemberGrade($exppoints, false, $member_grade);
|
|
@@ -402,7 +436,8 @@ class memberModel extends Model {
|
|
|
* @param array $conditon_array
|
|
|
* @return string
|
|
|
*/
|
|
|
- private function getCondition($conditon_array){
|
|
|
+ private function getCondition($conditon_array)
|
|
|
+ {
|
|
|
$condition_sql = '';
|
|
|
if($conditon_array['member_id'] != '') {
|
|
|
$condition_sql .= " and member_id= '" .intval($conditon_array['member_id']). "'";
|
|
@@ -484,7 +519,8 @@ class memberModel extends Model {
|
|
|
* @param bool $show_progress 是否计算其当前等级进度
|
|
|
* @param array $member_grade 会员等级
|
|
|
*/
|
|
|
- public function getOneMemberGrade($exppoints,$show_progress = false,$member_grade = array()){
|
|
|
+ public function getOneMemberGrade($exppoints,$show_progress = false,$member_grade = array())
|
|
|
+ {
|
|
|
if (!$member_grade){
|
|
|
$member_grade = C('member_grade')?unserialize(C('member_grade')):array();
|
|
|
}
|
|
@@ -497,7 +533,8 @@ class memberModel extends Model {
|
|
|
$exppoints = intval($exppoints);
|
|
|
|
|
|
$grade_arr = array();
|
|
|
- if ($member_grade){
|
|
|
+ if ($member_grade)
|
|
|
+ {
|
|
|
foreach ($member_grade as $k=>$v){
|
|
|
if($exppoints >= $v['exppoints']){
|
|
|
$grade_arr = $v;
|
|
@@ -505,8 +542,9 @@ class memberModel extends Model {
|
|
|
}
|
|
|
}
|
|
|
//计算提升进度
|
|
|
- if ($show_progress == true){
|
|
|
- if (intval($grade_arr['level']) >= (count($member_grade) - 1)){//如果已达到顶级会员
|
|
|
+ if ($show_progress == true)
|
|
|
+ {
|
|
|
+ if (intval($grade_arr['level']) >= (count($member_grade) - 1)) {//如果已达到顶级会员
|
|
|
$grade_arr['downgrade'] = $grade_arr['level'] - 1;//下一级会员等级
|
|
|
$grade_arr['downgrade_name'] = $member_grade[$grade_arr['downgrade']]['level_name'];
|
|
|
$grade_arr['downgrade_exppoints'] = $member_grade[$grade_arr['downgrade']]['exppoints'];
|