ARLO Nester
Classes | Functions
workspace.tools.views.viewMetaData Namespace Reference

Classes

class  MetaDataForm
 

Functions

def addOrUpdateMediaFileMetaData (mediaFile, data)
 Add, or update if records exist, a list of MetaData for a MediaFile. More...
 
def getMediaFileMetaData (mediaFile)
 returns all metaData entries for a mediaFile, as a list of tuples. More...
 
def getMediaFileMetaDataDictionary (mediaFile)
 returns all metaData entries for a mediaFile, as a dictionary More...
 
def getMetaDataEntry (mediaFile, name)
 returns a specific metaData entry for a mediaFile More...
 
def setMetaDataEntry (mediaFile, name, value)
 Set a single MetaData entry for a file. More...
 
def guessTimeFromName (request, audioID)
 Guess the Start Time of a file based on it's name/alias. More...
 
def viewMetadata (request, audioID)
 View and Edit a Media File's Metadata. More...
 

Function Documentation

def workspace.tools.views.viewMetaData.addOrUpdateMediaFileMetaData (   mediaFile,
  data 
)

Add, or update if records exist, a list of MetaData for a MediaFile.

Note
will update existing records or add new... Will not delete records (e.g., if records 1 and 2 exist, and 2 and 3 are passed to this function, 1, 2, and 3 will exist at the end)
Parameters
mediaFileMediaFile Object
dataA list of tuples [(name, value, userEditable)} to set
Returns
True on success
def workspace.tools.views.viewMetaData.getMediaFileMetaData (   mediaFile)

returns all metaData entries for a mediaFile, as a list of tuples.

Parameters
mediaFileMediaFile Object
Returns
List of metaData, as tuples (name, value, userEditable)
def workspace.tools.views.viewMetaData.getMediaFileMetaDataDictionary (   mediaFile)

returns all metaData entries for a mediaFile, as a dictionary

Note
If there are multiple entries for a key (name) then this may fail.
Parameters
mediaFileMediaFile Object
Returns
List of metaData, as a dictionary {'name': value}
def workspace.tools.views.viewMetaData.getMetaDataEntry (   mediaFile,
  name 
)

returns a specific metaData entry for a mediaFile

Parameters
mediaFileMediaFile Object
nameThe MetaData entry's name (key)
Returns
The MetaData's value, None if does not exist.
def workspace.tools.views.viewMetaData.guessTimeFromName (   request,
  audioID 
)

Guess the Start Time of a file based on it's name/alias.

This is called by AJAX, and returns a JSON response. This is basically hardcoded for commonly used file naming conventions, and may not be anything too useful for general use. Perhaps in the future we can have user-specified Regex.

Parameters
requestThe Django HTTP request object
audioIDThe database ID of a mediaFile
Returns
Django HTTP response object, as a JSON dictionary {'success_string', 'date_time'}. success_string: "done" if success, "failed" otherwise. dateTime: String, formatted as "YYYY-MM-DD HH:MM:SS"
def workspace.tools.views.viewMetaData.setMetaDataEntry (   mediaFile,
  name,
  value 
)

Set a single MetaData entry for a file.

Updates an existing entry, or add a new.

Note
This does not modify userEditable (will set to database default if creating a new entry).
Parameters
mediaFileMediaFile Object
nameThe MetaData entry's name (key)
valueThe value of the MetaData entry to set.
Returns
True on success
def workspace.tools.views.viewMetaData.viewMetadata (   request,
  audioID 
)

View and Edit a Media File's Metadata.

GET displays the form, POST saves data.

Parameters
requestThe Django HTTP request object
audioIDThe Database ID of the audio file to display
Returns
Django HTTP response object Default return block - GET Request and after processing POST