Introduction

Why Use UploadZen for SharePoint Bulk-File Uploads?

The out-of-the-box functionality for uploading multiple files to a SharePoint Document Library relies on an ActiveX control (requiring special end user web browser security settings and/or confirmation dialogs), which is readily available without requiring further installation only on client computers that have at least one Microsoft Office 2007 application installed (and selected certain SharePoint-compatible client components when they installed that Office application, hidden in some crowded setup customization tree view). Once you get the out-of-the-box ActiveX bulk-file upload control to work for all your users, you can only upload multiple files from a single directory in one bulk upload: you cannot select files from various directories to bulk-upload in one go.

Once you decide that the out-of-the-box approach to bulk document uploads is too troublesome, or just not useful enough, for you or your users, UploadZen offers a robust and compelling alternative. UploadZen adds an Upload Multiple Files menu command to the Upload menu of all Document Libraries and other libraries.

When you click the Upload Multiple Files menu item, the UploadZen window (a ClickOnce Windows application) is launched right from the browser (no previous client-side installation required) and lets you immediately select any files and bulk-upload those to the library, as described in Walkthrough: Using UploadZen.

Note: after installing UploadZen to SharePoint, deployment is not yet complete. UploadZen will not work properly unless and until you have taken all steps necessary to fully prepare a Web Application for UploadZen.

Solution Installation

CAUTION: even after you have completed the steps outlined on this page, deployment is not yet complete. Immediately after successfully completed installation, read the Deployment Checklist documentation topic on how to prepare your IIS web server for allowing access to UploadZen over remote connections.

1. The UploadZen Setup Package

The UploadZen setup package (the roxority_UploadZen.zip file) is a zipped archive containing:

Extract the setup package to any file-system folder. Do not just run setup.exe directly from inside the setup archive — it needs to run from a file system directory that also contains all the supporting files from the setup archive.

2. Installing the UploadZen Solution Package

Run setup.exe and when the Welcome screen is displayed, click Next to start a series of system checks. To proceed with the installation, all system checks need to succeed:

Click Next and on the following screen, read and confirm the End-User License Agreement (EULA). Click Next to see all the Web Applications UploadZen will be deployed to. (The solution package contains no web application-scoped resources and can only be deployed or retracted globally, i.e. across the entire server farm.)

Click Next to start the installation and wait for the deployment jobs to complete. This process can take up to a few minutes.

After deployment has completed, review the installation log:

Once you have successfully completed the setup wizard, the UploadZen Upload Multiple Files menu item becomes available immediately in all Upload menus of any Document Library Views throughout the previously selected Web Applications.

CAUTION: at this point, deployment is not yet complete. Open any one of the documentation or Product Center links shown on the Finished page of the Setup wizard and read the Deployment Checklist documentation topic on how to prepare your IIS web server for allowing access to UploadZen over remote connections.

Deployment Checklist

UploadZen only works for SharePoint site visitors using Windows (XP or newer) and Internet Explorer (6.0 or higher) or Firefox (with the Microsoft .NET Framework Assistant installed). The UploadZen Upload Multiple Files menu item will be disabled (or hidden) for other clients.

Preparing a Web Application for using UploadZen

CAUTION: UploadZen will NOT work out of the box for remote clients unless you take the additional administrative steps outlined in this section.

As a minimum requirement for UploadZen to work for remote clients (i.e. your users), you need to:

  1. enable both the Browse Directories and the Use Remote Interfaces Site Permissions on the User permissions for Web application page (in Central AdministrationApplication ManagementApplication Security — be sure you selected the correct target Web Application), as well as
  2. perform the following steps in Internet Information Services (IIS) Manager on each SharePoint web front-end server:

Granting anonymous read access exclusively to this virtual directory is acceptable with regards to server security, since no sensitive information is ever stored underneath the help virtual directory, nor does it at all expose access to any server-side code anonymous users could ever invoke. Granting this anonymous read access is however also required for UploadZen to work, as the software is based on the Microsoft .NET Framework ClickOnce deployment technology, the integration of which with both SharePoint and remote Internet Explorer users with varying Windows versions, security and authentication settings more often than not simply does not work without making this simple, safe and proven-to-work adjustment.

