-date_default_timezone_set('UTC');
-
-class Tweeper {
-
- private static $USER_AGENT = "Mozilla/5.0 (Windows NT 6.1; rv:22.0) Gecko/20130405 Firefox/22.0";
-
- public function __construct($stylesheet, $generate_enclosure = FALSE) {
- $stylesheet_contents = $this->get_contents($stylesheet);
-
- $xslDoc = new DOMDocument();
- $xslDoc->loadXML($stylesheet_contents);
-
- $this->xsltProcessor = new XSLTProcessor();
- $this->xsltProcessor->registerPHPFunctions();
- $this->xsltProcessor->setParameter('', 'generateEnclosure', $generate_enclosure);
- $this->xsltProcessor->importStylesheet($xslDoc);
- }
-
- public static function epoch_to_gmdate($timestamp)
- {
- return gmdate('D, d M Y H:i:s', $timestamp) . ' GMT';
- }
-
- public static function str_to_gmdate($date)
- {
- $timestamp = strtotime($date);
- return Tweeper::epoch_to_gmdate($timestamp);
- }
-
- private static function get_contents($url)
- {
- $ch = curl_init($url);
- curl_setopt_array($ch, array(
- CURLOPT_HEADER => FALSE,
- CURLOPT_FOLLOWLOCATION => TRUE, // follow http redirects to get the real URL
- CURLOPT_RETURNTRANSFER => TRUE,
- CURLOPT_SSL_VERIFYHOST => FALSE,
- CURLOPT_SSL_VERIFYPEER => FALSE,
- CURLOPT_HTTPHEADER => array('Accept-language: en'),
- CURLOPT_USERAGENT => Tweeper::$USER_AGENT,
- ));
- $contents = curl_exec($ch);
- curl_close($ch);
-
- return $contents;
- }
-
- private static function get_info($url)
- {
- $ch = curl_init($url);
- curl_setopt_array($ch, array(
- CURLOPT_HEADER => TRUE,
- CURLOPT_NOBODY => TRUE,
- CURLOPT_FOLLOWLOCATION => TRUE, // follow http redirects to get the real URL
- CURLOPT_RETURNTRANSFER => TRUE,
- CURLOPT_SSL_VERIFYHOST => FALSE,
- CURLOPT_SSL_VERIFYPEER => FALSE,
- CURLOPT_USERAGENT => Tweeper::$USER_AGENT,
- ));
- curl_exec($ch);
- $url_info = curl_getinfo($ch);
- curl_close($ch);