aboutsummaryrefslogtreecommitdiffstats
path: root/mod/oep.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/oep.php')
-rw-r--r--mod/oep.php398
1 files changed, 0 insertions, 398 deletions
diff --git a/mod/oep.php b/mod/oep.php
deleted file mode 100644
index 36741a752..000000000
--- a/mod/oep.php
+++ /dev/null
@@ -1,398 +0,0 @@
-<?php
-
-// oembed provider
-
-
-
-function oep_init(&$a) {
-
- logger('oep: ' . print_r($_REQUEST,true), LOGGER_DEBUG, LOG_INFO);
-
- $html = ((argc() > 1 && argv(1) === 'html') ? true : false);
- if($_REQUEST['url']) {
- $_REQUEST['url'] = strip_zids($_REQUEST['url']);
- $url = $_REQUEST['url'];
- }
-
- if(! $url)
- http_status_exit(404, 'Not found');
-
- $maxwidth = $_REQUEST['maxwidth'];
- $maxheight = $_REQUEST['maxheight'];
- $format = $_REQUEST['format'];
- if($format && $format !== 'json')
- http_status_exit(501, 'Not implemented');
-
- if(fnmatch('*/photos/*/album/*',$url))
- $arr = oep_album_reply($_REQUEST);
- elseif(fnmatch('*/photos/*/image/*',$url))
- $arr = oep_photo_reply($_REQUEST);
- elseif(fnmatch('*/photos*',$url))
- $arr = oep_phototop_reply($_REQUEST);
- elseif(fnmatch('*/display/*',$url))
- $arr = oep_display_reply($_REQUEST);
- elseif(fnmatch('*/channel/*mid=*',$url))
- $arr = oep_mid_reply($_REQUEST);
- elseif(fnmatch('*/channel*',$url))
- $arr = oep_profile_reply($_REQUEST);
- elseif(fnmatch('*/profile/*',$url))
- $arr = oep_profile_reply($_REQUEST);
-
- if($arr) {
- if($html) {
- if($arr['type'] === 'rich') {
- header('Content-Type: text/html');
- echo $arr['html'];
- }
- }
- else {
- header('Content-Type: application/json+oembed');
- echo json_encode($arr);
- }
- killme();
- }
-
- http_status_exit(404,'Not found');
-
-}
-
-function oep_display_reply($args) {
-
- $ret = array();
- $url = $args['url'];
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- if(preg_match('#//(.*?)/(.*?)/(.*?)/(.*?)mid\=(.*?)(&|$)#',$url,$matches)) {
- $chn = $matches[3];
- $res = $matches[5];
- }
-
- if(! ($chn && $res))
- return;
- $c = q("select * from channel where channel_address = '%s' limit 1",
- dbesc($chn)
- );
-
- if(! $c)
- return;
-
- $sql_extra = item_permissions_sql($c[0]['channel_id']);
-
- $p = q("select * from item where mid = '%s' and uid = %d $sql_extra limit 1",
- dbesc($res),
- intval($c[0]['channel_id'])
- );
- if(! $p)
- return;
-
- xchan_query($p,true);
- $p = fetch_post_tags($p,true);
-
- $o = "[share author='".urlencode($p[0]['author']['xchan_name']).
- "' profile='".$p[0]['author']['xchan_url'] .
- "' avatar='".$p[0]['author']['xchan_photo_s'].
- "' link='".$p[0]['plink'].
- "' posted='".$p[0]['created'].
- "' message_id='".$p[0]['mid']."']";
- if($p[0]['title'])
- $o .= '[b]'.$p[0]['title'].'[/b]'."\r\n";
- $o .= $p[0]['body'];
- $o .= "[/share]";
- $o = bbcode($o);
-
- $ret['type'] = 'rich';
-
- $w = (($maxwidth) ? $maxwidth : 640);
- $h = (($maxheight) ? $maxheight : $w * 2 / 3);
-
- $ret['html'] = '<div style="width: ' . $w . '; height: ' . $h . '; font-family: sans-serif,arial,freesans;" >' . $o . '</div>';
-
- $ret['width'] = $w;
- $ret['height'] = $h;
-
- return $ret;
-
-}
-
-function oep_mid_reply($args) {
-
- $ret = array();
- $url = $args['url'];
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- if(preg_match('#//(.*?)/(.*?)/(.*?)/(.*?)mid\=(.*?)(&|$)#',$url,$matches)) {
- $chn = $matches[3];
- $res = $matches[5];
- }
-
- if(! ($chn && $res))
- return;
- $c = q("select * from channel where channel_address = '%s' limit 1",
- dbesc($chn)
- );
-
- if(! $c)
- return;
-
- $sql_extra = item_permissions_sql($c[0]['channel_id']);
-
- $p = q("select * from item where mid = '%s' and uid = %d $sql_extra limit 1",
- dbesc($res),
- intval($c[0]['channel_id'])
- );
- if(! $p)
- return;
-
- xchan_query($p,true);
- $p = fetch_post_tags($p,true);
-
- $o = "[share author='".urlencode($p[0]['author']['xchan_name']).
- "' profile='".$p[0]['author']['xchan_url'] .
- "' avatar='".$p[0]['author']['xchan_photo_s'].
- "' link='".$p[0]['plink'].
- "' posted='".$p[0]['created'].
- "' message_id='".$p[0]['mid']."']";
- if($p[0]['title'])
- $o .= '[b]'.$p[0]['title'].'[/b]'."\r\n";
- $o .= $p[0]['body'];
- $o .= "[/share]";
- $o = bbcode($o);
-
- $ret['type'] = 'rich';
-
- $w = (($maxwidth) ? $maxwidth : 640);
- $h = (($maxheight) ? $maxheight : $w * 2 / 3);
-
- $ret['html'] = '<div style="width: ' . $w . '; height: ' . $h . '; font-family: sans-serif,arial,freesans;" >' . $o . '</div>';
-
- $ret['width'] = $w;
- $ret['height'] = $h;
-
- return $ret;
-
-}
-
-function oep_profile_reply($args) {
-
-
- require_once('include/identity.php');
- require_once('include/Contact.php');
- $url = $args['url'];
-
- if(preg_match('#//(.*?)/(.*?)/(.*?)(/|\?|&|$)#',$url,$matches)) {
- $chn = $matches[3];
- }
-
- if(! $chn)
- return;
-
- $c = channelx_by_nick($chn);
-
- if(! $c)
- return;
-
-
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- $width = 800;
- $height = 375;
-
- if($maxwidth) {
- $width = $maxwidth;
- $height = (375 / 800) * $width;
- }
- if($maxheight) {
- if($maxheight < $height) {
- $width = (800 / 375) * $maxheight;
- $height = $maxheight;
- }
- }
- $ret = array();
-
- $ret['type'] = 'rich';
- $ret['width'] = intval($width);
- $ret['height'] = intval($height);
-
- $ret['html'] = get_zcard($c,get_observer_hash(),array('width' => $width, 'height' => $height));
-
- return $ret;
-
-}
-
-function oep_album_reply($args) {
-
- $ret = array();
- $url = $args['url'];
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- if(preg_match('|//(.*?)/(.*?)/(.*?)/album/|',$url,$matches)) {
- $chn = $matches[3];
- $res = hex2bin(basename($url));
- }
-
- if(! ($chn && $res))
- return;
- $c = q("select * from channel where channel_address = '%s' limit 1",
- dbesc($chn)
- );
-
- if(! $c)
- return;
-
- $sql_extra = permissions_sql($c[0]['channel_id']);
-
- $p = q("select resource_id from photo where album = '%s' and uid = %d and scale = 0 $sql_extra order by created desc limit 1",
- dbesc($res),
- intval($c[0]['channel_id'])
- );
- if(! $p)
- return;
-
- $res = $p[0]['resource_id'];
-
- $r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
- intval($c[0]['channel_id']),
- dbesc($res)
- );
-
- if($r) {
- foreach($r as $rr) {
- $foundres = false;
- if($maxheight && $rr['height'] > $maxheight)
- continue;
- if($maxwidth && $rr['width'] > $maxwidth)
- continue;
- $foundres = true;
- break;
- }
-
- if($foundres) {
- $ret['type'] = 'link';
- $ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
- $ret['thumbnail_width'] = $rr['width'];
- $ret['thumbnail_height'] = $rr['height'];
- }
-
-
- }
- return $ret;
-
-}
-
-
-function oep_phototop_reply($args) {
-
- $ret = array();
- $url = $args['url'];
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- if(preg_match('|//(.*?)/(.*?)/(.*?)$|',$url,$matches)) {
- $chn = $matches[3];
- }
-
- if(! $chn)
- return;
- $c = q("select * from channel where channel_address = '%s' limit 1",
- dbesc($chn)
- );
-
- if(! $c)
- return;
-
- $sql_extra = permissions_sql($c[0]['channel_id']);
-
- $p = q("select resource_id from photo where uid = %d and scale = 0 $sql_extra order by created desc limit 1",
- intval($c[0]['channel_id'])
- );
- if(! $p)
- return;
-
- $res = $p[0]['resource_id'];
-
- $r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
- intval($c[0]['channel_id']),
- dbesc($res)
- );
-
- if($r) {
- foreach($r as $rr) {
- $foundres = false;
- if($maxheight && $rr['height'] > $maxheight)
- continue;
- if($maxwidth && $rr['width'] > $maxwidth)
- continue;
- $foundres = true;
- break;
- }
-
- if($foundres) {
- $ret['type'] = 'link';
- $ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
- $ret['thumbnail_width'] = $rr['width'];
- $ret['thumbnail_height'] = $rr['height'];
- }
-
-
- }
- return $ret;
-
-}
-
-
-function oep_photo_reply($args) {
-
- $ret = array();
- $url = $args['url'];
- $maxwidth = intval($args['maxwidth']);
- $maxheight = intval($args['maxheight']);
-
- if(preg_match('|//(.*?)/(.*?)/(.*?)/image/|',$url,$matches)) {
- $chn = $matches[3];
- $res = basename($url);
- }
-
- if(! ($chn && $res))
- return;
- $c = q("select * from channel where channel_address = '%s' limit 1",
- dbesc($chn)
- );
-
- if(! $c)
- return;
-
- $sql_extra = permissions_sql($c[0]['channel_id']);
-
-
- $r = q("select height, width, scale, resource_id from photo where uid = %d and resource_id = '%s' $sql_extra order by scale asc",
- intval($c[0]['channel_id']),
- dbesc($res)
- );
-
- if($r) {
- foreach($r as $rr) {
- $foundres = false;
- if($maxheight && $rr['height'] > $maxheight)
- continue;
- if($maxwidth && $rr['width'] > $maxwidth)
- continue;
- $foundres = true;
- break;
- }
-
- if($foundres) {
- $ret['type'] = 'link';
- $ret['thumbnail_url'] = z_root() . '/photo/' . '/' . $rr['resource_id'] . '-' . $rr['scale'];
- $ret['thumbnail_width'] = $rr['width'];
- $ret['thumbnail_height'] = $rr['height'];
- }
-
-
- }
- return $ret;
-
-} \ No newline at end of file