diff options
author | redmatrix <git@macgirvin.com> | 2016-03-08 16:06:58 -0800 |
---|---|---|
committer | redmatrix <git@macgirvin.com> | 2016-03-08 16:06:58 -0800 |
commit | 1258f9bb2114bd4a909f623a7519ba446bf8da0d (patch) | |
tree | cdcc0f2e1c9d30de528f0f952eca3971da211163 /Zotlabs | |
parent | 5f41d06bb977bf7811ef5d8a1a1faf0b8670936a (diff) | |
download | volse-hubzilla-1258f9bb2114bd4a909f623a7519ba446bf8da0d.tar.gz volse-hubzilla-1258f9bb2114bd4a909f623a7519ba446bf8da0d.tar.bz2 volse-hubzilla-1258f9bb2114bd4a909f623a7519ba446bf8da0d.zip |
turn 'OpenGraph' into a more general purpose HTTP meta facility for setting any meta header
Diffstat (limited to 'Zotlabs')
-rw-r--r-- | Zotlabs/Web/HttpMeta.php | 66 | ||||
-rw-r--r-- | Zotlabs/Web/OpenGraph.php | 50 |
2 files changed, 66 insertions, 50 deletions
diff --git a/Zotlabs/Web/HttpMeta.php b/Zotlabs/Web/HttpMeta.php new file mode 100644 index 000000000..469a9ed8b --- /dev/null +++ b/Zotlabs/Web/HttpMeta.php @@ -0,0 +1,66 @@ +<?php + +namespace Zotlabs\Web; + + +class HttpMeta { + + private $vars = null; + private $og = null; + + function __construct() { + + $this->vars = array(); + $this->og = array(); + + } + + function set($property,$value) { + if(strpos($property,'og:') === 0) + $this->og[$property] = $value; + else + $this->vars[$property] = $value; + } + + function check_required() { + if( + ($this->og) + && array_key_exists('og:title',$this->og) + && array_key_exists('og:type', $this->og) + && array_key_exists('og:image',$this->og) + && array_key_exists('og:url', $this->og) + ) + return true; + return false; + } + + function get_field($field) { + if(strpos($field,'og:') === 0) + $arr = $this->og; + else + $arr = $this->vars; + + if($arr && array_key_exists($field,$arr) && $arr[$field]) + return $arr[$field]; + return false; + } + + + function get() { + $o = ''; + if($this->vars) { + foreach($this->vars as $k => $v) { + $o .= '<meta property="' . $k . '" content="' . urlencode($v) . '" />' . "\r\n" ; + } + } + if($this->check_required()) { + foreach($this->og as $k => $v) { + $o .= '<meta property="' . $k . '" content="' . urlencode($v) . '" />' . "\r\n" ; + } + } + if($o) + return "\r\n" . $o; + return $o; + } + +}
\ No newline at end of file diff --git a/Zotlabs/Web/OpenGraph.php b/Zotlabs/Web/OpenGraph.php deleted file mode 100644 index f282c82d4..000000000 --- a/Zotlabs/Web/OpenGraph.php +++ /dev/null @@ -1,50 +0,0 @@ -<?php - -namespace Zotlabs\Web; - - -class OpenGraph { - - private $vars = null; - - function __construct() { - - $this->vars = array(); - - } - - function set($property,$value) { - $this->vars[$property] = $value; - } - - function check_required() { - if( - ($this->vars) - && array_key_exists('og:title',$this->vars) - && array_key_exists('og:type', $this->vars) - && array_key_exists('og:image',$this->vars) - && array_key_exists('og:url', $this->vars) - ) - return true; - return false; - } - - function get_field($field) { - if($this->vars && array_key_exists($field,$this->vars) && $this->vars[$field]) - return $this->vars[$field]; - return false; - } - - - function get() { - if($this->check_required()) { - $o = "\r\n"; - foreach($this->vars as $k => $v) { - $o .= '<meta property="' . $k . '" content="' . urlencode($v) . '" />' . "\r\n" ; - } - return $o; - } - return ''; - } - -}
\ No newline at end of file |