aboutsummaryrefslogtreecommitdiffstats
path: root/include/api.php
diff options
context:
space:
mode:
authorFabio Comuni <fabrix.xm@gmail.com>2011-09-16 09:39:29 +0200
committerFabio Comuni <fabrix.xm@gmail.com>2011-09-16 09:39:29 +0200
commit9d2afc2d3c12f6b70eae11487e491e2d8604ed60 (patch)
treeced4fb400d25762866a773115b122f6c9cc498de /include/api.php
parent019b735ec75989336826e5ad5db6377803ecb050 (diff)
parent2e43b291e73f6d7c36a9d8743fc2635dc3444841 (diff)
downloadvolse-hubzilla-9d2afc2d3c12f6b70eae11487e491e2d8604ed60.tar.gz
volse-hubzilla-9d2afc2d3c12f6b70eae11487e491e2d8604ed60.tar.bz2
volse-hubzilla-9d2afc2d3c12f6b70eae11487e491e2d8604ed60.zip
Merge remote-tracking branch 'friendika/master' into newui
Diffstat (limited to 'include/api.php')
-rw-r--r--include/api.php28
1 files changed, 27 insertions, 1 deletions
diff --git a/include/api.php b/include/api.php
index 1f58a6baa..5d008c290 100644
--- a/include/api.php
+++ b/include/api.php
@@ -466,6 +466,7 @@
}
return null;
}
+
// TODO - media uploads
function api_statuses_update(&$a, $type) {
if (local_user()===false) return false;
@@ -475,7 +476,32 @@
// logger('api_post: ' . print_r($_POST,true));
- $_POST['body'] = urldecode(requestdata('status'));
+ if(requestdata('htmlstatus')) {
+ require_once('library/HTMLPurifier.auto.php');
+ require_once('include/html2bbcode.php');
+
+ $txt = requestdata('htmlstatus');
+ if((strpos($txt,'<') !== false) || (strpos($txt,'>') !== false)) {
+
+ $txt = preg_replace('#<object[^>]+>.+?' . 'http://www.youtube.com/((?:v|cp)/[A-Za-z0-9\-_=]+).+?</object>#s',
+ '[youtube]$1[/youtube]', $txt);
+
+ $txt = preg_replace('#<iframe[^>].+?' . 'http://www.youtube.com/embed/([A-Za-z0-9\-_=]+).+?</iframe>#s',
+ '[youtube]$1[/youtube]', $txt);
+
+ $config = HTMLPurifier_Config::createDefault();
+ $config->set('Cache.DefinitionImpl', null);
+
+
+ $purifier = new HTMLPurifier($config);
+ $txt = $purifier->purify($txt);
+
+ $_POST['body'] = html2bbcode($txt);
+ }
+
+ }
+ else
+ $_POST['body'] = urldecode(requestdata('status'));
$parent = requestdata('in_reply_to_status_id');
if(ctype_digit($parent))