diff --git a/i18n/messages.xml b/i18n/messages.xml
index 68e92b076..68be4e09c 100644
--- a/i18n/messages.xml
+++ b/i18n/messages.xml
@@ -335,7 +335,7 @@
Your request has been sent.Your request has been sent.Your request has been sent.
- Your request has been sent to the author or responsible person.
+ Your request has been sent to the repository managers.Document copy request
diff --git a/i18n/messages.xml.03033030 b/i18n/messages.xml.03033030
new file mode 100644
index 000000000..68e92b076
--- /dev/null
+++ b/i18n/messages.xml.03033030
@@ -0,0 +1,2509 @@
+
+
+
+
+
+
+
+ Institutional Repository Home
+ Search
+ Go
+ Go to DSpace home
+ Save
+ Cancel
+ Return
+ Update
+ Delete
+ Next
+ Untitled
+ Perform
+ Queue
+
+
+ Please contact the site administrator if you wish to report this error. If possible, please provide details about what you were doing at the time this error occurred.
+ Contact site administrator
+ Show underlying error stack
+
+
+ Page not found
+ Page not found
+ We can't find the page you asked for.
+
+
+
+ Only site administrators may assume login as another user.
+ Only authenticated users who are administrators may assume the login as another user.
+ You may not assume the login as another administrator.
+
+
+
+ The DSpace digital repository system captures, stores, indexes, preserves, and distributes digital research material.
+ RSS Feeds
+ The Channel Image
+ Untitled
+
+
+ Notice
+
+
+
+
+
+
+ Search produced no results.
+ All of Institutional Repository
+
+
+
+
+ Author
+ Title
+ Subject
+ Abstract
+ Series
+ Sponsor
+ Identifier
+ Language (ISO)
+ Keyword
+
+
+ Contributor
+ Creator
+ Description
+ Relation
+ Mime-Type
+ Other Contributor
+ Advisor
+ Department
+
+ Full Text
+
+
+ Or enter first few letters:
+ Browse for items that begin with these letters
+ Jump to a point in the index:
+ (Choose month)
+ (Choose year)
+ Or type in a year:
+ Browse for items that are from the given year.
+ Sorry, there are no results for this browse.
+ Sort by:
+ Order:
+ Results:
+ Authors/Item:
+
+ All
+
+ title
+ issue date
+ submit date
+
+ ascending
+ descending
+
+ Authors Name
+ Subject
+
+ Browsing {0} by Author {1}
+ Browsing {0} by Author
+
+ Browsing {0} by Subject {1}
+ Browsing {0} by Subject
+
+ Browsing {0} by Title {1}
+ Browsing {0} by Title
+
+ Browsing {0} by Issue Date {1}
+ Browsing {0} by Issue Date
+
+ Browsing {0} by Submit Date {1}
+ Browsing {0} by Submit Date
+
+
+
+ Withdrawn Items by Title
+ Withdrawn Items by Title
+
+ Withdrawn Items by Issue Date
+ Withdrawn Items by Issue Date
+
+ Withdrawn Items by Submit Date
+ Withdrawn Items by Submit Date
+
+
+ Private Items by Title
+ Private Items by Title
+
+ Private Items by Issue Date
+ Private Items by Issue Date
+
+ Private Items by Submit Date
+ Private Items by Submit Date
+
+
+ Search Scope
+ All of DSpace
+ Search within this collection:
+ Browse by
+ Titles
+ Authors
+ Dates
+ Advanced Search
+ Recent Submissions
+
+
+ Community List
+ Community List
+ Communities in DSpace
+ Select a community to browse its collections.
+
+
+ Search Scope
+ All of DSpace
+ Search within this community and its collections:
+ Browse by
+ Titles
+ Authors
+ Dates
+ Advanced Search
+ Sub-communities within this community
+ Collections in this community
+ Recent Submissions
+
+
+
+ Contact us
+ Contact us
+ Contact us
+ {0} administrators may be contacted at:
+ On-line form
+ Feedback
+ Email
+
+
+ Give feedback
+ Give feedback
+ Give feedback
+ Thanks for sharing your feedback about the DSpace system. Your comments are appreciated!
+ Your Email
+ This address will be used to follow up on your feedback.
+ Comments
+ Send Feedback
+
+
+ Give feedback
+ Give feedback
+ Feedback sent
+ Your comments have been received.
+
+
+ View Item
+ This item appears in the following Collection(s)
+ Show simple item record
+ Show full item record
+
+ This item has been withdrawn and is no longer available.
+
+
+
+
+ Browse
+ All of DSpace
+ Communities & Collections
+ Titles
+ Authors
+ Subjects
+ By Issue Date
+ By Submit Date
+ This Collection
+ This Community
+
+
+
+
+ Search
+ Search
+ Search
+ Search Scope
+ Full Text Search
+
+
+ This resource is restricted
+ Restricted
+ This resource is restricted
+ This community is restricted
+ This collection is restricted
+ This item is restricted
+ This bitstream is restricted
+ You do not have the credentials to access the restricted resource.
+ You do not have the credentials to access the restricted community {0}.
+ You do not have the credentials to access the restricted collection {0}.
+ You do not have the credentials to access the restricted item {0}.
+ You do not have the credentials to access the restricted bitstream {0}.
+ collection
+ community
+ bitstream
+ item
+ resource
+ unknown
+ Proceed to login screen
+
+ This item is withdrawn
+ The selected item is withdrawn and is no longer available.
+ The selected item is access restricted and requires credentials to view. Please login to access the item.
+ Your user account does not have the credentials to view this item. Please contact the system administrator if you have any questions.
+
+
+ The item is restricted
+ The item you are attempting to access is a restricted item and requires credentials to view. Please login below to access the item.
+
+ Monthly Reports
+ Statistical Summary
+
+ No reports currently available
+ There are currently no reports available for this service. Please check back later.
+
+
+ The file is restricted
+ The file you are attempting to access is a restricted file and requires credentials to view. Please login below to access the file.
+
+
+ This export archive is restricted.
+ The export archive you are attempting to access is a restricted resource and requires credentials to view. Please login below to access the export archive.
+
+
+
+
+ Request a copy of the document
+ Request a copy of the document
+ Request a copy of the document
+ Users of this system, can login to view this document.
+ Login
+ Enter the following information to request a copy of the document from the responsible person.
+ Your e-mail address
+ This email address is used for sending the document.
+ E-mail is mandatory
+ Message
+ Message is mandatory
+ Files
+ All files (of this document) in restricted access.
+ Only The requested file.
+ Name
+ Name is required
+ Request copy
+
+
+ Your request has been sent.
+ Your request has been sent.
+ Your request has been sent.
+ Your request has been sent to the author or responsible person.
+
+
+ Document copy request
+ Document copy request
+ Document copy request
+ IF YOU ARE THE AUTHOR (OR AN AUTHOR) OF DOCUMENT "{0}" use the buttons to answer the user's request.
+ This repository will propose an appropriate model reply, which you may edit.
+ Initial reply to requester
+ Author permission request
+ Send copy
+ Don't send copy
+
+
+ Document copy request
+ Document copy request
+ Document copy request
+ This is the text to be sent to the applicant.
+ Message
+ Subject
+ Send
+ Back
+
+
+ Document copy request
+ Document copy request
+ Document copy request
+ This is the text to be sent to the applicant (together with the document).
+ Message
+ Subject
+ Send
+ Back
+
+
+ Change permissions request
+ Change permissions request
+ Change permissions request
+ You may use this occasion to reconsider the access restrictions on the document (to avoid having to respond to these requests), if there is no reason to keep it restricted. To do so, after inserting your name and e-mail (for authentication), click the button "Change to Open Access".
+ Name
+ E-mail
+ The name is required
+ The e-mail address is required
+ Change to open access
+
+
+ Request sent
+ Request sent
+ Your request to change permissions has been sent
+ Your request has been sent to the administrator
+ Thanks
+
+
+ Document copy request
+ Document copy request
+ Document copy request
+ Initial communication with the requester, to let them know their request is being processed.
+ To
+ Subject
+ Message
+ Send
+ Back
+
+
+ Document copy request
+ Document copy request
+ Document copy request
+ This is the text to be sent to the applicant (together with the document).
+ To
+ Subject
+ Message
+ Send
+ Back
+
+
+ Your response has been sent.
+ Your response has been sent.
+ Your response has been sent.
+ Your response has been sent.
+
+
+
+
+
+
+
+
+
+
+
+
+ New user registration
+ Forgot Password
+
+
+ Registration unavailable
+ Registration unavailable
+ The configuration of this DSpace repository does not allow registration in this context. Please contact the site administrator with questions or comments.
+
+
+ Update Profile
+ Create Profile
+ Update Profile
+ Update Profile
+ Create Profile
+ Email Address
+ First Name
+ Last Name
+ Contact Telephone
+ Language
+ Subscriptions
+ You may subscribe to collections to receive daily e-mail alerts of new items added. You can subscribe to as many or as few collections as you wish. Another alternative to daily e-mail alerts is to use the RSS feeds available for all collections.
+ Email Subscriptions
+ ( Select Collection )
+ Optionally, you can enter a new password in the box below, and confirm it by typing it again into the second box. It should be at least six characters long.
+ Please enter a password in the box below, and confirm it by typing it again into the second box. It should be at least six characters long.
+ Password
+ Retype to confirm
+ Complete Registration
+ Update Profile
+ This field is required
+ Choose a password at least 6 characters long
+ Please retype your password to confirm
+ Authorization groups you belong to
+ Identify
+ Security
+
+
+ Verify Email
+ Create Profile
+ Finished
+ Verify Email
+ Reset Password
+ Finished
+
+
+ Password reset
+ Password reset
+ Your password has been reset.
+
+
+ Invalid token
+ Invalid token
+ Invalid token
+ The URL you provided is invalid. The URL may have been broken across multiple lines in your email client, like this:
+ If so, copy and paste the entire URL directly into your browser's address bar, rather than simply clicking on the link. The address bar should then contain something like:
+
+
+ My Account
+ Profile
+ Logout
+ Login
+ Register
+
+
+ Sign in
+ Sign in
+ Sign in to DSpace
+ E-Mail Address
+ The email address and/or password supplied were not valid.
+ Password
+ Forgot your password?
+ Sign in
+ Register new user
+ Register an account to subscribe to collections for email updates, and submit new items to DSpace.
+ Click here to register.
+
+
+ Sign in
+ Sign in
+ Sign in to DSpace
+ User Name
+ The user name and/or password supplied were not valid.
+ Password
+ Sign in
+
+
+ Choose a Login Method
+ Choose Login
+ Choose a Login Method
+ Log in via:
+ Shibboleth Authentication
+ LDAP Authentication
+ Password Authentication
+ Web Certificate Authentication
+
+
+ The credentials provided are invalid.
+ Unable to authenticate due to invalid arguments received.
+ A user was not found with the credentials provided.
+ Authentication Failed
+ Failed Authentication
+ Authentication Failed
+
+
+ No Authentication Method Found
+ No authentication method was found. Please contact the site administrator.
+ Shibboleth Login Failed
+ Shibboleth authentication not available at this time. Please contact the site administrator.
+
+
+ Profile updated
+ Update profile
+ Profile updated
+ Your profile information has been updated.
+
+
+ Registration finished
+ Registration Finished
+ You're now registered to use the DSpace system. You can subscribe to collections to receive email updates about new items.
+
+
+ Reset password
+ Reset password
+ Please enter a new password into the box below, and confirm it by typing it again into the second box. It should be at least six characters long.
+ Email Address
+ New password
+ Retype to Confirm
+ Reset password
+ Choose a password at least 6 characters long
+ Please retype your password to confirm
+
+
+ Forgot Password
+ Forgot Password
+ Enter the email address you provided when you registered with DSpace. An email will be sent to that address with further instructions.
+ Email Address
+ Enter the same address used when registering.
+ Email address not found.
+ Send info
+
+
+ New user registration
+ Email already in use
+ That email address is already in use by another account. If you want to reset the password for this account, click the reset password button below.
+ Reset password for
+ Reset password
+ New user registration
+ Register an account to subscribe to collections for email updates, and submit new items to DSpace.
+ Email Address
+ This address will be verified and used as your login name.
+ Unable to send email to this address.
+ Register
+
+
+ Verification email sent
+ Verification email sent
+ An email has been sent to {0} containing a special URL and further instructions.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MyDSpace Home
+ Go to MyDSpace Home
+ Item submission
+ Item submission
+ Item submission
+ < Previous
+ Save & Exit
+ Next >
+ Complete submission
+ Item submission
+ Item submission
+ Item submission
+ Show full item record
+ Show simple item record
+ Submission
+ Submission
+
+
+ Submit a new item to this collection
+
+
+ Submissions
+
+
+
+ Submissions & Workflow
+ Submissions
+ Submissions & Workflow tasks
+ Untitled
+ email:
+
+ Workflow tasks
+ These tasks are items that are awaiting approval before they are added to the repository. There are two task queues, one for tasks which you have chosen to accept and another for tasks which have not been taken by anyone yet.
+ Tasks you own
+
+ Task
+ Item
+ Collection
+ Submitter
+ Return selected tasks to the pool
+ No tasks are assigned to you
+ Tasks in the pool
+ Take selected tasks
+ No tasks are in the pool
+
+ Submissions
+ You may
+ start a new submission.
+ The submission process includes describing the item and uploading the file(s) comprising it. Each community or collection may set its own submission policy.
+ Unfinished submissions
+ These are incomplete item submissions. You may also
+ start another submission
+ .
+
+ Title
+ Collection
+ Submitter
+ Authoring:
+ No submissions left unfinished.
+ Supervising:
+ Remove selected submissions
+
+ Submissions being reviewed
+ These are your completed submissions which are currently being reviewed by collection curators.
+ Title
+ Collection
+ Status
+
+ Submitted
+ Awaiting reviewer's attention
+ Submission being reviewed
+ Awaiting editor's attention
+ Submission being edited
+ Awaiting final editor's attention
+ Submission being edited
+ Submission has been archived
+ Unknown state
+
+ Archived Submissions
+ These are your completed submissions which have been accepted into DSpace.
+ Date accepted
+ Title
+ Collection
+ We've only listed 50 of your archived submissions above.
+ Display all my archived submissions.
+
+
+ Initial Questions
+ Describe
+ Access
+ Upload
+ Review
+ Creative Commons
+ CC License
+ License
+ Complete
+
+
+ Resume
+
+
+ Select a collection
+ Collection
+ Select the collection you wish to submit an item to.
+ Select a collection...
+
+
+ Save or cancel your submission?
+ Do you want the submission removed, or do you want to carry on working on it later? You may return to the submission process if you clicked Exit by accident.
+ Oops, continue submission
+ Save it, I'll work on it later
+ Remove the submission
+
+
+
+ Initial Questions
+ Important Note:
+ and
+ ,
+ (
+ )
+ Multiple titles
+ The item has more than one title, e.g. a translated title
+ If the checkbox above is unchecked then the following title(s) will be removed from the item:
+ Published
+ The item has been published or publicly distributed before
+ If the checkbox above is unchecked then the following will be removed from the item:
+ Date Issued
+ Citation
+ Publisher
+
+
+ Describe Item
+ Error: Unknown field type
+ This field is required
+ Last name, e.g. Smith
+ First name(s) + "Jr", e.g. Donald Jr
+ Year
+ Month
+ Day
+ Series Name
+ Report or paper No.
+ Subject Categories
+ Subject Categories
+ Filter subjects
+ Filter
+ Please wait while the controlled vocabulary is loading.
+ There was an issue when loading the controlled vocabulary, please try again later.
+
+
+
+ Access Settings
+ Visible to a group of selected users (no selection needed for Anonymous)
+ Allow access once item is accepted into archive
+ Embargo until specific date
+ Access for selected group
+ Policy name
+ A short, descriptive name for the policy (up to 30 characters). May be shown to end users. Example: "Staff-only". Optional but recommended.
+ Description
+ Embargo reason
+ The reason for the embargo, typically for internal use only. Optional.
+ Confirm Policy & add another
+ Group
+ Error format date
+ When Embargo selected, date is required
+ An identical policy for this group and this action is already in place.
+ Group policies
+ Policies listed in this section override any default policies for the collection you're submitting to. If you wish to set an embargo but the target collection allows access for any user, you must set a policy that allows access for the Anonymous group only from a specific date onwards.
+ No group policies have been set up for this item.
+ Embargo
+ Private item
+ If selected, the item won't be searchable
+ Private
+ Name
+ Action
+ Group
+ Start Date
+ End Date
+ Edit
+ Remove
+ The first day from which access is allowed. Accepted format: yyyy, yyyy-mm, yyyy-mm-dd
+ The first day from which access is allowed. This date cannot be modified on this form. To set an embargo date for a bitstream, go to the Item Status tab, click Authorizations..., create or edit the bitstream's READ policy, and set the Start Date as desired.
+ Name: {0}; action: {1}, group: {2}, start date: {3}, end date: {4}
+ The item will be searchable
+ The item will not be searchable
+
+
+
+
+ Edit Policy
+
+
+ Upload File(s)
+ File
+ Please enter the full path of the file on your computer corresponding to your item. If you click "Browse...", a new window will allow you to select the file from your computer.
+ The item must contain at least one file.
+ There was a problem uploading your file. Either the filename you entered was incorrect, there was a network problem which prevented the file from reaching us correctly, or you have attempted to upload a file format marked for internal system use only. Please try again.
+ The file has not been uploaded as it appears to contain a virus. Please contact the system administrator.
+ A technical problem was encountered whilst attempting to scan the file for viruses. Please contact the system administrator.
+ File Description
+ Optionally, provide a brief description of the file, for example "Main article", or "Experiment data readings".
+ Upload file & add another
+ Files Uploaded
+ Primary
+
+ File
+ Size
+ Description
+ Format
+
+ Unknown
+ unknown format
+ (Supported)
+ (Known)
+ (Unsupported)
+ Edit
+ File checksum:
+ Remove selected files
+
+
+
+ Upload File(s)
+ File
+ Please enter the full path of the file on your computer corresponding to your item. If you click "Browse...", a new window will allow you to select the file from your computer.
+ The item must contain at least one file.
+ There was a problem uploading your file. Either the filename you entered was incorrect, there was a network problem which prevented the file from reaching us correctly, or you have attempted to upload a file format marked for internal system use only. Please try again.
+ The file has not been uploaded as it appears to contain a virus. Please contact the system administrator.
+ A technical problem was encountered whilst attempting to scan the file for viruses. Please contact the system administrator.
+ File Description
+ Optionally, provide a brief description of the file, for example "Main article", or "Experiment data readings".
+ Upload file & add another
+ Files Uploaded
+ Primary
+
+ File
+ Size
+ Description
+ Format
+
+ Unknown
+ unknown format
+ (Supported)
+ (Known)
+ (Unsupported)
+ Edit
+ File checksum:
+ Remove selected files
+ Policies
+
+
+
+ Edit File
+ File
+ File Description
+ Optionally, provide a brief description of the contents; for example, "Main article", or "Experiment data readings".
+ Select the format of the file from the list below, for example "Adobe PDF" or "Microsoft Word." If the format is not in the list, please describe it in the input box below the list.
+ Detected Format
+ Selected Format
+ Format not in list
+ If the format is not in the above list, select "format not in list" above and describe the file's format in the box below.
+ Other Format
+ The application's name you used to create the file, and the version number (for example, "ACMESoft SuperApp version 1.5").
+
+
+ Bitstream Access
+
+
+
+ Review Submission
+ Yes
+ No
+ Correct one of these
+ Add or remove a file
+ Initial Questions
+ Describe Page {0}
+ Uploaded Files
+ Multiple titles
+ Published before
+ -
+ unknown
+ known
+ supported
+
+
+ An error occurred ... {0}
+ License Your Work
+ If you wish, you may add a Creative Commons License to your item. Creative Commons licenses govern what people who read your work may then do with it.
+ Choose a license
+ Proceed to Creative Commons website to select a license
+ License Type
+ Select or modify your license ...
+ No Creative Commons License
+ You must click Next to save your changes.
+
+
+ Distribution License
+ There is one last step: In order for DSpace to reproduce, translate and distribute your submission worldwide, you must agree to the following terms.
+ Grant the standard distribution license by selecting 'I Grant the License'; and then click 'Complete Submission'.
+ If you have questions regarding this license please contact the system administrators.
+ Distribution license
+ I Grant the License
+ You must grant this license to complete your submission. If you are unable to grant this license at this time you may save your work and return later or remove the submission by clicking the 'Save & Exit' button below.
+
+
+ Submission removed
+ Your submission has been cancelled, and the incomplete item removed from the system.
+ Go to the Submissions page
+
+
+ Submission complete
+ Your submission will now go through the review process for this collection. You will receive e-mail notification as soon as your submission has joined the collection, or if there is a problem with your submission. You may also check on the status of your submission by visiting your submissions page.
+ Go to the Submissions page
+ Submit another item
+
+
+ Actions you may perform on this task:
+ Assign this task to yourself.
+ Take task
+ Leave this task in the pool for another user to take.
+ Leave task
+ If you have reviewed the item and it is suitable for inclusion in the collection, select "Approve".
+ Approve item
+ Once you've edited the item, use this option to commit the item to the archive.
+ Commit to archive
+ If you have reviewed the item and found it is not suitable for inclusion in the collection, select "Reject". You will then be asked to enter a message indicating why the item is unsuitable, and whether the submitter should change something and resubmit.
+ Reject item
+ Select this option to change the item's metadata.
+ Edit metadata
+ Return the task to the pool so that another user may perform the task.
+ Return task to pool
+
+
+ Please enter your reason for rejecting the submission into the box below, indicating whether the submitter may fix a problem and resubmit.
+ Reason
+ The reason field is required
+ Reject item
+
+
+
+
+
+
+
+
+ The task was completed successfully.
+ The task exited unexpectedly or failed. For more information, please contact the site administrator or check your system logs.
+ The task was queued successfully.
+ The task could not be queued. An error occurred. For more information, please contact the site administrator or check your system logs.
+ The user was added successfully.
+ The user was edited successfully.
+ An email message has been sent to the user containing a token that may be used to choose a new password.
+ The user(s) were deleted successfully.
+ The user(s) listed were not deleted because there are constraints preventing them from being deleted, see the eperson detail page for more information.
+ The group was edited successfully.
+ The selected groups were deleted successfully.
+ New schema has been successfully created.
+ The schema(s) were successfully deleted.
+ Metadata field successfully added.
+ Metadata field successfully edited.
+ The field(s) were successfully moved.
+ The field(s) were successfully deleted.
+ The format was successfully saved.
+ The format(s) were successfully deleted.
+ The item's metadata was successfully updated.
+ New metadata was added.
+ The item has been withdrawn.
+ The item has been reinstated.
+ The item has been moved.
+ The selected destination collection could not be found.
+ The new bitstream was successfully uploaded.
+ Error while uploading file.
+ The bitstream has been updated.
+ The selected bitstreams have been deleted.
+ The items were successfully mapped.
+ The items have been unmapped.
+
+
+ Manage E-people
+
+
+
+ Context
+ Edit this item
+ Edit Collection
+ Item Mapper
+ Edit Community
+ Create Collection
+ Create Sub-community
+ Create Community
+ Export Item
+ Export Collection
+ Export Community
+ Export Metadata
+ Export Search Metadata
+
+
+ Administrative
+ Access Control
+ People
+ Groups
+ Authorizations
+ Registries
+ Metadata
+ Format
+ Content Administration
+ Items
+ Withdrawn Items
+ Private Items
+ Control Panel
+ Statistics
+ Batch Import (ZIP)
+ Import Metadata
+ Curation Tasks
+
+
+ My Exports
+
+
+
+ Export Archive
+ The item id provided is invalid.
+ The collection id provided is invalid.
+ The community id provided is invalid
+ The item requested was not found.
+ The collection requested was not found.
+ The community requested was not found.
+ The item was exported successfully. You should receive an e-mail when the archive is ready for download. You can also use the 'My Exports' link to view a list of your available archives.
+ The collection was exported successfully. You should receive an e-mail when the archive is ready for download. You can also use the 'My Exports' link to view a list of your available archives.
+ The community was exported successfully. You should receive an e-mail when the archive is ready for download. You can also use the 'My Exports' link to view a list of your available archives.
+ Available export archives for download:
+
+
+
+
+ Manage E-people
+ E-person management
+ Actions
+ Create a new E-Person
+ Click here to add a new E-Person.
+ Browse E-People
+ Click here to browse all E-People.
+ Search for E-People
+ E-People are searched by any partial match on email or name
+ Below is the list of E-People that matched your search query. Select the E-People you want to delete and click the delete button to continue or click on an E-Person's email or name to edit them.
+ Search results
+
+ ID
+ Name
+ Email
+ Delete E-People
+ Your search found no results...
+
+
+
+ Add E-Person
+ Add E-Person
+ Create a new user
+ That email address is in use by another E-Person. Emails must be unique.
+ New E-Person's information:
+ Email address must be unique
+ Email address is required
+ First name is required
+ Last name is required
+ Require Certificate
+ Can Log In
+ Create E-Person
+
+
+ Edit E-Person
+ Edit E-Person
+ Edit an E-Person
+ That email address is in use by another E-Person. Emails must be unique.
+ {0}'s information:
+ Email address must be unique
+ Email address is required
+ First name is required
+ Last name is required
+ Require Certificate
+ Can Log In
+ Reset Password
+ You may also permanently remove this E-Person from the system or reset his/her password. When resetting a password the user will be sent an email containing a special link they can follow to choose a new password.
+ Delete E-Person
+ Login as E-Person
+
+ This eperson is unable to be deleted because of the following constraint(s):
+ and
+ eperson has submitted one or more items
+ eperson has an active submission workflow
+ eperson has a workflow task awaiting their attention
+ eperson has an unidentified constraint within the system
+
+ Groups this E-Person is a member of:
+ (via group: {0})
+ none
+
+
+
+ Confirm E-Person Deletion
+ Confirm Delete
+ Confirm Deletion
+ The following E-People will be deleted:
+ Confirm Deletion
+ ID
+ Name
+ Email
+
+
+ Manage Groups
+
+
+ Manage Groups
+ Group management
+ Actions
+ Create a new group
+ Click here to add a new Group.
+ Browse groups
+ Click here to browse all Groups.
+ Search for groups
+ Groups are searched by any partial match on their name
+ Search results
+
+ ID
+ Name
+ Members
+ Community / Collection
+ View
+ Delete groups
+ Your search found no results...
+
+
+ Group Editor
+ Edit group
+ Group Editor: {0} (id: {1})
+ Group Editor: new group
+ Clear search
+ Member
+ Cycle
+ Pending
+ Note, pending changes are not saved until you click the save button.
+ Add
+ Remove
+ This group is associated with collection:
+ This group is associated with community:
+ Change group name:
+ This group is associated with a specific collection or community and the name cannot be modified.
+ Search members to add:
+ E-People...
+ Groups...
+ Your search found no results...
+ ID
+ Name
+ Email
+
+ ID
+ Name
+ Members
+ Collection
+
+ view
+ Members
+ ID
+ Name
+ Email
+
+ group: {0}
+ This group has no members.
+ [pending]
+ Remove members
+ Remove members
+
+
+ Confirm Group Deletion
+ Confirm Delete
+ Confirm Deletion
+ The following Groups will be deleted:
+ ID
+ Name
+ E-People
+ Groups
+
+
+ Format registry
+ Metadata registry
+
+
+ Delete Bitstream Formats
+ Delete bitstream formats
+ Confirm Deletion
+ Are you sure the format should be deleted? Any existing bitstreams of this format will be reverted to the unknown bitstream format.
+ ID
+ MIME Type
+ Name
+
+
+ Delete Fields
+ Delete fields
+ Confirm Deletion
+ Are you absolutely sure you want to delete these fields? If any items contain metadata for these fields, the field(s) cannot be deleted. You must ensure that no items use these fields.
+ WARNING:
+ This will cause an error if any item contains metadata for these fields.
+ ID
+ Name
+ Scope Note
+
+
+ Delete Schema
+ Delete schema
+ Confirm Deletion
+ Are you absolutely sure you want to delete this schema? If any items contain metadata for fields contained within this schema, the schema cannot be deleted. You must ensure that no items contain metadata in this schema.
+ WARNING:
+ This will cause an error if any item contains metadata within this schema.
+ ID
+ Namespace
+ Name
+
+
+ Bitstream Format
+ Bitstream format
+ New bitstream format
+ Bitstream format: {0}
+ Provide descriptive metadata about the bitstream format below. While format names must be unique, MIME types do not need to be. You may have separate format registry entries for different versions of Microsoft Word, even though the MIME type will be the same for each of them.
+ Name
+ A unique name for this format, (e.g. Microsoft Word XP or Microsoft Word 2000)
+ The name field is required.
+ MIME Type
+ The MIME type associated with this format, does not have to be unique.
+ Description
+ Support level
+ The level of support your institution pledges for this format.
+ Unknown
+ Known
+ Supported
+ Internal
+ Formats marked as internal are are hidden from the user, and used for administrative purposes.
+ File extensions
+ Extensions are file extensions that are used to automatically identify the format of uploaded files. You can enter several extensions for each format.
+
+
+ Metadata Schema
+ Metadata schema
+ Metadata Schema: "{0}"
+ This is the metadata schema for "{0}". You may add new or update existing metadata fields to this schema. Fields may also be selected for deletion or be moved to another schema.
+ Schema metadata fields
+
+ ID
+ Field
+ Scope Note
+ No metadata fields
+ Delete fields
+ Move fields to another schema
+ Add new metadata field
+ Field Name
+ Scope Note
+ Additional notes about this metadata field.
+ Add new metadata field
+ Update Field: {0}
+ Update field
+ Error
+ The field name is already in use, all element and qualifiers must be unique.
+ The field's element is required.
+ The field's element contains a bad character. The element may NOT contain: periods, underscores, or spaces.
+ The field's element is to long, it must be less than 32 characters.
+ The field's qualifier is to long, it must be less than 32 characters.
+ The field's qualifier contains a bad character. The qualifier may NOT contain: periods, underscores, or spaces.
+
+
+ Format Registry
+ Bitstream format registry
+ This list of bitstream formats provides information about known formats and their support level. You can edit or add new bitstream formats with this tool. Formats marked as 'internal' are hidden from the user, and are used for administrative purposes.
+ Add a new bitstream format
+
+ ID
+ Name
+ MIME Type
+ Support Level
+ (internal)
+ Unknown
+ Known
+ Support
+ Delete formats
+
+
+ Metadata Registry
+ Metadata registry
+ The metadata registry maintains a list of all metadata fields available in the repository. These fields may be divided amongst multiple schemas. However, DSpace requires the qualified Dublin Core schema. You may extend the Dublin Core schema with additional fields or add new schemas to the registry.
+
+ ID
+ Namespace
+ Name
+ Delete schema
+ Add a new schema
+ Namespace
+ Namespace should be an established URI location for the new schema.
+ This field is required.
+ Name
+ Shorthand notation for the schema. This will be used to prefix a field's name (e.g. dc.element.qualifier). The name must be less than 32 characters and cannot include spaces, periods or underscores.
+ This field is required and must be less than 32 characters and cannot contain any spaces, periods, or underscores.
+ Add new schema
+
+
+ Move Fields
+ Move fields
+ Move metadata fields
+ Select a target schema where these fields will be moved. If the target schema already has fields with identical names the fields will not be moved.
+ ID
+ Name
+ Scope Note
+ Move to schema:
+ Move fields
+
+
+
+
+
+ Authorization
+ Policy List
+
+
+ Administer Authorization Policies
+ Administer Authorization Policies
+ Item authorizations
+ The ID you supplied did not resolve to an item
+ Look up an item
+ Items may be found by handle or internal ID
+ Find
+ Advanced authorizations tool
+ Click here to go to the item wildcard policy admin tool
+ Community/collection authorizations
+ Click on a community or collection to edit its policies.
+
+
+
+
+ Edit Policies
+ Policies List
+ Policies for Collection "{0}" ({1},ID: {2})
+ Policies for Community "{0}" ({1},ID: {2})
+ Click here to add a new policy.
+ Add
+ ID
+ Name
+ Action
+ Group
+ Start Date
+ End Date
+ Delete Selected
+ Edit
+
+
+
+
+ Edit Item's Policies
+ Policies List
+ Policies for Item {0} (ID={1})
+ With this editor you can view and alter the policies of an item, plus alter policies of individual item components: bundles and bitstreams. Briefly, an item is a container of bundles, and bundles are containers of bitstreams. Containers usually have ADD/REMOVE/READ/WRITE policies, while bitstreams only have READ/WRITE policies.
+ You will notice an extra bundle and bitstream for each item containing the license text for the item.
+ Item Policies
+ Policies for Bundle {0} ({1})
+ Bitstream {0} ({1})
+ Add a new Item policy
+ Add a new Bundle policy
+ Add a new Bitstream policy
+
+ No policies found for this object.
+
+
+
+ Edit Policy
+ Edit Policy
+ Create new policy for {0} {1}
+ Edit policy {0} for {1} {2}
+ No group selected
+ No action selected
+
+ ID
+ Name
+ Actions for this resource
+
+ Set
+ current
+ Search Results
+ Select a group
+ Search for a group
+ Search
+ Select the action
+
+ Name
+ Description
+ Start Date
+ End Date
+ Invalid date
+ An identical policy for this group and this action is already in place.
+ Start date is greater than end date
+ Accepted format: yyyy, yyyy-mm, yyyy-mm-dd
+
+
+ Advanced Policy Manager
+ Advanced Authorizations
+ Advanced Policy Manager
+ Allows wildcard additions to and clearing of policies for items or bitstreams within specific collection(s). WARNING - removing READ permissions from items will make them not viewable!
+ For all of the selected groups...
+ ...grant the ability to perform the following action...
+ ...for all following object types...
+ ...across the following collections.
+ Group
+ Action
+ Content Type
+ Collection
+ Add policies
+ Clear policies
+ Accepted format: yyyy, yyyy-mm, yyyy-mm-dd
+
+ Name
+ Description
+ Start Date
+ End Date
+ Invalid date
+ Start date is greater than end date
+ Select at least a group
+ Select at least a collection
+
+
+ Confirm Policy Deletion
+ Confirm Delete
+ Confirm Deletion
+ The following Policies will be removed:
+ ID
+ Action
+ Group
+
+
+
+
+ Select a collection
+ Collection
+ Select the collection you wish to submit an item to.
+ Select a collection...
+
+ Import Batch Load (ZIP)
+ Import Batch Load (ZIP)
+ Import Batch Load (ZIP)
+ changes
+ No changes were detected
+ New item
+ Upload successful
+ Upload failed or no file selected
+ Unknown metadata schema in heading
+ Unknown metadata element in heading
+ Import successful
+ Import failed
+ No Destination Collection Specified
+
+
+ Upload SimpleArchiveFormat ZIP
+
+
+ Successfully processed
+ Changes applied to item
+ Added:
+ Removed:
+
+
+ Add:
+ Remove:
+
+
+ Items
+ Edit Template Item for Collection: {0}
+ Edit Item
+ Item Status
+ Item Bitstreams
+ Item Metadata
+ View Item
+ Curate
+ Queue
+
+
+ Upload Bitstream
+ Upload bitstream
+ Upload a new bitstream
+ Bundle
+ Content Files (default)
+ Metadata Files
+ Thumbnails
+ Licenses
+ Creative Commons Licenses
+ File
+ Please enter the name of the file on your computer corresponding to your item. If you click "Browse...", a new window will appear in which you can locate and select the file from your computer.
+ Description
+ Optionally, provide a brief description of the file, for example "Main article", or "Experiment data readings".
+ Upload
+ You need the ADD & WRITE privilege on at least one bundle to be able to upload new bitstreams.
+
+
+ Confirm Deletion
+ Confirm deletion
+ Confirm Deletion(s)
+ Are you sure you want to delete these bitstreams:
+ Name
+ Description
+ Format
+
+
+ Confirm
+ Confirm
+ Modify item: {0}
+ Are you sure this item should be completely deleted? Caution: At present, no tombstone would be left.
+ Are you sure this item should be withdrawn from the archive?
+ Are you sure this item should be reinstated to the archive?
+ Field
+ Value
+ Language
+ Withdraw
+ Reinstate
+ Make it Private
+ Make it Public
+
+
+ Move
+ Move
+ Move item: {0}
+ Collection
+ Select the collection you wish to move this item to.
+ Select a collection...
+ Move
+ Inherit policies
+ Inherit the default policies of the destination collection
+
+
+ Edit Bitstream
+ Edit bitstream
+ Edit Bitstream
+ File
+ Primary bitstream
+ yes
+ no
+ Description
+ Optionally, provide a brief description of the file, for example "Main article", or "Experiment data readings"."
+ Select the format of the file from the list below, for example "Adobe PDF" or "Microsoft Word", OR if the format is not in the list, please describe it in the box below.
+ Selected Format
+ Format not in list
+ If the format is not in the above list, select "format not in list" above and describe it in the field below.
+ Other Format
+ The application you used to create the file, and the version number (for example, "ACMESoft SuperApp version 1.5").
+ Filename
+ Change the filename for this bitstream. Note that this will change the display bitstream URL, but old links will still resolve as long as the sequence ID does not change.
+
+
+ Item Bitstreams
+ Item bitstreams
+ Bitstreams
+
+ Name
+ Description
+ Format
+ View
+ Order
+
+ Bundle: {0}
+ (primary)
+ view
+ Upload a new bitstream
+ Delete bitstreams
+ Update bitstream order
+ You need the ADD & WRITE privilege on the item and bundles to be able to upload new bitstreams.
+ Only System Administrators can delete bitstreams / files.
+ Previous:
+ Move up
+ Move down
+
+
+ Item Metadata
+ Item metadata
+ Add new metadata
+ Name
+ Value
+ Language
+ Add new metadata
+ PLEASE NOTE: These changes are not validated in any way. You are responsible for entering the data in the correct format. If you are not sure what the format is, please do NOT make changes.
+ Metadata
+ Remove
+ Name
+ Value
+ Language
+
+
+ Item Status
+ Item status
+ Welcome to the item management page. From here you can withdraw, reinstate, move or delete the item. You may also update or add new metadata / bitstreams on the other tabs.
+ Item Internal ID
+ Handle
+ Last Modified
+ In Collections
+ Item Page
+ Edit item's authorization policies
+ Withdraw item from the repository
+ Reinstate item into the repository
+ Move item to another collection
+ Completely expunge item
+ Authorizations...
+ Withdraw...
+ Reinstate...
+ Move...
+ Permanently delete
+ n/a
+ (system administrators only)
+ (collection administrators only)
+ (you are not allowed to perform this action)
+ Make item private
+ Make item public
+ Make it private...
+ Make it public...
+
+
+
+
+ View Item
+ View Item
+
+ Curate Item: {0}
+ Curate Item
+ Curator
+ Task
+
+
+ Find Item
+ Find Item
+ Internal Item ID/Item Handle
+ Unable to resolve identifier.
+ Find
+
+
+ Import Metadata
+ Import Metadata
+ Import Metadata
+ changes
+ No changes were detected
+ New item
+ Upload successful
+ Upload failed
+ Unknown metadata schema in heading
+ Unknown metadata element in heading
+ Import successful
+ Import failed
+ Number of changes exceeds maximum allowed. Limit changes or alter bulkedit.gui-item-limit in dspace.cfg
+
+
+ Upload CSV
+
+
+ Successfully processed
+ Changes applied to item
+ Added:
+ Removed:
+ Added to owning collection
+ Removed from owning collection
+ Mapped to collection
+ Unmapped from collection
+ Item Expunged
+ Item Withdrawn
+ Item Reinstated
+
+
+ Add:
+ Remove:
+ Add to owning collection
+ Remove from owning collection
+ Map to collection
+ Un-map from collection
+ Changes pending for item
+ Apply changes
+ Pending changes are listed below for review
+ Expunge Item
+ Withdraw Item
+ Reinstate Item
+
+
+ Item mapper
+
+
+ Item Mapper
+ Item Mapper - Map Items from Other Collections
+ Collection: "{0}"
+ This is the item mapper tool that allows collection administrators to map items from other collections into this collection. You can search for items from other collections and map them, or browse the list of currently mapped items.
+ Statistics
+ {0} of {1} items in this collection are mapped in from other collections
+ Search
+ Search Items
+ Browse mapped items
+ (Requires the collection ADD privilege)
+
+
+ Search Items
+ Search items
+ Search items matching: "{0}"
+ Map selected items
+
+ Collection
+ Author
+ Title
+
+
+ Browse Mapped Items
+ Browse mapped items
+ Browsing mapped items
+ Unmap selected items
+
+ Collection
+ Author
+ Title
+ You need the REMOVE privilege on this collection to be able to unmap items from this collection.
+
+
+ Collections
+ Edit Metadata
+ Assign Roles
+ Curate
+ Queue
+
+
+ Edit Collection Roles
+ Roles
+ Edit Collection: {0}
+ none
+ Create...
+ Restrict...
+ Collection administrators decide who can submit items to the collection, edit item metadata (after submission), and add (map) existing items from other collections to this collection (subject to authorization for that collection).
+ The people responsible for this step are able to accept or reject incoming submissions. However, they are not able to edit the submission's metadata.
+ The people responsible for this step are able to edit the metadata of incoming submissions, and then accept or reject them.
+ The people responsible for this step are able to edit the metadata of incoming submissions, but will not be able to reject them.
+ The E-People and Groups that have permission to submit new items to this collection.
+ E-People and Groups that can read new items submitted to this collection. Changes to this role are not retroactive. Existing items in the system will still be viewable by those who had read access at the time of their addition.
+ This collection uses custom default access settings.
+ Default read for incoming items and bitstreams is currently set to Anonymous.
+ Edit authorization policies directly.
+ Role
+ Associated group
+
+ Administrators
+ Workflow steps
+ Accept/Reject Step
+ Accept/Reject/Edit Metadata Step
+ Edit Metadata Step
+ Submitters
+ Default read access
+ (system administrators only)
+ (Repository level group, system administrators only)
+ (you are not allowed to configure this)
+
+
+ Curate Collection: {0}
+ Curate Collection
+ Curator
+ Task
+
+
+ Confirm Deletion
+ Confirm
+ Confirm deletion for collection {0}
+ Are you sure collection {0} should be deleted? This will delete:
+ Any items and incomplete submissions in this collection that aren't contained in other collections
+ The contents of those items
+ All associated authorization policies
+
+
+ Confirm role deletion
+ Confirm
+ Confirm deletion for role {0}
+ Are you sure you want to delete this role? Deleting this group will give READ access to all users for all items submitted to this collection from now on. Please note that this change is not retroactive. Existing items in the system will still be restricted to the members defined by the role you are about to delete.
+ Are you sure you want to delete this role? All changes and customizations made to the {0} group will be lost and would have to be created anew.
+
+
+ Edit Collection Metadata
+ Metadata
+ Edit Collection: {0}
+ Name
+ Short Description
+ Introductory text (HTML)
+ Copyright text (HTML)
+ News (HTML)
+ License
+ Provenance
+ Upload new logo
+ Current logo
+ Item template
+ Create...
+ Edit...
+ Remove logo
+ Delete collection
+ Save updates
+ (system administrators only)
+
+
+ Create Collection
+ Create Collection
+ Enter Metadata for a New Collection of {0}
+ Create
+
+
+ Collection Harvesting Settings
+ Harvesting
+ Content Source
+ Content source
+ This is a standard DSpace collection
+ This collection harvests its content from an external source
+ Save
+
+
+ Harvested Collection Location
+ Harvesting Options
+ OAI Provider
+ OAI Set id
+ Metadata Format
+ The url of the target repository's OAI provider service
+ You must provide a set id of the target collection.
+ The persistent identifier used by the OAI provider to designate the target collection
+ You must provide a set id of the target collection.
+ Content being harvested
+ Harvest metadata only.
+ Harvest metadata and references to bitstreams (requires ORE support).
+ Harvest metadata and bitstreams (requires ORE support).
+ Test Settings
+
+
+ Harvested Collection Location
+ OAI Provider
+ OAI Set id
+ Metadata format
+ Content being harvested
+ Last Harvest Result
+ This collection has not yet been harvested.
+ Current harvest status
+ Collection ready for harvest
+ Collection is currently being harvested
+ Collection is in queue for harvest
+ OAI error occurred during last harvest
+ Unexpected error occurred during last harvest
+ Harvest metadata only.
+ Harvest metadata and references to bitstreams.
+ Harvest metadata and bitstreams (full replication).
+ Change Settings
+ Import Now
+ Reset and Reimport Collection
+
+ Harvesting
+ Harvest Scheduler Controls
+ Status
+ (refresh)
+ Actions
+ Start Harvester
+ Reset Harvest Status
+ Resume
+ Pause
+ Stop
+ Collections set up for harvesting
+ Active harvests
+ Queued harvests
+ OAI errors
+ Internal errors
+ Generator Settings
+ OAI-PMH URL
+ ORE source
+ Harvester Settings
+
+
+ Communities
+ Edit Metadata
+ Assign Roles
+ Curate
+ Queue
+
+
+ Edit Community Roles
+ Roles
+ Edit Community: {0}
+ none
+ Create...
+ Community administrators can create sub-communities or collections, and manage or assign management for those sub-communities or collections. In addition, they decide who can submit items to any sub-collections, edit item metadata (after submission), and add (map) existing items from other collections (subject to authorization).
+ This community uses custom default access settings.
+ Default read for incoming items and bitstreams is currently set to Anonymous.
+ Edit authorization policies directly.
+ Role
+ Associated group
+
+ Administrators
+ (system administrators only)
+
+
+ Curate Community: {0}
+ Curate Community
+ Curator
+ Task
+
+
+ Confirm Deletion
+ Confirm
+ Confirm deletion for community {0}
+ Are you sure community {0} should be deleted? This will delete:
+ Any collections in the community that are not contained in other communities
+ Any items and incomplete submissions in this community that aren't contained in other communities
+ The contents of those items
+ All associated authorization policies
+
+
+ Confirm role deletion
+ Confirm
+ Confirm deletion for role {0}
+ Are you sure you want to delete this role? All changes and customizations made to the {0} group will be lost and would have to be created anew.
+
+
+ Edit Community Metadata
+ Metadata
+ Edit Metadata for Community {0}
+ Edit authorization policies
+ Name
+ Short Description
+ Introductory text (HTML)
+ Copyright text (HTML)
+ News (HTML)
+ Upload new logo
+ Current logo
+ Remove logo
+ Delete community
+
+
+ Create Community
+ Create Community
+ Enter Metadata for a New Sub-Community of {0}
+ Edit Metadata for a New Top-Level Community
+ Create
+
+
+
+ Control Panel
+ Control panel
+ Control Panel
+ Java Information
+ DSpace Configuration
+ System-wide Alerts
+ {0} h
+ {0} m
+ {0} s
+ Java and Operating System
+ Java Runtime Environment Version
+ Java Runtime Environment Vendor
+ Operating System Name
+ Operating System Architecture
+ Operating System Version
+ Runtime statistics
+ Available processors
+ Maximum memory
+ Allocated memory
+ Used memory
+ Free memory
+ Cocoon Info
+ Cocoon Version
+ Cocoon Cache Directory
+ Cocoon Work Directory
+ Main Cache Size ({0})
+ (Clear Cache Immediately)
+ Persistent Cache Size ({0})
+ Transient Cache Size ({0})
+ DSpace Settings
+ DSpace Version
+ DSpace Installation Directory
+ DSpace Base URL
+ DSpace Host Name
+ Name of the Site
+ Database Name
+ Database URL
+ JDBC Driver
+ Maximum Number of DB Connections in Pool
+ Max DB Wait Time
+ Max Idle Connections
+ SMTP Mail Server
+ From E-mail Address
+ Feedback Recipient
+ General Site Administration E-mail
+ System-wide Alerts
+ Warning for load balanced systems: System-wide alerts are only effective for the node on which it is activated. You need to ensure that each node in the set receives the activate alert command.
+ Alert message
+ The system will be going down for regular maintenance. Please save your work and logout.
+ Count down
+ No count down timer
+ 5 minutes
+ 15 minutes
+ 30 minutes
+ 1 hour
+ Keep the current count down timer
+ Manage session
+ Continue to allow authenticated sessions
+ Restrict authentication but maintain current sessions
+ Restrict authentication and kill current sessions
+ Note: Site administrators are exempt from session management.
+ Activate
+ Deactivate
+ Current Activity ({0} pages maximum)
+ STOP recording anonymous activity.
+ START recording anonymous activity.
+ STOP recording bot activity.
+ START recording bot activity.
+ Time Stamp
+ User
+ IP address
+ URL Page
+ User-Agent
+ Anonymous {0}
+ No page views have been recorded.
+ Detail
+ show/hide
+ Host: {0}
+ Principal user: {0}
+ Headers: {0}
+ Cookies: {0}
+
+ Use the tabs above to select the information to display
+
+ Java Information
+ Configuration
+ SystemWide Alerts
+ Harvesting
+ Current Activity
+
+
+ In {0} minutes:
+
+
+ Not Authorized
+ Not authorized
+ Insufficient privileges
+ Your account has insufficient privileges to perform the requested action. If you feel this is an error or have questions about your privileges, please contact the site's
+ system administrators
+ .
+ Login as another user
+
+
+ System Curation Tasks
+ Curation Tasks
+ Handle of DSpace Object
+ Hint: Enter [your-handle-prefix]/0 to run a task across entire site (not all tasks may support this capability)
+ Task
+
+ Choose from the following groups
+
+
+
+ Statistics
+ Search Statistics
+ Search Statistics
+ Search Statistics for {0}
+ There was an error while generating the search statistics, please try again later.
+ No search statistics available for the selected period.
+ Workflow Statistics
+ Total Visits
+ Total Visits Per Month
+ Views
+ Top country views
+ Top cities views
+ File Visits
+ Statistics
+ View Usage Statistics
+ View Usage Statistics
+ View Search Statistics
+ View Workflow Statistics
+ Statistics
+ Search Statistics
+ Workflow Statistics
+ No workflow statistics available for the selected period.
+ There was an error while generating the workflow statistics, please try again later.
+ Workflow Statistics
+ Workflow Statistics for {0}
+
+
+ Top Search Terms
+ Total
+ Previous month
+ Previous 6 months
+ Previous year
+ Overall
+
+
+ Search Term
+ Searches
+ % of Total
+ Pageviews / Search
+ Step
+ Performed
+ Average
+ Accept/Reject Step Pool
+ Accept/Reject Step
+ Accept/Reject/Edit Metadata Step Pool
+ Accept/Reject/Edit Metadata Step
+ Edit Metadata Step Pool
+ Edit Metadata Step
+ Accept/Reject Step Pool
+ Accept/Reject Step
+ Accept/Reject/Edit Metadata Step Pool
+ Accept/Reject/Edit Metadata Step
+ Edit Metadata Step Pool
+ Edit Metadata Step
+ Score Review Pool
+ Score Review
+ Score Review Evaluation
+ Score Review Evaluation Configuration
+ Single User Review Pool
+ Single User Auto Assign Action
+ Single User Review Action
+
+
+
+
+ Statistics
+ View Google Analytics Statistics
+ Statistics
+ Google Analytics Statistics
+
+ Start date
+ End date
+ Refresh
+
+ Page Views
+ File Downloads
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This website is using Manakin, a new front end for DSpace created by Texas A&M University
+ Libraries. The interface can be extensively modified through Manakin Aspects and XSL based Themes.
+ For more information visit
+ http://di.tamu.edu and
+ http://dspace.org
+
+
+ Contact Us
+ Send Feedback
+
+ DSpace Repository
+
+ Profile:
+ Logout
+ Login
+
+ Search DSpace
+ Advanced Search
+ This Community
+ This Collection
+
+ Previous Page
+ Now showing items {0}-{1} of {2}
+ Next Page
+
+ Creative Commons
+ Original License
+
+
+
+
+
+ No preview available
+ Untitled
+ Unknown author
+
+ This is not a DSpace object conformant to the METS 1.0 profile and as such cannot be
+ rendered effectively. You can override either the template that handles the general
+ case in dri2xhtml to perform the needed function, or create your template to match
+ whatever profile you use.
+
+
+ Preview
+ Title
+ Author
+ Abstract
+ Description
+ URI
+ Date
+ Publisher
+ Subject
+ Persistent Link
+ SSRN Link
+
+ Files in this item
+ Files
+ Name
+ Size
+ Format
+ View
+ Description
+ View/Open
+ There are no files associated with this item.
+
+ bytes
+ Kb
+ Mb
+ Gb
+
+ The following license files are associated with this item:
+ Except where otherwise noted, this item's license is described as
+
+
+ The summaryView of a collection is not currently used or implemented. This can be fixed
+ by overriding the dri2xhtml's template named collectionSummaryView.
+
+
+ The summaryView of a community is not currently used or implemented. This can be fixed
+ by overriding the dri2xhtml's template named communitySummaryView.
+
+
+ The collection's logo
+ The community's logo
+ No logo
+ News
+
+
+
+ Qualified Dublin Core (QDC) is not applicable to DSpace communities and collections at
+ this time. When using QDC, you should use the QDC crosswalk for DSpace items and either
+ DIM or MODS for processing of communities and collections.
+
+
+ Dublin Core elements
+ Dublin Core terms
+
+ Blocked
+
+
+
+ Preview
+ Date
+ Title
+ Author
+
+
+
+
+
+
+
+ MARC record
+ Mathematica
+ Microsoft Word
+ Unknown
+ PDF
+ Postscript
+ SGML
+ Microsoft Excel
+ Microsoft PowerPoint
+ Microsoft Project
+ OpenOffice Base
+ OpenOffice Math
+ OpenOffice Draw
+ OpenOffice Impress
+ OpenOffice Calc
+ OpenOffice Writer
+ Microsoft PowerPoint 2007
+ Microsoft Excel 2007
+ Microsoft Word 2007
+ OpenOffice Calc (1.x)
+ OpenOffice Draw (1.x)
+ OpenOffice Impress (1.x)
+ OpenOffice Writer (1.x)
+ Microsoft Visio
+ WordPerfect
+ TeX DVI
+ FileMaker Pro
+ Java applet
+ LaTeX
+ Photoshop
+ TeX
+
+
+ Basic Audio
+ FLAC Audio
+ AAC audio
+ AAC audio
+ mp3 audio
+ AIFF audio
+ MPEG Audio
+ WMA Audio
+ WMV Audio
+ Ogg Vorbis
+ RealAudio
+ WAV audio
+
+
+ GIF image
+ JPEG 2000 image
+ JPEG image
+ PNG image
+ TIFF image
+ BMP image
+ Photo CD
+
+
+ CSS file
+ CSV file
+ HTML
+ Javascript
+ Text file
+ RTF file
+ XML
+
+
+ AVI video
+ Motion JPEG 2000
+ MPEG video
+ MPEG-2 video
+ MPEG-4 video
+ QuickTime video
+
+
+ Confidence was never recorded for this value
+ No reasonable confidence value was returned from the authority
+ The authority recommends this submission be rejected
+ The authority encountered an internal failure
+ There are no matching answers in the authority
+ There are multiple matching authority values of equal validity
+ Value is singular and valid but has not been seen and accepted by a human so it is still uncertain
+ This authority value has been confirmed as accurate by an interactive user
+
+ Unlock the authority key value for manual editing, or toggle it locked again
+
+
+
+ DSpace Value Lookup
+ Accept
+ Add
+ Cancel
+ See More Results
+
+ Results @1@ to @2@ of @3@ for "@4@"
+ Failed to load choice data:
+ Lookup
+
+
+ Name of Publisher
+ Look up Publisher
+
+ Non-authority value: @1@
+
+
+ Name in "Last, First" format
+ Last name, e.g. "Smith"
+ First name(s) e.g. "Fred"
+ LC Name Authority author lookup
+ Local value "@1@" (not in Naming Authority)
+
+
+ DSpace Mobile
+ Search ALL
+ Browse ALL by
+ Date
+ Author
+ Title
+ Subject
+ Related
+ Items in Google Scholar
+ Download
+
+
+
+ Create version of this item
+ Show version history
+
+ Create Version
+ Version
+ Create new version of item: {0}
+ Version
+ Update Version
+ Reason for creating new version
+
+ Update Version
+ Version
+ Update version of item: {0}
+ Version
+ Update Version
+ Summary
+
+
+ Confirm Deletion
+ Confirm deletion
+ Confirm Deletion(s)
+ Are you sure you want to delete these versions.
+ PLEASE NOTE: That by deleting these versions, the associated items will no longer be accessible.
+ Version
+ Item
+ Editor
+ Date
+ Summary
+
+
+ Restore Version
+ Restore Version
+ Restore Version
+ Are you sure you want to restore this version:
+ Version
+ Editor
+ Date
+ Summary
+ Restore
+
+ Version History
+ Version
+ Item
+ Editor
+ Date
+ Summary
+ Actions
+ Restore
+ Update
+ *Selected version
+ Delete Versions
+ Return
+ (collection administrators only)
+
+ Notice
+ This is not the latest version of this item. The latest version can be found at:
+ Notice
+ A more recent version of this item is in the Workflow.
+
+ To check the copyright and self-archiving policies per journal or publisher, please consult SHERPA/RoMEO.
+ Publisher information
+ Journal:
+ Publisher information:
+ RoMEO Colour:
+ (More info)
+ green
+ blue
+ white
+ yellow
+ gray
+
+
+
+ Metadata
+ Collections
+
+ Reset
+ Add New Filter
+ Show Advanced Filters
+ Hide Advanced Filters
+
+
+ Add
+ Remove
+ ERROR: Input field with "suggest" (autocomplete) choice behavior is not implemented for Composite (e.g. "name") fields.
+ ERROR: Input field with "suggest" (autocomplete) choice behavior is not implemented for Composite (e.g. "name") fields.
+ Add
+ Remove
+
+ About This Repository
+ Toggle navigation
+
+ About This Repository
+ To add your own content to this page, edit webapps/xmlui/themes/Mirage2/lib/xsl/core/page-structure.xsl and add your own content to the title, trail, and body. If you wish to add additional pages, you will need to create an additional xsl:when block and match the request-uri to whatever page you are adding. Currently, static pages created through altering XSL are only available under the URI prefix of page/.
+
+ feed
+
+ Loading...
+
+ Thumbnail
+
+
+
+ Search
+ Publication Search
+ Fill in a publication ID, DOI, Title or Author and then press "Search". A list of all matching publications will be shown to you to select in order to proceed with the submission process.
+ Imported publication Record
+ Lookup
+
+
+
diff --git a/static/google5c25729557b9c7b8.html b/static/google5c25729557b9c7b8.html
new file mode 100644
index 000000000..d59ae787d
--- /dev/null
+++ b/static/google5c25729557b9c7b8.html
@@ -0,0 +1 @@
+google-site-verification: google5c25729557b9c7b8.html
\ No newline at end of file
diff --git a/static/js/vocabulary-support.js.deliv b/static/js/vocabulary-support.js.deliv
new file mode 100644
index 000000000..062fd724b
--- /dev/null
+++ b/static/js/vocabulary-support.js.deliv
@@ -0,0 +1,196 @@
+/*
+ * The contents of this file are subject to the license and copyright
+ * detailed in the LICENSE and NOTICE files at the root of the source
+ * tree and available online at
+ *
+ * http://www.dspace.org/license/
+ */
+(function($) {
+ $(document).ready(function(){
+ //Find any controlled vocabulary urls this page might contain
+ var vocabularyUrls = $('a[href^="vocabulary:"]');
+ vocabularyUrls.click(function(index){
+ var $link = $(this);
+ var vocabularyJSONUrl = $link.attr('href').replace('vocabulary:', '');
+ //Retrieve the basic url, we will need this to add images !
+ var basicUrl = vocabularyJSONUrl.substr(0, vocabularyJSONUrl.indexOf('/JSON/controlled-vocabulary'));
+ var parameters = vocabularyJSONUrl.slice(vocabularyJSONUrl.indexOf('?') + 1, vocabularyJSONUrl.length).split('&');
+
+ //Read the input field name & the vocabulary identifier from the url
+ var inputFieldName;
+ var vocabularyIdentifier;
+ for(var i = 0; i < parameters.length; i++){
+ var parameter = parameters[i].split('=')[0];
+ var value = parameters[i].split('=')[1];
+
+ if(parameter == 'vocabularyIdentifier'){
+ vocabularyIdentifier = value;
+ }else
+ if(parameter == 'metadataFieldName'){
+ inputFieldName = value;
+ }
+ }
+
+ //Check if we already have a (hidden) dialog
+ var vocabularyDialog = $('div#aspect_submission_ControlledVocabularyTransformer_div_vocabulary_dialog_' + vocabularyIdentifier);
+ if(0 < vocabularyDialog.length){
+ //Open the dialog
+ vocabularyDialog.find('input[type="hidden"][name="metadataFieldName"]').val(inputFieldName);
+ vocabularyDialog.dialog( 'open' );
+ }else{
+ //No dialog window found, create a new one by requesting our data by json
+ $.get(basicUrl + '/controlled-vocabulary-dialog',
+ {
+ vocabularyIdentifier: vocabularyIdentifier,
+ metadataFieldName: inputFieldName
+ },
+ function(resultingHtml){
+ //retrieve the dialog box
+ var $Result = $('
').html(resultingHtml);
+ var mainDialogDivision = $Result.find('div[id^=aspect_submission_ControlledVocabularyTransformer_div_vocabulary_dialog_]');
+ $('body').append($(mainDialogDivision[0]));
+ var vocabularyDialog = $('div#aspect_submission_ControlledVocabularyTransformer_div_vocabulary_dialog_' + vocabularyIdentifier);
+ vocabularyDialog.dialog({
+ autoOpen: true,
+ height: 450,
+ width: 650,
+ modal: true,
+ title: $Result.find('title').html()
+ });
+
+ //The success function, retrieve the JSON
+ $.ajax({
+ url: vocabularyJSONUrl,
+ dataType: 'json',
+ data: {},
+ success: function(response) {
+ if(response == null){
+ hideLoadingMsg();
+ showErrorMsg();
+ }
+
+ var mainList = document.createElement('ul');
+ mainList.setAttribute('class', 'ds-simple-list vocabulary');
+ mainList.setAttribute('id', 'vocabulary-list');
+ createVocabularyNode(mainList, response, basicUrl, true);
+
+ //Hide the loading message !
+ hideLoadingMsg();
+
+ mainDialogDivision[0].appendChild(mainList);
+
+ //Initialize all the vocabulary box javascript actions
+ vocabularyDialog.find('div[id^="node_"]').click(function(){
+ var $this = $(this);
+ var subNodes = $('ul#' + $this.attr('id') + '_sub');
+ if(subNodes.is(':visible')){
+ subNodes.hide();
+ subNodes.find('li:first-child').hide();
+ }else{
+ subNodes.show();
+ subNodes.find('li:first-child').show();
+ }
+ //Flip the closed/open class
+ if($this.hasClass('vocabulary-open')){
+ $this.removeClass('vocabulary-open');
+ $this.addClass('vocabulary-closed');
+ }else
+ if($this.hasClass('vocabulary-closed')){
+ $this.removeClass('vocabulary-closed');
+ $this.addClass('vocabulary-open');
+ }
+ });
+
+ //Each time we click a url ensure that our field is added in the input box !
+ vocabularyDialog.find('a').click(function(){
+ var $this = $(this);
+ var inputFieldName = vocabularyDialog.find('input[type="hidden"][name="metadataFieldName"]').val();
+ $('input[name="' + inputFieldName + '"]').val($this.attr('href'));
+
+ //Close the current dialog
+ vocabularyDialog.dialog("close");
+ return false;
+ });
+
+ vocabularyDialog.find('input[name="filter_button"]').click(function(){
+ var $this = $(this);
+ var filterValue = $this.parent().find('input[name="filter"]').val();
+ var displayElements;
+ if(0 < filterValue.length){
+ //Perform the filtering
+ //Start by hiding all the urls in our box
+ var vocabularyList = vocabularyDialog.find('ul#vocabulary-list');
+ vocabularyList.hide();
+ vocabularyList.find('li').hide();
+ var displayUrls = $('a[filter*="' + filterValue.toLowerCase() + '"]');
+ //Retrieve all the parents of these urls & display them
+ displayElements = displayUrls.parents('ul,li');
+ }else{
+ //Display them all !
+ displayElements = vocabularyDialog.find('ul,li');
+ }
+ displayElements.show();
+ //Flip class from closed to open
+ displayElements.find('div.vocabulary-closed').removeClass('vocabulary-closed').addClass('vocabulary-open');
+ //Disable normal action
+ return false;
+ });
+ }
+ });
+ }, 'html'
+ );
+ }
+
+ return false;
+ });
+ });
+
+ function createVocabularyNode(list, data, basicUrl, displayed) {
+ var childNodes = data.childNodes;
+ var listItem = document.createElement('li');
+ var vocabularyTypeClass;
+ if(childNodes.length == 0){
+ //An actual end point use the appropriate image
+ vocabularyTypeClass = 'vocabulary-doc';
+ }else{
+ if(displayed){
+ vocabularyTypeClass = 'vocabulary-open';
+ }else{
+ vocabularyTypeClass = 'vocabulary-closed';
+ }
+ }
+
+ var vocabularyDivision = document.createElement('div');
+ vocabularyDivision.setAttribute('id', 'node_' + data.id);
+ vocabularyDivision.setAttribute('class', 'vocabulary-node-icon ' + vocabularyTypeClass);
+ listItem.appendChild(vocabularyDivision);
+ var link = document.createElement('a');
+ link.setAttribute('href', data.value);
+ //Also store a to lower cased value of our label in the link, this will be used for filtering
+ link.setAttribute('filter', data.value.toLowerCase());
+ link.innerHTML = data.label;
+ listItem.appendChild(link);
+
+ list.appendChild(listItem);
+ if(0 < childNodes.length){
+ var subNodeList = document.createElement('ul');
+ subNodeList.setAttribute('id', 'node_' + data.id + '_sub');
+ if(!displayed){
+ subNodeList.setAttribute('style', 'display: none;');
+ }
+ $.each(childNodes, function(key, childNode){
+ createVocabularyNode(subNodeList, childNode, basicUrl, false);
+ });
+ list.appendChild(subNodeList);
+ }
+ }
+
+ function hideLoadingMsg() {
+ $('li#aspect_submission_ControlledVocabularyTransformer_item_vocabulary-loading').hide();
+ }
+
+ function showErrorMsg(){
+ $('li#aspect_submission_ControlledVocabularyTransformer_item_vocabulary-error').removeClass('hidden');
+ }
+
+})($);
diff --git a/static/robots.txt b/static/robots.txt
index 62626f0e5..e400f1e93 100644
--- a/static/robots.txt
+++ b/static/robots.txt
@@ -1,8 +1,8 @@
# The FULL URL to the DSpace sitemaps
-# The http://dev-da.library.vanderbilt.edu:6060/xmlui will be auto-filled with the value in dspace.cfg
+# The http://ir.vanderbilt.edug will be auto-filled with the value in dspace.cfg
# XML sitemap is listed first as it is preferred by most search engines
-Sitemap: http://dev-da.library.vanderbilt.edu:6060/xmlui/sitemap
-Sitemap: http://dev-da.library.vanderbilt.edu:6060/xmlui/htmlmap
+Sitemap: https://ir.vanderbilt.edu/sitemap
+Sitemap: https://ir.vanderbilt.edu/htmlmap
##########################
# Default Access Group
@@ -29,7 +29,7 @@ Disallow: /search-filter
# Disallow: /feedback
# Disallow: /forgot
# Disallow: /login
-# Disallow: /register
+ Disallow: /register
##############################
diff --git a/themes/Mirage2/package.json b/themes/Mirage2/package.json
index 9e4d034f1..ca57046dd 100644
--- a/themes/Mirage2/package.json
+++ b/themes/Mirage2/package.json
@@ -1,9 +1,9 @@
{
- "name": "Mirage2",
+ "name": "vu2020R",
"version": "0.1.2",
"dependencies": {},
"devDependencies": {
- "bower": "1.7.9",
+ "bower": ">=1.8.8",
"grunt": "~1.0.1",
"grunt-cli": "1.2.0",
"grunt-contrib-coffee": "~1.0.0",
diff --git a/themes/Mirage2/scripts/vocabulary-support.js b/themes/Mirage2/scripts/vocabulary-support.js
index cf473cea1..21cff21a3 100644
--- a/themes/Mirage2/scripts/vocabulary-support.js
+++ b/themes/Mirage2/scripts/vocabulary-support.js
@@ -8,7 +8,7 @@
(function($) {
$(document).ready(function(){
//Find any controlled vocabulary urls this page might contain
- var vocabularyUrls = $('a[href^="vocabulary:"]');
+ var vocabularyUrls = $('a[href^=""]');
vocabularyUrls.click(function(index){
var $link = $(this);
var vocabularyJSONUrl = $link.attr('href').replace('vocabulary:', '');
diff --git a/themes/Mirage2/scripts/vocabulary-support.js.deliv b/themes/Mirage2/scripts/vocabulary-support.js.deliv
new file mode 100644
index 000000000..cf473cea1
--- /dev/null
+++ b/themes/Mirage2/scripts/vocabulary-support.js.deliv
@@ -0,0 +1,211 @@
+/*
+ * The contents of this file are subject to the license and copyright
+ * detailed in the LICENSE and NOTICE files at the root of the source
+ * tree and available online at
+ *
+ * http://www.dspace.org/license/
+ */
+(function($) {
+ $(document).ready(function(){
+ //Find any controlled vocabulary urls this page might contain
+ var vocabularyUrls = $('a[href^="vocabulary:"]');
+ vocabularyUrls.click(function(index){
+ var $link = $(this);
+ var vocabularyJSONUrl = $link.attr('href').replace('vocabulary:', '');
+ //Retrieve the basic url, we will need this to add images !
+ var basicUrl = vocabularyJSONUrl.substr(0, vocabularyJSONUrl.indexOf('/JSON/controlled-vocabulary'));
+ var parameters = vocabularyJSONUrl.slice(vocabularyJSONUrl.indexOf('?') + 1, vocabularyJSONUrl.length).split('&');
+
+ //Read the input field name & the vocabulary identifier from the url
+ var inputFieldName;
+ var vocabularyIdentifier;
+ for(var i = 0; i < parameters.length; i++){
+ var parameter = parameters[i].split('=')[0];
+ var value = parameters[i].split('=')[1];
+
+ if(parameter == 'vocabularyIdentifier'){
+ vocabularyIdentifier = value;
+ }else
+ if(parameter == 'metadataFieldName'){
+ inputFieldName = value;
+ }
+ }
+
+ var id = 'modal_vocabulary_dialog_' + vocabularyIdentifier;
+ //Check if we already have a (hidden) modal
+ var vocabularyDialog = $('div#'+id);
+ if(0 < vocabularyDialog.length){
+ //Open the modal
+ vocabularyDialog.find('input[type="hidden"][name="metadataFieldName"]').val(inputFieldName);
+ vocabularyDialog.modal('show')
+ }else{
+
+ //No dialog window found, create a new one by requesting our data by json
+ $.get(basicUrl + '/controlled-vocabulary-dialog',
+ {
+ vocabularyIdentifier: vocabularyIdentifier,
+ metadataFieldName: inputFieldName
+ },
+ function(resultingHtml){
+ //retrieve the dialog box
+
+
+ vocabularyDialog = $('
' + resultingHtml + '
');
+ $( "body" ).append(vocabularyDialog);
+ vocabularyDialog.modal();
+
+ var mainDialogDivision = vocabularyDialog.find('div[id^=aspect_submission_ControlledVocabularyTransformer_div_vocabulary_dialog_]');
+// $('body').append($(mainDialogDivision[0]));
+// var vocabularyDialog = $('div#aspect_submission_ControlledVocabularyTransformer_div_vocabulary_dialog_' + vocabularyIdentifier);
+// vocabularyDialog.dialog({
+// autoOpen: true,
+// height: 450,
+// width: 650,
+// modal: true,
+// title: $Result.find('title').html()
+// });
+
+ //The success function, retrieve the JSON
+ $.ajax({
+ url: vocabularyJSONUrl,
+ dataType: 'json',
+ data: {},
+ success: function(response) {
+ if(response == null){
+ hideLoadingMsg();
+ showErrorMsg();
+ }
+
+ var mainList = document.createElement('ul');
+ mainList.setAttribute('class', 'ds-simple-list vocabulary list-unstyled col-xs-12');
+ mainList.setAttribute('id', 'vocabulary-list');
+ createVocabularyNode(mainList, response, basicUrl, true);
+
+ //Hide the loading message !
+ hideLoadingMsg();
+
+ mainDialogDivision[0].appendChild(mainList);
+
+ //Initialize all the vocabulary box javascript actions
+ vocabularyDialog.find('span[id^="node_"]').click(function(e){
+ e.preventDefault();
+ e.stopPropagation();
+ var $this = $(this);
+ var subNodes = $('ul#' + $this.attr('id') + '_sub');
+ if(subNodes.is(':visible')){
+ subNodes.hide();
+ subNodes.find('li:first-child').hide();
+ }else{
+ subNodes.show();
+ subNodes.find('li:first-child').show();
+ }
+ //Flip the closed/open class
+ if($this.hasClass('glyphicon-folder-open')){
+ $this.removeClass('glyphicon-folder-open');
+ $this.addClass('glyphicon-folder-close');
+ }else
+ if($this.hasClass('glyphicon-folder-close')){
+ $this.removeClass('glyphicon-folder-close');
+ $this.addClass('glyphicon-folder-open');
+ }
+ });
+
+ //Each time we click a url ensure that our field is added in the input box !
+ $('a.vocabulary-label',vocabularyDialog).bind('click',function(e){
+ e.preventDefault();
+ e.stopPropagation();
+ var $this = $(this);
+ var inputFieldName = vocabularyDialog.find('input[type="hidden"][name="metadataFieldName"]').val();
+ $('input[name="' + inputFieldName + '"]').val($this.attr('href'));
+
+ //Close the current dialog
+ vocabularyDialog.modal('hide');
+ return false;
+ });
+
+ $('button[name="filter_button"]',vocabularyDialog).bind('click',function(){
+ var filterValue = $('input[name="filter"]',vocabularyDialog).val();
+ var displayElements;
+ if(0 < filterValue.length){
+ //Perform the filtering
+ //Start by hiding all the urls in our box
+ var vocabularyList = vocabularyDialog.find('ul#vocabulary-list');
+ vocabularyList.hide();
+ vocabularyList.find('li').hide();
+ var displayUrls = $('a[filter*="' + filterValue.toLowerCase() + '"]');
+ //Retrieve all the parents of these urls & display them
+ displayElements = displayUrls.parents('ul,li');
+ }else{
+ //Display them all !
+ displayElements = vocabularyDialog.find('ul,li');
+ }
+ displayElements.show();
+ //Flip class from closed to open
+ displayElements.find('.glyphicon-folder-close').removeClass('glyphicon-folder-close').addClass('glyphicon-folder-open');
+ //Disable normal action
+ return false;
+ });
+ }
+ });
+ }, 'html'
+ );
+ }
+
+ return false;
+ });
+ });
+
+ function createVocabularyNode(list, data, basicUrl, displayed) {
+ var childNodes = data.childNodes;
+ var listItem = document.createElement('li');
+ var vocabularyTypeClass;
+ var parent = listItem;
+ if(childNodes.length == 0){
+ //An actual end point use the appropriate image
+ vocabularyTypeClass = 'glyphicon-file';
+ }else{
+ if(displayed){
+ vocabularyTypeClass = 'glyphicon-folder-open';
+ }else{
+ vocabularyTypeClass = 'glyphicon-folder-close';
+ }
+ parent =$( '');
+ parent.appendTo(listItem)
+ }
+
+ var vocabularyIcon = $( '');
+ vocabularyIcon.attr('id', 'node_' + data.id);
+ vocabularyIcon.appendTo(parent)
+
+
+ var link = document.createElement('a');
+ link.setAttribute('href', data.value);
+ link.setAttribute('class', 'vocabulary-label');
+ //Also store a to lower cased value of our label in the link, this will be used for filtering
+ link.setAttribute('filter', data.value.toLowerCase());
+ link.innerHTML = data.label;
+ listItem.appendChild(link);
+
+ list.appendChild(listItem);
+ if(0 < childNodes.length){
+ var subNodeList = document.createElement('ul');
+ subNodeList.setAttribute('id', 'node_' + data.id + '_sub');
+ if(!displayed){
+ subNodeList.setAttribute('style', 'display: none;');
+ }
+ $.each(childNodes, function(key, childNode){
+ createVocabularyNode(subNodeList, childNode, basicUrl, false);
+ });
+ list.appendChild(subNodeList);
+ }
+ }
+
+ function hideLoadingMsg() {
+ $('div#aspect_submission_ControlledVocabularyTransformer_item_vocabulary-loading').hide();
+ }
+
+ function showErrorMsg(){
+ $('div#aspect_submission_ControlledVocabularyTransformer_item_vocabulary-error').removeClass('hidden');
+ }
+
+})($);
diff --git a/themes/VU2.b/.bowerrc b/themes/VU2.b/.bowerrc
new file mode 100644
index 000000000..8f98a0360
--- /dev/null
+++ b/themes/VU2.b/.bowerrc
@@ -0,0 +1,3 @@
+{
+ "directory": "vendor"
+}
diff --git a/themes/VU2.b/.ruby-version b/themes/VU2.b/.ruby-version
new file mode 100644
index 000000000..bc4abe86d
--- /dev/null
+++ b/themes/VU2.b/.ruby-version
@@ -0,0 +1 @@
+2.3.8
diff --git a/themes/VU2.b/Gruntfile.js b/themes/VU2.b/Gruntfile.js
new file mode 100644
index 000000000..943eca889
--- /dev/null
+++ b/themes/VU2.b/Gruntfile.js
@@ -0,0 +1,121 @@
+/*
+ * The contents of this file are subject to the license and copyright
+ * detailed in the LICENSE and NOTICE files at the root of the source
+ * tree and available online at
+ *
+ * http://www.dspace.org/license/
+ */
+// Generated on 2013-11-09 using generator-webapp 0.4.3
+'use strict';
+
+module.exports = function (grunt) {
+ // show elapsed time at the end
+ require('time-grunt')(grunt);
+ // load all grunt tasks
+ require('load-grunt-tasks')(grunt);
+
+ grunt.initConfig({
+ copy: {
+ classic_mirage_color_scheme: {
+ files: [
+ {
+ src: ['styles/classic_mirage_color_scheme/_main.scss'],
+ dest: 'styles/main.scss'
+ }
+ ]
+ },
+ bootstrap_color_scheme: {
+ files: [
+ {
+ src: ['styles/bootstrap_color_scheme/_main.scss'],
+ dest: 'styles/main.scss'
+ }
+ ]
+ },
+ scriptsxml: {
+ files: [
+ {
+ src: ['scripts.xml'],
+ dest: 'scripts-dist.xml'
+ }
+ ]
+ }
+ },
+ compass: {
+ prod: {
+ options: {
+ config: 'config-prod.rb'
+ }
+
+ },
+ dev: {
+ options: {
+ config: 'config-dev.rb'
+ }
+
+ }
+ },
+ coffee: {
+ glob_to_multiple: {
+ expand: true,
+ flatten: true,
+ cwd: 'scripts',
+ src: ['*.coffee'],
+ dest: 'scripts',
+ ext: '.js'
+ }
+ },
+ handlebars: {
+ compile: {
+ options: {
+ namespace: "DSpace.templates",
+ processName: function(filePath) {
+ return filePath.replace(/^templates\//, '').replace(/\.handlebars$/, '').replace(/\.hbs$/, '');
+ }
+ },
+ files: {
+ "scripts/templates.js": ["templates/*.handlebars", "templates/*.hbs"]
+ }
+ }
+ },
+ useminPrepare:{
+ src: ['scripts-dist.xml'],
+ options: {
+ // fool usemin in to putting theme.js straight into the scripts
+ // folder, and not in a separate dist folder. And no, you can't
+ // just use an empty string, I tried ;)
+ dest: 'dist/../'
+ }
+ } ,
+ usemin: {
+ html:'scripts-dist.xml'
+ }
+ });
+
+
+ grunt.registerTask('classic_mirage_color_scheme', [
+ 'copy:classic_mirage_color_scheme'
+ ]);
+ grunt.registerTask('bootstrap_color_scheme', [
+ 'copy:bootstrap_color_scheme'
+ ]);
+ grunt.registerTask('shared-steps', [
+ 'copy:scriptsxml', 'coffee', 'handlebars', 'useminPrepare','concat'
+ ]);
+ grunt.registerTask('no-compass-prod', [
+ 'shared-steps','uglify','usemin'
+ ]);
+ grunt.registerTask('no-compass-dev', [
+ 'shared-steps','uglify:generated'
+ ]);
+ grunt.registerTask('prod', [
+ 'compass:prod', 'no-compass-prod'
+ ]);
+ grunt.registerTask('dev', [
+ 'compass:dev', 'no-compass-dev'
+ ]);
+ grunt.registerTask('default', [
+ 'classic_mirage_color_scheme',
+ 'prod'
+ ]);
+};
diff --git a/themes/VU2.b/bower.json b/themes/VU2.b/bower.json
new file mode 100644
index 000000000..b3c7552d8
--- /dev/null
+++ b/themes/VU2.b/bower.json
@@ -0,0 +1,17 @@
+{
+ "name": "Mirage2",
+ "version": "0.1.1",
+ "dependencies": {
+ "bootstrap-sass-official": "3.3.0",
+ "modernizr": "2.8.3",
+ "jquery": "~1.10.2",
+ "jquery-ui": "1.10.3",
+ "jqueryuibootstrap": "4f3772cd37b898f456c0126c4b44178ce8d4aad7",
+ "handlebars": "2.0.0",
+ "respond": "1.4.2",
+ "html5shiv": "3.7.2",
+ "holderjs": "2.4.1",
+ "datatables": "1.10.3"
+ },
+ "devDependencies": {}
+}
diff --git a/themes/VU2.b/config-dev.rb b/themes/VU2.b/config-dev.rb
new file mode 100644
index 000000000..f90dd6d9b
--- /dev/null
+++ b/themes/VU2.b/config-dev.rb
@@ -0,0 +1,24 @@
+#
+# The contents of this file are subject to the license and copyright
+# detailed in the LICENSE and NOTICE files at the root of the source
+# tree and available online at
+#
+# http://www.dspace.org/license/
+#
+
+encoding = "UTF-8"
+http_path = "/themes/bootstrap/"
+css_path = "styles"
+sass_path = "styles"
+images_dir = "images"
+generated_images_dir = "dist/images/generated"
+javascripts_dir = "scripts"
+fonts_dir = "styles/fonts"
+http_images_path = "/images"
+http_generated_images_path = "/images/generated"
+http_fonts_path = "/styles/fonts"
+relative_assets = false
+asset_cache_buster = :none
+output_style = :expanded
+line_comments = true
+Sass::Script::Number.precision = [10, ::Sass::Script::Number.precision].max
\ No newline at end of file
diff --git a/themes/VU2.b/config-prod.rb b/themes/VU2.b/config-prod.rb
new file mode 100644
index 000000000..b14df9beb
--- /dev/null
+++ b/themes/VU2.b/config-prod.rb
@@ -0,0 +1,24 @@
+#
+# The contents of this file are subject to the license and copyright
+# detailed in the LICENSE and NOTICE files at the root of the source
+# tree and available online at
+#
+# http://www.dspace.org/license/
+#
+
+encoding = "UTF-8"
+http_path = "/themes/bootstrap/"
+css_path = "styles"
+sass_path = "styles"
+images_dir = "images"
+generated_images_dir = "dist/images/generated"
+javascripts_dir = "scripts"
+fonts_dir = "styles/fonts"
+http_images_path = "/images"
+http_generated_images_path = "/images/generated"
+http_fonts_path = "/styles/fonts"
+relative_assets = false
+asset_cache_buster = :none
+output_style = :compressed
+line_comments = false
+Sass::Script::Number.precision = [10, ::Sass::Script::Number.precision].max
\ No newline at end of file
diff --git a/themes/VU2.b/config.rb b/themes/VU2.b/config.rb
new file mode 100644
index 000000000..ae5f2a9dc
--- /dev/null
+++ b/themes/VU2.b/config.rb
@@ -0,0 +1,36 @@
+#
+# The contents of this file are subject to the license and copyright
+# detailed in the LICENSE and NOTICE files at the root of the source
+# tree and available online at
+#
+# http://www.dspace.org/license/
+#
+
+# Require any additional compass plugins here.
+
+encoding = "UTF-8"
+# Set this to the root of your project when deployed:
+http_path = "/themes/bootstrap/"
+css_dir = "styles"
+sass_dir = "styles"
+images_dir = "images"
+javascripts_dir = "scripts"
+
+# You can select your preferred output style here (can be overridden via the command line):
+# output_style = :expanded or :nested or :compact or :compressed
+output_style = :expanded
+
+# To enable relative paths to assets via compass helper functions. Uncomment:
+# relative_assets = true
+
+# To disable debugging comments that display the original location of your selectors. Uncomment:
+line_comments = true
+
+
+# If you prefer the indented syntax, you might want to regenerate this
+# project again passing --syntax sass, or you can uncomment this:
+# preferred_syntax = :sass
+# and then run:
+# sass-convert -R --from scss --to sass sass scss && rm -rf sass && mv scss sass
+
+Sass::Script::Number.precision = [10, ::Sass::Script::Number.precision].max
diff --git a/themes/VU2.b/images/@mirelogo-small.png b/themes/VU2.b/images/@mirelogo-small.png
new file mode 100644
index 000000000..6466e7f15
Binary files /dev/null and b/themes/VU2.b/images/@mirelogo-small.png differ
diff --git a/themes/VU2.b/images/Crystal_Clear_action_lock3_64px.png b/themes/VU2.b/images/Crystal_Clear_action_lock3_64px.png
new file mode 100644
index 000000000..2a1412bb9
Binary files /dev/null and b/themes/VU2.b/images/Crystal_Clear_action_lock3_64px.png differ
diff --git a/themes/VU2.b/images/DOCX.png b/themes/VU2.b/images/DOCX.png
new file mode 100644
index 000000000..60fdd439d
Binary files /dev/null and b/themes/VU2.b/images/DOCX.png differ
diff --git a/themes/VU2.b/images/DSpace-logo-line.svg b/themes/VU2.b/images/DSpace-logo-line.svg
new file mode 100644
index 000000000..9bd7c71aa
--- /dev/null
+++ b/themes/VU2.b/images/DSpace-logo-line.svg
@@ -0,0 +1,47 @@
+
+
+
+
diff --git a/themes/VU2.b/images/DSpace-logo-only.svg b/themes/VU2.b/images/DSpace-logo-only.svg
new file mode 100644
index 000000000..66b609d61
--- /dev/null
+++ b/themes/VU2.b/images/DSpace-logo-only.svg
@@ -0,0 +1,44 @@
+
+
+
+
diff --git a/themes/VU2.b/images/DSpace-logo.svg b/themes/VU2.b/images/DSpace-logo.svg
new file mode 100644
index 000000000..b75b5a6f9
--- /dev/null
+++ b/themes/VU2.b/images/DSpace-logo.svg
@@ -0,0 +1,43 @@
+
+
+
+
diff --git a/themes/VU2.b/images/PowerPoint.png b/themes/VU2.b/images/PowerPoint.png
new file mode 100644
index 000000000..6d2ee8fc9
Binary files /dev/null and b/themes/VU2.b/images/PowerPoint.png differ
diff --git a/themes/VU2.b/images/Save/logo-vandy-discoverarchive-height60.jpg b/themes/VU2.b/images/Save/logo-vandy-discoverarchive-height60.jpg
new file mode 100644
index 000000000..d1d4d38a3
Binary files /dev/null and b/themes/VU2.b/images/Save/logo-vandy-discoverarchive-height60.jpg differ
diff --git a/themes/VU2.b/images/Save/logo-vandy-discoverarchive.jpg b/themes/VU2.b/images/Save/logo-vandy-discoverarchive.jpg
new file mode 100644
index 000000000..4e5fdc244
Binary files /dev/null and b/themes/VU2.b/images/Save/logo-vandy-discoverarchive.jpg differ
diff --git a/themes/VU2.b/images/Save/logo-vandy-library.png b/themes/VU2.b/images/Save/logo-vandy-library.png
new file mode 100644
index 000000000..1c5b84980
Binary files /dev/null and b/themes/VU2.b/images/Save/logo-vandy-library.png differ
diff --git a/themes/VU2.b/images/apple-touch-icon.png b/themes/VU2.b/images/apple-touch-icon.png
new file mode 100644
index 000000000..cb944d423
Binary files /dev/null and b/themes/VU2.b/images/apple-touch-icon.png differ
diff --git a/themes/VU2.b/images/arrow_down_ffffff_16x16.png b/themes/VU2.b/images/arrow_down_ffffff_16x16.png
new file mode 100644
index 000000000..213e36425
Binary files /dev/null and b/themes/VU2.b/images/arrow_down_ffffff_16x16.png differ
diff --git a/themes/VU2.b/images/arrow_up_ffffff_16x16.png b/themes/VU2.b/images/arrow_up_ffffff_16x16.png
new file mode 100644
index 000000000..2d9ce05f8
Binary files /dev/null and b/themes/VU2.b/images/arrow_up_ffffff_16x16.png differ
diff --git a/themes/VU2.b/images/arrows.png b/themes/VU2.b/images/arrows.png
new file mode 100755
index 000000000..8f562bd81
Binary files /dev/null and b/themes/VU2.b/images/arrows.png differ
diff --git a/themes/VU2.b/images/artssciences.jpg b/themes/VU2.b/images/artssciences.jpg
new file mode 100644
index 000000000..5d9b9b757
Binary files /dev/null and b/themes/VU2.b/images/artssciences.jpg differ
diff --git a/themes/VU2.b/images/atmire-logo-small.svg b/themes/VU2.b/images/atmire-logo-small.svg
new file mode 100644
index 000000000..af6d2e416
--- /dev/null
+++ b/themes/VU2.b/images/atmire-logo-small.svg
@@ -0,0 +1,21 @@
+
+
+
+
diff --git a/themes/VU2.b/images/audio-basic.png b/themes/VU2.b/images/audio-basic.png
new file mode 100644
index 000000000..5212bed70
Binary files /dev/null and b/themes/VU2.b/images/audio-basic.png differ
diff --git a/themes/VU2.b/images/authority_control/confidence/2-errortriangle.gif b/themes/VU2.b/images/authority_control/confidence/2-errortriangle.gif
new file mode 100644
index 000000000..77ecac669
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/2-errortriangle.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/2-lightning.gif b/themes/VU2.b/images/authority_control/confidence/2-lightning.gif
new file mode 100644
index 000000000..5f4582668
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/2-lightning.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/2-warntriangle.gif b/themes/VU2.b/images/authority_control/confidence/2-warntriangle.gif
new file mode 100644
index 000000000..03f658fd1
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/2-warntriangle.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/3-circleslash.gif b/themes/VU2.b/images/authority_control/confidence/3-circleslash.gif
new file mode 100644
index 000000000..c834095ba
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/3-circleslash.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/3-flag.gif b/themes/VU2.b/images/authority_control/confidence/3-flag.gif
new file mode 100644
index 000000000..35857f994
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/3-flag.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/3-thumb1.gif b/themes/VU2.b/images/authority_control/confidence/3-thumb1.gif
new file mode 100644
index 000000000..8fec57387
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/3-thumb1.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/3-thumb2.gif b/themes/VU2.b/images/authority_control/confidence/3-thumb2.gif
new file mode 100644
index 000000000..ee6aea8f2
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/3-thumb2.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/4-question.gif b/themes/VU2.b/images/authority_control/confidence/4-question.gif
new file mode 100644
index 000000000..7b20d616f
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/4-question.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/4-star.gif b/themes/VU2.b/images/authority_control/confidence/4-star.gif
new file mode 100644
index 000000000..da6654c3f
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/4-star.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/5-pinion.gif b/themes/VU2.b/images/authority_control/confidence/5-pinion.gif
new file mode 100644
index 000000000..e48a5e035
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/5-pinion.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/5-star.gif b/themes/VU2.b/images/authority_control/confidence/5-star.gif
new file mode 100644
index 000000000..55e8b079a
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/5-star.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/6-greencheck.gif b/themes/VU2.b/images/authority_control/confidence/6-greencheck.gif
new file mode 100644
index 000000000..91f949b40
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/6-greencheck.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/6-star.gif b/themes/VU2.b/images/authority_control/confidence/6-star.gif
new file mode 100644
index 000000000..de8f2fa58
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/6-star.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/6-thumb1.gif b/themes/VU2.b/images/authority_control/confidence/6-thumb1.gif
new file mode 100644
index 000000000..3233f650b
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/6-thumb1.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/6-thumb2.gif b/themes/VU2.b/images/authority_control/confidence/6-thumb2.gif
new file mode 100644
index 000000000..7fdc37091
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/6-thumb2.gif differ
diff --git a/themes/VU2.b/images/authority_control/confidence/bug.png b/themes/VU2.b/images/authority_control/confidence/bug.png
new file mode 100644
index 000000000..2d5fb90ec
Binary files /dev/null and b/themes/VU2.b/images/authority_control/confidence/bug.png differ
diff --git a/themes/VU2.b/images/authority_control/confidence/readme.txt b/themes/VU2.b/images/authority_control/confidence/readme.txt
new file mode 100644
index 000000000..c91e09d0b
--- /dev/null
+++ b/themes/VU2.b/images/authority_control/confidence/readme.txt
@@ -0,0 +1,53 @@
+====
+ The contents of this file are subject to the license and copyright
+ detailed in the LICENSE and NOTICE files at the root of the source
+ tree and available online at
+
+ http://www.dspace.org/license/
+====
+16x16 Free Application Icons
+
+This icon set is free for use in personal and commercial projects.
+
+License Agreement
+
+By purchasing icons from Aha-Soft, You (the purchaser)
+agree to the terms of this agreement, as detailed below.
+
+You may use the icons from Aha-Soft in commercial and
+personal design projects, software or Internet products.
+Icons can be displayed in documentation, help files, and
+advertising materials. You are free to sell and distribute
+products and projects using purchased icons without further
+royalty fees.
+
+All icon files are provided 'as is'. Aha-Soft cannot be
+held liable for any negative issues that may occur as a
+result of using the icons.
+
+You agree that all ownership and copyright of the icons
+remains the property of Aha-Soft. You may not resell,
+distribute, lease, license or sub-license the icons or
+modified icons (or a subset of the icons), to any third
+party unless they are incorporated into your software or
+design products.
+
+If you have any questions regarding copyright or licensing,
+including whether another license is required for icon use
+within products, please contact us here: www.aha-soft.com/support.htm
+
+Product page: http://www.small-icons.com/stock-icons/16x16-free-application-icons.htm
+
+Icon Design Service
+
+We can design custom icons for you. Please find the basic information
+about ordering icons, pricing and the portfolio here:
+www.aha-soft.com/customdev/design.htm
+
+
+Notice
+Web-site small-icons.com belongs to Aha-Soft.
+
+Support page: http://www.aha-soft.com/support.htm
+
+Copyright � 2009 Aha-Soft. All rights reserved.
\ No newline at end of file
diff --git a/themes/VU2.b/images/authority_control/invisible.gif b/themes/VU2.b/images/authority_control/invisible.gif
new file mode 100644
index 000000000..17d43908d
Binary files /dev/null and b/themes/VU2.b/images/authority_control/invisible.gif differ
diff --git a/themes/VU2.b/images/authority_control/lock24.png b/themes/VU2.b/images/authority_control/lock24.png
new file mode 100644
index 000000000..89ebada2f
Binary files /dev/null and b/themes/VU2.b/images/authority_control/lock24.png differ
diff --git a/themes/VU2.b/images/authority_control/lookup-indicator.gif b/themes/VU2.b/images/authority_control/lookup-indicator.gif
new file mode 100644
index 000000000..3288d1035
Binary files /dev/null and b/themes/VU2.b/images/authority_control/lookup-indicator.gif differ
diff --git a/themes/VU2.b/images/authority_control/suggest-indicator.gif b/themes/VU2.b/images/authority_control/suggest-indicator.gif
new file mode 100644
index 000000000..d0bce1542
Binary files /dev/null and b/themes/VU2.b/images/authority_control/suggest-indicator.gif differ
diff --git a/themes/VU2.b/images/authority_control/unlock24.png b/themes/VU2.b/images/authority_control/unlock24.png
new file mode 100644
index 000000000..fae950dcd
Binary files /dev/null and b/themes/VU2.b/images/authority_control/unlock24.png differ
diff --git a/themes/VU2.b/images/bg-footer.png b/themes/VU2.b/images/bg-footer.png
new file mode 100644
index 000000000..63269f99d
Binary files /dev/null and b/themes/VU2.b/images/bg-footer.png differ
diff --git a/themes/VU2.b/images/bg-header.jpg b/themes/VU2.b/images/bg-header.jpg
new file mode 100644
index 000000000..1ef26eba1
Binary files /dev/null and b/themes/VU2.b/images/bg-header.jpg differ
diff --git a/themes/VU2.b/images/blair.jpg b/themes/VU2.b/images/blair.jpg
new file mode 100644
index 000000000..d4be2df99
Binary files /dev/null and b/themes/VU2.b/images/blair.jpg differ
diff --git a/themes/VU2.b/images/bullets.png b/themes/VU2.b/images/bullets.png
new file mode 100755
index 000000000..a84c9c0bd
Binary files /dev/null and b/themes/VU2.b/images/bullets.png differ
diff --git a/themes/VU2.b/images/button_minus.png b/themes/VU2.b/images/button_minus.png
new file mode 100644
index 000000000..45ad7c36d
Binary files /dev/null and b/themes/VU2.b/images/button_minus.png differ
diff --git a/themes/VU2.b/images/button_plus.png b/themes/VU2.b/images/button_plus.png
new file mode 100644
index 000000000..2da6ee744
Binary files /dev/null and b/themes/VU2.b/images/button_plus.png differ
diff --git a/themes/VU2.b/images/bwarts_science.jpg b/themes/VU2.b/images/bwarts_science.jpg
new file mode 100644
index 000000000..19df154a7
Binary files /dev/null and b/themes/VU2.b/images/bwarts_science.jpg differ
diff --git a/themes/VU2.b/images/bwblair.jpg b/themes/VU2.b/images/bwblair.jpg
new file mode 100644
index 000000000..d2171bab7
Binary files /dev/null and b/themes/VU2.b/images/bwblair.jpg differ
diff --git a/themes/VU2.b/images/bwdivinity.jpg b/themes/VU2.b/images/bwdivinity.jpg
new file mode 100644
index 000000000..e938a7d97
Binary files /dev/null and b/themes/VU2.b/images/bwdivinity.jpg differ
diff --git a/themes/VU2.b/images/bwlaw.jpg b/themes/VU2.b/images/bwlaw.jpg
new file mode 100644
index 000000000..41bae8eda
Binary files /dev/null and b/themes/VU2.b/images/bwlaw.jpg differ
diff --git a/themes/VU2.b/images/bwowen.jpg b/themes/VU2.b/images/bwowen.jpg
new file mode 100644
index 000000000..57ff72003
Binary files /dev/null and b/themes/VU2.b/images/bwowen.jpg differ
diff --git a/themes/VU2.b/images/bwpeabody.jpg b/themes/VU2.b/images/bwpeabody.jpg
new file mode 100644
index 000000000..ec1069ebc
Binary files /dev/null and b/themes/VU2.b/images/bwpeabody.jpg differ
diff --git a/themes/VU2.b/images/bwpublications.jpg b/themes/VU2.b/images/bwpublications.jpg
new file mode 100644
index 000000000..d887a019e
Binary files /dev/null and b/themes/VU2.b/images/bwpublications.jpg differ
diff --git a/themes/VU2.b/images/bwvulibrary.jpg b/themes/VU2.b/images/bwvulibrary.jpg
new file mode 100644
index 000000000..41e7fe6be
Binary files /dev/null and b/themes/VU2.b/images/bwvulibrary.jpg differ
diff --git a/themes/VU2.b/images/cc-ship.gif b/themes/VU2.b/images/cc-ship.gif
new file mode 100644
index 000000000..0f53bce15
Binary files /dev/null and b/themes/VU2.b/images/cc-ship.gif differ
diff --git a/themes/VU2.b/images/check_606060_15x15.png b/themes/VU2.b/images/check_606060_15x15.png
new file mode 100644
index 000000000..8648de74b
Binary files /dev/null and b/themes/VU2.b/images/check_606060_15x15.png differ
diff --git a/themes/VU2.b/images/controlledvocabulary/voc_closed_222222.png b/themes/VU2.b/images/controlledvocabulary/voc_closed_222222.png
new file mode 100644
index 000000000..e7ab014d4
Binary files /dev/null and b/themes/VU2.b/images/controlledvocabulary/voc_closed_222222.png differ
diff --git a/themes/VU2.b/images/controlledvocabulary/voc_doc_222222.png b/themes/VU2.b/images/controlledvocabulary/voc_doc_222222.png
new file mode 100644
index 000000000..5a6f9d61c
Binary files /dev/null and b/themes/VU2.b/images/controlledvocabulary/voc_doc_222222.png differ
diff --git a/themes/VU2.b/images/controlledvocabulary/voc_open_222222.png b/themes/VU2.b/images/controlledvocabulary/voc_open_222222.png
new file mode 100644
index 000000000..0912becd1
Binary files /dev/null and b/themes/VU2.b/images/controlledvocabulary/voc_open_222222.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by-nc-nd.png b/themes/VU2.b/images/creativecommons/cc-by-nc-nd.png
new file mode 100644
index 000000000..cd7f385a2
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by-nc-nd.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by-nc-sa.png b/themes/VU2.b/images/creativecommons/cc-by-nc-sa.png
new file mode 100644
index 000000000..22c1af342
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by-nc-sa.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by-nc.png b/themes/VU2.b/images/creativecommons/cc-by-nc.png
new file mode 100644
index 000000000..1874426e3
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by-nc.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by-nd.png b/themes/VU2.b/images/creativecommons/cc-by-nd.png
new file mode 100644
index 000000000..edb431589
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by-nd.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by-sa.png b/themes/VU2.b/images/creativecommons/cc-by-sa.png
new file mode 100644
index 000000000..13f97d57b
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by-sa.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-by.png b/themes/VU2.b/images/creativecommons/cc-by.png
new file mode 100644
index 000000000..f9cd594cb
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-by.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-generic.png b/themes/VU2.b/images/creativecommons/cc-generic.png
new file mode 100644
index 000000000..4590b0a7a
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-generic.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-mark.png b/themes/VU2.b/images/creativecommons/cc-mark.png
new file mode 100644
index 000000000..6a782386e
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-mark.png differ
diff --git a/themes/VU2.b/images/creativecommons/cc-zero.png b/themes/VU2.b/images/creativecommons/cc-zero.png
new file mode 100644
index 000000000..ec98a3f3f
Binary files /dev/null and b/themes/VU2.b/images/creativecommons/cc-zero.png differ
diff --git a/themes/VU2.b/images/divinity.jpg b/themes/VU2.b/images/divinity.jpg
new file mode 100644
index 000000000..d5eabf7a1
Binary files /dev/null and b/themes/VU2.b/images/divinity.jpg differ
diff --git a/themes/VU2.b/images/document_generic.png b/themes/VU2.b/images/document_generic.png
new file mode 100644
index 000000000..38430392b
Binary files /dev/null and b/themes/VU2.b/images/document_generic.png differ
diff --git a/themes/VU2.b/images/dspace-logo-only.png b/themes/VU2.b/images/dspace-logo-only.png
new file mode 100644
index 000000000..2a9ea1dc3
Binary files /dev/null and b/themes/VU2.b/images/dspace-logo-only.png differ
diff --git a/themes/VU2.b/images/excel.png b/themes/VU2.b/images/excel.png
new file mode 100644
index 000000000..60fdd439d
Binary files /dev/null and b/themes/VU2.b/images/excel.png differ
diff --git a/themes/VU2.b/images/favicon.ico b/themes/VU2.b/images/favicon.ico
new file mode 100644
index 000000000..e687e3ea6
Binary files /dev/null and b/themes/VU2.b/images/favicon.ico differ
diff --git a/themes/VU2.b/images/favicon.ico.save b/themes/VU2.b/images/favicon.ico.save
new file mode 100755
index 000000000..8d8ea09fb
Binary files /dev/null and b/themes/VU2.b/images/favicon.ico.save differ
diff --git a/themes/VU2.b/images/favicon_old.ico b/themes/VU2.b/images/favicon_old.ico
new file mode 100644
index 000000000..8d8ea09fb
Binary files /dev/null and b/themes/VU2.b/images/favicon_old.ico differ
diff --git a/themes/VU2.b/images/gear_6D859C_25x25.png b/themes/VU2.b/images/gear_6D859C_25x25.png
new file mode 100644
index 000000000..089d864b4
Binary files /dev/null and b/themes/VU2.b/images/gear_6D859C_25x25.png differ
diff --git a/themes/VU2.b/images/gear_ffffff_25x25.png b/themes/VU2.b/images/gear_ffffff_25x25.png
new file mode 100644
index 000000000..97d7e5664
Binary files /dev/null and b/themes/VU2.b/images/gear_ffffff_25x25.png differ
diff --git a/themes/VU2.b/images/icon-social.png b/themes/VU2.b/images/icon-social.png
new file mode 100644
index 000000000..c994b128b
Binary files /dev/null and b/themes/VU2.b/images/icon-social.png differ
diff --git a/themes/VU2.b/images/information.png b/themes/VU2.b/images/information.png
new file mode 100644
index 000000000..12cd1aef9
Binary files /dev/null and b/themes/VU2.b/images/information.png differ
diff --git a/themes/VU2.b/images/ir-vu-log.svg b/themes/VU2.b/images/ir-vu-log.svg
new file mode 100644
index 000000000..33df633c8
--- /dev/null
+++ b/themes/VU2.b/images/ir-vu-log.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/themes/VU2.b/images/jpg.png b/themes/VU2.b/images/jpg.png
new file mode 100644
index 000000000..c5fcbc9fd
Binary files /dev/null and b/themes/VU2.b/images/jpg.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_999999_40x100.png b/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_999999_40x100.png
new file mode 100644
index 000000000..13c79e860
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_999999_40x100.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png b/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png
new file mode 100644
index 000000000..b3fe56f2a
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png b/themes/VU2.b/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png
new file mode 100644
index 000000000..3b2914a2d
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png b/themes/VU2.b/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png
new file mode 100644
index 000000000..e81a6d065
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png
new file mode 100644
index 000000000..5a46b47cb
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png
new file mode 100644
index 000000000..86c2baa65
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_ffffff_1x400.png b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_ffffff_1x400.png
new file mode 100644
index 000000000..52ff2d680
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_glass_75_ffffff_1x400.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png b/themes/VU2.b/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png
new file mode 100644
index 000000000..3cd467e18
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-bg_inset-soft_95_fef1ec_1x100.png b/themes/VU2.b/images/jquery-ui/ui-bg_inset-soft_95_fef1ec_1x100.png
new file mode 100644
index 000000000..a50a17f9a
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-bg_inset-soft_95_fef1ec_1x100.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_222222_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_222222_256x240.png
new file mode 100644
index 000000000..0085d125f
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_222222_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_2e83ff_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_2e83ff_256x240.png
new file mode 100644
index 000000000..3bb63f15c
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_2e83ff_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_428bca_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_428bca_256x240.png
new file mode 100644
index 000000000..be9a56cb6
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_428bca_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_454545_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_454545_256x240.png
new file mode 100644
index 000000000..a813d3e3c
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_454545_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_555555_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_555555_256x240.png
new file mode 100644
index 000000000..bd51244d5
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_555555_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_888888_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_888888_256x240.png
new file mode 100644
index 000000000..0b5ccc85e
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_888888_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_999999_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_999999_256x240.png
new file mode 100644
index 000000000..675b2648f
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_999999_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_cd0a0a_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_cd0a0a_256x240.png
new file mode 100644
index 000000000..8c3af0c41
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_cd0a0a_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_f0ad4e_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_f0ad4e_256x240.png
new file mode 100644
index 000000000..6f79477cb
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_f0ad4e_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_f6cf3b_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_f6cf3b_256x240.png
new file mode 100644
index 000000000..3c3574574
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_f6cf3b_256x240.png differ
diff --git a/themes/VU2.b/images/jquery-ui/ui-icons_ffffff_256x240.png b/themes/VU2.b/images/jquery-ui/ui-icons_ffffff_256x240.png
new file mode 100644
index 000000000..99c18f789
Binary files /dev/null and b/themes/VU2.b/images/jquery-ui/ui-icons_ffffff_256x240.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_0_aaaaaa_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_0_aaaaaa_40x100.png
new file mode 100644
index 000000000..b3fe56f2a
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_0_aaaaaa_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_b6c8d9_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_b6c8d9_40x100.png
new file mode 100644
index 000000000..904387325
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_b6c8d9_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_fff2f2_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_fff2f2_40x100.png
new file mode 100644
index 000000000..b54fe57fa
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_fff2f2_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_ffffff_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_ffffff_40x100.png
new file mode 100644
index 000000000..6ebfa5026
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_100_ffffff_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_70_000000_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_70_000000_40x100.png
new file mode 100644
index 000000000..b10f59cd3
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_70_000000_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_1f3f5e_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_1f3f5e_40x100.png
new file mode 100644
index 000000000..0d9ef00c5
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_1f3f5e_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_f0f2f5_40x100.png b/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_f0f2f5_40x100.png
new file mode 100644
index 000000000..f8d291ad2
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_flat_75_f0f2f5_40x100.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_glass_55_fbf9ee_1x400.png b/themes/VU2.b/images/jquery_ui/ui-bg_glass_55_fbf9ee_1x400.png
new file mode 100644
index 000000000..ad3d6346e
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_glass_55_fbf9ee_1x400.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png b/themes/VU2.b/images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png
new file mode 100644
index 000000000..8569c1bc9
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-bg_glass_65_ffffff_1x400.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-icons_2e83ff_256x240.png b/themes/VU2.b/images/jquery_ui/ui-icons_2e83ff_256x240.png
new file mode 100644
index 000000000..7a3c7790d
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-icons_2e83ff_256x240.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-icons_444444_256x240.png b/themes/VU2.b/images/jquery_ui/ui-icons_444444_256x240.png
new file mode 100644
index 000000000..cfd1eaffa
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-icons_444444_256x240.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-icons_c22121_256x240.png b/themes/VU2.b/images/jquery_ui/ui-icons_c22121_256x240.png
new file mode 100644
index 000000000..df725f9ed
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-icons_c22121_256x240.png differ
diff --git a/themes/VU2.b/images/jquery_ui/ui-icons_ffffff_256x240.png b/themes/VU2.b/images/jquery_ui/ui-icons_ffffff_256x240.png
new file mode 100644
index 000000000..99c18f789
Binary files /dev/null and b/themes/VU2.b/images/jquery_ui/ui-icons_ffffff_256x240.png differ
diff --git a/themes/VU2.b/images/law.jpg b/themes/VU2.b/images/law.jpg
new file mode 100644
index 000000000..4c2cf7faf
Binary files /dev/null and b/themes/VU2.b/images/law.jpg differ
diff --git a/themes/VU2.b/images/library-rotation.jpg b/themes/VU2.b/images/library-rotation.jpg
new file mode 100644
index 000000000..a3549c968
Binary files /dev/null and b/themes/VU2.b/images/library-rotation.jpg differ
diff --git a/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg b/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg
new file mode 100644
index 000000000..b50cdc645
Binary files /dev/null and b/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg differ
diff --git a/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg.DA b/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg.DA
new file mode 100755
index 000000000..d1d4d38a3
Binary files /dev/null and b/themes/VU2.b/images/logo-vandy-discoverarchive-height60.jpg.DA differ
diff --git a/themes/VU2.b/images/logo-vandy-discoverarchive.jpg b/themes/VU2.b/images/logo-vandy-discoverarchive.jpg
new file mode 100644
index 000000000..4e5fdc244
Binary files /dev/null and b/themes/VU2.b/images/logo-vandy-discoverarchive.jpg differ
diff --git a/themes/VU2.b/images/logo-vandy-library.png b/themes/VU2.b/images/logo-vandy-library.png
new file mode 100644
index 000000000..1c5b84980
Binary files /dev/null and b/themes/VU2.b/images/logo-vandy-library.png differ
diff --git a/themes/VU2.b/images/mime.png b/themes/VU2.b/images/mime.png
new file mode 100644
index 000000000..92668ab5e
Binary files /dev/null and b/themes/VU2.b/images/mime.png differ
diff --git a/themes/VU2.b/images/owen.jpg b/themes/VU2.b/images/owen.jpg
new file mode 100644
index 000000000..d5e17652f
Binary files /dev/null and b/themes/VU2.b/images/owen.jpg differ
diff --git a/themes/VU2.b/images/pdf.png b/themes/VU2.b/images/pdf.png
new file mode 100644
index 000000000..96b519cff
Binary files /dev/null and b/themes/VU2.b/images/pdf.png differ
diff --git a/themes/VU2.b/images/peabody.jpg b/themes/VU2.b/images/peabody.jpg
new file mode 100644
index 000000000..d0d9196ef
Binary files /dev/null and b/themes/VU2.b/images/peabody.jpg differ
diff --git a/themes/VU2.b/images/search_icon_ffffff_20x20.png b/themes/VU2.b/images/search_icon_ffffff_20x20.png
new file mode 100644
index 000000000..e652b5536
Binary files /dev/null and b/themes/VU2.b/images/search_icon_ffffff_20x20.png differ
diff --git a/themes/VU2.b/images/text-give-now.png b/themes/VU2.b/images/text-give-now.png
new file mode 100644
index 000000000..f8cce3376
Binary files /dev/null and b/themes/VU2.b/images/text-give-now.png differ
diff --git a/themes/VU2.b/images/vanderbilt.jpg b/themes/VU2.b/images/vanderbilt.jpg
new file mode 100644
index 000000000..4682d5bf9
Binary files /dev/null and b/themes/VU2.b/images/vanderbilt.jpg differ
diff --git a/themes/VU2.b/images/video.png b/themes/VU2.b/images/video.png
new file mode 100644
index 000000000..2750dacca
Binary files /dev/null and b/themes/VU2.b/images/video.png differ
diff --git a/themes/VU2.b/node/node b/themes/VU2.b/node/node
new file mode 100644
index 000000000..777c92f57
Binary files /dev/null and b/themes/VU2.b/node/node differ
diff --git a/themes/VU2.b/node/npm/.npmignore b/themes/VU2.b/node/npm/.npmignore
new file mode 100644
index 000000000..7232cea50
--- /dev/null
+++ b/themes/VU2.b/node/npm/.npmignore
@@ -0,0 +1,27 @@
+*.swp
+.*.swp
+npm-debug.log
+/test/bin
+/test/output.log
+/test/packages/*/node_modules
+/test/packages/npm-test-depends-on-spark/which-spark.log
+/test/packages/test-package/random-data.txt
+/test/root
+node_modules/marked
+node_modules/ronn
+node_modules/tap
+node_modules/.bin
+node_modules/npm-registry-mock
+/npmrc
+/release/
+
+# don't need these in the npm package.
+html/*.png
+
+# don't ignore .npmignore files
+# these are used in some tests.
+!.npmignore
+
+/npm-*.tgz
+
+*.pyc
diff --git a/themes/VU2.b/node/npm/.npmrc b/themes/VU2.b/node/npm/.npmrc
new file mode 100644
index 000000000..ca0bc48dd
--- /dev/null
+++ b/themes/VU2.b/node/npm/.npmrc
@@ -0,0 +1,2 @@
+save-prefix = ~
+proprietary-attribs = false
diff --git a/themes/VU2.b/node/npm/.tern-project b/themes/VU2.b/node/npm/.tern-project
new file mode 100644
index 000000000..d31fd9d88
--- /dev/null
+++ b/themes/VU2.b/node/npm/.tern-project
@@ -0,0 +1,7 @@
+{
+ "libs": [
+ ],
+ "plugins": {
+ "node": {}
+ }
+}
\ No newline at end of file
diff --git a/themes/VU2.b/node/npm/.travis.yml b/themes/VU2.b/node/npm/.travis.yml
new file mode 100644
index 000000000..0fbe8dc33
--- /dev/null
+++ b/themes/VU2.b/node/npm/.travis.yml
@@ -0,0 +1,5 @@
+language: node_js
+script: "npm run-script tap"
+node_js:
+ - "0.11"
+ - "0.10"
diff --git a/themes/VU2.b/node/npm/AUTHORS b/themes/VU2.b/node/npm/AUTHORS
new file mode 100644
index 000000000..3c0c0b0ba
--- /dev/null
+++ b/themes/VU2.b/node/npm/AUTHORS
@@ -0,0 +1,158 @@
+# Authors sorted by whether or not they're me
+Isaac Z. Schlueter
+Steve Steiner
+Mikeal Rogers
+Aaron Blohowiak
+Martyn Smith
+Mathias Pettersson
+Brian Hammond
+Charlie Robbins
+Francisco Treacy
+Cliffano Subagio
+Christian Eager
+Dav Glass
+Alex K. Wolfe
+James Sanders
+Reid Burke
+Arlo Breault
+Timo Derstappen
+Bradley Meck
+Bart Teeuwisse
+Ben Noordhuis
+Tor Valamo
+Whyme.Lyu <5longluna@gmail.com>
+Olivier Melcher
+Tomaž Muraus
+Evan Meagher
+Orlando Vazquez
+George Miroshnykov
+Geoff Flarity
+Pete Kruckenberg
+Laurie Harper
+Chris Wong
+Max Goodman
+Scott Bronson
+Federico Romero
+Visnu Pitiyanuvath
+Irakli Gozalishvili
+Mark Cahill
+Zearin
+Iain Sproat
+Trent Mick
+Felix Geisendörfer
+Conny Brunnkvist
+Will Elwood
+Oleg Efimov
+Martin Cooper
+Jameson Little
+cspotcode
+Maciej Małecki
+Stephen Sugden
+Gautham Pai
+David Trejo
+Paul Vorbach
+George Ornbo
+Tim Oxley
+Tyler Green
+atomizer
+Rod Vagg
+Christian Howe
+Andrew Lunny
+Henrik Hodne
+Adam Blackburn
+Kris Windham
+Jens Grunert
+Joost-Wim Boekesteijn
+Dalmais Maxence
+Marcus Ekwall
+Aaron Stacy
+Phillip Howell
+Domenic Denicola
+James Halliday
+Jeremy Cantrell
+Ribettes
+Einar Otto Stangvik
+Don Park
+Kei Son
+Nicolas Morel
+Mark Dube
+Nathan Rajlich
+Maxim Bogushevich
+Justin Beckwith
+Meaglin
+Ben Evans
+Nathan Zadoks
+Brian White
+Jed Schmidt
+Ian Livingstone
+Patrick Pfeiffer
+Paul Miller
+seebees
+Carl Lange
+Jan Lehnardt
+Alexey Kreschuk
+Di Wu
+Florian Margaine
+Forbes Lindesay
+Ian Babrou
+Jaakko Manninen
+Johan Nordberg
+Johan Sköld
+Larz Conwell
+Luke Arduini
+Marcel Klehr
+Mathias Bynens
+Matt Lunn
+Matt McClure
+Nirk Niggler
+Paolo Fragomeni
+Jake Verbaten (Raynos)
+Robert Kowalski
+Schabse Laks
+Stuart Knightley
+Stuart P. Bentley
+Vaz Allen
+elisee
+Evan You
+Wil Moore III
+Dylan Greene
+zeke
+Andrew Horton
+Denis Gladkikh
+Daniel Santiago
+Alex Kocharin
+Evan Lucas
+Steve Mason
+Quinn Slack
+Sébastien Santoro
+CamilleM
+Tom Huang
+Sergey Belov
+Younghoon Park
+Yazhong Liu
+Mikola Lysenko
+Rafael de Oleza
+Yeonghoon Park
+Franck Cuny
+Alan Shaw
+Alex Rodionov
+Alexej Yaroshevich
+Elan Shanker
+François Frisch
+Gabriel Falkenberg
+Jason Diamond
+Jess Martin
+Jon Spencer
+Matt Colyer
+Matt McClure
+Maximilian Antoni
+Nicholas Kinsey
+Paulo Cesar
+Quim Calpe
+Robert Gieseke
+Spain Train
+TJ Holowaychuk
+Thom Blake
+Trevor Burnham
+bitspill
+Neil Gentleman
diff --git a/themes/VU2.b/node/npm/CONTRIBUTING.md b/themes/VU2.b/node/npm/CONTRIBUTING.md
new file mode 100644
index 000000000..0a5b53a12
--- /dev/null
+++ b/themes/VU2.b/node/npm/CONTRIBUTING.md
@@ -0,0 +1,9 @@
+## Before you submit a new issue
+
+* Check if there's a simple solution in the
+ [Troubleshooting](https://github.com/npm/npm/wiki/Troubleshooting)
+ wiki.
+* [Search for similar
+ issues](https://github.com/npm/npm/search?q=Similar%20issues&type=Issues).
+* Ensure your new issue conforms to the [Contributing
+ Guidelines](https://github.com/npm/npm/wiki/Contributing-Guidelines).
diff --git a/themes/VU2.b/node/npm/LICENSE b/themes/VU2.b/node/npm/LICENSE
new file mode 100644
index 000000000..b6e3548d1
--- /dev/null
+++ b/themes/VU2.b/node/npm/LICENSE
@@ -0,0 +1,263 @@
+Copyright (c) npm, Inc. and Contributors
+All rights reserved.
+
+npm is released under the Artistic License 2.0, subject to additional terms
+that are listed below.
+
+The text of the npm License follows and the text of the additional terms
+follows the Artistic License 2.0 terms:
+
+
+--------
+
+
+The Artistic License 2.0
+
+Copyright (c) 2000-2006, The Perl Foundation.
+
+Everyone is permitted to copy and distribute verbatim copies
+of this license document, but changing it is not allowed.
+
+Preamble
+
+This license establishes the terms under which a given free software
+Package may be copied, modified, distributed, and/or redistributed.
+The intent is that the Copyright Holder maintains some artistic
+control over the development of that Package while still keeping the
+Package available as open source and free software.
+
+You are always permitted to make arrangements wholly outside of this
+license directly with the Copyright Holder of a given Package. If the
+terms of this license do not permit the full use that you propose to
+make of the Package, you should contact the Copyright Holder and seek
+a different licensing arrangement.
+
+Definitions
+
+ "Copyright Holder" means the individual(s) or organization(s)
+ named in the copyright notice for the entire Package.
+
+ "Contributor" means any party that has contributed code or other
+ material to the Package, in accordance with the Copyright Holder's
+ procedures.
+
+ "You" and "your" means any person who would like to copy,
+ distribute, or modify the Package.
+
+ "Package" means the collection of files distributed by the
+ Copyright Holder, and derivatives of that collection and/or of
+ those files. A given Package may consist of either the Standard
+ Version, or a Modified Version.
+
+ "Distribute" means providing a copy of the Package or making it
+ accessible to anyone else, or in the case of a company or
+ organization, to others outside of your company or organization.
+
+ "Distributor Fee" means any fee that you charge for Distributing
+ this Package or providing support for this Package to another
+ party. It does not mean licensing fees.
+
+ "Standard Version" refers to the Package if it has not been
+ modified, or has been modified only in ways explicitly requested
+ by the Copyright Holder.
+
+ "Modified Version" means the Package, if it has been changed, and
+ such changes were not explicitly requested by the Copyright
+ Holder.
+
+ "Original License" means this Artistic License as Distributed with
+ the Standard Version of the Package, in its current version or as
+ it may be modified by The Perl Foundation in the future.
+
+ "Source" form means the source code, documentation source, and
+ configuration files for the Package.
+
+ "Compiled" form means the compiled bytecode, object code, binary,
+ or any other form resulting from mechanical transformation or
+ translation of the Source form.
+
+
+Permission for Use and Modification Without Distribution
+
+(1) You are permitted to use the Standard Version and create and use
+Modified Versions for any purpose without restriction, provided that
+you do not Distribute the Modified Version.
+
+
+Permissions for Redistribution of the Standard Version
+
+(2) You may Distribute verbatim copies of the Source form of the
+Standard Version of this Package in any medium without restriction,
+either gratis or for a Distributor Fee, provided that you duplicate
+all of the original copyright notices and associated disclaimers. At
+your discretion, such verbatim copies may or may not include a
+Compiled form of the Package.
+
+(3) You may apply any bug fixes, portability changes, and other
+modifications made available from the Copyright Holder. The resulting
+Package will still be considered the Standard Version, and as such
+will be subject to the Original License.
+
+
+Distribution of Modified Versions of the Package as Source
+
+(4) You may Distribute your Modified Version as Source (either gratis
+or for a Distributor Fee, and with or without a Compiled form of the
+Modified Version) provided that you clearly document how it differs
+from the Standard Version, including, but not limited to, documenting
+any non-standard features, executables, or modules, and provided that
+you do at least ONE of the following:
+
+ (a) make the Modified Version available to the Copyright Holder
+ of the Standard Version, under the Original License, so that the
+ Copyright Holder may include your modifications in the Standard
+ Version.
+
+ (b) ensure that installation of your Modified Version does not
+ prevent the user installing or running the Standard Version. In
+ addition, the Modified Version must bear a name that is different
+ from the name of the Standard Version.
+
+ (c) allow anyone who receives a copy of the Modified Version to
+ make the Source form of the Modified Version available to others
+ under
+
+ (i) the Original License or
+
+ (ii) a license that permits the licensee to freely copy,
+ modify and redistribute the Modified Version using the same
+ licensing terms that apply to the copy that the licensee
+ received, and requires that the Source form of the Modified
+ Version, and of any works derived from it, be made freely
+ available in that license fees are prohibited but Distributor
+ Fees are allowed.
+
+
+Distribution of Compiled Forms of the Standard Version
+or Modified Versions without the Source
+
+(5) You may Distribute Compiled forms of the Standard Version without
+the Source, provided that you include complete instructions on how to
+get the Source of the Standard Version. Such instructions must be
+valid at the time of your distribution. If these instructions, at any
+time while you are carrying out such distribution, become invalid, you
+must provide new instructions on demand or cease further distribution.
+If you provide valid instructions or cease distribution within thirty
+days after you become aware that the instructions are invalid, then
+you do not forfeit any of your rights under this license.
+
+(6) You may Distribute a Modified Version in Compiled form without
+the Source, provided that you comply with Section 4 with respect to
+the Source of the Modified Version.
+
+
+Aggregating or Linking the Package
+
+(7) You may aggregate the Package (either the Standard Version or
+Modified Version) with other packages and Distribute the resulting
+aggregation provided that you do not charge a licensing fee for the
+Package. Distributor Fees are permitted, and licensing fees for other
+components in the aggregation are permitted. The terms of this license
+apply to the use and Distribution of the Standard or Modified Versions
+as included in the aggregation.
+
+(8) You are permitted to link Modified and Standard Versions with
+other works, to embed the Package in a larger work of your own, or to
+build stand-alone binary or bytecode versions of applications that
+include the Package, and Distribute the result without restriction,
+provided the result does not expose a direct interface to the Package.
+
+
+Items That are Not Considered Part of a Modified Version
+
+(9) Works (including, but not limited to, modules and scripts) that
+merely extend or make use of the Package, do not, by themselves, cause
+the Package to be a Modified Version. In addition, such works are not
+considered parts of the Package itself, and are not subject to the
+terms of this license.
+
+
+General Provisions
+
+(10) Any use, modification, and distribution of the Standard or
+Modified Versions is governed by this Artistic License. By using,
+modifying or distributing the Package, you accept this license. Do not
+use, modify, or distribute the Package, if you do not accept this
+license.
+
+(11) If your Modified Version has been derived from a Modified
+Version made by someone other than you, you are nevertheless required
+to ensure that your Modified Version complies with the requirements of
+this license.
+
+(12) This license does not grant you the right to use any trademark,
+service mark, tradename, or logo of the Copyright Holder.
+
+(13) This license includes the non-exclusive, worldwide,
+free-of-charge patent license to make, have made, use, offer to sell,
+sell, import and otherwise transfer the Package with respect to any
+patent claims licensable by the Copyright Holder that are necessarily
+infringed by the Package. If you institute patent litigation
+(including a cross-claim or counterclaim) against any party alleging
+that the Package constitutes direct or contributory patent
+infringement, then this Artistic License to you shall terminate on the
+date that such litigation is filed.
+
+(14) Disclaimer of Warranty:
+THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS
+IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR
+NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL
+LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL
+BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF
+ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+--------
+
+
+The following additional terms shall apply to use of the npm software, the npm
+website, the npm repository and any other services or products offered by npm,
+Inc.:
+
+"Node.js" trademark Joyent, Inc. npm is not officially part of the Node.js
+project, and is neither owned by nor affiliated with Joyent, Inc.
+
+"npm" and "The npm Registry" are owned by npm, Inc. All rights reserved.
+
+Modules published on the npm registry are not officially endorsed by npm, Inc.
+or the Node.js project.
+
+Data published to the npm registry is not part of npm itself, and is the sole
+property of the publisher. While every effort is made to ensure accountability,
+there is absolutely no guarantee, warrantee, or assertion expressed or implied
+as to the quality, fitness for a specific purpose, or lack of malice in any
+given npm package. Packages downloaded through the npm registry are
+independently licensed and are not covered by this license.
+
+Additional policies relating to, and restrictions on use of, npm products and
+services are available on the npm website. All such policies and restrictions,
+as updated from time to time, are hereby incorporated into this license
+agreement. By using npm, you acknowledge your agreement to all such policies
+and restrictions.
+
+If you have a complaint about a package in the public npm registry, and cannot
+resolve it with the package owner, please email support@npmjs.com and explain
+the situation. See the [npm Dispute Resolution
+policy](https://github.com/npm/policies/blob/master/disputes.md) for more
+details.
+
+Any data published to The npm Registry (including user account information) may
+be removed or modified at the sole discretion of the npm server administrators.
+
+"npm Logo" created by Mathias Pettersson and Brian Hammond,
+used with permission.
+
+"Gubblebum Blocky" font
+Copyright (c) by Tjarda Koster, http://jelloween.deviantart.com
+included for use in the npm website and documentation,
+used with permission.
+
+This program uses several Node modules contained in the node_modules/
+subdirectory, according to the terms of their respective licenses.
diff --git a/themes/VU2.b/node/npm/Makefile b/themes/VU2.b/node/npm/Makefile
new file mode 100644
index 000000000..78014d5c7
--- /dev/null
+++ b/themes/VU2.b/node/npm/Makefile
@@ -0,0 +1,218 @@
+# vim: set softtabstop=2 shiftwidth=2:
+SHELL = bash
+
+markdowns = $(shell find doc -name '*.md' | grep -v 'index') README.md
+
+html_docdeps = html/dochead.html \
+ html/docfoot.html \
+ scripts/doc-build.sh \
+ package.json
+
+cli_mandocs = $(shell find doc/cli -name '*.md' \
+ |sed 's|.md|.1|g' \
+ |sed 's|doc/cli/|man/man1/|g' ) \
+ man/man1/npm-README.1
+
+api_mandocs = $(shell find doc/api -name '*.md' \
+ |sed 's|.md|.3|g' \
+ |sed 's|doc/api/|man/man3/|g' )
+
+files_mandocs = $(shell find doc/files -name '*.md' \
+ |sed 's|.md|.5|g' \
+ |sed 's|doc/files/|man/man5/|g' ) \
+ man/man5/npm-json.5 \
+ man/man5/npm-global.5
+
+misc_mandocs = $(shell find doc/misc -name '*.md' \
+ |sed 's|.md|.7|g' \
+ |sed 's|doc/misc/|man/man7/|g' ) \
+ man/man7/npm-index.7
+
+cli_htmldocs = $(shell find doc/cli -name '*.md' \
+ |sed 's|.md|.html|g' \
+ |sed 's|doc/cli/|html/doc/cli/|g' ) \
+ html/doc/README.html
+
+api_htmldocs = $(shell find doc/api -name '*.md' \
+ |sed 's|.md|.html|g' \
+ |sed 's|doc/api/|html/doc/api/|g' )
+
+files_htmldocs = $(shell find doc/files -name '*.md' \
+ |sed 's|.md|.html|g' \
+ |sed 's|doc/files/|html/doc/files/|g' ) \
+ html/doc/files/npm-json.html \
+ html/doc/files/npm-global.html
+
+misc_htmldocs = $(shell find doc/misc -name '*.md' \
+ |sed 's|.md|.html|g' \
+ |sed 's|doc/misc/|html/doc/misc/|g' ) \
+ html/doc/index.html
+
+mandocs = $(api_mandocs) $(cli_mandocs) $(files_mandocs) $(misc_mandocs)
+
+htmldocs = $(api_htmldocs) $(cli_htmldocs) $(files_htmldocs) $(misc_htmldocs)
+
+all: doc
+
+latest:
+ @echo "Installing latest published npm"
+ @echo "Use 'make install' or 'make link' to install the code"
+ @echo "in this folder that you're looking at right now."
+ node cli.js install -g -f npm
+
+install: docclean all
+ node cli.js install -g -f
+
+# backwards compat
+dev: install
+
+link: uninstall
+ node cli.js link -f
+
+clean: markedclean ronnclean doc-clean uninstall
+ rm -rf npmrc
+ node cli.js cache clean
+
+uninstall:
+ node cli.js rm npm -g -f
+
+doc: $(mandocs) $(htmldocs)
+
+markedclean:
+ rm -rf node_modules/marked node_modules/.bin/marked .building_marked
+
+ronnclean:
+ rm -rf node_modules/ronn node_modules/.bin/ronn .building_ronn
+
+docclean: doc-clean
+doc-clean:
+ rm -rf \
+ .building_marked \
+ .building_ronn \
+ html/doc \
+ html/api \
+ man
+
+# use `npm install ronn` for this to work.
+man/man1/npm-README.1: README.md scripts/doc-build.sh package.json
+ @[ -d man/man1 ] || mkdir -p man/man1
+ scripts/doc-build.sh $< $@
+
+man/man1/%.1: doc/cli/%.md scripts/doc-build.sh package.json
+ @[ -d man/man1 ] || mkdir -p man/man1
+ scripts/doc-build.sh $< $@
+
+man/man3/%.3: doc/api/%.md scripts/doc-build.sh package.json
+ @[ -d man/man3 ] || mkdir -p man/man3
+ scripts/doc-build.sh $< $@
+
+man/man5/npm-json.5: man/man5/package.json.5
+ cp $< $@
+
+man/man5/npm-global.5: man/man5/npm-folders.5
+ cp $< $@
+
+man/man5/%.5: doc/files/%.md scripts/doc-build.sh package.json
+ @[ -d man/man5 ] || mkdir -p man/man5
+ scripts/doc-build.sh $< $@
+
+doc/misc/npm-index.md: scripts/index-build.js package.json
+ node scripts/index-build.js > $@
+
+html/doc/index.html: doc/misc/npm-index.md $(html_docdeps)
+ @[ -d html/doc ] || mkdir -p html/doc
+ scripts/doc-build.sh $< $@
+
+man/man7/%.7: doc/misc/%.md scripts/doc-build.sh package.json
+ @[ -d man/man7 ] || mkdir -p man/man7
+ scripts/doc-build.sh $< $@
+
+html/doc/README.html: README.md $(html_docdeps)
+ @[ -d html/doc ] || mkdir -p html/doc
+ scripts/doc-build.sh $< $@
+
+html/doc/cli/%.html: doc/cli/%.md $(html_docdeps)
+ @[ -d html/doc/cli ] || mkdir -p html/doc/cli
+ scripts/doc-build.sh $< $@
+
+html/doc/api/%.html: doc/api/%.md $(html_docdeps)
+ @[ -d html/doc/api ] || mkdir -p html/doc/api
+ scripts/doc-build.sh $< $@
+
+html/doc/files/npm-json.html: html/doc/files/package.json.html
+ cp $< $@
+html/doc/files/npm-global.html: html/doc/files/npm-folders.html
+ cp $< $@
+
+html/doc/files/%.html: doc/files/%.md $(html_docdeps)
+ @[ -d html/doc/files ] || mkdir -p html/doc/files
+ scripts/doc-build.sh $< $@
+
+html/doc/misc/%.html: doc/misc/%.md $(html_docdeps)
+ @[ -d html/doc/misc ] || mkdir -p html/doc/misc
+ scripts/doc-build.sh $< $@
+
+
+marked: node_modules/.bin/marked
+
+node_modules/.bin/marked:
+ node cli.js install marked --no-global
+
+ronn: node_modules/.bin/ronn
+
+node_modules/.bin/ronn:
+ node cli.js install ronn --no-global
+
+doc: man
+
+man: $(cli_docs) $(api_docs)
+
+test: doc
+ node cli.js test
+
+publish: link doc
+ @git push origin :v$(shell npm -v) 2>&1 || true
+ @npm unpublish npm@$(shell npm -v) 2>&1 || true
+ git clean -fd &&\
+ git push origin &&\
+ git push origin --tags &&\
+ npm publish &&\
+ make doc-publish
+
+docpublish: doc-publish
+doc-publish: doc
+ # legacy urls
+ for f in $$(find html/doc/{cli,files,misc}/ -name '*.html'); do \
+ j=$$(basename $$f | sed 's|^npm-||g'); \
+ if ! [ -f html/doc/$$j ] && [ $$j != README.html ] && [ $$j != index.html ]; then \
+ perl -pi -e 's/ href="\.\.\// href="/g' <$$f >html/doc/$$j; \
+ fi; \
+ done
+ mkdir -p html/api
+ for f in $$(find html/doc/api/ -name '*.html'); do \
+ j=$$(basename $$f | sed 's|^npm-||g'); \
+ perl -pi -e 's/ href="\.\.\// href="/g' <$$f >html/api/$$j; \
+ done
+ rsync -vazu --stats --no-implied-dirs --delete \
+ html/doc/* \
+ ../npm-www/doc
+ rsync -vazu --stats --no-implied-dirs --delete \
+ html/static/style.css \
+ ../npm-www/static/
+ #cleanup
+ rm -rf html/api
+ for f in html/doc/*.html; do \
+ case $$f in \
+ html/doc/README.html) continue ;; \
+ html/doc/index.html) continue ;; \
+ *) rm $$f ;; \
+ esac; \
+ done
+
+release:
+ @bash scripts/release.sh
+
+sandwich:
+ @[ $$(whoami) = "root" ] && (echo "ok"; echo "ham" > sandwich) || (echo "make it yourself" && exit 13)
+
+.PHONY: all latest install dev link doc clean uninstall test man doc-publish doc-clean docclean docpublish release
diff --git a/themes/VU2.b/node/npm/README.md b/themes/VU2.b/node/npm/README.md
new file mode 100644
index 000000000..0c08862fc
--- /dev/null
+++ b/themes/VU2.b/node/npm/README.md
@@ -0,0 +1,245 @@
+npm(1) -- node package manager
+==============================
+[](https://travis-ci.org/npm/npm)
+## SYNOPSIS
+
+This is just enough info to get you up and running.
+
+Much more info available via `npm help` once it's installed.
+
+## IMPORTANT
+
+**You need node v0.8 or higher to run this program.**
+
+To install an old **and unsupported** version of npm that works on node 0.3
+and prior, clone the git repo and dig through the old tags and branches.
+
+## Super Easy Install
+
+npm comes with node now.
+
+### Windows Computers
+
+Get the MSI. npm is in it.
+
+### Apple Macintosh Computers
+
+Get the pkg. npm is in it.
+
+### Other Sorts of Unices
+
+Run `make install`. npm will be installed with node.
+
+If you want a more fancy pants install (a different version, customized
+paths, etc.) then read on.
+
+## Fancy Install (Unix)
+
+There's a pretty robust install script at
+. You can download that and run it.
+
+Here's an example using curl:
+
+ curl -L https://npmjs.org/install.sh | sh
+
+### Slightly Fancier
+
+You can set any npm configuration params with that script:
+
+ npm_config_prefix=/some/path sh install.sh
+
+Or, you can run it in uber-debuggery mode:
+
+ npm_debug=1 sh install.sh
+
+### Even Fancier
+
+Get the code with git. Use `make` to build the docs and do other stuff.
+If you plan on hacking on npm, `make link` is your friend.
+
+If you've got the npm source code, you can also semi-permanently set
+arbitrary config keys using the `./configure --key=val ...`, and then
+run npm commands by doing `node cli.js `. (This is helpful
+for testing, or running stuff without actually installing npm itself.)
+
+## Fancy Windows Install
+
+You can download a zip file from , and unpack it
+in the same folder where node.exe lives.
+
+If that's not fancy enough for you, then you can fetch the code with
+git, and mess with it directly.
+
+## Installing on Cygwin
+
+No.
+
+## Permissions when Using npm to Install Other Stuff
+
+**tl;dr**
+
+* Use `sudo` for greater safety. Or don't, if you prefer not to.
+* npm will downgrade permissions if it's root before running any build
+ scripts that package authors specified.
+
+### More details...
+
+As of version 0.3, it is recommended to run npm as root.
+This allows npm to change the user identifier to the `nobody` user prior
+to running any package build or test commands.
+
+If you are not the root user, or if you are on a platform that does not
+support uid switching, then npm will not attempt to change the userid.
+
+If you would like to ensure that npm **always** runs scripts as the
+"nobody" user, and have it fail if it cannot downgrade permissions, then
+set the following configuration param:
+
+ npm config set unsafe-perm false
+
+This will prevent running in unsafe mode, even as non-root users.
+
+## Uninstalling
+
+So sad to see you go.
+
+ sudo npm uninstall npm -g
+
+Or, if that fails,
+
+ sudo make uninstall
+
+## More Severe Uninstalling
+
+Usually, the above instructions are sufficient. That will remove
+npm, but leave behind anything you've installed.
+
+If you would like to remove all the packages that you have installed,
+then you can use the `npm ls` command to find them, and then `npm rm` to
+remove them.
+
+To remove cruft left behind by npm 0.x, you can use the included
+`clean-old.sh` script file. You can run it conveniently like this:
+
+ npm explore npm -g -- sh scripts/clean-old.sh
+
+npm uses two configuration files, one for per-user configs, and another
+for global (every-user) configs. You can view them by doing:
+
+ npm config get userconfig # defaults to ~/.npmrc
+ npm config get globalconfig # defaults to /usr/local/etc/npmrc
+
+Uninstalling npm does not remove configuration files by default. You
+must remove them yourself manually if you want them gone. Note that
+this means that future npm installs will not remember the settings that
+you have chosen.
+
+## Using npm Programmatically
+
+If you would like to use npm programmatically, you can do that.
+It's not very well documented, but it *is* rather simple.
+
+Most of the time, unless you actually want to do all the things that
+npm does, you should try using one of npm's dependencies rather than
+using npm itself, if possible.
+
+Eventually, npm will be just a thin cli wrapper around the modules
+that it depends on, but for now, there are some things that you must
+use npm itself to do.
+
+ var npm = require("npm")
+ npm.load(myConfigObject, function (er) {
+ if (er) return handlError(er)
+ npm.commands.install(["some", "args"], function (er, data) {
+ if (er) return commandFailed(er)
+ // command succeeded, and data might have some info
+ })
+ npm.on("log", function (message) { .... })
+ })
+
+The `load` function takes an object hash of the command-line configs.
+The various `npm.commands.` functions take an **array** of
+positional argument **strings**. The last argument to any
+`npm.commands.` function is a callback. Some commands take other
+optional arguments. Read the source.
+
+You cannot set configs individually for any single npm function at this
+time. Since `npm` is a singleton, any call to `npm.config.set` will
+change the value for *all* npm commands in that process.
+
+See `./bin/npm-cli.js` for an example of pulling config values off of the
+command line arguments using nopt. You may also want to check out `npm
+help config` to learn about all the options you can set there.
+
+## More Docs
+
+Check out the [docs](https://www.npmjs.org/doc/),
+especially the [faq](https://www.npmjs.org/doc/faq.html).
+
+You can use the `npm help` command to read any of them.
+
+If you're a developer, and you want to use npm to publish your program,
+you should [read this](https://www.npmjs.org/doc/developers.html)
+
+## Legal Stuff
+
+"npm" and "The npm Registry" are owned by npm, Inc.
+All rights reserved. See the included LICENSE file for more details.
+
+"Node.js" and "node" are trademarks owned by Joyent, Inc.
+
+Modules published on the npm registry are not officially endorsed by
+npm, Inc. or the Node.js project.
+
+Data published to the npm registry is not part of npm itself, and is
+the sole property of the publisher. While every effort is made to
+ensure accountability, there is absolutely no guarantee, warrantee, or
+assertion expressed or implied as to the quality, fitness for a
+specific purpose, or lack of malice in any given npm package.
+
+If you have a complaint about a package in the public npm registry,
+and cannot [resolve it with the package
+owner](https://www.npmjs.org/doc/misc/npm-disputes.html), please email
+ and explain the situation.
+
+Any data published to The npm Registry (including user account
+information) may be removed or modified at the sole discretion of the
+npm server administrators.
+
+### In plainer english
+
+npm is the property of npm, Inc.
+
+If you publish something, it's yours, and you are solely accountable
+for it.
+
+If other people publish something, it's theirs.
+
+Users can publish Bad Stuff. It will be removed promptly if reported.
+But there is no vetting process for published modules, and you use
+them at your own risk. Please inspect the source.
+
+If you publish Bad Stuff, we may delete it from the registry, or even
+ban your account in extreme cases. So don't do that.
+
+## BUGS
+
+When you find issues, please report them:
+
+* web:
+
+* email:
+
+
+Be sure to include *all* of the output from the npm command that didn't work
+as expected. The `npm-debug.log` file is also helpful to provide.
+
+You can also look for isaacs in #node.js on irc://irc.freenode.net. He
+will no doubt tell you to put the output in a gist or email.
+
+## SEE ALSO
+
+* npm(1)
+* npm-faq(7)
+* npm-help(1)
+* npm-index(7)
diff --git a/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp b/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp
new file mode 100644
index 000000000..345f07a18
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp
@@ -0,0 +1,2 @@
+#!/usr/bin/env sh
+node "`dirname "$0"`/../../node_modules/node-gyp/bin/node-gyp.js" "$@"
diff --git a/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp.cmd b/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp.cmd
new file mode 100644
index 000000000..0e76efc2e
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/node-gyp-bin/node-gyp.cmd
@@ -0,0 +1 @@
+node "%~dp0\..\..\node_modules\node-gyp\bin\node-gyp.js" %*
diff --git a/themes/VU2.b/node/npm/bin/npm b/themes/VU2.b/node/npm/bin/npm
new file mode 100644
index 000000000..d020ccfe7
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/npm
@@ -0,0 +1,14 @@
+#!/bin/sh
+(set -o igncr) 2>/dev/null && set -o igncr; # cygwin encoding fix
+
+basedir=`dirname "$0"`
+
+case `uname` in
+ *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
+esac
+
+if [ -x "$basedir/node.exe" ]; then
+ "$basedir/node.exe" "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
+else
+ node "$basedir/node_modules/npm/bin/npm-cli.js" "$@"
+fi
diff --git a/themes/VU2.b/node/npm/bin/npm-cli.js b/themes/VU2.b/node/npm/bin/npm-cli.js
new file mode 100644
index 000000000..ef8873542
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/npm-cli.js
@@ -0,0 +1,86 @@
+#!/usr/bin/env node
+;(function () { // wrapper in case we're in module_context mode
+
+// windows: running "npm blah" in this folder will invoke WSH, not node.
+if (typeof WScript !== "undefined") {
+ WScript.echo("npm does not work when run\n"
+ +"with the Windows Scripting Host\n\n"
+ +"'cd' to a different directory,\n"
+ +"or type 'npm.cmd ',\n"
+ +"or type 'node npm '.")
+ WScript.quit(1)
+ return
+}
+
+
+process.title = "npm"
+
+var log = require("npmlog")
+log.pause() // will be unpaused when config is loaded.
+log.info("it worked if it ends with", "ok")
+
+var fs = require("graceful-fs")
+ , path = require("path")
+ , npm = require("../lib/npm.js")
+ , npmconf = require("npmconf")
+ , errorHandler = require("../lib/utils/error-handler.js")
+
+ , configDefs = npmconf.defs
+ , shorthands = configDefs.shorthands
+ , types = configDefs.types
+ , nopt = require("nopt")
+
+// if npm is called as "npmg" or "npm_g", then
+// run in global mode.
+if (path.basename(process.argv[1]).slice(-1) === "g") {
+ process.argv.splice(1, 1, "npm", "-g")
+}
+
+log.verbose("cli", process.argv)
+
+var conf = nopt(types, shorthands)
+npm.argv = conf.argv.remain
+if (npm.deref(npm.argv[0])) npm.command = npm.argv.shift()
+else conf.usage = true
+
+
+if (conf.version) {
+ console.log(npm.version)
+ return
+}
+
+if (conf.versions) {
+ npm.command = "version"
+ conf.usage = false
+ npm.argv = []
+}
+
+log.info("using", "npm@%s", npm.version)
+log.info("using", "node@%s", process.version)
+
+// make sure that this version of node works with this version of npm.
+var semver = require("semver")
+ , nodeVer = process.version
+ , reqVer = npm.nodeVersionRequired
+if (reqVer && !semver.satisfies(nodeVer, reqVer)) {
+ return errorHandler(new Error(
+ "npm doesn't work with node " + nodeVer
+ + "\nRequired: node@" + reqVer), true)
+}
+
+process.on("uncaughtException", errorHandler)
+
+if (conf.usage && npm.command !== "help") {
+ npm.argv.unshift(npm.command)
+ npm.command = "help"
+}
+
+// now actually fire up npm and run the command.
+// this is how to use npm programmatically:
+conf._exit = true
+npm.load(conf, function (er) {
+ if (er) return errorHandler(er)
+ npm.commands[npm.command](npm.argv, errorHandler)
+})
+
+})()
diff --git a/themes/VU2.b/node/npm/bin/npm.cmd b/themes/VU2.b/node/npm/bin/npm.cmd
new file mode 100644
index 000000000..d490246b9
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/npm.cmd
@@ -0,0 +1,6 @@
+:: Created by npm, please don't edit manually.
+@IF EXIST "%~dp0\node.exe" (
+ "%~dp0\node.exe" "%~dp0\.\node_modules\npm\bin\npm-cli.js" %*
+) ELSE (
+ node "%~dp0\.\node_modules\npm\bin\npm-cli.js" %*
+)
diff --git a/themes/VU2.b/node/npm/bin/read-package-json.js b/themes/VU2.b/node/npm/bin/read-package-json.js
new file mode 100644
index 000000000..3e5a0c77f
--- /dev/null
+++ b/themes/VU2.b/node/npm/bin/read-package-json.js
@@ -0,0 +1,22 @@
+var argv = process.argv
+if (argv.length < 3) {
+ console.error("Usage: read-package.json [ ...]")
+ process.exit(1)
+}
+
+var fs = require("fs")
+ , file = argv[2]
+ , readJson = require("read-package-json")
+
+readJson(file, function (er, data) {
+ if (er) throw er
+ if (argv.length === 3) console.log(data)
+ else argv.slice(3).forEach(function (field) {
+ field = field.split(".")
+ var val = data
+ field.forEach(function (f) {
+ val = val[f]
+ })
+ console.log(val)
+ })
+})
diff --git a/themes/VU2.b/node/npm/cli.js b/themes/VU2.b/node/npm/cli.js
new file mode 100644
index 000000000..0df931e35
--- /dev/null
+++ b/themes/VU2.b/node/npm/cli.js
@@ -0,0 +1,2 @@
+#!/usr/bin/env node
+require("./bin/npm-cli.js")
diff --git a/themes/VU2.b/node/npm/configure b/themes/VU2.b/node/npm/configure
new file mode 100644
index 000000000..b13c8d0d7
--- /dev/null
+++ b/themes/VU2.b/node/npm/configure
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+# set configurations that will be "sticky" on this system,
+# surviving npm self-updates.
+
+CONFIGS=()
+i=0
+
+# get the location of this file.
+unset CDPATH
+CONFFILE=$(cd $(dirname "$0"); pwd -P)/npmrc
+
+while [ $# -gt 0 ]; do
+ conf="$1"
+ case $conf in
+ --help)
+ echo "./configure --param=value ..."
+ exit 0
+ ;;
+ --*)
+ CONFIGS[$i]="${conf:2}"
+ ;;
+ *)
+ CONFIGS[$i]="$conf"
+ ;;
+ esac
+ let i++
+ shift
+done
+
+for c in "${CONFIGS[@]}"; do
+ echo "$c" >> "$CONFFILE"
+done
diff --git a/themes/VU2.b/node/npm/doc/api/npm-bin.md b/themes/VU2.b/node/npm/doc/api/npm-bin.md
new file mode 100644
index 000000000..f3dc48286
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-bin.md
@@ -0,0 +1,13 @@
+npm-bin(3) -- Display npm bin folder
+====================================
+
+## SYNOPSIS
+
+ npm.commands.bin(args, cb)
+
+## DESCRIPTION
+
+Print the folder where npm will install executables.
+
+This function should not be used programmatically. Instead, just refer
+to the `npm.bin` member.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-bugs.md b/themes/VU2.b/node/npm/doc/api/npm-bugs.md
new file mode 100644
index 000000000..cc4db8f9e
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-bugs.md
@@ -0,0 +1,19 @@
+npm-bugs(3) -- Bugs for a package in a web browser maybe
+========================================================
+
+## SYNOPSIS
+
+ npm.commands.bugs(package, callback)
+
+## DESCRIPTION
+
+This command tries to guess at the likely location of a package's
+bug tracker URL, and then tries to open it using the `--browser`
+config param.
+
+Like other commands, the first parameter is an array. This command only
+uses the first element, which is expected to be a package name with an
+optional version number.
+
+This command will launch a browser, so this command may not be the most
+friendly for programmatic use.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-cache.md b/themes/VU2.b/node/npm/doc/api/npm-cache.md
new file mode 100644
index 000000000..e7079d8c1
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-cache.md
@@ -0,0 +1,30 @@
+npm-cache(3) -- manage the npm cache programmatically
+=====================================================
+
+## SYNOPSIS
+
+ npm.commands.cache([args], callback)
+
+ // helpers
+ npm.commands.cache.clean([args], callback)
+ npm.commands.cache.add([args], callback)
+ npm.commands.cache.read(name, version, forceBypass, callback)
+
+## DESCRIPTION
+
+This acts much the same ways as the npm-cache(1) command line
+functionality.
+
+The callback is called with the package.json data of the thing that is
+eventually added to or read from the cache.
+
+The top level `npm.commands.cache(...)` functionality is a public
+interface, and like all commands on the `npm.commands` object, it will
+match the command line behavior exactly.
+
+However, the cache folder structure and the cache helper functions are
+considered **internal** API surface, and as such, may change in future
+releases of npm, potentially without warning or significant version
+incrementation.
+
+Use at your own risk.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-commands.md b/themes/VU2.b/node/npm/doc/api/npm-commands.md
new file mode 100644
index 000000000..36dcfd8d6
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-commands.md
@@ -0,0 +1,22 @@
+npm-commands(3) -- npm commands
+===============================
+
+## SYNOPSIS
+
+ npm.commands[](args, callback)
+
+## DESCRIPTION
+
+npm comes with a full set of commands, and each of the commands takes a
+similar set of arguments.
+
+In general, all commands on the command object take an **array** of positional
+argument **strings**. The last argument to any function is a callback. Some
+commands are special and take other optional arguments.
+
+All commands have their own man page. See `man npm-` for command-line
+usage, or `man 3 npm-` for programmatic usage.
+
+## SEE ALSO
+
+* npm-index(7)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-config.md b/themes/VU2.b/node/npm/doc/api/npm-config.md
new file mode 100644
index 000000000..7ae227428
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-config.md
@@ -0,0 +1,45 @@
+npm-config(3) -- Manage the npm configuration files
+===================================================
+
+## SYNOPSIS
+
+ npm.commands.config(args, callback)
+ var val = npm.config.get(key)
+ npm.config.set(key, val)
+
+## DESCRIPTION
+
+This function acts much the same way as the command-line version. The first
+element in the array tells config what to do. Possible values are:
+
+* `set`
+
+ Sets a config parameter. The second element in `args` is interpreted as the
+ key, and the third element is interpreted as the value.
+
+* `get`
+
+ Gets the value of a config parameter. The second element in `args` is the
+ key to get the value of.
+
+* `delete` (`rm` or `del`)
+
+ Deletes a parameter from the config. The second element in `args` is the
+ key to delete.
+
+* `list` (`ls`)
+
+ Show all configs that aren't secret. No parameters necessary.
+
+* `edit`:
+
+ Opens the config file in the default editor. This command isn't very useful
+ programmatically, but it is made available.
+
+To programmatically access npm configuration settings, or set them for
+the duration of a program, use the `npm.config.set` and `npm.config.get`
+functions instead.
+
+## SEE ALSO
+
+* npm(3)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-deprecate.md b/themes/VU2.b/node/npm/doc/api/npm-deprecate.md
new file mode 100644
index 000000000..200fb9c30
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-deprecate.md
@@ -0,0 +1,34 @@
+npm-deprecate(3) -- Deprecate a version of a package
+====================================================
+
+## SYNOPSIS
+
+ npm.commands.deprecate(args, callback)
+
+## DESCRIPTION
+
+This command will update the npm registry entry for a package, providing
+a deprecation warning to all who attempt to install it.
+
+The 'args' parameter must have exactly two elements:
+
+* `package[@version]`
+
+ The `version` portion is optional, and may be either a range, or a
+ specific version, or a tag.
+
+* `message`
+
+ The warning message that will be printed whenever a user attempts to
+ install the package.
+
+Note that you must be the package owner to deprecate something. See the
+`owner` and `adduser` help topics.
+
+To un-deprecate a package, specify an empty string (`""`) for the `message` argument.
+
+## SEE ALSO
+
+* npm-publish(3)
+* npm-unpublish(3)
+* npm-registry(7)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-docs.md b/themes/VU2.b/node/npm/doc/api/npm-docs.md
new file mode 100644
index 000000000..2c5fc5e63
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-docs.md
@@ -0,0 +1,19 @@
+npm-docs(3) -- Docs for a package in a web browser maybe
+========================================================
+
+## SYNOPSIS
+
+ npm.commands.docs(package, callback)
+
+## DESCRIPTION
+
+This command tries to guess at the likely location of a package's
+documentation URL, and then tries to open it using the `--browser`
+config param.
+
+Like other commands, the first parameter is an array. This command only
+uses the first element, which is expected to be a package name with an
+optional version number.
+
+This command will launch a browser, so this command may not be the most
+friendly for programmatic use.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-edit.md b/themes/VU2.b/node/npm/doc/api/npm-edit.md
new file mode 100644
index 000000000..b13fbb857
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-edit.md
@@ -0,0 +1,24 @@
+npm-edit(3) -- Edit an installed package
+========================================
+
+## SYNOPSIS
+
+ npm.commands.edit(package, callback)
+
+## DESCRIPTION
+
+Opens the package folder in the default editor (or whatever you've
+configured as the npm `editor` config -- see `npm help config`.)
+
+After it has been edited, the package is rebuilt so as to pick up any
+changes in compiled packages.
+
+For instance, you can do `npm install connect` to install connect
+into your package, and then `npm.commands.edit(["connect"], callback)`
+to make a few changes to your locally installed copy.
+
+The first parameter is a string array with a single element, the package
+to open. The package can optionally have a version number attached.
+
+Since this command opens an editor in a new process, be careful about where
+and how this is used.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-explore.md b/themes/VU2.b/node/npm/doc/api/npm-explore.md
new file mode 100644
index 000000000..a239f3df3
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-explore.md
@@ -0,0 +1,18 @@
+npm-explore(3) -- Browse an installed package
+=============================================
+
+## SYNOPSIS
+
+ npm.commands.explore(args, callback)
+
+## DESCRIPTION
+
+Spawn a subshell in the directory of the installed package specified.
+
+If a command is specified, then it is run in the subshell, which then
+immediately terminates.
+
+Note that the package is *not* automatically rebuilt afterwards, so be
+sure to use `npm rebuild ` if you make any changes.
+
+The first element in the 'args' parameter must be a package name. After that is the optional command, which can be any number of strings. All of the strings will be combined into one, space-delimited command.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-help-search.md b/themes/VU2.b/node/npm/doc/api/npm-help-search.md
new file mode 100644
index 000000000..5c00cfc17
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-help-search.md
@@ -0,0 +1,30 @@
+npm-help-search(3) -- Search the help pages
+===========================================
+
+## SYNOPSIS
+
+ npm.commands.helpSearch(args, [silent,] callback)
+
+## DESCRIPTION
+
+This command is rarely useful, but it exists in the rare case that it is.
+
+This command takes an array of search terms and returns the help pages that
+match in order of best match.
+
+If there is only one match, then npm displays that help section. If there
+are multiple results, the results are printed to the screen formatted and the
+array of results is returned. Each result is an object with these properties:
+
+* hits:
+ A map of args to number of hits on that arg. For example, {"npm": 3}
+* found:
+ Total number of unique args that matched.
+* totalHits:
+ Total number of hits.
+* lines:
+ An array of all matching lines (and some adjacent lines).
+* file:
+ Name of the file that matched
+
+The silent parameter is not neccessary not used, but it may in the future.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-init.md b/themes/VU2.b/node/npm/doc/api/npm-init.md
new file mode 100644
index 000000000..9b75bf791
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-init.md
@@ -0,0 +1,29 @@
+npm init(3) -- Interactively create a package.json file
+=======================================================
+
+## SYNOPSIS
+
+ npm.commands.init(args, callback)
+
+## DESCRIPTION
+
+This will ask you a bunch of questions, and then write a package.json for you.
+
+It attempts to make reasonable guesses about what you want things to be set to,
+and then writes a package.json file with the options you've selected.
+
+If you already have a package.json file, it'll read that first, and default to
+the options in there.
+
+It is strictly additive, so it does not delete options from your package.json
+without a really good reason to do so.
+
+Since this function expects to be run on the command-line, it doesn't work very
+well as a programmatically. The best option is to roll your own, and since
+JavaScript makes it stupid simple to output formatted JSON, that is the
+preferred method. If you're sure you want to handle command-line prompting,
+then go ahead and use this programmatically.
+
+## SEE ALSO
+
+package.json(5)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-install.md b/themes/VU2.b/node/npm/doc/api/npm-install.md
new file mode 100644
index 000000000..12f665a76
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-install.md
@@ -0,0 +1,19 @@
+npm-install(3) -- install a package programmatically
+====================================================
+
+## SYNOPSIS
+
+ npm.commands.install([where,] packages, callback)
+
+## DESCRIPTION
+
+This acts much the same ways as installing on the command-line.
+
+The 'where' parameter is optional and only used internally, and it specifies
+where the packages should be installed to.
+
+The 'packages' parameter is an array of strings. Each element in the array is
+the name of a package to be installed.
+
+Finally, 'callback' is a function that will be called when all packages have been
+installed or when an error has been encountered.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-link.md b/themes/VU2.b/node/npm/doc/api/npm-link.md
new file mode 100644
index 000000000..fe875ec60
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-link.md
@@ -0,0 +1,33 @@
+npm-link(3) -- Symlink a package folder
+=======================================
+
+## SYNOPSIS
+
+ npm.commands.link(callback)
+ npm.commands.link(packages, callback)
+
+## DESCRIPTION
+
+Package linking is a two-step process.
+
+Without parameters, link will create a globally-installed
+symbolic link from `prefix/package-name` to the current folder.
+
+With a parameters, link will create a symlink from the local `node_modules`
+folder to the global symlink.
+
+When creating tarballs for `npm publish`, the linked packages are
+"snapshotted" to their current state by resolving the symbolic links.
+
+This is
+handy for installing your own stuff, so that you can work on it and test it
+iteratively without having to continually rebuild.
+
+For example:
+
+ npm.commands.link(cb) # creates global link from the cwd
+ # (say redis package)
+ npm.commands.link('redis', cb) # link-install the package
+
+Now, any changes to the redis package will be reflected in
+the package in the current working directory
diff --git a/themes/VU2.b/node/npm/doc/api/npm-load.md b/themes/VU2.b/node/npm/doc/api/npm-load.md
new file mode 100644
index 000000000..a95a6b295
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-load.md
@@ -0,0 +1,26 @@
+npm-load(3) -- Load config settings
+===================================
+
+## SYNOPSIS
+
+ npm.load(conf, cb)
+
+## DESCRIPTION
+
+npm.load() must be called before any other function call. Both parameters are
+optional, but the second is recommended.
+
+The first parameter is an object hash of command-line config params, and the
+second parameter is a callback that will be called when npm is loaded and
+ready to serve.
+
+The first parameter should follow a similar structure as the package.json
+config object.
+
+For example, to emulate the --dev flag, pass an object that looks like this:
+
+ {
+ "dev": true
+ }
+
+For a list of all the available command-line configs, see `npm help config`
diff --git a/themes/VU2.b/node/npm/doc/api/npm-ls.md b/themes/VU2.b/node/npm/doc/api/npm-ls.md
new file mode 100644
index 000000000..ed890ff14
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-ls.md
@@ -0,0 +1,56 @@
+npm-ls(3) -- List installed packages
+======================================
+
+## SYNOPSIS
+
+ npm.commands.ls(args, [silent,] callback)
+
+## DESCRIPTION
+
+This command will print to stdout all the versions of packages that are
+installed, as well as their dependencies, in a tree-structure. It will also
+return that data using the callback.
+
+This command does not take any arguments, but args must be defined.
+Beyond that, if any arguments are passed in, npm will politely warn that it
+does not take positional arguments, though you may set config flags
+like with any other command, such as `global` to list global packages.
+
+It will print out extraneous, missing, and invalid packages.
+
+If the silent parameter is set to true, nothing will be output to the screen,
+but the data will still be returned.
+
+Callback is provided an error if one occurred, the full data about which
+packages are installed and which dependencies they will receive, and a
+"lite" data object which just shows which versions are installed where.
+Note that the full data object is a circular structure, so care must be
+taken if it is serialized to JSON.
+
+## CONFIGURATION
+
+### long
+
+* Default: false
+* Type: Boolean
+
+Show extended information.
+
+### parseable
+
+* Default: false
+* Type: Boolean
+
+Show parseable output instead of tree view.
+
+### global
+
+* Default: false
+* Type: Boolean
+
+List packages in the global install prefix instead of in the current
+project.
+
+Note, if parseable is set or long isn't set, then duplicates will be trimmed.
+This means that if a submodule a same dependency as a parent module, then the
+dependency will only be output once.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-outdated.md b/themes/VU2.b/node/npm/doc/api/npm-outdated.md
new file mode 100644
index 000000000..89f4cf6fa
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-outdated.md
@@ -0,0 +1,13 @@
+npm-outdated(3) -- Check for outdated packages
+==============================================
+
+## SYNOPSIS
+
+ npm.commands.outdated([packages,] callback)
+
+## DESCRIPTION
+
+This command will check the registry to see if the specified packages are
+currently outdated.
+
+If the 'packages' parameter is left out, npm will check all packages.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-owner.md b/themes/VU2.b/node/npm/doc/api/npm-owner.md
new file mode 100644
index 000000000..71fcccff5
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-owner.md
@@ -0,0 +1,31 @@
+npm-owner(3) -- Manage package owners
+=====================================
+
+## SYNOPSIS
+
+ npm.commands.owner(args, callback)
+
+## DESCRIPTION
+
+The first element of the 'args' parameter defines what to do, and the subsequent
+elements depend on the action. Possible values for the action are (order of
+parameters are given in parenthesis):
+
+* ls (package):
+ List all the users who have access to modify a package and push new versions.
+ Handy when you need to know who to bug for help.
+* add (user, package):
+ Add a new user as a maintainer of a package. This user is enabled to modify
+ metadata, publish new versions, and add other owners.
+* rm (user, package):
+ Remove a user from the package owner list. This immediately revokes their
+ privileges.
+
+Note that there is only one level of access. Either you can modify a package,
+or you can't. Future versions may contain more fine-grained access levels, but
+that is not implemented at this time.
+
+## SEE ALSO
+
+* npm-publish(3)
+* npm-registry(7)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-pack.md b/themes/VU2.b/node/npm/doc/api/npm-pack.md
new file mode 100644
index 000000000..cb339c0c4
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-pack.md
@@ -0,0 +1,19 @@
+npm-pack(3) -- Create a tarball from a package
+==============================================
+
+## SYNOPSIS
+
+ npm.commands.pack([packages,] callback)
+
+## DESCRIPTION
+
+For anything that's installable (that is, a package folder, tarball,
+tarball url, name@tag, name@version, or name), this command will fetch
+it to the cache, and then copy the tarball to the current working
+directory as `-.tgz`, and then write the filenames out to
+stdout.
+
+If the same package is specified multiple times, then the file will be
+overwritten the second time.
+
+If no arguments are supplied, then npm packs the current package folder.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-prefix.md b/themes/VU2.b/node/npm/doc/api/npm-prefix.md
new file mode 100644
index 000000000..806dd4b6c
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-prefix.md
@@ -0,0 +1,15 @@
+npm-prefix(3) -- Display prefix
+===============================
+
+## SYNOPSIS
+
+ npm.commands.prefix(args, callback)
+
+## DESCRIPTION
+
+Print the prefix to standard out.
+
+'args' is never used and callback is never called with data.
+'args' must be present or things will break.
+
+This function is not useful programmatically
diff --git a/themes/VU2.b/node/npm/doc/api/npm-prune.md b/themes/VU2.b/node/npm/doc/api/npm-prune.md
new file mode 100644
index 000000000..2a4f17748
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-prune.md
@@ -0,0 +1,17 @@
+npm-prune(3) -- Remove extraneous packages
+==========================================
+
+## SYNOPSIS
+
+ npm.commands.prune([packages,] callback)
+
+## DESCRIPTION
+
+This command removes "extraneous" packages.
+
+The first parameter is optional, and it specifies packages to be removed.
+
+No packages are specified, then all packages will be checked.
+
+Extraneous packages are packages that are not listed on the parent
+package's dependencies list.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-publish.md b/themes/VU2.b/node/npm/doc/api/npm-publish.md
new file mode 100644
index 000000000..6871dafb8
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-publish.md
@@ -0,0 +1,30 @@
+npm-publish(3) -- Publish a package
+===================================
+
+## SYNOPSIS
+
+ npm.commands.publish([packages,] callback)
+
+## DESCRIPTION
+
+Publishes a package to the registry so that it can be installed by name.
+Possible values in the 'packages' array are:
+
+* ``:
+ A folder containing a package.json file
+
+* ``:
+ A url or file path to a gzipped tar archive containing a single folder
+ with a package.json file inside.
+
+If the package array is empty, npm will try to publish something in the
+current working directory.
+
+This command could fails if one of the packages specified already exists in
+the registry. Overwrites when the "force" environment variable is set.
+
+## SEE ALSO
+
+* npm-registry(7)
+* npm-adduser(1)
+* npm-owner(3)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-rebuild.md b/themes/VU2.b/node/npm/doc/api/npm-rebuild.md
new file mode 100644
index 000000000..8b8989806
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-rebuild.md
@@ -0,0 +1,16 @@
+npm-rebuild(3) -- Rebuild a package
+===================================
+
+## SYNOPSIS
+
+ npm.commands.rebuild([packages,] callback)
+
+## DESCRIPTION
+
+This command runs the `npm build` command on each of the matched packages. This is useful
+when you install a new version of node, and must recompile all your C++ addons with
+the new binary. If no 'packages' parameter is specify, every package will be rebuilt.
+
+## CONFIGURATION
+
+See `npm help build`
diff --git a/themes/VU2.b/node/npm/doc/api/npm-repo.md b/themes/VU2.b/node/npm/doc/api/npm-repo.md
new file mode 100644
index 000000000..af3c52fab
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-repo.md
@@ -0,0 +1,19 @@
+npm-repo(3) -- Open package repository page in the browser
+========================================================
+
+## SYNOPSIS
+
+ npm.commands.repo(package, callback)
+
+## DESCRIPTION
+
+This command tries to guess at the likely location of a package's
+repository URL, and then tries to open it using the `--browser`
+config param.
+
+Like other commands, the first parameter is an array. This command only
+uses the first element, which is expected to be a package name with an
+optional version number.
+
+This command will launch a browser, so this command may not be the most
+friendly for programmatic use.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-restart.md b/themes/VU2.b/node/npm/doc/api/npm-restart.md
new file mode 100644
index 000000000..c40704438
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-restart.md
@@ -0,0 +1,22 @@
+npm-restart(3) -- Start a package
+=================================
+
+## SYNOPSIS
+
+ npm.commands.restart(packages, callback)
+
+## DESCRIPTION
+
+This runs a package's "restart" script, if one was provided.
+Otherwise it runs package's "stop" script, if one was provided, and then
+the "start" script.
+
+If no version is specified, then it restarts the "active" version.
+
+npm can run tests on multiple packages. Just specify multiple packages
+in the `packages` parameter.
+
+## SEE ALSO
+
+* npm-start(3)
+* npm-stop(3)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-root.md b/themes/VU2.b/node/npm/doc/api/npm-root.md
new file mode 100644
index 000000000..1c3ab5640
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-root.md
@@ -0,0 +1,15 @@
+npm-root(3) -- Display npm root
+===============================
+
+## SYNOPSIS
+
+ npm.commands.root(args, callback)
+
+## DESCRIPTION
+
+Print the effective `node_modules` folder to standard out.
+
+'args' is never used and callback is never called with data.
+'args' must be present or things will break.
+
+This function is not useful programmatically.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-run-script.md b/themes/VU2.b/node/npm/doc/api/npm-run-script.md
new file mode 100644
index 000000000..91ad95351
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-run-script.md
@@ -0,0 +1,27 @@
+npm-run-script(3) -- Run arbitrary package scripts
+==================================================
+
+## SYNOPSIS
+
+ npm.commands.run-script(args, callback)
+
+## DESCRIPTION
+
+This runs an arbitrary command from a package's "scripts" object.
+
+It is used by the test, start, restart, and stop commands, but can be
+called directly, as well.
+
+The 'args' parameter is an array of strings. Behavior depends on the number
+of elements. If there is only one element, npm assumes that the element
+represents a command to be run on the local repository. If there is more than
+one element, then the first is assumed to be the package and the second is
+assumed to be the command to run. All other elements are ignored.
+
+## SEE ALSO
+
+* npm-scripts(7)
+* npm-test(3)
+* npm-start(3)
+* npm-restart(3)
+* npm-stop(3)
diff --git a/themes/VU2.b/node/npm/doc/api/npm-search.md b/themes/VU2.b/node/npm/doc/api/npm-search.md
new file mode 100644
index 000000000..30651d76a
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-search.md
@@ -0,0 +1,35 @@
+npm-search(3) -- Search for packages
+====================================
+
+## SYNOPSIS
+
+ npm.commands.search(searchTerms, [silent,] [staleness,] callback)
+
+## DESCRIPTION
+
+Search the registry for packages matching the search terms. The available parameters are:
+
+* searchTerms:
+ Array of search terms. These terms are case-insensitive.
+* silent:
+ If true, npm will not log anything to the console.
+* staleness:
+ This is the threshold for stale packages. "Fresh" packages are not refreshed
+ from the registry. This value is measured in seconds.
+* callback:
+ Returns an object where each key is the name of a package, and the value
+ is information about that package along with a 'words' property, which is
+ a space-delimited string of all of the interesting words in that package.
+ The only properties included are those that are searched, which generally include:
+
+ * name
+ * description
+ * maintainers
+ * url
+ * keywords
+
+A search on the registry excludes any result that does not match all of the
+search terms. It also removes any items from the results that contain an
+excluded term (the "searchexclude" config). The search is case insensitive
+and doesn't try to read your mind (it doesn't do any verb tense matching or the
+like).
diff --git a/themes/VU2.b/node/npm/doc/api/npm-shrinkwrap.md b/themes/VU2.b/node/npm/doc/api/npm-shrinkwrap.md
new file mode 100644
index 000000000..6584d6a0d
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-shrinkwrap.md
@@ -0,0 +1,20 @@
+npm-shrinkwrap(3) -- programmatically generate package shrinkwrap file
+====================================================
+
+## SYNOPSIS
+
+ npm.commands.shrinkwrap(args, [silent,] callback)
+
+## DESCRIPTION
+
+This acts much the same ways as shrinkwrapping on the command-line.
+
+This command does not take any arguments, but 'args' must be defined.
+Beyond that, if any arguments are passed in, npm will politely warn that it
+does not take positional arguments.
+
+If the 'silent' parameter is set to true, nothing will be output to the screen,
+but the shrinkwrap file will still be written.
+
+Finally, 'callback' is a function that will be called when the shrinkwrap has
+been saved.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-start.md b/themes/VU2.b/node/npm/doc/api/npm-start.md
new file mode 100644
index 000000000..74491146a
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-start.md
@@ -0,0 +1,13 @@
+npm-start(3) -- Start a package
+===============================
+
+## SYNOPSIS
+
+ npm.commands.start(packages, callback)
+
+## DESCRIPTION
+
+This runs a package's "start" script, if one was provided.
+
+npm can run tests on multiple packages. Just specify multiple packages
+in the `packages` parameter.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-stop.md b/themes/VU2.b/node/npm/doc/api/npm-stop.md
new file mode 100644
index 000000000..0f8333d35
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-stop.md
@@ -0,0 +1,13 @@
+npm-stop(3) -- Stop a package
+=============================
+
+## SYNOPSIS
+
+ npm.commands.stop(packages, callback)
+
+## DESCRIPTION
+
+This runs a package's "stop" script, if one was provided.
+
+npm can run stop on multiple packages. Just specify multiple packages
+in the `packages` parameter.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-submodule.md b/themes/VU2.b/node/npm/doc/api/npm-submodule.md
new file mode 100644
index 000000000..2d8bafaa3
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-submodule.md
@@ -0,0 +1,28 @@
+npm-submodule(3) -- Add a package as a git submodule
+====================================================
+
+## SYNOPSIS
+
+ npm.commands.submodule(packages, callback)
+
+## DESCRIPTION
+
+For each package specified, npm will check if it has a git repository url
+in its package.json description then add it as a git submodule at
+`node_modules/`.
+
+This is a convenience only. From then on, it's up to you to manage
+updates by using the appropriate git commands. npm will stubbornly
+refuse to update, modify, or remove anything with a `.git` subfolder
+in it.
+
+This command also does not install missing dependencies, if the package
+does not include them in its git repository. If `npm ls` reports that
+things are missing, you can either install, link, or submodule them yourself,
+or you can do `npm explore -- npm install` to install the
+dependencies into the submodule folder.
+
+## SEE ALSO
+
+* npm help json
+* git help submodule
diff --git a/themes/VU2.b/node/npm/doc/api/npm-tag.md b/themes/VU2.b/node/npm/doc/api/npm-tag.md
new file mode 100644
index 000000000..b5a3d7faa
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-tag.md
@@ -0,0 +1,23 @@
+npm-tag(3) -- Tag a published version
+=====================================
+
+## SYNOPSIS
+
+ npm.commands.tag(package@version, tag, callback)
+
+## DESCRIPTION
+
+Tags the specified version of the package with the specified tag, or the
+`--tag` config if not specified.
+
+The 'package@version' is an array of strings, but only the first two elements are
+currently used.
+
+The first element must be in the form package@version, where package
+is the package name and version is the version number (much like installing a
+specific version).
+
+The second element is the name of the tag to tag this version with. If this
+parameter is missing or falsey (empty), the default froom the config will be
+used. For more information about how to set this config, check
+`man 3 npm-config` for programmatic usage or `man npm-config` for cli usage.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-test.md b/themes/VU2.b/node/npm/doc/api/npm-test.md
new file mode 100644
index 000000000..bc48dcc35
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-test.md
@@ -0,0 +1,16 @@
+npm-test(3) -- Test a package
+=============================
+
+## SYNOPSIS
+
+ npm.commands.test(packages, callback)
+
+## DESCRIPTION
+
+This runs a package's "test" script, if one was provided.
+
+To run tests as a condition of installation, set the `npat` config to
+true.
+
+npm can run tests on multiple packages. Just specify multiple packages
+in the `packages` parameter.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-uninstall.md b/themes/VU2.b/node/npm/doc/api/npm-uninstall.md
new file mode 100644
index 000000000..4505295b3
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-uninstall.md
@@ -0,0 +1,16 @@
+npm-uninstall(3) -- uninstall a package programmatically
+========================================================
+
+## SYNOPSIS
+
+ npm.commands.uninstall(packages, callback)
+
+## DESCRIPTION
+
+This acts much the same ways as uninstalling on the command-line.
+
+The 'packages' parameter is an array of strings. Each element in the array is
+the name of a package to be uninstalled.
+
+Finally, 'callback' is a function that will be called when all packages have been
+uninstalled or when an error has been encountered.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-unpublish.md b/themes/VU2.b/node/npm/doc/api/npm-unpublish.md
new file mode 100644
index 000000000..6cbc5c1f3
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-unpublish.md
@@ -0,0 +1,20 @@
+npm-unpublish(3) -- Remove a package from the registry
+======================================================
+
+## SYNOPSIS
+
+ npm.commands.unpublish(package, callback)
+
+## DESCRIPTION
+
+This removes a package version from the registry, deleting its
+entry and removing the tarball.
+
+The package parameter must be defined.
+
+Only the first element in the package parameter is used. If there is no first
+element, then npm assumes that the package at the current working directory
+is what is meant.
+
+If no version is specified, or if all versions are removed then
+the root package entry is removed from the registry entirely.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-update.md b/themes/VU2.b/node/npm/doc/api/npm-update.md
new file mode 100644
index 000000000..bf02fd3c8
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-update.md
@@ -0,0 +1,11 @@
+npm-update(3) -- Update a package
+=================================
+
+## SYNOPSIS
+ npm.commands.update(packages, callback)
+
+# DESCRIPTION
+
+Updates a package, upgrading it to the latest version. It also installs any missing packages.
+
+The 'packages' argument is an array of packages to update. The 'callback' parameter will be called when done or when an error occurs.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-version.md b/themes/VU2.b/node/npm/doc/api/npm-version.md
new file mode 100644
index 000000000..bd40102c4
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-version.md
@@ -0,0 +1,18 @@
+npm-version(3) -- Bump a package version
+========================================
+
+## SYNOPSIS
+
+ npm.commands.version(newversion, callback)
+
+## DESCRIPTION
+
+Run this in a package directory to bump the version and write the new
+data back to the package.json file.
+
+If run in a git repo, it will also create a version commit and tag, and
+fail if the repo is not clean.
+
+Like all other commands, this function takes a string array as its first
+parameter. The difference, however, is this function will fail if it does
+not have exactly one element. The only element should be a version number.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-view.md b/themes/VU2.b/node/npm/doc/api/npm-view.md
new file mode 100644
index 000000000..fd0076c96
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-view.md
@@ -0,0 +1,93 @@
+npm-view(3) -- View registry info
+=================================
+
+## SYNOPSIS
+
+ npm.commands.view(args, [silent,] callback)
+
+## DESCRIPTION
+
+This command shows data about a package and prints it to the stream
+referenced by the `outfd` config, which defaults to stdout.
+
+The "args" parameter is an ordered list that closely resembles the command-line
+usage. The elements should be ordered such that the first element is
+the package and version (package@version). The version is optional. After that,
+the rest of the parameters are fields with optional subfields ("field.subfield")
+which can be used to get only the information desired from the registry.
+
+The callback will be passed all of the data returned by the query.
+
+For example, to get the package registry entry for the `connect` package,
+you can do this:
+
+ npm.commands.view(["connect"], callback)
+
+If no version is specified, "latest" is assumed.
+
+Field names can be specified after the package descriptor.
+For example, to show the dependencies of the `ronn` package at version
+0.3.5, you could do the following:
+
+ npm.commands.view(["ronn@0.3.5", "dependencies"], callback)
+
+You can view child field by separating them with a period.
+To view the git repository URL for the latest version of npm, you could
+do this:
+
+ npm.commands.view(["npm", "repository.url"], callback)
+
+For fields that are arrays, requesting a non-numeric field will return
+all of the values from the objects in the list. For example, to get all
+the contributor names for the "express" project, you can do this:
+
+ npm.commands.view(["express", "contributors.email"], callback)
+
+You may also use numeric indices in square braces to specifically select
+an item in an array field. To just get the email address of the first
+contributor in the list, you can do this:
+
+ npm.commands.view(["express", "contributors[0].email"], callback)
+
+Multiple fields may be specified, and will be printed one after another.
+For exampls, to get all the contributor names and email addresses, you
+can do this:
+
+ npm.commands.view(["express", "contributors.name", "contributors.email"], callback)
+
+"Person" fields are shown as a string if they would be shown as an
+object. So, for example, this will show the list of npm contributors in
+the shortened string format. (See `npm help json` for more on this.)
+
+ npm.commands.view(["npm", "contributors"], callback)
+
+If a version range is provided, then data will be printed for every
+matching version of the package. This will show which version of jsdom
+was required by each matching version of yui3:
+
+ npm.commands.view(["yui3@'>0.5.4'", "dependencies.jsdom"], callback)
+
+## OUTPUT
+
+If only a single string field for a single version is output, then it
+will not be colorized or quoted, so as to enable piping the output to
+another command.
+
+If the version range matches multiple versions, than each printed value
+will be prefixed with the version it applies to.
+
+If multiple fields are requested, than each of them are prefixed with
+the field name.
+
+Console output can be disabled by setting the 'silent' parameter to true.
+
+## RETURN VALUE
+
+The data returned will be an object in this formation:
+
+ { :
+ { :
+ , ... }
+ , ... }
+
+corresponding to the list of fields selected.
diff --git a/themes/VU2.b/node/npm/doc/api/npm-whoami.md b/themes/VU2.b/node/npm/doc/api/npm-whoami.md
new file mode 100644
index 000000000..598a1ab1a
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm-whoami.md
@@ -0,0 +1,15 @@
+npm-whoami(3) -- Display npm username
+=====================================
+
+## SYNOPSIS
+
+ npm.commands.whoami(args, callback)
+
+## DESCRIPTION
+
+Print the `username` config to standard output.
+
+'args' is never used and callback is never called with data.
+'args' must be present or things will break.
+
+This function is not useful programmatically
diff --git a/themes/VU2.b/node/npm/doc/api/npm.md b/themes/VU2.b/node/npm/doc/api/npm.md
new file mode 100644
index 000000000..d05684e8b
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/api/npm.md
@@ -0,0 +1,116 @@
+npm(3) -- node package manager
+==============================
+
+## SYNOPSIS
+
+ var npm = require("npm")
+ npm.load([configObject, ]function (er, npm) {
+ // use the npm object, now that it's loaded.
+
+ npm.config.set(key, val)
+ val = npm.config.get(key)
+
+ console.log("prefix = %s", npm.prefix)
+
+ npm.commands.install(["package"], cb)
+ })
+
+## VERSION
+
+@VERSION@
+
+## DESCRIPTION
+
+This is the API documentation for npm.
+To find documentation of the command line
+client, see `npm(1)`.
+
+Prior to using npm's commands, `npm.load()` must be called.
+If you provide `configObject` as an object hash of top-level
+configs, they override the values stored in the various config
+locations. In the npm command line client, this set of configs
+is parsed from the command line options. Additional configuration
+params are loaded from two configuration files. See `npm-config(1)`,
+`npm-config(7)`, and `npmrc(5)` for more information.
+
+After that, each of the functions are accessible in the
+commands object: `npm.commands.`. See `npm-index(7)` for a list of
+all possible commands.
+
+All commands on the command object take an **array** of positional argument
+**strings**. The last argument to any function is a callback. Some
+commands take other optional arguments.
+
+Configs cannot currently be set on a per function basis, as each call to
+npm.config.set will change the value for *all* npm commands in that process.
+
+To find API documentation for a specific command, run the `npm apihelp`
+command.
+
+## METHODS AND PROPERTIES
+
+* `npm.load(configs, cb)`
+
+ Load the configuration params, and call the `cb` function once the
+ globalconfig and userconfig files have been loaded as well, or on
+ nextTick if they've already been loaded.
+
+* `npm.config`
+
+ An object for accessing npm configuration parameters.
+
+ * `npm.config.get(key)`
+ * `npm.config.set(key, val)`
+ * `npm.config.del(key)`
+
+* `npm.dir` or `npm.root`
+
+ The `node_modules` directory where npm will operate.
+
+* `npm.prefix`
+
+ The prefix where npm is operating. (Most often the current working
+ directory.)
+
+* `npm.cache`
+
+ The place where npm keeps JSON and tarballs it fetches from the
+ registry (or uploads to the registry).
+
+* `npm.tmp`
+
+ npm's temporary working directory.
+
+* `npm.deref`
+
+ Get the "real" name for a command that has either an alias or
+ abbreviation.
+
+## MAGIC
+
+For each of the methods in the `npm.commands` hash, a method is added to
+the npm object, which takes a set of positional string arguments rather
+than an array and a callback.
+
+If the last argument is a callback, then it will use the supplied
+callback. However, if no callback is provided, then it will print out
+the error or results.
+
+For example, this would work in a node repl:
+
+ > npm = require("npm")
+ > npm.load() // wait a sec...
+ > npm.install("dnode", "express")
+
+Note that that *won't* work in a node program, since the `install`
+method will get called before the configuration load is completed.
+
+## ABBREVS
+
+In order to support `npm ins foo` instead of `npm install foo`, the
+`npm.commands` object has a set of abbreviations as well as the full
+method names. Use the `npm.deref` method to find the real name.
+
+For example:
+
+ var cmd = npm.deref("unp") // cmd === "unpublish"
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-adduser.md b/themes/VU2.b/node/npm/doc/cli/npm-adduser.md
new file mode 100644
index 000000000..68f3a3c00
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-adduser.md
@@ -0,0 +1,38 @@
+npm-adduser(1) -- Add a registry user account
+=============================================
+
+## SYNOPSIS
+
+ npm adduser
+
+## DESCRIPTION
+
+Create or verify a user named `` in the npm registry, and
+save the credentials to the `.npmrc` file.
+
+The username, password, and email are read in from prompts.
+
+You may use this command to change your email address, but not username
+or password.
+
+To reset your password, go to
+
+You may use this command multiple times with the same user account to
+authorize on a new machine.
+
+## CONFIGURATION
+
+### registry
+
+Default: http://registry.npmjs.org/
+
+The base URL of the npm package registry.
+
+## SEE ALSO
+
+* npm-registry(7)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
+* npm-owner(1)
+* npm-whoami(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-bin.md b/themes/VU2.b/node/npm/doc/cli/npm-bin.md
new file mode 100644
index 000000000..33863b457
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-bin.md
@@ -0,0 +1,19 @@
+npm-bin(1) -- Display npm bin folder
+====================================
+
+## SYNOPSIS
+
+ npm bin
+
+## DESCRIPTION
+
+Print the folder where npm will install executables.
+
+## SEE ALSO
+
+* npm-prefix(1)
+* npm-root(1)
+* npm-folders(5)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-bugs.md b/themes/VU2.b/node/npm/doc/cli/npm-bugs.md
new file mode 100644
index 000000000..002d9f755
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-bugs.md
@@ -0,0 +1,42 @@
+npm-bugs(1) -- Bugs for a package in a web browser maybe
+========================================================
+
+## SYNOPSIS
+
+ npm bugs
+ npm bugs (with no args in a package dir)
+
+## DESCRIPTION
+
+This command tries to guess at the likely location of a package's
+bug tracker URL, and then tries to open it using the `--browser`
+config param. If no package name is provided, it will search for
+a `package.json` in the current folder and use the `name` property.
+
+## CONFIGURATION
+
+### browser
+
+* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
+* Type: String
+
+The browser that is called by the `npm bugs` command to open websites.
+
+### registry
+
+* Default: https://registry.npmjs.org/
+* Type: url
+
+The base URL of the npm package registry.
+
+
+## SEE ALSO
+
+* npm-docs(1)
+* npm-view(1)
+* npm-publish(1)
+* npm-registry(7)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
+* package.json(5)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-build.md b/themes/VU2.b/node/npm/doc/cli/npm-build.md
new file mode 100644
index 000000000..53813c1fd
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-build.md
@@ -0,0 +1,22 @@
+npm-build(1) -- Build a package
+===============================
+
+## SYNOPSIS
+
+ npm build
+
+* ``:
+ A folder containing a `package.json` file in its root.
+
+## DESCRIPTION
+
+This is the plumbing command called by `npm link` and `npm install`.
+
+It should generally not be called directly.
+
+## SEE ALSO
+
+* npm-install(1)
+* npm-link(1)
+* npm-scripts(7)
+* package.json(5)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-bundle.md b/themes/VU2.b/node/npm/doc/cli/npm-bundle.md
new file mode 100644
index 000000000..69b3d83e4
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-bundle.md
@@ -0,0 +1,14 @@
+npm-bundle(1) -- REMOVED
+========================
+
+## DESCRIPTION
+
+The `npm bundle` command has been removed in 1.0, for the simple reason
+that it is no longer necessary, as the default behavior is now to
+install packages into the local space.
+
+Just use `npm install` now to do what `npm bundle` used to do.
+
+## SEE ALSO
+
+* npm-install(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-cache.md b/themes/VU2.b/node/npm/doc/cli/npm-cache.md
new file mode 100644
index 000000000..03b5902bd
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-cache.md
@@ -0,0 +1,70 @@
+npm-cache(1) -- Manipulates packages cache
+==========================================
+
+## SYNOPSIS
+
+ npm cache add
+ npm cache add
+ npm cache add
+ npm cache add @
+
+ npm cache ls []
+
+ npm cache clean []
+
+## DESCRIPTION
+
+Used to add, list, or clear the npm cache folder.
+
+* add:
+ Add the specified package to the local cache. This command is primarily
+ intended to be used internally by npm, but it can provide a way to
+ add data to the local installation cache explicitly.
+
+* ls:
+ Show the data in the cache. Argument is a path to show in the cache
+ folder. Works a bit like the `find` program, but limited by the
+ `depth` config.
+
+* clean:
+ Delete data out of the cache folder. If an argument is provided, then
+ it specifies a subpath to delete. If no argument is provided, then
+ the entire cache is cleared.
+
+## DETAILS
+
+npm stores cache data in the directory specified in `npm config get cache`.
+For each package that is added to the cache, three pieces of information are
+stored in `{cache}/{name}/{version}`:
+
+* .../package/package.json:
+ The package.json file, as npm sees it.
+* .../package.tgz:
+ The tarball for that version.
+
+Additionally, whenever a registry request is made, a `.cache.json` file
+is placed at the corresponding URI, to store the ETag and the requested
+data. This is stored in `{cache}/{hostname}/{path}/.cache.json`.
+
+Commands that make non-essential registry requests (such as `search` and
+`view`, or the completion scripts) generally specify a minimum timeout.
+If the `.cache.json` file is younger than the specified timeout, then
+they do not make an HTTP request to the registry.
+
+## CONFIGURATION
+
+### cache
+
+Default: `~/.npm` on Posix, or `%AppData%/npm-cache` on Windows.
+
+The root cache folder.
+
+## SEE ALSO
+
+* npm-folders(5)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
+* npm-install(1)
+* npm-publish(1)
+* npm-pack(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-completion.md b/themes/VU2.b/node/npm/doc/cli/npm-completion.md
new file mode 100644
index 000000000..bec0f6086
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-completion.md
@@ -0,0 +1,29 @@
+npm-completion(1) -- Tab Completion for npm
+===========================================
+
+## SYNOPSIS
+
+ . <(npm completion)
+
+## DESCRIPTION
+
+Enables tab-completion in all npm commands.
+
+The synopsis above
+loads the completions into your current shell. Adding it to
+your ~/.bashrc or ~/.zshrc will make the completions available
+everywhere.
+
+You may of course also pipe the output of npm completion to a file
+such as `/usr/local/etc/bash_completion.d/npm` if you have a system
+that will read that file for you.
+
+When `COMP_CWORD`, `COMP_LINE`, and `COMP_POINT` are defined in the
+environment, `npm completion` acts in "plumbing mode", and outputs
+completions based on the arguments.
+
+## SEE ALSO
+
+* npm-developers(7)
+* npm-faq(7)
+* npm(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-config.md b/themes/VU2.b/node/npm/doc/cli/npm-config.md
new file mode 100644
index 000000000..1d978c9de
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-config.md
@@ -0,0 +1,71 @@
+npm-config(1) -- Manage the npm configuration files
+===================================================
+
+## SYNOPSIS
+
+ npm config set [--global]
+ npm config get
+ npm config delete
+ npm config list
+ npm config edit
+ npm c [set|get|delete|list]
+ npm get
+ npm set [--global]
+
+## DESCRIPTION
+
+npm gets its config settings from the command line, environment
+variables, `npmrc` files, and in some cases, the `package.json` file.
+
+See npmrc(5) for more information about the npmrc files.
+
+See `npm-config(7)` for a more thorough discussion of the mechanisms
+involved.
+
+The `npm config` command can be used to update and edit the contents
+of the user and global npmrc files.
+
+## Sub-commands
+
+Config supports the following sub-commands:
+
+### set
+
+ npm config set key value
+
+Sets the config key to the value.
+
+If value is omitted, then it sets it to "true".
+
+### get
+
+ npm config get key
+
+Echo the config value to stdout.
+
+### list
+
+ npm config list
+
+Show all the config settings.
+
+### delete
+
+ npm config delete key
+
+Deletes the key from all configuration files.
+
+### edit
+
+ npm config edit
+
+Opens the config file in an editor. Use the `--global` flag to edit the
+global config.
+
+## SEE ALSO
+
+* npm-folders(5)
+* npm-config(7)
+* package.json(5)
+* npmrc(5)
+* npm(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-dedupe.md b/themes/VU2.b/node/npm/doc/cli/npm-dedupe.md
new file mode 100644
index 000000000..d3be01050
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-dedupe.md
@@ -0,0 +1,58 @@
+npm-dedupe(1) -- Reduce duplication
+===================================
+
+## SYNOPSIS
+
+ npm dedupe [package names...]
+ npm ddp [package names...]
+
+## DESCRIPTION
+
+Searches the local package tree and attempts to simplify the overall
+structure by moving dependencies further up the tree, where they can
+be more effectively shared by multiple dependent packages.
+
+For example, consider this dependency graph:
+
+ a
+ +-- b <-- depends on c@1.0.x
+ | `-- c@1.0.3
+ `-- d <-- depends on c@~1.0.9
+ `-- c@1.0.10
+
+In this case, `npm-dedupe(1)` will transform the tree to:
+
+ a
+ +-- b
+ +-- d
+ `-- c@1.0.10
+
+Because of the hierarchical nature of node's module lookup, b and d
+will both get their dependency met by the single c package at the root
+level of the tree.
+
+If a suitable version exists at the target location in the tree
+already, then it will be left untouched, but the other duplicates will
+be deleted.
+
+If no suitable version can be found, then a warning is printed, and
+nothing is done.
+
+If any arguments are supplied, then they are filters, and only the
+named packages will be touched.
+
+Note that this operation transforms the dependency tree, and may
+result in packages getting updated versions, perhaps from the npm
+registry.
+
+This feature is experimental, and may change in future versions.
+
+The `--tag` argument will apply to all of the affected dependencies. If a
+tag with the given name exists, the tagged version is preferred over newer
+versions.
+
+## SEE ALSO
+
+* npm-ls(1)
+* npm-update(1)
+* npm-install(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-deprecate.md b/themes/VU2.b/node/npm/doc/cli/npm-deprecate.md
new file mode 100644
index 000000000..e62579349
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-deprecate.md
@@ -0,0 +1,26 @@
+npm-deprecate(1) -- Deprecate a version of a package
+====================================================
+
+## SYNOPSIS
+
+ npm deprecate [@]
+
+## DESCRIPTION
+
+This command will update the npm registry entry for a package, providing
+a deprecation warning to all who attempt to install it.
+
+It works on version ranges as well as specific versions, so you can do
+something like this:
+
+ npm deprecate my-thing@"< 0.2.3" "critical bug fixed in v0.2.3"
+
+Note that you must be the package owner to deprecate something. See the
+`owner` and `adduser` help topics.
+
+To un-deprecate a package, specify an empty string (`""`) for the `message` argument.
+
+## SEE ALSO
+
+* npm-publish(1)
+* npm-registry(7)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-docs.md b/themes/VU2.b/node/npm/doc/cli/npm-docs.md
new file mode 100644
index 000000000..5db3d9f7e
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-docs.md
@@ -0,0 +1,44 @@
+npm-docs(1) -- Docs for a package in a web browser maybe
+========================================================
+
+## SYNOPSIS
+
+ npm docs [ [ ...]]
+ npm docs (with no args in a package dir)
+ npm home [ [ ...]]
+ npm home (with no args in a package dir)
+
+## DESCRIPTION
+
+This command tries to guess at the likely location of a package's
+documentation URL, and then tries to open it using the `--browser`
+config param. You can pass multiple package names at once. If no
+package name is provided, it will search for a `package.json` in
+the current folder and use the `name` property.
+
+## CONFIGURATION
+
+### browser
+
+* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
+* Type: String
+
+The browser that is called by the `npm docs` command to open websites.
+
+### registry
+
+* Default: https://registry.npmjs.org/
+* Type: url
+
+The base URL of the npm package registry.
+
+
+## SEE ALSO
+
+* npm-view(1)
+* npm-publish(1)
+* npm-registry(7)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
+* package.json(5)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-edit.md b/themes/VU2.b/node/npm/doc/cli/npm-edit.md
new file mode 100644
index 000000000..6a73317b8
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-edit.md
@@ -0,0 +1,37 @@
+npm-edit(1) -- Edit an installed package
+========================================
+
+## SYNOPSIS
+
+ npm edit [@]
+
+## DESCRIPTION
+
+Opens the package folder in the default editor (or whatever you've
+configured as the npm `editor` config -- see `npm-config(7)`.)
+
+After it has been edited, the package is rebuilt so as to pick up any
+changes in compiled packages.
+
+For instance, you can do `npm install connect` to install connect
+into your package, and then `npm edit connect` to make a few
+changes to your locally installed copy.
+
+## CONFIGURATION
+
+### editor
+
+* Default: `EDITOR` environment variable if set, or `"vi"` on Posix,
+ or `"notepad"` on Windows.
+* Type: path
+
+The command to run for `npm edit` or `npm config edit`.
+
+## SEE ALSO
+
+* npm-folders(5)
+* npm-explore(1)
+* npm-install(1)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-explore.md b/themes/VU2.b/node/npm/doc/cli/npm-explore.md
new file mode 100644
index 000000000..3642d7399
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-explore.md
@@ -0,0 +1,40 @@
+npm-explore(1) -- Browse an installed package
+=============================================
+
+## SYNOPSIS
+
+ npm explore [ -- ]
+
+## DESCRIPTION
+
+Spawn a subshell in the directory of the installed package specified.
+
+If a command is specified, then it is run in the subshell, which then
+immediately terminates.
+
+This is particularly handy in the case of git submodules in the
+`node_modules` folder:
+
+ npm explore some-dependency -- git pull origin master
+
+Note that the package is *not* automatically rebuilt afterwards, so be
+sure to use `npm rebuild ` if you make any changes.
+
+## CONFIGURATION
+
+### shell
+
+* Default: SHELL environment variable, or "bash" on Posix, or "cmd" on
+ Windows
+* Type: path
+
+The shell to run for the `npm explore` command.
+
+## SEE ALSO
+
+* npm-submodule(1)
+* npm-folders(5)
+* npm-edit(1)
+* npm-rebuild(1)
+* npm-build(1)
+* npm-install(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-help-search.md b/themes/VU2.b/node/npm/doc/cli/npm-help-search.md
new file mode 100644
index 000000000..7bf7401ba
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-help-search.md
@@ -0,0 +1,35 @@
+npm-help-search(1) -- Search npm help documentation
+===================================================
+
+## SYNOPSIS
+
+ npm help-search some search terms
+
+## DESCRIPTION
+
+This command will search the npm markdown documentation files for the
+terms provided, and then list the results, sorted by relevance.
+
+If only one result is found, then it will show that help topic.
+
+If the argument to `npm help` is not a known help topic, then it will
+call `help-search`. It is rarely if ever necessary to call this
+command directly.
+
+## CONFIGURATION
+
+### long
+
+* Type: Boolean
+* Default false
+
+If true, the "long" flag will cause help-search to output context around
+where the terms were found in the documentation.
+
+If false, then help-search will just list out the help topics found.
+
+## SEE ALSO
+
+* npm(1)
+* npm-faq(7)
+* npm-help(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-help.md b/themes/VU2.b/node/npm/doc/cli/npm-help.md
new file mode 100644
index 000000000..7991b1d38
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-help.md
@@ -0,0 +1,40 @@
+npm-help(1) -- Get help on npm
+==============================
+
+## SYNOPSIS
+
+ npm help
+ npm help some search terms
+
+## DESCRIPTION
+
+If supplied a topic, then show the appropriate documentation page.
+
+If the topic does not exist, or if multiple terms are provided, then run
+the `help-search` command to find a match. Note that, if `help-search`
+finds a single subject, then it will run `help` on that topic, so unique
+matches are equivalent to specifying a topic name.
+
+## CONFIGURATION
+
+### viewer
+
+* Default: "man" on Posix, "browser" on Windows
+* Type: path
+
+The program to use to view help content.
+
+Set to `"browser"` to view html help content in the default web browser.
+
+## SEE ALSO
+
+* npm(1)
+* README
+* npm-faq(7)
+* npm-folders(5)
+* npm-config(1)
+* npm-config(7)
+* npmrc(5)
+* package.json(5)
+* npm-help-search(1)
+* npm-index(7)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-init.md b/themes/VU2.b/node/npm/doc/cli/npm-init.md
new file mode 100644
index 000000000..bd63a8879
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-init.md
@@ -0,0 +1,25 @@
+npm-init(1) -- Interactively create a package.json file
+=======================================================
+
+## SYNOPSIS
+
+ npm init
+
+## DESCRIPTION
+
+This will ask you a bunch of questions, and then write a package.json for you.
+
+It attempts to make reasonable guesses about what you want things to be set to,
+and then writes a package.json file with the options you've selected.
+
+If you already have a package.json file, it'll read that first, and default to
+the options in there.
+
+It is strictly additive, so it does not delete options from your package.json
+without a really good reason to do so.
+
+## SEE ALSO
+
+*
+* package.json(5)
+* npm-version(1)
diff --git a/themes/VU2.b/node/npm/doc/cli/npm-install.md b/themes/VU2.b/node/npm/doc/cli/npm-install.md
new file mode 100644
index 000000000..62eec2d8e
--- /dev/null
+++ b/themes/VU2.b/node/npm/doc/cli/npm-install.md
@@ -0,0 +1,259 @@
+npm-install(1) -- Install a package
+===================================
+
+## SYNOPSIS
+
+ npm install (with no args in a package dir)
+ npm install
+ npm install
+ npm install
+ npm install [--save|--save-dev|--save-optional] [--save-exact]
+ npm install @
+ npm install @
+ npm install @
+ npm i (with any of the previous argument usage)
+
+## DESCRIPTION
+
+This command installs a package, and any packages that it depends on. If the
+package has a shrinkwrap file, the installation of dependencies will be driven
+by that. See npm-shrinkwrap(1).
+
+A `package` is:
+
+* a) a folder containing a program described by a package.json file
+* b) a gzipped tarball containing (a)
+* c) a url that resolves to (b)
+* d) a `@` that is published on the registry (see `npm-registry(7)`) with (c)
+* e) a `@` that points to (d)
+* f) a `` that has a "latest" tag satisfying (e)
+* g) a `` that resolves to (b)
+
+Even if you never publish your package, you can still get a lot of
+benefits of using npm if you just want to write a node program (a), and
+perhaps if you also want to be able to easily install it elsewhere
+after packing it up into a tarball (b).
+
+
+* `npm install` (in package directory, no arguments):
+
+ Install the dependencies in the local node_modules folder.
+
+ In global mode (ie, with `-g` or `--global` appended to the command),
+ it installs the current package context (ie, the current working
+ directory) as a global package.
+
+ By default, `npm install` will install all modules listed as
+ dependencies. With the `--production` flag,
+ npm will not install modules listed in `devDependencies`.
+
+* `npm install `:
+
+ Install a package that is sitting in a folder on the filesystem.
+
+* `npm install `:
+
+ Install a package that is sitting on the filesystem. Note: if you just want
+ to link a dev directory into your npm root, you can do this more easily by
+ using `npm link`.
+
+ Example:
+
+ npm install ./package.tgz
+
+* `npm install `:
+
+ Fetch the tarball url, and then install it. In order to distinguish between
+ this and other options, the argument must start with "http://" or "https://"
+
+ Example:
+
+ npm install https://github.com/indexzero/forever/tarball/v0.5.6
+
+* `npm install [--save|--save-dev|--save-optional]`:
+
+ Do a `@` install, where `` is the "tag" config. (See
+ `npm-config(7)`.)
+
+ In most cases, this will install the latest version
+ of the module published on npm.
+
+ Example:
+
+ npm install sax
+
+ `npm install` takes 3 exclusive, optional flags which save or update
+ the package version in your main package.json:
+
+ * `--save`: Package will appear in your `dependencies`.
+
+ * `--save-dev`: Package will appear in your `devDependencies`.
+
+ * `--save-optional`: Package will appear in your `optionalDependencies`.
+
+ When using any of the above options to save dependencies to your
+ package.json, there is an additional, optional flag:
+
+ * `--save-exact`: Saved dependencies will be configured with an
+ exact version rather than using npm's default semver range
+ operator.
+
+ Examples:
+
+ npm install sax --save
+ npm install node-tap --save-dev
+ npm install dtrace-provider --save-optional
+ npm install readable-stream --save --save-exact
+
+
+ **Note**: If there is a file or folder named `` in the current
+ working directory, then it will try to install that, and only try to
+ fetch the package by name if it is not valid.
+
+* `npm install @`:
+
+ Install the version of the package that is referenced by the specified tag.
+ If the tag does not exist in the registry data for that package, then this
+ will fail.
+
+ Example:
+
+ npm install sax@latest
+
+* `npm install @`:
+
+ Install the specified version of the package. This will fail if the version
+ has not been published to the registry.
+
+ Example:
+
+ npm install sax@0.1.1
+
+* `npm install @`:
+
+ Install a version of the package matching the specified version range. This
+ will follow the same rules for resolving dependencies described in `package.json(5)`.
+
+ Note that most version ranges must be put in quotes so that your shell will
+ treat it as a single argument.
+
+ Example:
+
+ npm install sax@">=0.1.0 <0.2.0"
+
+* `npm install `:
+
+ Install a package by cloning a git remote url. The format of the git
+ url is:
+
+ ://[@][#]
+
+ `` is one of `git`, `git+ssh`, `git+http`, or
+ `git+https`. If no `` is specified, then `master` is
+ used.
+
+ Examples:
+
+ git+ssh://git@github.com:npm/npm.git#v1.0.27
+ git+https://isaacs@github.com/npm/npm.git
+ git://github.com/npm/npm.git#v1.0.27
+
+You may combine multiple arguments, and even multiple types of arguments.
+For example:
+
+ npm install sax@">=0.1.0 <0.2.0" bench supervisor
+
+The `--tag` argument will apply to all of the specified install targets. If a
+tag with the given name exists, the tagged version is preferred over newer
+versions.
+
+The `--force` argument will force npm to fetch remote resources even if a
+local copy exists on disk.
+
+ npm install sax --force
+
+The `--global` argument will cause npm to install the package globally
+rather than locally. See `npm-folders(5)`.
+
+The `--link` argument will cause npm to link global installs into the
+local space in some cases.
+
+The `--no-bin-links` argument will prevent npm from creating symlinks for
+any binaries the package might contain.
+
+The `--no-optional` argument will prevent optional dependencies from
+being installed.
+
+The `--no-shrinkwrap` argument, which will ignore an available
+shrinkwrap file and use the package.json instead.
+
+The `--nodedir=/path/to/node/source` argument will allow npm to find the
+node source code so that npm can compile native modules.
+
+See `npm-config(7)`. Many of the configuration params have some
+effect on installation, since that's most of what npm does.
+
+## ALGORITHM
+
+To install a package, npm uses the following algorithm:
+
+ install(where, what, family, ancestors)
+ fetch what, unpack to /node_modules/