summaryrefslogtreecommitdiffstats
path: root/wp-admin/press-this.php
diff options
context:
space:
mode:
authordonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2008-08-13 15:13:05 +0000
committerdonncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36>2008-08-13 15:13:05 +0000
commitbfa3b629e0d67016ec83050c5db762479af40609 (patch)
tree4c9ae204172d0fad3ae056ccc65ffe9ea91134d2 /wp-admin/press-this.php
parent7258ea2d7eeedb439607b72a1f74dee98e4b9d12 (diff)
downloadwordpress-mu-bfa3b629e0d67016ec83050c5db762479af40609.tar.gz
wordpress-mu-bfa3b629e0d67016ec83050c5db762479af40609.tar.xz
wordpress-mu-bfa3b629e0d67016ec83050c5db762479af40609.zip
Merge with WP revision 8635
git-svn-id: http://svn.automattic.com/wordpress-mu/branches/2.6@1421 7be80a69-a1ef-0310-a953-fb0f7c49ff36
Diffstat (limited to 'wp-admin/press-this.php')
-rw-r--r--wp-admin/press-this.php40
1 files changed, 19 insertions, 21 deletions
diff --git a/wp-admin/press-this.php b/wp-admin/press-this.php
index 1e42def..863458e 100644
--- a/wp-admin/press-this.php
+++ b/wp-admin/press-this.php
@@ -34,13 +34,14 @@ function press_it() {
$content = $_REQUEST['content'];
foreach( (array) $_REQUEST['photo_src'] as $key => $image) {
- // escape quote for matching
- $quoted = preg_quote2($image);
-
+
// see if files exist in content - we don't want to upload non-used selected files.
- if( strpos($_REQUEST['content'], $quoted) !== false ) {
+ if( strpos($_REQUEST['content'], $image) !== false ) {
$upload = media_sideload_image($image, $post_ID, $_REQUEST['photo_description'][$key]);
+
// Replace the POSTED content <img> with correct uploaded ones.
+ // escape quote for matching
+ $quoted = preg_quote2($image);
if( !is_wp_error($upload) ) $content = preg_replace('/<img ([^>]*)src=(\"|\')'.$quoted.'(\2)([^>\/]*)\/*>/is', $upload, $content);
}
}
@@ -183,19 +184,21 @@ if($_REQUEST['ajax'] == 'photo_images') {
$host = parse_url($uri);
- $pattern = '/<img ([^>]*)src=(\"|\')([^<>]+?\.(png|jpeg|jpg|jpe|gif)[^<>\'\"]*)(\2)([^>\/]*)\/*>/is';
+ $pattern = '/<img ([^>]*)src=(\"|\')([^<>]+?\.(png|jpeg|jpg|jpe|gif))[^<>\'\"]*(\2)([^>\/]*)\/*>/is';
preg_match_all($pattern, $content, $matches);
-
+
if ( empty($matches[1]) ) return '';
$sources = array();
foreach ($matches[3] as $src) {
+ // if no http in url
if(strpos($src, 'http') === false)
- if(strpos($src, '../') === false && strpos($src, './') === false)
+ // if it doesn't have a relative uri
+ if( strpos($src, '../') === false && strpos($src, './') === false && strpos($src, '/') === true)
$src = 'http://'.str_replace('//','/', $host['host'].'/'.$src);
else
- $src = 'http://'.str_replace('//','/', $host['host'].'/'.$host['path'].'/'.$src);
-
+ $src = 'http://'.str_replace('//','/', $host['host'].'/'.dirname($host['path']).'/'.$src);
+
$sources[] = clean_url($src);
}
return "'" . implode("','", $sources) . "'";
@@ -246,12 +249,12 @@ if($_REQUEST['ajax'] == 'photo_js') { ?>
}
function pick(img, desc) {
- if (img) {
- length = jQuery('.photolist input').length;
+ if (img) {
+ if('object' == typeof jQuery('.photolist input') && jQuery('.photolist input').length != 0) length = jQuery('.photolist input').length;
if(length == 0) length = 1;
jQuery('.photolist').append('<input name="photo_src[' + length + ']" value="' + img +'" type="hidden"/>');
jQuery('.photolist').append('<input name="photo_description[' + length + ']" value="' + desc +'" type="hidden"/>');
- append_editor("\n\n" + '<p><img src="' + img +'" alt="' + desc + '" /></p>');
+ append_editor("\n\n" + '<p><img src="' + img +'" alt="' + desc + '" class="aligncenter"/></p>');
}
tinyMCE.activeEditor.resizeToContent();
return false;
@@ -266,6 +269,7 @@ if($_REQUEST['ajax'] == 'photo_js') { ?>
}
jQuery(document).ready(function() {
+ jQuery('#extra_fields').html('<div class="photolist"></div><small id="photo_directions"><?php _e("Click images to select:") ?> <span><a href="#" id="photo_add_url" class="thickbox"><?php _e("Add from URL") ?> +</a></span></small><div class="titlewrap"><div id="img_container"></div></div>');
jQuery('#img_container').html(strtoappend);
jQuery('#photo_add_url').attr('href', '?ajax=thickbox_url&height=200&width=500');
tb_init('a.thickbox, area.thickbox, input.thickbox');
@@ -275,13 +279,7 @@ if($_REQUEST['ajax'] == 'photo_js') { ?>
}
if($_REQUEST['ajax'] == 'photo') { ?>
- <div class="photolist"></div>
- <small id="photo_directions"><?php _e('Click images to select:') ?> <span><a href="#" id="photo_add_url" class="thickbox"><?php _e('Add from URL') ?> +</a></span></small>
-
- <div class="titlewrap">
- <div id="img_container"></div>
- </div>
<?php die;
}
?>
@@ -322,6 +320,7 @@ if($_REQUEST['ajax'] == 'photo') { ?>
editor_selector: "mceEditor",
language : "<?php echo $language; ?>",
width: "100%",
+ height: "300",
theme : "advanced",
theme_advanced_buttons1 : "bold,italic,underline,blockquote,separator,strikethrough,bullist,numlist,undo,redo,link,unlink",
theme_advanced_buttons2 : "",
@@ -445,7 +444,6 @@ if($_REQUEST['ajax'] == 'photo') { ?>
<?php } ?>
jQuery('#extra_fields').show();
jQuery('#extra_fields').before('<h2 id="waiting"><img src="images/loading.gif" alt="" /><?php echo js_escape( __( 'Loading...' ) ); ?></h2>');
- jQuery('#extra_fields').load('<?php echo clean_url($_SERVER['PHP_SELF']).'/?ajax=photo&u='.attribute_escape($url); ?>');
jQuery.ajax({
type: "GET",
cache : false,
@@ -472,7 +470,7 @@ if($_REQUEST['ajax'] == 'photo') { ?>
show('video');
<?php } elseif ( preg_match("/vimeo\.com\/[0-9]+/i", $url) ) { ?>
show('video');
- <?php } elseif ( preg_match("/flickr\.com/i", $url) ) { ?>
+ <?php } elseif ( preg_match("/flickr\.com/i", $url) ) { ?>
show('photo');
<?php } ?>
});
@@ -505,7 +503,7 @@ if($_REQUEST['ajax'] == 'photo') { ?>
<div class="editor_area">
<h2 id="content_type"><label for="content"><?php _e('Post') ?></label></h2>
<div class="editor-container">
- <textarea name="content" id="content" style="width:100%;" class="mceEditor"><?php if ($selection) { echo wp_richedit_pre($selection); } ?><a href="<?php echo $url ?>"><?php echo $title; ?></a>.</textarea>
+ <textarea name="content" id="content" style="width:100%;" class="mceEditor" rows="15"><?php if ($selection) { echo wp_richedit_pre($selection); } ?><a href="<?php echo $url ?>"><?php echo $title; ?></a>.</textarea>
</div>
</div>
</div>