19 declare(strict_types=1);
38 return implode(
", ", $a_suffixes);
46 $a_suffixes = preg_replace(
'/\s+/',
'', $a_suffixes);
47 return explode(
",", $a_suffixes);
53 $matches = preg_match(
"/^[a-zA-Z0-9\,\s]+$/", $suffixes_string);
59 return count($a_suffixes) === count(array_unique($a_suffixes));
63 array $a_future_suffixes,
64 bool $a_future_activation_state,
68 if (!$a_future_activation_state) {
74 if (!$a_current_icon instanceof
NullIcon) {
75 unset($existing_icons[$a_current_icon->
getRid()]);
78 $duplicate_suffixes = [];
79 foreach ($existing_icons as $existing_icon) {
81 if (!$existing_icon->isActive()) {
84 $duplicate_suffixes = array_merge(
86 array_intersect($a_future_suffixes, $existing_icon->getSuffixes())
90 return $duplicate_suffixes === [];
turnSuffixesStringIntoArray(string $a_suffixes)
hasSuffixInputOnlyAllowedCharacters(array $a_suffixes)
hasSuffixInputNoDuplicatesToItsOwnEntries(array $a_suffixes)
turnSuffixesArrayIntoString(array $a_suffixes)
causesNoActiveSuffixesConflict(array $a_future_suffixes, bool $a_future_activation_state, Icon $a_current_icon)
static ILIAS Refinery Factory $refinery
Refinery Factory $refinery