101 lines
3.0 KiB
PHP
101 lines
3.0 KiB
PHP
<?php
|
|
require_once('models/Emoji.php');
|
|
|
|
use models\Emoji;
|
|
class EmojiController extends BaseAuthedController
|
|
{
|
|
|
|
public function getEmojiList(){
|
|
$emojiList = array();
|
|
Emoji::emojiList(function ($row) use (&$emojiList){
|
|
$tDo = Emoji::toDto($row);
|
|
if ($tDo['left_time'] > 0){
|
|
array_push($emojiList,Emoji::toDto($row));
|
|
}
|
|
});
|
|
|
|
$uses = Emoji::getUseEmoji();
|
|
$temp = array_map(function ($val){
|
|
return $val['item_id'];
|
|
},$uses);
|
|
$data = array();
|
|
foreach ($emojiList as $val){
|
|
if(in_array($val['item_id'], $temp)){
|
|
array_push($data,
|
|
array(
|
|
'item_id'=>$val['item_id'],
|
|
'state'=>1,
|
|
'left_time'=>$val['left_time'],
|
|
)
|
|
);
|
|
}else{
|
|
array_push($data,
|
|
array(
|
|
'item_id'=>$val['item_id'],
|
|
'state'=>0,
|
|
'left_time'=>$val['left_time'],
|
|
)
|
|
);
|
|
}
|
|
}
|
|
$this->_rspData(array(
|
|
'data' => $data,
|
|
'use_emoji' => $uses
|
|
));
|
|
}
|
|
|
|
public function setEmoji(){
|
|
$itemId = getReqVal('item_id', '');
|
|
$slotId = getReqVal('slot_id', 0);
|
|
$emojiList = array();
|
|
Emoji::emojiList(function ($row) use (&$emojiList){
|
|
$tDo = Emoji::toDto($row);
|
|
if ($tDo['left_time'] > 0){
|
|
array_push($emojiList,Emoji::toDto($row));
|
|
}
|
|
});
|
|
if(! in_array($itemId,array_map(function ($val){
|
|
return $val['item_id'];
|
|
},$emojiList))){
|
|
$this->_rspErr(1, 'item_id parameter error');
|
|
return;
|
|
}
|
|
if($slotId < 1 || $slotId > 6){
|
|
$this->_rspErr(1, 'slot_id parameter error');
|
|
return;
|
|
}
|
|
$uses = Emoji::getUseEmoji();
|
|
$temp = array_map(function ($val){
|
|
return $val['item_id'];
|
|
},$uses);
|
|
if(in_array($itemId,$temp)){
|
|
$this->_rspErr(1, 'The emoji has been used');
|
|
return;
|
|
}
|
|
foreach ($uses as &$val){
|
|
if ($val['slot_id'] == $slotId){
|
|
$val['item_id'] = $itemId;
|
|
}
|
|
}
|
|
|
|
Emoji::updateEmoji( json_encode($uses));
|
|
$this->_rspOk();
|
|
}
|
|
|
|
public function cancel(){
|
|
$slotId = getReqVal('slot_id', 0);
|
|
if($slotId < 1 || $slotId > 6){
|
|
$this->_rspErr(1, 'slot_id parameter error');
|
|
return;
|
|
}
|
|
$uses = Emoji::getUseEmoji();
|
|
|
|
foreach ($uses as &$val){
|
|
if ($val['slot_id'] == $slotId){
|
|
$val['item_id'] = 0;
|
|
}
|
|
}
|
|
Emoji::updateEmoji(json_encode($uses));
|
|
$this->_rspOk();
|
|
}
|
|
} |