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();
+ });
+ }
+
+