File: /var/www/html/wp-content/plugins/ganryu_shop/action/Point.php
<?php
require_once dirname(__FILE__).'/Abstract.php';
class ganryu_shop_action_Point extends ganryu_shop_action_Abstract{
function action(){
$userid = $this->g('userid');
$pg = $this->g('pg');
if ($pg <= 0) $pg = 1;
$pointinfo = null;
$pt = $this->loadModel('Point');
if ($userid){
$user = get_userdata($userid);
$res = $pt->getUserPoint($userid);
if ($res === false){
$this->error();
return;
}
$curpt = $res;
$res = $pt->searchPointLog($pg, 100, array('userid'=>$userid));
if ($res === false){
$this->error();
return;
}
$result = $res;
$pointinfo = array(
'user'=>$user,
'curpt'=>$curpt,
'result'=>$result
);
}
$tmpldata = array('pointinfo'=>$pointinfo, 'data'=>array('userid'=>$userid));
$this->attachTemplate('admin/point_search', $tmpldata);
}
function add_point(){
$md = $this->g('md');
$first = false;
if (!$md){
$first = true;
$md = 1;
}
$pt = $this->loadModel('Point');
if ($md == 1){
if ($first){
$data = array();
$data['targetid'] = $this->g('targetid');
$data['point_value'] = '';
$data['point_name'] = '';
}
else{
$data = array();
$data['targetid'] = $this->p('targetid');
$data['point_value'] = $this->p('point_value');
$data['point_name'] = $this->p('point_name');
}
$tmpldata = array(
'data'=>$data,
'md'=>1
);
$this->attachTemplate('admin/point_add_point', $tmpldata);
}
else if ($md == 2 || $md == 3){
$data = array();
$data['targetid'] = $this->p('targetid');
$data['point_value'] = $this->p('point_value');
$data['point_name'] = $this->p('point_name');
$ulist = array();
$uidlist = array();
$msg = array();
if (!$data['targetid']){
$msg['targetid'] = '会員を指定してください';
}
else{
$res = $pt->getAddTargetUser($data['targetid'], 'list');
if ($res === false){
$this->error();
return;
}
if (!$res){
$msg['targetid'] = '会員がみつかりません';
}
$uidlist = $res;
$data['add_ct'] = count($res);
foreach ($uidlist as $rd){
$ulist[] = get_userdata($rd['ID']);
}
}
if (!grys_check_number_minus($data['point_value'])){
$msg['point_value'] = 'ポイントを正しく設定してください';
}
if (!$data['point_name']){
$msg['point_name'] = 'ポイント名を正しく設定してください';
}
if ($msg){
$tmpldata = array(
'data'=>$data,
'msg'=>$msg,
'md'=>1,
);
$this->attachTemplate('admin/point_add_point', $tmpldata);
return;
}
if ($md == 2){
$tmpldata = array(
'data'=>$data,
'md'=>2,
'ulist'=>$ulist,
);
$this->attachTemplate('admin/point_add_point', $tmpldata);
return;
}
$this->begin();
$addpt = 0;
foreach ($uidlist as $uiddt){
$userid = $uiddt['ID'];
$ptdata = array(
'point_category'=>'system',
'point_type'=>'system_adjust',
'point_value'=>$data['point_value'],
'point_name'=>$data['point_name'],
'extent_info'=>null
);
$res = $pt->addPoint($userid, $ptdata);
if (!$res){
$this->error();
return;
}
$addpt += $data['point_value'];
}
$this->finish(true);
$tmpldata = array(
'addpt'=>$addpt,
'md'=>3
);
$this->attachTemplate('admin/point_add_point', $tmpldata);
return;
}
}
}