personal oembed black/white list

This commit is contained in:
redmatrix
2015-08-04 20:07:55 -07:00
parent 5344431fc0
commit ea63f3312f
2 changed files with 30 additions and 0 deletions

View File

@@ -2,6 +2,35 @@
function oembed_replacecb($matches){
$embedurl=$matches[1];
// implements a personal embed white/black list for logged in members
if(local_channel()) {
if(($x = get_pconfig(local_channel(),'system','embed_deny'))) {
$l = explode("\n",$x);
if($l) {
foreach($l as $ll) {
if(trim($ll) && strpos($embedurl,trim($ll)) !== false)
return '<a href="' . $embedurl . '">' . $embedurl . '</a>';
}
}
}
if(($x = get_pconfig(local_channel(),'system','embed_allow'))) {
$found = false;
$l = explode("\n",$x);
if($l) {
foreach($l as $ll) {
if(trim($ll) && strpos($embedurl,trim($ll)) !== false) {
$found = true;
break;
}
}
}
if(! $found) {
return '<a href="' . $embedurl . '">' . $embedurl . '</a>';
}
}
}
$j = oembed_fetch_url($embedurl);
$s = oembed_format_object($j);
return $s;