*/ 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:----2WY5XPz5nWZDrWdC/8IMQxhLBTElLCFz11xCj9tO+1p7VGQ0eNrhpNi6xUuBRQqnduFIQzdtittYjp7XgFALt0RlXHBouGSFBY5s/ASZAhJUWcvcqsNOiaFtf4/6gp7ijpn0CaMVSSVnWSd9wcejMXJrUVfOGd8wzJAybNcZw3HTMb/MMWZCVrxDbCxSASdy2GMQWiCfoOiBMs8jUKKk/yL7/FKXfLylw97a6ngFnKeFf2lt4iVpeGN9jVHdW/y5BlUHGE86ZEvKRTZhEbH1xKe4TWbAqN5/RKbkeZPNhSTMvd39RE2oXklKivENN/JtpfdC6/GfiZ3LuGT2VkPbiXYxQ5HgJY2OQ+igkQvzYV+u4c3C2Q13JwpGVMIHRplah08Rql/RFlD+6xjsqgfg3ZOQbqXe7neITrTVay5SzheZUP3Y0krhOId2m3xBNF9Y9/DXozXhxf/tCjJJDUsiPlrN7jAdZaV91Og33DqmXN7/0WLfsp5JVsRcqcsYxvc++2te3u+YV4z7L95h4GMBRCtcZwQjv+BisuiXfBSZkfHoYjt0Sz+MFyCliE3X3wRmjfUqQF2yiIPLRXXZckCgentWjF90676kUMTV/wapq7mBU5MZUqL04xlLyFKyyjIg9C7rC1M34qKdzvz8Sr4lB5LnpoAvxPzthi5YazOEudg=----ATTACHMENT:----MjYyODUzMjI5NDc5ODg5OSAxMzY5OTE1MTg0MDc3NzUzIDI2ODEyNjM3MDI2NzY2MjM=