diff options
author | zotlabs <mike@macgirvin.com> | 2017-09-24 16:59:56 -0700 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2017-09-24 16:59:56 -0700 |
commit | 8b7ab90836ef313e7eaf0a3fd1f29ad8ab1a716c (patch) | |
tree | 04add36aa35ce8cda58c5594a783737b25346175 /include/network.php | |
parent | 4d3b0577c9538644ca0eeb2751b285521d2cc86d (diff) | |
parent | 866dc9a9b3ca1cd98fc032afe0aec14ccdb86ba0 (diff) | |
download | volse-hubzilla-8b7ab90836ef313e7eaf0a3fd1f29ad8ab1a716c.tar.gz volse-hubzilla-8b7ab90836ef313e7eaf0a3fd1f29ad8ab1a716c.tar.bz2 volse-hubzilla-8b7ab90836ef313e7eaf0a3fd1f29ad8ab1a716c.zip |
Merge branch 'master' into tagging
Diffstat (limited to 'include/network.php')
-rw-r--r-- | include/network.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/include/network.php b/include/network.php index da1afc3ac..7e2dbf4cf 100644 --- a/include/network.php +++ b/include/network.php @@ -1943,4 +1943,35 @@ function getBestSupportedMimeType($mimeTypes = null, $acceptedTypes = false) { } // no mime-type found return null; +} + + +function jsonld_document_loader($url) { + + // perform caching for jsonld normaliser + + require_once('library/jsonld/jsonld.php'); + + $cachepath = 'store/[data]/ldcache'; + if(! is_dir($cachepath)) + os_mkdir($cachepath,STORAGE_DEFAULT_PERMISSIONS,true); + + $filename = $cachepath . '/' . urlencode($url); + if(file_exists($filename) && filemtime($filename) > time() - (12 * 60 * 60)) { + return json_decode(file_get_contents($filename)); + } + + $r = jsonld_default_document_loader($url); + if($r) { + file_put_contents($filename,json_encode($r)); + return $r; + } + + logger('not found'); + if(file_exists($filename)) { + return json_decode(file_get_contents($filename)); + } + + return []; + }
\ No newline at end of file |