]> git.ipfire.org Git - thirdparty/paperless-ngx.git/commitdiff
Owner/name unique constraint violation should exclude self 2938/head
authorshamoon <4887959+shamoon@users.noreply.github.com>
Thu, 23 Mar 2023 14:31:31 +0000 (07:31 -0700)
committershamoon <4887959+shamoon@users.noreply.github.com>
Thu, 23 Mar 2023 14:35:18 +0000 (07:35 -0700)
src-ui/messages.xlf
src-ui/src/app/components/manage/management-list/management-list.component.ts
src/documents/serialisers.py

index edc2926ae162e08369656e8f6f87a0dea5a2f76b..6fe9898767db714fca6b26b4f4d51120ee48ab0a 100644 (file)
         </context-group>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">208</context>
+          <context context-type="linenumber">213</context>
         </context-group>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/settings/settings.component.html</context>
         </context-group>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">204</context>
+          <context context-type="linenumber">209</context>
         </context-group>
       </trans-unit>
       <trans-unit id="5382975254277698192" datatype="html">
           <context context-type="linenumber">147</context>
         </context-group>
       </trans-unit>
-      <trans-unit id="6151710751857751783" datatype="html">
-        <source>Error occurred while saving <x id="PH" equiv-text="this.typeName"/> : <x id="PH_1" equiv-text="activeModal.componentInstance.error"/>.</source>
+      <trans-unit id="1370653329436185913" datatype="html">
+        <source>Error occurred while saving <x id="PH" equiv-text="this.typeName"/><x id="PH_1" equiv-text="errorDetail ? &apos;: &apos; + errorDetail : &apos;&apos;"/>.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">171</context>
+          <context context-type="linenumber">174,176</context>
         </context-group>
+      </trans-unit>
+      <trans-unit id="2541368547549828690" datatype="html">
+        <source>Successfully updated <x id="PH" equiv-text="this.typeName"/>.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">182,184</context>
+          <context context-type="linenumber">181</context>
         </context-group>
       </trans-unit>
-      <trans-unit id="2541368547549828690" datatype="html">
-        <source>Successfully updated <x id="PH" equiv-text="this.typeName"/>.</source>
+      <trans-unit id="6151710751857751783" datatype="html">
+        <source>Error occurred while saving <x id="PH" equiv-text="this.typeName"/> : <x id="PH_1" equiv-text="e.toString()"/>.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">176</context>
+          <context context-type="linenumber">187,189</context>
         </context-group>
       </trans-unit>
       <trans-unit id="4012132330507560812" datatype="html">
         <source>Do you really want to delete the <x id="PH" equiv-text="this.typeName"/>?</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">191</context>
+          <context context-type="linenumber">196</context>
         </context-group>
       </trans-unit>
       <trans-unit id="8371896857609524947" datatype="html">
         <source>Associated documents will not be deleted.</source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">206</context>
+          <context context-type="linenumber">211</context>
         </context-group>
       </trans-unit>
       <trans-unit id="5467489005440577210" datatype="html">
             )"/></source>
         <context-group purpose="location">
           <context context-type="sourcefile">src/app/components/manage/management-list/management-list.component.ts</context>
-          <context context-type="linenumber">219,221</context>
+          <context context-type="linenumber">224,226</context>
         </context-group>
       </trans-unit>
       <trans-unit id="1685061484835793745" datatype="html">
index 65cce3d201dfc0e874942a995be874bb03be8743..ec169fdd0032fc29eadcb7474ada8ca91b89d713 100644 (file)
@@ -167,8 +167,13 @@ export abstract class ManagementListComponent<T extends ObjectWithId>
     activeModal.componentInstance.succeeded.subscribe({
       next: () => {
         if (activeModal.componentInstance.error) {
+          const errorDetail = activeModal.componentInstance.error.error
+            ? activeModal.componentInstance.error.error[0]
+            : null
           this.toastService.showInfo(
-            $localize`Error occurred while saving ${this.typeName} : ${activeModal.componentInstance.error}.`
+            $localize`Error occurred while saving ${this.typeName}${
+              errorDetail ? ': ' + errorDetail : ''
+            }.`
           )
         } else {
           this.reloadData()
index 4e2fafe3443a619580ab6883646cd6e306b91d57..38eca0ffe94df033837a3167614c86ee6a471c15 100644 (file)
@@ -78,10 +78,11 @@ class MatchingModelSerializer(serializers.ModelSerializer):
             if hasattr(self, "user")
             else None
         )
+        pk = self.instance.pk if hasattr(self.instance, "pk") else None
         if ("name" in data or "owner" in data) and self.Meta.model.objects.filter(
             name=name,
             owner=owner,
-        ).exists():
+        ).exclude(pk=pk).exists():
             raise serializers.ValidationError(
                 {"error": "Object violates owner / name unique constraint"},
             )