some checkups for manager

This commit is contained in:
Ville Rantanen
2018-03-02 12:04:48 +02:00
parent 06d42ee956
commit 01cfd02679
4 changed files with 58 additions and 25 deletions

View File

@@ -87,6 +87,12 @@ def list_folders(shares,config):
def add_share(shares, config, opts):
# check for share name exists already
for share in shares:
if share['name'] == opts.name:
print("Share with name '%s' already exists"%( opts.name, ))
sys.exit(1)
share = {
'name': opts.name,
'path': opts.path,
@@ -114,6 +120,7 @@ def add_share(shares, config, opts):
'expire': opts.expire
})
print(json.dumps(share, indent = 2, sort_keys = True))
if opts.write:
shares.append(share)
shares_file = os.path.join(config['__root_path__'], opts.shares_file)
@@ -127,9 +134,33 @@ def add_share(shares, config, opts):
json.dump(shares, fp, indent = 2, sort_keys = True)
print("Wrote file %s"%(shares_file,))
print("Add share: %s"%( opts.name, ))
check_login(share, config)
else:
print("Share not saved anywhere. Save with -w")
print(json.dumps(share, indent = 2, sort_keys = True))
def check_login(share, config):
import requests
print("Login link")
URL = None
if 'tokens' in share:
if len(share['tokens'])>0:
token = share['tokens'][0]
URL = "%s/list/%s/%s"%(
config['public_url'],
share['name'],
token
)
if URL == None:
URL = "%s/list/%s"%(
config['public_url'],
share['name']
)
print(URL)
req = requests.get(URL)
if (req.status_code != 200):
print("Login did not appear to work")
def modify_share(shares, config, opts):
@@ -233,6 +264,9 @@ def remove_share(shares,config,opts):
for share_ in share:
print("Removing share: %s"%( name, ))
print(json.dumps(share_, indent = 2, sort_keys = True))
if len(share) == 0:
print("No such share")
sys.exit(1)
if opts.write:
shares = [share for share in shares if share['name'] != name]