Dotclear

source: admin/js/_media.js @ 1234:9b21618db095

Revision 1234:9b21618db095, 3.1 KB checked in by franck <carnet.franck.paul@…>, 12 years ago (diff)

fieldset should be in form (a11y), fixes #1419

RevLine 
[0]1$(function() {
[1161]2     if ($('#fileupload').length==0) {
3          return;
4     }
[1160]5
[1163]6     $('.button.add').click(function(e) {
7          // Use the native click() of the file input.
8          $('#upfile').click();
9          e.preventDefault();
10     });
11
[1164]12     $('.button.cancel', '#fileupload').click(function(e) {
[1166]13          $('.button.cancel, .button.start','#fileupload .fileupload-buttonbar').hide();
[1165]14     });
[1164]15
16     $('.button.clean', '#fileupload').click(function(e) {
[1166]17          $('.fileupload-ctrl .files .template-download', '#fileupload').slideUp(500, function() {
[1164]18               $(this).remove();
19          });
[1165]20          $(this).hide();
[1162]21          e.preventDefault();
22     });
23
[1161]24     $('#fileupload').fileupload({
25          url: $('#fileupload').attr('action'),
26          autoUpload: false,
[1191]27          sequentialUploads: true,
[1161]28          disabled: true
[1164]29     }).bind('fileuploadadd', function(e, data) {
[1166]30          $('.button.cancel, .button.start', '#fileupload .fileupload-buttonbar').show();
[1161]31     }).bind('fileuploaddone', function(e, data) {
32          if (data.result.files[0].html !==undefined) {
33               $('.media-list p.clear').before(data.result.files[0].html);
34          }
[1164]35          $('.button.clean','#fileupload').show();
[1166]36     }).bind('fileuploadalways', function(e, data) {
37         if ($('.fileupload-ctrl .files .template-upload', '#fileupload').length==0) {
38          $('.button.start, .button.cancel','#fileupload .fileupload-buttonbar').hide();
39         }
[1161]40     });
41
[1234]42     var $container = $('#add-file-f').parent().parent();
[1162]43     var $msg,label;
[1161]44
45     if ($container.hasClass('enhanced_uploader')) {
46          $msg = dotclear.msg.enhanced_uploader_disable;
[1162]47          label = dotclear.jsUpload.msg.choose_files;
[1161]48          $('#fileupload').fileupload({disabled:false});
49     } else {
50          $msg = dotclear.msg.enhanced_uploader_activate;
[1162]51          label = dotclear.jsUpload.msg.choose_file;
[1159]52     }
[1144]53
[1166]54     $('<p class="clear"><a class="enhanced-toggle" href="#">' + $msg + '</a></p>').click( function() {
[1161]55          if ($container.hasClass('enhanced_uploader')) {
56               $msg = dotclear.msg.enhanced_uploader_activate;
[1162]57               label = dotclear.jsUpload.msg.choose_file;
[1161]58               $('#upfile').attr('multiple', false);
[1159]59
[1162]60               // when a user has clicked enhanced_uploader, and has added files
61               // We must remove files in table
62               $('.files .upload-file', '#fileupload').remove();
[1174]63               $('.button.cancel, .button.start','#fileupload .fileupload-buttonbar').hide();
64               $('.button.start','#fileupload').show();
[1162]65               $('#fileupload').fileupload({disabled:true});
66          } else {
67               $msg = dotclear.msg.enhanced_uploader_disable;
68               label = dotclear.jsUpload.msg.choose_files;
69               $('#upfile').attr('multiple', true);
[1174]70               $('.button.start','#fileupload').hide();
[1162]71               $('#fileupload').fileupload({disabled:false});
72          }
73          $(this).find('a').text($msg);
74          $('.add-label', '#fileupload').text(label);
[1159]75
[1162]76          $container.toggleClass('enhanced_uploader');
[1234]77     }).appendTo($('#add-file-f'));
[1144]78
[1161]79     // Replace remove links by a POST on hidden form
80     fileRemoveAct();
[1144]81
[1161]82     function fileRemoveAct() {
83          $('a.media-remove').live('click', function() {
84               var m_name = $(this).parents('ul').find('li:first>a').text();
85               if (window.confirm(dotclear.msg.confirm_delete_media.replace('%s',m_name))) {
86                    var f = $('#media-remove-hide').get(0);
87                    f.elements['remove'].value = this.href.replace(/^(.*)&remove=(.*?)(&|$)/,'$2');
88                    this.href = '';
89                    f.submit();
90               }
91               return false;
92          });
93     }
[250]94});
Note: See TracBrowser for help on using the repository browser.

Sites map