For remote Internet Explorer users, the UploadZen Upload Multiple Files menu item is likely to produce only HTTP 401 error messages unless and until you take the above steps for all IIS Web Sites associated with your content Web Applications on all SharePoint web front-end servers — even though the menu item is already available in all Document Library Upload menus throughout your server farm immediately after solution installation.

Granting Web Service Access

While running, the UploadZen window will attempt to access via HTTP / SOAP, under the user-specified credentials, the following XML Web Services:

It is the responsibility of the administrator deploying UploadZen to make sure that remote users are granted access to these interfaces. In most environments, completing step 1. outlined above should be sufficient to grant this access.

Review Server-side Upload Limits

To support bulk-uploads of large file sets, you may want to review the maximums currently supported by your SharePoint server farm.

Document Libraries and Other Libraries

No special preparation considerations apply to Document Libraries or other libraries. All Library Views with a full tool bar provide the UploadZen Upload Multiple Files menu item and hide the SharePoint Upload Multiple Documents menu items (but this can be configured on the farm and site-collection level).

XSL, Data Form, Data View Web Parts

If you have in use XSL / Data Form / Data View Web Parts that were created by converting from an out-of-the-box Library View (for example using SharePoint Designer), keep in mind that their menu structures are "frozen" at conversion time:

If you intend to create such Web Parts by converting from Views, uninstall or disable UploadZen temporarily prior to the conversion. You can still generate your own Upload Multiple Files links manually and add them to your pages for such Web Parts or Document Libraries if desired.

Secure Sockets Layer (SSL)

UploadZen will work fine over SSL, except when Internet Explorer raises a prompt about the SSL certificate. The prompt can be raised when there is something wrong with the certificate, such as when the site names do not match or the certificate has expired. To make UploadZen work over an SSL connection, make sure that the certificate is up-to-date, and that the certificate data matches the site data.

Proxy Authentication

For UploadZen to work with default proxy authentication in a corporate setting, the defaultProxy element in the .NET Framework machine.config file on all client computers (under %WINDIR%\Microsoft.NET\Framework\<version>\CONFIG\) must be set to allow System.Net to use default security credentials. Alternatively, you can configure defaultProxy on client computers to use a specific proxy server.

Walkthrough: Using UploadZen

The UploadZen Upload Multiple Files Menu Item

After UploadZen has been installed and fully deployed, navigate to any Form Library, Picture Library, Slide Library, Translation Management Library, Web Part Gallery, Master Page Gallery, List / Site Template Gallery or any other SharePoint Document Library and drop down the Upload menu. In addition to the SharePoint Upload Document menu item, you should also see the UploadZen Upload Multiple Files menu item:

UploadZen by default always uses the menu item caption Upload Multiple Files, whereas SharePoint uses Upload Multiple Documents / Pictures / etc. (UploadZen will hide this latter out-of-the-box menu item if it was available and UploadZen is both enabled and supported for the current user.) The menu item caption and description to be used can be configured on the farm and site collection level, but for now this is a good differentiation to keep in mind and be able to tell the UploadZen menu item apart from the SharePoint menu item easily.

Now click the Upload Multiple Files menu item to launch the UploadZen window. The first time the UploadZen window is launched on a client computer, the user will be prompted to confirm launching the UploadZen window:

Once confirmed, that security confirmation prompt will never appear a second time when launching the UploadZen window on the same client computer again in the future.

The UploadZen Window

After a few seconds, the UploadZen window appears:

The window contains two major areas:

The Upload Files button will be enabled as soon as there are any files marked for upload (ie. placed inside the second, right-hand side area). To mark files for upload, simply select them and click the Mark selected file(s) for upload button.

After you do click the Upload Files button to initiate your upload, UploadZen will keep you informed about the progress of your upload. After all files have been processed, only files that have been uploaded successfully will be removed from the Local Files Marked for Upload area. You can mark additional files for upload even when an upload is in progress.

Authentication (Windows & Forms)

