dynamic counter ok

This commit is contained in:
asus
2023-11-11 13:01:43 +01:00
parent 6e460f5347
commit 99aeaa82b0
7 changed files with 179 additions and 70 deletions

View File

@@ -35,7 +35,7 @@ function mp_already_in_menu(&$menu, $name) {
* menu : [ { _name:"", field_1:[], field_2:[] }, ... ]
* index : index of this event in locations[] array
*/
function mp_fill_name($fields, $name, &$menu, $index) {
function mp_fill_name($fields, $name, &$menu, $index, &$event) {
if ($fields[$name] == null)
return;
if (gettype($fields[$name]) != 'string')
@@ -53,8 +53,12 @@ function mp_fill_name($fields, $name, &$menu, $index) {
continue;
if (! isset($menu_item->$key_field) )
$menu_item->$key_field = [];
if (!is_string($value))
if (!is_string($value)) {
//mp_console_log("pour l'article '$event->title', le champ '$key_field' est supposé être de type 'string', mais il est de type '" . gettype($value) . "'");
//if ( ! add_post_meta( $id, 'problem', "$value", true ) )
// update_post_meta( $id, 'problem', "" );
continue;
}
if (strlen($value) != 0) {
if (! in_array($value, $menu_item->$key_field) )
array_push($menu_item->$key_field, $value);
@@ -73,8 +77,10 @@ function mp_fill_name($fields, $name, &$menu, $index) {
if ($key_field == $name)
continue;
$menu_item->$key_field = [];
if (!is_string($value))
if (!is_string($value)) {
//mp_console_log("pour l'article '$event->title', le champ '$key_field' est supposé être de type 'string', mais il est de type '" . gettype($value) . "'");
continue;
}
if (strlen($value) != 0)
array_push($menu_item->$key_field, $value);
}
@@ -102,12 +108,14 @@ function mp_get_filters(&$events) {
"Catégories" => $event->categorie,
"mode" => ($event->irl)? "En présentiel" : "En ligne",
);
//mp_console_log("event: ");
//mp_console_log($event);
// fill all menu with other menus without doubles
foreach ($fields as $name => $value) {
if (! isset($filters->$name))
$filters->$name = [];
mp_fill_name($fields, $name, $filters->$name, $index);
mp_fill_name($fields, $name, $filters->$name, $index, $event);
}
}
@@ -132,29 +140,30 @@ filters: { - countries : [ { - _name : "" } ] }
*/
/*
event : {}
event : {}
- heure_de_debut : "";
- heure_de_fin : "";
- categorie : "";
- date : "";
- pays : "";
- ville : "";
- adresse : "";
- prenom : "";
- nom : "";
- irl : bool;
- id : x;
- index : x;
- title : "";
- location : {}
- street : "";
- city : "";
- country : "";
- address : "";
- approximate : bool;
- coordinates : {}
- lat : x;
- lng : x;
- categorie : "";
- date : "";
- pays : "";
- ville : "";
- adresse : "";
- prenom : "";
- nom : "";
- irl : bool;
- id : x;
- index : x;
- url : "";
- title : "";
- location : {}
- street : "";
- city : "";
- country : "";
- address : "";
- approximate : bool;
- coordinates : {}
- lat : x;
- lng : x;
*/
?>