HEX
Server: Apache
System: Linux 4485441ca2e2 6.8.0-1039-aws #41~22.04.1-Ubuntu SMP Thu Sep 11 11:03:07 UTC 2025 aarch64
User: (1000)
PHP: 8.2.24
Disabled: NONE
Upload Files
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;
			
		}
	
	
	}
	
}