Revision: 27230
          http://sourceforge.net/p/bibdesk/svn/27230
Author:   hofman
Date:     2022-01-17 09:34:39 +0000 (Mon, 17 Jan 2022)
Log Message:
-----------
Only get deprecated arguments when passing a publication to auto file command

Modified Paths:
--------------
    trunk/bibdesk/BibItem+Scripting.m

Modified: trunk/bibdesk/BibItem+Scripting.m
===================================================================
--- trunk/bibdesk/BibItem+Scripting.m   2022-01-16 22:08:34 UTC (rev 27229)
+++ trunk/bibdesk/BibItem+Scripting.m   2022-01-17 09:34:39 UTC (rev 27230)
@@ -568,15 +568,13 @@
     NSScriptObjectSpecifier *keySpec = [(BDSKPublicationCommand *)command 
keySpecifier];
     NSString *keyClass = [[keySpec keyClassDescription] className];
     NSDictionary *params = [command evaluatedArguments];
-    NSNumber *indexNumber = [params objectForKey:@"index"];
     NSString *location = [params objectForKey:@"to"];
-    NSString *field = [params objectForKey:@"for"];
     NSNumber *checkNumber = [params objectForKey:@"check"];
     BOOL check = checkNumber ? [checkNumber boolValue] : YES;
     BibDocument *doc = (BibDocument *)[self owner];
+    NSString *field = nil;
     NSInteger start = 0, end = 0;
     NSMutableIndexSet *indexes = nil;
-    NSArray *files = nil;
     NSArray *linkedfiles = nil;
     
     if ([doc isDocument] == NO) {
@@ -585,17 +583,18 @@
         return nil;
     }
     
-    if (field && [field isKindOfClass:[NSString class]] == NO)  {
-        [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-        return nil;
-    }
-    if (indexNumber && [indexNumber isKindOfClass:[NSNumber class]] == NO)  {
-        [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-        return nil;
-    }
-    
     if (keySpec == nil) {
+        NSNumber *indexNumber = [params objectForKey:@"index"];
+        field = [params objectForKey:@"for"];
+        if (field && [field isKindOfClass:[NSString class]] == NO)  {
+            [command setScriptErrorNumber:NSArgumentsWrongScriptError];
+            return nil;
+        }
         if (indexNumber) {
+            if ([indexNumber isKindOfClass:[NSNumber class]] == NO)  {
+                [command setScriptErrorNumber:NSArgumentsWrongScriptError];
+                return nil;
+            }
             if (field && [field isEqualToString:BDSKLocalFileString] == NO) {
                 [command setScriptErrorNumber:NSArgumentsWrongScriptError];
                 [command setScriptErrorString:@"Cannot pass both an index and 
a field."];
@@ -612,16 +611,6 @@
             field = [field fieldName] ?: BDSKLocalUrlString;
         }
     } else if ([keyClass isEqualToString:@"field"]) {
-        if (field) {
-            [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-            [command setScriptErrorString:@"Cannot pass both a field and a 
field name."];
-            return nil;
-        }
-        if (indexNumber) {
-            [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-            [command setScriptErrorString:@"Cannot pass both a field and an 
index."];
-            return nil;
-        }
         if ([keySpec isKindOfClass:[NSNameSpecifier class]] == NO) {
             [command setScriptErrorNumber:NSArgumentsWrongScriptError];
             [command setScriptErrorString:@"Invalid field specifier."];
@@ -629,16 +618,6 @@
         }
         field = [[(NSNameSpecifier *)keySpec name] fieldName];
     } else if ([keyClass isEqualToString:@"linked file"]) {
-        if (field) {
-            [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-            [command setScriptErrorString:@"Cannot pass both a linked file and 
a field name."];
-            return nil;
-        }
-        if (indexNumber) {
-            [command setScriptErrorNumber:NSArgumentsWrongScriptError];
-            [command setScriptErrorString:@"Cannot pass both a linked file and 
an index."];
-            return nil;
-        }
         field = BDSKLocalFileString;
         // NSPropertySpecifier, NSIndexSpecifier, NSRangeSpecifier, 
NSMiddleSpecifier, NSWhoseSpecifier
         NSInteger i, count = -2;

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



_______________________________________________
Bibdesk-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bibdesk-commit

Reply via email to