Browse Source

Merge pull request #3332 from Rudloff/feature/manifest

Web app manifest (fixes #3317)
pull/3339/head
Hypolite Petovan 4 years ago
committed by GitHub
parent
commit
615295c3fe
4 changed files with 37 additions and 0 deletions
  1. +26
    -0
      mod/manifest.php
  2. +1
    -0
      view/templates/head.tpl
  3. +9
    -0
      view/templates/manifest.tpl
  4. +1
    -0
      view/theme/frio/templates/head.tpl

+ 26
- 0
mod/manifest.php View File

@ -0,0 +1,26 @@
<?php
use Friendica\Core\Config;
function manifest_content(App $a) {
$tpl = get_markup_template('manifest.tpl');
header('Content-type: application/manifest+json');
$touch_icon = Config::get('system', 'touch_icon', 'images/friendica-128.png');
if ($touch_icon == '') {
$touch_icon = 'images/friendica-128.png';
}
$o = replace_macros($tpl, array(
'$baseurl' => App::get_baseurl(),
'$touch_icon' => $touch_icon,
'$title' => Config::get('config', 'sitename', 'Friendica'),
));
echo $o;
killme();
}
?>

+ 1
- 0
view/templates/head.tpl View File

@ -19,6 +19,7 @@
<link rel="apple-touch-icon" href="{{$touch_icon}}"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<link rel="manifest" href="{{$baseurl}}/manifest" />
<script>
// Prevents links to switch to Safari in a home screen app - see https://gist.github.com/irae/1042167
(function(a,b,c){if(c in b&&b[c]){var d,e=a.location,f=/^(a|html)$/i;a.addEventListener("click",function(a){d=a.target;while(!f.test(d.nodeName))d=d.parentNode;"href"in d&&(chref=d.href).replace(e.href,"").indexOf("#")&&(!/^[a-z\+\.\-]+:/i.test(chref)||chref.indexOf(e.protocol+"//"+e.host)===0)&&(a.preventDefault(),e.href=d.href)},!1)}})(document,window.navigator,"standalone");


+ 9
- 0
view/templates/manifest.tpl View File

@ -0,0 +1,9 @@
{
"name": "{{$title}}",
"start_url": "{{$baseurl}}",
"display": "standalone",
"description": "A Decentralized Social Network",
"icons": [{
"src": "{{$baseurl}}/{{$touch_icon}}"
}]
}

+ 1
- 0
view/theme/frio/templates/head.tpl View File

@ -41,6 +41,7 @@
<link rel="apple-touch-icon" href="{{$touch_icon}}"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<link rel="manifest" href="{{$baseurl}}/manifest" />
<script>
// Prevents links to switch to Safari in a home screen app - see https://gist.github.com/irae/1042167
(function(a,b,c){if(c in b&&b[c]){var d,e=a.location,f=/^(a|html)$/i;a.addEventListener("click",function(a){d=a.target;while(!f.test(d.nodeName))d=d.parentNode;"href"in d&&(chref=d.href).replace(e.href,"").indexOf("#")&&(!/^[a-z\+\.\-]+:/i.test(chref)||chref.indexOf(e.protocol+"//"+e.host)===0)&&(a.preventDefault(),e.href=d.href)},!1)}})(document,window.navigator,"standalone");


Loading…
Cancel
Save