Changeset 92709 in spip-zone


Ignore:
Timestamp:
Nov 6, 2015, 7:11:21 PM (4 years ago)
Author:
p@…
Message:

Nouvelle approche, les fichiers sont directement uploadé

On les affiches au dessus de la dropzone.
maxFiles est ajusté en fonction du nombre de tmp.

Location:
_plugins_/uploadhtml5/trunk
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/uploadhtml5/trunk/javascript/spip.dropzone_saisie.js.html

    r92708 r92709  
    22[(#SET{maxFiles, [(#ENV{maxFiles, [(#CONFIG{uploadhtml5/max_file}|>{0}|?{#CONFIG{uploadhtml5/max_file},null})]})]})]
    33
     4[(#REM) maxFiles peut également être altérer lorsqu'il y a déjà des fichiers en session ]
     5<BOUCLE_upload_en_session(DOCUMENTS){id_document IN #SESSION{upload}}{statut=tmp}{si #GET{maxFiles}|!={null}|oui}>
     6  [(#SET{maxFiles, #GET{maxFiles}|moins{#TOTAL_BOUCLE}})]
     7</BOUCLE_upload_en_session>
     8
    49<script type="text/javascript">
    5 
    6 // Cette fonction s'occupe de bloquer le submit et de lancer l'upload de la queue
    7  var processSaisieUpload = function (event) {
    8    // Ne pas submit vraiment le formulaire
    9    event.preventDefault();
    10    event.stopPropagation();
    11 
    12    // Activer l'autoProcess
    13    event.data.dropzone.options.autoProcessQueue = true;
    14    // Lancer l'upload
    15    event.data.dropzone.processQueue();
    16  }
    17 
    1810 var options = {
    1911   [url: "(#ENV*{url})",]
     
    2315
    2416   // On déclenchera manuellement l'envoie
    25    autoProcessQueue: false,
     17   autoProcessQueue: true,
    2618
    2719   // Pour ne pas embrouiller le script d'upload, on ne va faire qu'un seul fichier à la fois
     
    3022   [acceptedFiles: "(#ENV{acceptedFiles})",]
    3123
    32    init: function () {
    33 
    34      // Si le formulaire est soumit, on va d'abord envoyer les fichiers
    35      $("\##ENV{id}").parents("form").bind("submit",{dropzone: this}, processSaisieUpload);
    36    },
    37 
    38    queuecomplete: function () {
    39      // Le formulaire est uploader, on a plus besoin de l'event sur submit
    40      // On soumet le formulaire normalement
    41      $("\##ENV{id}").parents("form")
    42                     .unbind("submit", processSaisieUpload)
    43                     .submit();
     24   success: function(file, response) {
     25     ajaxReload("saisie_upload");
    4426   },
    4527
    4628   // Traduire dropzone
    4729   #INCLURE{fond=javascript/traduire_dropzone/#ENV{paramName, file}, env}
    48 
    4930 };
    5031
  • _plugins_/uploadhtml5/trunk/saisies/upload.html

    r92702 r92709  
     1<INCLURE{fond=inclure/inc-saisie_upload, env, ajax=saisie_upload} />
     2
    13[(#SET{id, [(#ENV{id,#ENV{nom}}|saisie_nom2classe)]})]
    24[(#SET{url, #URL_ACTION_AUTEUR{send_upload, upload}|replace{&amp;, &}})]
Note: See TracChangeset for help on using the changeset viewer.