Update `machineDefault::getMachineWorkingInformation` to send *ETREE*

This commit is contained in:
xdrm-brackets 2017-09-25 16:11:10 +02:00
parent 05d1ef50e0
commit ba4cb04925
6 changed files with 58 additions and 13 deletions

3
.gitignore vendored
View File

@ -6,4 +6,5 @@
*.lock
/vendor/
/phpunit/coverage
.vscode
.vscode
TODO

View File

@ -462,14 +462,14 @@
/* RETOURNE L'E-TREE D'UN GROUPE DE MACHINES
/* RETOURNE LES E-TREES D'UN GROUPE DE MACHINES
*
* @id_machine_cluster<int> UID du groupe de machine
*
* @return e-tree<Array> E-tree du groupe de machines
* @return etrees<Array> E-trees du groupe de machines
*
*/
public static function getEtree($params){
public static function getEtrees($params){
extract($params);
@ -490,7 +490,7 @@
/* [3] On retourne la liste
=========================================================*/
return [ 'etree' => $answer ];
return [ 'etrees' => $answer ];
}

View File

@ -553,6 +553,49 @@
}
/* [6] On envoie les e-tree de la machine
=========================================================*/
$etrees = [];
/* (1) On essaie de récupérer les etree de la machine*/
$mc_req = new Request('machineDefault/getClusters', ['id_machine' => $id_machine]);
$mc_res = $mc_req->dispatch();
/* (2) Si on arrive à récupérer les clusters */
if( $mc_res->error->get() == Err::Success ){
/* (3) Pour chaque cluster, on récupère les e-trees */
foreach($mc_res->get('clusters') as $cluster){
/* (4) On les e-trees du cluster */
$etree_req = new Request('clusterDefault/getEtrees', [
'id_machine_cluster' => $cluster['id_machine_cluster']
]);
$etree_res = $etree_req->dispatch();
/* (5) Si erreur, on passe */
if( $etree_res->error->get() != Err::Success )
continue;
/* (6) Sinon -> On entregistre les e-trees */
foreach($etree_res->get('etrees') as $etree){
$etree_value = $etree['name'].'-'.$etree['daemon'];
/* (7) Si pas déja entregistré -> on l'ajoute */
if( !in_array($etrees, $etree_name) )
$etrees[] = $etree_name;
}
}
}
/* [N] Retourne les données
@ -561,7 +604,8 @@
'actions' => $sorted_actions,
'states' => $globalStates,
'chips' => $chips,
'permissions' => $indexed_permissions
'permissions' => $indexed_permissions,
'etrees' => $etrees
];
}

View File

@ -61,7 +61,7 @@
}));
$twig->addFunction(new \Twig_Function('f_options', function($id_cluster){
$modReq = new Request('clusterDefault/getEtree', [
$modReq = new Request('clusterDefault/getEtrees', [
'id_machine_cluster' => (int) $id_cluster
]);
@ -71,7 +71,7 @@
if( $modRes->error->get() != Err::Success )
return [];
return $modRes->get('etree');
return $modRes->get('etrees');
}));

View File

@ -62,7 +62,7 @@
}));
$twig->addFunction(new \Twig_Function('f_options', function($id_cluster){
$modReq = new Request('clusterDefault/getEtree', [
$modReq = new Request('clusterDefault/getEtrees', [
'id_machine_cluster' => (int) $id_cluster
]);
@ -72,7 +72,7 @@
if( $modRes->error->get() != Err::Success )
return [];
return $modRes->get('etree');
return $modRes->get('etrees');
}));

View File

@ -516,14 +516,14 @@
}
},
"POST::getEtree": {
"description": "Retourne l'e-tree d'un groupe de machines",
"POST::getEtrees": {
"description": "Retourne les e-trees d'un groupe de machines",
"permissions": [["admin"]],
"parameters": {
"id_machine_cluster": { "description": "UID du groupe de machines", "type": "id" }
},
"output": {
"modules": { "description": "E-tree du groupe", "type": "array<mixed>" }
"etrees": { "description": "E-trees du groupe", "type": "array<mixed>" }
}
}