diff --git a/images/pen.png b/images/pen.png new file mode 100644 index 0000000000..46b4049418 Binary files /dev/null and b/images/pen.png differ diff --git a/images/penhover.png b/images/penhover.png new file mode 100644 index 0000000000..be48d77b41 Binary files /dev/null and b/images/penhover.png differ diff --git a/mod/parse_url.php b/mod/parse_url.php new file mode 100644 index 0000000000..33381a0d27 --- /dev/null +++ b/mod/parse_url.php @@ -0,0 +1,32 @@ +%s"; + + if($url) + $s = fetch_url($url); + + if(! $s) { + echo sprintf($template,$url,$url); + killme(); + } + + $dom = HTML5_Parser::parse($s); + + if(! $dom) + return $ret; + + $items = $dom->getElementsByTagName('title'); + + foreach($items as $item) { + $title = $item->textContent; + break; + } + + echo sprintf($template,$url,$title); + killme(); +} \ No newline at end of file diff --git a/mod/wall_upload.php b/mod/wall_upload.php index 769e5dcbca..d74eae3023 100644 --- a/mod/wall_upload.php +++ b/mod/wall_upload.php @@ -1,16 +1,98 @@ getImage())) { + notice("Unable to process image." . EOL); + @unlink($src); + return; + } + @unlink($src); - echo "get_baseurl(). "/images/default-profile.jpg\" alt=\"default\" />"; + $width = $ph->getWidth(); + $height = $ph->getHeight(); + + $hash = hash('md5',uniqid(mt_rand(),true)); + + $str_image = $ph->imageString(); + $smallest = 0; + + $r = q("INSERT INTO `photo` ( `uid`, `resource-id`, `created`, `edited`, `filename`, + `height`, `width`, `data`, `scale` ) + VALUES ( %d, '%s', '%s', '%s', '%s', %d, %d, '%s', 0 )", + intval($_SESSION['uid']), + dbesc($hash), + datetime_convert(), + datetime_convert(), + dbesc(basename($filename)), + intval($height), + intval($width), + dbesc($str_image)); + if($r) + notice("Image uploaded successfully." . EOL); + else + notice("Image upload failed." . EOL); + + if($width > 640 || $height > 640) { + $ph->scaleImage(640); + + $r = q("INSERT INTO `photo` ( `uid`, `resource-id`, `created`, `edited`, `filename`, + `height`, `width`, `data`, `scale` ) + VALUES ( %d, '%s', '%s', '%s', '%s', %d, %d, '%s', 1 )", + intval($_SESSION['uid']), + dbesc($hash), + datetime_convert(), + datetime_convert(), + dbesc(basename($filename)), + intval($ph->getHeight()), + intval($ph->getWidth()), + dbesc($ph->imageString()) + ); + if($r === false) + notice("Image size reduction (640) failed." . EOL ); + else + $smallest = 1; + } + + if($width > 320 || $height > 320) { + $ph->scaleImage(320); + + $r = q("INSERT INTO `photo` ( `uid`, `resource-id`, `created`, `edited`, `filename`, + `height`, `width`, `data`, `scale` ) + VALUES ( %d, '%s', '%s', '%s', '%s', %d, %d, '%s', 2 )", + intval($_SESSION['uid']), + dbesc($hash), + datetime_convert(), + datetime_convert(), + dbesc(basename($filename)), + intval($ph->getHeight()), + intval($ph->getWidth()), + dbesc($ph->imageString()) + ); + if($r === false) + notice("Image size reduction (320) failed." . EOL ); + else + $smallest = 2; + } + + $basename = basename($filename); + + echo "get_baseurl(). "/photo/{$hash}-{$smallest}.jpg\" alt=\"$basename\" />"; killme(); } \ No newline at end of file diff --git a/view/jot-header.tpl b/view/jot-header.tpl index 97e30cdae7..3f8fe5302f 100644 --- a/view/jot-header.tpl +++ b/view/jot-header.tpl @@ -27,16 +27,28 @@ tinyMCE.init({ var uploader = new window.AjaxUpload( 'wall-image-upload', { action: 'wall_upload', - name: 'userfile', - onComplete: function(file,response) { - tinyMCE.execCommand('mceInsertRawHTML',false,response); - } + name: 'userfile', + onSubmit: function(file,ext) { $('#profile-rotator').show(); }, + onComplete: function(file,response) { + tinyMCE.execCommand('mceInsertRawHTML',false,response); + $('#profile-rotator').hide(); + } } ); }); + function jotGetLink() { + reply = prompt("Please enter a link URL:"); + $('#profile-rotator').show(); + $.get('parse_url?url=' + reply, function(data) { + tinyMCE.execCommand('mceInsertRawHTML',false,data); + $('#profile-rotator').hide(); + }); + } + +