diff --git a/frontend/src/components/unification/Unification/SelectionalPreference.js b/frontend/src/components/unification/Unification/SelectionalPreference.js
index b4bab139d9d44fc6a95d7b755e1dc1a1ba284d7c..4adb459c2cb91feca49c4cfaf0bbd70609799912 100644
--- a/frontend/src/components/unification/Unification/SelectionalPreference.js
+++ b/frontend/src/components/unification/Unification/SelectionalPreference.js
@@ -352,8 +352,7 @@ export default class SelectionalPreference {
   synset_hierarchy_conflict_alert(response) {
     const conflict_exists = response.conflict_exists;
     if (conflict_exists != null) {
-      alert('Wybrana preferencja selekcyjna nie mogła zostać zapisana ponieważ widnieje już na liście preferencji selekcyjnych: ' +
-          conflict_exists)
+      alert(conflict_exists)
     } else {
       const conflict_hyponym = response.conflict_hyponym;
       const conflict_hyperonym = response.conflict_hyperonym;
diff --git a/unifier/views.py b/unifier/views.py
index a74ab311f3654088f17f1b5a141a20d79c6c0ccf..c164dbd9994006b977f076119c379f46be8986af 100644
--- a/unifier/views.py
+++ b/unifier/views.py
@@ -88,7 +88,7 @@ def check_sysnet_hierarchy_constraints(synset_preference_ids, unified_frame_argu
 
             return {"succ": False, "conflict_hyponym": conflict_hyponym_lu_str,
                                    "conflict_hyperonym": conflict_hyperonym_lu_str,
-                                   "conflict_exists": conflict_exists_lu_str}
+                                   "conflict_exists": "Wybrana preferencja selekcyjna nie mogła zostać zapisana ponieważ widnieje już na liście preferencji selekcyjnych: " + conflict_exists_lu_str}
 
     return {"succ": True}
 
@@ -111,16 +111,22 @@ def save_predefined_preference(request):
         unified_frame_argument = UnifiedFrameArgument.objects.get(unified_frame_id=int(frame_id), id=int(complement_id))
 
         predefined_synset_ids = []
-        get_predefined_preference_synsets([PredefinedSelectionalPreference.objects.get(id=predefined_preference_id)], predefined_synset_ids)
+        pred_sel_pref = PredefinedSelectionalPreference.objects.get(id=predefined_preference_id)
+        if pred_sel_pref.name == 'ALL' and len(unified_frame_argument.predefined.all()) > 0:
+            return JsonResponse({"succ": False, "conflict_hyponym": None,
+                                                "conflict_hyperonym": None,
+                                                "conflict_exists": "Predefiniowana preferencja selekcyjna ALL może być dodana tylko, gdy nie na liście nie widnieją inne preferencje selekcyjne."})
+        else:
+            get_predefined_preference_synsets([pred_sel_pref], predefined_synset_ids)
 
-        check_sysnet_hierarchy_constraints_ret = check_sysnet_hierarchy_constraints(predefined_synset_ids, unified_frame_argument)
+            check_sysnet_hierarchy_constraints_ret = check_sysnet_hierarchy_constraints(predefined_synset_ids, unified_frame_argument)
 
-        if check_sysnet_hierarchy_constraints_ret['succ'] is True:
-            unified_frame_argument.predefined.add(int(predefined_preference_id))
-            unified_frame_argument.save()
-            update_argument_preferences_count(unified_frame_argument)
+            if check_sysnet_hierarchy_constraints_ret['succ'] is True:
+                unified_frame_argument.predefined.add(int(predefined_preference_id))
+                unified_frame_argument.save()
+                update_argument_preferences_count(unified_frame_argument)
 
-        return JsonResponse(check_sysnet_hierarchy_constraints_ret)
+            return JsonResponse(check_sysnet_hierarchy_constraints_ret)
 
     return JsonResponse({})