map info element improvements
This commit is contained in:
@@ -168,7 +168,7 @@ class Map extends \Controller\AccessController {
|
||||
}
|
||||
|
||||
/**
|
||||
* update map data api
|
||||
* update map data
|
||||
* function is called continuously
|
||||
* @param $f3
|
||||
*/
|
||||
@@ -189,6 +189,7 @@ class Map extends \Controller\AccessController {
|
||||
$system = Model\BasicModel::getNew('SystemModel');
|
||||
$connection = Model\BasicModel::getNew('ConnectionModel');
|
||||
|
||||
$activeCharacter = $user->getActiveUserCharacter();
|
||||
|
||||
foreach($mapData as $data){
|
||||
|
||||
@@ -223,11 +224,12 @@ class Map extends \Controller\AccessController {
|
||||
$system->getById($systemData['id']);
|
||||
|
||||
if(
|
||||
(int)$systemData['updated'] === 0 &&
|
||||
(int)$systemData['updated']['updated'] === 0 &&
|
||||
!$system->dry()
|
||||
){
|
||||
$systemData['mapId'] = $map;
|
||||
$system->setData($systemData);
|
||||
$system->mapId = $map;
|
||||
$system->updatedCharacterId = $activeCharacter->characterId;
|
||||
$system->save();
|
||||
}
|
||||
|
||||
@@ -300,7 +302,11 @@ class Map extends \Controller\AccessController {
|
||||
$cacheKey = 'user_data_' . $user->id;
|
||||
if($f3->exists($cacheKey) === false){
|
||||
|
||||
// check if data for specific system is requested
|
||||
$systemData = (array)$f3->get('POST.systemData');
|
||||
|
||||
$userData = (object) [];
|
||||
// data for the current user
|
||||
$userData->userData = $user->getData();
|
||||
|
||||
// get user Data for each map ========================================
|
||||
@@ -308,6 +314,21 @@ class Map extends \Controller\AccessController {
|
||||
|
||||
foreach($activeMaps as $mapModel){
|
||||
$userData->mapUserData[] = $mapModel->getUserData();
|
||||
|
||||
// request signature data for a system if user has map access
|
||||
if(
|
||||
!empty($systemData) &&
|
||||
$systemData['mapId'] == $mapModel->id
|
||||
){
|
||||
$system = $mapModel->getSystem( (int)$systemData['systemData']['id']);
|
||||
|
||||
if(! is_null($system)){
|
||||
// data for the current selected system
|
||||
$userData->system = $system->getData();
|
||||
$userData->system->signatures = $system->getSignaturesData();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
$f3->set($cacheKey, $userData, $responseTTL);
|
||||
|
||||
@@ -39,16 +39,12 @@ class Signature extends \Controller\AccessController{
|
||||
$system->getById($systemId);
|
||||
|
||||
if(!$system->dry()){
|
||||
$signatures = $system->getSignatures($user);
|
||||
|
||||
if($signatures){
|
||||
foreach($signatures as $signature){
|
||||
$signatureData[] = $signature->getData();
|
||||
}
|
||||
// check access
|
||||
if($system->hasAccess($user)){
|
||||
$signatureData = $system->getSignaturesData();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
echo json_encode($signatureData);
|
||||
@@ -69,7 +65,7 @@ class Signature extends \Controller\AccessController{
|
||||
$system = Model\BasicModel::getNew('SystemModel');
|
||||
$system->getById($signatureData['systemId']);
|
||||
|
||||
$activeCharacter = $user->getActiveCharacter();
|
||||
$activeCharacter = $user->getActiveUserCharacter();
|
||||
if(!$system->dry()){
|
||||
// update/save signature
|
||||
|
||||
|
||||
@@ -184,22 +184,53 @@ class System extends \Controller\AccessController {
|
||||
|
||||
$systemData = (array)$f3->get('POST.systemData');
|
||||
$mapData = (array)$f3->get('POST.mapData');
|
||||
$user = $this->_getUser();
|
||||
$activeCharacter = $user->getActiveUserCharacter();
|
||||
|
||||
$map = Model\BasicModel::getNew('MapModel');
|
||||
$map->getById($mapData['id']);
|
||||
$systemModel = null;
|
||||
|
||||
// check if map exists
|
||||
if(!$map->dry()){
|
||||
if(array_key_exists('id', $systemData)){
|
||||
// update existing system
|
||||
|
||||
$systemData['mapId'] = $map;
|
||||
$system = Model\BasicModel::getNew('SystemModel');
|
||||
$system->getById($systemData['id']);
|
||||
|
||||
// get static system data (CCP DB)
|
||||
$system = $this->_getSystemModelById($systemData['systemId']);
|
||||
// set rest of system data
|
||||
$system->setData($systemData);
|
||||
$system->save();
|
||||
if(! $system->dry()){
|
||||
if( $system->hasAccess($user) ){
|
||||
// system model found
|
||||
$systemModel = $system;
|
||||
}
|
||||
}
|
||||
|
||||
$newSystemData = $system->getData();
|
||||
|
||||
}elseif(array_key_exists('id', $mapData)){
|
||||
// save NEW system
|
||||
|
||||
$map = Model\BasicModel::getNew('MapModel');
|
||||
$map->getById($mapData['id']);
|
||||
|
||||
if(! $map->dry()){
|
||||
if( $map->hasAccess($user) ){
|
||||
|
||||
$systemData['mapId'] = $map;
|
||||
|
||||
// get static system data (CCP DB)
|
||||
$systemModel = $this->_getSystemModelById($systemData['systemId']);
|
||||
|
||||
$systemModel->createdCharacterId = $activeCharacter->characterId;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(! is_null($systemModel)){
|
||||
// set/update system
|
||||
|
||||
$systemModel->setData($systemData);
|
||||
$systemModel->updatedCharacterId = $activeCharacter->characterId;
|
||||
$systemModel->save();
|
||||
|
||||
$newSystemData = $systemModel->getData();
|
||||
}
|
||||
|
||||
echo json_encode($newSystemData);
|
||||
|
||||
Reference in New Issue
Block a user