Assign SIP UUID to directory levels of desc.

Added logic, during SIP creation from the arrange panel, to assign
the SIP UUID to each DB entry for a directory's level of description.
Allow files to have levels of description.
Remove restriction of assigning LOD to files.

Removed the UI restriction preventing assigning level of description,
in the SIP arrange panel, to files.
Changed file level of descriptions storage.

Changed how file level of descriptions are stored so once a
SIP is created the relative location becomes relative to the
SIP directory (rather than, before it becomes a SIP, the
arrange directory).
Fix missing structMap, TYPE attrs

refs #7068, #7071

Remove the FileLevelOfDescription and replace it with attributes on
SIPArrange. Instead of attaching the level of description to the
FileLevelOfDescription, populate the new level_of_description field in
SIPArrange. This is easier to find, set and update when the SIP is created,
and less error prone when creating a SIP from not top level directories. Do
not delete SIPArrange directories, as they are now needed for level of
description information.

In createMETS2, search based on the path relative to the objects directory.
Query SIPArrange instead of FileLevelOfDescription.
Add update SQL for main_siparrange

refs #7068

Add SQL to update SIPArrange for new columns. syncdb will create these
on a fresh install, but not on update.
Add SIP label to objects div

refs #7068

Add the label from the directory the SIP was created from to the
logical structMap's objects div. If there was an objects directory in
the arranged SIP already, delete it. Delete TYPE=Directory from the SIP
level div.
DIP Upload: Fix rsync parameters

Do not include arguments in the rsync command if the value is empty,
and include SIP UUID in arguments. Also, no need to separate with
newlines.
LoD: Assign unique values to incoming LoD

refs #7070

Assign values starting at 1 to incoming LoD, since the promote/demote
code that swaps values has no effect when sortorder is all the same.
LoD: Cleanup fetch & display of levels of description

refs #7070

Fix get_atom_levels_of_description to work correctly with clear=False.
New LoD get unique sortorders, starting at the max value of the
existing sortorders, since swapping sortorder values will not work if
they have the same value.

Fix hiding of promote/demote arrows only when sortorder is the max or
min value (instead of 1 or length, since values may be deleted). Align
all demote arrows vertically. Use STATIC_URL instead of hardcoded value.

Clean up _atom_levels_of_description_sort_adjust remove unnecessary
iterate and inefficient swap.  Misc other minor fixes.
Updated DB changes: set AtoM DIP upload defaults.

Added DB changes to set defaults in the updated AtoM DIP upload
configuration administration.
File browser can receive directory metadata.

Added logic to the client-side file browser so when it does AJAX
requests for directory data it can receive directory metadata and
assign it to its internal representation of the directory.
Directory AJAX feed provides directory metadata.

Updated the AJAX feed for providing SIP arrange directory data
with level of directory metadata.
Re-enabled editing of file metadata.
Display level of description in SIP arrange.

Updated client-side UI logic to display level of description for
directories.
Fixed issue with unsetting level of description.

Fixed issue where an error is generated and the user saves a blank
level of desription in the SIP arrange UI.
Enforce valid user interaction in arrange panel.

Added disabling of SIP arrange panel action buttons when the user has
highlighted an item that the action should not apply to (creating
directories within files, for example).

Added an error alert in the SIP arrange UI if someone tries to
create a directory within a file.

Commented and cleaned up JavaScript.
Minor CSS tweak to SIP arrange paging links.
Fixed issue with file explorer ad-hoc properties.

Fixed an issue where if ad-hoc properties aren't found, it caused an
error.
Auto-search transfer backlog in originals panel.

If a open opens the originals file browser and the transfer backlog isn't
yet searched, trigger a search.