Made it possible to remove author from the paper, added issue for "authors" command
authorDmitriy Morozov <morozov@cs.duke.edu>
Mon, 30 Jun 2008 10:55:27 -0400
changeset 9 f7462be0b274
parent 8 0c241cd7c989
child 10 002b2375f2c1
Made it possible to remove author from the paper, added issue for "authors" command
.issues/8b7421be0f725ccb/new/1214837703.M728267P2422Q1.metatron
alexandria.py
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/.issues/8b7421be0f725ccb/new/1214837703.M728267P2422Q1.metatron	Mon Jun 30 10:55:27 2008 -0400
@@ -0,0 +1,9 @@
+From: Dmitriy Morozov <morozov@cs.duke.edu>
+Date: Mon, 30 Jun 2008 10:53:51
+State: new
+Subject: Merge alias and ralias into authors command
+Message-Id: <8b7421be0f725ccb-0-artemis@metatron>
+
+Create authors command that lists all the authors (with their aliases if any).
+Use it also to add/remove aliases from a given author (remove with -alias). As
+a result get rid of alias and ralias commands.
--- a/alexandria.py	Mon Jun 30 07:44:01 2008 -0400
+++ b/alexandria.py	Mon Jun 30 10:55:27 2008 -0400
@@ -194,10 +194,18 @@
         authors = author_with_commas.split(',')
         for author in authors:
             author = unicode(author.strip())
+            if author[0] == '-':
+                author = author[1:]
+                remove_author = True
+            else:
+                remove_author = False
             an = AuthorNickname.get_by(name = author)
             if an: a = an.author
             else:  a = Author.get_by_or_init(name = author)
-            a.papers.append(p)
+            if remove_author:
+                a.papers.remove(p)
+            else:
+                a.papers.append(p)
 
 def _show_nicknames():
     print "Nicknames:"