Preventing Common Authorization Problems

Attempts to launch UploadZen from a Document Library may yield a HTTP 401 error message, or UploadZen may repeatedly prompt for a user name and password that won't work even when specified correctly for a Full Access account, unless and until you take all administrative actions required to prepare a Web Application for UploadZen.

Automatic Authentication (Single Sign-On) Attempts vs. Log-In Prompts

Under certain circumstances, UploadZen users may be prompted to log in to SharePoint:

Generally, UploadZen will attempt to log users in to SharePoint automatically, if and only if:

Consequently, users may be prompted by UploadZen to log in to SharePoint:

Saving User Passwords Locally

When users are prompted by UploadZen to log in to SharePoint, they can elect for UploadZen to store their encrypted password in the Windows Registry Local User hive and use it automatically in future upload sessions. To disable this option for your some or all of your users, consult the appropriate server-side configuration setting.

Bulk Folder Uploads & ZIP Handling

Bulk-uploading entire folder structures

UploadZen lets you upload entire directory hierarchies including all (or only certain) files and sub-directories by simply marking a directory for upload.

To mark a directory for bulk upload, you can either navigate to it by clicking the Change Folder button, then selecting from the Change Folder drop-down menu the appropriate Mark entire folder contents (files and sub-folders) for upload menu item...

... or you can first select the folder(s) inside the local file navigation area and then from the context menu select either the Mark selected folders, their files and sub-folders for upload menu item or the Mark files and sub-folders of selected folders for upload menu item. (The second menu item will place the files and sub-folders directly into the currently selected Document Library target folder, the former will re-create the folder inside the currently selected Document Library target folder, then place the files and sub-folders inside that newly created folder.)

Once you have marked all folders for bulk-upload, click the Upload Files button to initiate the bulk-upload. Each directory will be ZIP-compressed in its entirety (in memory) for transfer:

UploadZen then uploads the in-memory ZIP archive to SharePoint where it will be extracted into the currently selected target Document Library folder.

Uploading multiple files as a dynamically generated ZIP archive

Sometimes you want to put together a number of related files in one ZIP archive for uploading. UploadZen saves you the step of manually compressing files into a ZIP archive with an external tool; instead, you can simply select the files and tell UploadZen to compress those files into a ZIP archive which to upload in place of the individual files using the context menu:

This will put a single item (with a prefix [ZIP] and the names of the included files) into the Local Files Marked for Upload area, representing the dynamic ZIP archive that will be generated automatically once you start your upload:

Server-side unzipping of uploaded ZIP archive files

As soon and as long as you have at least one ZIP archive marked for upload — whether an existing archive file you selected from your file system, or a dynamic ZIP that UploadZen will generate as described above — you will find check boxes next to these ZIP archives in the Local Files Marked for Upload area, as demonstrated in the screen shot above. Only tick the check boxes of those ZIP archives you want to extract into the currently selected target Document Library folder. This extraction will happen on the SharePoint server immediately after the ZIP archive has been fully uploaded.

"How Do I...?" Recipes

Disabling the UploadZen menu item for a particular Site Collection

Open the Product Configuration page in the UploadZen Product Center for the Site Collection that UploadZen should be disabled for, and locate the check boxes for the following two configuration settings:

Do not tick these check boxes just yet (this would disable UploadZen throughout your server-farm). Next to each check box, un-tick the Use farm setting check box, then tick the check box that now shows directly underneath.

Disabling the UploadZen menu item for the entire server farm, except a particular Site Collection

Open the Product Configuration page in the UploadZen Product Center for the one Site Collection that UploadZen should be enabled for, and locate check boxes for the two configuration settings mentioned in the above section. Tick both check boxes, then next to each check box, un-tick the Use farm setting check box and for both settings un-tick the check box that now shows directly underneath.

Linking to the UploadZen window launcher manually

While the UploadZen Upload Multiple Files menu item is automatically integrated into the Upload menu of Document Libraries (subject to client-side .NET Framework availability and server-side configuration settings), depending on your circumstances you may want to invoke the UploadZen window in other ways. You can do so simply by redirecting users to a URL conforming to the pattern http://SERVER/_layouts/roxority_UploadZen/help/app/roxUp.application?PARAMS, where:

Note: the cl, cf, z, c and d parameters correspond to server-side configuration settings documented here. If you do not specify these parameters, the UploadZen window will not use the current server-side configuration settings but factory defaults.

Example: you want to create a link to the UploadZen window to upload files to the Project Templates/Our Team folder in the Our Docs Document Library located in the http://oursharepoint/sites/DocCenter/Projects/ web site. The following link would do this — without the line breaks included here only for better readability:

	http://oursharepoint/_layouts/roxority_UploadZen/help/app/roxUp.application
?s=http%3A%2F%2Foursharepoint%2Fsites%2fDocCenter%2fProjects
&l=Our%20Docs
&f=Project%20Templates%2fOur%20Team

If you are generating your links through your own server-side code or client script, it is recommended that you also specify a u URL query string parameter with the current user login name. The u parameter will ensure:

Client-Side Settings

The following settings are available to all users in the UploadZen window on the Settings tab. Administrators can turn off the Settings tab for some or all users via the appropriate server-side configuration setting.

(General) Maximum picture file preview icons per folder

Picture files are represented by an icon showing a preview of their content but this consumes additional system resources. Specify the maximum number of picture files that a folder can contain before preview icons are turned off for that folder. Use 0 to never show any preview icons.

(General) Apply the [xyz] file filter when targeting a [xyz] Library

Choose 'Yes' to automatically select a file filter for the local file browsing area suitable for the target Document Library, or 'No' to never automatically change your file filters.

(Upload) Overwrite existing files

Select 'Yes' to overwrite files that already exist in the SharePoint Document Library target folder under the given name, or 'No' to not replace the existing file and produce a warning message instead.

(Upload) Replacement character

Specify a character or text used to replace each unwanted character, ie. ˜ " # % & * : < > ? / \ { | and } in uploaded file or folder names. (Clear this to simply remove the unwanted characters.)

Display/include files/folders if...

These four sections of 13 settings each control whether to show or hide in the local file navigation area, or include or exclude in folder bulk uploads, file or folders with certain characteristics:

Settings for Upload Actions

The following settings can be customized for each Upload Action by administrative users on the Upload Actions page in your UploadZen Studio, accessible via Site Settings / UploadZen Studio / Upload Actions:

"General" tab:

Name for this Upload Action

(Text box)

This name will not be shown anywhere outside this page, but helps you stay organized.

This Upload Action is...

(Descriptor for a set of SharePoint Web Sites)

Optionally select in which web sites this Upload Action will be available. By default, it will be available in all web sites and this usually does not need to be changed during your first explorations within this software. Only perform changes if you are familiar with the terminology presented in the above property editor. Should your changes not result in the expected outcome, you can always easily set this back to "all web sites, no exceptions" and then resume experimenting incrementally with your exceptions.

To define the set of Web Sites, first select either Available in all Web Sites or Available in no Web Sites, then click the except... link to describe which web sites to exclude from that selection. You can exclude:

Show UploadZen menu item in the following Document Libraries

(Descriptor for a set of SharePoint Document Libraries and Views)

Select in which Document Libraries this upload action will be offered as a menu item to end users (in the SharePoint 2007 "Upload" toolbar menu and in the SharePoint 2010 "Library Tools / Documents / New" ribbon group).

To define the set of Lists, first select either Show in all Lists or Show in no Lists, then click the except... link to describe which Lists to exclude from that selection. You can exclude:

To define the set of Views, first select either Show in all Views or Show in no Views, then click the except... link to describe which Views to exclude from that selection. You can exclude:

UploadZen menu item caption

(Text box)

Sets the menu item / ribbon button caption for this UploadZen "Upload Multiple Files" menu item.

UploadZen menu item description

(Text box)

Sets the menu item description / ribbon button tool-tip for this UploadZen "Upload Multiple Files" menu item.

"User Interface" tab:

Client-side uploader

(Drop-down menu to pick from a set of choices)

Select the preferred uploading client technology to deploy to your end users.

ClickOnce mode launches a native Windows application (.NET 2.0+) directly from Internet Explorer (or Firefox with ClickOnce plug-in) — this is the most powerful choice, but the hardest to deploy to Vista-and-newer Windows clients.

Also show in _layouts/Upload.aspx page

(Check box option)

When clicking SharePoint's built-in, out-of-box 'Upload Document' menu item (single-file upload), this always opens the Upload.aspx system page (which itself may or may not include another built-in, out-of-box 'Upload Multiple Documents' link). Tick this check-box option to also offer this Upload Action on the Upload.aspx page. (Also requires activated "UploadZen Upload.aspx Replacement Page" Site Collection feature.)

Show 'Options' in the uploader

(Check box option)

The uploader contains a 'Options' link or tab that lets users review or customize certain user-specific client-side UploadZen settings (such as overwriting of existing files). Untick this check box to never show the Settings feature to any users.

Show UploadZen link in the uploader

(Check box option)

The uploader shows a link with a version number in the bottom right corner pointing to the UploadZen product web site. Untick this check box to never show this link to your users.

Show Help link in the uploader

(Check box option)

The uploader shows a Help link in the bottom right corner pointing to select, end user-relevant documentation pages in this UploadZen Studio. Untick this check box to never show the Help link to your users.

"Advanced" tab:

Unzipping of uploaded ZIP archive files

(Drop-down menu to pick from a set of choices)

UploadZen can just put an uploaded ZIP archive file into the current Document Library target folder as a single file, or extract all of its files and sub-folders in place.

Allow users to change the target folder

(Check box option)

The uploader will be initialized to upload to the current Document Library folder, but users can change to another target folder right from within the uploader prior to uploading or between uploads, without having to navigate to that folder first via SharePoint. Untick this check box to never allow users to change the target folder.

Allow users to change the target Document Library

(Check box option)

The uploader will be initialized to upload to the current Document Library, but users can change to another target Document Library right from within the uploader prior to uploading or between uploads, without having to navigate to that Document Library first via SharePoint. Untick this check box to never allow users to change the target Document Library.

"ClickOnce-based Windows Uploader" tab:

Show Mini Tutorial in the uploader

(Check box option)

[ClickOnce mode only] The UploadZen window displays a helpful Welcome page with Quick-Start steps whenever (and as long as) there are no files or folders marked for upload. Untick this check box to never show this Mini Tutorial page to your users.

Allow users to store their SharePoint log-in password on their local PC

(Check box option)

[ClickOnce mode only] Uploading users may be prompted to type their SharePoint user name and password in certain circumstances (see documentation), and can optionally elect to have UploadZen log them in automatically in the future. This will store their encrypted password in their Windows Registry "Local User" hive. Untick this check box to never let your UploadZen users store their password.

Configuration Settings

The following configuration settings are available to administrative users on the Configuration page in your UploadZen Studio, which you can access via Site Settings / UploadZen Studio / Configuration Settings.

Each setting has a global value scoped to the SharePoint server farm, and this value can optionally be overridden on the Site Collection level. The following settings are available:

User Interface Language

UploadZen has been localized for multiple languages. Changing this setting affects all UploadZen user interfaces except captions and descriptions of Features, List Templates, Column Types, Content Types or Web Part Templates (those are always loaded directly by SharePoint based on the current Web Site locale).

You can pick one of the following options on the Configuration page in the UploadZen Studio:

All administrative actions described in the Deployment Checklist have been taken

On the Configuration page in the UploadZen Studio, tick this check box after having read the Deployment Checklist documentation topic fully and having taken all administrative actions described that are required for UploadZen to run correctly for all users. (This will hide the reminder notice in the UploadZen window the next time a user launches UploadZen from a reloaded page.)

Hide (2007) or disable (2010) SharePoint's out-of-box "Upload Multiple Documents" menu item

By default, your UploadZen action commands co-exist together with the built-in, out-of-box "Upload Multiple Documents" command. If you intend to fully replace that functionality with UploadZen, you can set whether and when to show (2007) / enable (2010) the built-in, out-of-box "Upload Multiple Documents" command (affects both both the SharePoint 2007 Library "Upload" tool-bar menu and the ribbon menu in the SharePoint 2010 "Documents / New" section of the Library Tools ribbon tab).

You can pick one of the following options on the Configuration page in the UploadZen Studio:

Hide SharePoint's out-of-box "Upload Multiple Files" link on the single-upload page

By default, your UploadZen action commands co-exist together with the built-in, out-of-box "Upload Multiple Files" link shown on the UploadZen Upload.aspx Replacement Page (if the corresponding Site Collection feature is activated). If you intend to fully replace the built-in functionality with UploadZen, you can set whether and when to show the built-in, out-of-box "Upload Multiple Files" link on the single-upload page.

You can pick one of the following options on the Configuration page in the UploadZen Studio:

Per-File Delay in Seconds

Under rare circumstances, you may have to integrate with 3rd-party or custom Event Handlers that work better when there is a slight delay between Document Library events. Specify the number of seconds UploadZen should artificially delay each upload. If you don't specify an integer number, than the recommended default value of 0 will be used.

After you have customized this setting, you can click the Reset to Default Value link on the Configuration page in the UploadZen Studio to restore the following default value:

0

By default, no inclusion of jQuery library v1.4.2 (NOT recommended)

Some UploadZen end user-facing artifacts require (and load into the respective host pages) the jQuery library, version 1.4.2. Embedding jQuery more than once in a single page can cause JavaScript warnings in Internet Explorer with some few jQuery plugins (and only if any are used in your farm at all). On the Configuration page in the UploadZen Studio, tick this check box only if your master pages, web pages or third-party extensions also already include jQuery globally (not just on some individual pages) and independently of UploadZen to prevent UploadZen from loading jQuery too. If you do so, you need to make sure jQuery 1.4.2 or higher is loaded on each page hosting also hosting UploadZen user interface artifacts, or UploadZen will appear broken. This is a global default setting that can be optionally overridden locally where applicable.

Release Notes

Version 2.3.5 (9th October 2010)

Version 2.3 (16th April 2010)

Version 2.2 (14th December 2009)

Version 2.1 (31st August 2009)

Version 2.0 (27th August 2009)

Version 1.9 (22nd August 2009)

Version 1.8 (18th August 2009)

Version 1.7 (17th August 2009)

Version 1.6 (6th August 2009)

Version 1.5 (5th August 2009)

Version 1.4 (2nd August 2009)

Version 1.3 (15th June 2009)

Version 1.2 (4th June 2009)

Version 1.1 (29th May 2009)

Version 1.0 (25th May 2009)

End-User License Agreement (EULA)

END-USER SOFTWARE LICENSE AGREEMENT FOR ROXORITY SOFTWARE PRODUCTS

THIS IS A LEGALLY BINDING AGREEMENT BETWEEN YOU (EITHER AN INDIVIDUAL OR A SINGLE ENTITY) AND ROXORITY LTD. (ROXORITY) FOR ROXORITY SOFTWARE, ASSOCIATED MEDIA AND PRINTED MATERIALS, AND MAY INCLUDE ONLINE OR ELECTRONIC DOCUMENTATION ("SOFTWARE"). BY INSTALLING, COPYING, OR OTHERWISE USING THE ROXORITY SOFTWARE PRODUCT, YOU ARE AGREEING TO BE BOUND BY THE TERMS AND CONDITIONS OF THIS AGREEMENT, INCLUDING THE SOFTWARE LICENSE AND DISCLAIMER OF SOFTWARE WARRANTY BELOW. PLEASE READ THIS DOCUMENT CAREFULLY BEFORE USING THE SOFTWARE. IF YOU DO NOT AGREE WITH THE TERMS AND CONDITIONS OF THIS AGREEMENT, YOU MUST NOT INSTALL OR USE THE SOFTWARE.

LICENSE GRANT

"You" or "your" as used herein means the person or company who is being licensed to use the Software, as defined below. "We," "us" and "our" as used herein means ROXORITY Ltd.

