diff -u b/modules/media_wysiwyg/includes/media_wysiwyg.filter.inc b/modules/media_wysiwyg/includes/media_wysiwyg.filter.inc --- b/modules/media_wysiwyg/includes/media_wysiwyg.filter.inc +++ b/modules/media_wysiwyg/includes/media_wysiwyg.filter.inc @@ -165,11 +165,21 @@ if ($wysiwyg) { $settings['wysiwyg'] = $wysiwyg; + + // Render file in WYSIWYG using appropriate view mode. + $view_mode = db_query('SELECT view_mode FROM {media_view_mode_wysiwyg} WHERE type = :type', array( + ':type' => $file->type, + )) + ->fetchField(); + if (empty($view_mode)) { + $view_mode = $tag_info['view_mode']; + } + // If sending markup to a WYSIWYG, we need to pass the file infomation so // that an inline macro can be generated when the WYSIWYG is detached. // The WYSIWYG plugin is expecting this information in the // Drupal.settings.mediaDataMap variable. - $element = media_wysiwyg_get_file_without_label($file, $tag_info['view_mode'], $settings); + $element = media_wysiwyg_get_file_without_label($file, $view_mode, $settings); $data = array( 'type' => 'media', 'fid' => $file->fid, @@ -179,17 +189,6 @@ drupal_add_js(array('mediaDataMap' => array($file->fid => $data)), 'setting'); $element['#attributes']['data-fid'] = $file->fid; $element['#attributes']['class'][] = 'media-element'; - - // Render file in WYSIWYG using appropriate view mode. - $view_mode = db_query('SELECT view_mode FROM {media_view_mode_wysiwyg} WHERE type = :type', array( - ':type' => $file->type, - )) - ->fetchField(); - if (empty($view_mode)) { - $view_mode = $tag_info['view_mode']; - } - $element = media_wysiwyg_get_file_without_label($file, $view_mode, $settings); - } else { // Display the field elements.