Versão atual:

Widget de envio de Documentos para Pasta selecionada.

Queria saber como faço para fazer Upload de Documentos na pasta selecionada dentro de uma Widget ?

Tenho um script aqui que peguei no Git do Fluig, porem ele só faz o upload dentro da pasta que eu coloquei manualmente no script.

data: JSON.stringify({
        "description": file.name,
        "parentId": "320",
        "attachments": [{
        "fileName": file.name
        }],
    }),

O que preciso é que eu possa escolher pela widget em qual pasta subir o arquivo.

Script

var MyWidget = SuperWidget.extend({
    //variáveis da widget
    variavelNumerica: null,
    variavelCaracter: null,

    //método iniciado quando a widget é carregada
    init: function() {
        $(function () {
            $('#fileupload').fileupload({
                dataType: 'json',
                done: function (e, data) {

                    var myLoading1 = FLUIGC.loading('#upload-file');
                    myLoading1.show();

                    $.each(data.result.files, function (index, file) {
                        $.ajax({
                            async : true,
                            type : "POST",
                            contentType: "application/json",
                            url : '/api/public/ecm/document/createDocument',

                            data: JSON.stringify({
                                "description": file.name,
                                "parentId": "320",
                                "attachments": [{
                                    "fileName": file.name
                                }],
                            }),

                            error: function() {
                                FLUIGC.toast({
                                     title: '',
                                     message: "Falha ao enviar",
                                     type: 'danger'
                                 });
                                myLoading1.hide();
                            },

                            success: function(data) {
                                FLUIGC.toast({
                                     title: '',
                                     message: "Documento publicado - " + file.name,
                                     type: 'info'
                                 });
                                myLoading1.hide();
                            },
                        });
                    });
                }
            });
        });
    },

    //BIND de eventos
    bindings: {
        local: {
            'execute': ['click_executeAction']
        },
        global: {}
    },

    executeAction: function(htmlElement, event) {
    }

});

View.ftl

<div id="MyWidget_${instanceId}" class="super-widget wcm-widget-class fluig-style-guide" data-params="MyWidget.instance()">
    <div class="fluig-style-guide">
        <form name="form" role="form">        
            <div class="panel panel-default" id="upload-file">
                <div class="panel-heading">
                    <h3 class="panel-title">Upload</h3>
                </div>
                <div class="panel-body">                    
                    <a class="file-input-wrapper btn btn-default ">
                    <span>Buscar Arquivo(s)</span>
                    <input 
                        id="fileupload" 
                        type="file" 
                        name="files" 
                        data-url="/ecm/upload"
                        class="btn btn-primary btn-sm btn-block"
                        title="Buscar Arquivo(s)"
                        multiple/>
                    </a>
                </div>
            </div>        
        </form>
    </div>

</div>

Versões (4):

Ver a versão formatada

Widget de envio de Documentos para Pasta selecionada.

Comentário

new question