Overview
Comment:Fix [5d0f7e9c9b42206046988b61a7deba6f8036d5d4] don't throw an error when a field doesn't exist anymore, just ignore it
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk | stable
Files: files | file ages | folders
SHA3-256: 937de7a7cca351c93e697be96bb96b19a849bb13b20db7e1d461f5de9ec3c8ac
User & Date: bohwaz on 2021-09-14 22:41:10
Other Links: manifest | tags
Context
2021-09-14
22:49
Fix [1e6f556480cd56c987e2a17bdde968c0e54ac5ea] paid amount didn't include the decimal point check-in: 822638372b user: bohwaz tags: trunk, stable
22:41
Fix [5d0f7e9c9b42206046988b61a7deba6f8036d5d4] don't throw an error when a field doesn't exist anymore, just ignore it check-in: 937de7a7cc user: bohwaz tags: trunk, stable
22:36
Fix [4193b38003b8eda662f5c03067f148320986a8bb] Put back the select option to start when nothing has been selected check-in: 1346abf83f user: bohwaz tags: trunk, stable
Changes

Modified src/include/lib/Garradin/Recherche.php from [ee18756339] to [5e796b3eb4].

444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
...
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
				}

				if (!array_key_exists($condition['column'], $target_columns))
				{
					// Ignorer une condition qui se rapporte à une colonne
					// qui n'existe pas, cas possible si on reprend une recherche
					// après avoir modifié les fiches de membres
					throw new UserException('Cette recherche fait référence à une colonne qui n\'existe pas : ' . $condition['column']);
				}

				$query_columns[] = $condition['column'];
				$column = $target_columns[$condition['column']];

				$query = sprintf('%s %s', $db->quoteIdentifier($condition['column']), $condition['operator']);

................................................................................
			{
				$query_groups[] = implode(' ' . $group['operator'] . ' ', $query_group_conditions);
			}
		}

		if (!count($query_groups))
		{
			throw new UserException('Aucune clause trouvée dans la recherche.');
		}

		// Ajout du champ identité si pas présent
		if ($target == 'membres')
		{
			$query_columns = array_merge([$config->get('champ_identite')], $query_columns);
		}







|







 







|







444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
...
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
				}

				if (!array_key_exists($condition['column'], $target_columns))
				{
					// Ignorer une condition qui se rapporte à une colonne
					// qui n'existe pas, cas possible si on reprend une recherche
					// après avoir modifié les fiches de membres
					continue;
				}

				$query_columns[] = $condition['column'];
				$column = $target_columns[$condition['column']];

				$query = sprintf('%s %s', $db->quoteIdentifier($condition['column']), $condition['operator']);

................................................................................
			{
				$query_groups[] = implode(' ' . $group['operator'] . ' ', $query_group_conditions);
			}
		}

		if (!count($query_groups))
		{
			throw new UserException('Aucune clause trouvée dans la recherche : elle contenait peut-être des clauses qui correspondent à des champs qui ont été supprimés ?');
		}

		// Ajout du champ identité si pas présent
		if ($target == 'membres')
		{
			$query_columns = array_merge([$config->get('champ_identite')], $query_columns);
		}