]> git.mxchange.org Git - friendica.git/blobdiff - include/items.php
basic file upload/attach
[friendica.git] / include / items.php
index 6f15b6814b9a73377dbd33aec49160c888440482..cbf5e4d24dd49113514f0d86e6cf8355fae18642 100644 (file)
@@ -354,6 +354,9 @@ function get_atom_elements($feed,$item) {
                $res['body'] = preg_replace('#<object[^>]+>.+?' . 'http://www.youtube.com/((?:v|cp)/[A-Za-z0-9\-_=]+).+?</object>#s',
                        '[youtube]$1[/youtube]', $res['body']);
 
+               $res['body'] = preg_replace('#<iframe[^>].+?' . 'http://www.youtube.com/embed/([A-Za-z0-9\-_=]+).+?</iframe>#s',
+                       '[youtube]$1[/youtube]', $res['body']);
+
                $res['body'] = oembed_html2bbcode($res['body']);
 
                $config = HTMLPurifier_Config::createDefault();
@@ -381,6 +384,9 @@ function get_atom_elements($feed,$item) {
        else
                $res['private'] = 0;
 
+       $extid = $item->get_item_tags(NAMESPACE_DFRN,'extid');
+       if($extid && $extid[0]['data'])
+               $res['extid'] = $extid[0]['data'];
 
        $rawlocation = $item->get_item_tags(NAMESPACE_DFRN, 'location');
        if($rawlocation)
@@ -521,6 +527,10 @@ function get_atom_elements($feed,$item) {
                                $body = preg_replace('#<object[^>]+>.+?' . 'http://www.youtube.com/((?:v|cp)/[A-Za-z0-9\-_=]+).+?</object>#s',
                                        '[youtube]$1[/youtube]', $body);
 
+               $res['body'] = preg_replace('#<iframe[^>].+?' . 'http://www.youtube.com/embed/([A-Za-z0-9\-_=]+).+?</iframe>#s',
+                       '[youtube]$1[/youtube]', $res['body']);
+
+
                                $config = HTMLPurifier_Config::createDefault();
                                $config->set('Cache.DefinitionImpl', null);
 
@@ -560,6 +570,9 @@ function get_atom_elements($feed,$item) {
                                $body = preg_replace('#<object[^>]+>.+?' . 'http://www.youtube.com/((?:v|cp)/[A-Za-z0-9\-_=]+).+?</object>#s',
                                        '[youtube]$1[/youtube]', $body);
 
+               $res['body'] = preg_replace('#<iframe[^>].+?' . 'http://www.youtube.com/embed/([A-Za-z0-9\-_=]+).+?</iframe>#s',
+                       '[youtube]$1[/youtube]', $res['body']);
+
                                $config = HTMLPurifier_Config::createDefault();
                                $config->set('Cache.DefinitionImpl', null);
 
@@ -624,6 +637,7 @@ function item_store($arr,$force_parent = false) {
 
        $arr['wall']          = ((x($arr,'wall'))          ? intval($arr['wall'])                : 0);
        $arr['uri']           = ((x($arr,'uri'))           ? notags(trim($arr['uri']))           : random_string());
+       $arr['extid']         = ((x($arr,'extid'))         ? notags(trim($arr['extid']))         : '');
        $arr['author-name']   = ((x($arr,'author-name'))   ? notags(trim($arr['author-name']))   : '');
        $arr['author-link']   = ((x($arr,'author-link'))   ? notags(trim($arr['author-link']))   : '');
        $arr['author-avatar'] = ((x($arr,'author-avatar')) ? notags(trim($arr['author-avatar'])) : '');
@@ -1530,7 +1544,7 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
        if(is_array($author))
                $o .= atom_author('author',$author['name'],$author['url'],80,80,$author['thumb']);
        else
-               $o .= atom_author('author',$item['name'],$item['url'],80,80,$item['thumb']);
+               $o .= atom_author('author',(($item['author-name']) ? $item['author-name'] : $item['name']),(($item['author-link']) ? $item['author-link'] : $item['url']),80,80,(($item['author-avatar']) ? $item['author-avatar'] : $item['thumb']));
        if(strlen($item['owner-name']))
                $o .= atom_author('dfrn:owner',$item['owner-name'],$item['owner-link'],80,80,$item['owner-avatar']);
 
@@ -1558,6 +1572,10 @@ function atom_entry($item,$type,$author,$owner,$comment = false) {
        if(($item['private']) || strlen($item['allow_cid']) || strlen($item['allow_gid']) || strlen($item['deny_cid']) || strlen($item['deny_gid']))
                $o .= '<dfrn:private>1</dfrn:private>' . "\r\n";
 
+       if($item['extid'])
+               $o .= '<dfrn:extid>' . $item['extid'] . '</dfrn:extid>' . "\r\n";
+
+
        $verb = construct_verb($item);
        $o .= '<as:verb>' . xmlify($verb) . '</as:verb>' . "\r\n";
        $actobj = construct_activity_object($item);