Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2019
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. // config/ProjectConfiguration.class.php
  2. class ProjectConfiguration extends sfProjectConfiguration
  3. {
  4. public function setup()
  5. {
  6. // ...
  7.  
  8. $this->dispatcher->connect('request.filter_parameters', array($this, 'filterRequestParameters'));
  9. }
  10.  
  11. public function filterRequestParameters(sfEvent $event, $parameters)
  12. {
  13. $request = $event->getSubject();
  14.  
  15. if (preg_match('#Mobile/.+Safari#i', $request->getHttpHeader('User-Agent')))
  16. {
  17. $request->setRequestFormat('iphone');
  18. }
  19.  
  20. return $parameters;
  21. }
  22. }
  23.  
  24. <?php
  25.  
  26. class iPhoneFilter extends sfFilter
  27. {
  28. public function execute ($filterChain)
  29. {
  30. // get the cool stuff
  31. $context = $this->getContext();
  32. $request = $context->getRequest();
  33. $response = $context->getResponse();
  34.  
  35. if ($this->isFirstCall())
  36. {
  37. $cookies = $response->getCookies();
  38. if (preg_match('#Mobile/.+Safari#i', $request->getHttpHeader('User-Agent'))
  39. && ! isset($cookies['doaction']))
  40. {
  41. $request->setRequestFormat('iphone');
  42. }
  43. }
  44.  
  45. // execute next filter
  46. $filterChain->execute();
  47. }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement