file_upload.js 1.23 KiB
/*
 * Copyright (C) 2015 IRSTEA
 * All rights reserved.
 */
(function($) {
    /** Plugin irsteaFileUpload.
     */
    $.fn.irsteaFileUpload = function(options) {
        console.debug('Init', options);
        $(this).fileupload({
            type: 'PUT',
            formData: {},
            add: function (e, data) {
                var file = data.files[0];
                console.debug('Add', file);
                $.post(
                    options.createUrl,
                    { file: { name: file.name, size: file.size, type: file.type, lastModified: file.lastModified } },
                    function(response) {
                        if(response.status === 201) {
                            data.url = response.url;
                            data.multipart = false;
                            data.submit();
            done: function (e, data) {
                console.debug('Done', data);
            fail: function (e, data) {
                $.ajax(data.url, { type: 'DELETE' });
            progress: function(e, data) {
                console.debug('Progress', data);
        });
})(jQuery);