manifest.json.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. /**
  3. * Copyright (c) UNA, Inc - https://una.io
  4. * MIT License - https://opensource.org/licenses/MIT
  5. *
  6. * @defgroup UnaCore UNA Core
  7. * @{
  8. */
  9. /**
  10. * Note: This file is intended to be publicly accessible.
  11. */
  12. require_once('./inc/header.inc.php');
  13. $aContent = [
  14. 'name' => '',
  15. 'short_name' => '',
  16. 'start_url' => parse_url(BX_DOL_URL_ROOT, PHP_URL_PATH),
  17. 'display' => 'standalone',
  18. ];
  19. $sPattern = '/^[A-Za-z0-9\.\-]+$/';
  20. if(!empty($_GET['bx_name']) && preg_match($sPattern, $_GET['bx_name']))
  21. $aContent['name'] = $_GET['bx_name'];
  22. if(!empty($_GET['bx_short_name']) && preg_match($sPattern, $_GET['bx_short_name']))
  23. $aContent['short_name'] = $_GET['bx_short_name'];
  24. else
  25. $aContent['short_name'] = $aContent['name'];
  26. if(isLogged())
  27. $aContent['gcm_sender_id'] = '482941778795';
  28. /*
  29. * Android device icons
  30. */
  31. $aAdi = [];
  32. if(($iId = (int)getParam('sys_site_icon_android')) != 0) {
  33. $oTranscoder = BxDolTranscoderImage::getObjectInstance(BX_DOL_TRANSCODER_OBJ_ICON_ANDROID);
  34. $sSizes = '192x192';
  35. if(($aTranscoderParams = $oTranscoder->getFilterParams('Resize')) !== false)
  36. $sSizes = $aTranscoderParams['w'] . 'x' . $aTranscoderParams['h'];
  37. $aAdi[] = [
  38. 'src' => $oTranscoder->getFileUrl($iId),
  39. 'type' => $oTranscoder->getFileMimeType($iId),
  40. 'sizes' => $sSizes
  41. ];
  42. }
  43. if(($iId = (int)getParam('sys_site_icon_android_splash')) != 0) {
  44. $oTranscoder = BxDolTranscoderImage::getObjectInstance(BX_DOL_TRANSCODER_OBJ_ICON_ANDROID_SPLASH);
  45. $sSizes = '512x512';
  46. if(($aTranscoderParams = $oTranscoder->getFilterParams('Resize')) !== false)
  47. $sSizes = $aTranscoderParams['w'] . 'x' . $aTranscoderParams['h'];
  48. $aAdi[] = [
  49. 'src' => $oTranscoder->getFileUrl($iId),
  50. 'type' => $oTranscoder->getFileMimeType($iId),
  51. 'sizes' => $sSizes
  52. ];
  53. }
  54. if(!empty($aAdi) && is_array($aAdi))
  55. $aContent['icons'] = $aAdi;
  56. header("Content-Type: application/json");
  57. header("X-Robots-Tag: none");
  58. echo json_encode($aContent);
  59. ?>