summaryrefslogtreecommitdiff
path: root/includes/classes/JSCreator.php
blob: 12d43b772d1814f547f1956cc575afde725a2e42 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php
namespace Bitweaver\Rss;

/**
 * @package rss
 * JSCreator is a class that writes a js file to a specific
 * location, overriding the createFeed method of the parent HtmlCreator.
 *
 * @author Pascal Van Hecke
 */
class JSCreator extends HtmlCreator {
	public $contentType = "text/javascript";

	/**
	 * writes the javascript
	 * @return    string    the scripts's complete text
	 */
	public function createFeed()
	{
		$feed = parent::createFeed();
		$feedArray = explode("\n",$feed);

		$jsFeed = "";
		foreach ($feedArray as $value) {
			$jsFeed .= "document.write('".trim(addslashes($value))."');\n";
		}
		return $jsFeed;
	}

	/**
	 * Overrrides parent to produce .js extensions
	 *
	 * @return string the feed cache filename
	 * @since 1.4
	 */
	public function _generateFilename() {
		$fileInfo = pathinfo($_SERVER["PHP_SELF"]);
		return substr($fileInfo["basename"],0,-(strlen($fileInfo["extension"])+1)).".js";
	}

}