forked from 0x2620/pandora
rightslevel
This commit is contained in:
parent
47dfb7f5a9
commit
389619feaf
8 changed files with 126 additions and 49 deletions
|
|
@ -16,10 +16,11 @@
|
|||
"canDeleteItems": {"admin": true},
|
||||
"canDownloadVideo": {"guest": 0, "member": 0, "friend": 4, "staff": 4, "admin": 4},
|
||||
"canEditMetadata": {"staff": true, "admin": true},
|
||||
"canEditUsers": {"admin": true},
|
||||
"canPlayClips": {"guest": 2, "member": 2, "friend": 4, "staff": 4, "admin": 4},
|
||||
"canPlayVideo": {"guest": 1, "member": 1, "friend": 4, "staff": 4, "admin": 4},
|
||||
"canReloadMetadata": {"staff": true, "admin": true},
|
||||
"canSeeDebugMenu": {"admin": true},
|
||||
"canSeeDebugMenu": {"staff": true, "admin": true},
|
||||
"canSeeFiles": {"staff": true, "admin": true},
|
||||
"canSeeItem": {"guest": 3, "member": 3, "friend": 4, "staff": 4, "admin": 4},
|
||||
"canSeeExtraItemViews": {"friend": true, "staff": true, "admin": true}
|
||||
|
|
@ -321,7 +322,7 @@
|
|||
"type": "float",
|
||||
"columnWidth": 90,
|
||||
"format": {"type": "color", "args": ["hue"]},
|
||||
"sortOperator": "-"
|
||||
"sortOperator": "+"
|
||||
},
|
||||
{
|
||||
"id": "saturation",
|
||||
|
|
@ -444,6 +445,13 @@
|
|||
"columnWidth": 60,
|
||||
"format": {"type": "percent", "args": ["auto", 2]}
|
||||
},
|
||||
{
|
||||
"id": "rightslevel",
|
||||
"title": "Rights Level",
|
||||
"type": "integer",
|
||||
"columnWidth": 60,
|
||||
"sortOperator": "+"
|
||||
},
|
||||
{
|
||||
"id": "canPlayVideo",
|
||||
"title": "Can Play Video",
|
||||
|
|
|
|||
|
|
@ -18,18 +18,22 @@ RUN_RELOADER = True
|
|||
|
||||
def load_config():
|
||||
with open(settings.SITE_CONFIG) as f:
|
||||
config = ox.jsonc.load(f)
|
||||
try:
|
||||
config = ox.jsonc.load(f)
|
||||
except:
|
||||
config = None
|
||||
|
||||
config['site']['id'] = settings.SITEID
|
||||
config['site']['name'] = settings.SITENAME
|
||||
config['site']['sectionName'] = settings.SITENAME
|
||||
config['site']['url'] = settings.URL
|
||||
if config:
|
||||
config['site']['id'] = settings.SITEID
|
||||
config['site']['name'] = settings.SITENAME
|
||||
config['site']['sectionName'] = settings.SITENAME
|
||||
config['site']['url'] = settings.URL
|
||||
|
||||
config['keys'] = {}
|
||||
for key in config['itemKeys']:
|
||||
config['keys'][key['id']] = key
|
||||
config['keys'] = {}
|
||||
for key in config['itemKeys']:
|
||||
config['keys'][key['id']] = key
|
||||
|
||||
settings.CONFIG = config
|
||||
settings.CONFIG = config
|
||||
|
||||
def reloader_thread():
|
||||
_config_mtime = 0
|
||||
|
|
|
|||
|
|
@ -424,7 +424,7 @@ class Item(models.Model):
|
|||
i = {
|
||||
'id': self.itemId,
|
||||
'rendered': self.rendered,
|
||||
'rightsLevel': self.level
|
||||
'rightslevel': self.level
|
||||
}
|
||||
i.update(self.external_data)
|
||||
i.update(self.data)
|
||||
|
|
@ -587,6 +587,7 @@ class Item(models.Model):
|
|||
'popularity',
|
||||
'published',
|
||||
'resolution',
|
||||
'rightslevel',
|
||||
'saturation',
|
||||
'size',
|
||||
'volume',
|
||||
|
|
@ -647,6 +648,7 @@ class Item(models.Model):
|
|||
s.itemId = self.itemId.replace('0x', 'xx')
|
||||
s.modified = self.modified
|
||||
s.published = self.published
|
||||
s.rightslevel = self.level
|
||||
|
||||
s.aspectratio = self.get('aspectRatio')
|
||||
s.words = sum([len(a.value.split()) for a in self.annotations.exclude(value='')])
|
||||
|
|
|
|||
|
|
@ -396,7 +396,7 @@ def get(request):
|
|||
if data['keys'] and 'files' in data['keys']:
|
||||
info['files'] = item.get_files(request.user)
|
||||
if not data['keys'] or 'notes' in data['keys'] \
|
||||
and request.user.get_profile().capability('canSeeNotes'):
|
||||
and request.user.get_profile().capability('canEditMetadata'):
|
||||
info['notes'] = item.notes
|
||||
response['data'] = info
|
||||
else:
|
||||
|
|
@ -442,12 +442,12 @@ def edit(request):
|
|||
if item.editable(request.user):
|
||||
response = json_response(status=200, text='ok')
|
||||
if 'notes' in data:
|
||||
if request.user.get_profile().capability('canSeeNotes'):
|
||||
if request.user.get_profile().capability('canEditMetadata'):
|
||||
item.notes = data['notes']
|
||||
del data['notes']
|
||||
if 'rightsLevel' in data:
|
||||
item.level = data['rightsLevel']
|
||||
del data['rightsLevel']
|
||||
if 'rightslevel' in data:
|
||||
item.level = data['rightslevel']
|
||||
del data['rightslevel']
|
||||
r = item.edit(data)
|
||||
if r:
|
||||
r.wait()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue