- Minor performance improvements,

This commit is contained in:
Mark Friedrich
2020-04-17 14:12:30 +02:00
parent 9294223a49
commit 2ffb9ffc76
11 changed files with 41 additions and 29 deletions

View File

@@ -49,6 +49,8 @@ class Universe extends Controller\AccessController {
$search = isset($params['arg1']) ? (string)$params['arg1'] : '';
$morePages = false;
$count = 0;
// reduce returned system data to required keys (save bandwidth)
$allowedProperties = array_flip(['id', 'name', 'trueSec', 'security', 'effect', 'shattered']);
$return = (object) [];
$return->results = [];
@@ -82,11 +84,14 @@ class Universe extends Controller\AccessController {
$endCount = $offset + self::PAGE_SIZE_SYSTEMS;
$morePages = $endCount < $count;
/**
* @var Model\Universe\SystemModel[] $systems
*/
$systems = $system->find($filter, $options);
if($systems){
foreach($systems as $system){
if($systemData = $system->fromIndex()){
$return->results[] = $systemData;
$return->results[] = (object)array_intersect_key((array)$systemData, $allowedProperties);
}
}
}

View File

@@ -207,8 +207,6 @@ class SystemModel extends AbstractMapTrackingModel {
$data->name = $this->name;
$data->security = $this->security;
$data->trueSec = $this->trueSec;
$data->effect = $this->effect;
$data->shattered = $this->shattered;
$data->constellation = (object) [];
$data->constellation->id = $this->constellationId;
@@ -218,8 +216,21 @@ class SystemModel extends AbstractMapTrackingModel {
$data->region->id = $this->regionId;
$data->region->name = $this->region;
$data->planets = $this->planets ? : [];
$data->statics = $this->statics ? : [];
if($this->planets){
$data->planets = $this->planets;
}
if($this->statics){
$data->statics = $this->statics;
}
if($this->effect){
$data->effect = $this->effect;
}
if($this->shattered){
$data->shattered = $this->shattered;
}
if(is_object($sovereignty = $this->sovereignty)){
$data->sovereignty = $sovereignty;

View File

@@ -20,6 +20,7 @@
"Exodus4D\\Pathfinder\\": "app/"
}
},
"readme": "README.md",
"repositories": [
{
"type": "vcs",

View File

@@ -20,6 +20,7 @@
"Exodus4D\\Pathfinder\\": "app/"
}
},
"readme": "README.md",
"require": {
"php-64bit": ">=7.2",
"ext-pdo": "*",

View File

@@ -87,7 +87,7 @@ define(['app/lib/eventHandler'], (EventHandler) => {
this.setTargetDimensions();
EventHandler.addEventListener(this._config.target, this.getNamespaceEvent('mousedown'), this.onMouseDown.bind(this), {passive: false});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mousemove'), this.onMouseMove.bind(this), {passive: false});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mousemove'), this.onMouseMove.bind(this), {passive: true});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mouseup'), this.onMouseUp.bind(this), {passive: true});
}
@@ -104,6 +104,7 @@ define(['app/lib/eventHandler'], (EventHandler) => {
onMouseMove(e){
if(this._mouseIsDown){
e.preventDefault();
e.stopPropagation();
if(this._animationFrameId){
cancelAnimationFrame(this._animationFrameId);

View File

@@ -357,6 +357,7 @@ define([
className: 'text-center',
searchable: false,
data: 'effect',
defaultContent: '',
render: {
display: (cellData, type, rowData, meta) => {
let value = '';
@@ -376,9 +377,11 @@ define([
render: {
_: (cellData, type, rowData, meta) => {
let statics = [];
for(let wormholeName of cellData){
let wormholeData = Object.assign({}, Init.wormholes[wormholeName]);
statics.push('<span class="' + wormholeData.class + '">' + wormholeData.security + '</span>');
if(Array.isArray(cellData)) {
for (let wormholeName of cellData) {
let wormholeData = Object.assign({}, Init.wormholes[wormholeName]);
statics.push('<span class="' + wormholeData.class + '">' + wormholeData.security + '</span>');
}
}
return statics.join('&nbsp;&nbsp;');
}

View File

@@ -392,7 +392,7 @@ define([
let disabled = false;
let trueSec = parseFloat(item.trueSec);
let secClass = Util.getSecurityClassForSystem(item.security);
let trueSecClass = Util.getTrueSecClassForSystem( trueSec );
let trueSecClass = Util.getTrueSecClassForSystem(trueSec);
let effectClass = MapUtil.getEffectInfoForSystem(item.effect, 'class');
// check if system is dialed

View File

@@ -87,7 +87,7 @@ define(['app/lib/eventHandler'], (EventHandler) => {
this.setTargetDimensions();
EventHandler.addEventListener(this._config.target, this.getNamespaceEvent('mousedown'), this.onMouseDown.bind(this), {passive: false});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mousemove'), this.onMouseMove.bind(this), {passive: false});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mousemove'), this.onMouseMove.bind(this), {passive: true});
EventHandler.addEventListener(this._config.container, this.getNamespaceEvent('mouseup'), this.onMouseUp.bind(this), {passive: true});
}
@@ -104,6 +104,7 @@ define(['app/lib/eventHandler'], (EventHandler) => {
onMouseMove(e){
if(this._mouseIsDown){
e.preventDefault();
e.stopPropagation();
if(this._animationFrameId){
cancelAnimationFrame(this._animationFrameId);

View File

@@ -357,6 +357,7 @@ define([
className: 'text-center',
searchable: false,
data: 'effect',
defaultContent: '',
render: {
display: (cellData, type, rowData, meta) => {
let value = '';
@@ -376,9 +377,11 @@ define([
render: {
_: (cellData, type, rowData, meta) => {
let statics = [];
for(let wormholeName of cellData){
let wormholeData = Object.assign({}, Init.wormholes[wormholeName]);
statics.push('<span class="' + wormholeData.class + '">' + wormholeData.security + '</span>');
if(Array.isArray(cellData)) {
for (let wormholeName of cellData) {
let wormholeData = Object.assign({}, Init.wormholes[wormholeName]);
statics.push('<span class="' + wormholeData.class + '">' + wormholeData.security + '</span>');
}
}
return statics.join('&nbsp;&nbsp;');
}

View File

@@ -392,7 +392,7 @@ define([
let disabled = false;
let trueSec = parseFloat(item.trueSec);
let secClass = Util.getSecurityClassForSystem(item.security);
let trueSecClass = Util.getTrueSecClassForSystem( trueSec );
let trueSecClass = Util.getTrueSecClassForSystem(trueSec);
let effectClass = MapUtil.getEffectInfoForSystem(item.effect, 'class');
// check if system is dialed

View File

@@ -1,14 +0,0 @@
.pf-shadow {
position: relative;
&:before {
content: '';
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
z-index: -1;
box-shadow: 0px 0px 10px 5px #000;
}
}