image_transcoder.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. /**
  3. * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
  4. * CC-BY License - http://creativecommons.org/licenses/by/3.0/
  5. *
  6. * @defgroup TridentCore Trident Core
  7. * @{
  8. */
  9. if (isset($_GET['devicePixelRatio'])) {
  10. $sDpr = $_GET['devicePixelRatio'];
  11. if ('' . ceil(intval($sDpr)) !== $sDpr)
  12. $sDpr = '1';
  13. setcookie('devicePixelRatio', $sDpr, time()+60*60*24*365);
  14. exit();
  15. }
  16. ob_start();
  17. require_once('./inc/header.inc.php');
  18. $sTranscoderObject = bx_process_input(bx_get('o'));
  19. $sHandler = bx_process_input(bx_get('h'));
  20. $oTranscoder = BxDolTranscoderImage::getObjectInstance($sTranscoderObject);
  21. if (!$oTranscoder) {
  22. ob_end_clean();
  23. bx_transcoder_error_occured();
  24. exit;
  25. }
  26. ob_end_clean();
  27. if (!$oTranscoder->isFileReady($sHandler) && !$oTranscoder->transcode ($sHandler)) {
  28. bx_transcoder_error_occured();
  29. exit;
  30. }
  31. $sImageUrl = $oTranscoder->getFileUrl($sHandler);
  32. if (!$sImageUrl) {
  33. bx_transcoder_error_occured();
  34. exit;
  35. }
  36. header('HTTP/1.1 301 Moved Permanently');
  37. header('Location: ' . $sImageUrl);
  38. exit;
  39. function bx_transcoder_error_occured($sMethod = 'displayPageNotFound')
  40. {
  41. require_once(BX_DIRECTORY_PATH_INC . "design.inc.php");
  42. $oTemplate = BxDolTemplate::getInstance();
  43. $oTemplate->$sMethod ();
  44. }
  45. /** @} */