The "Software" as referred to herein means the ROXORITY Software "UploadZen", a product that extends "Microsoft SharePoint" web sites to provide additional capabilities.

We hereby grant you a perpetual, non-exclusive, non-transferable, revocable license to use the Software on your server and client computers.

The total number of SharePoint "Site Collections" or "server farms" that the Software can be "activated" on (after 45 days of free trial use) shall be limited to the number of licenses which you purchase. For example, if you purchase 4 Site Collection licenses, you may activate the Software on up to 4 SharePoint Site Collections; if you purchase 2 server farm licenses, you may active the Software on unlimited Site Collections within up to 2 server farms.

Each license is issued to one unique Site Collection or server farm and cannot be transferred to another Site Collection or server farm.

TITLE

The Documentation as referred to herein shall mean the written materials that you may receive in connection with the Software. We will remain the sole and exclusive owners of all right, title and interest in and to the Software and the Documentation.

ARCHIVAL OR BACKUP COPIES

You may copy the Software for back-up and archival purposes only, provided however, that at all times herein, the original and each copy is kept in your possession and that your installation and use of the Software does not exceed that allowed in the "License Grant" section above.

THINGS YOU MAY NOT DO

You agree and acknowledge that the Software and Documentation are proprietary works that are protected by the copyright laws of various nations. You may only use the Software and Documentation for the purposes and in accordance with the terms of this Agreement. You may not, without limitation:

You acknowledge that any violation of this paragraph will cause us immediate and irreparable harm and that the damages which we will suffer may be difficult or impossible to measure. Therefore, upon any actual or impending violation of this paragraph, we shall be entitled to the issuance of a restraining order, preliminary and permanent injunction without bond, restraining or enjoining such violation by you, your successors or assignees or any entity or person acting in concert with you. Such remedy shall be additional to and not in limitation of any other remedy which may otherwise be available to us by law.

TRANSFERS

You may assign all your license to use the Software and Documentation to another person or legal entity (the "Assignee"), provided however, that prior to such assignment, the Assignee undertakes in writing to be bound by your obligations under this Agreement. Any attempt to assign or transfer the license to the Software, the Documentation or this Agreement shall be ineffective, unless the assignment complies with the terms of this paragraph. Upon assignment of your license hereunder, you agree to transfer to the Assignee all of your copies of the Software and Documentation, including all copies of updates and prior versions of the Software and Documentation and you further agree and that you will retain no copies, including, without limitation, electronic copies stored on computer discs or drives.

DISCLAIMER OF WARRANTY

Except as otherwise provided herein, we warrant that the Software is free from defects in material and workmanship and will perform substantially in accordance with the Software documentation under normal use for one hundred eighty (180) days after the receipt of the Software. If you notify us within such one hundred eighty (180) day period of any claimed defect in the Software, we will at our sole option and expense, and as you sole remedy, either repair or replace the defective Software. Or, if we cannot repair or replace the Software then we will accept the return of the Software at our expense and refund the purchase price of the Software.

EXCEPT AS STATED HEREIN, THE SOFTWARE AND SERVICES OFFERED BY US ARE PROVIDED ON AN "AS IS" AND "AS AVAILABLE" BASIS WITHOUT WARRANTIES OF ANY OTHER KIND, EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF TITLE, NONINFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. WE DO NOT WARRANT THAT THE SOFTWARE WILL BE UNINTERRUPTED, TIMELY, RELIABLE, SECURE OR ERROR-FREE AND EXPRESSLY DISCLAIM ANY WARRANTIES AS TO THE MATERIALS CONTAINED THEREIN, THE SERVERS USED OR THE GOODS OR SERVICES OFFERED BY US.

EXCLUSION OF CERTAIN DAMAGES

IN NO EVENT WILL EITHER PARTY BE LIABLE FOR ANY DAMAGES, INCLUDING ANY LOST PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING FROM THE USE OR THE INABILITY TO USE THE SOFTWARE (EVEN IF A PARTY OR AN AUTHORIZED DEALER OR DISTRIBUTOR HAS BEEN ADVISED OF THE POSSIBILITY OF THESE DAMAGES), OR FOR ANY CLAIM BY ANY OTHER PARTY. EXCLUDED FROM THE ABOVE LIMITATION OF LIABILITY IS LIABILITY FOR INDEMNIFICATION AS STATED HEREIN AND DAMAGES CAUSED BY THE GROSS NEGLIGENCE OR WILLFUL MISCONDUCT OF A PARTY.

TERM AND TERMINATION

This Agreement takes effect upon your acceptance of the terms of this Agreement and remains effective until terminated by either party in accordance with this Agreement. You may terminate this Agreement at any time by destroying all copies of the Software and Documentation in your possession and giving us prompt notice of same. This Agreement will automatically terminate if you fail to comply with any term or condition of this Agreement. Upon termination of this Agreement, you warrant and represent that you will immediately destroy all copies of the Software and Documentation or other materials provided to you hereunder, if any, that are still in your possession and provide us prompt written assurance of same.

CONFIDENTIALITY

Non-disclosure. You agree and acknowledge that the Software, its algorithms, protocols or interfaces, and the Documentation constitute proprietary and confidential information that belong to us (the "Confidential Information"). You also understand and agree that misuse and/or unauthorized disclosure of our Confidential Information could adversely affect our business. Accordingly, you agree that at all times you will (a) use and reproduce the Confidential Information only for the purposes of this Agreement and only to the extent necessary for such purpose; (b) restrict disclosure of the Confidential Information to your employees, consultants or independent contractors with a need to know and (c) not disclose the Confidential Information to any third party without our prior written approval. Notwithstanding the foregoing, it shall not be a breach of this Agreement for You to disclose Confidential Information if required to do so under law or in a judicial or other governmental investigation or proceeding, provided however, that You give us prior notice of the disclosure sought and You seek all reasonably available safeguards against widespread dissemination prior to such disclosure.

Remedies: You acknowledge that any violation of this paragraph may cause us immediate and irreparable harm and that the damages which we will suffer may be difficult or impossible to measure. Therefore, upon any actual or impending violation of this paragraph, we shall be entitled to the issuance of a restraining order, preliminary and permanent injunction without bond, restraining or enjoining such violation by you, your successors or assigns or any entity or person acting in concert with you. Such remedy shall be additional to and not in limitation of any other remedy which may otherwise be available to us by law.

INDEMNITY

We will at our own expense defend and hold you fully harmless against any action asserted against you (and specifically including costs and reasonable attorneys' fees associated with any such action) to the extent that it is based on a claim that use of the Software and any documentation or other materials being licensed by or provided to you under this Agreement infringes any patent, copyright, license or other proprietary right of any third party. You shall promptly notify us in writing of any such claim. If as a result of any claim of infringement against any patent, copyright, License or other proprietary right of any third party, you are enjoined from using the Software, or if we believe that the Software are likely to become the subject of a claim of infringement, We will at our option and expense will procure the right for you to continue to use the Software, or replace or modify the Software so as to make them non-infringing, or if it cannot do so within a reasonable time period, refund the Software fees paid by you pursuant to the Agreement.

GENERAL PROVISIONS

  1. This Agreement constitutes the entire agreement between you and us concerning the Software and Documentation and supersedes any prior or contemporaneous negotiations, discussions, understandings, purchase orders, communications, advertising or representations concerning the subject matter hereof.
  2. This Agreement may be modified or amended only in writing signed by you and us.
  3. In the event of litigation between you and us concerning the Software or Documentation, the prevailing party in the litigation will be entitled to recover attorneys' fees and expenses from the other party.
  4. You agree that the Software will not be shipped, transferred or exported into any country or used in any manner prohibited by any export laws, restrictions or regulations.
  5. The failure or delay of of either party to exercise any of its rights under this Agreement or upon any breach of this Agreement shall not be deemed a waiver of those rights or of the breach.
  6. If any provision of this Agreement shall be held by a court of competent jurisdiction to be contrary to law that provision will be enforced to the maximum extent permissible and the remaining provisions of this Agreement will remain in full force and effect.