This documentation is for the old version. Go to the latest Upload Suite docs

Embedding Image Uploader into Life Cycle of Project

Introducing Image Uploader

Image Uploader is a powerful upload component designed for Web 2.0 projects as well as image-oriented and upload-enabled solutions. It provides a rich functionality which allows solving a big number of specific tasks and makes it able to meet requirements posed both for the upload workflow and for the upload tool itself.

The most significant Image Uploader features are client-side image processing, including such actions as resizing, rotating, and watermarking. User-friendly upload is indicated with a progress bar and provided with an ability to resume broken uploads without resending already uploaded files. Also there is the ability to customize Image Uploader GUI elements as well as the uploaded data format. Find a full features list in the Image Uploader Features topic.

So, if Image Uploader is the tool you need, let us familiarize you with it more closely. To begin with Image Uploader, you need to download Image Uploader SDK from http://www.aurigma.com/Products/DownloadFile.aspx?ID=105 location and install it on your development machine. After the installation completes you get a number of folders and files organized in the following structure:

Image Uploader 6.5 Dual
	ImageUploaderPHP
	Samples
	Scripts
	Aurigma.ImageUploader.dll
	ImageUploader37.cab
	ImageUploader37.jar
	ImageUploader.chm

The present article considers what files from this SDK you need and for what purpose in the context of embedding Image Uploader into a project. The main advantage of Image Uploader is that it is designed to be integrated with both work-in-progress and completed projects.

Note

In the case when your project is already based on a previous version of Image Uploader you can easily upgrade it to the latest one using the upgrading guidelines.

Embedding Image Uploader into Project

Image Uploader SDK includes several tools intended to insert Image Uploader into a web page. Each tool has its own pros and cons, which allows you to choose the one which meets your requirements more precisely. Carefully read descriptions of these tools below; it will help you to make the right decision.

Using Image Uploader ASP.NET Control

Image Uploader ASP.NET control was developed especially for the ASP.NET server platform. It represents an ASP.NET server control which allows deploying and configuring Image Uploader in Microsoft Visual Studio in design mode. Its another advantage is that it significantly simplifies handling uploaded data and saves you the trouble of parsing POST request yourself. This tool is intended most of all for ASP.NET developers; here it enables them to use Image Uploader in a straight-forward way just as the other ASP.NET server controls.

So, if you are going to use Image Uploader in an ASP.NET application, this tool would be the best choice. In that case all you need to extend your application with Image Uploader is to copy the Aurigma.ImageUploader.dll file from the installation package to your application and perform steps listed in the Inserting Image Uploader ASP.NET Control into ASP.NET Page topic.

Using Image Uploader PHP Library

This approach can be used with PHP platform only. Image Uploader PHP library represents a collection of PHP classes intended to deploy and configure Image Uploader as well as to handle uploaded data. The PHP library has nearly the same functionality as the ASP.NET control. Read more about this tool in the Inserting Image Uploader PHP into Page topic.

Thus, using the PHP library is the best approach to embed Image Uploader into a PHP application. In Image Uploader SDK this library is located in the ImageUploaderPHP folder.

Using Image Uploader Embedding Scripts Library

Contrary to the first two approaches, the current one is compatible with any HTTP-compliant server platform and lies in use of special JavaScript API. This JavaScript (iuembed.js) was the only embedding tool available in the earlier versions of Image Uploader. Moreover, it is a base for both Image Uploader ASP.NET control and PHP library. This approach is more complicated in comparison with previously described ones; it requires configuring its parameters manually and does not provide any facility to handle uploaded data. On the other hand, it is more flexible and can be used not only with ASP.NET or PHP.

Image Uploader embedding scripts library is located in the Scripts folder of the SDK. Find the detailed information about it in the Inserting Image Uploader into Web Page and Image Uploader Embedding Scripts Library Reference topics. Additionally, you can look through included samples (the Samples folder) to know how to use these scripts in different applications and platforms.

Evaluating Image Uploader

After you insert Image Uploader into a page, try to upload some files. Most likely, the upload process will not start and you get the following message:

No valid license key for current DNS/IP address specified. If you see this message please contact site administrator.

To get rid of this message and allow Image Uploader to upload files you should register a license key. This key can be trial or full. Full keys are required for a production purpose and will be considered below.

Trial keys allow evaluating Image Uploader on any domain during the 60 days period. Another limitation of the evaluation version is the trial message which is shown whenever you start the upload. You can find the detailed instructions on how to obtain and register trial license keys in the How to Evaluate Image Uploader topic.

Additionally, there are two more ways to evaluate Image Uploader. The first one is to use it on localhost domain where it always works as a full version. The second way is to register development keys which can be used for development purposes only. To obtain development keys just create support case and request them.

Integrating Image Uploader with Project

Image Uploader is designed to be easily integrated with your existing solution, including both look and feel and uploaded data format. It provides a rich functionality to replace buttons by your images, customize colors, fonts and other appearance settings. See the Customizing Appearance topic for details. As for the uploaded data, you can adapt the POST request format for comparability with your server-side API. Here you can add your custom fields as well as rename and remove default ones. Find the detailed information about this feature in the Uploading Additional Data with Files, Configuring POST Format, and POST Field Reference topics.

Moving Project to Production Server

First of all, before to move Image Uploader-enabled project to your production server you need to obtain and register full license keys. These keys should be associated with the domain name or IP address of your server. Carefully read the Removing Limitations of Evaluation Version topic before purchase keys.

The next step is to copy Image Uploader redistributable files along with your application code to the production server. Depending on the way you have embedded Image Uploader into your project you should use the following files:

  • For the ASP.NET control: Aurigma.ImageUploader.dll file;
  • For the PHP library: ImageUploaderPHP folder;
  • For a standard approach: ImageUploader37.cab and ImageUploader37.jar files, and the Scripts folder.
Note

Do not modify scripts from the PHP and JavaScript libraries. If you need to extend some class with your custom functionality override this class in an external script.

Probably, you may need to slightly configure your server before publish your solution. For example, to grant read and write permissions for folders you are going to upload files to or set the limitation for maximum POST request length.

Troubleshooting

If you encounter some problem during installation, evaluation, or uploading try to find a solution in the knowledge base available in the Troubleshooting section. It contains information on how to resolve typical problems which may occur with Image Uploader.

In the case if this information does not help and the problem still occurs feel free to create support case and report us about it.

See Also

Reference

Manual