]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-includes/js/swfupload/handlers.js
Wordpress 2.7.1
[autoinstalls/wordpress.git] / wp-includes / js / swfupload / handlers.js
index 75ce85c5c69e499447e5337943d7382332600fba..fccaf71cd48b3a1a51ef5dfcc7f8509bfc8a78dc 100644 (file)
@@ -35,6 +35,7 @@ function prepareMediaItem(fileObj, serverData) {
        jQuery('#media-item-' + fileObj.id + ' .bar').remove();
        jQuery('#media-item-' + fileObj.id + ' .progress').hide();
 
+       var f = ( typeof shortform == 'undefined' ) ? 1 : 2;
        // Old style: Append the HTML returned by the server -- thumbnail and form inputs
        if ( isNaN(serverData) || !serverData ) {
                jQuery('#media-item-' + fileObj.id).append(serverData);
@@ -42,7 +43,7 @@ function prepareMediaItem(fileObj, serverData) {
        }
        // New style: server data is just the attachment ID, fetch the thumbnail and form html from the server
        else {
-               jQuery('#media-item-' + fileObj.id).load('async-upload.php', {attachment_id:serverData, fetch:1}, function(){prepareMediaItemInit(fileObj);updateMediaForm()});
+               jQuery('#media-item-' + fileObj.id).load('async-upload.php', {attachment_id:serverData, fetch:f}, function(){prepareMediaItemInit(fileObj);updateMediaForm()});
        }
 }
                
@@ -55,7 +56,7 @@ function prepareMediaItemInit(fileObj) {
        jQuery('#media-item-' + fileObj.id + ' .filename.original').replaceWith(jQuery('#media-item-' + fileObj.id + ' .filename.new'));
 
        // Also bind toggle to the links
-       jQuery('#media-item-' + fileObj.id + ' a.toggle').bind('click', function(){jQuery(this).siblings('.slidetoggle').slideToggle(150, function(){window.scrollTo(0,this.parentNode.offsetTop);});jQuery(this).parent().eq(0).children('.toggle').toggle();jQuery(this).siblings('a.toggle').focus();return false;});
+       jQuery('#media-item-' + fileObj.id + ' a.toggle').bind('click', function(){jQuery(this).siblings('.slidetoggle').slideToggle(150, function(){var o=jQuery(this).offset();window.scrollTo(0,o.top-36);});jQuery(this).parent().eq(0).children('.toggle').toggle();jQuery(this).siblings('a.toggle').focus();return false;});
 
        // Bind AJAX to the new Delete button
        jQuery('#media-item-' + fileObj.id + ' a.delete').bind('click',function(){
@@ -118,6 +119,7 @@ function deleteError(X, textStatus, errorThrown) {
 }
 
 function updateMediaForm() {
+       storeState();
        // Just one file, no need for collapsible part
        if ( jQuery('.type-form #media-items>*').length == 1 ) {
                jQuery('#media-items .slidetoggle').slideDown(500).parent().eq(0).children('.toggle').toggle();
@@ -204,6 +206,19 @@ function fileDialogComplete(num_files_queued) {
        }
 }
 
+function swfuploadPreLoad() {
+       var swfupload_element = jQuery('#'+swfu.customSettings.swfupload_element_id).get(0);
+       jQuery('#' + swfu.customSettings.degraded_element_id).hide();
+       // Doing this directly because jQuery().show() seems to have timing problems
+       if ( swfupload_element && ! swfupload_element.style.display )
+                       swfupload_element.style.display = 'block';
+}
+
+function swfuploadLoadFailed() {
+       jQuery('#' + swfu.customSettings.swfupload_element_id).hide();
+       jQuery('#' + swfu.customSettings.degraded_element_id).show();
+}
+
 function uploadError(fileObj, error_code, message) {
        // first the file specific error
        if ( error_code == SWFUpload.UPLOAD_ERROR.MISSING_UPLOAD_URL ) {
@@ -233,3 +248,40 @@ function uploadError(fileObj, error_code, message) {
                wpQueueError(swfuploadL10n.security_error);
        }
 }
+
+// remember the last used image size, alignment and url
+var storeState;
+(function($){
+
+storeState = function(){
+       var align = getUserSetting('align') || '', imgsize = getUserSetting('imgsize') || '';
+
+       $('tr.align input[type="radio"]').click(function(){
+               setUserSetting('align', $(this).val());
+       }).filter(function(){
+               if ( $(this).val() == align )
+                       return true;
+               return false;
+       }).attr('checked','checked');
+
+       $('tr.image-size input[type="radio"]').click(function(){
+               setUserSetting('imgsize', $(this).val());
+       }).filter(function(){
+               if ( $(this).attr('disabled') || $(this).val() != imgsize )
+                       return false;
+               return true;
+       }).attr('checked','checked');
+
+       $('tr.url button').click(function(){
+               var c = this.className || '';
+               c = c.replace(/.*?(url[^ '"]+).*/, '$1');
+               if (c) setUserSetting('urlbutton', c);
+               $(this).siblings('.urlfield').val( $(this).attr('title') );
+       });
+
+       $('tr.url .urlfield').each(function(){
+               var b = getUserSetting('urlbutton');
+               $(this).val( $(this).siblings('button.'+b).attr('title') );
+       });
+}
+})(jQuery);