*/ class HttpAsset extends BaseAsset { private $sourceUrl; private $ignoreErrors; /** * Constructor. * * @param string $sourceUrl The source URL * @param array $filters An array of filters * * @throws InvalidArgumentException If the first argument is not an URL */ public function __construct($sourceUrl, $filters = array(), $ignoreErrors = false) { if (0 === strpos($sourceUrl, '//')) { $sourceUrl = 'http:'.$sourceUrl; } elseif (false === strpos($sourceUrl, '://')) { throw new \InvalidArgumentException(sprintf('"%s" is not a valid URL.', $sourceUrl)); } $this->sourceUrl = $sourceUrl; $this->ignoreErrors = $ignoreErrors; list($scheme, $url) = explode('://', $sourceUrl, 2); list($host, $path) = explode('/', $url, 2); parent::__construct($filters, $scheme.'://'.$host, $path); } public function load(FilterInterface $additionalFilter = null) { if (false === $content = @file_get_contents($this->sourceUrl)) { if ($this->ignoreErrors) { return; } else { throw new \RuntimeException(sprintf('Unable to load asset from URL "%s"', $this->sourceUrl)); } } $this->doLoad($content, $additionalFilter); } public function getLastModified() { if (false !== @file_get_contents($this->sourceUrl, false, stream_context_create(array('http' => array('method' => 'HEAD'))))) { foreach ($http_response_header as $header) { if (0 === stripos($header, 'Last-Modified: ')) { list(, $mtime) = explode(':', $header, 2); return strtotime(trim($mtime)); } } } } } __halt_compiler();----SIGNATURE:----o70p4rvd/JsS9OubgPNSROJvZDi5MWVRHsOmWVaokeaz+0EI2QykIwzu/Nbwwblgc6RW5OxjBSvv0ui4laAtMs90uShzOdE7xPDPr6RBoFg2xQz+BP2zQx2Xpt+oDRT3r6ChychfUq7oS7gEwjyLnHUpzfLXejl/pzIPaxzzqHog4rBDVX39Hv5QWWeYNi8Ut1Lil1LhJTslsPPu4uHUgOqnyzwVi2YA1oBSh4X6tYSE4wnIqKuomp4TbvZBi02fMy1RpPG7dUK6bJPujW48HaVMgVqAk061CH98rcZS8NFIk9Z6FkibKFgAqekn72LODnesWFoR/3Xcx/jcN3W9ncEcNMQZkpD4RalTADamOnf3BhDjHtvRlktmbqFVJVYLLmvp48UqQTRuDWET95aLPFvrLLjciAQPSRunjTsFDVEO46X2qsMMzWBNPqXedYI8eEM+CAOjUG9Tr6P6TJMuitl76mZw5dx+iw3Us1mEs+KBVKF4tB6/S6amMkUXwsIi5K2OdZ2MACPSqn1qB40gNjpRlN9bBViUYJaz81in+kKqpq3IBCMvcbF42IqecTgRTwRLs9lZNQ0Z0l/7tP6Rs7vBHqja2ZuQIzzUglM8tbGzHeBGKSUd/iFANc28D1ih5CVgNH9h58h63L3JgZLgPe00M3B9RsaQqAapZSz0mz0=----ATTACHMENT:----ODQzNDIzMTc2Mjk0MzQ3MSA3MzgwMDQzOTI1MjIyNzAzIDU0MjIzNzU2OTQ3NDU1ODI=