Loading cccli/command.py +54 −3 Original line number Diff line number Diff line Loading @@ -348,7 +348,7 @@ class Command(object): cmd_addtag.usage = "addtag <account> <tag> <value>" def cmd_deltag(self, argv): '''Delete a static tag from an user''' '''Delete a static tag from an account''' if len(argv) != 3: raise cmdBadArgument() try: Loading @@ -357,6 +357,57 @@ class Command(object): raise cmdError("RPCError: %s"%str(e)) cmd_deltag.usage = "deltag <account> <tag>" def cmd_rights(self, argv): '''List account rights (current by default)''' # Parse argline try: oparser = OptionParser(prog=argv[0]) oparser.add_option("--raw", action="store_true", dest="raw", help="Don't append filter on request") (options, args) = oparser.parse_args(argv[1:]) except SystemExit: return # append current login if nothing asked if len(args) == 0: tql = "a=%s"%self.cli.settings["login"] else: tql = "".join(args) # update tql if mode if not options.raw: tql += "&a" # ask server try: al = self.cli.rpc.call("rights", tql) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) # display answer for (a, rl) in al.items(): self.printer.out("%srights of %s%s"%(color["lblue"], a, color["reset"])) for i,r in enumerate(rl): tags = " ".join([ "%s%s:%s%s"%(color["green"], t, color["reset"], v) for (t,v) in r.items() ]) self.printer.out("[%s] %s"%(i,tags)) cmd_rights.usage = "rights [--raw] [--help] [tql]" def cmd_addright(self, argv): '''Add/edit a right''' if len(argv) != 5: raise cmdBadArgument() try: self.cli.rpc.call("addright", argv[1], argv[2], argv[3], argv[4]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addright.usage = "addright <account> <right tql> <method> <allow>" def cmd_delright(self, argv): '''Delete a right''' if len(argv) != 3: raise cmdBadArgument() try: self.cli.rpc.call("delright", argv[1], int(argv[2])) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_delright.usage = "delright <account> <index>" def cmd_addaccount(self, argv): '''Create an account''' if len(argv) != 3: Loading @@ -365,7 +416,7 @@ class Command(object): self.cli.rpc.call("addaccount", argv[1], argv[2]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addaccount.usage = "addaccount <name> <role>" cmd_addaccount.usage = "addaccount <account> <role>" def cmd_delaccount(self, argv): '''Delete an account''' Loading @@ -375,7 +426,7 @@ class Command(object): self.cli.rpc.call("delaccount", argv[1]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_delaccount.usage = "delaccount <name>" cmd_delaccount.usage = "delaccount <account>" def cmd_passwd(self, argv): '''Change account password''' Loading Loading
cccli/command.py +54 −3 Original line number Diff line number Diff line Loading @@ -348,7 +348,7 @@ class Command(object): cmd_addtag.usage = "addtag <account> <tag> <value>" def cmd_deltag(self, argv): '''Delete a static tag from an user''' '''Delete a static tag from an account''' if len(argv) != 3: raise cmdBadArgument() try: Loading @@ -357,6 +357,57 @@ class Command(object): raise cmdError("RPCError: %s"%str(e)) cmd_deltag.usage = "deltag <account> <tag>" def cmd_rights(self, argv): '''List account rights (current by default)''' # Parse argline try: oparser = OptionParser(prog=argv[0]) oparser.add_option("--raw", action="store_true", dest="raw", help="Don't append filter on request") (options, args) = oparser.parse_args(argv[1:]) except SystemExit: return # append current login if nothing asked if len(args) == 0: tql = "a=%s"%self.cli.settings["login"] else: tql = "".join(args) # update tql if mode if not options.raw: tql += "&a" # ask server try: al = self.cli.rpc.call("rights", tql) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) # display answer for (a, rl) in al.items(): self.printer.out("%srights of %s%s"%(color["lblue"], a, color["reset"])) for i,r in enumerate(rl): tags = " ".join([ "%s%s:%s%s"%(color["green"], t, color["reset"], v) for (t,v) in r.items() ]) self.printer.out("[%s] %s"%(i,tags)) cmd_rights.usage = "rights [--raw] [--help] [tql]" def cmd_addright(self, argv): '''Add/edit a right''' if len(argv) != 5: raise cmdBadArgument() try: self.cli.rpc.call("addright", argv[1], argv[2], argv[3], argv[4]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addright.usage = "addright <account> <right tql> <method> <allow>" def cmd_delright(self, argv): '''Delete a right''' if len(argv) != 3: raise cmdBadArgument() try: self.cli.rpc.call("delright", argv[1], int(argv[2])) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_delright.usage = "delright <account> <index>" def cmd_addaccount(self, argv): '''Create an account''' if len(argv) != 3: Loading @@ -365,7 +416,7 @@ class Command(object): self.cli.rpc.call("addaccount", argv[1], argv[2]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_addaccount.usage = "addaccount <name> <role>" cmd_addaccount.usage = "addaccount <account> <role>" def cmd_delaccount(self, argv): '''Delete an account''' Loading @@ -375,7 +426,7 @@ class Command(object): self.cli.rpc.call("delaccount", argv[1]) except RpcError as e: raise cmdError("RPCError: %s"%str(e)) cmd_delaccount.usage = "delaccount <name>" cmd_delaccount.usage = "delaccount <account>" def cmd_passwd(self, argv): '''Change account password''' Loading