Ignore:
Timestamp:
05/28/14 18:41:56 (5 years ago)
Author:
plg
Message:

feature 2616: better behavior at the end of upload (more like with uploadify, but no page reload)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/themes/default/template/photos_add_direct.tpl

    r28552 r28554  
     1{combine_script id='common' load='footer' path='admin/themes/default/js/common.js'} 
    12{combine_script id='jquery.jgrowl' load='footer' require='jquery' path='themes/default/js/plugins/jquery.jgrowl_minimized.js'} 
    23{combine_script id='jquery.plupload' load='footer' require='jquery' path='themes/default/js/plugins/plupload/plupload.full.min.js'} 
     
    3637jQuery('[data-add-album]').pwgAddAlbum({ cache: categoriesCache }); 
    3738 
    38 var uploadify_path = '{$uploadify_path}'; 
    39 var upload_id = '{$upload_id}'; 
    40 var session_id = '{$session_id}'; 
    4139var pwg_token = '{$pwg_token}'; 
    42 var buttonText = "{'Select files'|@translate}"; 
    43 var sizeLimit = Math.round({$upload_max_filesize} / 1024); /* in KBytes */ 
    44  
    45 var noAlbum_message = "{'Select an album'|translate}"; 
     40var photosUploaded_label = "{'%d photos uploaded'|translate}"; 
     41var batch_Label = "{'Manage this set of %d photos'|translate}"; 
     42var albumSummary_label = "{'Album "%s" now contains %d photos'|translate|escape}"; 
     43var uploadedPhotos = []; 
     44var uploadCategory = null; 
    4645 
    4746{literal} 
     
    9594        console.log('[BeforeUpload]', file); 
    9695 
     96        // no more change on category/level 
     97        jQuery("select[name=level]").attr("disabled", "disabled"); 
     98 
    9799        // You can override settings before the file is uploaded 
    98100        // up.setOption('url', 'upload.php?id=' + file.id); 
     
    122124        jQuery("#uploadedPhotos").prepend(html); 
    123125 
    124         up.removeFile(file); 
     126        // do not remove file, or it will reset the progress bar :-/ 
     127        // up.removeFile(file); 
     128        uploadedPhotos.push(parseInt(data.result.image_id)); 
     129        uploadCategory = data.result.category; 
     130      }, 
     131 
     132      UploadComplete: function(up, files) { 
     133        // Called when all files are either uploaded or failed 
     134        console.log('[UploadComplete]'); 
     135 
     136        jQuery(".selectAlbum, .selectFiles, #permissions, .showFieldset").hide(); 
     137 
     138        jQuery(".infos").append('<ul><li>'+sprintf(photosUploaded_label, uploadedPhotos.length)+'</li></ul>'); 
     139 
     140        html = sprintf( 
     141          albumSummary_label, 
     142          '<a href="admin.php?page=album-'+uploadCategory.id+'">'+uploadCategory.label+'</a>', 
     143          parseInt(uploadCategory.nb_photos) 
     144        ); 
     145 
     146        jQuery(".infos ul").append('<li>'+html+'</li>'); 
     147 
     148        jQuery(".infos").show(); 
     149 
     150        // TODO: use a new method pwg.caddie.empty + 
     151        // pwg.caddie.add(uploadedPhotos) instead of relying on huge GET parameter 
     152        // (and remove useless code from admin/photos_add_direct.php) 
     153 
     154        jQuery(".batchLink").attr("href", "admin.php?page=photos_add&section=direct&batch="+uploadedPhotos.join(",")); 
     155        jQuery(".batchLink").html(sprintf(batch_Label, uploadedPhotos.length)); 
     156 
     157        jQuery(".afterUploadActions").show(); 
    125158      } 
    126159    } 
     
    137170<div id="photosAddContent"> 
    138171 
    139 {* 
    140 <div class="infos"> 
    141   <ul> 
    142     <li>%d photos added..</li> 
    143   </ul> 
    144 </div> 
    145 *} 
     172<div class="infos" style="display:none"></div> 
     173 
     174<p class="afterUploadActions" style="margin:10px; display:none;"><a class="batchLink"></a> | <a href="">{'Add another set of photos'|@translate}</a></p> 
    146175 
    147176{if count($setup_errors) > 0} 
     
    167196 
    168197 
    169 {if !empty($thumbnails)} 
    170 <fieldset> 
    171   <legend>{'Uploaded Photos'|@translate}</legend> 
    172   <div> 
    173   {foreach from=$thumbnails item=thumbnail} 
    174     <a href="{$thumbnail.link}" class="externalLink"> 
    175       <img src="{$thumbnail.src}" alt="{$thumbnail.file}" title="{$thumbnail.title}" class="thumbnail"> 
    176     </a> 
    177   {/foreach} 
    178   </div> 
    179   <p id="batchLink"><a href="{$batch_link}">{$batch_label}</a></p> 
    180 </fieldset> 
    181 <p style="margin:10px"><a href="{$another_upload_link}">{'Add another set of photos'|@translate}</a></p> 
    182 {else} 
    183  
    184198<form id="uploadForm" enctype="multipart/form-data" method="post" action="{$form_action}"> 
    185 {if $upload_mode eq 'multiple'} 
    186     <input name="upload_id" value="{$upload_id}" type="hidden"> 
    187 {/if} 
    188  
    189     <fieldset> 
     199    <fieldset class="selectAlbum"> 
    190200      <legend>{'Drop into album'|@translate}</legend> 
    191201 
     
    231241</form> 
    232242 
    233 <div id="uploadProgress" style="display:none"> 
    234 {'Photo %s of %s'|@translate:'<span id="progressCurrent">1</span>':'<span id="progressMax">10</span>'} 
    235 <br> 
    236 <div id="progressbar"></div> 
    237 </div> 
    238  
    239243<fieldset style="display:none"> 
    240244  <legend>{'Uploaded Photos'|@translate}</legend> 
     
    242246</fieldset> 
    243247 
    244 {/if} {* empty($thumbnails) *} 
    245248{/if} {* $setup_errors *} 
    246249 
Note: See TracChangeset for help on using the changeset viewer.