Completed
Branch master (15a86c)
by Michael
06:07
created
class/article.php 4 patches
Doc Comments   -1 removed lines patch added patch discarded remove patch
@@ -109,7 +109,6 @@
 block discarded – undo
109 109
     /**
110 110
      * get summary of the article
111 111
      * 
112
-     * @param bool 	$actionOnEmpty flag for truncating content if summary is empty
113 112
      * @return string
114 113
      */
115 114
     function &getSummary($length = 0)
Please login to merge, or discard this patch.
Indentation   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -48,73 +48,73 @@  discard block
 block discarded – undo
48 48
 
49 49
 class Barticle extends ArtObject
50 50
 {
51
-    /**
52
-     * Constructor
53
-     *
54
-     * @param int $id ID of the article
55
-     */
56
-    function Barticle($id = null)
57
-    {
58
-	    $this->ArtObject();
59
-        $this->table = planet_DB_prefix("article");
60
-        $this->initVar("art_id", XOBJ_DTYPE_INT, null, false);
61
-        $this->initVar("blog_id", XOBJ_DTYPE_INT, 0, true);
51
+	/**
52
+	 * Constructor
53
+	 *
54
+	 * @param int $id ID of the article
55
+	 */
56
+	function Barticle($id = null)
57
+	{
58
+		$this->ArtObject();
59
+		$this->table = planet_DB_prefix("article");
60
+		$this->initVar("art_id", XOBJ_DTYPE_INT, null, false);
61
+		$this->initVar("blog_id", XOBJ_DTYPE_INT, 0, true);
62 62
 
63
-        $this->initVar("art_title", XOBJ_DTYPE_TXTBOX, "");
64
-        $this->initVar("art_content", XOBJ_DTYPE_TXTAREA, "");
65
-        $this->initVar("art_link", XOBJ_DTYPE_TXTBOX, "");
66
-        $this->initVar("art_time", XOBJ_DTYPE_INT, 0);
67
-        $this->initVar("art_author", XOBJ_DTYPE_TXTBOX, "");
63
+		$this->initVar("art_title", XOBJ_DTYPE_TXTBOX, "");
64
+		$this->initVar("art_content", XOBJ_DTYPE_TXTAREA, "");
65
+		$this->initVar("art_link", XOBJ_DTYPE_TXTBOX, "");
66
+		$this->initVar("art_time", XOBJ_DTYPE_INT, 0);
67
+		$this->initVar("art_author", XOBJ_DTYPE_TXTBOX, "");
68 68
 
69
-        $this->initVar("art_views", XOBJ_DTYPE_INT, 0);
70
-        $this->initVar("art_rating", XOBJ_DTYPE_INT, 0);
71
-        $this->initVar("art_rates", XOBJ_DTYPE_INT, 0);
72
-        $this->initVar("art_comments", XOBJ_DTYPE_INT, 0);
69
+		$this->initVar("art_views", XOBJ_DTYPE_INT, 0);
70
+		$this->initVar("art_rating", XOBJ_DTYPE_INT, 0);
71
+		$this->initVar("art_rates", XOBJ_DTYPE_INT, 0);
72
+		$this->initVar("art_comments", XOBJ_DTYPE_INT, 0);
73 73
 
74
-        $this->initVar("dohtml", XOBJ_DTYPE_INT, 1);
75
-        $this->initVar("dosmiley", XOBJ_DTYPE_INT, 1);
76
-        $this->initVar("doxcode", XOBJ_DTYPE_INT, 1);
77
-        $this->initVar("doimage", XOBJ_DTYPE_INT, 1);
78
-        $this->initVar("dobr", XOBJ_DTYPE_INT, 1);
79
-    }
74
+		$this->initVar("dohtml", XOBJ_DTYPE_INT, 1);
75
+		$this->initVar("dosmiley", XOBJ_DTYPE_INT, 1);
76
+		$this->initVar("doxcode", XOBJ_DTYPE_INT, 1);
77
+		$this->initVar("doimage", XOBJ_DTYPE_INT, 1);
78
+		$this->initVar("dobr", XOBJ_DTYPE_INT, 1);
79
+	}
80 80
 
81
-    /**
82
-     * get title of the article
83
-     * 
84
-     * @return string
85
-     */
86
-    function getTitle()
87
-    {
88
-	    $title = $this->getVar("art_title");
81
+	/**
82
+	 * get title of the article
83
+	 * 
84
+	 * @return string
85
+	 */
86
+	function getTitle()
87
+	{
88
+		$title = $this->getVar("art_title");
89 89
 		return $title;
90
-    }
90
+	}
91 91
 
92
-    /**
93
-     * get formatted publish time of the article
94
-     * 
95
- 	 * {@link Config} 
96
- 	 *
97
-     * @param string $format format of time
98
-     * @return string
99
-     */
100
-    function getTime($format = "c")
101
-    {
102
-	    $time = $this->getVar("art_time");
103
-	    if(empty($time)) $time = time();
104
-	    $time = planet_formatTimestamp($time, $format);
92
+	/**
93
+	 * get formatted publish time of the article
94
+	 * 
95
+	 * {@link Config} 
96
+	 *
97
+	 * @param string $format format of time
98
+	 * @return string
99
+	 */
100
+	function getTime($format = "c")
101
+	{
102
+		$time = $this->getVar("art_time");
103
+		if(empty($time)) $time = time();
104
+		$time = planet_formatTimestamp($time, $format);
105 105
 		return $time;
106
-    }
106
+	}
107 107
 
108 108
     
109
-    /**
110
-     * get summary of the article
111
-     * 
112
-     * @param bool 	$actionOnEmpty flag for truncating content if summary is empty
113
-     * @return string
114
-     */
115
-    function &getSummary($length = 0)
116
-    {
117
-	    $content = $this->getVar("art_content");
109
+	/**
110
+	 * get summary of the article
111
+	 * 
112
+	 * @param bool 	$actionOnEmpty flag for truncating content if summary is empty
113
+	 * @return string
114
+	 */
115
+	function &getSummary($length = 0)
116
+	{
117
+		$content = $this->getVar("art_content");
118 118
 		$summary = planet_html2text($content);
119 119
 		if(empty($length)){
120 120
 			$length = $GLOBALS["xoopsModuleConfig"]["display_summary"];
@@ -122,29 +122,29 @@  discard block
 block discarded – undo
122 122
 		if(!empty($length)){
123 123
 			$summary = xoops_substr($summary, 0, $length);
124 124
 		}
125
-	    return $summary;
126
-    }
125
+		return $summary;
126
+	}
127 127
 
128 128
 
129
-    /**
130
-     * get rating average of the article
131
-     * 
132
-     * @param int $decimals decimal length
133
-     * @return numeric
134
-     */
135
-    function getRatingAverage($decimals = 1)
136
-    {
137
-	    $ave=3;
138
-	    if($this->getVar("art_rates")){
139
-	    	$ave = number_format($this->getVar("art_rating")/$this->getVar("art_rates"),$decimals);
140
-    	}
141
-	    return $ave;
142
-    }
129
+	/**
130
+	 * get rating average of the article
131
+	 * 
132
+	 * @param int $decimals decimal length
133
+	 * @return numeric
134
+	 */
135
+	function getRatingAverage($decimals = 1)
136
+	{
137
+		$ave=3;
138
+		if($this->getVar("art_rates")){
139
+			$ave = number_format($this->getVar("art_rating")/$this->getVar("art_rates"),$decimals);
140
+		}
141
+		return $ave;
142
+	}
143 143
 
144
-    function getStar()
145
-    {
146
-	    return $this->getRatingAverage(0);
147
-    }
144
+	function getStar()
145
+	{
146
+		return $this->getRatingAverage(0);
147
+	}
148 148
 }
149 149
 endif;
150 150
 
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -44,7 +44,7 @@  discard block
 block discarded – undo
44 44
  *
45 45
  * {@link XoopsObject} 
46 46
  **/
47
-if(!class_exists("Barticle")):
47
+if (!class_exists("Barticle")):
48 48
 
49 49
 class Barticle extends ArtObject
50 50
 {
@@ -100,7 +100,7 @@  discard block
 block discarded – undo
100 100
     function getTime($format = "c")
101 101
     {
102 102
 	    $time = $this->getVar("art_time");
103
-	    if(empty($time)) $time = time();
103
+	    if (empty($time)) $time = time();
104 104
 	    $time = planet_formatTimestamp($time, $format);
105 105
 		return $time;
106 106
     }
@@ -116,10 +116,10 @@  discard block
 block discarded – undo
116 116
     {
117 117
 	    $content = $this->getVar("art_content");
118 118
 		$summary = planet_html2text($content);
119
-		if(empty($length)){
119
+		if (empty($length)) {
120 120
 			$length = $GLOBALS["xoopsModuleConfig"]["display_summary"];
121 121
 		}
122
-		if(!empty($length)){
122
+		if (!empty($length)) {
123 123
 			$summary = xoops_substr($summary, 0, $length);
124 124
 		}
125 125
 	    return $summary;
@@ -134,9 +134,9 @@  discard block
 block discarded – undo
134 134
      */
135 135
     function getRatingAverage($decimals = 1)
136 136
     {
137
-	    $ave=3;
138
-	    if($this->getVar("art_rates")){
139
-	    	$ave = number_format($this->getVar("art_rating")/$this->getVar("art_rates"),$decimals);
137
+	    $ave = 3;
138
+	    if ($this->getVar("art_rates")) {
139
+	    	$ave = number_format($this->getVar("art_rating")/$this->getVar("art_rates"), $decimals);
140 140
     	}
141 141
 	    return $ave;
142 142
     }
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -100,7 +100,9 @@
 block discarded – undo
100 100
     function getTime($format = "c")
101 101
     {
102 102
 	    $time = $this->getVar("art_time");
103
-	    if(empty($time)) $time = time();
103
+	    if(empty($time)) {
104
+	    	$time = time();
105
+	    }
104 106
 	    $time = planet_formatTimestamp($time, $format);
105 107
 		return $time;
106 108
     }
Please login to merge, or discard this patch.
class/class-IXR.php 3 patches
Doc Comments   +11 added lines patch added patch discarded remove patch
@@ -650,6 +650,10 @@  discard block
 block discarded – undo
650 650
 
651 651
 class IXR_Base64 {
652 652
     var $data;
653
+
654
+    /**
655
+     * @param string $data
656
+     */
653 657
     function IXR_Base64($data) {
654 658
         $this->data = $data;
655 659
     }
@@ -694,6 +698,13 @@  discard block
 block discarded – undo
694 698
             'Returns a documentation string for the specified method'
695 699
         );
696 700
     }
701
+
702
+    /**
703
+     * @param string $method
704
+     * @param string $callback
705
+     * @param string[] $args
706
+     * @param string $help
707
+     */
697 708
     function addCallback($method, $callback, $args, $help) {
698 709
         $this->callbacks[$method] = $callback;
699 710
         $this->signatures[$method] = $args;
Please login to merge, or discard this patch.
Indentation   +734 added lines, -734 removed lines patch added patch discarded remove patch
@@ -11,305 +11,305 @@  discard block
 block discarded – undo
11 11
 
12 12
 
13 13
 class IXR_Value {
14
-    var $data;
15
-    var $type;
16
-    function IXR_Value ($data, $type = false) {
17
-        $this->data = $data;
18
-        if (!$type) {
19
-            $type = $this->calculateType();
20
-        }
21
-        $this->type = $type;
22
-        if ($type == 'struct') {
23
-            /* Turn all the values in the array in to new IXR_Value objects */
24
-            foreach ($this->data as $key => $value) {
25
-                $this->data[$key] = new IXR_Value($value);
26
-            }
27
-        }
28
-        if ($type == 'array') {
29
-            for ($i = 0, $j = count($this->data); $i < $j; $i++) {
30
-                $this->data[$i] = new IXR_Value($this->data[$i]);
31
-            }
32
-        }
33
-    }
34
-    function calculateType() {
35
-        if ($this->data === true || $this->data === false) {
36
-            return 'boolean';
37
-        }
38
-        if (is_integer($this->data)) {
39
-            return 'int';
40
-        }
41
-        if (is_double($this->data)) {
42
-            return 'double';
43
-        }
44
-        // Deal with IXR object types base64 and date
45
-        if (is_object($this->data) && is_a($this->data, 'IXR_Date')) {
46
-            return 'date';
47
-        }
48
-        if (is_object($this->data) && is_a($this->data, 'IXR_Base64')) {
49
-            return 'base64';
50
-        }
51
-        // If it is a normal PHP object convert it in to a struct
52
-        if (is_object($this->data)) {
14
+	var $data;
15
+	var $type;
16
+	function IXR_Value ($data, $type = false) {
17
+		$this->data = $data;
18
+		if (!$type) {
19
+			$type = $this->calculateType();
20
+		}
21
+		$this->type = $type;
22
+		if ($type == 'struct') {
23
+			/* Turn all the values in the array in to new IXR_Value objects */
24
+			foreach ($this->data as $key => $value) {
25
+				$this->data[$key] = new IXR_Value($value);
26
+			}
27
+		}
28
+		if ($type == 'array') {
29
+			for ($i = 0, $j = count($this->data); $i < $j; $i++) {
30
+				$this->data[$i] = new IXR_Value($this->data[$i]);
31
+			}
32
+		}
33
+	}
34
+	function calculateType() {
35
+		if ($this->data === true || $this->data === false) {
36
+			return 'boolean';
37
+		}
38
+		if (is_integer($this->data)) {
39
+			return 'int';
40
+		}
41
+		if (is_double($this->data)) {
42
+			return 'double';
43
+		}
44
+		// Deal with IXR object types base64 and date
45
+		if (is_object($this->data) && is_a($this->data, 'IXR_Date')) {
46
+			return 'date';
47
+		}
48
+		if (is_object($this->data) && is_a($this->data, 'IXR_Base64')) {
49
+			return 'base64';
50
+		}
51
+		// If it is a normal PHP object convert it in to a struct
52
+		if (is_object($this->data)) {
53 53
             
54
-            $this->data = get_object_vars($this->data);
55
-            return 'struct';
56
-        }
57
-        if (!is_array($this->data)) {
58
-            return 'string';
59
-        }
60
-        /* We have an array - is it an array or a struct ? */
61
-        if ($this->isStruct($this->data)) {
62
-            return 'struct';
63
-        } else {
64
-            return 'array';
65
-        }
66
-    }
67
-    function getXml() {
68
-        /* Return XML for this value */
69
-        switch ($this->type) {
70
-            case 'boolean':
71
-                return '<boolean>'.(($this->data) ? '1' : '0').'</boolean>';
72
-                break;
73
-            case 'int':
74
-                return '<int>'.$this->data.'</int>';
75
-                break;
76
-            case 'double':
77
-                return '<double>'.$this->data.'</double>';
78
-                break;
79
-            case 'string':
80
-                return '<string>'.htmlspecialchars($this->data).'</string>';
81
-                break;
82
-            case 'array':
83
-                $return = '<array><data>'."\n";
84
-                foreach ($this->data as $item) {
85
-                    $return .= '  <value>'.$item->getXml()."</value>\n";
86
-                }
87
-                $return .= '</data></array>';
88
-                return $return;
89
-                break;
90
-            case 'struct':
91
-                $return = '<struct>'."\n";
92
-                foreach ($this->data as $name => $value) {
93
-                    $return .= "  <member><name>$name</name><value>";
94
-                    $return .= $value->getXml()."</value></member>\n";
95
-                }
96
-                $return .= '</struct>';
97
-                return $return;
98
-                break;
99
-            case 'date':
100
-            case 'base64':
101
-                return $this->data->getXml();
102
-                break;
103
-        }
104
-        return false;
105
-    }
106
-    function isStruct($array) {
107
-        /* Nasty function to check if an array is a struct or not */
108
-        $expected = 0;
109
-        foreach ($array as $key => $value) {
110
-            if ((string)$key != (string)$expected) {
111
-                return true;
112
-            }
113
-            $expected++;
114
-        }
115
-        return false;
116
-    }
54
+			$this->data = get_object_vars($this->data);
55
+			return 'struct';
56
+		}
57
+		if (!is_array($this->data)) {
58
+			return 'string';
59
+		}
60
+		/* We have an array - is it an array or a struct ? */
61
+		if ($this->isStruct($this->data)) {
62
+			return 'struct';
63
+		} else {
64
+			return 'array';
65
+		}
66
+	}
67
+	function getXml() {
68
+		/* Return XML for this value */
69
+		switch ($this->type) {
70
+			case 'boolean':
71
+				return '<boolean>'.(($this->data) ? '1' : '0').'</boolean>';
72
+				break;
73
+			case 'int':
74
+				return '<int>'.$this->data.'</int>';
75
+				break;
76
+			case 'double':
77
+				return '<double>'.$this->data.'</double>';
78
+				break;
79
+			case 'string':
80
+				return '<string>'.htmlspecialchars($this->data).'</string>';
81
+				break;
82
+			case 'array':
83
+				$return = '<array><data>'."\n";
84
+				foreach ($this->data as $item) {
85
+					$return .= '  <value>'.$item->getXml()."</value>\n";
86
+				}
87
+				$return .= '</data></array>';
88
+				return $return;
89
+				break;
90
+			case 'struct':
91
+				$return = '<struct>'."\n";
92
+				foreach ($this->data as $name => $value) {
93
+					$return .= "  <member><name>$name</name><value>";
94
+					$return .= $value->getXml()."</value></member>\n";
95
+				}
96
+				$return .= '</struct>';
97
+				return $return;
98
+				break;
99
+			case 'date':
100
+			case 'base64':
101
+				return $this->data->getXml();
102
+				break;
103
+		}
104
+		return false;
105
+	}
106
+	function isStruct($array) {
107
+		/* Nasty function to check if an array is a struct or not */
108
+		$expected = 0;
109
+		foreach ($array as $key => $value) {
110
+			if ((string)$key != (string)$expected) {
111
+				return true;
112
+			}
113
+			$expected++;
114
+		}
115
+		return false;
116
+	}
117 117
 }
118 118
 
119 119
 
120 120
 class IXR_Message {
121
-    var $message;
122
-    var $messageType;  // methodCall / methodResponse / fault
123
-    var $faultCode;
124
-    var $faultString;
125
-    var $methodName;
126
-    var $params;
127
-    // Current variable stacks
128
-    var $_arraystructs = array();   // The stack used to keep track of the current array/struct
129
-    var $_arraystructstypes = array(); // Stack keeping track of if things are structs or array
130
-    var $_currentStructName = array();  // A stack as well
131
-    var $_param;
132
-    var $_value;
133
-    var $_currentTag;
134
-    var $_currentTagContents;
135
-    // The XML parser
136
-    var $_parser;
137
-    function IXR_Message ($message) {
138
-        $this->message = $message;
139
-    }
140
-    function parse() {
141
-        // first remove the XML declaration
142
-        $this->message = preg_replace('/<\?xml(.*)?\?'.'>/', '', $this->message);
143
-        if (trim($this->message) == '') {
144
-            return false;
145
-        }
146
-        $this->_parser = xml_parser_create();
147
-        // Set XML parser to take the case of tags in to account
148
-        xml_parser_set_option($this->_parser, XML_OPTION_CASE_FOLDING, false);
149
-        // Set XML parser callback functions
150
-        xml_set_object($this->_parser, $this);
151
-        xml_set_element_handler($this->_parser, 'tag_open', 'tag_close');
152
-        xml_set_character_data_handler($this->_parser, 'cdata');
153
-        if (!xml_parse($this->_parser, $this->message)) {
154
-            /* die(sprintf('XML error: %s at line %d',
121
+	var $message;
122
+	var $messageType;  // methodCall / methodResponse / fault
123
+	var $faultCode;
124
+	var $faultString;
125
+	var $methodName;
126
+	var $params;
127
+	// Current variable stacks
128
+	var $_arraystructs = array();   // The stack used to keep track of the current array/struct
129
+	var $_arraystructstypes = array(); // Stack keeping track of if things are structs or array
130
+	var $_currentStructName = array();  // A stack as well
131
+	var $_param;
132
+	var $_value;
133
+	var $_currentTag;
134
+	var $_currentTagContents;
135
+	// The XML parser
136
+	var $_parser;
137
+	function IXR_Message ($message) {
138
+		$this->message = $message;
139
+	}
140
+	function parse() {
141
+		// first remove the XML declaration
142
+		$this->message = preg_replace('/<\?xml(.*)?\?'.'>/', '', $this->message);
143
+		if (trim($this->message) == '') {
144
+			return false;
145
+		}
146
+		$this->_parser = xml_parser_create();
147
+		// Set XML parser to take the case of tags in to account
148
+		xml_parser_set_option($this->_parser, XML_OPTION_CASE_FOLDING, false);
149
+		// Set XML parser callback functions
150
+		xml_set_object($this->_parser, $this);
151
+		xml_set_element_handler($this->_parser, 'tag_open', 'tag_close');
152
+		xml_set_character_data_handler($this->_parser, 'cdata');
153
+		if (!xml_parse($this->_parser, $this->message)) {
154
+			/* die(sprintf('XML error: %s at line %d',
155 155
                 xml_error_string(xml_get_error_code($this->_parser)),
156 156
                 xml_get_current_line_number($this->_parser))); */
157
-            return false;
158
-        }
159
-        xml_parser_free($this->_parser);
160
-        // Grab the error messages, if any
161
-        if ($this->messageType == 'fault') {
162
-            $this->faultCode = $this->params[0]['faultCode'];
163
-            $this->faultString = $this->params[0]['faultString'];
164
-        }
165
-        return true;
166
-    }
167
-    function tag_open($parser, $tag, $attr) {
168
-        $this->currentTag = $tag;
169
-        switch($tag) {
170
-            case 'methodCall':
171
-            case 'methodResponse':
172
-            case 'fault':
173
-                $this->messageType = $tag;
174
-                break;
175
-            /* Deal with stacks of arrays and structs */
176
-            case 'data':    // data is to all intents and puposes more interesting than array
177
-                $this->_arraystructstypes[] = 'array';
178
-                $this->_arraystructs[] = array();
179
-                break;
180
-            case 'struct':
181
-                $this->_arraystructstypes[] = 'struct';
182
-                $this->_arraystructs[] = array();
183
-                break;
184
-        }
185
-    }
186
-    function cdata($parser, $cdata) {
187
-        $this->_currentTagContents .= $cdata;
188
-    }
189
-    function tag_close($parser, $tag) {
190
-        $valueFlag = false;
191
-        switch($tag) {
192
-            case 'int':
193
-            case 'i4':
194
-                $value = (int)trim($this->_currentTagContents);
195
-                $this->_currentTagContents = '';
196
-                $valueFlag = true;
197
-                break;
198
-            case 'double':
199
-                $value = (double)trim($this->_currentTagContents);
200
-                $this->_currentTagContents = '';
201
-                $valueFlag = true;
202
-                break;
203
-            case 'string':
204
-                $value = (string)trim($this->_currentTagContents);
205
-                $this->_currentTagContents = '';
206
-                $valueFlag = true;
207
-                break;
208
-            case 'dateTime.iso8601':
209
-                $value = new IXR_Date(trim($this->_currentTagContents));
210
-                // $value = $iso->getTimestamp();
211
-                $this->_currentTagContents = '';
212
-                $valueFlag = true;
213
-                break;
214
-            case 'value':
215
-                // "If no type is indicated, the type is string."
216
-                if (trim($this->_currentTagContents) != '') {
217
-                    $value = (string)$this->_currentTagContents;
218
-                    $this->_currentTagContents = '';
219
-                    $valueFlag = true;
220
-                }
221
-                break;
222
-            case 'boolean':
223
-                $value = (boolean)trim($this->_currentTagContents);
224
-                $this->_currentTagContents = '';
225
-                $valueFlag = true;
226
-                break;
227
-            case 'base64':
228
-                $value = base64_decode( trim($this->_currentTagContents) );
229
-                $this->_currentTagContents = '';
230
-                $valueFlag = true;
231
-                break;
232
-            /* Deal with stacks of arrays and structs */
233
-            case 'data':
234
-            case 'struct':
235
-                $value = array_pop($this->_arraystructs);
236
-                array_pop($this->_arraystructstypes);
237
-                $valueFlag = true;
238
-                break;
239
-            case 'member':
240
-                array_pop($this->_currentStructName);
241
-                break;
242
-            case 'name':
243
-                $this->_currentStructName[] = trim($this->_currentTagContents);
244
-                $this->_currentTagContents = '';
245
-                break;
246
-            case 'methodName':
247
-                $this->methodName = trim($this->_currentTagContents);
248
-                $this->_currentTagContents = '';
249
-                break;
250
-        }
251
-        if ($valueFlag) {
252
-            /*
157
+			return false;
158
+		}
159
+		xml_parser_free($this->_parser);
160
+		// Grab the error messages, if any
161
+		if ($this->messageType == 'fault') {
162
+			$this->faultCode = $this->params[0]['faultCode'];
163
+			$this->faultString = $this->params[0]['faultString'];
164
+		}
165
+		return true;
166
+	}
167
+	function tag_open($parser, $tag, $attr) {
168
+		$this->currentTag = $tag;
169
+		switch($tag) {
170
+			case 'methodCall':
171
+			case 'methodResponse':
172
+			case 'fault':
173
+				$this->messageType = $tag;
174
+				break;
175
+			/* Deal with stacks of arrays and structs */
176
+			case 'data':    // data is to all intents and puposes more interesting than array
177
+				$this->_arraystructstypes[] = 'array';
178
+				$this->_arraystructs[] = array();
179
+				break;
180
+			case 'struct':
181
+				$this->_arraystructstypes[] = 'struct';
182
+				$this->_arraystructs[] = array();
183
+				break;
184
+		}
185
+	}
186
+	function cdata($parser, $cdata) {
187
+		$this->_currentTagContents .= $cdata;
188
+	}
189
+	function tag_close($parser, $tag) {
190
+		$valueFlag = false;
191
+		switch($tag) {
192
+			case 'int':
193
+			case 'i4':
194
+				$value = (int)trim($this->_currentTagContents);
195
+				$this->_currentTagContents = '';
196
+				$valueFlag = true;
197
+				break;
198
+			case 'double':
199
+				$value = (double)trim($this->_currentTagContents);
200
+				$this->_currentTagContents = '';
201
+				$valueFlag = true;
202
+				break;
203
+			case 'string':
204
+				$value = (string)trim($this->_currentTagContents);
205
+				$this->_currentTagContents = '';
206
+				$valueFlag = true;
207
+				break;
208
+			case 'dateTime.iso8601':
209
+				$value = new IXR_Date(trim($this->_currentTagContents));
210
+				// $value = $iso->getTimestamp();
211
+				$this->_currentTagContents = '';
212
+				$valueFlag = true;
213
+				break;
214
+			case 'value':
215
+				// "If no type is indicated, the type is string."
216
+				if (trim($this->_currentTagContents) != '') {
217
+					$value = (string)$this->_currentTagContents;
218
+					$this->_currentTagContents = '';
219
+					$valueFlag = true;
220
+				}
221
+				break;
222
+			case 'boolean':
223
+				$value = (boolean)trim($this->_currentTagContents);
224
+				$this->_currentTagContents = '';
225
+				$valueFlag = true;
226
+				break;
227
+			case 'base64':
228
+				$value = base64_decode( trim($this->_currentTagContents) );
229
+				$this->_currentTagContents = '';
230
+				$valueFlag = true;
231
+				break;
232
+			/* Deal with stacks of arrays and structs */
233
+			case 'data':
234
+			case 'struct':
235
+				$value = array_pop($this->_arraystructs);
236
+				array_pop($this->_arraystructstypes);
237
+				$valueFlag = true;
238
+				break;
239
+			case 'member':
240
+				array_pop($this->_currentStructName);
241
+				break;
242
+			case 'name':
243
+				$this->_currentStructName[] = trim($this->_currentTagContents);
244
+				$this->_currentTagContents = '';
245
+				break;
246
+			case 'methodName':
247
+				$this->methodName = trim($this->_currentTagContents);
248
+				$this->_currentTagContents = '';
249
+				break;
250
+		}
251
+		if ($valueFlag) {
252
+			/*
253 253
             if (!is_array($value) && !is_object($value)) {
254 254
                 $value = trim($value);
255 255
             }
256 256
             */
257
-            if (count($this->_arraystructs) > 0) {
258
-                // Add value to struct or array
259
-                if ($this->_arraystructstypes[count($this->_arraystructstypes)-1] == 'struct') {
260
-                    // Add to struct
261
-                    $this->_arraystructs[count($this->_arraystructs)-1][$this->_currentStructName[count($this->_currentStructName)-1]] = $value;
262
-                } else {
263
-                    // Add to array
264
-                    $this->_arraystructs[count($this->_arraystructs)-1][] = $value;
265
-                }
266
-            } else {
267
-                // Just add as a paramater
268
-                $this->params[] = $value;
269
-            }
270
-        }
271
-    }       
257
+			if (count($this->_arraystructs) > 0) {
258
+				// Add value to struct or array
259
+				if ($this->_arraystructstypes[count($this->_arraystructstypes)-1] == 'struct') {
260
+					// Add to struct
261
+					$this->_arraystructs[count($this->_arraystructs)-1][$this->_currentStructName[count($this->_currentStructName)-1]] = $value;
262
+				} else {
263
+					// Add to array
264
+					$this->_arraystructs[count($this->_arraystructs)-1][] = $value;
265
+				}
266
+			} else {
267
+				// Just add as a paramater
268
+				$this->params[] = $value;
269
+			}
270
+		}
271
+	}       
272 272
 }
273 273
 
274 274
 
275 275
 class IXR_Server {
276
-    var $data;
277
-    var $callbacks = array();
278
-    var $message;
279
-    var $capabilities;
280
-    function IXR_Server($callbacks = false, $data = false) {
281
-        $this->setCapabilities();
282
-        if ($callbacks) {
283
-            $this->callbacks = $callbacks;
284
-        }
285
-        $this->setCallbacks();
286
-        $this->serve($data);
287
-    }
288
-    function serve($data = false) {
289
-        if (!$data) {
290
-            global $HTTP_RAW_POST_DATA;
291
-            if (!$HTTP_RAW_POST_DATA) {
292
-               die('XML-RPC server accepts POST requests only.');
293
-            }
294
-            $data = $HTTP_RAW_POST_DATA;
295
-        }
296
-        $this->message = new IXR_Message($data);
297
-        if (!$this->message->parse()) {
298
-            $this->error(-32700, 'parse error. not well formed');
299
-        }
300
-        if ($this->message->messageType != 'methodCall') {
301
-            $this->error(-32600, 'server error. invalid xml-rpc. not conforming to spec. Request must be a methodCall');
302
-        }
303
-        $result = $this->call($this->message->methodName, $this->message->params);
304
-        // Is the result an error?
305
-        if (is_a($result, 'IXR_Error')) {
306
-            $this->error($result);
307
-        }
308
-        // Encode the result
309
-        $r = new IXR_Value($result);
310
-        $resultxml = $r->getXml();
311
-        // Create the XML
312
-        $xml = <<<EOD
276
+	var $data;
277
+	var $callbacks = array();
278
+	var $message;
279
+	var $capabilities;
280
+	function IXR_Server($callbacks = false, $data = false) {
281
+		$this->setCapabilities();
282
+		if ($callbacks) {
283
+			$this->callbacks = $callbacks;
284
+		}
285
+		$this->setCallbacks();
286
+		$this->serve($data);
287
+	}
288
+	function serve($data = false) {
289
+		if (!$data) {
290
+			global $HTTP_RAW_POST_DATA;
291
+			if (!$HTTP_RAW_POST_DATA) {
292
+			   die('XML-RPC server accepts POST requests only.');
293
+			}
294
+			$data = $HTTP_RAW_POST_DATA;
295
+		}
296
+		$this->message = new IXR_Message($data);
297
+		if (!$this->message->parse()) {
298
+			$this->error(-32700, 'parse error. not well formed');
299
+		}
300
+		if ($this->message->messageType != 'methodCall') {
301
+			$this->error(-32600, 'server error. invalid xml-rpc. not conforming to spec. Request must be a methodCall');
302
+		}
303
+		$result = $this->call($this->message->methodName, $this->message->params);
304
+		// Is the result an error?
305
+		if (is_a($result, 'IXR_Error')) {
306
+			$this->error($result);
307
+		}
308
+		// Encode the result
309
+		$r = new IXR_Value($result);
310
+		$resultxml = $r->getXml();
311
+		// Create the XML
312
+		$xml = <<<EOD
313 313
 <methodResponse>
314 314
   <params>
315 315
     <param>
@@ -321,265 +321,265 @@  discard block
 block discarded – undo
321 321
 </methodResponse>
322 322
 
323 323
 EOD;
324
-        // Send it
325
-        $this->output($xml);
326
-    }
327
-    function call($methodname, $args) {
328
-        if (!$this->hasMethod($methodname)) {
329
-            return new IXR_Error(-32601, 'server error. requested method '.$methodname.' does not exist.');
330
-        }
331
-        $method = $this->callbacks[$methodname];
332
-        // Perform the callback and send the response
333
-        if (count($args) == 1) {
334
-            // If only one paramater just send that instead of the whole array
335
-            $args = $args[0];
336
-        }
337
-        // Are we dealing with a function or a method?
338
-        if (substr($method, 0, 5) == 'this:') {
339
-            // It's a class method - check it exists
340
-            $method = substr($method, 5);
341
-            if (!method_exists($this, $method)) {
342
-                return new IXR_Error(-32601, 'server error. requested class method "'.$method.'" does not exist.');
343
-            }
344
-            // Call the method
345
-            $result = $this->$method($args);
346
-        } else {
347
-            // It's a function - does it exist?
348
-            if (is_array($method)) {
349
-            	if (!method_exists($method[0], $method[1])) {
350
-                return new IXR_Error(-32601, 'server error. requested object method "'.$method[1].'" does not exist.');
351
-            	}
352
-            } else if (!function_exists($method)) {
353
-                return new IXR_Error(-32601, 'server error. requested function "'.$method.'" does not exist.');
354
-            }
355
-            // Call the function
356
-            $result = call_user_func($method, $args);
357
-        }
358
-        return $result;
359
-    }
324
+		// Send it
325
+		$this->output($xml);
326
+	}
327
+	function call($methodname, $args) {
328
+		if (!$this->hasMethod($methodname)) {
329
+			return new IXR_Error(-32601, 'server error. requested method '.$methodname.' does not exist.');
330
+		}
331
+		$method = $this->callbacks[$methodname];
332
+		// Perform the callback and send the response
333
+		if (count($args) == 1) {
334
+			// If only one paramater just send that instead of the whole array
335
+			$args = $args[0];
336
+		}
337
+		// Are we dealing with a function or a method?
338
+		if (substr($method, 0, 5) == 'this:') {
339
+			// It's a class method - check it exists
340
+			$method = substr($method, 5);
341
+			if (!method_exists($this, $method)) {
342
+				return new IXR_Error(-32601, 'server error. requested class method "'.$method.'" does not exist.');
343
+			}
344
+			// Call the method
345
+			$result = $this->$method($args);
346
+		} else {
347
+			// It's a function - does it exist?
348
+			if (is_array($method)) {
349
+				if (!method_exists($method[0], $method[1])) {
350
+				return new IXR_Error(-32601, 'server error. requested object method "'.$method[1].'" does not exist.');
351
+				}
352
+			} else if (!function_exists($method)) {
353
+				return new IXR_Error(-32601, 'server error. requested function "'.$method.'" does not exist.');
354
+			}
355
+			// Call the function
356
+			$result = call_user_func($method, $args);
357
+		}
358
+		return $result;
359
+	}
360 360
 
361
-    function error($error, $message = false) {
362
-        // Accepts either an error object or an error code and message
363
-        if ($message && !is_object($error)) {
364
-            $error = new IXR_Error($error, $message);
365
-        }
366
-        $this->output($error->getXml());
367
-    }
368
-    function output($xml) {
369
-        $xml = '<?xml version="1.0"?>'."\n".$xml;
370
-        $length = strlen($xml);
371
-        header('Connection: close');
372
-        header('Content-Length: '.$length);
373
-        header('Content-Type: text/xml');
374
-        header('Date: '.date('r'));
375
-        echo $xml;
376
-        exit;
377
-    }
378
-    function hasMethod($method) {
379
-        return in_array($method, array_keys($this->callbacks));
380
-    }
381
-    function setCapabilities() {
382
-        // Initialises capabilities array
383
-        $this->capabilities = array(
384
-            'xmlrpc' => array(
385
-                'specUrl' => 'http://www.xmlrpc.com/spec',
386
-                'specVersion' => 1
387
-            ),
388
-            'faults_interop' => array(
389
-                'specUrl' => 'http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php',
390
-                'specVersion' => 20010516
391
-            ),
392
-            'system.multicall' => array(
393
-                'specUrl' => 'http://www.xmlrpc.com/discuss/msgReader$1208',
394
-                'specVersion' => 1
395
-            ),
396
-        );   
397
-    }
398
-    function getCapabilities($args) {
399
-        return $this->capabilities;
400
-    }
401
-    function setCallbacks() {
402
-        $this->callbacks['system.getCapabilities'] = 'this:getCapabilities';
403
-        $this->callbacks['system.listMethods'] = 'this:listMethods';
404
-        $this->callbacks['system.multicall'] = 'this:multiCall';
405
-    }
406
-    function listMethods($args) {
407
-        // Returns a list of methods - uses array_reverse to ensure user defined
408
-        // methods are listed before server defined methods
409
-        return array_reverse(array_keys($this->callbacks));
410
-    }
411
-    function multiCall($methodcalls) {
412
-        // See http://www.xmlrpc.com/discuss/msgReader$1208
413
-        $return = array();
414
-        foreach ($methodcalls as $call) {
415
-            $method = $call['methodName'];
416
-            $params = $call['params'];
417
-            if ($method == 'system.multicall') {
418
-                $result = new IXR_Error(-32600, 'Recursive calls to system.multicall are forbidden');
419
-            } else {
420
-                $result = $this->call($method, $params);
421
-            }
422
-            if (is_a($result, 'IXR_Error')) {
423
-                $return[] = array(
424
-                    'faultCode' => $result->code,
425
-                    'faultString' => $result->message
426
-                );
427
-            } else {
428
-                $return[] = array($result);
429
-            }
430
-        }
431
-        return $return;
432
-    }
361
+	function error($error, $message = false) {
362
+		// Accepts either an error object or an error code and message
363
+		if ($message && !is_object($error)) {
364
+			$error = new IXR_Error($error, $message);
365
+		}
366
+		$this->output($error->getXml());
367
+	}
368
+	function output($xml) {
369
+		$xml = '<?xml version="1.0"?>'."\n".$xml;
370
+		$length = strlen($xml);
371
+		header('Connection: close');
372
+		header('Content-Length: '.$length);
373
+		header('Content-Type: text/xml');
374
+		header('Date: '.date('r'));
375
+		echo $xml;
376
+		exit;
377
+	}
378
+	function hasMethod($method) {
379
+		return in_array($method, array_keys($this->callbacks));
380
+	}
381
+	function setCapabilities() {
382
+		// Initialises capabilities array
383
+		$this->capabilities = array(
384
+			'xmlrpc' => array(
385
+				'specUrl' => 'http://www.xmlrpc.com/spec',
386
+				'specVersion' => 1
387
+			),
388
+			'faults_interop' => array(
389
+				'specUrl' => 'http://xmlrpc-epi.sourceforge.net/specs/rfc.fault_codes.php',
390
+				'specVersion' => 20010516
391
+			),
392
+			'system.multicall' => array(
393
+				'specUrl' => 'http://www.xmlrpc.com/discuss/msgReader$1208',
394
+				'specVersion' => 1
395
+			),
396
+		);   
397
+	}
398
+	function getCapabilities($args) {
399
+		return $this->capabilities;
400
+	}
401
+	function setCallbacks() {
402
+		$this->callbacks['system.getCapabilities'] = 'this:getCapabilities';
403
+		$this->callbacks['system.listMethods'] = 'this:listMethods';
404
+		$this->callbacks['system.multicall'] = 'this:multiCall';
405
+	}
406
+	function listMethods($args) {
407
+		// Returns a list of methods - uses array_reverse to ensure user defined
408
+		// methods are listed before server defined methods
409
+		return array_reverse(array_keys($this->callbacks));
410
+	}
411
+	function multiCall($methodcalls) {
412
+		// See http://www.xmlrpc.com/discuss/msgReader$1208
413
+		$return = array();
414
+		foreach ($methodcalls as $call) {
415
+			$method = $call['methodName'];
416
+			$params = $call['params'];
417
+			if ($method == 'system.multicall') {
418
+				$result = new IXR_Error(-32600, 'Recursive calls to system.multicall are forbidden');
419
+			} else {
420
+				$result = $this->call($method, $params);
421
+			}
422
+			if (is_a($result, 'IXR_Error')) {
423
+				$return[] = array(
424
+					'faultCode' => $result->code,
425
+					'faultString' => $result->message
426
+				);
427
+			} else {
428
+				$return[] = array($result);
429
+			}
430
+		}
431
+		return $return;
432
+	}
433 433
 }
434 434
 
435 435
 class IXR_Request {
436
-    var $method;
437
-    var $args;
438
-    var $xml;
439
-    function IXR_Request($method, $args) {
440
-        $this->method = $method;
441
-        $this->args = $args;
442
-        $this->xml = <<<EOD
436
+	var $method;
437
+	var $args;
438
+	var $xml;
439
+	function IXR_Request($method, $args) {
440
+		$this->method = $method;
441
+		$this->args = $args;
442
+		$this->xml = <<<EOD
443 443
 <?xml version="1.0"?>
444 444
 <methodCall>
445 445
 <methodName>{$this->method}</methodName>
446 446
 <params>
447 447
 
448 448
 EOD;
449
-        foreach ($this->args as $arg) {
450
-            $this->xml .= '<param><value>';
451
-            $v = new IXR_Value($arg);
452
-            $this->xml .= $v->getXml();
453
-            $this->xml .= "</value></param>\n";
454
-        }
455
-        $this->xml .= '</params></methodCall>';
456
-    }
457
-    function getLength() {
458
-        return strlen($this->xml);
459
-    }
460
-    function getXml() {
461
-        return $this->xml;
462
-    }
449
+		foreach ($this->args as $arg) {
450
+			$this->xml .= '<param><value>';
451
+			$v = new IXR_Value($arg);
452
+			$this->xml .= $v->getXml();
453
+			$this->xml .= "</value></param>\n";
454
+		}
455
+		$this->xml .= '</params></methodCall>';
456
+	}
457
+	function getLength() {
458
+		return strlen($this->xml);
459
+	}
460
+	function getXml() {
461
+		return $this->xml;
462
+	}
463 463
 }
464 464
 
465 465
 
466 466
 class IXR_Client {
467
-    var $server;
468
-    var $port;
469
-    var $path;
470
-    var $useragent;
471
-    var $response;
472
-    var $timeout;
473
-    var $vendor = '';
474
-    var $message = false;
475
-    var $debug = false;
476
-    // Storage place for an error message
477
-    var $error = false;
478
-    function IXR_Client($server, $path = false, $port = 80, $timeout = 30, $vendor = '') {
479
-        if (!$path) {
480
-            // Assume we have been given a URL instead
481
-            $bits = parse_url($server);
482
-            $this->server = $bits['host'];
483
-            $this->port = isset($bits['port']) ? $bits['port'] : 80;
484
-            $this->path = isset($bits['path']) ? $bits['path'] : '/';
485
-            // Make absolutely sure we have a path
486
-            if (!$this->path) {
487
-                $this->path = '/';
488
-            }
489
-        } else {
490
-            $this->server = $server;
491
-            $this->path = $path;
492
-            $this->port = $port;
493
-            $this->timeout = $timeout;
494
-        }
495
-        $this->useragent = 'The Incutio XML-RPC PHP Library';
496
-    }
497
-    function query() {
498
-        $args = func_get_args();
499
-        $method = array_shift($args);
500
-        $request = new IXR_Request($method, $args);
501
-        $length = $request->getLength();
502
-        $xml = $request->getXml();
503
-        $r = "\r\n";
504
-        $request  = "POST {$this->path} HTTP/1.0$r";
505
-        $request .= "Host: {$this->server}$r";
506
-        $request .= "Content-Type: text/xml$r";
507
-        $request .= "User-Agent: {$this->useragent}$r";
508
-        $request .= "Content-length: {$length}$r$r";
509
-        $request .= $xml;
510
-        // Now send the request
511
-        if ($this->debug) {
512
-            echo '<pre>'.htmlspecialchars($request)."\n</pre>\n\n";
513
-        }
514
-        $fp = @fsockopen($this->server, $this->port, $errno, $errstr, $this->timeout);
515
-        if (!$fp) {
516
-            $this->error = new IXR_Error(-32300, 'transport error - could not open socket');
517
-            return false;
518
-        }
519
-        fputs($fp, $request);
520
-        $contents = '';
521
-        $gotFirstLine = false;
522
-        $gettingHeaders = true;
523
-        while (!feof($fp)) {
524
-            $line = fgets($fp, 4096);
525
-            if (!$gotFirstLine) {
526
-                // Check line for '200'
527
-                if (strstr($line, '200') === false) {
528
-                    $this->error = new IXR_Error(-32300, 'transport error - HTTP status code was not 200');
529
-                    return false;
530
-                }
531
-                $gotFirstLine = true;
532
-            }
533
-            if (trim($line) == '') {
534
-                $gettingHeaders = false;
535
-            }
536
-            if (!$gettingHeaders) {
537
-                $contents .= trim($line)."\n";
538
-            }
539
-        }
540
-        if ($this->debug) {
541
-            echo '<pre>'.htmlspecialchars($contents)."\n</pre>\n\n";
542
-        }
543
-        // Now parse what we've got back
544
-        $this->message = new IXR_Message($contents);
545
-        if (!$this->message->parse()) {
546
-            // XML error
547
-            $this->error = new IXR_Error(-32700, 'parse error. not well formed');
548
-            return false;
549
-        }
550
-        // Is the message a fault?
551
-        if ($this->message->messageType == 'fault') {
552
-            $this->error = new IXR_Error($this->message->faultCode, $this->message->faultString);
553
-            return false;
554
-        }
555
-        // Message must be OK
556
-        return true;
557
-    }
558
-    function getResponse() {
559
-        // methodResponses can only have one param - return that
560
-        return $this->message->params[0];
561
-    }
562
-    function isError() {
563
-        return (is_object($this->error));
564
-    }
565
-    function getErrorCode() {
566
-        return $this->error->code;
567
-    }
568
-    function getErrorMessage() {
569
-        return $this->error->message;
570
-    }
467
+	var $server;
468
+	var $port;
469
+	var $path;
470
+	var $useragent;
471
+	var $response;
472
+	var $timeout;
473
+	var $vendor = '';
474
+	var $message = false;
475
+	var $debug = false;
476
+	// Storage place for an error message
477
+	var $error = false;
478
+	function IXR_Client($server, $path = false, $port = 80, $timeout = 30, $vendor = '') {
479
+		if (!$path) {
480
+			// Assume we have been given a URL instead
481
+			$bits = parse_url($server);
482
+			$this->server = $bits['host'];
483
+			$this->port = isset($bits['port']) ? $bits['port'] : 80;
484
+			$this->path = isset($bits['path']) ? $bits['path'] : '/';
485
+			// Make absolutely sure we have a path
486
+			if (!$this->path) {
487
+				$this->path = '/';
488
+			}
489
+		} else {
490
+			$this->server = $server;
491
+			$this->path = $path;
492
+			$this->port = $port;
493
+			$this->timeout = $timeout;
494
+		}
495
+		$this->useragent = 'The Incutio XML-RPC PHP Library';
496
+	}
497
+	function query() {
498
+		$args = func_get_args();
499
+		$method = array_shift($args);
500
+		$request = new IXR_Request($method, $args);
501
+		$length = $request->getLength();
502
+		$xml = $request->getXml();
503
+		$r = "\r\n";
504
+		$request  = "POST {$this->path} HTTP/1.0$r";
505
+		$request .= "Host: {$this->server}$r";
506
+		$request .= "Content-Type: text/xml$r";
507
+		$request .= "User-Agent: {$this->useragent}$r";
508
+		$request .= "Content-length: {$length}$r$r";
509
+		$request .= $xml;
510
+		// Now send the request
511
+		if ($this->debug) {
512
+			echo '<pre>'.htmlspecialchars($request)."\n</pre>\n\n";
513
+		}
514
+		$fp = @fsockopen($this->server, $this->port, $errno, $errstr, $this->timeout);
515
+		if (!$fp) {
516
+			$this->error = new IXR_Error(-32300, 'transport error - could not open socket');
517
+			return false;
518
+		}
519
+		fputs($fp, $request);
520
+		$contents = '';
521
+		$gotFirstLine = false;
522
+		$gettingHeaders = true;
523
+		while (!feof($fp)) {
524
+			$line = fgets($fp, 4096);
525
+			if (!$gotFirstLine) {
526
+				// Check line for '200'
527
+				if (strstr($line, '200') === false) {
528
+					$this->error = new IXR_Error(-32300, 'transport error - HTTP status code was not 200');
529
+					return false;
530
+				}
531
+				$gotFirstLine = true;
532
+			}
533
+			if (trim($line) == '') {
534
+				$gettingHeaders = false;
535
+			}
536
+			if (!$gettingHeaders) {
537
+				$contents .= trim($line)."\n";
538
+			}
539
+		}
540
+		if ($this->debug) {
541
+			echo '<pre>'.htmlspecialchars($contents)."\n</pre>\n\n";
542
+		}
543
+		// Now parse what we've got back
544
+		$this->message = new IXR_Message($contents);
545
+		if (!$this->message->parse()) {
546
+			// XML error
547
+			$this->error = new IXR_Error(-32700, 'parse error. not well formed');
548
+			return false;
549
+		}
550
+		// Is the message a fault?
551
+		if ($this->message->messageType == 'fault') {
552
+			$this->error = new IXR_Error($this->message->faultCode, $this->message->faultString);
553
+			return false;
554
+		}
555
+		// Message must be OK
556
+		return true;
557
+	}
558
+	function getResponse() {
559
+		// methodResponses can only have one param - return that
560
+		return $this->message->params[0];
561
+	}
562
+	function isError() {
563
+		return (is_object($this->error));
564
+	}
565
+	function getErrorCode() {
566
+		return $this->error->code;
567
+	}
568
+	function getErrorMessage() {
569
+		return $this->error->message;
570
+	}
571 571
 }
572 572
 
573 573
 
574 574
 class IXR_Error {
575
-    var $code;
576
-    var $message;
577
-    function IXR_Error($code, $message) {
578
-        $this->code = $code;
579
-        $this->message = $message;
580
-    }
581
-    function getXml() {
582
-        $xml = <<<EOD
575
+	var $code;
576
+	var $message;
577
+	function IXR_Error($code, $message) {
578
+		$this->code = $code;
579
+		$this->message = $message;
580
+	}
581
+	function getXml() {
582
+		$xml = <<<EOD
583 583
 <methodResponse>
584 584
   <fault>
585 585
     <value>
@@ -598,231 +598,231 @@  discard block
 block discarded – undo
598 598
 </methodResponse> 
599 599
 
600 600
 EOD;
601
-        return $xml;
602
-    }
601
+		return $xml;
602
+	}
603 603
 }
604 604
 
605 605
 
606 606
 class IXR_Date {
607
-    var $year;
608
-    var $month;
609
-    var $day;
610
-    var $hour;
611
-    var $minute;
612
-    var $second;
613
-    var $timezone;
614
-    function IXR_Date($time) {
615
-        // $time can be a PHP timestamp or an ISO one
616
-        if (is_numeric($time)) {
617
-            $this->parseTimestamp($time);
618
-        } else {
619
-            $this->parseIso($time);
620
-        }
621
-    }
622
-    function parseTimestamp($timestamp) {
623
-        $this->year = date('Y', $timestamp);
624
-        $this->month = date('Y', $timestamp);
625
-        $this->day = date('Y', $timestamp);
626
-        $this->hour = date('H', $timestamp);
627
-        $this->minute = date('i', $timestamp);
628
-        $this->second = date('s', $timestamp);
629
-    }
630
-    function parseIso($iso) {
631
-        $this->year = substr($iso, 0, 4);
632
-        $this->month = substr($iso, 4, 2);
633
-        $this->day = substr($iso, 6, 2);
634
-        $this->hour = substr($iso, 9, 2);
635
-        $this->minute = substr($iso, 12, 2);
636
-        $this->second = substr($iso, 15, 2);
637
-        $this->timezone = substr($iso, 17);
638
-    }
639
-    function getIso() {
640
-        return $this->year.$this->month.$this->day.'T'.$this->hour.':'.$this->minute.':'.$this->second.$this->timezone;
641
-    }
642
-    function getXml() {
643
-        return '<dateTime.iso8601>'.$this->getIso().'</dateTime.iso8601>';
644
-    }
645
-    function getTimestamp() {
646
-        return mktime($this->hour, $this->minute, $this->second, $this->month, $this->day, $this->year);
647
-    }
607
+	var $year;
608
+	var $month;
609
+	var $day;
610
+	var $hour;
611
+	var $minute;
612
+	var $second;
613
+	var $timezone;
614
+	function IXR_Date($time) {
615
+		// $time can be a PHP timestamp or an ISO one
616
+		if (is_numeric($time)) {
617
+			$this->parseTimestamp($time);
618
+		} else {
619
+			$this->parseIso($time);
620
+		}
621
+	}
622
+	function parseTimestamp($timestamp) {
623
+		$this->year = date('Y', $timestamp);
624
+		$this->month = date('Y', $timestamp);
625
+		$this->day = date('Y', $timestamp);
626
+		$this->hour = date('H', $timestamp);
627
+		$this->minute = date('i', $timestamp);
628
+		$this->second = date('s', $timestamp);
629
+	}
630
+	function parseIso($iso) {
631
+		$this->year = substr($iso, 0, 4);
632
+		$this->month = substr($iso, 4, 2);
633
+		$this->day = substr($iso, 6, 2);
634
+		$this->hour = substr($iso, 9, 2);
635
+		$this->minute = substr($iso, 12, 2);
636
+		$this->second = substr($iso, 15, 2);
637
+		$this->timezone = substr($iso, 17);
638
+	}
639
+	function getIso() {
640
+		return $this->year.$this->month.$this->day.'T'.$this->hour.':'.$this->minute.':'.$this->second.$this->timezone;
641
+	}
642
+	function getXml() {
643
+		return '<dateTime.iso8601>'.$this->getIso().'</dateTime.iso8601>';
644
+	}
645
+	function getTimestamp() {
646
+		return mktime($this->hour, $this->minute, $this->second, $this->month, $this->day, $this->year);
647
+	}
648 648
 }
649 649
 
650 650
 
651 651
 class IXR_Base64 {
652
-    var $data;
653
-    function IXR_Base64($data) {
654
-        $this->data = $data;
655
-    }
656
-    function getXml() {
657
-        return '<base64>'.base64_encode($this->data).'</base64>';
658
-    }
652
+	var $data;
653
+	function IXR_Base64($data) {
654
+		$this->data = $data;
655
+	}
656
+	function getXml() {
657
+		return '<base64>'.base64_encode($this->data).'</base64>';
658
+	}
659 659
 }
660 660
 
661 661
 
662 662
 class IXR_IntrospectionServer extends IXR_Server {
663
-    var $signatures;
664
-    var $help;
665
-    function IXR_IntrospectionServer() {
666
-        $this->setCallbacks();
667
-        $this->setCapabilities();
668
-        $this->capabilities['introspection'] = array(
669
-            'specUrl' => 'http://xmlrpc.usefulinc.com/doc/reserved.html',
670
-            'specVersion' => 1
671
-        );
672
-        $this->addCallback(
673
-            'system.methodSignature', 
674
-            'this:methodSignature', 
675
-            array('array', 'string'), 
676
-            'Returns an array describing the return type and required parameters of a method'
677
-        );
678
-        $this->addCallback(
679
-            'system.getCapabilities', 
680
-            'this:getCapabilities', 
681
-            array('struct'), 
682
-            'Returns a struct describing the XML-RPC specifications supported by this server'
683
-        );
684
-        $this->addCallback(
685
-            'system.listMethods', 
686
-            'this:listMethods', 
687
-            array('array'), 
688
-            'Returns an array of available methods on this server'
689
-        );
690
-        $this->addCallback(
691
-            'system.methodHelp', 
692
-            'this:methodHelp', 
693
-            array('string', 'string'), 
694
-            'Returns a documentation string for the specified method'
695
-        );
696
-    }
697
-    function addCallback($method, $callback, $args, $help) {
698
-        $this->callbacks[$method] = $callback;
699
-        $this->signatures[$method] = $args;
700
-        $this->help[$method] = $help;
701
-    }
702
-    function call($methodname, $args) {
703
-        // Make sure it's in an array
704
-        if ($args && !is_array($args)) {
705
-            $args = array($args);
706
-        }
707
-        // Over-rides default call method, adds signature check
708
-        if (!$this->hasMethod($methodname)) {
709
-            return new IXR_Error(-32601, 'server error. requested method "'.$this->message->methodName.'" not specified.');
710
-        }
711
-        $method = $this->callbacks[$methodname];
712
-        $signature = $this->signatures[$methodname];
713
-        $returnType = array_shift($signature);
714
-        // Check the number of arguments
715
-        if (count($args) != count($signature)) {
716
-            // print 'Num of args: '.count($args).' Num in signature: '.count($signature);
717
-            return new IXR_Error(-32602, 'server error. wrong number of method parameters');
718
-        }
719
-        // Check the argument types
720
-        $ok = true;
721
-        $argsbackup = $args;
722
-        for ($i = 0, $j = count($args); $i < $j; $i++) {
723
-            $arg = array_shift($args);
724
-            $type = array_shift($signature);
725
-            switch ($type) {
726
-                case 'int':
727
-                case 'i4':
728
-                    if (is_array($arg) || !is_int($arg)) {
729
-                        $ok = false;
730
-                    }
731
-                    break;
732
-                case 'base64':
733
-                case 'string':
734
-                    if (!is_string($arg)) {
735
-                        $ok = false;
736
-                    }
737
-                    break;
738
-                case 'boolean':
739
-                    if ($arg !== false && $arg !== true) {
740
-                        $ok = false;
741
-                    }
742
-                    break;
743
-                case 'float':
744
-                case 'double':
745
-                    if (!is_float($arg)) {
746
-                        $ok = false;
747
-                    }
748
-                    break;
749
-                case 'date':
750
-                case 'dateTime.iso8601':
751
-                    if (!is_a($arg, 'IXR_Date')) {
752
-                        $ok = false;
753
-                    }
754
-                    break;
755
-            }
756
-            if (!$ok) {
757
-                return new IXR_Error(-32602, 'server error. invalid method parameters');
758
-            }
759
-        }
760
-        // It passed the test - run the "real" method call
761
-        return parent::call($methodname, $argsbackup);
762
-    }
763
-    function methodSignature($method) {
764
-        if (!$this->hasMethod($method)) {
765
-            return new IXR_Error(-32601, 'server error. requested method "'.$method.'" not specified.');
766
-        }
767
-        // We should be returning an array of types
768
-        $types = $this->signatures[$method];
769
-        $return = array();
770
-        foreach ($types as $type) {
771
-            switch ($type) {
772
-                case 'string':
773
-                    $return[] = 'string';
774
-                    break;
775
-                case 'int':
776
-                case 'i4':
777
-                    $return[] = 42;
778
-                    break;
779
-                case 'double':
780
-                    $return[] = 3.1415;
781
-                    break;
782
-                case 'dateTime.iso8601':
783
-                    $return[] = new IXR_Date(time());
784
-                    break;
785
-                case 'boolean':
786
-                    $return[] = true;
787
-                    break;
788
-                case 'base64':
789
-                    $return[] = new IXR_Base64('base64');
790
-                    break;
791
-                case 'array':
792
-                    $return[] = array('array');
793
-                    break;
794
-                case 'struct':
795
-                    $return[] = array('struct' => 'struct');
796
-                    break;
797
-            }
798
-        }
799
-        return $return;
800
-    }
801
-    function methodHelp($method) {
802
-        return $this->help[$method];
803
-    }
663
+	var $signatures;
664
+	var $help;
665
+	function IXR_IntrospectionServer() {
666
+		$this->setCallbacks();
667
+		$this->setCapabilities();
668
+		$this->capabilities['introspection'] = array(
669
+			'specUrl' => 'http://xmlrpc.usefulinc.com/doc/reserved.html',
670
+			'specVersion' => 1
671
+		);
672
+		$this->addCallback(
673
+			'system.methodSignature', 
674
+			'this:methodSignature', 
675
+			array('array', 'string'), 
676
+			'Returns an array describing the return type and required parameters of a method'
677
+		);
678
+		$this->addCallback(
679
+			'system.getCapabilities', 
680
+			'this:getCapabilities', 
681
+			array('struct'), 
682
+			'Returns a struct describing the XML-RPC specifications supported by this server'
683
+		);
684
+		$this->addCallback(
685
+			'system.listMethods', 
686
+			'this:listMethods', 
687
+			array('array'), 
688
+			'Returns an array of available methods on this server'
689
+		);
690
+		$this->addCallback(
691
+			'system.methodHelp', 
692
+			'this:methodHelp', 
693
+			array('string', 'string'), 
694
+			'Returns a documentation string for the specified method'
695
+		);
696
+	}
697
+	function addCallback($method, $callback, $args, $help) {
698
+		$this->callbacks[$method] = $callback;
699
+		$this->signatures[$method] = $args;
700
+		$this->help[$method] = $help;
701
+	}
702
+	function call($methodname, $args) {
703
+		// Make sure it's in an array
704
+		if ($args && !is_array($args)) {
705
+			$args = array($args);
706
+		}
707
+		// Over-rides default call method, adds signature check
708
+		if (!$this->hasMethod($methodname)) {
709
+			return new IXR_Error(-32601, 'server error. requested method "'.$this->message->methodName.'" not specified.');
710
+		}
711
+		$method = $this->callbacks[$methodname];
712
+		$signature = $this->signatures[$methodname];
713
+		$returnType = array_shift($signature);
714
+		// Check the number of arguments
715
+		if (count($args) != count($signature)) {
716
+			// print 'Num of args: '.count($args).' Num in signature: '.count($signature);
717
+			return new IXR_Error(-32602, 'server error. wrong number of method parameters');
718
+		}
719
+		// Check the argument types
720
+		$ok = true;
721
+		$argsbackup = $args;
722
+		for ($i = 0, $j = count($args); $i < $j; $i++) {
723
+			$arg = array_shift($args);
724
+			$type = array_shift($signature);
725
+			switch ($type) {
726
+				case 'int':
727
+				case 'i4':
728
+					if (is_array($arg) || !is_int($arg)) {
729
+						$ok = false;
730
+					}
731
+					break;
732
+				case 'base64':
733
+				case 'string':
734
+					if (!is_string($arg)) {
735
+						$ok = false;
736
+					}
737
+					break;
738
+				case 'boolean':
739
+					if ($arg !== false && $arg !== true) {
740
+						$ok = false;
741
+					}
742
+					break;
743
+				case 'float':
744
+				case 'double':
745
+					if (!is_float($arg)) {
746
+						$ok = false;
747
+					}
748
+					break;
749
+				case 'date':
750
+				case 'dateTime.iso8601':
751
+					if (!is_a($arg, 'IXR_Date')) {
752
+						$ok = false;
753
+					}
754
+					break;
755
+			}
756
+			if (!$ok) {
757
+				return new IXR_Error(-32602, 'server error. invalid method parameters');
758
+			}
759
+		}
760
+		// It passed the test - run the "real" method call
761
+		return parent::call($methodname, $argsbackup);
762
+	}
763
+	function methodSignature($method) {
764
+		if (!$this->hasMethod($method)) {
765
+			return new IXR_Error(-32601, 'server error. requested method "'.$method.'" not specified.');
766
+		}
767
+		// We should be returning an array of types
768
+		$types = $this->signatures[$method];
769
+		$return = array();
770
+		foreach ($types as $type) {
771
+			switch ($type) {
772
+				case 'string':
773
+					$return[] = 'string';
774
+					break;
775
+				case 'int':
776
+				case 'i4':
777
+					$return[] = 42;
778
+					break;
779
+				case 'double':
780
+					$return[] = 3.1415;
781
+					break;
782
+				case 'dateTime.iso8601':
783
+					$return[] = new IXR_Date(time());
784
+					break;
785
+				case 'boolean':
786
+					$return[] = true;
787
+					break;
788
+				case 'base64':
789
+					$return[] = new IXR_Base64('base64');
790
+					break;
791
+				case 'array':
792
+					$return[] = array('array');
793
+					break;
794
+				case 'struct':
795
+					$return[] = array('struct' => 'struct');
796
+					break;
797
+			}
798
+		}
799
+		return $return;
800
+	}
801
+	function methodHelp($method) {
802
+		return $this->help[$method];
803
+	}
804 804
 }
805 805
 
806 806
 
807 807
 class IXR_ClientMulticall extends IXR_Client {
808
-    var $calls = array();
809
-    function IXR_ClientMulticall($server, $path = false, $port = 80) {
810
-        parent::IXR_Client($server, $path, $port);
811
-        $this->useragent = 'The Incutio XML-RPC PHP Library (multicall client)';
812
-    }
813
-    function addCall() {
814
-        $args = func_get_args();
815
-        $methodName = array_shift($args);
816
-        $struct = array(
817
-            'methodName' => $methodName,
818
-            'params' => $args
819
-        );
820
-        $this->calls[] = $struct;
821
-    }
822
-    function query() {
823
-        // Prepare multicall, then call the parent::query() method
824
-        return parent::query('system.multicall', $this->calls);
825
-    }
808
+	var $calls = array();
809
+	function IXR_ClientMulticall($server, $path = false, $port = 80) {
810
+		parent::IXR_Client($server, $path, $port);
811
+		$this->useragent = 'The Incutio XML-RPC PHP Library (multicall client)';
812
+	}
813
+	function addCall() {
814
+		$args = func_get_args();
815
+		$methodName = array_shift($args);
816
+		$struct = array(
817
+			'methodName' => $methodName,
818
+			'params' => $args
819
+		);
820
+		$this->calls[] = $struct;
821
+	}
822
+	function query() {
823
+		// Prepare multicall, then call the parent::query() method
824
+		return parent::query('system.multicall', $this->calls);
825
+	}
826 826
 }
827 827
 
828 828
 ?>
829 829
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -13,7 +13,7 @@  discard block
 block discarded – undo
13 13
 class IXR_Value {
14 14
     var $data;
15 15
     var $type;
16
-    function IXR_Value ($data, $type = false) {
16
+    function IXR_Value($data, $type = false) {
17 17
         $this->data = $data;
18 18
         if (!$type) {
19 19
             $type = $this->calculateType();
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
             }
27 27
         }
28 28
         if ($type == 'array') {
29
-            for ($i = 0, $j = count($this->data); $i < $j; $i++) {
29
+            for ($i = 0, $j = count($this->data); $i<$j; $i++) {
30 30
                 $this->data[$i] = new IXR_Value($this->data[$i]);
31 31
             }
32 32
         }
@@ -60,7 +60,7 @@  discard block
 block discarded – undo
60 60
         /* We have an array - is it an array or a struct ? */
61 61
         if ($this->isStruct($this->data)) {
62 62
             return 'struct';
63
-        } else {
63
+        }else {
64 64
             return 'array';
65 65
         }
66 66
     }
@@ -107,7 +107,7 @@  discard block
 block discarded – undo
107 107
         /* Nasty function to check if an array is a struct or not */
108 108
         $expected = 0;
109 109
         foreach ($array as $key => $value) {
110
-            if ((string)$key != (string)$expected) {
110
+            if ((string) $key != (string) $expected) {
111 111
                 return true;
112 112
             }
113 113
             $expected++;
@@ -119,22 +119,22 @@  discard block
 block discarded – undo
119 119
 
120 120
 class IXR_Message {
121 121
     var $message;
122
-    var $messageType;  // methodCall / methodResponse / fault
122
+    var $messageType; // methodCall / methodResponse / fault
123 123
     var $faultCode;
124 124
     var $faultString;
125 125
     var $methodName;
126 126
     var $params;
127 127
     // Current variable stacks
128
-    var $_arraystructs = array();   // The stack used to keep track of the current array/struct
128
+    var $_arraystructs = array(); // The stack used to keep track of the current array/struct
129 129
     var $_arraystructstypes = array(); // Stack keeping track of if things are structs or array
130
-    var $_currentStructName = array();  // A stack as well
130
+    var $_currentStructName = array(); // A stack as well
131 131
     var $_param;
132 132
     var $_value;
133 133
     var $_currentTag;
134 134
     var $_currentTagContents;
135 135
     // The XML parser
136 136
     var $_parser;
137
-    function IXR_Message ($message) {
137
+    function IXR_Message($message) {
138 138
         $this->message = $message;
139 139
     }
140 140
     function parse() {
@@ -166,7 +166,7 @@  discard block
 block discarded – undo
166 166
     }
167 167
     function tag_open($parser, $tag, $attr) {
168 168
         $this->currentTag = $tag;
169
-        switch($tag) {
169
+        switch ($tag) {
170 170
             case 'methodCall':
171 171
             case 'methodResponse':
172 172
             case 'fault':
@@ -188,20 +188,20 @@  discard block
 block discarded – undo
188 188
     }
189 189
     function tag_close($parser, $tag) {
190 190
         $valueFlag = false;
191
-        switch($tag) {
191
+        switch ($tag) {
192 192
             case 'int':
193 193
             case 'i4':
194
-                $value = (int)trim($this->_currentTagContents);
194
+                $value = (int) trim($this->_currentTagContents);
195 195
                 $this->_currentTagContents = '';
196 196
                 $valueFlag = true;
197 197
                 break;
198 198
             case 'double':
199
-                $value = (double)trim($this->_currentTagContents);
199
+                $value = (double) trim($this->_currentTagContents);
200 200
                 $this->_currentTagContents = '';
201 201
                 $valueFlag = true;
202 202
                 break;
203 203
             case 'string':
204
-                $value = (string)trim($this->_currentTagContents);
204
+                $value = (string) trim($this->_currentTagContents);
205 205
                 $this->_currentTagContents = '';
206 206
                 $valueFlag = true;
207 207
                 break;
@@ -214,18 +214,18 @@  discard block
 block discarded – undo
214 214
             case 'value':
215 215
                 // "If no type is indicated, the type is string."
216 216
                 if (trim($this->_currentTagContents) != '') {
217
-                    $value = (string)$this->_currentTagContents;
217
+                    $value = (string) $this->_currentTagContents;
218 218
                     $this->_currentTagContents = '';
219 219
                     $valueFlag = true;
220 220
                 }
221 221
                 break;
222 222
             case 'boolean':
223
-                $value = (boolean)trim($this->_currentTagContents);
223
+                $value = (boolean) trim($this->_currentTagContents);
224 224
                 $this->_currentTagContents = '';
225 225
                 $valueFlag = true;
226 226
                 break;
227 227
             case 'base64':
228
-                $value = base64_decode( trim($this->_currentTagContents) );
228
+                $value = base64_decode(trim($this->_currentTagContents));
229 229
                 $this->_currentTagContents = '';
230 230
                 $valueFlag = true;
231 231
                 break;
@@ -254,16 +254,16 @@  discard block
 block discarded – undo
254 254
                 $value = trim($value);
255 255
             }
256 256
             */
257
-            if (count($this->_arraystructs) > 0) {
257
+            if (count($this->_arraystructs)>0) {
258 258
                 // Add value to struct or array
259 259
                 if ($this->_arraystructstypes[count($this->_arraystructstypes)-1] == 'struct') {
260 260
                     // Add to struct
261 261
                     $this->_arraystructs[count($this->_arraystructs)-1][$this->_currentStructName[count($this->_currentStructName)-1]] = $value;
262
-                } else {
262
+                }else {
263 263
                     // Add to array
264 264
                     $this->_arraystructs[count($this->_arraystructs)-1][] = $value;
265 265
                 }
266
-            } else {
266
+            }else {
267 267
                 // Just add as a paramater
268 268
                 $this->params[] = $value;
269 269
             }
@@ -343,13 +343,13 @@  discard block
 block discarded – undo
343 343
             }
344 344
             // Call the method
345 345
             $result = $this->$method($args);
346
-        } else {
346
+        }else {
347 347
             // It's a function - does it exist?
348 348
             if (is_array($method)) {
349 349
             	if (!method_exists($method[0], $method[1])) {
350 350
                 return new IXR_Error(-32601, 'server error. requested object method "'.$method[1].'" does not exist.');
351 351
             	}
352
-            } else if (!function_exists($method)) {
352
+            }else if (!function_exists($method)) {
353 353
                 return new IXR_Error(-32601, 'server error. requested function "'.$method.'" does not exist.');
354 354
             }
355 355
             // Call the function
@@ -416,7 +416,7 @@  discard block
 block discarded – undo
416 416
             $params = $call['params'];
417 417
             if ($method == 'system.multicall') {
418 418
                 $result = new IXR_Error(-32600, 'Recursive calls to system.multicall are forbidden');
419
-            } else {
419
+            }else {
420 420
                 $result = $this->call($method, $params);
421 421
             }
422 422
             if (is_a($result, 'IXR_Error')) {
@@ -424,7 +424,7 @@  discard block
 block discarded – undo
424 424
                     'faultCode' => $result->code,
425 425
                     'faultString' => $result->message
426 426
                 );
427
-            } else {
427
+            }else {
428 428
                 $return[] = array($result);
429 429
             }
430 430
         }
@@ -486,7 +486,7 @@  discard block
 block discarded – undo
486 486
             if (!$this->path) {
487 487
                 $this->path = '/';
488 488
             }
489
-        } else {
489
+        }else {
490 490
             $this->server = $server;
491 491
             $this->path = $path;
492 492
             $this->port = $port;
@@ -615,7 +615,7 @@  discard block
 block discarded – undo
615 615
         // $time can be a PHP timestamp or an ISO one
616 616
         if (is_numeric($time)) {
617 617
             $this->parseTimestamp($time);
618
-        } else {
618
+        }else {
619 619
             $this->parseIso($time);
620 620
         }
621 621
     }
@@ -719,7 +719,7 @@  discard block
 block discarded – undo
719 719
         // Check the argument types
720 720
         $ok = true;
721 721
         $argsbackup = $args;
722
-        for ($i = 0, $j = count($args); $i < $j; $i++) {
722
+        for ($i = 0, $j = count($args); $i<$j; $i++) {
723 723
             $arg = array_shift($args);
724 724
             $type = array_shift($signature);
725 725
             switch ($type) {
Please login to merge, or discard this patch.
class/feedcreator.class.php 4 patches
Doc Comments   +9 added lines, -2 removed lines patch added patch discarded remove patch
@@ -359,6 +359,9 @@  discard block
 block discarded – undo
359 359
 class UniversalFeedCreator extends FeedCreator {
360 360
 	var $_feed;
361 361
 
362
+	/**
363
+	 * @param string $format
364
+	 */
362 365
 	function _setFormat($format) {
363 366
 		switch (strtoupper($format)) {
364 367
 
@@ -540,6 +543,7 @@  discard block
 block discarded – undo
540 543
 	 * Adds an FeedItem to the feed.
541 544
 	 *
542 545
 	 * @param object FeedItem $item The FeedItem to add to the feed.
546
+	 * @param FeedItem $item
543 547
 	 * @access public
544 548
 	 */
545 549
 	function addItem($item) {
@@ -557,6 +561,7 @@  discard block
 block discarded – undo
557 561
 	 * @static
558 562
 	 * @param string    string A string to be truncated.
559 563
 	 * @param int        length the maximum length the string should be truncated to
564
+	 * @param integer $length
560 565
 	 * @return string    the truncated string
561 566
 	 */
562 567
 	function iTrunc($string, $length) {
@@ -655,6 +660,7 @@  discard block
 block discarded – undo
655 660
 	/**
656 661
 	 * @since 1.4
657 662
 	 * @access private
663
+	 * @param string $filename
658 664
 	 */
659 665
 	function _redirect($filename) {
660 666
 		// attention, heavily-commented-out-area
@@ -788,7 +794,7 @@  discard block
 block discarded – undo
788 794
 	/**
789 795
 	 * Gets the date stored in this FeedDate as an RFC 822 date.
790 796
 	 *
791
-	 * @return a date in RFC 822 format
797
+	 * @return string date in RFC 822 format
792 798
 	 */
793 799
 	function rfc822() {
794 800
 		//return gmdate("r",$this->unix);
@@ -800,7 +806,7 @@  discard block
 block discarded – undo
800 806
 	/**
801 807
 	 * Gets the date stored in this FeedDate as an ISO 8601 date.
802 808
 	 *
803
-	 * @return a date in ISO 8601 format
809
+	 * @return string date in ISO 8601 format
804 810
 	 */
805 811
 	function iso8601() {
806 812
 		$date = gmdate("Y-m-d\TH:i:sO",$this->unix);
@@ -922,6 +928,7 @@  discard block
 block discarded – undo
922 928
 	/**
923 929
 	 * Sets this RSS feed's version number.
924 930
 	 * @access private
931
+	 * @param string $version
925 932
 	 */
926 933
 	function _setRSSVersion($version) {
927 934
 		$this->RSSVersion = $version;
Please login to merge, or discard this patch.
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -467,8 +467,8 @@  discard block
 block discarded – undo
467 467
     * @param timeout int      optional the timeout in seconds before a cached version is refreshed (defaults to 3600 = 1 hour)
468 468
     */
469 469
    function useCached($format="RSS0.91", $filename="", $timeout=3600) {
470
-      $this->_setFormat($format);
471
-      $this->_feed->useCached($filename, $timeout);
470
+	  $this->_setFormat($format);
471
+	  $this->_feed->useCached($filename, $timeout);
472 472
    }
473 473
 
474 474
 }
@@ -496,9 +496,9 @@  discard block
 block discarded – undo
496 496
 	var $syndicationURL, $image, $language, $copyright, $pubDate, $lastBuildDate, $editor, $editorEmail, $webmaster, $category, $docs, $ttl, $rating, $skipHours, $skipDays;
497 497
 
498 498
 	/**
499
-	* The url of the external xsl stylesheet used to format the naked rss feed.
500
-	* Ignored in the output when empty.
501
-	*/
499
+	 * The url of the external xsl stylesheet used to format the naked rss feed.
500
+	 * Ignored in the output when empty.
501
+	 */
502 502
 	var $xslStyleSheet = "";
503 503
 
504 504
 	var $cssStyleSheet = "";
@@ -1046,9 +1046,9 @@  discard block
 block discarded – undo
1046 1046
  */
1047 1047
 class RSSCreator20 extends RSSCreator091 {
1048 1048
 
1049
-    function RSSCreator20() {
1050
-        parent::_setRSSVersion("2.0");
1051
-    }
1049
+	function RSSCreator20() {
1050
+		parent::_setRSSVersion("2.0");
1051
+	}
1052 1052
 
1053 1053
 }
1054 1054
 
Please login to merge, or discard this patch.
Spacing   +284 added lines, -284 removed lines patch added patch discarded remove patch
@@ -333,10 +333,10 @@  discard block
 block discarded – undo
333 333
 			$result = "";
334 334
 		}	elseif ($this->syndicateHtml) {
335 335
 			$result = "<![CDATA[".$this->rawFieldContent."]]>";
336
-		} else {
336
+		}else {
337 337
 			if ($this->truncSize and is_int($this->truncSize)) {
338
-				$result = FeedCreator::iTrunc(htmlspecialchars($this->rawFieldContent),$this->truncSize);
339
-			} else {
338
+				$result = FeedCreator::iTrunc(htmlspecialchars($this->rawFieldContent), $this->truncSize);
339
+			}else {
340 340
 				$result = htmlspecialchars($this->rawFieldContent);
341 341
 			}
342 342
 		}
@@ -448,7 +448,7 @@  discard block
 block discarded – undo
448 448
 	 * @param	string	filename	optional	the filename where a recent version of the feed is saved. If not specified, the filename is $_SERVER["PHP_SELF"] with the extension changed to .xml (see _generateFilename()).
449 449
 	 * @param	boolean	displayContents	optional	send the content of the file or not. If true, the file will be sent in the body of the response.
450 450
 	 */
451
-	function saveFeed($format="RSS0.91", $filename="", $displayContents=true) {
451
+	function saveFeed($format = "RSS0.91", $filename = "", $displayContents = true) {
452 452
 		$this->_setFormat($format);
453 453
 		$this->_feed->saveFeed($filename, $displayContents);
454 454
 	}
@@ -466,7 +466,7 @@  discard block
 block discarded – undo
466 466
     * @param filename   string   optional the filename where a recent version of the feed is saved. If not specified, the filename is $_SERVER["PHP_SELF"] with the extension changed to .xml (see _generateFilename()).
467 467
     * @param timeout int      optional the timeout in seconds before a cached version is refreshed (defaults to 3600 = 1 hour)
468 468
     */
469
-   function useCached($format="RSS0.91", $filename="", $timeout=3600) {
469
+   function useCached($format = "RSS0.91", $filename = "", $timeout = 3600) {
470 470
       $this->_setFormat($format);
471 471
       $this->_feed->useCached($filename, $timeout);
472 472
    }
@@ -564,25 +564,25 @@  discard block
 block discarded – undo
564 564
 			return $string;
565 565
 		}
566 566
 
567
-		$pos = strrpos($string,".");
567
+		$pos = strrpos($string, ".");
568 568
 		if ($pos>=$length-4) {
569
-			$string = substr($string,0,$length-4);
570
-			$pos = strrpos($string,".");
569
+			$string = substr($string, 0, $length-4);
570
+			$pos = strrpos($string, ".");
571 571
 		}
572 572
 		if ($pos>=$length*0.4) {
573
-			return substr($string,0,$pos+1)." ...";
573
+			return substr($string, 0, $pos+1)." ...";
574 574
 		}
575 575
 
576
-		$pos = strrpos($string," ");
576
+		$pos = strrpos($string, " ");
577 577
 		if ($pos>=$length-4) {
578
-			$string = substr($string,0,$length-4);
579
-			$pos = strrpos($string," ");
578
+			$string = substr($string, 0, $length-4);
579
+			$pos = strrpos($string, " ");
580 580
 		}
581 581
 		if ($pos>=$length*0.4) {
582
-			return substr($string,0,$pos)." ...";
582
+			return substr($string, 0, $pos)." ...";
583 583
 		}
584 584
 
585
-		return substr($string,0,$length-4)." ...";
585
+		return substr($string, 0, $length-4)." ...";
586 586
 
587 587
 	}
588 588
 
@@ -604,11 +604,11 @@  discard block
 block discarded – undo
604 604
 	 * @param indentString	string	a string that will be inserted before every generated line
605 605
 	 * @return    string    the XML tags corresponding to $additionalElements
606 606
 	 */
607
-	function _createAdditionalElements($elements, $indentString="") {
607
+	function _createAdditionalElements($elements, $indentString = "") {
608 608
 		$ae = "";
609 609
 		if (is_array($elements)) {
610
-			foreach($elements AS $key => $value) {
611
-				$ae.= $indentString."<$key>$value</$key>\n";
610
+			foreach ($elements AS $key => $value) {
611
+				$ae .= $indentString."<$key>$value</$key>\n";
612 612
 			}
613 613
 		}
614 614
 		return $ae;
@@ -648,7 +648,7 @@  discard block
 block discarded – undo
648 648
 	 */
649 649
 	function _generateFilename() {
650 650
 		$fileInfo = pathinfo($_SERVER["PHP_SELF"]);
651
-		return substr($fileInfo["basename"],0,-(strlen($fileInfo["extension"])+1)).".xml";
651
+		return substr($fileInfo["basename"], 0, -(strlen($fileInfo["extension"])+1)).".xml";
652 652
 	}
653 653
 
654 654
 
@@ -686,12 +686,12 @@  discard block
 block discarded – undo
686 686
 	 * @param filename	string	optional	the filename where a recent version of the feed is saved. If not specified, the filename is $_SERVER["PHP_SELF"] with the extension changed to .xml (see _generateFilename()).
687 687
 	 * @param timeout	int		optional	the timeout in seconds before a cached version is refreshed (defaults to 3600 = 1 hour)
688 688
 	 */
689
-	function useCached($filename="", $timeout=3600) {
689
+	function useCached($filename = "", $timeout = 3600) {
690 690
 		$this->_timeout = $timeout;
691
-		if ($filename=="") {
691
+		if ($filename == "") {
692 692
 			$filename = $this->_generateFilename();
693 693
 		}
694
-		if (file_exists($filename) AND (time()-filemtime($filename) < $timeout)) {
694
+		if (file_exists($filename) AND (time()-filemtime($filename)<$timeout)) {
695 695
 			$this->_redirect($filename);
696 696
 		}
697 697
 	}
@@ -705,18 +705,18 @@  discard block
 block discarded – undo
705 705
 	 * @param filename	string	optional	the filename where a recent version of the feed is saved. If not specified, the filename is $_SERVER["PHP_SELF"] with the extension changed to .xml (see _generateFilename()).
706 706
 	 * @param redirect	boolean	optional	send an HTTP redirect header or not. If true, the user will be automatically redirected to the created file.
707 707
 	 */
708
-	function saveFeed($filename="", $displayContents=true) {
709
-		if ($filename=="") {
708
+	function saveFeed($filename = "", $displayContents = true) {
709
+		if ($filename == "") {
710 710
 			$filename = $this->_generateFilename();
711 711
 		}
712 712
 		$feedFile = fopen($filename, "w+");
713 713
 		if ($feedFile) {
714
-			fputs($feedFile,$this->createFeed());
714
+			fputs($feedFile, $this->createFeed());
715 715
 			fclose($feedFile);
716 716
 			if ($displayContents) {
717 717
 				$this->_redirect($filename);
718 718
 			}
719
-		} else {
719
+		}else {
720 720
 			echo "<br /><b>Error creating feed file, please check write permissions.</b><br />";
721 721
 		}
722 722
 	}
@@ -736,29 +736,29 @@  discard block
 block discarded – undo
736 736
 	 * Accepts RFC 822, ISO 8601 date formats as well as unix time stamps.
737 737
 	 * @param mixed $dateString optional the date this FeedDate will represent. If not specified, the current date and time is used.
738 738
 	 */
739
-	function FeedDate($dateString="") {
739
+	function FeedDate($dateString = "") {
740 740
 		$tzOffset = 0;
741
-		if ($dateString=="") $dateString = date("r");
741
+		if ($dateString == "") $dateString = date("r");
742 742
 
743 743
 		//if (is_integer($dateString)) {
744 744
 		if (is_numeric($dateString)) {
745 745
 			$this->unix = $dateString;
746 746
 			return;
747 747
 		}
748
-		if (preg_match("~(?:(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),\\s+)?(\\d{1,2})\\s+([a-zA-Z]{3})\\s+(\\d{4})\\s+(\\d{2}):(\\d{2}):(\\d{2})\\s+(.*)~",$dateString,$matches)) {
749
-			$months = Array("Jan"=>1,"Feb"=>2,"Mar"=>3,"Apr"=>4,"May"=>5,"Jun"=>6,"Jul"=>7,"Aug"=>8,"Sep"=>9,"Oct"=>10,"Nov"=>11,"Dec"=>12);
750
-			$this->unix = mktime($matches[4],$matches[5],$matches[6],$months[$matches[2]],$matches[1],$matches[3]);
751
-			if (substr($matches[7],0,1)=='+' OR substr($matches[7],0,1)=='-') {
752
-				$tzOffset = (substr($matches[7],0,3) * 60 + substr($matches[7],-2)) * 60;
753
-			} else {
754
-				if (strlen($matches[7])==1) {
748
+		if (preg_match("~(?:(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),\\s+)?(\\d{1,2})\\s+([a-zA-Z]{3})\\s+(\\d{4})\\s+(\\d{2}):(\\d{2}):(\\d{2})\\s+(.*)~", $dateString, $matches)) {
749
+			$months = Array("Jan"=>1, "Feb"=>2, "Mar"=>3, "Apr"=>4, "May"=>5, "Jun"=>6, "Jul"=>7, "Aug"=>8, "Sep"=>9, "Oct"=>10, "Nov"=>11, "Dec"=>12);
750
+			$this->unix = mktime($matches[4], $matches[5], $matches[6], $months[$matches[2]], $matches[1], $matches[3]);
751
+			if (substr($matches[7], 0, 1) == '+' OR substr($matches[7], 0, 1) == '-') {
752
+				$tzOffset = (substr($matches[7], 0, 3)*60+substr($matches[7], -2))*60;
753
+			}else {
754
+				if (strlen($matches[7]) == 1) {
755 755
 					$oneHour = 3600;
756 756
 					$ord = ord($matches[7]);
757
-					if ($ord < ord("M")) {
758
-						$tzOffset = (ord("A") - $ord - 1) * $oneHour;
759
-					} elseif ($ord >= ord("M") AND $matches[7]!="Z") {
760
-						$tzOffset = ($ord - ord("M")) * $oneHour;
761
-					} elseif ($matches[7]=="Z") {
757
+					if ($ord<ord("M")) {
758
+						$tzOffset = (ord("A")-$ord-1)*$oneHour;
759
+					} elseif ($ord>=ord("M") AND $matches[7] != "Z") {
760
+						$tzOffset = ($ord-ord("M"))*$oneHour;
761
+					} elseif ($matches[7] == "Z") {
762 762
 						$tzOffset = 0;
763 763
 					}
764 764
 				}
@@ -770,12 +770,12 @@  discard block
 block discarded – undo
770 770
 			$this->unix += $tzOffset;
771 771
 			return;
772 772
 		}
773
-		if (preg_match("~(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})(.*)~",$dateString,$matches)) {
774
-			$this->unix = mktime($matches[4],$matches[5],$matches[6],$matches[2],$matches[3],$matches[1]);
775
-			if (substr($matches[7],0,1)=='+' OR substr($matches[7],0,1)=='-') {
776
-				$tzOffset = (substr($matches[7],0,3) * 60 + substr($matches[7],-2)) * 60;
777
-			} else {
778
-				if ($matches[7]=="Z") {
773
+		if (preg_match("~(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})(.*)~", $dateString, $matches)) {
774
+			$this->unix = mktime($matches[4], $matches[5], $matches[6], $matches[2], $matches[3], $matches[1]);
775
+			if (substr($matches[7], 0, 1) == '+' OR substr($matches[7], 0, 1) == '-') {
776
+				$tzOffset = (substr($matches[7], 0, 3)*60+substr($matches[7], -2))*60;
777
+			}else {
778
+				if ($matches[7] == "Z") {
779 779
 					$tzOffset = 0;
780 780
 				}
781 781
 			}
@@ -793,7 +793,7 @@  discard block
 block discarded – undo
793 793
 	function rfc822() {
794 794
 		//return gmdate("r",$this->unix);
795 795
 		$date = gmdate("D, d M Y H:i:s", $this->unix);
796
-		if (TIME_ZONE!="") $date .= " ".str_replace(":","",TIME_ZONE);
796
+		if (TIME_ZONE != "") $date .= " ".str_replace(":", "", TIME_ZONE);
797 797
 		return $date;
798 798
 	}
799 799
 
@@ -803,9 +803,9 @@  discard block
 block discarded – undo
803 803
 	 * @return a date in ISO 8601 format
804 804
 	 */
805 805
 	function iso8601() {
806
-		$date = gmdate("Y-m-d\TH:i:sO",$this->unix);
807
-		$date = substr($date,0,22) . ':' . substr($date,-2);
808
-		if (TIME_ZONE!="") $date = str_replace("+00:00",TIME_ZONE,$date);
806
+		$date = gmdate("Y-m-d\TH:i:sO", $this->unix);
807
+		$date = substr($date, 0, 22).':'.substr($date, -2);
808
+		if (TIME_ZONE != "") $date = str_replace("+00:00", TIME_ZONE, $date);
809 809
 		return $date;
810 810
 	}
811 811
 
@@ -836,63 +836,63 @@  discard block
 block discarded – undo
836 836
 	 */
837 837
 	function createFeed() {
838 838
 		$feed = "<?xml version=\"1.0\" encoding=\"".$this->encoding."\"?>\n";
839
-		$feed.= $this->_createGeneratorComment();
840
-		if ($this->cssStyleSheet=="") {
839
+		$feed .= $this->_createGeneratorComment();
840
+		if ($this->cssStyleSheet == "") {
841 841
 			$cssStyleSheet = "http://www.w3.org/2000/08/w3c-synd/style.css";
842 842
 		}
843
-		$feed.= $this->_createStylesheetReferences();
844
-		$feed.= "<rdf:RDF\n";
845
-		$feed.= "    xmlns=\"http://purl.org/rss/1.0/\"\n";
846
-		$feed.= "    xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n";
847
-		$feed.= "    xmlns:slash=\"http://purl.org/rss/1.0/modules/slash/\"\n";
848
-		$feed.= "    xmlns:dc=\"http://purl.org/dc/elements/1.1/\">\n";
849
-		$feed.= "    <channel rdf:about=\"".$this->syndicationURL."\">\n";
850
-		$feed.= "        <title>".htmlspecialchars($this->title)."</title>\n";
851
-		$feed.= "        <description>".htmlspecialchars($this->description)."</description>\n";
852
-		$feed.= "        <link>".$this->link."</link>\n";
853
-		if ($this->image!=null) {
854
-			$feed.= "        <image rdf:resource=\"".$this->image->url."\" />\n";
843
+		$feed .= $this->_createStylesheetReferences();
844
+		$feed .= "<rdf:RDF\n";
845
+		$feed .= "    xmlns=\"http://purl.org/rss/1.0/\"\n";
846
+		$feed .= "    xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n";
847
+		$feed .= "    xmlns:slash=\"http://purl.org/rss/1.0/modules/slash/\"\n";
848
+		$feed .= "    xmlns:dc=\"http://purl.org/dc/elements/1.1/\">\n";
849
+		$feed .= "    <channel rdf:about=\"".$this->syndicationURL."\">\n";
850
+		$feed .= "        <title>".htmlspecialchars($this->title)."</title>\n";
851
+		$feed .= "        <description>".htmlspecialchars($this->description)."</description>\n";
852
+		$feed .= "        <link>".$this->link."</link>\n";
853
+		if ($this->image != null) {
854
+			$feed .= "        <image rdf:resource=\"".$this->image->url."\" />\n";
855 855
 		}
856 856
 		$now = new FeedDate();
857
-		$feed.= "       <dc:date>".htmlspecialchars($now->iso8601())."</dc:date>\n";
858
-		$feed.= "        <items>\n";
859
-		$feed.= "            <rdf:Seq>\n";
860
-		for ($i=0;$i<count($this->items);$i++) {
861
-			$feed.= "                <rdf:li rdf:resource=\"".htmlspecialchars($this->items[$i]->link)."\"/>\n";
857
+		$feed .= "       <dc:date>".htmlspecialchars($now->iso8601())."</dc:date>\n";
858
+		$feed .= "        <items>\n";
859
+		$feed .= "            <rdf:Seq>\n";
860
+		for ($i = 0; $i<count($this->items); $i++) {
861
+			$feed .= "                <rdf:li rdf:resource=\"".htmlspecialchars($this->items[$i]->link)."\"/>\n";
862 862
 		}
863
-		$feed.= "            </rdf:Seq>\n";
864
-		$feed.= "        </items>\n";
865
-		$feed.= "    </channel>\n";
866
-		if ($this->image!=null) {
867
-			$feed.= "    <image rdf:about=\"".$this->image->url."\">\n";
868
-			$feed.= "        <title>".$this->image->title."</title>\n";
869
-			$feed.= "        <link>".$this->image->link."</link>\n";
870
-			$feed.= "        <url>".$this->image->url."</url>\n";
871
-			$feed.= "    </image>\n";
863
+		$feed .= "            </rdf:Seq>\n";
864
+		$feed .= "        </items>\n";
865
+		$feed .= "    </channel>\n";
866
+		if ($this->image != null) {
867
+			$feed .= "    <image rdf:about=\"".$this->image->url."\">\n";
868
+			$feed .= "        <title>".$this->image->title."</title>\n";
869
+			$feed .= "        <link>".$this->image->link."</link>\n";
870
+			$feed .= "        <url>".$this->image->url."</url>\n";
871
+			$feed .= "    </image>\n";
872 872
 		}
873
-		$feed.= $this->_createAdditionalElements($this->additionalElements, "    ");
873
+		$feed .= $this->_createAdditionalElements($this->additionalElements, "    ");
874 874
 
875
-		for ($i=0;$i<count($this->items);$i++) {
876
-			$feed.= "    <item rdf:about=\"".htmlspecialchars($this->items[$i]->link)."\">\n";
875
+		for ($i = 0; $i<count($this->items); $i++) {
876
+			$feed .= "    <item rdf:about=\"".htmlspecialchars($this->items[$i]->link)."\">\n";
877 877
 			//$feed.= "        <dc:type>Posting</dc:type>\n";
878
-			$feed.= "        <dc:format>text/html</dc:format>\n";
879
-			if ($this->items[$i]->date!=null) {
878
+			$feed .= "        <dc:format>text/html</dc:format>\n";
879
+			if ($this->items[$i]->date != null) {
880 880
 				$itemDate = new FeedDate($this->items[$i]->date);
881
-				$feed.= "        <dc:date>".htmlspecialchars($itemDate->iso8601())."</dc:date>\n";
881
+				$feed .= "        <dc:date>".htmlspecialchars($itemDate->iso8601())."</dc:date>\n";
882 882
 			}
883
-			if ($this->items[$i]->source!="") {
884
-				$feed.= "        <dc:source>".htmlspecialchars($this->items[$i]->source)."</dc:source>\n";
883
+			if ($this->items[$i]->source != "") {
884
+				$feed .= "        <dc:source>".htmlspecialchars($this->items[$i]->source)."</dc:source>\n";
885 885
 			}
886
-			if ($this->items[$i]->author!="") {
887
-				$feed.= "        <dc:creator>".htmlspecialchars($this->items[$i]->author)."</dc:creator>\n";
886
+			if ($this->items[$i]->author != "") {
887
+				$feed .= "        <dc:creator>".htmlspecialchars($this->items[$i]->author)."</dc:creator>\n";
888 888
 			}
889
-			$feed.= "        <title>".htmlspecialchars(strip_tags(strtr($this->items[$i]->title,"\n\r","  ")))."</title>\n";
890
-			$feed.= "        <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
891
-			$feed.= "        <description>".htmlspecialchars($this->items[$i]->description)."</description>\n";
892
-			$feed.= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
893
-			$feed.= "    </item>\n";
889
+			$feed .= "        <title>".htmlspecialchars(strip_tags(strtr($this->items[$i]->title, "\n\r", "  ")))."</title>\n";
890
+			$feed .= "        <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
891
+			$feed .= "        <description>".htmlspecialchars($this->items[$i]->description)."</description>\n";
892
+			$feed .= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
893
+			$feed .= "    </item>\n";
894 894
 		}
895
-		$feed.= "</rdf:RDF>\n";
895
+		$feed .= "</rdf:RDF>\n";
896 896
 		return $feed;
897 897
 	}
898 898
 }
@@ -934,78 +934,78 @@  discard block
 block discarded – undo
934 934
 	 */
935 935
 	function createFeed() {
936 936
 		$feed = "<?xml version=\"1.0\" encoding=\"".$this->encoding."\"?>\n";
937
-		$feed.= $this->_createGeneratorComment();
938
-		$feed.= $this->_createStylesheetReferences();
939
-		$feed.= "<rss version=\"".$this->RSSVersion."\">\n";
940
-		$feed.= "    <channel>\n";
941
-		$feed.= "        <title>".FeedCreator::iTrunc(htmlspecialchars($this->title),100)."</title>\n";
937
+		$feed .= $this->_createGeneratorComment();
938
+		$feed .= $this->_createStylesheetReferences();
939
+		$feed .= "<rss version=\"".$this->RSSVersion."\">\n";
940
+		$feed .= "    <channel>\n";
941
+		$feed .= "        <title>".FeedCreator::iTrunc(htmlspecialchars($this->title), 100)."</title>\n";
942 942
 		$this->descriptionTruncSize = 500;
943
-		$feed.= "        <description>".$this->getDescription()."</description>\n";
944
-		$feed.= "        <link>".$this->link."</link>\n";
943
+		$feed .= "        <description>".$this->getDescription()."</description>\n";
944
+		$feed .= "        <link>".$this->link."</link>\n";
945 945
 		$now = new FeedDate();
946
-		$feed.= "        <lastBuildDate>".htmlspecialchars($now->rfc822())."</lastBuildDate>\n";
947
-		$feed.= "        <generator>".FEEDCREATOR_VERSION."</generator>\n";
948
-
949
-		if ($this->image!=null) {
950
-			$feed.= "        <image>\n";
951
-			$feed.= "            <url>".$this->image->url."</url>\n";
952
-			$feed.= "            <title>".FeedCreator::iTrunc(htmlspecialchars($this->image->title),100)."</title>\n";
953
-			$feed.= "            <link>".$this->image->link."</link>\n";
954
-			if ($this->image->width!="") {
955
-				$feed.= "            <width>".$this->image->width."</width>\n";
946
+		$feed .= "        <lastBuildDate>".htmlspecialchars($now->rfc822())."</lastBuildDate>\n";
947
+		$feed .= "        <generator>".FEEDCREATOR_VERSION."</generator>\n";
948
+
949
+		if ($this->image != null) {
950
+			$feed .= "        <image>\n";
951
+			$feed .= "            <url>".$this->image->url."</url>\n";
952
+			$feed .= "            <title>".FeedCreator::iTrunc(htmlspecialchars($this->image->title), 100)."</title>\n";
953
+			$feed .= "            <link>".$this->image->link."</link>\n";
954
+			if ($this->image->width != "") {
955
+				$feed .= "            <width>".$this->image->width."</width>\n";
956 956
 			}
957
-			if ($this->image->height!="") {
958
-				$feed.= "            <height>".$this->image->height."</height>\n";
957
+			if ($this->image->height != "") {
958
+				$feed .= "            <height>".$this->image->height."</height>\n";
959 959
 			}
960
-			if ($this->image->description!="") {
961
-				$feed.= "            <description>".$this->image->getDescription()."</description>\n";
960
+			if ($this->image->description != "") {
961
+				$feed .= "            <description>".$this->image->getDescription()."</description>\n";
962 962
 			}
963
-			$feed.= "        </image>\n";
963
+			$feed .= "        </image>\n";
964 964
 		}
965
-		if ($this->language!="") {
966
-			$feed.= "        <language>".$this->language."</language>\n";
965
+		if ($this->language != "") {
966
+			$feed .= "        <language>".$this->language."</language>\n";
967 967
 		}
968
-		if ($this->copyright!="") {
969
-			$feed.= "        <copyright>".FeedCreator::iTrunc(htmlspecialchars($this->copyright),100)."</copyright>\n";
968
+		if ($this->copyright != "") {
969
+			$feed .= "        <copyright>".FeedCreator::iTrunc(htmlspecialchars($this->copyright), 100)."</copyright>\n";
970 970
 		}
971
-		if ($this->editor!="") {
972
-			$feed.= "        <managingEditor>".FeedCreator::iTrunc(htmlspecialchars($this->editor),100)."</managingEditor>\n";
971
+		if ($this->editor != "") {
972
+			$feed .= "        <managingEditor>".FeedCreator::iTrunc(htmlspecialchars($this->editor), 100)."</managingEditor>\n";
973 973
 		}
974
-		if ($this->webmaster!="") {
975
-			$feed.= "        <webMaster>".FeedCreator::iTrunc(htmlspecialchars($this->webmaster),100)."</webMaster>\n";
974
+		if ($this->webmaster != "") {
975
+			$feed .= "        <webMaster>".FeedCreator::iTrunc(htmlspecialchars($this->webmaster), 100)."</webMaster>\n";
976 976
 		}
977
-		if ($this->pubDate!="") {
977
+		if ($this->pubDate != "") {
978 978
 			$pubDate = new FeedDate($this->pubDate);
979
-			$feed.= "        <pubDate>".htmlspecialchars($pubDate->rfc822())."</pubDate>\n";
979
+			$feed .= "        <pubDate>".htmlspecialchars($pubDate->rfc822())."</pubDate>\n";
980 980
 		}
981
-		if ($this->category!="") {
982
-			$feed.= "        <category>".htmlspecialchars($this->category)."</category>\n";
981
+		if ($this->category != "") {
982
+			$feed .= "        <category>".htmlspecialchars($this->category)."</category>\n";
983 983
 		}
984
-		if ($this->docs!="") {
985
-			$feed.= "        <docs>".FeedCreator::iTrunc(htmlspecialchars($this->docs),500)."</docs>\n";
984
+		if ($this->docs != "") {
985
+			$feed .= "        <docs>".FeedCreator::iTrunc(htmlspecialchars($this->docs), 500)."</docs>\n";
986 986
 		}
987
-		if ($this->ttl!="") {
988
-			$feed.= "        <ttl>".htmlspecialchars($this->ttl)."</ttl>\n";
987
+		if ($this->ttl != "") {
988
+			$feed .= "        <ttl>".htmlspecialchars($this->ttl)."</ttl>\n";
989 989
 		}
990
-		if ($this->rating!="") {
991
-			$feed.= "        <rating>".FeedCreator::iTrunc(htmlspecialchars($this->rating),500)."</rating>\n";
990
+		if ($this->rating != "") {
991
+			$feed .= "        <rating>".FeedCreator::iTrunc(htmlspecialchars($this->rating), 500)."</rating>\n";
992 992
 		}
993
-		if ($this->skipHours!="") {
994
-			$feed.= "        <skipHours>".htmlspecialchars($this->skipHours)."</skipHours>\n";
993
+		if ($this->skipHours != "") {
994
+			$feed .= "        <skipHours>".htmlspecialchars($this->skipHours)."</skipHours>\n";
995 995
 		}
996
-		if ($this->skipDays!="") {
997
-			$feed.= "        <skipDays>".htmlspecialchars($this->skipDays)."</skipDays>\n";
996
+		if ($this->skipDays != "") {
997
+			$feed .= "        <skipDays>".htmlspecialchars($this->skipDays)."</skipDays>\n";
998 998
 		}
999
-		$feed.= $this->_createAdditionalElements($this->additionalElements, "    ");
999
+		$feed .= $this->_createAdditionalElements($this->additionalElements, "    ");
1000 1000
 
1001
-		for ($i=0;$i<count($this->items);$i++) {
1002
-			$feed.= "        <item>\n";
1003
-			$feed.= "            <title>".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)),100)."</title>\n";
1004
-			$feed.= "            <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
1005
-			$feed.= "            <description>".$this->items[$i]->getDescription()."</description>\n";
1001
+		for ($i = 0; $i<count($this->items); $i++) {
1002
+			$feed .= "        <item>\n";
1003
+			$feed .= "            <title>".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)), 100)."</title>\n";
1004
+			$feed .= "            <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
1005
+			$feed .= "            <description>".$this->items[$i]->getDescription()."</description>\n";
1006 1006
 
1007
-			if ($this->items[$i]->author!="") {
1008
-				$feed.= "            <author>".htmlspecialchars($this->items[$i]->author)."</author>\n";
1007
+			if ($this->items[$i]->author != "") {
1008
+				$feed .= "            <author>".htmlspecialchars($this->items[$i]->author)."</author>\n";
1009 1009
 			}
1010 1010
 			/*
1011 1011
 			// on hold
@@ -1013,24 +1013,24 @@  discard block
 block discarded – undo
1013 1013
 					$feed.= "            <source>".htmlspecialchars($this->items[$i]->source)."</source>\n";
1014 1014
 			}
1015 1015
 			*/
1016
-			if ($this->items[$i]->category!="") {
1017
-				$feed.= "            <category>".htmlspecialchars($this->items[$i]->category)."</category>\n";
1016
+			if ($this->items[$i]->category != "") {
1017
+				$feed .= "            <category>".htmlspecialchars($this->items[$i]->category)."</category>\n";
1018 1018
 			}
1019
-			if ($this->items[$i]->comments!="") {
1020
-				$feed.= "            <comments>".htmlspecialchars($this->items[$i]->comments)."</comments>\n";
1019
+			if ($this->items[$i]->comments != "") {
1020
+				$feed .= "            <comments>".htmlspecialchars($this->items[$i]->comments)."</comments>\n";
1021 1021
 			}
1022
-			if ($this->items[$i]->date!="") {
1022
+			if ($this->items[$i]->date != "") {
1023 1023
 			$itemDate = new FeedDate($this->items[$i]->date);
1024
-				$feed.= "            <pubDate>".htmlspecialchars($itemDate->rfc822())."</pubDate>\n";
1024
+				$feed .= "            <pubDate>".htmlspecialchars($itemDate->rfc822())."</pubDate>\n";
1025 1025
 			}
1026
-			if ($this->items[$i]->guid!="") {
1027
-				$feed.= "            <guid>".htmlspecialchars($this->items[$i]->guid)."</guid>\n";
1026
+			if ($this->items[$i]->guid != "") {
1027
+				$feed .= "            <guid>".htmlspecialchars($this->items[$i]->guid)."</guid>\n";
1028 1028
 			}
1029
-			$feed.= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
1030
-			$feed.= "        </item>\n";
1029
+			$feed .= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
1030
+			$feed .= "        </item>\n";
1031 1031
 		}
1032
-		$feed.= "    </channel>\n";
1033
-		$feed.= "</rss>\n";
1032
+		$feed .= "    </channel>\n";
1033
+		$feed .= "</rss>\n";
1034 1034
 		return $feed;
1035 1035
 	}
1036 1036
 }
@@ -1069,35 +1069,35 @@  discard block
 block discarded – undo
1069 1069
 
1070 1070
 	function createFeed() {
1071 1071
 		$feed = "<?xml version=\"1.0\" encoding=\"".$this->encoding."\"?>\n";
1072
-		$feed.= $this->_createStylesheetReferences();
1073
-		$feed.= "<feed version=\"0.1\" xmlns=\"http://example.com/newformat#\">\n";
1074
-		$feed.= "    <title>".FeedCreator::iTrunc(htmlspecialchars($this->title),100)."</title>\n";
1072
+		$feed .= $this->_createStylesheetReferences();
1073
+		$feed .= "<feed version=\"0.1\" xmlns=\"http://example.com/newformat#\">\n";
1074
+		$feed .= "    <title>".FeedCreator::iTrunc(htmlspecialchars($this->title), 100)."</title>\n";
1075 1075
 		$this->truncSize = 500;
1076
-		$feed.= "    <subtitle>".$this->getDescription()."</subtitle>\n";
1077
-		$feed.= "    <link>".$this->link."</link>\n";
1078
-		for ($i=0;$i<count($this->items);$i++) {
1079
-			$feed.= "    <entry>\n";
1080
-			$feed.= "        <title>".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)),100)."</title>\n";
1081
-			$feed.= "        <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
1076
+		$feed .= "    <subtitle>".$this->getDescription()."</subtitle>\n";
1077
+		$feed .= "    <link>".$this->link."</link>\n";
1078
+		for ($i = 0; $i<count($this->items); $i++) {
1079
+			$feed .= "    <entry>\n";
1080
+			$feed .= "        <title>".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)), 100)."</title>\n";
1081
+			$feed .= "        <link>".htmlspecialchars($this->items[$i]->link)."</link>\n";
1082 1082
 			$itemDate = new FeedDate($this->items[$i]->date);
1083
-			$feed.= "        <created>".htmlspecialchars($itemDate->iso8601())."</created>\n";
1084
-			$feed.= "        <issued>".htmlspecialchars($itemDate->iso8601())."</issued>\n";
1085
-			$feed.= "        <modified>".htmlspecialchars($itemDate->iso8601())."</modified>\n";
1086
-			$feed.= "        <id>".htmlspecialchars($this->items[$i]->guid)."</id>\n";
1087
-			if ($this->items[$i]->author!="") {
1088
-				$feed.= "        <author>\n";
1089
-				$feed.= "            <name>".htmlspecialchars($this->items[$i]->author)."</name>\n";
1090
-				if ($this->items[$i]->authorEmail!="") {
1091
-					$feed.= "            <email>".$this->items[$i]->authorEmail."</email>\n";
1083
+			$feed .= "        <created>".htmlspecialchars($itemDate->iso8601())."</created>\n";
1084
+			$feed .= "        <issued>".htmlspecialchars($itemDate->iso8601())."</issued>\n";
1085
+			$feed .= "        <modified>".htmlspecialchars($itemDate->iso8601())."</modified>\n";
1086
+			$feed .= "        <id>".htmlspecialchars($this->items[$i]->guid)."</id>\n";
1087
+			if ($this->items[$i]->author != "") {
1088
+				$feed .= "        <author>\n";
1089
+				$feed .= "            <name>".htmlspecialchars($this->items[$i]->author)."</name>\n";
1090
+				if ($this->items[$i]->authorEmail != "") {
1091
+					$feed .= "            <email>".$this->items[$i]->authorEmail."</email>\n";
1092 1092
 				}
1093
-				$feed.="        </author>\n";
1093
+				$feed .= "        </author>\n";
1094 1094
 			}
1095
-			$feed.= "        <content type=\"text/html\" xml:lang=\"en-us\">\n";
1096
-			$feed.= "            <div xmlns=\"http://www.w3.org/1999/xhtml\">".$this->items[$i]->getDescription()."</div>\n";
1097
-			$feed.= "        </content>\n";
1098
-			$feed.= "    </entry>\n";
1095
+			$feed .= "        <content type=\"text/html\" xml:lang=\"en-us\">\n";
1096
+			$feed .= "            <div xmlns=\"http://www.w3.org/1999/xhtml\">".$this->items[$i]->getDescription()."</div>\n";
1097
+			$feed .= "        </content>\n";
1098
+			$feed .= "    </entry>\n";
1099 1099
 		}
1100
-		$feed.= "</feed>\n";
1100
+		$feed .= "</feed>\n";
1101 1101
 		return $feed;
1102 1102
 	}
1103 1103
 }
@@ -1128,53 +1128,53 @@  discard block
 block discarded – undo
1128 1128
 
1129 1129
 	function createFeed() {
1130 1130
 		$feed = "<?xml version=\"1.0\" encoding=\"".$this->encoding."\"?>\n";
1131
-		$feed.= $this->_createGeneratorComment();
1132
-		$feed.= $this->_createStylesheetReferences();
1133
-		$feed.= "<feed version=\"0.3\" xmlns=\"http://purl.org/atom/ns#\"";
1134
-		if ($this->language!="") {
1135
-			$feed.= " xml:lang=\"".$this->language."\"";
1131
+		$feed .= $this->_createGeneratorComment();
1132
+		$feed .= $this->_createStylesheetReferences();
1133
+		$feed .= "<feed version=\"0.3\" xmlns=\"http://purl.org/atom/ns#\"";
1134
+		if ($this->language != "") {
1135
+			$feed .= " xml:lang=\"".$this->language."\"";
1136 1136
 		}
1137
-		$feed.= ">\n";
1138
-		$feed.= "    <title>".htmlspecialchars($this->title)."</title>\n";
1139
-		$feed.= "    <tagline>".htmlspecialchars($this->description)."</tagline>\n";
1140
-		$feed.= "    <link rel=\"alternate\" type=\"text/html\" href=\"".htmlspecialchars($this->link)."\"/>\n";
1141
-		$feed.= "    <id>".htmlspecialchars($this->link)."</id>\n";
1137
+		$feed .= ">\n";
1138
+		$feed .= "    <title>".htmlspecialchars($this->title)."</title>\n";
1139
+		$feed .= "    <tagline>".htmlspecialchars($this->description)."</tagline>\n";
1140
+		$feed .= "    <link rel=\"alternate\" type=\"text/html\" href=\"".htmlspecialchars($this->link)."\"/>\n";
1141
+		$feed .= "    <id>".htmlspecialchars($this->link)."</id>\n";
1142 1142
 		$now = new FeedDate();
1143
-		$feed.= "    <modified>".htmlspecialchars($now->iso8601())."</modified>\n";
1144
-		if ($this->editor!="") {
1145
-			$feed.= "    <author>\n";
1146
-			$feed.= "        <name>".$this->editor."</name>\n";
1147
-			if ($this->editorEmail!="") {
1148
-				$feed.= "        <email>".$this->editorEmail."</email>\n";
1143
+		$feed .= "    <modified>".htmlspecialchars($now->iso8601())."</modified>\n";
1144
+		if ($this->editor != "") {
1145
+			$feed .= "    <author>\n";
1146
+			$feed .= "        <name>".$this->editor."</name>\n";
1147
+			if ($this->editorEmail != "") {
1148
+				$feed .= "        <email>".$this->editorEmail."</email>\n";
1149 1149
 			}
1150
-			$feed.= "    </author>\n";
1150
+			$feed .= "    </author>\n";
1151 1151
 		}
1152
-		$feed.= "    <generator>".FEEDCREATOR_VERSION."</generator>\n";
1153
-		$feed.= $this->_createAdditionalElements($this->additionalElements, "    ");
1154
-		for ($i=0;$i<count($this->items);$i++) {
1155
-			$feed.= "    <entry>\n";
1156
-			$feed.= "        <title>".htmlspecialchars(strip_tags($this->items[$i]->title))."</title>\n";
1157
-			$feed.= "        <link rel=\"alternate\" type=\"text/html\" href=\"".htmlspecialchars($this->items[$i]->link)."\"/>\n";
1158
-			if ($this->items[$i]->date=="") {
1152
+		$feed .= "    <generator>".FEEDCREATOR_VERSION."</generator>\n";
1153
+		$feed .= $this->_createAdditionalElements($this->additionalElements, "    ");
1154
+		for ($i = 0; $i<count($this->items); $i++) {
1155
+			$feed .= "    <entry>\n";
1156
+			$feed .= "        <title>".htmlspecialchars(strip_tags($this->items[$i]->title))."</title>\n";
1157
+			$feed .= "        <link rel=\"alternate\" type=\"text/html\" href=\"".htmlspecialchars($this->items[$i]->link)."\"/>\n";
1158
+			if ($this->items[$i]->date == "") {
1159 1159
 				$this->items[$i]->date = time();
1160 1160
 			}
1161 1161
 			$itemDate = new FeedDate($this->items[$i]->date);
1162
-			$feed.= "        <created>".htmlspecialchars($itemDate->iso8601())."</created>\n";
1163
-			$feed.= "        <issued>".htmlspecialchars($itemDate->iso8601())."</issued>\n";
1164
-			$feed.= "        <modified>".htmlspecialchars($itemDate->iso8601())."</modified>\n";
1165
-			$feed.= "        <id>".htmlspecialchars($this->items[$i]->link)."</id>\n";
1166
-			$feed.= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
1167
-			if ($this->items[$i]->author!="") {
1168
-				$feed.= "        <author>\n";
1169
-				$feed.= "            <name>".htmlspecialchars($this->items[$i]->author)."</name>\n";
1170
-				$feed.= "        </author>\n";
1162
+			$feed .= "        <created>".htmlspecialchars($itemDate->iso8601())."</created>\n";
1163
+			$feed .= "        <issued>".htmlspecialchars($itemDate->iso8601())."</issued>\n";
1164
+			$feed .= "        <modified>".htmlspecialchars($itemDate->iso8601())."</modified>\n";
1165
+			$feed .= "        <id>".htmlspecialchars($this->items[$i]->link)."</id>\n";
1166
+			$feed .= $this->_createAdditionalElements($this->items[$i]->additionalElements, "        ");
1167
+			if ($this->items[$i]->author != "") {
1168
+				$feed .= "        <author>\n";
1169
+				$feed .= "            <name>".htmlspecialchars($this->items[$i]->author)."</name>\n";
1170
+				$feed .= "        </author>\n";
1171 1171
 			}
1172
-			if ($this->items[$i]->description!="") {
1173
-				$feed.= "        <summary>".htmlspecialchars($this->items[$i]->description)."</summary>\n";
1172
+			if ($this->items[$i]->description != "") {
1173
+				$feed .= "        <summary>".htmlspecialchars($this->items[$i]->description)."</summary>\n";
1174 1174
 			}
1175
-			$feed.= "    </entry>\n";
1175
+			$feed .= "    </entry>\n";
1176 1176
 		}
1177
-		$feed.= "</feed>\n";
1177
+		$feed .= "</feed>\n";
1178 1178
 		return $feed;
1179 1179
 	}
1180 1180
 }
@@ -1195,25 +1195,25 @@  discard block
 block discarded – undo
1195 1195
 	}
1196 1196
 
1197 1197
 	function qp_enc($input = "", $line_max = 76) {
1198
-		$hex = array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');
1198
+		$hex = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F');
1199 1199
 		$lines = preg_split("/(?:\r\n|\r|\n)/", $input);
1200 1200
 		$eol = "\r\n";
1201 1201
 		$escape = "=";
1202 1202
 		$output = "";
1203
-		while( list(, $line) = each($lines) ) {
1203
+		while (list(, $line) = each($lines)) {
1204 1204
 			//$line = rtrim($line); // remove trailing white space -> no =20\r\n necessary
1205 1205
 			$linlen = strlen($line);
1206 1206
 			$newline = "";
1207
-			for($i = 0; $i < $linlen; $i++) {
1207
+			for ($i = 0; $i<$linlen; $i++) {
1208 1208
 				$c = substr($line, $i, 1);
1209 1209
 				$dec = ord($c);
1210
-				if ( ($dec == 32) && ($i == ($linlen - 1)) ) { // convert space at eol only
1210
+				if (($dec == 32) && ($i == ($linlen-1))) { // convert space at eol only
1211 1211
 					$c = "=20";
1212
-				} elseif ( ($dec == 61) || ($dec < 32 ) || ($dec > 126) ) { // always encode "\t", which is *not* required
1212
+				} elseif (($dec == 61) || ($dec<32) || ($dec>126)) { // always encode "\t", which is *not* required
1213 1213
 					$h2 = floor($dec/16); $h1 = floor($dec%16);
1214 1214
 					$c = $escape.$hex["$h2"].$hex["$h1"];
1215 1215
 				}
1216
-				if ( (strlen($newline) + strlen($c)) >= $line_max ) { // CRLF is not counted
1216
+				if ((strlen($newline)+strlen($c))>=$line_max) { // CRLF is not counted
1217 1217
 					$output .= $newline.$escape.$eol; // soft line break; " =\r\n" is okay
1218 1218
 					$newline = "";
1219 1219
 				}
@@ -1230,26 +1230,26 @@  discard block
 block discarded – undo
1230 1230
 	 * @return    string    the feed's complete text
1231 1231
 	 */
1232 1232
 	function createFeed() {
1233
-		for ($i=0;$i<count($this->items);$i++) {
1234
-			if ($this->items[$i]->author!="") {
1233
+		for ($i = 0; $i<count($this->items); $i++) {
1234
+			if ($this->items[$i]->author != "") {
1235 1235
 				$from = $this->items[$i]->author;
1236
-			} else {
1236
+			}else {
1237 1237
 				$from = $this->title;
1238 1238
 			}
1239 1239
 			$itemDate = new FeedDate($this->items[$i]->date);
1240
-			$feed.= "From ".strtr(MBOXCreator::qp_enc($from)," ","_")." ".date("D M d H:i:s Y",$itemDate->unix())."\n";
1241
-			$feed.= "Content-Type: text/plain;\n";
1242
-			$feed.= "	charset=\"".$this->encoding."\"\n";
1243
-			$feed.= "Content-Transfer-Encoding: quoted-printable\n";
1244
-			$feed.= "Content-Type: text/plain\n";
1245
-			$feed.= "From: \"".MBOXCreator::qp_enc($from)."\"\n";
1246
-			$feed.= "Date: ".$itemDate->rfc822()."\n";
1247
-			$feed.= "Subject: ".MBOXCreator::qp_enc(FeedCreator::iTrunc($this->items[$i]->title,100))."\n";
1248
-			$feed.= "\n";
1240
+			$feed .= "From ".strtr(MBOXCreator::qp_enc($from), " ", "_")." ".date("D M d H:i:s Y", $itemDate->unix())."\n";
1241
+			$feed .= "Content-Type: text/plain;\n";
1242
+			$feed .= "	charset=\"".$this->encoding."\"\n";
1243
+			$feed .= "Content-Transfer-Encoding: quoted-printable\n";
1244
+			$feed .= "Content-Type: text/plain\n";
1245
+			$feed .= "From: \"".MBOXCreator::qp_enc($from)."\"\n";
1246
+			$feed .= "Date: ".$itemDate->rfc822()."\n";
1247
+			$feed .= "Subject: ".MBOXCreator::qp_enc(FeedCreator::iTrunc($this->items[$i]->title, 100))."\n";
1248
+			$feed .= "\n";
1249 1249
 			$body = chunk_split(MBOXCreator::qp_enc($this->items[$i]->description));
1250
-			$feed.= preg_replace("~\nFrom ([^\n]*)(\n?)~","\n>From $1$2\n",$body);
1251
-			$feed.= "\n";
1252
-			$feed.= "\n";
1250
+			$feed .= preg_replace("~\nFrom ([^\n]*)(\n?)~", "\n>From $1$2\n", $body);
1251
+			$feed .= "\n";
1252
+			$feed .= "\n";
1253 1253
 		}
1254 1254
 		return $feed;
1255 1255
 	}
@@ -1262,7 +1262,7 @@  discard block
 block discarded – undo
1262 1262
 	 */
1263 1263
 	function _generateFilename() {
1264 1264
 		$fileInfo = pathinfo($_SERVER["PHP_SELF"]);
1265
-		return substr($fileInfo["basename"],0,-(strlen($fileInfo["extension"])+1)).".mbox";
1265
+		return substr($fileInfo["basename"], 0, -(strlen($fileInfo["extension"])+1)).".mbox";
1266 1266
 	}
1267 1267
 }
1268 1268
 
@@ -1282,38 +1282,38 @@  discard block
 block discarded – undo
1282 1282
 
1283 1283
 	function createFeed() {
1284 1284
 		$feed = "<?xml version=\"1.0\" encoding=\"".$this->encoding."\"?>\n";
1285
-		$feed.= $this->_createGeneratorComment();
1286
-		$feed.= $this->_createStylesheetReferences();
1287
-		$feed.= "<opml xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n";
1288
-		$feed.= "    <head>\n";
1289
-		$feed.= "        <title>".htmlspecialchars($this->title)."</title>\n";
1290
-		if ($this->pubDate!="") {
1285
+		$feed .= $this->_createGeneratorComment();
1286
+		$feed .= $this->_createStylesheetReferences();
1287
+		$feed .= "<opml xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n";
1288
+		$feed .= "    <head>\n";
1289
+		$feed .= "        <title>".htmlspecialchars($this->title)."</title>\n";
1290
+		if ($this->pubDate != "") {
1291 1291
 			$date = new FeedDate($this->pubDate);
1292
-			$feed.= "         <dateCreated>".$date->rfc822()."</dateCreated>\n";
1292
+			$feed .= "         <dateCreated>".$date->rfc822()."</dateCreated>\n";
1293 1293
 		}
1294
-		if ($this->lastBuildDate!="") {
1294
+		if ($this->lastBuildDate != "") {
1295 1295
 			$date = new FeedDate($this->lastBuildDate);
1296
-			$feed.= "         <dateModified>".$date->rfc822()."</dateModified>\n";
1296
+			$feed .= "         <dateModified>".$date->rfc822()."</dateModified>\n";
1297 1297
 		}
1298
-		if ($this->editor!="") {
1299
-			$feed.= "         <ownerName>".$this->editor."</ownerName>\n";
1298
+		if ($this->editor != "") {
1299
+			$feed .= "         <ownerName>".$this->editor."</ownerName>\n";
1300 1300
 		}
1301
-		if ($this->editorEmail!="") {
1302
-			$feed.= "         <ownerEmail>".$this->editorEmail."</ownerEmail>\n";
1301
+		if ($this->editorEmail != "") {
1302
+			$feed .= "         <ownerEmail>".$this->editorEmail."</ownerEmail>\n";
1303 1303
 		}
1304
-		$feed.= "    </head>\n";
1305
-		$feed.= "    <body>\n";
1306
-		for ($i=0;$i<count($this->items);$i++) {
1307
-			$feed.= "    <outline type=\"rss\" ";
1308
-			$title = htmlspecialchars(strip_tags(strtr($this->items[$i]->title,"\n\r","  ")));
1309
-			$feed.= " title=\"".$title."\"";
1310
-			$feed.= " text=\"".$title."\"";
1304
+		$feed .= "    </head>\n";
1305
+		$feed .= "    <body>\n";
1306
+		for ($i = 0; $i<count($this->items); $i++) {
1307
+			$feed .= "    <outline type=\"rss\" ";
1308
+			$title = htmlspecialchars(strip_tags(strtr($this->items[$i]->title, "\n\r", "  ")));
1309
+			$feed .= " title=\"".$title."\"";
1310
+			$feed .= " text=\"".$title."\"";
1311 1311
 			//$feed.= " description=\"".htmlspecialchars($this->items[$i]->description)."\"";
1312
-			$feed.= " url=\"".htmlspecialchars($this->items[$i]->link)."\"";
1313
-			$feed.= "/>\n";
1312
+			$feed .= " url=\"".htmlspecialchars($this->items[$i]->link)."\"";
1313
+			$feed .= "/>\n";
1314 1314
 		}
1315
-		$feed.= "    </body>\n";
1316
-		$feed.= "</opml>\n";
1315
+		$feed .= "    </body>\n";
1316
+		$feed .= "</opml>\n";
1317 1317
 		return $feed;
1318 1318
 	}
1319 1319
 }
@@ -1343,7 +1343,7 @@  discard block
 block discarded – undo
1343 1343
 	/**
1344 1344
 	 * Contains HTML to be output at the end of the feed's html representation.
1345 1345
 	 */
1346
-	var $footer ;
1346
+	var $footer;
1347 1347
 
1348 1348
 	/**
1349 1349
 	 * Contains HTML to be output between entries. A separator is only used in
@@ -1362,7 +1362,7 @@  discard block
 block discarded – undo
1362 1362
 	 */
1363 1363
 	var $openInNewWindow = true;
1364 1364
 
1365
-	var $imageAlign ="right";
1365
+	var $imageAlign = "right";
1366 1366
 
1367 1367
 	/**
1368 1368
 	 * In case of very simple output you may want to get rid of the style tags,
@@ -1371,7 +1371,7 @@  discard block
 block discarded – undo
1371 1371
 	 * and when it is non-empty, ONLY the styleless output is printed, the rest is ignored
1372 1372
 	 * in the function createFeed().
1373 1373
 	 */
1374
-	var $stylelessOutput ="";
1374
+	var $stylelessOutput = "";
1375 1375
 
1376 1376
 	/**
1377 1377
 	 * Writes the HTML.
@@ -1379,12 +1379,12 @@  discard block
 block discarded – undo
1379 1379
 	 */
1380 1380
 	function createFeed() {
1381 1381
 		// if there is styleless output, use the content of this variable and ignore the rest
1382
-		if ($this->stylelessOutput!="") {
1382
+		if ($this->stylelessOutput != "") {
1383 1383
 			return $this->stylelessOutput;
1384 1384
 		}
1385 1385
 
1386 1386
 		//if no stylePrefix is set, generate it yourself depending on the script name
1387
-		if ($this->stylePrefix=="") {
1387
+		if ($this->stylePrefix == "") {
1388 1388
 			$this->stylePrefix = str_replace(".", "_", $this->_generateFilename())."_";
1389 1389
 		}
1390 1390
 
@@ -1395,24 +1395,24 @@  discard block
 block discarded – undo
1395 1395
 
1396 1396
 		// use this array to put the lines in and implode later with "document.write" javascript
1397 1397
 		$feedArray = array();
1398
-		if ($this->image!=null) {
1398
+		if ($this->image != null) {
1399 1399
 			$imageStr = "<a href='".$this->image->link."'".$targetInsert.">".
1400 1400
 							"<img src='".$this->image->url."' border='0' alt='".
1401
-							FeedCreator::iTrunc(htmlspecialchars($this->image->title),100).
1401
+							FeedCreator::iTrunc(htmlspecialchars($this->image->title), 100).
1402 1402
 							"' align='".$this->imageAlign."' ";
1403 1403
 			if ($this->image->width) {
1404
-				$imageStr .=" width='".$this->image->width. "' ";
1404
+				$imageStr .= " width='".$this->image->width."' ";
1405 1405
 			}
1406 1406
 			if ($this->image->height) {
1407
-				$imageStr .=" height='".$this->image->height."' ";
1407
+				$imageStr .= " height='".$this->image->height."' ";
1408 1408
 			}
1409
-			$imageStr .="/></a>";
1409
+			$imageStr .= "/></a>";
1410 1410
 			$feedArray[] = $imageStr;
1411 1411
 		}
1412 1412
 
1413 1413
 		if ($this->title) {
1414 1414
 			$feedArray[] = "<div class='".$this->stylePrefix."title'><a href='".$this->link."' ".$targetInsert." class='".$this->stylePrefix."title'>".
1415
-				FeedCreator::iTrunc(htmlspecialchars($this->title),100)."</a></div>";
1415
+				FeedCreator::iTrunc(htmlspecialchars($this->title), 100)."</a></div>";
1416 1416
 		}
1417 1417
 		if ($this->getDescription()) {
1418 1418
 			$feedArray[] = "<div class='".$this->stylePrefix."description'>".
@@ -1424,8 +1424,8 @@  discard block
 block discarded – undo
1424 1424
 			$feedArray[] = "<div class='".$this->stylePrefix."header'>".$this->header."</div>";
1425 1425
 		}
1426 1426
 
1427
-		for ($i=0;$i<count($this->items);$i++) {
1428
-			if ($this->separator and $i > 0) {
1427
+		for ($i = 0; $i<count($this->items); $i++) {
1428
+			if ($this->separator and $i>0) {
1429 1429
 				$feedArray[] = "<div class='".$this->stylePrefix."separator'>".$this->separator."</div>";
1430 1430
 			}
1431 1431
 
@@ -1433,12 +1433,12 @@  discard block
 block discarded – undo
1433 1433
 				if ($this->items[$i]->link) {
1434 1434
 					$feedArray[] =
1435 1435
 						"<div class='".$this->stylePrefix."item_title'><a href='".$this->items[$i]->link."' class='".$this->stylePrefix.
1436
-						"item_title'".$targetInsert.">".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)),100).
1436
+						"item_title'".$targetInsert.">".FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)), 100).
1437 1437
 						"</a></div>";
1438
-				} else {
1438
+				}else {
1439 1439
 					$feedArray[] =
1440 1440
 						"<div class='".$this->stylePrefix."item_title'>".
1441
-						FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)),100).
1441
+						FeedCreator::iTrunc(htmlspecialchars(strip_tags($this->items[$i]->title)), 100).
1442 1442
 						"</div>";
1443 1443
 				}
1444 1444
 			}
@@ -1453,7 +1453,7 @@  discard block
 block discarded – undo
1453 1453
 			$feedArray[] = "<div class='".$this->stylePrefix."footer'>".$this->footer."</div>";
1454 1454
 		}
1455 1455
 
1456
-		$feed= "".join($feedArray, "\r\n");
1456
+		$feed = "".join($feedArray, "\r\n");
1457 1457
 		return $feed;
1458 1458
 	}
1459 1459
 
@@ -1466,7 +1466,7 @@  discard block
 block discarded – undo
1466 1466
 	 */
1467 1467
 	function _generateFilename() {
1468 1468
 		$fileInfo = pathinfo($_SERVER["PHP_SELF"]);
1469
-		return substr($fileInfo["basename"],0,-(strlen($fileInfo["extension"])+1)).".html";
1469
+		return substr($fileInfo["basename"], 0, -(strlen($fileInfo["extension"])+1)).".html";
1470 1470
 	}
1471 1471
 }
1472 1472
 
@@ -1487,7 +1487,7 @@  discard block
 block discarded – undo
1487 1487
 	function createFeed()
1488 1488
 	{
1489 1489
 		$feed = parent::createFeed();
1490
-		$feedArray = explode("\n",$feed);
1490
+		$feedArray = explode("\n", $feed);
1491 1491
 
1492 1492
 		$jsFeed = "";
1493 1493
 		foreach ($feedArray as $value) {
@@ -1505,7 +1505,7 @@  discard block
 block discarded – undo
1505 1505
 	 */
1506 1506
 	function _generateFilename() {
1507 1507
 		$fileInfo = pathinfo($_SERVER["PHP_SELF"]);
1508
-		return substr($fileInfo["basename"],0,-(strlen($fileInfo["extension"])+1)).".js";
1508
+		return substr($fileInfo["basename"], 0, -(strlen($fileInfo["extension"])+1)).".js";
1509 1509
 	}
1510 1510
 
1511 1511
 }
Please login to merge, or discard this patch.
Braces   +16 added lines, -6 removed lines patch added patch discarded remove patch
@@ -331,7 +331,7 @@  discard block
 block discarded – undo
331 331
 		// - no truncation (truncating risks producing invalid html)
332 332
 		if (!$this->rawFieldContent) {
333 333
 			$result = "";
334
-		}	elseif ($this->syndicateHtml) {
334
+		} elseif ($this->syndicateHtml) {
335 335
 			$result = "<![CDATA[".$this->rawFieldContent."]]>";
336 336
 		} else {
337 337
 			if ($this->truncSize and is_int($this->truncSize)) {
@@ -616,8 +616,12 @@  discard block
 block discarded – undo
616 616
 
617 617
 	function _createStylesheetReferences() {
618 618
 		$xml = "";
619
-		if ($this->cssStyleSheet) $xml .= "<?xml-stylesheet href=\"".$this->cssStyleSheet."\" type=\"text/css\"?>\n";
620
-		if ($this->xslStyleSheet) $xml .= "<?xml-stylesheet href=\"".$this->xslStyleSheet."\" type=\"text/xsl\"?>\n";
619
+		if ($this->cssStyleSheet) {
620
+			$xml .= "<?xml-stylesheet href=\"".$this->cssStyleSheet."\" type=\"text/css\"?>\n";
621
+		}
622
+		if ($this->xslStyleSheet) {
623
+			$xml .= "<?xml-stylesheet href=\"".$this->xslStyleSheet."\" type=\"text/xsl\"?>\n";
624
+		}
621 625
 		return $xml;
622 626
 	}
623 627
 
@@ -738,7 +742,9 @@  discard block
 block discarded – undo
738 742
 	 */
739 743
 	function FeedDate($dateString="") {
740 744
 		$tzOffset = 0;
741
-		if ($dateString=="") $dateString = date("r");
745
+		if ($dateString=="") {
746
+			$dateString = date("r");
747
+		}
742 748
 
743 749
 		//if (is_integer($dateString)) {
744 750
 		if (is_numeric($dateString)) {
@@ -793,7 +799,9 @@  discard block
 block discarded – undo
793 799
 	function rfc822() {
794 800
 		//return gmdate("r",$this->unix);
795 801
 		$date = gmdate("D, d M Y H:i:s", $this->unix);
796
-		if (TIME_ZONE!="") $date .= " ".str_replace(":","",TIME_ZONE);
802
+		if (TIME_ZONE!="") {
803
+			$date .= " ".str_replace(":","",TIME_ZONE);
804
+		}
797 805
 		return $date;
798 806
 	}
799 807
 
@@ -805,7 +813,9 @@  discard block
 block discarded – undo
805 813
 	function iso8601() {
806 814
 		$date = gmdate("Y-m-d\TH:i:sO",$this->unix);
807 815
 		$date = substr($date,0,22) . ':' . substr($date,-2);
808
-		if (TIME_ZONE!="") $date = str_replace("+00:00",TIME_ZONE,$date);
816
+		if (TIME_ZONE!="") {
817
+			$date = str_replace("+00:00",TIME_ZONE,$date);
818
+		}
809 819
 		return $date;
810 820
 	}
811 821
 
Please login to merge, or discard this patch.
class/magpie.inc.php 4 patches
Doc Comments   +7 added lines patch added patch discarded remove patch
@@ -450,6 +450,10 @@  discard block
 block discarded – undo
450 450
     /**
451 451
     * return XML parser, and possibly re-encoded source
452 452
     *
453
+    * @param string $source
454
+    * @param string $out_enc
455
+    * @param string|null $in_enc
456
+    * @param boolean $detect
453 457
     */
454 458
     function create_parser($source, $out_enc, $in_enc, $detect) {
455 459
         if ( substr(phpversion(),0,1) == 5) {
@@ -561,6 +565,9 @@  discard block
 block discarded – undo
561 565
         }
562 566
     }
563 567
 
568
+    /**
569
+     * @param integer $lvl
570
+     */
564 571
     function error ($errormsg, $lvl=E_USER_WARNING) {
565 572
         // append PHP's error message if track_errors enabled
566 573
         if ( !empty($php_errormsg) ) {
Please login to merge, or discard this patch.
Indentation   +468 added lines, -468 removed lines patch added patch discarded remove patch
@@ -32,492 +32,492 @@  discard block
 block discarded – undo
32 32
 *
33 33
 */
34 34
 class MagpieRSS {
35
-    var $parser;
36
-
37
-    var $current_item   = array();  // item currently being parsed
38
-    var $items          = array();  // collection of parsed items
39
-    var $channel        = array();  // hash of channel fields
40
-    var $textinput      = array();
41
-    var $image          = array();
42
-    var $feed_type;
43
-    var $feed_version;
44
-    var $encoding       = '';       // output encoding of parsed rss
45
-
46
-    var $_source_encoding = '';     // only set if we have to parse xml prolog
47
-
48
-    var $ERROR = "";
49
-    var $WARNING = "";
50
-
51
-    // define some constants
52
-
53
-    var $_CONTENT_CONSTRUCTS = array('content', 'summary', 'info', 'title', 'tagline', 'copyright');
54
-    var $_KNOWN_ENCODINGS    = array('UTF-8', 'US-ASCII', 'ISO-8859-1');
55
-
56
-    // parser variables, useless if you're not a parser, treat as private
57
-    var $stack              = array(); // parser stack
58
-    var $inchannel          = false;
59
-    var $initem             = false;
60
-    var $incontent          = false; // if in Atom <content mode="xml"> field
61
-    var $intextinput        = false;
62
-    var $inimage            = false;
63
-    var $current_field      = '';
64
-    var $current_namespace  = false;
65
-
66
-
67
-    /**
68
-     *  Set up XML parser, parse source, and return populated RSS object..
69
-     *
70
-     *  @param string $source           string containing the RSS to be parsed
71
-     *
72
-     *  NOTE:  Probably a good idea to leave the encoding options alone unless
73
-     *         you know what you're doing as PHP's character set support is
74
-     *         a little weird.
75
-     *
76
-     *  NOTE:  A lot of this is unnecessary but harmless with PHP5
77
-     *
78
-     *
79
-     *  @param string $output_encoding  output the parsed RSS in this character
80
-     *                                  set defaults to ISO-8859-1 as this is PHP's
81
-     *                                  default.
82
-     *
83
-     *                                  NOTE: might be changed to UTF-8 in future
84
-     *                                  versions.
85
-     *
86
-     *  @param string $input_encoding   the character set of the incoming RSS source.
87
-     *                                  Leave blank and Magpie will try to figure it
88
-     *                                  out.
89
-     *
90
-     *
91
-     *  @param bool   $detect_encoding  if false Magpie won't attempt to detect
92
-     *                                  source encoding. (caveat emptor)
93
-     *
94
-     */
95
-    function MagpieRSS ($source, $output_encoding='ISO-8859-1',
96
-                        $input_encoding=null, $detect_encoding=true)
97
-    {
98
-        # if PHP xml isn't compiled in, die
99
-        #
100
-        if (!function_exists('xml_parser_create')) {
101
-            $this->error( "Failed to load PHP's XML Extension. " .
102
-                          "http://www.php.net/manual/en/ref.xml.php",
103
-                           E_USER_ERROR );
104
-        }
35
+	var $parser;
36
+
37
+	var $current_item   = array();  // item currently being parsed
38
+	var $items          = array();  // collection of parsed items
39
+	var $channel        = array();  // hash of channel fields
40
+	var $textinput      = array();
41
+	var $image          = array();
42
+	var $feed_type;
43
+	var $feed_version;
44
+	var $encoding       = '';       // output encoding of parsed rss
45
+
46
+	var $_source_encoding = '';     // only set if we have to parse xml prolog
47
+
48
+	var $ERROR = "";
49
+	var $WARNING = "";
50
+
51
+	// define some constants
52
+
53
+	var $_CONTENT_CONSTRUCTS = array('content', 'summary', 'info', 'title', 'tagline', 'copyright');
54
+	var $_KNOWN_ENCODINGS    = array('UTF-8', 'US-ASCII', 'ISO-8859-1');
55
+
56
+	// parser variables, useless if you're not a parser, treat as private
57
+	var $stack              = array(); // parser stack
58
+	var $inchannel          = false;
59
+	var $initem             = false;
60
+	var $incontent          = false; // if in Atom <content mode="xml"> field
61
+	var $intextinput        = false;
62
+	var $inimage            = false;
63
+	var $current_field      = '';
64
+	var $current_namespace  = false;
65
+
66
+
67
+	/**
68
+	 *  Set up XML parser, parse source, and return populated RSS object..
69
+	 *
70
+	 *  @param string $source           string containing the RSS to be parsed
71
+	 *
72
+	 *  NOTE:  Probably a good idea to leave the encoding options alone unless
73
+	 *         you know what you're doing as PHP's character set support is
74
+	 *         a little weird.
75
+	 *
76
+	 *  NOTE:  A lot of this is unnecessary but harmless with PHP5
77
+	 *
78
+	 *
79
+	 *  @param string $output_encoding  output the parsed RSS in this character
80
+	 *                                  set defaults to ISO-8859-1 as this is PHP's
81
+	 *                                  default.
82
+	 *
83
+	 *                                  NOTE: might be changed to UTF-8 in future
84
+	 *                                  versions.
85
+	 *
86
+	 *  @param string $input_encoding   the character set of the incoming RSS source.
87
+	 *                                  Leave blank and Magpie will try to figure it
88
+	 *                                  out.
89
+	 *
90
+	 *
91
+	 *  @param bool   $detect_encoding  if false Magpie won't attempt to detect
92
+	 *                                  source encoding. (caveat emptor)
93
+	 *
94
+	 */
95
+	function MagpieRSS ($source, $output_encoding='ISO-8859-1',
96
+						$input_encoding=null, $detect_encoding=true)
97
+	{
98
+		# if PHP xml isn't compiled in, die
99
+		#
100
+		if (!function_exists('xml_parser_create')) {
101
+			$this->error( "Failed to load PHP's XML Extension. " .
102
+						  "http://www.php.net/manual/en/ref.xml.php",
103
+						   E_USER_ERROR );
104
+		}
105 105
 
106
-        list($parser, $source) = $this->create_parser($source,
107
-                $output_encoding, $input_encoding, $detect_encoding);
106
+		list($parser, $source) = $this->create_parser($source,
107
+				$output_encoding, $input_encoding, $detect_encoding);
108 108
 
109 109
 
110
-        if (!is_resource($parser)) {
111
-            $this->error( "Failed to create an instance of PHP's XML parser. " .
112
-                          "http://www.php.net/manual/en/ref.xml.php",
113
-                          E_USER_ERROR );
114
-        }
110
+		if (!is_resource($parser)) {
111
+			$this->error( "Failed to create an instance of PHP's XML parser. " .
112
+						  "http://www.php.net/manual/en/ref.xml.php",
113
+						  E_USER_ERROR );
114
+		}
115 115
 
116 116
 
117
-        $this->parser = $parser;
117
+		$this->parser = $parser;
118 118
 
119
-        # pass in parser, and a reference to this object
120
-        # setup handlers
121
-        #
122
-        xml_set_object( $this->parser, $this );
123
-        xml_set_element_handler($this->parser,
124
-                'feed_start_element', 'feed_end_element' );
119
+		# pass in parser, and a reference to this object
120
+		# setup handlers
121
+		#
122
+		xml_set_object( $this->parser, $this );
123
+		xml_set_element_handler($this->parser,
124
+				'feed_start_element', 'feed_end_element' );
125 125
 
126
-        xml_set_character_data_handler( $this->parser, 'feed_cdata' );
126
+		xml_set_character_data_handler( $this->parser, 'feed_cdata' );
127 127
 
128
-        $status = @xml_parse( $this->parser, $source );
128
+		$status = @xml_parse( $this->parser, $source );
129 129
 
130
-        if (! $status ) {
131
-            $errorcode = xml_get_error_code( $this->parser );
132
-            if ( $errorcode != XML_ERROR_NONE ) {
133
-                $xml_error = xml_error_string( $errorcode );
134
-                $error_line = xml_get_current_line_number($this->parser);
135
-                $error_col = xml_get_current_column_number($this->parser);
136
-                $errormsg = "$xml_error at line $error_line, column $error_col";
130
+		if (! $status ) {
131
+			$errorcode = xml_get_error_code( $this->parser );
132
+			if ( $errorcode != XML_ERROR_NONE ) {
133
+				$xml_error = xml_error_string( $errorcode );
134
+				$error_line = xml_get_current_line_number($this->parser);
135
+				$error_col = xml_get_current_column_number($this->parser);
136
+				$errormsg = "$xml_error at line $error_line, column $error_col";
137 137
 
138
-                $this->error( $errormsg );
139
-            }
140
-        }
138
+				$this->error( $errormsg );
139
+			}
140
+		}
141 141
 
142
-        xml_parser_free( $this->parser );
142
+		xml_parser_free( $this->parser );
143 143
 
144
-        $this->normalize();
144
+		$this->normalize();
145 145
         
146
-    }
146
+	}
147 147
 
148
-    function feed_start_element($p, $element, &$attrs) {
149
-        $el = $element = strtolower($element);
150
-        $attrs = array_change_key_case($attrs, CASE_LOWER);
148
+	function feed_start_element($p, $element, &$attrs) {
149
+		$el = $element = strtolower($element);
150
+		$attrs = array_change_key_case($attrs, CASE_LOWER);
151 151
 
152
-        // check for a namespace, and split if found
153
-        $ns = false;
154
-        if ( strpos( $element, ':' ) ) {
155
-            list($ns, $el) = split( ':', $element, 2);
156
-        }
157
-        if ( $ns and $ns != 'rdf' ) {
158
-            $this->current_namespace = $ns;
159
-        }
152
+		// check for a namespace, and split if found
153
+		$ns = false;
154
+		if ( strpos( $element, ':' ) ) {
155
+			list($ns, $el) = split( ':', $element, 2);
156
+		}
157
+		if ( $ns and $ns != 'rdf' ) {
158
+			$this->current_namespace = $ns;
159
+		}
160 160
 
161
-        # if feed type isn't set, then this is first element of feed
162
-        # identify feed from root element
163
-        #
164
-        if (!isset($this->feed_type) ) {
165
-            if ( $el == 'rdf' ) {
166
-                $this->feed_type = RSS;
167
-                $this->feed_version = '1.0';
168
-            }
169
-            elseif ( $el == 'rss' ) {
170
-                $this->feed_type = RSS;
171
-                $this->feed_version = $attrs['version'];
172
-            }
173
-            elseif ( $el == 'feed' ) {
174
-                $this->feed_type = ATOM;
175
-                $this->feed_version = $attrs['version'];
176
-                $this->inchannel = true;
177
-            }
178
-            return;
179
-        }
161
+		# if feed type isn't set, then this is first element of feed
162
+		# identify feed from root element
163
+		#
164
+		if (!isset($this->feed_type) ) {
165
+			if ( $el == 'rdf' ) {
166
+				$this->feed_type = RSS;
167
+				$this->feed_version = '1.0';
168
+			}
169
+			elseif ( $el == 'rss' ) {
170
+				$this->feed_type = RSS;
171
+				$this->feed_version = $attrs['version'];
172
+			}
173
+			elseif ( $el == 'feed' ) {
174
+				$this->feed_type = ATOM;
175
+				$this->feed_version = $attrs['version'];
176
+				$this->inchannel = true;
177
+			}
178
+			return;
179
+		}
180 180
 
181
-        if ( $el == 'channel' )
182
-        {
183
-            $this->inchannel = true;
184
-        }
185
-        elseif ($el == 'item' or $el == 'entry' )
186
-        {
187
-            $this->initem = true;
188
-            if ( isset($attrs['rdf:about']) ) {
189
-                $this->current_item['about'] = $attrs['rdf:about'];
190
-            }
191
-        }
181
+		if ( $el == 'channel' )
182
+		{
183
+			$this->inchannel = true;
184
+		}
185
+		elseif ($el == 'item' or $el == 'entry' )
186
+		{
187
+			$this->initem = true;
188
+			if ( isset($attrs['rdf:about']) ) {
189
+				$this->current_item['about'] = $attrs['rdf:about'];
190
+			}
191
+		}
192 192
 
193
-        // if we're in the default namespace of an RSS feed,
194
-        //  record textinput or image fields
195
-        elseif (
196
-            $this->feed_type == RSS and
197
-            $this->current_namespace == '' and
198
-            $el == 'textinput' )
199
-        {
200
-            $this->intextinput = true;
201
-        }
193
+		// if we're in the default namespace of an RSS feed,
194
+		//  record textinput or image fields
195
+		elseif (
196
+			$this->feed_type == RSS and
197
+			$this->current_namespace == '' and
198
+			$el == 'textinput' )
199
+		{
200
+			$this->intextinput = true;
201
+		}
202 202
 
203
-        elseif (
204
-            $this->feed_type == RSS and
205
-            $this->current_namespace == '' and
206
-            $el == 'image' )
207
-        {
208
-            $this->inimage = true;
209
-        }
203
+		elseif (
204
+			$this->feed_type == RSS and
205
+			$this->current_namespace == '' and
206
+			$el == 'image' )
207
+		{
208
+			$this->inimage = true;
209
+		}
210 210
 
211
-        # handle atom content constructs
212
-        elseif ( $this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
213
-        {
214
-            // avoid clashing w/ RSS mod_content
215
-            if ($el == 'content' ) {
216
-                $el = 'atom_content';
217
-            }
211
+		# handle atom content constructs
212
+		elseif ( $this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
213
+		{
214
+			// avoid clashing w/ RSS mod_content
215
+			if ($el == 'content' ) {
216
+				$el = 'atom_content';
217
+			}
218 218
 
219
-            $this->incontent = $el;
219
+			$this->incontent = $el;
220 220
 
221 221
 
222
-        }
222
+		}
223 223
 
224
-        // if inside an Atom content construct (e.g. content or summary) field treat tags as text
225
-        elseif ($this->feed_type == ATOM and $this->incontent )
226
-        {
227
-            // if tags are inlined, then flatten
228
-            $attrs_str = join(' ',
229
-                    array_map('map_attrs',
230
-                    array_keys($attrs),
231
-                    array_values($attrs) ) );
224
+		// if inside an Atom content construct (e.g. content or summary) field treat tags as text
225
+		elseif ($this->feed_type == ATOM and $this->incontent )
226
+		{
227
+			// if tags are inlined, then flatten
228
+			$attrs_str = join(' ',
229
+					array_map('map_attrs',
230
+					array_keys($attrs),
231
+					array_values($attrs) ) );
232 232
 
233
-            $this->append_content( "<$element $attrs_str>"  );
233
+			$this->append_content( "<$element $attrs_str>"  );
234 234
 
235
-            array_unshift( $this->stack, $el );
236
-        }
235
+			array_unshift( $this->stack, $el );
236
+		}
237 237
 
238
-        // Atom support many links per containging element.
239
-        // Magpie treats link elements of type rel='alternate'
240
-        // as being equivalent to RSS's simple link element.
241
-        //
242
-        elseif ($this->feed_type == ATOM and $el == 'link' )
243
-        {
244
-            if ( isset($attrs['rel']) and $attrs['rel'] == 'alternate' )
245
-            {
246
-                $link_el = 'link';
247
-            }
248
-            else {
249
-                $link_el = 'link_' . $attrs['rel'];
250
-            }
238
+		// Atom support many links per containging element.
239
+		// Magpie treats link elements of type rel='alternate'
240
+		// as being equivalent to RSS's simple link element.
241
+		//
242
+		elseif ($this->feed_type == ATOM and $el == 'link' )
243
+		{
244
+			if ( isset($attrs['rel']) and $attrs['rel'] == 'alternate' )
245
+			{
246
+				$link_el = 'link';
247
+			}
248
+			else {
249
+				$link_el = 'link_' . $attrs['rel'];
250
+			}
251 251
 
252
-            $this->append($link_el, $attrs['href']);
253
-        }
254
-        // set stack[0] to current element
255
-        else {
256
-            array_unshift($this->stack, $el);
257
-        }
258
-    }
252
+			$this->append($link_el, $attrs['href']);
253
+		}
254
+		// set stack[0] to current element
255
+		else {
256
+			array_unshift($this->stack, $el);
257
+		}
258
+	}
259 259
 
260 260
 
261 261
 
262
-    function feed_cdata ($p, $text) {
262
+	function feed_cdata ($p, $text) {
263 263
 
264
-        if ($this->feed_type == ATOM and $this->incontent)
265
-        {
266
-            $this->append_content( $text );
267
-        }
268
-        else {
269
-            $current_el = join('_', array_reverse($this->stack));
270
-            $this->append($current_el, $text);
271
-        }
272
-    }
264
+		if ($this->feed_type == ATOM and $this->incontent)
265
+		{
266
+			$this->append_content( $text );
267
+		}
268
+		else {
269
+			$current_el = join('_', array_reverse($this->stack));
270
+			$this->append($current_el, $text);
271
+		}
272
+	}
273 273
 
274
-    function feed_end_element ($p, $el) {
275
-        $el = strtolower($el);
274
+	function feed_end_element ($p, $el) {
275
+		$el = strtolower($el);
276 276
 
277
-        if ( $el == 'item' or $el == 'entry' )
278
-        {
279
-            $this->items[] = $this->current_item;
280
-            $this->current_item = array();
281
-            $this->initem = false;
282
-        }
283
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' )
284
-        {
285
-            $this->intextinput = false;
286
-        }
287
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' )
288
-        {
289
-            $this->inimage = false;
290
-        }
291
-        elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
292
-        {
293
-            $this->incontent = false;
294
-        }
295
-        elseif ($el == 'channel' or $el == 'feed' )
296
-        {
297
-            $this->inchannel = false;
298
-        }
299
-        elseif ($this->feed_type == ATOM and $this->incontent  ) {
300
-            // balance tags properly
301
-            // note:  i don't think this is actually neccessary
302
-            if ( $this->stack[0] == $el )
303
-            {
304
-                $this->append_content("</$el>");
305
-            }
306
-            else {
307
-                $this->append_content("<$el />");
308
-            }
277
+		if ( $el == 'item' or $el == 'entry' )
278
+		{
279
+			$this->items[] = $this->current_item;
280
+			$this->current_item = array();
281
+			$this->initem = false;
282
+		}
283
+		elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' )
284
+		{
285
+			$this->intextinput = false;
286
+		}
287
+		elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' )
288
+		{
289
+			$this->inimage = false;
290
+		}
291
+		elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
292
+		{
293
+			$this->incontent = false;
294
+		}
295
+		elseif ($el == 'channel' or $el == 'feed' )
296
+		{
297
+			$this->inchannel = false;
298
+		}
299
+		elseif ($this->feed_type == ATOM and $this->incontent  ) {
300
+			// balance tags properly
301
+			// note:  i don't think this is actually neccessary
302
+			if ( $this->stack[0] == $el )
303
+			{
304
+				$this->append_content("</$el>");
305
+			}
306
+			else {
307
+				$this->append_content("<$el />");
308
+			}
309 309
 
310
-            array_shift( $this->stack );
311
-        }
312
-        else {
313
-            array_shift( $this->stack );
314
-        }
310
+			array_shift( $this->stack );
311
+		}
312
+		else {
313
+			array_shift( $this->stack );
314
+		}
315 315
 
316
-        $this->current_namespace = false;
317
-    }
316
+		$this->current_namespace = false;
317
+	}
318 318
 
319
-    function concat (&$str1, $str2="") {
320
-        if (!isset($str1) ) {
321
-            $str1="";
322
-        }
323
-        $str1 .= $str2;
324
-    }
319
+	function concat (&$str1, $str2="") {
320
+		if (!isset($str1) ) {
321
+			$str1="";
322
+		}
323
+		$str1 .= $str2;
324
+	}
325 325
 
326 326
 
327 327
 
328
-    function append_content($text) {
329
-        if ( $this->initem ) {
330
-            $this->concat( $this->current_item[ $this->incontent ], $text );
331
-        }
332
-        elseif ( $this->inchannel ) {
333
-            $this->concat( $this->channel[ $this->incontent ], $text );
334
-        }
335
-    }
328
+	function append_content($text) {
329
+		if ( $this->initem ) {
330
+			$this->concat( $this->current_item[ $this->incontent ], $text );
331
+		}
332
+		elseif ( $this->inchannel ) {
333
+			$this->concat( $this->channel[ $this->incontent ], $text );
334
+		}
335
+	}
336 336
 
337
-    // smart append - field and namespace aware
338
-    function append($el, $text) {
339
-        if (!$el) {
340
-            return;
341
-        }
342
-        if ( $this->current_namespace )
343
-        {
344
-            if ( $this->initem ) {
345
-                $this->concat(
346
-                    $this->current_item[ $this->current_namespace ][ $el ], $text);
347
-            }
348
-            elseif ($this->inchannel) {
349
-                $this->concat(
350
-                    $this->channel[ $this->current_namespace][ $el ], $text );
351
-            }
352
-            elseif ($this->intextinput) {
353
-                $this->concat(
354
-                    $this->textinput[ $this->current_namespace][ $el ], $text );
355
-            }
356
-            elseif ($this->inimage) {
357
-                $this->concat(
358
-                    $this->image[ $this->current_namespace ][ $el ], $text );
359
-            }
360
-        }
361
-        else {
362
-            if ( $this->initem ) {
363
-                $this->concat(
364
-                    $this->current_item[ $el ], $text);
365
-            }
366
-            elseif ($this->intextinput) {
367
-                $this->concat(
368
-                    $this->textinput[ $el ], $text );
369
-            }
370
-            elseif ($this->inimage) {
371
-                $this->concat(
372
-                    $this->image[ $el ], $text );
373
-            }
374
-            elseif ($this->inchannel) {
375
-                $this->concat(
376
-                    $this->channel[ $el ], $text );
377
-            }
337
+	// smart append - field and namespace aware
338
+	function append($el, $text) {
339
+		if (!$el) {
340
+			return;
341
+		}
342
+		if ( $this->current_namespace )
343
+		{
344
+			if ( $this->initem ) {
345
+				$this->concat(
346
+					$this->current_item[ $this->current_namespace ][ $el ], $text);
347
+			}
348
+			elseif ($this->inchannel) {
349
+				$this->concat(
350
+					$this->channel[ $this->current_namespace][ $el ], $text );
351
+			}
352
+			elseif ($this->intextinput) {
353
+				$this->concat(
354
+					$this->textinput[ $this->current_namespace][ $el ], $text );
355
+			}
356
+			elseif ($this->inimage) {
357
+				$this->concat(
358
+					$this->image[ $this->current_namespace ][ $el ], $text );
359
+			}
360
+		}
361
+		else {
362
+			if ( $this->initem ) {
363
+				$this->concat(
364
+					$this->current_item[ $el ], $text);
365
+			}
366
+			elseif ($this->intextinput) {
367
+				$this->concat(
368
+					$this->textinput[ $el ], $text );
369
+			}
370
+			elseif ($this->inimage) {
371
+				$this->concat(
372
+					$this->image[ $el ], $text );
373
+			}
374
+			elseif ($this->inchannel) {
375
+				$this->concat(
376
+					$this->channel[ $el ], $text );
377
+			}
378 378
 
379
-        }
380
-    }
381
-
382
-    function normalize () {
383
-        // if atom populate rss fields
384
-        if ( $this->is_atom() ) {
385
-            $this->channel['description'] = $this->channel['tagline'];
386
-            for ( $i = 0; $i < count($this->items); $i++) {
387
-                $item = $this->items[$i];
388
-                if ( isset($item['summary']) )
389
-                    $item['description'] = $item['summary'];
390
-                if ( isset($item['atom_content']))
391
-                    $item['content']['encoded'] = $item['atom_content'];
392
-
393
-                $atom_date = (isset($item['issued']) ) ? $item['issued'] : @$item['modified'];
394
-                if ( $atom_date ) {
395
-                    $epoch = @parse_w3cdtf($atom_date);
396
-                    if ($epoch and $epoch > 0) {
397
-                        $item['date_timestamp'] = $epoch;
398
-                    }
399
-                }
400
-
401
-                $this->items[$i] = $item;
402
-            }
403
-        }
404
-        elseif ( $this->is_rss() ) {
405
-            $this->channel['tagline'] = $this->channel['description'];
406
-            for ( $i = 0; $i < count($this->items); $i++) {
407
-                $item = $this->items[$i];
408
-                if ( isset($item['description']))
409
-                    $item['summary'] = $item['description'];
410
-                if ( isset($item['content']['encoded'] ) )
411
-                    $item['atom_content'] = $item['content']['encoded'];
412
-
413
-                if ( $this->is_rss() == '1.0' and isset($item['dc']['date']) ) {
414
-                    $epoch = @parse_w3cdtf($item['dc']['date']);
415
-                    if ($epoch and $epoch > 0) {
416
-                        $item['date_timestamp'] = $epoch;
417
-                    }
418
-                }
419
-                elseif ( isset($item['pubdate']) ) {
420
-                    $epoch = @strtotime($item['pubdate']);
421
-                    if ($epoch > 0) {
422
-                        $item['date_timestamp'] = $epoch;
423
-                    }
424
-                }
425
-
426
-                $this->items[$i] = $item;
427
-            }
428
-        }
429
-    }
379
+		}
380
+	}
430 381
 
382
+	function normalize () {
383
+		// if atom populate rss fields
384
+		if ( $this->is_atom() ) {
385
+			$this->channel['description'] = $this->channel['tagline'];
386
+			for ( $i = 0; $i < count($this->items); $i++) {
387
+				$item = $this->items[$i];
388
+				if ( isset($item['summary']) )
389
+					$item['description'] = $item['summary'];
390
+				if ( isset($item['atom_content']))
391
+					$item['content']['encoded'] = $item['atom_content'];
392
+
393
+				$atom_date = (isset($item['issued']) ) ? $item['issued'] : @$item['modified'];
394
+				if ( $atom_date ) {
395
+					$epoch = @parse_w3cdtf($atom_date);
396
+					if ($epoch and $epoch > 0) {
397
+						$item['date_timestamp'] = $epoch;
398
+					}
399
+				}
400
+
401
+				$this->items[$i] = $item;
402
+			}
403
+		}
404
+		elseif ( $this->is_rss() ) {
405
+			$this->channel['tagline'] = $this->channel['description'];
406
+			for ( $i = 0; $i < count($this->items); $i++) {
407
+				$item = $this->items[$i];
408
+				if ( isset($item['description']))
409
+					$item['summary'] = $item['description'];
410
+				if ( isset($item['content']['encoded'] ) )
411
+					$item['atom_content'] = $item['content']['encoded'];
412
+
413
+				if ( $this->is_rss() == '1.0' and isset($item['dc']['date']) ) {
414
+					$epoch = @parse_w3cdtf($item['dc']['date']);
415
+					if ($epoch and $epoch > 0) {
416
+						$item['date_timestamp'] = $epoch;
417
+					}
418
+				}
419
+				elseif ( isset($item['pubdate']) ) {
420
+					$epoch = @strtotime($item['pubdate']);
421
+					if ($epoch > 0) {
422
+						$item['date_timestamp'] = $epoch;
423
+					}
424
+				}
425
+
426
+				$this->items[$i] = $item;
427
+			}
428
+		}
429
+	}
431 430
 
432
-    function is_rss () {
433
-        if ( $this->feed_type == RSS ) {
434
-            return $this->feed_version;
435
-        }
436
-        else {
437
-            return false;
438
-        }
439
-    }
440 431
 
441
-    function is_atom() {
442
-        if ( $this->feed_type == ATOM ) {
443
-            return $this->feed_version;
444
-        }
445
-        else {
446
-            return false;
447
-        }
448
-    }
449
-
450
-    /**
451
-    * return XML parser, and possibly re-encoded source
452
-    *
453
-    */
454
-    function create_parser($source, $out_enc, $in_enc, $detect) {
455
-        if ( substr(phpversion(),0,1) == 5) {
456
-            $parser = $this->php5_create_parser($in_enc, $detect);
457
-        }
458
-        else {
459
-            list($parser, $source) = $this->php4_create_parser($source, $in_enc, $detect);
460
-        }
461
-        if ($out_enc) {
462
-            $this->encoding = $out_enc;
463
-            xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, $out_enc);
464
-        }
432
+	function is_rss () {
433
+		if ( $this->feed_type == RSS ) {
434
+			return $this->feed_version;
435
+		}
436
+		else {
437
+			return false;
438
+		}
439
+	}
465 440
 
466
-        return array($parser, $source);
467
-    }
468
-
469
-    /**
470
-    * Instantiate an XML parser under PHP5
471
-    *
472
-    * PHP5 will do a fine job of detecting input encoding
473
-    * if passed an empty string as the encoding.
474
-    *
475
-    * All hail libxml2!
476
-    *
477
-    */
478
-    function php5_create_parser($in_enc, $detect) {
479
-        // by default php5 does a fine job of detecting input encodings
480
-        if(!$detect && $in_enc) {
481
-            return xml_parser_create($in_enc);
482
-        }
483
-        else {
484
-            return xml_parser_create('');
485
-        }
486
-    }
487
-
488
-    /**
489
-    * Instaniate an XML parser under PHP4
490
-    *
491
-    * Unfortunately PHP4's support for character encodings
492
-    * and especially XML and character encodings sucks.  As
493
-    * long as the documents you parse only contain characters
494
-    * from the ISO-8859-1 character set (a superset of ASCII,
495
-    * and a subset of UTF-8) you're fine.  However once you
496
-    * step out of that comfy little world things get mad, bad,
497
-    * and dangerous to know.
498
-    *
499
-    * The following code is based on SJM's work with FoF
500
-    * @see http://minutillo.com/steve/weblog/2004/6/17/php-xml-and-character-encodings-a-tale-of-sadness-rage-and-data-loss
501
-    *
502
-    */
503
-    function php4_create_parser($source, $in_enc, $detect) {
504
-        if ( !$detect ) {
505
-            return array(xml_parser_create($in_enc), $source);
506
-        }
441
+	function is_atom() {
442
+		if ( $this->feed_type == ATOM ) {
443
+			return $this->feed_version;
444
+		}
445
+		else {
446
+			return false;
447
+		}
448
+	}
507 449
 
508
-        if (!$in_enc) {
509
-            if (preg_match('/<?xml.*encoding=[\'"](.*?)[\'"].*?>/m', $source, $m)) {
510
-                $in_enc = strtoupper($m[1]);
511
-                $this->source_encoding = $in_enc;
512
-            }
513
-            else {
514
-                $in_enc = 'UTF-8';
515
-            }
516
-        }
450
+	/**
451
+	 * return XML parser, and possibly re-encoded source
452
+	 *
453
+	 */
454
+	function create_parser($source, $out_enc, $in_enc, $detect) {
455
+		if ( substr(phpversion(),0,1) == 5) {
456
+			$parser = $this->php5_create_parser($in_enc, $detect);
457
+		}
458
+		else {
459
+			list($parser, $source) = $this->php4_create_parser($source, $in_enc, $detect);
460
+		}
461
+		if ($out_enc) {
462
+			$this->encoding = $out_enc;
463
+			xml_parser_set_option($parser, XML_OPTION_TARGET_ENCODING, $out_enc);
464
+		}
517 465
 
518
-        if ($this->known_encoding($in_enc)) {
519
-            return array(xml_parser_create($in_enc), $source);
520
-        }
466
+		return array($parser, $source);
467
+	}
468
+
469
+	/**
470
+	 * Instantiate an XML parser under PHP5
471
+	 *
472
+	 * PHP5 will do a fine job of detecting input encoding
473
+	 * if passed an empty string as the encoding.
474
+	 *
475
+	 * All hail libxml2!
476
+	 *
477
+	 */
478
+	function php5_create_parser($in_enc, $detect) {
479
+		// by default php5 does a fine job of detecting input encodings
480
+		if(!$detect && $in_enc) {
481
+			return xml_parser_create($in_enc);
482
+		}
483
+		else {
484
+			return xml_parser_create('');
485
+		}
486
+	}
487
+
488
+	/**
489
+	 * Instaniate an XML parser under PHP4
490
+	 *
491
+	 * Unfortunately PHP4's support for character encodings
492
+	 * and especially XML and character encodings sucks.  As
493
+	 * long as the documents you parse only contain characters
494
+	 * from the ISO-8859-1 character set (a superset of ASCII,
495
+	 * and a subset of UTF-8) you're fine.  However once you
496
+	 * step out of that comfy little world things get mad, bad,
497
+	 * and dangerous to know.
498
+	 *
499
+	 * The following code is based on SJM's work with FoF
500
+	 * @see http://minutillo.com/steve/weblog/2004/6/17/php-xml-and-character-encodings-a-tale-of-sadness-rage-and-data-loss
501
+	 *
502
+	 */
503
+	function php4_create_parser($source, $in_enc, $detect) {
504
+		if ( !$detect ) {
505
+			return array(xml_parser_create($in_enc), $source);
506
+		}
507
+
508
+		if (!$in_enc) {
509
+			if (preg_match('/<?xml.*encoding=[\'"](.*?)[\'"].*?>/m', $source, $m)) {
510
+				$in_enc = strtoupper($m[1]);
511
+				$this->source_encoding = $in_enc;
512
+			}
513
+			else {
514
+				$in_enc = 'UTF-8';
515
+			}
516
+		}
517
+
518
+		if ($this->known_encoding($in_enc)) {
519
+			return array(xml_parser_create($in_enc), $source);
520
+		}
521 521
 
522 522
 		/*
523 523
         // the dectected encoding is not one of the simple encodings PHP knows
@@ -548,44 +548,44 @@  discard block
 block discarded – undo
548 548
                      E_USER_NOTICE);
549 549
 		*/
550 550
 
551
-        return array(xml_parser_create(), $source);
552
-    }
551
+		return array(xml_parser_create(), $source);
552
+	}
553 553
 
554
-    function known_encoding($enc) {
555
-        $enc = strtoupper($enc);
556
-        if ( in_array($enc, $this->_KNOWN_ENCODINGS) ) {
557
-            return $enc;
558
-        }
559
-        else {
560
-            return false;
561
-        }
562
-    }
554
+	function known_encoding($enc) {
555
+		$enc = strtoupper($enc);
556
+		if ( in_array($enc, $this->_KNOWN_ENCODINGS) ) {
557
+			return $enc;
558
+		}
559
+		else {
560
+			return false;
561
+		}
562
+	}
563 563
 
564
-    function error ($errormsg, $lvl=E_USER_WARNING) {
565
-        // append PHP's error message if track_errors enabled
566
-        if ( !empty($php_errormsg) ) {
567
-            $errormsg .= " ($php_errormsg)";
568
-        }
569
-        if ( MAGPIE_DEBUG ) {
570
-            trigger_error( $errormsg, $lvl);
571
-        }
572
-        else {
573
-            error_log( $errormsg, 0);
574
-        }
564
+	function error ($errormsg, $lvl=E_USER_WARNING) {
565
+		// append PHP's error message if track_errors enabled
566
+		if ( !empty($php_errormsg) ) {
567
+			$errormsg .= " ($php_errormsg)";
568
+		}
569
+		if ( MAGPIE_DEBUG ) {
570
+			trigger_error( $errormsg, $lvl);
571
+		}
572
+		else {
573
+			error_log( $errormsg, 0);
574
+		}
575 575
 
576
-        $notices = E_USER_NOTICE|E_NOTICE;
577
-        if ( $lvl&$notices ) {
578
-            $this->WARNING = $errormsg;
579
-        } else {
580
-            $this->ERROR = $errormsg;
581
-        }
582
-    }
576
+		$notices = E_USER_NOTICE|E_NOTICE;
577
+		if ( $lvl&$notices ) {
578
+			$this->WARNING = $errormsg;
579
+		} else {
580
+			$this->ERROR = $errormsg;
581
+		}
582
+	}
583 583
 
584 584
 
585 585
 } // end class RSS
586 586
 
587 587
 function map_attrs($k, $v) {
588
-    return "$k=\"$v\"";
588
+	return "$k=\"$v\"";
589 589
 }
590 590
 
591 591
 
Please login to merge, or discard this patch.
Spacing   +114 added lines, -114 removed lines patch added patch discarded remove patch
@@ -34,16 +34,16 @@  discard block
 block discarded – undo
34 34
 class MagpieRSS {
35 35
     var $parser;
36 36
 
37
-    var $current_item   = array();  // item currently being parsed
38
-    var $items          = array();  // collection of parsed items
39
-    var $channel        = array();  // hash of channel fields
37
+    var $current_item   = array(); // item currently being parsed
38
+    var $items          = array(); // collection of parsed items
39
+    var $channel        = array(); // hash of channel fields
40 40
     var $textinput      = array();
41 41
     var $image          = array();
42 42
     var $feed_type;
43 43
     var $feed_version;
44
-    var $encoding       = '';       // output encoding of parsed rss
44
+    var $encoding       = ''; // output encoding of parsed rss
45 45
 
46
-    var $_source_encoding = '';     // only set if we have to parse xml prolog
46
+    var $_source_encoding = ''; // only set if we have to parse xml prolog
47 47
 
48 48
     var $ERROR = "";
49 49
     var $WARNING = "";
@@ -92,15 +92,15 @@  discard block
 block discarded – undo
92 92
      *                                  source encoding. (caveat emptor)
93 93
      *
94 94
      */
95
-    function MagpieRSS ($source, $output_encoding='ISO-8859-1',
96
-                        $input_encoding=null, $detect_encoding=true)
95
+    function MagpieRSS($source, $output_encoding = 'ISO-8859-1',
96
+                        $input_encoding = null, $detect_encoding = true)
97 97
     {
98 98
         # if PHP xml isn't compiled in, die
99 99
         #
100 100
         if (!function_exists('xml_parser_create')) {
101
-            $this->error( "Failed to load PHP's XML Extension. " .
101
+            $this->error("Failed to load PHP's XML Extension. ".
102 102
                           "http://www.php.net/manual/en/ref.xml.php",
103
-                           E_USER_ERROR );
103
+                           E_USER_ERROR);
104 104
         }
105 105
 
106 106
         list($parser, $source) = $this->create_parser($source,
@@ -108,9 +108,9 @@  discard block
 block discarded – undo
108 108
 
109 109
 
110 110
         if (!is_resource($parser)) {
111
-            $this->error( "Failed to create an instance of PHP's XML parser. " .
111
+            $this->error("Failed to create an instance of PHP's XML parser. ".
112 112
                           "http://www.php.net/manual/en/ref.xml.php",
113
-                          E_USER_ERROR );
113
+                          E_USER_ERROR);
114 114
         }
115 115
 
116 116
 
@@ -119,27 +119,27 @@  discard block
 block discarded – undo
119 119
         # pass in parser, and a reference to this object
120 120
         # setup handlers
121 121
         #
122
-        xml_set_object( $this->parser, $this );
122
+        xml_set_object($this->parser, $this);
123 123
         xml_set_element_handler($this->parser,
124
-                'feed_start_element', 'feed_end_element' );
124
+                'feed_start_element', 'feed_end_element');
125 125
 
126
-        xml_set_character_data_handler( $this->parser, 'feed_cdata' );
126
+        xml_set_character_data_handler($this->parser, 'feed_cdata');
127 127
 
128
-        $status = @xml_parse( $this->parser, $source );
128
+        $status = @xml_parse($this->parser, $source);
129 129
 
130
-        if (! $status ) {
131
-            $errorcode = xml_get_error_code( $this->parser );
132
-            if ( $errorcode != XML_ERROR_NONE ) {
133
-                $xml_error = xml_error_string( $errorcode );
130
+        if (!$status) {
131
+            $errorcode = xml_get_error_code($this->parser);
132
+            if ($errorcode != XML_ERROR_NONE) {
133
+                $xml_error = xml_error_string($errorcode);
134 134
                 $error_line = xml_get_current_line_number($this->parser);
135 135
                 $error_col = xml_get_current_column_number($this->parser);
136 136
                 $errormsg = "$xml_error at line $error_line, column $error_col";
137 137
 
138
-                $this->error( $errormsg );
138
+                $this->error($errormsg);
139 139
             }
140 140
         }
141 141
 
142
-        xml_parser_free( $this->parser );
142
+        xml_parser_free($this->parser);
143 143
 
144 144
         $this->normalize();
145 145
         
@@ -151,26 +151,26 @@  discard block
 block discarded – undo
151 151
 
152 152
         // check for a namespace, and split if found
153 153
         $ns = false;
154
-        if ( strpos( $element, ':' ) ) {
155
-            list($ns, $el) = split( ':', $element, 2);
154
+        if (strpos($element, ':')) {
155
+            list($ns, $el) = split(':', $element, 2);
156 156
         }
157
-        if ( $ns and $ns != 'rdf' ) {
157
+        if ($ns and $ns != 'rdf') {
158 158
             $this->current_namespace = $ns;
159 159
         }
160 160
 
161 161
         # if feed type isn't set, then this is first element of feed
162 162
         # identify feed from root element
163 163
         #
164
-        if (!isset($this->feed_type) ) {
165
-            if ( $el == 'rdf' ) {
164
+        if (!isset($this->feed_type)) {
165
+            if ($el == 'rdf') {
166 166
                 $this->feed_type = RSS;
167 167
                 $this->feed_version = '1.0';
168 168
             }
169
-            elseif ( $el == 'rss' ) {
169
+            elseif ($el == 'rss') {
170 170
                 $this->feed_type = RSS;
171 171
                 $this->feed_version = $attrs['version'];
172 172
             }
173
-            elseif ( $el == 'feed' ) {
173
+            elseif ($el == 'feed') {
174 174
                 $this->feed_type = ATOM;
175 175
                 $this->feed_version = $attrs['version'];
176 176
                 $this->inchannel = true;
@@ -178,14 +178,14 @@  discard block
 block discarded – undo
178 178
             return;
179 179
         }
180 180
 
181
-        if ( $el == 'channel' )
181
+        if ($el == 'channel')
182 182
         {
183 183
             $this->inchannel = true;
184 184
         }
185
-        elseif ($el == 'item' or $el == 'entry' )
185
+        elseif ($el == 'item' or $el == 'entry')
186 186
         {
187 187
             $this->initem = true;
188
-            if ( isset($attrs['rdf:about']) ) {
188
+            if (isset($attrs['rdf:about'])) {
189 189
                 $this->current_item['about'] = $attrs['rdf:about'];
190 190
             }
191 191
         }
@@ -209,10 +209,10 @@  discard block
 block discarded – undo
209 209
         }
210 210
 
211 211
         # handle atom content constructs
212
-        elseif ( $this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
212
+        elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS))
213 213
         {
214 214
             // avoid clashing w/ RSS mod_content
215
-            if ($el == 'content' ) {
215
+            if ($el == 'content') {
216 216
                 $el = 'atom_content';
217 217
             }
218 218
 
@@ -222,31 +222,31 @@  discard block
 block discarded – undo
222 222
         }
223 223
 
224 224
         // if inside an Atom content construct (e.g. content or summary) field treat tags as text
225
-        elseif ($this->feed_type == ATOM and $this->incontent )
225
+        elseif ($this->feed_type == ATOM and $this->incontent)
226 226
         {
227 227
             // if tags are inlined, then flatten
228 228
             $attrs_str = join(' ',
229 229
                     array_map('map_attrs',
230 230
                     array_keys($attrs),
231
-                    array_values($attrs) ) );
231
+                    array_values($attrs)));
232 232
 
233
-            $this->append_content( "<$element $attrs_str>"  );
233
+            $this->append_content("<$element $attrs_str>");
234 234
 
235
-            array_unshift( $this->stack, $el );
235
+            array_unshift($this->stack, $el);
236 236
         }
237 237
 
238 238
         // Atom support many links per containging element.
239 239
         // Magpie treats link elements of type rel='alternate'
240 240
         // as being equivalent to RSS's simple link element.
241 241
         //
242
-        elseif ($this->feed_type == ATOM and $el == 'link' )
242
+        elseif ($this->feed_type == ATOM and $el == 'link')
243 243
         {
244
-            if ( isset($attrs['rel']) and $attrs['rel'] == 'alternate' )
244
+            if (isset($attrs['rel']) and $attrs['rel'] == 'alternate')
245 245
             {
246 246
                 $link_el = 'link';
247 247
             }
248 248
             else {
249
-                $link_el = 'link_' . $attrs['rel'];
249
+                $link_el = 'link_'.$attrs['rel'];
250 250
             }
251 251
 
252 252
             $this->append($link_el, $attrs['href']);
@@ -259,11 +259,11 @@  discard block
 block discarded – undo
259 259
 
260 260
 
261 261
 
262
-    function feed_cdata ($p, $text) {
262
+    function feed_cdata($p, $text) {
263 263
 
264 264
         if ($this->feed_type == ATOM and $this->incontent)
265 265
         {
266
-            $this->append_content( $text );
266
+            $this->append_content($text);
267 267
         }
268 268
         else {
269 269
             $current_el = join('_', array_reverse($this->stack));
@@ -271,35 +271,35 @@  discard block
 block discarded – undo
271 271
         }
272 272
     }
273 273
 
274
-    function feed_end_element ($p, $el) {
274
+    function feed_end_element($p, $el) {
275 275
         $el = strtolower($el);
276 276
 
277
-        if ( $el == 'item' or $el == 'entry' )
277
+        if ($el == 'item' or $el == 'entry')
278 278
         {
279 279
             $this->items[] = $this->current_item;
280 280
             $this->current_item = array();
281 281
             $this->initem = false;
282 282
         }
283
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' )
283
+        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput')
284 284
         {
285 285
             $this->intextinput = false;
286 286
         }
287
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' )
287
+        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image')
288 288
         {
289 289
             $this->inimage = false;
290 290
         }
291
-        elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
291
+        elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS))
292 292
         {
293 293
             $this->incontent = false;
294 294
         }
295
-        elseif ($el == 'channel' or $el == 'feed' )
295
+        elseif ($el == 'channel' or $el == 'feed')
296 296
         {
297 297
             $this->inchannel = false;
298 298
         }
299
-        elseif ($this->feed_type == ATOM and $this->incontent  ) {
299
+        elseif ($this->feed_type == ATOM and $this->incontent) {
300 300
             // balance tags properly
301 301
             // note:  i don't think this is actually neccessary
302
-            if ( $this->stack[0] == $el )
302
+            if ($this->stack[0] == $el)
303 303
             {
304 304
                 $this->append_content("</$el>");
305 305
             }
@@ -307,18 +307,18 @@  discard block
 block discarded – undo
307 307
                 $this->append_content("<$el />");
308 308
             }
309 309
 
310
-            array_shift( $this->stack );
310
+            array_shift($this->stack);
311 311
         }
312 312
         else {
313
-            array_shift( $this->stack );
313
+            array_shift($this->stack);
314 314
         }
315 315
 
316 316
         $this->current_namespace = false;
317 317
     }
318 318
 
319
-    function concat (&$str1, $str2="") {
320
-        if (!isset($str1) ) {
321
-            $str1="";
319
+    function concat(&$str1, $str2 = "") {
320
+        if (!isset($str1)) {
321
+            $str1 = "";
322 322
         }
323 323
         $str1 .= $str2;
324 324
     }
@@ -326,11 +326,11 @@  discard block
 block discarded – undo
326 326
 
327 327
 
328 328
     function append_content($text) {
329
-        if ( $this->initem ) {
330
-            $this->concat( $this->current_item[ $this->incontent ], $text );
329
+        if ($this->initem) {
330
+            $this->concat($this->current_item[$this->incontent], $text);
331 331
         }
332
-        elseif ( $this->inchannel ) {
333
-            $this->concat( $this->channel[ $this->incontent ], $text );
332
+        elseif ($this->inchannel) {
333
+            $this->concat($this->channel[$this->incontent], $text);
334 334
         }
335 335
     }
336 336
 
@@ -339,61 +339,61 @@  discard block
 block discarded – undo
339 339
         if (!$el) {
340 340
             return;
341 341
         }
342
-        if ( $this->current_namespace )
342
+        if ($this->current_namespace)
343 343
         {
344
-            if ( $this->initem ) {
344
+            if ($this->initem) {
345 345
                 $this->concat(
346
-                    $this->current_item[ $this->current_namespace ][ $el ], $text);
346
+                    $this->current_item[$this->current_namespace][$el], $text);
347 347
             }
348 348
             elseif ($this->inchannel) {
349 349
                 $this->concat(
350
-                    $this->channel[ $this->current_namespace][ $el ], $text );
350
+                    $this->channel[$this->current_namespace][$el], $text );
351 351
             }
352 352
             elseif ($this->intextinput) {
353 353
                 $this->concat(
354
-                    $this->textinput[ $this->current_namespace][ $el ], $text );
354
+                    $this->textinput[$this->current_namespace][$el], $text );
355 355
             }
356 356
             elseif ($this->inimage) {
357 357
                 $this->concat(
358
-                    $this->image[ $this->current_namespace ][ $el ], $text );
358
+                    $this->image[$this->current_namespace][$el], $text );
359 359
             }
360 360
         }
361 361
         else {
362
-            if ( $this->initem ) {
362
+            if ($this->initem) {
363 363
                 $this->concat(
364
-                    $this->current_item[ $el ], $text);
364
+                    $this->current_item[$el], $text);
365 365
             }
366 366
             elseif ($this->intextinput) {
367 367
                 $this->concat(
368
-                    $this->textinput[ $el ], $text );
368
+                    $this->textinput[$el], $text );
369 369
             }
370 370
             elseif ($this->inimage) {
371 371
                 $this->concat(
372
-                    $this->image[ $el ], $text );
372
+                    $this->image[$el], $text );
373 373
             }
374 374
             elseif ($this->inchannel) {
375 375
                 $this->concat(
376
-                    $this->channel[ $el ], $text );
376
+                    $this->channel[$el], $text );
377 377
             }
378 378
 
379 379
         }
380 380
     }
381 381
 
382
-    function normalize () {
382
+    function normalize() {
383 383
         // if atom populate rss fields
384
-        if ( $this->is_atom() ) {
384
+        if ($this->is_atom()) {
385 385
             $this->channel['description'] = $this->channel['tagline'];
386
-            for ( $i = 0; $i < count($this->items); $i++) {
386
+            for ($i = 0; $i<count($this->items); $i++) {
387 387
                 $item = $this->items[$i];
388
-                if ( isset($item['summary']) )
388
+                if (isset($item['summary']))
389 389
                     $item['description'] = $item['summary'];
390
-                if ( isset($item['atom_content']))
390
+                if (isset($item['atom_content']))
391 391
                     $item['content']['encoded'] = $item['atom_content'];
392 392
 
393
-                $atom_date = (isset($item['issued']) ) ? $item['issued'] : @$item['modified'];
394
-                if ( $atom_date ) {
393
+                $atom_date = (isset($item['issued'])) ? $item['issued'] : @$item['modified'];
394
+                if ($atom_date) {
395 395
                     $epoch = @parse_w3cdtf($atom_date);
396
-                    if ($epoch and $epoch > 0) {
396
+                    if ($epoch and $epoch>0) {
397 397
                         $item['date_timestamp'] = $epoch;
398 398
                     }
399 399
                 }
@@ -401,24 +401,24 @@  discard block
 block discarded – undo
401 401
                 $this->items[$i] = $item;
402 402
             }
403 403
         }
404
-        elseif ( $this->is_rss() ) {
404
+        elseif ($this->is_rss()) {
405 405
             $this->channel['tagline'] = $this->channel['description'];
406
-            for ( $i = 0; $i < count($this->items); $i++) {
406
+            for ($i = 0; $i<count($this->items); $i++) {
407 407
                 $item = $this->items[$i];
408
-                if ( isset($item['description']))
408
+                if (isset($item['description']))
409 409
                     $item['summary'] = $item['description'];
410
-                if ( isset($item['content']['encoded'] ) )
410
+                if (isset($item['content']['encoded']))
411 411
                     $item['atom_content'] = $item['content']['encoded'];
412 412
 
413
-                if ( $this->is_rss() == '1.0' and isset($item['dc']['date']) ) {
413
+                if ($this->is_rss() == '1.0' and isset($item['dc']['date'])) {
414 414
                     $epoch = @parse_w3cdtf($item['dc']['date']);
415
-                    if ($epoch and $epoch > 0) {
415
+                    if ($epoch and $epoch>0) {
416 416
                         $item['date_timestamp'] = $epoch;
417 417
                     }
418 418
                 }
419
-                elseif ( isset($item['pubdate']) ) {
419
+                elseif (isset($item['pubdate'])) {
420 420
                     $epoch = @strtotime($item['pubdate']);
421
-                    if ($epoch > 0) {
421
+                    if ($epoch>0) {
422 422
                         $item['date_timestamp'] = $epoch;
423 423
                     }
424 424
                 }
@@ -429,8 +429,8 @@  discard block
 block discarded – undo
429 429
     }
430 430
 
431 431
 
432
-    function is_rss () {
433
-        if ( $this->feed_type == RSS ) {
432
+    function is_rss() {
433
+        if ($this->feed_type == RSS) {
434 434
             return $this->feed_version;
435 435
         }
436 436
         else {
@@ -439,7 +439,7 @@  discard block
 block discarded – undo
439 439
     }
440 440
 
441 441
     function is_atom() {
442
-        if ( $this->feed_type == ATOM ) {
442
+        if ($this->feed_type == ATOM) {
443 443
             return $this->feed_version;
444 444
         }
445 445
         else {
@@ -452,7 +452,7 @@  discard block
 block discarded – undo
452 452
     *
453 453
     */
454 454
     function create_parser($source, $out_enc, $in_enc, $detect) {
455
-        if ( substr(phpversion(),0,1) == 5) {
455
+        if (substr(phpversion(), 0, 1) == 5) {
456 456
             $parser = $this->php5_create_parser($in_enc, $detect);
457 457
         }
458 458
         else {
@@ -477,7 +477,7 @@  discard block
 block discarded – undo
477 477
     */
478 478
     function php5_create_parser($in_enc, $detect) {
479 479
         // by default php5 does a fine job of detecting input encodings
480
-        if(!$detect && $in_enc) {
480
+        if (!$detect && $in_enc) {
481 481
             return xml_parser_create($in_enc);
482 482
         }
483 483
         else {
@@ -501,7 +501,7 @@  discard block
 block discarded – undo
501 501
     *
502 502
     */
503 503
     function php4_create_parser($source, $in_enc, $detect) {
504
-        if ( !$detect ) {
504
+        if (!$detect) {
505 505
             return array(xml_parser_create($in_enc), $source);
506 506
         }
507 507
 
@@ -553,7 +553,7 @@  discard block
 block discarded – undo
553 553
 
554 554
     function known_encoding($enc) {
555 555
         $enc = strtoupper($enc);
556
-        if ( in_array($enc, $this->_KNOWN_ENCODINGS) ) {
556
+        if (in_array($enc, $this->_KNOWN_ENCODINGS)) {
557 557
             return $enc;
558 558
         }
559 559
         else {
@@ -561,22 +561,22 @@  discard block
 block discarded – undo
561 561
         }
562 562
     }
563 563
 
564
-    function error ($errormsg, $lvl=E_USER_WARNING) {
564
+    function error($errormsg, $lvl = E_USER_WARNING) {
565 565
         // append PHP's error message if track_errors enabled
566
-        if ( !empty($php_errormsg) ) {
566
+        if (!empty($php_errormsg)) {
567 567
             $errormsg .= " ($php_errormsg)";
568 568
         }
569
-        if ( MAGPIE_DEBUG ) {
570
-            trigger_error( $errormsg, $lvl);
569
+        if (MAGPIE_DEBUG) {
570
+            trigger_error($errormsg, $lvl);
571 571
         }
572 572
         else {
573
-            error_log( $errormsg, 0);
573
+            error_log($errormsg, 0);
574 574
         }
575 575
 
576
-        $notices = E_USER_NOTICE|E_NOTICE;
577
-        if ( $lvl&$notices ) {
576
+        $notices = E_USER_NOTICE | E_NOTICE;
577
+        if ($lvl & $notices) {
578 578
             $this->WARNING = $errormsg;
579
-        } else {
579
+        }else {
580 580
             $this->ERROR = $errormsg;
581 581
         }
582 582
     }
@@ -589,41 +589,41 @@  discard block
 block discarded – undo
589 589
 }
590 590
 
591 591
 
592
-function parse_w3cdtf ( $date_str ) {
592
+function parse_w3cdtf($date_str) {
593 593
 
594 594
 	# regex to match wc3dtf
595 595
 	$pat = "/(\d{4})-(\d{2})-(\d{2})[T]?(\d{2})?[:]?(\d{2})?(:(\d{2}))?(?:([-+])(\d{2}):?(\d{2})|(Z))?/";
596 596
 
597
-	if ( preg_match( $pat, $date_str, $match ) ) {
598
-		list( $year, $month, $day, $hours, $minutes, $seconds) =
599
-			array( $match[1], $match[2], $match[3], $match[4], $match[5], $match[6]);
597
+	if (preg_match($pat, $date_str, $match)) {
598
+		list($year, $month, $day, $hours, $minutes, $seconds) =
599
+			array($match[1], $match[2], $match[3], $match[4], $match[5], $match[6]);
600 600
 
601 601
 		# calc epoch for current date assuming GMT
602
-		$epoch = gmmktime( intval($hours), intval($minutes), intval($seconds), intval($month), intval($day), intval($year));
602
+		$epoch = gmmktime(intval($hours), intval($minutes), intval($seconds), intval($month), intval($day), intval($year));
603 603
 
604 604
 		$offset = 0;
605
-		if ( $match[10] == 'Z' ) {
605
+		if ($match[10] == 'Z') {
606 606
 			# zulu time, aka GMT
607 607
 		}
608 608
 		else {
609
-			list( $tz_mod, $tz_hour, $tz_min ) =
610
-				array( $match[8], $match[9], $match[10]);
609
+			list($tz_mod, $tz_hour, $tz_min) =
610
+				array($match[8], $match[9], $match[10]);
611 611
 
612 612
 			# zero out the variables
613
-			if ( ! $tz_hour ) { $tz_hour = 0; }
614
-			if ( ! $tz_min ) { $tz_min = 0; }
613
+			if (!$tz_hour) { $tz_hour = 0; }
614
+			if (!$tz_min) { $tz_min = 0; }
615 615
 
616 616
 			$offset_secs = (($tz_hour*60)+$tz_min)*60;
617 617
 
618 618
 			# is timezone ahead of GMT?  then subtract offset
619 619
 			#
620
-			if ( $tz_mod == '+' ) {
621
-				$offset_secs = $offset_secs * -1;
620
+			if ($tz_mod == '+') {
621
+				$offset_secs = $offset_secs*-1;
622 622
 			}
623 623
 
624 624
 			$offset = $offset_secs;
625 625
 		}
626
-		$epoch = $epoch + $offset;
626
+		$epoch = $epoch+$offset;
627 627
 		return $epoch;
628 628
 	}
629 629
 	else {
Please login to merge, or discard this patch.
Braces   +44 added lines, -73 removed lines patch added patch discarded remove patch
@@ -165,12 +165,10 @@  discard block
 block discarded – undo
165 165
             if ( $el == 'rdf' ) {
166 166
                 $this->feed_type = RSS;
167 167
                 $this->feed_version = '1.0';
168
-            }
169
-            elseif ( $el == 'rss' ) {
168
+            } elseif ( $el == 'rss' ) {
170 169
                 $this->feed_type = RSS;
171 170
                 $this->feed_version = $attrs['version'];
172
-            }
173
-            elseif ( $el == 'feed' ) {
171
+            } elseif ( $el == 'feed' ) {
174 172
                 $this->feed_type = ATOM;
175 173
                 $this->feed_version = $attrs['version'];
176 174
                 $this->inchannel = true;
@@ -181,8 +179,7 @@  discard block
 block discarded – undo
181 179
         if ( $el == 'channel' )
182 180
         {
183 181
             $this->inchannel = true;
184
-        }
185
-        elseif ($el == 'item' or $el == 'entry' )
182
+        } elseif ($el == 'item' or $el == 'entry' )
186 183
         {
187 184
             $this->initem = true;
188 185
             if ( isset($attrs['rdf:about']) ) {
@@ -198,9 +195,7 @@  discard block
 block discarded – undo
198 195
             $el == 'textinput' )
199 196
         {
200 197
             $this->intextinput = true;
201
-        }
202
-
203
-        elseif (
198
+        } elseif (
204 199
             $this->feed_type == RSS and
205 200
             $this->current_namespace == '' and
206 201
             $el == 'image' )
@@ -244,8 +239,7 @@  discard block
 block discarded – undo
244 239
             if ( isset($attrs['rel']) and $attrs['rel'] == 'alternate' )
245 240
             {
246 241
                 $link_el = 'link';
247
-            }
248
-            else {
242
+            } else {
249 243
                 $link_el = 'link_' . $attrs['rel'];
250 244
             }
251 245
 
@@ -264,8 +258,7 @@  discard block
 block discarded – undo
264 258
         if ($this->feed_type == ATOM and $this->incontent)
265 259
         {
266 260
             $this->append_content( $text );
267
-        }
268
-        else {
261
+        } else {
269 262
             $current_el = join('_', array_reverse($this->stack));
270 263
             $this->append($current_el, $text);
271 264
         }
@@ -279,37 +272,30 @@  discard block
 block discarded – undo
279 272
             $this->items[] = $this->current_item;
280 273
             $this->current_item = array();
281 274
             $this->initem = false;
282
-        }
283
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' )
275
+        } elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'textinput' )
284 276
         {
285 277
             $this->intextinput = false;
286
-        }
287
-        elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' )
278
+        } elseif ($this->feed_type == RSS and $this->current_namespace == '' and $el == 'image' )
288 279
         {
289 280
             $this->inimage = false;
290
-        }
291
-        elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
281
+        } elseif ($this->feed_type == ATOM and in_array($el, $this->_CONTENT_CONSTRUCTS) )
292 282
         {
293 283
             $this->incontent = false;
294
-        }
295
-        elseif ($el == 'channel' or $el == 'feed' )
284
+        } elseif ($el == 'channel' or $el == 'feed' )
296 285
         {
297 286
             $this->inchannel = false;
298
-        }
299
-        elseif ($this->feed_type == ATOM and $this->incontent  ) {
287
+        } elseif ($this->feed_type == ATOM and $this->incontent  ) {
300 288
             // balance tags properly
301 289
             // note:  i don't think this is actually neccessary
302 290
             if ( $this->stack[0] == $el )
303 291
             {
304 292
                 $this->append_content("</$el>");
305
-            }
306
-            else {
293
+            } else {
307 294
                 $this->append_content("<$el />");
308 295
             }
309 296
 
310 297
             array_shift( $this->stack );
311
-        }
312
-        else {
298
+        } else {
313 299
             array_shift( $this->stack );
314 300
         }
315 301
 
@@ -328,8 +314,7 @@  discard block
 block discarded – undo
328 314
     function append_content($text) {
329 315
         if ( $this->initem ) {
330 316
             $this->concat( $this->current_item[ $this->incontent ], $text );
331
-        }
332
-        elseif ( $this->inchannel ) {
317
+        } elseif ( $this->inchannel ) {
333 318
             $this->concat( $this->channel[ $this->incontent ], $text );
334 319
         }
335 320
     }
@@ -344,34 +329,27 @@  discard block
 block discarded – undo
344 329
             if ( $this->initem ) {
345 330
                 $this->concat(
346 331
                     $this->current_item[ $this->current_namespace ][ $el ], $text);
347
-            }
348
-            elseif ($this->inchannel) {
332
+            } elseif ($this->inchannel) {
349 333
                 $this->concat(
350 334
                     $this->channel[ $this->current_namespace][ $el ], $text );
351
-            }
352
-            elseif ($this->intextinput) {
335
+            } elseif ($this->intextinput) {
353 336
                 $this->concat(
354 337
                     $this->textinput[ $this->current_namespace][ $el ], $text );
355
-            }
356
-            elseif ($this->inimage) {
338
+            } elseif ($this->inimage) {
357 339
                 $this->concat(
358 340
                     $this->image[ $this->current_namespace ][ $el ], $text );
359 341
             }
360
-        }
361
-        else {
342
+        } else {
362 343
             if ( $this->initem ) {
363 344
                 $this->concat(
364 345
                     $this->current_item[ $el ], $text);
365
-            }
366
-            elseif ($this->intextinput) {
346
+            } elseif ($this->intextinput) {
367 347
                 $this->concat(
368 348
                     $this->textinput[ $el ], $text );
369
-            }
370
-            elseif ($this->inimage) {
349
+            } elseif ($this->inimage) {
371 350
                 $this->concat(
372 351
                     $this->image[ $el ], $text );
373
-            }
374
-            elseif ($this->inchannel) {
352
+            } elseif ($this->inchannel) {
375 353
                 $this->concat(
376 354
                     $this->channel[ $el ], $text );
377 355
             }
@@ -385,10 +363,12 @@  discard block
 block discarded – undo
385 363
             $this->channel['description'] = $this->channel['tagline'];
386 364
             for ( $i = 0; $i < count($this->items); $i++) {
387 365
                 $item = $this->items[$i];
388
-                if ( isset($item['summary']) )
389
-                    $item['description'] = $item['summary'];
390
-                if ( isset($item['atom_content']))
391
-                    $item['content']['encoded'] = $item['atom_content'];
366
+                if ( isset($item['summary']) ) {
367
+                                    $item['description'] = $item['summary'];
368
+                }
369
+                if ( isset($item['atom_content'])) {
370
+                                    $item['content']['encoded'] = $item['atom_content'];
371
+                }
392 372
 
393 373
                 $atom_date = (isset($item['issued']) ) ? $item['issued'] : @$item['modified'];
394 374
                 if ( $atom_date ) {
@@ -400,23 +380,23 @@  discard block
 block discarded – undo
400 380
 
401 381
                 $this->items[$i] = $item;
402 382
             }
403
-        }
404
-        elseif ( $this->is_rss() ) {
383
+        } elseif ( $this->is_rss() ) {
405 384
             $this->channel['tagline'] = $this->channel['description'];
406 385
             for ( $i = 0; $i < count($this->items); $i++) {
407 386
                 $item = $this->items[$i];
408
-                if ( isset($item['description']))
409
-                    $item['summary'] = $item['description'];
410
-                if ( isset($item['content']['encoded'] ) )
411
-                    $item['atom_content'] = $item['content']['encoded'];
387
+                if ( isset($item['description'])) {
388
+                                    $item['summary'] = $item['description'];
389
+                }
390
+                if ( isset($item['content']['encoded'] ) ) {
391
+                                    $item['atom_content'] = $item['content']['encoded'];
392
+                }
412 393
 
413 394
                 if ( $this->is_rss() == '1.0' and isset($item['dc']['date']) ) {
414 395
                     $epoch = @parse_w3cdtf($item['dc']['date']);
415 396
                     if ($epoch and $epoch > 0) {
416 397
                         $item['date_timestamp'] = $epoch;
417 398
                     }
418
-                }
419
-                elseif ( isset($item['pubdate']) ) {
399
+                } elseif ( isset($item['pubdate']) ) {
420 400
                     $epoch = @strtotime($item['pubdate']);
421 401
                     if ($epoch > 0) {
422 402
                         $item['date_timestamp'] = $epoch;
@@ -432,8 +412,7 @@  discard block
 block discarded – undo
432 412
     function is_rss () {
433 413
         if ( $this->feed_type == RSS ) {
434 414
             return $this->feed_version;
435
-        }
436
-        else {
415
+        } else {
437 416
             return false;
438 417
         }
439 418
     }
@@ -441,8 +420,7 @@  discard block
 block discarded – undo
441 420
     function is_atom() {
442 421
         if ( $this->feed_type == ATOM ) {
443 422
             return $this->feed_version;
444
-        }
445
-        else {
423
+        } else {
446 424
             return false;
447 425
         }
448 426
     }
@@ -454,8 +432,7 @@  discard block
 block discarded – undo
454 432
     function create_parser($source, $out_enc, $in_enc, $detect) {
455 433
         if ( substr(phpversion(),0,1) == 5) {
456 434
             $parser = $this->php5_create_parser($in_enc, $detect);
457
-        }
458
-        else {
435
+        } else {
459 436
             list($parser, $source) = $this->php4_create_parser($source, $in_enc, $detect);
460 437
         }
461 438
         if ($out_enc) {
@@ -479,8 +456,7 @@  discard block
 block discarded – undo
479 456
         // by default php5 does a fine job of detecting input encodings
480 457
         if(!$detect && $in_enc) {
481 458
             return xml_parser_create($in_enc);
482
-        }
483
-        else {
459
+        } else {
484 460
             return xml_parser_create('');
485 461
         }
486 462
     }
@@ -509,8 +485,7 @@  discard block
 block discarded – undo
509 485
             if (preg_match('/<?xml.*encoding=[\'"](.*?)[\'"].*?>/m', $source, $m)) {
510 486
                 $in_enc = strtoupper($m[1]);
511 487
                 $this->source_encoding = $in_enc;
512
-            }
513
-            else {
488
+            } else {
514 489
                 $in_enc = 'UTF-8';
515 490
             }
516 491
         }
@@ -555,8 +530,7 @@  discard block
 block discarded – undo
555 530
         $enc = strtoupper($enc);
556 531
         if ( in_array($enc, $this->_KNOWN_ENCODINGS) ) {
557 532
             return $enc;
558
-        }
559
-        else {
533
+        } else {
560 534
             return false;
561 535
         }
562 536
     }
@@ -568,8 +542,7 @@  discard block
 block discarded – undo
568 542
         }
569 543
         if ( MAGPIE_DEBUG ) {
570 544
             trigger_error( $errormsg, $lvl);
571
-        }
572
-        else {
545
+        } else {
573 546
             error_log( $errormsg, 0);
574 547
         }
575 548
 
@@ -604,8 +577,7 @@  discard block
 block discarded – undo
604 577
 		$offset = 0;
605 578
 		if ( $match[10] == 'Z' ) {
606 579
 			# zulu time, aka GMT
607
-		}
608
-		else {
580
+		} else {
609 581
 			list( $tz_mod, $tz_hour, $tz_min ) =
610 582
 				array( $match[8], $match[9], $match[10]);
611 583
 
@@ -625,8 +597,7 @@  discard block
 block discarded – undo
625 597
 		}
626 598
 		$epoch = $epoch + $offset;
627 599
 		return $epoch;
628
-	}
629
-	else {
600
+	} else {
630 601
 		return -1;
631 602
 	}
632 603
 }
Please login to merge, or discard this patch.
class/xml.php 4 patches
Doc Comments   +4 added lines patch added patch discarded remove patch
@@ -93,6 +93,10 @@
 block discarded – undo
93 93
         $this->version = $version;
94 94
     }
95 95
 
96
+    /**
97
+     * @param string $var
98
+     * @param FeedImage $val
99
+     */
96 100
     function setVar($var, $val, $encoding = false)
97 101
     {
98 102
 	    if(!empty($encoding)) $val = $this->convert_encoding($val);
Please login to merge, or discard this patch.
Indentation   +56 added lines, -56 removed lines patch added patch discarded remove patch
@@ -84,63 +84,63 @@
 block discarded – undo
84 84
 if(!class_exists("Xmlfeed")){
85 85
 class Bxmlfeed extends UniversalFeedCreator
86 86
 {
87
-    var $version;
88
-    var $filename= "";
89
-
90
-    function Bxmlfeed($version)
91
-    {
92
-    	$this->filename= XOOPS_CACHE_PATH."/feed.xml";
93
-        $this->version = $version;
94
-    }
95
-
96
-    function setVar($var, $val, $encoding = false)
97
-    {
98
-	    if(!empty($encoding)) $val = $this->convert_encoding($val);
99
-        $this->$var = $val;
100
-    }
87
+	var $version;
88
+	var $filename= "";
89
+
90
+	function Bxmlfeed($version)
91
+	{
92
+		$this->filename= XOOPS_CACHE_PATH."/feed.xml";
93
+		$this->version = $version;
94
+	}
95
+
96
+	function setVar($var, $val, $encoding = false)
97
+	{
98
+		if(!empty($encoding)) $val = $this->convert_encoding($val);
99
+		$this->$var = $val;
100
+	}
101 101
     
102
-    function convert_encoding($val)    
103
-    {
104
-	    if(is_array($val)){
105
-		    foreach(array_keys($val) as $key){
106
-			    $val[$key] = $this->convert_encoding($val[$key]);
107
-		    }
108
-	    }else{
109
-		    $val = XoopsLocal::convert_encoding($val, $this->encoding, _CHARSET);
110
-	    }
111
-	    return $val;
112
-    }
113
-
114
-    function getVar($var)
115
-    {
116
-        return $this->$var;
117
-    }
118
-
119
-    function setImage(&$img)
120
-    {
121
-	    $image = new FeedImage();
122
-	    foreach($img as $key=>$val){
123
-		    $image->$key = $this->convert_encoding($val);
124
-	    }
125
-	    $this->setVar("image", $image);
126
-    }
127
-
128
-    function _addItem(&$itm)
129
-    {
130
-    	$item = new FeedItem();
131
-	    foreach($itm as $key=>$val){
132
-		    $item->$key = $this->convert_encoding($val);
133
-	    }
134
-	    $this->addItem($item);
135
-    }
136
-
137
-    function addItems(&$items)
138
-    {
139
-	    if(!is_array($items) || count($items)==0) return;
140
-	    foreach($items as $item){
141
-		    $this->_addItem($item);
142
-	    }
143
-    }
102
+	function convert_encoding($val)    
103
+	{
104
+		if(is_array($val)){
105
+			foreach(array_keys($val) as $key){
106
+				$val[$key] = $this->convert_encoding($val[$key]);
107
+			}
108
+		}else{
109
+			$val = XoopsLocal::convert_encoding($val, $this->encoding, _CHARSET);
110
+		}
111
+		return $val;
112
+	}
113
+
114
+	function getVar($var)
115
+	{
116
+		return $this->$var;
117
+	}
118
+
119
+	function setImage(&$img)
120
+	{
121
+		$image = new FeedImage();
122
+		foreach($img as $key=>$val){
123
+			$image->$key = $this->convert_encoding($val);
124
+		}
125
+		$this->setVar("image", $image);
126
+	}
127
+
128
+	function _addItem(&$itm)
129
+	{
130
+		$item = new FeedItem();
131
+		foreach($itm as $key=>$val){
132
+			$item->$key = $this->convert_encoding($val);
133
+		}
134
+		$this->addItem($item);
135
+	}
136
+
137
+	function addItems(&$items)
138
+	{
139
+		if(!is_array($items) || count($items)==0) return;
140
+		foreach($items as $item){
141
+			$this->_addItem($item);
142
+		}
143
+	}
144 144
 }
145 145
 }
146 146
 
Please login to merge, or discard this patch.
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
25 25
 // Project: Article Project                                                 //
26 26
 // ------------------------------------------------------------------------ //
27 27
 
28
-if (!defined('XOOPS_ROOT_PATH')){ exit(); }
28
+if (!defined('XOOPS_ROOT_PATH')) { exit(); }
29 29
 include_once dirname(dirname(__FILE__))."/include/vars.php";
30 30
 mod_loadFunctions("", $GLOBALS["moddirname"]);
31 31
 
@@ -66,8 +66,8 @@  discard block
 block discarded – undo
66 66
 
67 67
 // your local timezone, set to "" to disable or for GMT
68 68
 $server_TZ = abs(intval($GLOBALS['xoopsConfig']['server_TZ']*3600.0));
69
-$prefix = ($GLOBALS['xoopsConfig']['server_TZ']<0)?"-":"+";
70
-$TIME_ZONE = $prefix.date("H:i",$server_TZ);
69
+$prefix = ($GLOBALS['xoopsConfig']['server_TZ']<0) ? "-" : "+";
70
+$TIME_ZONE = $prefix.date("H:i", $server_TZ);
71 71
 define("TIME_ZONE", $TIME_ZONE);
72 72
 // Version string.
73 73
 define("FEEDCREATOR_VERSION", "ARTICLE @ XOOPS powered by FeedCreator");
@@ -81,31 +81,31 @@  discard block
 block discarded – undo
81 81
  * @return type description
82 82
  * @link
83 83
  */
84
-if(!class_exists("Xmlfeed")){
84
+if (!class_exists("Xmlfeed")) {
85 85
 class Bxmlfeed extends UniversalFeedCreator
86 86
 {
87 87
     var $version;
88
-    var $filename= "";
88
+    var $filename = "";
89 89
 
90 90
     function Bxmlfeed($version)
91 91
     {
92
-    	$this->filename= XOOPS_CACHE_PATH."/feed.xml";
92
+    	$this->filename = XOOPS_CACHE_PATH."/feed.xml";
93 93
         $this->version = $version;
94 94
     }
95 95
 
96 96
     function setVar($var, $val, $encoding = false)
97 97
     {
98
-	    if(!empty($encoding)) $val = $this->convert_encoding($val);
98
+	    if (!empty($encoding)) $val = $this->convert_encoding($val);
99 99
         $this->$var = $val;
100 100
     }
101 101
     
102 102
     function convert_encoding($val)    
103 103
     {
104
-	    if(is_array($val)){
105
-		    foreach(array_keys($val) as $key){
104
+	    if (is_array($val)) {
105
+		    foreach (array_keys($val) as $key) {
106 106
 			    $val[$key] = $this->convert_encoding($val[$key]);
107 107
 		    }
108
-	    }else{
108
+	    }else {
109 109
 		    $val = XoopsLocal::convert_encoding($val, $this->encoding, _CHARSET);
110 110
 	    }
111 111
 	    return $val;
@@ -119,7 +119,7 @@  discard block
 block discarded – undo
119 119
     function setImage(&$img)
120 120
     {
121 121
 	    $image = new FeedImage();
122
-	    foreach($img as $key=>$val){
122
+	    foreach ($img as $key=>$val) {
123 123
 		    $image->$key = $this->convert_encoding($val);
124 124
 	    }
125 125
 	    $this->setVar("image", $image);
@@ -128,7 +128,7 @@  discard block
 block discarded – undo
128 128
     function _addItem(&$itm)
129 129
     {
130 130
     	$item = new FeedItem();
131
-	    foreach($itm as $key=>$val){
131
+	    foreach ($itm as $key=>$val) {
132 132
 		    $item->$key = $this->convert_encoding($val);
133 133
 	    }
134 134
 	    $this->addItem($item);
@@ -136,8 +136,8 @@  discard block
 block discarded – undo
136 136
 
137 137
     function addItems(&$items)
138 138
     {
139
-	    if(!is_array($items) || count($items)==0) return;
140
-	    foreach($items as $item){
139
+	    if (!is_array($items) || count($items) == 0) return;
140
+	    foreach ($items as $item) {
141 141
 		    $this->_addItem($item);
142 142
 	    }
143 143
     }
Please login to merge, or discard this patch.
Braces   +7 added lines, -3 removed lines patch added patch discarded remove patch
@@ -95,7 +95,9 @@  discard block
 block discarded – undo
95 95
 
96 96
     function setVar($var, $val, $encoding = false)
97 97
     {
98
-	    if(!empty($encoding)) $val = $this->convert_encoding($val);
98
+	    if(!empty($encoding)) {
99
+	    	$val = $this->convert_encoding($val);
100
+	    }
99 101
         $this->$var = $val;
100 102
     }
101 103
     
@@ -105,7 +107,7 @@  discard block
 block discarded – undo
105 107
 		    foreach(array_keys($val) as $key){
106 108
 			    $val[$key] = $this->convert_encoding($val[$key]);
107 109
 		    }
108
-	    }else{
110
+	    } else{
109 111
 		    $val = XoopsLocal::convert_encoding($val, $this->encoding, _CHARSET);
110 112
 	    }
111 113
 	    return $val;
@@ -136,7 +138,9 @@  discard block
 block discarded – undo
136 138
 
137 139
     function addItems(&$items)
138 140
     {
139
-	    if(!is_array($items) || count($items)==0) return;
141
+	    if(!is_array($items) || count($items)==0) {
142
+	    	return;
143
+	    }
140 144
 	    foreach($items as $item){
141 145
 		    $this->_addItem($item);
142 146
 	    }
Please login to merge, or discard this patch.
class/xmlparser.php 4 patches
Doc Comments   -7 removed lines patch added patch discarded remove patch
@@ -53,13 +53,6 @@
 block discarded – undo
53 53
      *  @param string $content           string containing the RSS to be parsed
54 54
      *
55 55
      *
56
-     *  @param string $output_encoding  output the parsed RSS in this character
57
-     *                                  set defaults to ISO-8859-1 as this is PHP's
58
-     *                                  default.
59
-     *
60
-     *  @param string $input_encoding   the character set of the incoming RSS source.
61
-     *                                  Leave blank and Magpie will try to figure it
62
-     *                                  out.
63 56
      *
64 57
      */
65 58
     function XmlParser ($content, $input_charset, $output_charset = _CHARSET, $tags = array())
Please login to merge, or discard this patch.
Indentation   +106 added lines, -106 removed lines patch added patch discarded remove patch
@@ -47,23 +47,23 @@  discard block
 block discarded – undo
47 47
 	var $charset_in;
48 48
 	var $charset_out;
49 49
 	
50
-    /**
51
-     *  Set up XML parser, parse source, and return populated RSS object..
52
-     *
53
-     *  @param string $content           string containing the RSS to be parsed
54
-     *
55
-     *
56
-     *  @param string $output_encoding  output the parsed RSS in this character
57
-     *                                  set defaults to ISO-8859-1 as this is PHP's
58
-     *                                  default.
59
-     *
60
-     *  @param string $input_encoding   the character set of the incoming RSS source.
61
-     *                                  Leave blank and Magpie will try to figure it
62
-     *                                  out.
63
-     *
64
-     */
65
-    function XmlParser ($content, $input_charset, $output_charset = _CHARSET, $tags = array())
66
-    {
50
+	/**
51
+	 *  Set up XML parser, parse source, and return populated RSS object..
52
+	 *
53
+	 *  @param string $content           string containing the RSS to be parsed
54
+	 *
55
+	 *
56
+	 *  @param string $output_encoding  output the parsed RSS in this character
57
+	 *                                  set defaults to ISO-8859-1 as this is PHP's
58
+	 *                                  default.
59
+	 *
60
+	 *  @param string $input_encoding   the character set of the incoming RSS source.
61
+	 *                                  Leave blank and Magpie will try to figure it
62
+	 *                                  out.
63
+	 *
64
+	 */
65
+	function XmlParser ($content, $input_charset, $output_charset = _CHARSET, $tags = array())
66
+	{
67 67
 		if(!in_array(strtoupper($input_charset), array("UTF-8", "US-ASCII", "ISO-8859-1"))) {
68 68
 			$content = XoopsLocal::convert_encoding($content, "UTF-8", $input_charset);
69 69
 			$content = preg_replace('/(<\?xml.*encoding=[\'"])(.*?)([\'"].*\?>)/m', '$1UTF-8$3', $content);
@@ -79,109 +79,109 @@  discard block
 block discarded – undo
79 79
 		//xoops_message($this);
80 80
 		unset($this->content);
81 81
 		$this->encoding_convert($tags);
82
-    }
82
+	}
83 83
 
84
-    function is_atom() {
85
-        if ( $this->feed_type == ATOM ) {
86
-	        $this->feed_version = empty($this->feed_version)?"0.3":$this->feed_version;
87
-            return $this->feed_version;
88
-        }
89
-        else {
90
-            return false;
91
-        }
92
-    }
84
+	function is_atom() {
85
+		if ( $this->feed_type == ATOM ) {
86
+			$this->feed_version = empty($this->feed_version)?"0.3":$this->feed_version;
87
+			return $this->feed_version;
88
+		}
89
+		else {
90
+			return false;
91
+		}
92
+	}
93 93
     
94
-    function normalize () {
95
-        if ( $this->is_atom() ):
96
-	    if(empty($this->channel["tagline"])){
97
-		    /* ATOM */
98
-		    $this->channel["tagline"] = @$this->channel["subtitle"];
99
-		    unset($this->channel["subtitle"]);
100
-    	}
101
-        for ( $i = 0; $i < count($this->items); $i++) {
102
-	        // ATOM time
103
-	        if($date = @$this->items[$i]['modified']) continue;
104
-	        if(empty($date)){
105
-                $date = @$this->items[$i]['updated'];
106
-        	}
107
-	        if(empty($date)){
108
-                $date = @$this->items[$i]['issued'];
109
-        	}
110
-	        if(empty($date)){
111
-                $date = @$this->items[$i]['created'];
112
-        	}
113
-	        if(empty($date)){
114
-                $date = @$this->items[$i]['created'];
115
-        	}
116
-	        $this->items[$i]['modified'] = $date;
117
-        }
118
-        elseif($this->is_rss() != '1.0'):
119
-        for ( $i = 0; $i < count($this->items); $i++) {
120
-	        if($date = @$this->items[$i]['pubdate']) continue;
121
-	        $this->items[$i]['pubdate'] = @$this->items[$i]['dc']['date'];
122
-        }
123
-        endif;
124
-	    parent::normalize();	    
125
-    	/* ATOM */
126
-	    if(empty($this->channel["language"]) && !empty($this->channel["dc"]["language"]) )  {
94
+	function normalize () {
95
+		if ( $this->is_atom() ):
96
+		if(empty($this->channel["tagline"])){
97
+			/* ATOM */
98
+			$this->channel["tagline"] = @$this->channel["subtitle"];
99
+			unset($this->channel["subtitle"]);
100
+		}
101
+		for ( $i = 0; $i < count($this->items); $i++) {
102
+			// ATOM time
103
+			if($date = @$this->items[$i]['modified']) continue;
104
+			if(empty($date)){
105
+				$date = @$this->items[$i]['updated'];
106
+			}
107
+			if(empty($date)){
108
+				$date = @$this->items[$i]['issued'];
109
+			}
110
+			if(empty($date)){
111
+				$date = @$this->items[$i]['created'];
112
+			}
113
+			if(empty($date)){
114
+				$date = @$this->items[$i]['created'];
115
+			}
116
+			$this->items[$i]['modified'] = $date;
117
+		}
118
+		elseif($this->is_rss() != '1.0'):
119
+		for ( $i = 0; $i < count($this->items); $i++) {
120
+			if($date = @$this->items[$i]['pubdate']) continue;
121
+			$this->items[$i]['pubdate'] = @$this->items[$i]['dc']['date'];
122
+		}
123
+		endif;
124
+		parent::normalize();	    
125
+		/* ATOM */
126
+		if(empty($this->channel["language"]) && !empty($this->channel["dc"]["language"]) )  {
127 127
 			$this->channel["language"] = $this->channel["dc"]["language"];
128 128
 			unset($this->channel["dc"]["language"]);
129 129
 		}
130
-	    if(empty($this->channel["language"]) && preg_match('/<link.*hreflang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
130
+		if(empty($this->channel["language"]) && preg_match('/<link.*hreflang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
131 131
 			$this->channel["language"] = $match[1];
132 132
 		}
133
-	    if(empty($this->channel["language"]) && preg_match('/<feed.*xml:lang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
133
+		if(empty($this->channel["language"]) && preg_match('/<feed.*xml:lang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
134 134
 			$this->channel["language"] = $match[1];
135 135
 		}
136 136
 		/* remove to avoid redundant encoding conversion */
137
-	    if(!empty($this->channel["tagline"])){
138
-		    unset($this->channel["tagline"]);
139
-	    }
137
+		if(!empty($this->channel["tagline"])){
138
+			unset($this->channel["tagline"]);
139
+		}
140 140
 		
141
-        for ( $i = 0; $i < count($this->items); $i++) {
142
-	        if($date_timestamp = @$this->items[$i]['date_timestamp']) continue;
143
-	        if($date_timestamp = @$this->items[$i]['pubdate']){
144
-                $this->items[$i]['date_timestamp'] = $date_timestamp;
145
-            }elseif($date_timestamp = @$this->items[$i]['dc']['date']){
146
-                $this->items[$i]['date_timestamp'] = $date_timestamp;
147
-        	}else{
148
-	        	$this->items[$i]['date_timestamp'] = time();
149
-        	}
150
-	        if(!is_numeric($this->items[$i]['date_timestamp'])){
151
-		        if($date = parse_w3cdtf($this->items[$i]['date_timestamp'])) {
152
-		        	$this->items[$i]['date_timestamp'] = $date;
153
-	        	}elseif($date = strtotime($this->items[$i]['date_timestamp'])) {
154
-		        	$this->items[$i]['date_timestamp'] = $date;
155
-	        	}
156
-	        }
141
+		for ( $i = 0; $i < count($this->items); $i++) {
142
+			if($date_timestamp = @$this->items[$i]['date_timestamp']) continue;
143
+			if($date_timestamp = @$this->items[$i]['pubdate']){
144
+				$this->items[$i]['date_timestamp'] = $date_timestamp;
145
+			}elseif($date_timestamp = @$this->items[$i]['dc']['date']){
146
+				$this->items[$i]['date_timestamp'] = $date_timestamp;
147
+			}else{
148
+				$this->items[$i]['date_timestamp'] = time();
149
+			}
150
+			if(!is_numeric($this->items[$i]['date_timestamp'])){
151
+				if($date = parse_w3cdtf($this->items[$i]['date_timestamp'])) {
152
+					$this->items[$i]['date_timestamp'] = $date;
153
+				}elseif($date = strtotime($this->items[$i]['date_timestamp'])) {
154
+					$this->items[$i]['date_timestamp'] = $date;
155
+				}
156
+			}
157 157
 
158 158
 			/* remove to avoid redundant encoding conversion */
159
-            if ( isset($this->items[$i]['summary']) )
160
-                unset($this->items[$i]['summary']);
161
-            if ( isset($this->items[$i]['atom_content']))
162
-                unset($this->items[$i]['atom_content']);
163
-        }
164
-	    return;
165
-    }
159
+			if ( isset($this->items[$i]['summary']) )
160
+				unset($this->items[$i]['summary']);
161
+			if ( isset($this->items[$i]['atom_content']))
162
+				unset($this->items[$i]['atom_content']);
163
+		}
164
+		return;
165
+	}
166 166
     
167
-    function encoding_convert($tags = array()){
168
-	    if(empty($tags) || in_array("channel", $tags)){
169
-	    	$this->channel = $this->_encoding($this->channel);
170
-    	}
171
-	    if(empty($tags) || in_array("items", $tags)){
172
-	    	$this->items = $this->_encoding($this->items);
173
-    	}
174
-    }
167
+	function encoding_convert($tags = array()){
168
+		if(empty($tags) || in_array("channel", $tags)){
169
+			$this->channel = $this->_encoding($this->channel);
170
+		}
171
+		if(empty($tags) || in_array("items", $tags)){
172
+			$this->items = $this->_encoding($this->items);
173
+		}
174
+	}
175 175
     
176
-    function _encoding($val){
177
-	    if(is_array($val)){
178
-		    foreach(array_keys($val) as $key){
179
-			    $val[$key] = $this->_encoding($val[$key]);
180
-		    }
181
-	    }else{
182
-		    $val = XoopsLocal::convert_encoding($val, $this->charset_out, $this->charset_in);
183
-	    }
184
-	    return $val;
185
-    }
176
+	function _encoding($val){
177
+		if(is_array($val)){
178
+			foreach(array_keys($val) as $key){
179
+				$val[$key] = $this->_encoding($val[$key]);
180
+			}
181
+		}else{
182
+			$val = XoopsLocal::convert_encoding($val, $this->charset_out, $this->charset_in);
183
+		}
184
+		return $val;
185
+	}
186 186
 }
187 187
 ?>
188 188
\ No newline at end of file
Please login to merge, or discard this patch.
Spacing   +38 added lines, -38 removed lines patch added patch discarded remove patch
@@ -62,9 +62,9 @@  discard block
 block discarded – undo
62 62
      *                                  out.
63 63
      *
64 64
      */
65
-    function XmlParser ($content, $input_charset, $output_charset = _CHARSET, $tags = array())
65
+    function XmlParser($content, $input_charset, $output_charset = _CHARSET, $tags = array())
66 66
     {
67
-		if(!in_array(strtoupper($input_charset), array("UTF-8", "US-ASCII", "ISO-8859-1"))) {
67
+		if (!in_array(strtoupper($input_charset), array("UTF-8", "US-ASCII", "ISO-8859-1"))) {
68 68
 			$content = XoopsLocal::convert_encoding($content, "UTF-8", $input_charset);
69 69
 			$content = preg_replace('/(<\?xml.*encoding=[\'"])(.*?)([\'"].*\?>)/m', '$1UTF-8$3', $content);
70 70
 			$input_charset = "UTF-8";
@@ -74,7 +74,7 @@  discard block
 block discarded – undo
74 74
 		$this->charset_out = $output_charset;
75 75
 		
76 76
 		/* TODO: parse specified tags only */
77
-		$this->MagpieRSS( $content, $input_charset, $input_charset, false );
77
+		$this->MagpieRSS($content, $input_charset, $input_charset, false);
78 78
 		
79 79
 		//xoops_message($this);
80 80
 		unset($this->content);
@@ -82,8 +82,8 @@  discard block
 block discarded – undo
82 82
     }
83 83
 
84 84
     function is_atom() {
85
-        if ( $this->feed_type == ATOM ) {
86
-	        $this->feed_version = empty($this->feed_version)?"0.3":$this->feed_version;
85
+        if ($this->feed_type == ATOM) {
86
+	        $this->feed_version = empty($this->feed_version) ? "0.3" : $this->feed_version;
87 87
             return $this->feed_version;
88 88
         }
89 89
         else {
@@ -91,94 +91,94 @@  discard block
 block discarded – undo
91 91
         }
92 92
     }
93 93
     
94
-    function normalize () {
95
-        if ( $this->is_atom() ):
96
-	    if(empty($this->channel["tagline"])){
94
+    function normalize() {
95
+        if ($this->is_atom()):
96
+	    if (empty($this->channel["tagline"])) {
97 97
 		    /* ATOM */
98 98
 		    $this->channel["tagline"] = @$this->channel["subtitle"];
99 99
 		    unset($this->channel["subtitle"]);
100 100
     	}
101
-        for ( $i = 0; $i < count($this->items); $i++) {
101
+        for ($i = 0; $i<count($this->items); $i++) {
102 102
 	        // ATOM time
103
-	        if($date = @$this->items[$i]['modified']) continue;
104
-	        if(empty($date)){
103
+	        if ($date = @$this->items[$i]['modified']) continue;
104
+	        if (empty($date)) {
105 105
                 $date = @$this->items[$i]['updated'];
106 106
         	}
107
-	        if(empty($date)){
107
+	        if (empty($date)) {
108 108
                 $date = @$this->items[$i]['issued'];
109 109
         	}
110
-	        if(empty($date)){
110
+	        if (empty($date)) {
111 111
                 $date = @$this->items[$i]['created'];
112 112
         	}
113
-	        if(empty($date)){
113
+	        if (empty($date)) {
114 114
                 $date = @$this->items[$i]['created'];
115 115
         	}
116 116
 	        $this->items[$i]['modified'] = $date;
117 117
         }
118
-        elseif($this->is_rss() != '1.0'):
119
-        for ( $i = 0; $i < count($this->items); $i++) {
120
-	        if($date = @$this->items[$i]['pubdate']) continue;
118
+        elseif ($this->is_rss() != '1.0'):
119
+        for ($i = 0; $i<count($this->items); $i++) {
120
+	        if ($date = @$this->items[$i]['pubdate']) continue;
121 121
 	        $this->items[$i]['pubdate'] = @$this->items[$i]['dc']['date'];
122 122
         }
123 123
         endif;
124 124
 	    parent::normalize();	    
125 125
     	/* ATOM */
126
-	    if(empty($this->channel["language"]) && !empty($this->channel["dc"]["language"]) )  {
126
+	    if (empty($this->channel["language"]) && !empty($this->channel["dc"]["language"])) {
127 127
 			$this->channel["language"] = $this->channel["dc"]["language"];
128 128
 			unset($this->channel["dc"]["language"]);
129 129
 		}
130
-	    if(empty($this->channel["language"]) && preg_match('/<link.*hreflang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
130
+	    if (empty($this->channel["language"]) && preg_match('/<link.*hreflang=[\'"](.*?)[\'"].*?>/m', $this->content, $match)) {
131 131
 			$this->channel["language"] = $match[1];
132 132
 		}
133
-	    if(empty($this->channel["language"]) && preg_match('/<feed.*xml:lang=[\'"](.*?)[\'"].*?>/m', $this->content, $match) )  {
133
+	    if (empty($this->channel["language"]) && preg_match('/<feed.*xml:lang=[\'"](.*?)[\'"].*?>/m', $this->content, $match)) {
134 134
 			$this->channel["language"] = $match[1];
135 135
 		}
136 136
 		/* remove to avoid redundant encoding conversion */
137
-	    if(!empty($this->channel["tagline"])){
137
+	    if (!empty($this->channel["tagline"])) {
138 138
 		    unset($this->channel["tagline"]);
139 139
 	    }
140 140
 		
141
-        for ( $i = 0; $i < count($this->items); $i++) {
142
-	        if($date_timestamp = @$this->items[$i]['date_timestamp']) continue;
143
-	        if($date_timestamp = @$this->items[$i]['pubdate']){
141
+        for ($i = 0; $i<count($this->items); $i++) {
142
+	        if ($date_timestamp = @$this->items[$i]['date_timestamp']) continue;
143
+	        if ($date_timestamp = @$this->items[$i]['pubdate']) {
144 144
                 $this->items[$i]['date_timestamp'] = $date_timestamp;
145
-            }elseif($date_timestamp = @$this->items[$i]['dc']['date']){
145
+            }elseif ($date_timestamp = @$this->items[$i]['dc']['date']) {
146 146
                 $this->items[$i]['date_timestamp'] = $date_timestamp;
147
-        	}else{
147
+        	}else {
148 148
 	        	$this->items[$i]['date_timestamp'] = time();
149 149
         	}
150
-	        if(!is_numeric($this->items[$i]['date_timestamp'])){
151
-		        if($date = parse_w3cdtf($this->items[$i]['date_timestamp'])) {
150
+	        if (!is_numeric($this->items[$i]['date_timestamp'])) {
151
+		        if ($date = parse_w3cdtf($this->items[$i]['date_timestamp'])) {
152 152
 		        	$this->items[$i]['date_timestamp'] = $date;
153
-	        	}elseif($date = strtotime($this->items[$i]['date_timestamp'])) {
153
+	        	}elseif ($date = strtotime($this->items[$i]['date_timestamp'])) {
154 154
 		        	$this->items[$i]['date_timestamp'] = $date;
155 155
 	        	}
156 156
 	        }
157 157
 
158 158
 			/* remove to avoid redundant encoding conversion */
159
-            if ( isset($this->items[$i]['summary']) )
159
+            if (isset($this->items[$i]['summary']))
160 160
                 unset($this->items[$i]['summary']);
161
-            if ( isset($this->items[$i]['atom_content']))
161
+            if (isset($this->items[$i]['atom_content']))
162 162
                 unset($this->items[$i]['atom_content']);
163 163
         }
164 164
 	    return;
165 165
     }
166 166
     
167
-    function encoding_convert($tags = array()){
168
-	    if(empty($tags) || in_array("channel", $tags)){
167
+    function encoding_convert($tags = array()) {
168
+	    if (empty($tags) || in_array("channel", $tags)) {
169 169
 	    	$this->channel = $this->_encoding($this->channel);
170 170
     	}
171
-	    if(empty($tags) || in_array("items", $tags)){
171
+	    if (empty($tags) || in_array("items", $tags)) {
172 172
 	    	$this->items = $this->_encoding($this->items);
173 173
     	}
174 174
     }
175 175
     
176
-    function _encoding($val){
177
-	    if(is_array($val)){
178
-		    foreach(array_keys($val) as $key){
176
+    function _encoding($val) {
177
+	    if (is_array($val)) {
178
+		    foreach (array_keys($val) as $key) {
179 179
 			    $val[$key] = $this->_encoding($val[$key]);
180 180
 		    }
181
-	    }else{
181
+	    }else {
182 182
 		    $val = XoopsLocal::convert_encoding($val, $this->charset_out, $this->charset_in);
183 183
 	    }
184 184
 	    return $val;
Please login to merge, or discard this patch.
Braces   +21 added lines, -15 removed lines patch added patch discarded remove patch
@@ -85,8 +85,7 @@  discard block
 block discarded – undo
85 85
         if ( $this->feed_type == ATOM ) {
86 86
 	        $this->feed_version = empty($this->feed_version)?"0.3":$this->feed_version;
87 87
             return $this->feed_version;
88
-        }
89
-        else {
88
+        } else {
90 89
             return false;
91 90
         }
92 91
     }
@@ -100,7 +99,9 @@  discard block
 block discarded – undo
100 99
     	}
101 100
         for ( $i = 0; $i < count($this->items); $i++) {
102 101
 	        // ATOM time
103
-	        if($date = @$this->items[$i]['modified']) continue;
102
+	        if($date = @$this->items[$i]['modified']) {
103
+	        	continue;
104
+	        }
104 105
 	        if(empty($date)){
105 106
                 $date = @$this->items[$i]['updated'];
106 107
         	}
@@ -114,10 +115,11 @@  discard block
 block discarded – undo
114 115
                 $date = @$this->items[$i]['created'];
115 116
         	}
116 117
 	        $this->items[$i]['modified'] = $date;
117
-        }
118
-        elseif($this->is_rss() != '1.0'):
118
+        } elseif($this->is_rss() != '1.0'):
119 119
         for ( $i = 0; $i < count($this->items); $i++) {
120
-	        if($date = @$this->items[$i]['pubdate']) continue;
120
+	        if($date = @$this->items[$i]['pubdate']) {
121
+	        	continue;
122
+	        }
121 123
 	        $this->items[$i]['pubdate'] = @$this->items[$i]['dc']['date'];
122 124
         }
123 125
         endif;
@@ -139,27 +141,31 @@  discard block
 block discarded – undo
139 141
 	    }
140 142
 		
141 143
         for ( $i = 0; $i < count($this->items); $i++) {
142
-	        if($date_timestamp = @$this->items[$i]['date_timestamp']) continue;
144
+	        if($date_timestamp = @$this->items[$i]['date_timestamp']) {
145
+	        	continue;
146
+	        }
143 147
 	        if($date_timestamp = @$this->items[$i]['pubdate']){
144 148
                 $this->items[$i]['date_timestamp'] = $date_timestamp;
145
-            }elseif($date_timestamp = @$this->items[$i]['dc']['date']){
149
+            } elseif($date_timestamp = @$this->items[$i]['dc']['date']){
146 150
                 $this->items[$i]['date_timestamp'] = $date_timestamp;
147
-        	}else{
151
+        	} else{
148 152
 	        	$this->items[$i]['date_timestamp'] = time();
149 153
         	}
150 154
 	        if(!is_numeric($this->items[$i]['date_timestamp'])){
151 155
 		        if($date = parse_w3cdtf($this->items[$i]['date_timestamp'])) {
152 156
 		        	$this->items[$i]['date_timestamp'] = $date;
153
-	        	}elseif($date = strtotime($this->items[$i]['date_timestamp'])) {
157
+	        	} elseif($date = strtotime($this->items[$i]['date_timestamp'])) {
154 158
 		        	$this->items[$i]['date_timestamp'] = $date;
155 159
 	        	}
156 160
 	        }
157 161
 
158 162
 			/* remove to avoid redundant encoding conversion */
159
-            if ( isset($this->items[$i]['summary']) )
160
-                unset($this->items[$i]['summary']);
161
-            if ( isset($this->items[$i]['atom_content']))
162
-                unset($this->items[$i]['atom_content']);
163
+            if ( isset($this->items[$i]['summary']) ) {
164
+                            unset($this->items[$i]['summary']);
165
+            }
166
+            if ( isset($this->items[$i]['atom_content'])) {
167
+                            unset($this->items[$i]['atom_content']);
168
+            }
163 169
         }
164 170
 	    return;
165 171
     }
@@ -178,7 +184,7 @@  discard block
 block discarded – undo
178 184
 		    foreach(array_keys($val) as $key){
179 185
 			    $val[$key] = $this->_encoding($val[$key]);
180 186
 		    }
181
-	    }else{
187
+	    } else{
182 188
 		    $val = XoopsLocal::convert_encoding($val, $this->charset_out, $this->charset_in);
183 189
 	    }
184 190
 	    return $val;
Please login to merge, or discard this patch.
include/functions.ini.php 4 patches
Doc Comments   +6 added lines patch added patch discarded remove patch
@@ -37,11 +37,17 @@
 block discarded – undo
37 37
 if(!defined("PLANET_FUNCTIONS_INI")):
38 38
 define("PLANET_FUNCTIONS_INI",1);
39 39
 
40
+/**
41
+ * @param string $name
42
+ */
40 43
 function planet_constant($name)
41 44
 {
42 45
 	return mod_constant($name);
43 46
 }
44 47
 
48
+/**
49
+ * @param string $name
50
+ */
45 51
 function planet_DB_prefix($name, $isRel = false)
46 52
 {
47 53
 	return mod_DB_prefix($name, $isRel);
Please login to merge, or discard this patch.
Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -59,24 +59,24 @@
 block discarded – undo
59 59
 		return $moduleConfig;
60 60
 	}
61 61
 	
62
-    if(is_object($GLOBALS["xoopsModule"]) && $GLOBALS["xoopsModule"]->getVar("dirname") == $GLOBALS["moddirname"]){
63
-	    $moduleConfig =& $GLOBALS["xoopsModuleConfig"];
64
-    }else{
62
+	if(is_object($GLOBALS["xoopsModule"]) && $GLOBALS["xoopsModule"]->getVar("dirname") == $GLOBALS["moddirname"]){
63
+		$moduleConfig =& $GLOBALS["xoopsModuleConfig"];
64
+	}else{
65 65
 		$module_handler = &xoops_gethandler('module');
66 66
 		$module = $module_handler->getByDirname($GLOBALS["moddirname"]);
67 67
 	
68
-	    $config_handler = &xoops_gethandler('config');
69
-	    $criteria = new CriteriaCompo(new Criteria('conf_modid', $module->getVar('mid')));
70
-	    $configs =& $config_handler->getConfigs($criteria);
71
-	    foreach(array_keys($configs) as $i){
72
-		    $moduleConfig[$configs[$i]->getVar('conf_name')] = $configs[$i]->getConfValueForOutput();
73
-	    }
74
-	    unset($configs);
75
-    }
68
+		$config_handler = &xoops_gethandler('config');
69
+		$criteria = new CriteriaCompo(new Criteria('conf_modid', $module->getVar('mid')));
70
+		$configs =& $config_handler->getConfigs($criteria);
71
+		foreach(array_keys($configs) as $i){
72
+			$moduleConfig[$configs[$i]->getVar('conf_name')] = $configs[$i]->getConfValueForOutput();
73
+		}
74
+		unset($configs);
75
+	}
76 76
 	if($customConfig = @include(XOOPS_ROOT_PATH."/modules/".$GLOBALS["moddirname"]."/include/plugin.php")){
77 77
 		$moduleConfig = array_merge($moduleConfig, $customConfig);
78 78
 	}
79
-    return $moduleConfig;
79
+	return $moduleConfig;
80 80
 }
81 81
 
82 82
 function planet_define_url_delimiter()
Please login to merge, or discard this patch.
Spacing   +16 added lines, -16 removed lines patch added patch discarded remove patch
@@ -30,12 +30,12 @@  discard block
 block discarded – undo
30 30
 The functions loaded on initializtion
31 31
 */
32 32
 
33
-if (!defined('XOOPS_ROOT_PATH')){ exit(); }
34
-if (!defined('PLANET_INI')){ exit(); }
33
+if (!defined('XOOPS_ROOT_PATH')) { exit(); }
34
+if (!defined('PLANET_INI')) { exit(); }
35 35
 
36 36
 
37
-if(!defined("PLANET_FUNCTIONS_INI")):
38
-define("PLANET_FUNCTIONS_INI",1);
37
+if (!defined("PLANET_FUNCTIONS_INI")):
38
+define("PLANET_FUNCTIONS_INI", 1);
39 39
 
40 40
 function planet_constant($name)
41 41
 {
@@ -55,25 +55,25 @@  discard block
 block discarded – undo
55 55
 function planet_load_config()
56 56
 {
57 57
 	static $moduleConfig;
58
-	if(isset($moduleConfig)){
58
+	if (isset($moduleConfig)) {
59 59
 		return $moduleConfig;
60 60
 	}
61 61
 	
62
-    if(is_object($GLOBALS["xoopsModule"]) && $GLOBALS["xoopsModule"]->getVar("dirname") == $GLOBALS["moddirname"]){
63
-	    $moduleConfig =& $GLOBALS["xoopsModuleConfig"];
64
-    }else{
62
+    if (is_object($GLOBALS["xoopsModule"]) && $GLOBALS["xoopsModule"]->getVar("dirname") == $GLOBALS["moddirname"]) {
63
+	    $moduleConfig = & $GLOBALS["xoopsModuleConfig"];
64
+    }else {
65 65
 		$module_handler = &xoops_gethandler('module');
66 66
 		$module = $module_handler->getByDirname($GLOBALS["moddirname"]);
67 67
 	
68 68
 	    $config_handler = &xoops_gethandler('config');
69 69
 	    $criteria = new CriteriaCompo(new Criteria('conf_modid', $module->getVar('mid')));
70
-	    $configs =& $config_handler->getConfigs($criteria);
71
-	    foreach(array_keys($configs) as $i){
70
+	    $configs = & $config_handler->getConfigs($criteria);
71
+	    foreach (array_keys($configs) as $i) {
72 72
 		    $moduleConfig[$configs[$i]->getVar('conf_name')] = $configs[$i]->getConfValueForOutput();
73 73
 	    }
74 74
 	    unset($configs);
75 75
     }
76
-	if($customConfig = @include(XOOPS_ROOT_PATH."/modules/".$GLOBALS["moddirname"]."/include/plugin.php")){
76
+	if ($customConfig = @include(XOOPS_ROOT_PATH."/modules/".$GLOBALS["moddirname"]."/include/plugin.php")) {
77 77
 		$moduleConfig = array_merge($moduleConfig, $customConfig);
78 78
 	}
79 79
     return $moduleConfig;
@@ -81,13 +81,13 @@  discard block
 block discarded – undo
81 81
 
82 82
 function planet_define_url_delimiter()
83 83
 {
84
-	if(defined("URL_DELIMITER")){
85
-		if(!in_array(URL_DELIMITER, array("?","/"))) die("Exit on security");
86
-	}else{
84
+	if (defined("URL_DELIMITER")) {
85
+		if (!in_array(URL_DELIMITER, array("?", "/"))) die("Exit on security");
86
+	}else {
87 87
 		$moduleConfig = planet_load_config();
88
-		if(empty($moduleConfig["do_urw"])){
88
+		if (empty($moduleConfig["do_urw"])) {
89 89
 			define("URL_DELIMITER", "?");
90
-		}else{
90
+		}else {
91 91
 			define("URL_DELIMITER", "/");
92 92
 		}
93 93
 	}
Please login to merge, or discard this patch.
Braces   +6 added lines, -4 removed lines patch added patch discarded remove patch
@@ -61,7 +61,7 @@  discard block
 block discarded – undo
61 61
 	
62 62
     if(is_object($GLOBALS["xoopsModule"]) && $GLOBALS["xoopsModule"]->getVar("dirname") == $GLOBALS["moddirname"]){
63 63
 	    $moduleConfig =& $GLOBALS["xoopsModuleConfig"];
64
-    }else{
64
+    } else{
65 65
 		$module_handler = &xoops_gethandler('module');
66 66
 		$module = $module_handler->getByDirname($GLOBALS["moddirname"]);
67 67
 	
@@ -82,12 +82,14 @@  discard block
 block discarded – undo
82 82
 function planet_define_url_delimiter()
83 83
 {
84 84
 	if(defined("URL_DELIMITER")){
85
-		if(!in_array(URL_DELIMITER, array("?","/"))) die("Exit on security");
86
-	}else{
85
+		if(!in_array(URL_DELIMITER, array("?","/"))) {
86
+			die("Exit on security");
87
+		}
88
+	} else{
87 89
 		$moduleConfig = planet_load_config();
88 90
 		if(empty($moduleConfig["do_urw"])){
89 91
 			define("URL_DELIMITER", "?");
90
-		}else{
92
+		} else{
91 93
 			define("URL_DELIMITER", "/");
92 94
 		}
93 95
 	}
Please login to merge, or discard this patch.
include/functions.php 4 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -98,7 +98,7 @@  discard block
 block discarded – undo
98 98
  * @var mixed 	$pattern
99 99
  * @var mixed 	$replacement
100 100
  *
101
- * @return bool	true on success
101
+ * @return null|boolean	true on success
102 102
  */
103 103
 function planet_parse_class($class_string, $pattern="", $replacement="")
104 104
 {
@@ -131,7 +131,7 @@  discard block
 block discarded – undo
131 131
  * @var mixed 	$pattern
132 132
  * @var mixed 	$replacement
133 133
  *
134
- * @return bool	true on success
134
+ * @return null|boolean	true on success
135 135
  */
136 136
 function planet_parse_function($function_string, $pattern="", $replacement="")
137 137
 {
Please login to merge, or discard this patch.
Indentation   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -175,7 +175,7 @@  discard block
 block discarded – undo
175 175
 	if(!is_array($userid))  $userid = array($userid);
176 176
 	$users = mod_getUnameFromIds($userid, $usereal, $linked);
177 177
 
178
-    return $users;
178
+	return $users;
179 179
 }
180 180
 
181 181
 
@@ -190,14 +190,14 @@  discard block
 block discarded – undo
190 190
 {
191 191
 	$myts =& MyTextSanitizer::getInstance();
192 192
 	$link_array = preg_split("/(\r\n|\r|\n)( *)/", $text);
193
-    $links = array();
194
-    if(count($link_array)>0) foreach($link_array as $link){
195
-	    @list($url, $title) = array_map("trim",preg_split("/ /", $link, 2));
196
-	    if(empty($url)) continue;
197
-	    //if(empty($title)) $title = $url;
198
-	    $links[] = array("url"=>$url, "title"=>$myts->htmlSpecialChars($title));
199
-    }
200
-    return $links;
193
+	$links = array();
194
+	if(count($link_array)>0) foreach($link_array as $link){
195
+		@list($url, $title) = array_map("trim",preg_split("/ /", $link, 2));
196
+		if(empty($url)) continue;
197
+		//if(empty($title)) $title = $url;
198
+		$links[] = array("url"=>$url, "title"=>$myts->htmlSpecialChars($title));
199
+	}
200
+	return $links;
201 201
 }
202 202
 
203 203
 function planet_getTemplate($pagename)
@@ -379,9 +379,9 @@  discard block
 block discarded – undo
379 379
 
380 380
 function planet_remote_content($url)
381 381
 {
382
-    if($data = planet_fetch_snoopy($url)) return $data;
383
-    if($data = planet_fetch_CURL($url)) return $data;
384
-    if($data = planet_fetch_fopen($url)) return $data;
382
+	if($data = planet_fetch_snoopy($url)) return $data;
383
+	if($data = planet_fetch_CURL($url)) return $data;
384
+	if($data = planet_fetch_fopen($url)) return $data;
385 385
    	return false;
386 386
 }
387 387
 
@@ -391,33 +391,33 @@  discard block
 block discarded – undo
391 391
 	$snoopy = new Snoopy;
392 392
 	$data = "";
393 393
 	if (@$snoopy->fetch($url)){
394
-    	$data = (is_array($snoopy->results))?implode("\n",$snoopy->results):$snoopy->results;
394
+		$data = (is_array($snoopy->results))?implode("\n",$snoopy->results):$snoopy->results;
395 395
 	}
396 396
 	return $data;
397 397
 }
398 398
 
399 399
 function planet_fetch_CURL($url)
400 400
 {
401
-    if (!function_exists('curl_init') ) return false;
402
-    $ch = curl_init();    // initialize curl handle
403
-    curl_setopt($ch, CURLOPT_URL, $url); // set url to post to
404
-    curl_setopt($ch, CURLOPT_FAILONERROR, 1);
405
-    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
406
-    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
407
-    curl_setopt($ch, CURLOPT_TIMEOUT, 30); // times out after 31s
408
-    $data = curl_exec($ch); // run the whole process
409
-    curl_close($ch);
410
-    return $data;
401
+	if (!function_exists('curl_init') ) return false;
402
+	$ch = curl_init();    // initialize curl handle
403
+	curl_setopt($ch, CURLOPT_URL, $url); // set url to post to
404
+	curl_setopt($ch, CURLOPT_FAILONERROR, 1);
405
+	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
406
+	curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
407
+	curl_setopt($ch, CURLOPT_TIMEOUT, 30); // times out after 31s
408
+	$data = curl_exec($ch); // run the whole process
409
+	curl_close($ch);
410
+	return $data;
411 411
 }
412 412
 
413 413
 function planet_fetch_fopen($url)
414 414
 {
415 415
 	if(!$fp = @fopen ($url, 'r')) return false;
416
-    $data = "";
417
-    while (!feof($fp)) {
418
-        $data .= fgets ($fp, 1024);
419
-    }
420
-    fclose($fp);
416
+	$data = "";
417
+	while (!feof($fp)) {
418
+		$data .= fgets ($fp, 1024);
419
+	}
420
+	fclose($fp);
421 421
 	return $data;
422 422
 }
423 423
 
Please login to merge, or discard this patch.
Spacing   +78 added lines, -78 removed lines patch added patch discarded remove patch
@@ -25,15 +25,15 @@  discard block
 block discarded – undo
25 25
 // Project: Article Project                                                 //
26 26
 // ------------------------------------------------------------------------ //
27 27
 
28
-if (!defined('XOOPS_ROOT_PATH')){ exit(); }
28
+if (!defined('XOOPS_ROOT_PATH')) { exit(); }
29 29
 
30 30
 $current_path = __FILE__;
31
-if ( DIRECTORY_SEPARATOR != '/' ) $current_path = str_replace( strpos( $current_path, '\\\\', 2 ) ? '\\\\' : DIRECTORY_SEPARATOR, '/', $current_path);
32
-$url_arr = explode('/',strstr($current_path,'/modules/'));
31
+if (DIRECTORY_SEPARATOR != '/') $current_path = str_replace(strpos($current_path, '\\\\', 2) ? '\\\\' : DIRECTORY_SEPARATOR, '/', $current_path);
32
+$url_arr = explode('/', strstr($current_path, '/modules/'));
33 33
 $GLOBALS["moddirname"] = $url_arr[2];
34 34
 
35
-if(!defined("planet_FUNCTIONS")): 
36
-define("planet_FUNCTIONS",1);
35
+if (!defined("planet_FUNCTIONS")): 
36
+define("planet_FUNCTIONS", 1);
37 37
 
38 38
 require XOOPS_ROOT_PATH."/modules/".$GLOBALS["moddirname"]."/include/vars.php";
39 39
 include_once(XOOPS_ROOT_PATH."/class/xoopslists.php");
@@ -44,9 +44,9 @@  discard block
 block discarded – undo
44 44
  * 
45 45
  * @var mixed 	$messages
46 46
  */
47
-function planet_message( $message )
47
+function planet_message($message)
48 48
 {
49
-	return mod_message( $message );
49
+	return mod_message($message);
50 50
 }
51 51
 
52 52
 /**
@@ -65,30 +65,30 @@  discard block
 block discarded – undo
65 65
 */
66 66
 function planet_parse_args(&$args_numeric, &$args, &$args_string)
67 67
 {
68
-	$args_abb=array("a"=>"article", "b"=>"blog", "c"=>"category", "l"=>"list", "o"=>"sort", "s"=>"start", "u"=>"uid");
68
+	$args_abb = array("a"=>"article", "b"=>"blog", "c"=>"category", "l"=>"list", "o"=>"sort", "s"=>"start", "u"=>"uid");
69 69
 	$args = array();
70 70
 	$args_numeric = array();
71 71
 	$args_string = array();
72
-	if(preg_match("/[^\?]*\.php[\/|\?]([^\?]*)/i", $_SERVER['REQUEST_URI'], $matches)){
72
+	if (preg_match("/[^\?]*\.php[\/|\?]([^\?]*)/i", $_SERVER['REQUEST_URI'], $matches)) {
73 73
 		$vars = preg_split("/[\/|&]/", $matches[1]);
74 74
 		$vars = array_map("trim", $vars);
75
-		if(count($vars)>0) {
76
-			foreach($vars as $var){
77
-				if(is_numeric($var)){
75
+		if (count($vars)>0) {
76
+			foreach ($vars as $var) {
77
+				if (is_numeric($var)) {
78 78
 					$args_numeric[] = $var;
79
-				}elseif(false === strpos($var, "=")){
80
-					if(is_numeric(substr($var, 1))){
79
+				}elseif (false === strpos($var, "=")) {
80
+					if (is_numeric(substr($var, 1))) {
81 81
 						$args[$args_abb[strtolower($var{0})]] = intval(substr($var, 1));
82
-					}else{
82
+					}else {
83 83
 						$args_string[] = urldecode($var);
84 84
 					}
85
-				}else{
85
+				}else {
86 86
 					parse_str($var, $args);
87 87
 				}
88 88
 			}
89 89
 		}
90 90
 	}
91
-	return (count($args)+count($args_numeric)+count($args_string) == 0)?null:true;
91
+	return (count($args)+count($args_numeric)+count($args_string) == 0) ? null : true;
92 92
 }
93 93
 
94 94
 /**
@@ -100,21 +100,21 @@  discard block
 block discarded – undo
100 100
  *
101 101
  * @return bool	true on success
102 102
  */
103
-function planet_parse_class($class_string, $pattern="", $replacement="")
103
+function planet_parse_class($class_string, $pattern = "", $replacement = "")
104 104
 {
105
-	if(empty($class_string)) return;
105
+	if (empty($class_string)) return;
106 106
 	$patterns = array("/\[CLASS_PREFIX\]/");
107 107
 	$replacements = array(ucfirst(strtolower($GLOBALS["moddirname"])));
108
-	if(!empty($pattern) && !is_array($pattern) && !is_array($replacement)){
108
+	if (!empty($pattern) && !is_array($pattern) && !is_array($replacement)) {
109 109
 		$pattern = array($pattern);
110 110
 		$replacement = array($replacement);
111 111
 	}
112
-	if(is_array($pattern) && count($pattern)>0){
112
+	if (is_array($pattern) && count($pattern)>0) {
113 113
 		$ii = 0;
114
-		foreach($pattern as $pat){
115
-			if(!in_array($pat, $patterns)){
114
+		foreach ($pattern as $pat) {
115
+			if (!in_array($pat, $patterns)) {
116 116
 				$patterns[] = $pat;
117
-				$replacements[] = isset($replacement[$ii])?$replacement[$ii]:"";
117
+				$replacements[] = isset($replacement[$ii]) ? $replacement[$ii] : "";
118 118
 			}
119 119
 			$ii++;
120 120
 		}
@@ -133,21 +133,21 @@  discard block
 block discarded – undo
133 133
  *
134 134
  * @return bool	true on success
135 135
  */
136
-function planet_parse_function($function_string, $pattern="", $replacement="")
136
+function planet_parse_function($function_string, $pattern = "", $replacement = "")
137 137
 {
138
-	if(empty($function_string)) return;
138
+	if (empty($function_string)) return;
139 139
 	$patterns = array("/\[DIRNAME\]/", "/\[VAR_PREFIX\]/");
140 140
 	$replacements = array($GLOBALS["moddirname"], $GLOBALS["VAR_PREFIX"]);
141
-	if(!empty($pattern) && !is_array($pattern) && !is_array($replacement)){
141
+	if (!empty($pattern) && !is_array($pattern) && !is_array($replacement)) {
142 142
 		$pattern = array($pattern);
143 143
 		$replacement = array($replacement);
144 144
 	}
145
-	if(is_array($pattern) && count($pattern)>0){
145
+	if (is_array($pattern) && count($pattern)>0) {
146 146
 		$ii = 0;
147
-		foreach($pattern as $pat){
148
-			if(!in_array($pat, $patterns)){
147
+		foreach ($pattern as $pat) {
148
+			if (!in_array($pat, $patterns)) {
149 149
 				$patterns[] = $pat;
150
-				$replacements[] = isset($replacement[$ii])?$replacement[$ii]:"";
150
+				$replacements[] = isset($replacement[$ii]) ? $replacement[$ii] : "";
151 151
 			}
152 152
 			$ii++;
153 153
 		}
@@ -162,7 +162,7 @@  discard block
 block discarded – undo
162 162
  */
163 163
 function planet_formatTimestamp($time, $format = "")
164 164
 {
165
-	if(empty($time)) return "";
165
+	if (empty($time)) return "";
166 166
 	return formatTimestamp($time, $format);
167 167
 }
168 168
 
@@ -170,9 +170,9 @@  discard block
 block discarded – undo
170 170
  * Function to a list of user names associated with their user IDs
171 171
  * 
172 172
  */
173
-function &planet_getUnameFromId( $userid, $usereal = 0, $linked = false )
173
+function &planet_getUnameFromId($userid, $usereal = 0, $linked = false)
174 174
 {
175
-	if(!is_array($userid))  $userid = array($userid);
175
+	if (!is_array($userid))  $userid = array($userid);
176 176
 	$users = mod_getUnameFromIds($userid, $usereal, $linked);
177 177
 
178 178
     return $users;
@@ -188,12 +188,12 @@  discard block
 block discarded – undo
188 188
  */
189 189
 function &planet_parseLinks($text)
190 190
 {
191
-	$myts =& MyTextSanitizer::getInstance();
191
+	$myts = & MyTextSanitizer::getInstance();
192 192
 	$link_array = preg_split("/(\r\n|\r|\n)( *)/", $text);
193 193
     $links = array();
194
-    if(count($link_array)>0) foreach($link_array as $link){
195
-	    @list($url, $title) = array_map("trim",preg_split("/ /", $link, 2));
196
-	    if(empty($url)) continue;
194
+    if (count($link_array)>0) foreach ($link_array as $link) {
195
+	    @list($url, $title) = array_map("trim", preg_split("/ /", $link, 2));
196
+	    if (empty($url)) continue;
197 197
 	    //if(empty($title)) $title = $url;
198 198
 	    $links[] = array("url"=>$url, "title"=>$myts->htmlSpecialChars($title));
199 199
     }
@@ -205,7 +205,7 @@  discard block
 block discarded – undo
205 205
 	return $GLOBALS["VAR_PREFIX"]."_".$pagename.".html";
206 206
 }
207 207
 
208
-function planet_adminmenu ($currentoption = -1)
208
+function planet_adminmenu($currentoption = -1)
209 209
 {
210 210
 	loadModuleAdminMenu($currentoption, "");
211 211
 	return;
@@ -218,10 +218,10 @@  discard block
 block discarded – undo
218 218
  */
219 219
 function planet_com_trackback(&$article, &$comment)
220 220
 {
221
-	$blog_handler =& xoops_getmodulehandler("blog", $GLOBALS["moddirname"]);
222
-	$blog_obj =& $blog_handler->get($article->getVar("blog_id"));
223
-	if(!$pattern = $blog_obj->getVar("blog_trackback")) return false;
224
-	@list($pat, $rep) = array_map("trim",preg_split("#[\s]+#", $pattern));
221
+	$blog_handler = & xoops_getmodulehandler("blog", $GLOBALS["moddirname"]);
222
+	$blog_obj = & $blog_handler->get($article->getVar("blog_id"));
223
+	if (!$pattern = $blog_obj->getVar("blog_trackback")) return false;
224
+	@list($pat, $rep) = array_map("trim", preg_split("#[\s]+#", $pattern));
225 225
 	$trackback_url = preg_replace("#".$pat."#", $rep, $article_obj->getVar("art_link"));
226 226
 	return planet_trackback($trackback_url, $article);
227 227
 }
@@ -236,7 +236,7 @@  discard block
 block discarded – undo
236 236
 	$title = xoops_utf8_encode($title);
237 237
 	$excerpt = xoops_utf8_encode($excerpt);
238 238
 	$blog_name = xoops_utf8_encode($blog_name);
239
-	$charset="utf-8";
239
+	$charset = "utf-8";
240 240
 	$title1 = urlencode($title);
241 241
 	$excerpt1 = urlencode($excerpt);
242 242
 	$name1 = urlencode($blog_name);
@@ -244,34 +244,34 @@  discard block
 block discarded – undo
244 244
 	$query_string = "title=$title1&url=$url&blog_name=$name1&excerpt=$excerpt1&charset=$charset";
245 245
 	$trackback_url = parse_url($trackback_url);
246 246
 	
247
-	$http_request  = 'POST ' . $trackback_url['path'] . ($trackback_url['query'] ? '?'.$trackback_url['query'] : '') . " HTTP/1.0\r\n";
247
+	$http_request  = 'POST '.$trackback_url['path'].($trackback_url['query'] ? '?'.$trackback_url['query'] : '')." HTTP/1.0\r\n";
248 248
 	$http_request .= "Host: ".$trackback_url["host"]."\r\n";
249 249
 	$http_request .= "Content-Type: application/x-www-form-urlencoded; charset=".$charset."\r\n";
250 250
 	$http_request .= "Content-Length: ".strlen($query_string)."\r\n";
251
-	$http_request .= "User-Agent: XOOPS Blogs/" . XOOPS_VERSION;
251
+	$http_request .= "User-Agent: XOOPS Blogs/".XOOPS_VERSION;
252 252
 	$http_request .= "\r\n\r\n";
253 253
 	$http_request .= $query_string;
254
-	if ( '' == $trackback_url['port'] ){
254
+	if ('' == $trackback_url['port']) {
255 255
 		$trackback_url['port'] = 80;
256 256
 	}
257 257
 	$fs = @fsockopen($trackback_url['host'], $trackback_url['port'], $errno, $errstr, 4);
258 258
 	@fputs($fs, $http_request);
259
-	if($xoopsModuleConfig["do_debug"]) {
259
+	if ($xoopsModuleConfig["do_debug"]) {
260 260
 		$debug_file = XOOPS_CACHE_PATH."/".$GLOBALS["moddirname"]."_trackback.log";
261 261
 		$fr = "\n*****\nRequest:\n\n$http_request\n\nResponse:\n\n";
262 262
 		$fr .= "CHARSET:$charset\n";
263 263
 		$fr .= "NAME:$blog_name\n";
264 264
 		$fr .= "TITLE:".$title."\n";
265 265
 		$fr .= "EXCERPT:$excerpt\n\n";
266
-		while(!@feof($fs)) {
266
+		while (!@feof($fs)) {
267 267
 			$fr .= @fgets($fs, 4096);
268 268
 		}
269 269
 		$fr .= "\n\n";
270 270
 
271
-		if($fp = fopen($debug_file, "a")){
271
+		if ($fp = fopen($debug_file, "a")) {
272 272
 			fwrite($fp, $fr);
273 273
 			fclose($fp);
274
-		}else{
274
+		}else {
275 275
 		}
276 276
 	}
277 277
 	@fclose($fs);
@@ -282,8 +282,8 @@  discard block
 block discarded – undo
282 282
  * Function to ping servers
283 283
  */
284 284
 function planet_ping($server, $id) {
285
-	if(is_array($server)){
286
-		foreach($server as $serv){
285
+	if (is_array($server)) {
286
+		foreach ($server as $serv) {
287 287
 			planet_ping($serv, $id);
288 288
 		}
289 289
 	}
@@ -301,7 +301,7 @@  discard block
 block discarded – undo
301 301
 	$home = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/";
302 302
 	$rss2_url = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/xml.php".URL_DELIMITER."rss2.0/".$id;
303 303
 	
304
-	if ( !$client->query('weblogUpdates.extendedPing', $blogname, $home, $rss2_url ) ) // then try a normal ping
304
+	if (!$client->query('weblogUpdates.extendedPing', $blogname, $home, $rss2_url)) // then try a normal ping
305 305
 		$client->query('weblogUpdates.ping', $blogname, $home);
306 306
 }
307 307
 
@@ -319,7 +319,7 @@  discard block
 block discarded – undo
319 319
 		echo "<message>$error_message</message>\n";
320 320
 		echo "</response>";
321 321
 		die();
322
-	} else {
322
+	}else {
323 323
 		echo '<?xml version="1.0" encoding="'.$charset.'"?'.">\n";
324 324
 		echo "<response>\n";
325 325
 		echo "<error>0</error>\n";
@@ -334,10 +334,10 @@  discard block
 block discarded – undo
334 334
  */
335 335
 function planet_setcookie($name, $string = '', $expire = 0)
336 336
 {
337
-	if(is_array($string)) {
337
+	if (is_array($string)) {
338 338
 		$value = array();
339
-		foreach ($string as $key => $val){
340
-			$value[]=$key."|".$val;
339
+		foreach ($string as $key => $val) {
340
+			$value[] = $key."|".$val;
341 341
 		}
342 342
 		$string = implode(",", $value);
343 343
 	}
@@ -347,12 +347,12 @@  discard block
 block discarded – undo
347 347
 function planet_getcookie($name, $isArray = false)
348 348
 {
349 349
 	$value = isset($_COOKIE[$GLOBALS["VAR_PREFIX"].$name]) ? $_COOKIE[$GLOBALS["VAR_PREFIX"].$name] : null;
350
-	if($isArray) {
351
-		$_value = ($value)?explode(",", $value):array();
350
+	if ($isArray) {
351
+		$_value = ($value) ? explode(",", $value) : array();
352 352
 		$value = array();
353
-		if(count($_value)>0) foreach($_value as $string){
354
-			$key = substr($string, 0, strpos($string,"|"));
355
-			$val = substr($string, (strpos($string,"|")+1));
353
+		if (count($_value)>0) foreach ($_value as $string) {
354
+			$key = substr($string, 0, strpos($string, "|"));
355
+			$val = substr($string, (strpos($string, "|")+1));
356 356
 			$value[$key] = $val;
357 357
 		}
358 358
 		unset($_value);
@@ -379,9 +379,9 @@  discard block
 block discarded – undo
379 379
 
380 380
 function planet_remote_content($url)
381 381
 {
382
-    if($data = planet_fetch_snoopy($url)) return $data;
383
-    if($data = planet_fetch_CURL($url)) return $data;
384
-    if($data = planet_fetch_fopen($url)) return $data;
382
+    if ($data = planet_fetch_snoopy($url)) return $data;
383
+    if ($data = planet_fetch_CURL($url)) return $data;
384
+    if ($data = planet_fetch_fopen($url)) return $data;
385 385
    	return false;
386 386
 }
387 387
 
@@ -390,20 +390,20 @@  discard block
 block discarded – undo
390 390
 	require_once(XOOPS_ROOT_PATH."/class/snoopy.php");
391 391
 	$snoopy = new Snoopy;
392 392
 	$data = "";
393
-	if (@$snoopy->fetch($url)){
394
-    	$data = (is_array($snoopy->results))?implode("\n",$snoopy->results):$snoopy->results;
393
+	if (@$snoopy->fetch($url)) {
394
+    	$data = (is_array($snoopy->results)) ? implode("\n", $snoopy->results) : $snoopy->results;
395 395
 	}
396 396
 	return $data;
397 397
 }
398 398
 
399 399
 function planet_fetch_CURL($url)
400 400
 {
401
-    if (!function_exists('curl_init') ) return false;
402
-    $ch = curl_init();    // initialize curl handle
401
+    if (!function_exists('curl_init')) return false;
402
+    $ch = curl_init(); // initialize curl handle
403 403
     curl_setopt($ch, CURLOPT_URL, $url); // set url to post to
404 404
     curl_setopt($ch, CURLOPT_FAILONERROR, 1);
405
-    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);// allow redirects
406
-    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); // return into a variable
405
+    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // allow redirects
406
+    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // return into a variable
407 407
     curl_setopt($ch, CURLOPT_TIMEOUT, 30); // times out after 31s
408 408
     $data = curl_exec($ch); // run the whole process
409 409
     curl_close($ch);
@@ -412,25 +412,25 @@  discard block
 block discarded – undo
412 412
 
413 413
 function planet_fetch_fopen($url)
414 414
 {
415
-	if(!$fp = @fopen ($url, 'r')) return false;
415
+	if (!$fp = @fopen($url, 'r')) return false;
416 416
     $data = "";
417 417
     while (!feof($fp)) {
418
-        $data .= fgets ($fp, 1024);
418
+        $data .= fgets($fp, 1024);
419 419
     }
420 420
     fclose($fp);
421 421
 	return $data;
422 422
 }
423 423
 
424
-function planet_strrpos($haystack, $needle, $offset = 0 )
424
+function planet_strrpos($haystack, $needle, $offset = 0)
425 425
 {
426
-	if( substr(phpversion(),0,1) == 5 ){
426
+	if (substr(phpversion(), 0, 1) == 5) {
427 427
 		return strrpos($haystack, $needle, $offset);
428 428
 	}
429 429
 	$index = strpos(strrev($haystack), strrev($needle));
430
-	if($index === false) {
430
+	if ($index === false) {
431 431
 		return false;
432 432
 	}
433
-	$index = strlen($haystack) - strlen($needle) - $index;
433
+	$index = strlen($haystack)-strlen($needle)-$index;
434 434
 	return $index;	
435 435
 }
436 436
 endif;
Please login to merge, or discard this patch.
Braces   +50 added lines, -20 removed lines patch added patch discarded remove patch
@@ -28,7 +28,9 @@  discard block
 block discarded – undo
28 28
 if (!defined('XOOPS_ROOT_PATH')){ exit(); }
29 29
 
30 30
 $current_path = __FILE__;
31
-if ( DIRECTORY_SEPARATOR != '/' ) $current_path = str_replace( strpos( $current_path, '\\\\', 2 ) ? '\\\\' : DIRECTORY_SEPARATOR, '/', $current_path);
31
+if ( DIRECTORY_SEPARATOR != '/' ) {
32
+	$current_path = str_replace( strpos( $current_path, '\\\\', 2 ) ? '\\\\' : DIRECTORY_SEPARATOR, '/', $current_path);
33
+}
32 34
 $url_arr = explode('/',strstr($current_path,'/modules/'));
33 35
 $GLOBALS["moddirname"] = $url_arr[2];
34 36
 
@@ -76,13 +78,13 @@  discard block
 block discarded – undo
76 78
 			foreach($vars as $var){
77 79
 				if(is_numeric($var)){
78 80
 					$args_numeric[] = $var;
79
-				}elseif(false === strpos($var, "=")){
81
+				} elseif(false === strpos($var, "=")){
80 82
 					if(is_numeric(substr($var, 1))){
81 83
 						$args[$args_abb[strtolower($var{0})]] = intval(substr($var, 1));
82
-					}else{
84
+					} else{
83 85
 						$args_string[] = urldecode($var);
84 86
 					}
85
-				}else{
87
+				} else{
86 88
 					parse_str($var, $args);
87 89
 				}
88 90
 			}
@@ -102,7 +104,9 @@  discard block
 block discarded – undo
102 104
  */
103 105
 function planet_parse_class($class_string, $pattern="", $replacement="")
104 106
 {
105
-	if(empty($class_string)) return;
107
+	if(empty($class_string)) {
108
+		return;
109
+	}
106 110
 	$patterns = array("/\[CLASS_PREFIX\]/");
107 111
 	$replacements = array(ucfirst(strtolower($GLOBALS["moddirname"])));
108 112
 	if(!empty($pattern) && !is_array($pattern) && !is_array($replacement)){
@@ -135,7 +139,9 @@  discard block
 block discarded – undo
135 139
  */
136 140
 function planet_parse_function($function_string, $pattern="", $replacement="")
137 141
 {
138
-	if(empty($function_string)) return;
142
+	if(empty($function_string)) {
143
+		return;
144
+	}
139 145
 	$patterns = array("/\[DIRNAME\]/", "/\[VAR_PREFIX\]/");
140 146
 	$replacements = array($GLOBALS["moddirname"], $GLOBALS["VAR_PREFIX"]);
141 147
 	if(!empty($pattern) && !is_array($pattern) && !is_array($replacement)){
@@ -162,7 +168,9 @@  discard block
 block discarded – undo
162 168
  */
163 169
 function planet_formatTimestamp($time, $format = "")
164 170
 {
165
-	if(empty($time)) return "";
171
+	if(empty($time)) {
172
+		return "";
173
+	}
166 174
 	return formatTimestamp($time, $format);
167 175
 }
168 176
 
@@ -172,7 +180,9 @@  discard block
 block discarded – undo
172 180
  */
173 181
 function &planet_getUnameFromId( $userid, $usereal = 0, $linked = false )
174 182
 {
175
-	if(!is_array($userid))  $userid = array($userid);
183
+	if(!is_array($userid)) {
184
+		$userid = array($userid);
185
+	}
176 186
 	$users = mod_getUnameFromIds($userid, $usereal, $linked);
177 187
 
178 188
     return $users;
@@ -191,9 +201,13 @@  discard block
 block discarded – undo
191 201
 	$myts =& MyTextSanitizer::getInstance();
192 202
 	$link_array = preg_split("/(\r\n|\r|\n)( *)/", $text);
193 203
     $links = array();
194
-    if(count($link_array)>0) foreach($link_array as $link){
204
+    if(count($link_array)>0) {
205
+    	foreach($link_array as $link){
195 206
 	    @list($url, $title) = array_map("trim",preg_split("/ /", $link, 2));
196
-	    if(empty($url)) continue;
207
+    }
208
+	    if(empty($url)) {
209
+	    	continue;
210
+	    }
197 211
 	    //if(empty($title)) $title = $url;
198 212
 	    $links[] = array("url"=>$url, "title"=>$myts->htmlSpecialChars($title));
199 213
     }
@@ -220,7 +234,9 @@  discard block
 block discarded – undo
220 234
 {
221 235
 	$blog_handler =& xoops_getmodulehandler("blog", $GLOBALS["moddirname"]);
222 236
 	$blog_obj =& $blog_handler->get($article->getVar("blog_id"));
223
-	if(!$pattern = $blog_obj->getVar("blog_trackback")) return false;
237
+	if(!$pattern = $blog_obj->getVar("blog_trackback")) {
238
+		return false;
239
+	}
224 240
 	@list($pat, $rep) = array_map("trim",preg_split("#[\s]+#", $pattern));
225 241
 	$trackback_url = preg_replace("#".$pat."#", $rep, $article_obj->getVar("art_link"));
226 242
 	return planet_trackback($trackback_url, $article);
@@ -271,7 +287,7 @@  discard block
 block discarded – undo
271 287
 		if($fp = fopen($debug_file, "a")){
272 288
 			fwrite($fp, $fr);
273 289
 			fclose($fp);
274
-		}else{
290
+		} else{
275 291
 		}
276 292
 	}
277 293
 	@fclose($fs);
@@ -301,9 +317,11 @@  discard block
 block discarded – undo
301 317
 	$home = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/";
302 318
 	$rss2_url = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/xml.php".URL_DELIMITER."rss2.0/".$id;
303 319
 	
304
-	if ( !$client->query('weblogUpdates.extendedPing', $blogname, $home, $rss2_url ) ) // then try a normal ping
320
+	if ( !$client->query('weblogUpdates.extendedPing', $blogname, $home, $rss2_url ) ) {
321
+		// then try a normal ping
305 322
 		$client->query('weblogUpdates.ping', $blogname, $home);
306
-}
323
+	}
324
+	}
307 325
 
308 326
 /**
309 327
  * Function to respond to a trackback
@@ -350,8 +368,10 @@  discard block
 block discarded – undo
350 368
 	if($isArray) {
351 369
 		$_value = ($value)?explode(",", $value):array();
352 370
 		$value = array();
353
-		if(count($_value)>0) foreach($_value as $string){
371
+		if(count($_value)>0) {
372
+			foreach($_value as $string){
354 373
 			$key = substr($string, 0, strpos($string,"|"));
374
+		}
355 375
 			$val = substr($string, (strpos($string,"|")+1));
356 376
 			$value[$key] = $val;
357 377
 		}
@@ -379,9 +399,15 @@  discard block
 block discarded – undo
379 399
 
380 400
 function planet_remote_content($url)
381 401
 {
382
-    if($data = planet_fetch_snoopy($url)) return $data;
383
-    if($data = planet_fetch_CURL($url)) return $data;
384
-    if($data = planet_fetch_fopen($url)) return $data;
402
+    if($data = planet_fetch_snoopy($url)) {
403
+    	return $data;
404
+    }
405
+    if($data = planet_fetch_CURL($url)) {
406
+    	return $data;
407
+    }
408
+    if($data = planet_fetch_fopen($url)) {
409
+    	return $data;
410
+    }
385 411
    	return false;
386 412
 }
387 413
 
@@ -398,7 +424,9 @@  discard block
 block discarded – undo
398 424
 
399 425
 function planet_fetch_CURL($url)
400 426
 {
401
-    if (!function_exists('curl_init') ) return false;
427
+    if (!function_exists('curl_init') ) {
428
+    	return false;
429
+    }
402 430
     $ch = curl_init();    // initialize curl handle
403 431
     curl_setopt($ch, CURLOPT_URL, $url); // set url to post to
404 432
     curl_setopt($ch, CURLOPT_FAILONERROR, 1);
@@ -412,7 +440,9 @@  discard block
 block discarded – undo
412 440
 
413 441
 function planet_fetch_fopen($url)
414 442
 {
415
-	if(!$fp = @fopen ($url, 'r')) return false;
443
+	if(!$fp = @fopen ($url, 'r')) {
444
+		return false;
445
+	}
416 446
     $data = "";
417 447
     while (!feof($fp)) {
418 448
         $data .= fgets ($fp, 1024);
Please login to merge, or discard this patch.
index.php 3 patches
Switch Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -165,18 +165,18 @@
 block discarded – undo
165 165
 
166 166
 $tags = empty($list)?"":array($article_prefix."art_title", $article_prefix."blog_id", $article_prefix."art_time");
167 167
 switch($query_type){
168
-case "category":
169
-	$articles_obj =& $article_handler->getByCategory($criteria, $tags);
170
-	$count_article = $article_handler->getCountByCategory($criteria);
171
-	break;
172
-case "bookmark":
173
-	$articles_obj =& $article_handler->getByBookmark($criteria, $tags);
174
-	$count_article = $article_handler->getCountByBookmark($criteria);
175
-	break;
176
-default:
177
-	$articles_obj =& $article_handler->getAll($criteria, $tags);
178
-	$count_article = $article_handler->getCount($criteria);
179
-	break;
168
+	case "category":
169
+		$articles_obj =& $article_handler->getByCategory($criteria, $tags);
170
+		$count_article = $article_handler->getCountByCategory($criteria);
171
+		break;
172
+	case "bookmark":
173
+		$articles_obj =& $article_handler->getByBookmark($criteria, $tags);
174
+		$count_article = $article_handler->getCountByBookmark($criteria);
175
+		break;
176
+	default:
177
+		$articles_obj =& $article_handler->getAll($criteria, $tags);
178
+		$count_article = $article_handler->getCount($criteria);
179
+		break;
180 180
 }
181 181
 
182 182
 if(!empty($blog_data)){
Please login to merge, or discard this patch.
Spacing   +72 added lines, -72 removed lines patch added patch discarded remove patch
@@ -26,46 +26,46 @@  discard block
 block discarded – undo
26 26
 // ------------------------------------------------------------------------ //
27 27
 include "header.php";
28 28
 
29
-if(preg_match("/\/notification_update\.php/i", $_SERVER['REQUEST_URI'], $matches)){
29
+if (preg_match("/\/notification_update\.php/i", $_SERVER['REQUEST_URI'], $matches)) {
30 30
 	include XOOPS_ROOT_PATH.'/include/notification_update.php';
31 31
 	exit();
32 32
 }
33 33
 
34
-if($REQUEST_URI_parsed = planet_parse_args($args_num, $args, $args_str)){
34
+if ($REQUEST_URI_parsed = planet_parse_args($args_num, $args, $args_str)) {
35 35
 	$args["start"] = @$args_num[0];
36 36
 	$args["sort"] = @$args_str[0];
37 37
 }
38 38
 
39 39
 /* Start */
40
-$start = intval( empty($_GET["start"])?@$args["start"]:$_GET["start"] );
40
+$start = intval(empty($_GET["start"]) ? @$args["start"] : $_GET["start"]);
41 41
 /* Specified Category */
42
-$category_id = intval( empty($_GET["category"])?@$args["category"]:$_GET["category"] );
42
+$category_id = intval(empty($_GET["category"]) ? @$args["category"] : $_GET["category"]);
43 43
 /* Specified Blog */
44
-$blog_id = intval( empty($_GET["blog"])?@$args["blog"]:$_GET["blog"] );
44
+$blog_id = intval(empty($_GET["blog"]) ? @$args["blog"] : $_GET["blog"]);
45 45
 /* Specified Bookmar(Favorite) UID */
46
-$uid = intval( empty($_GET["uid"])?@$args["uid"]:$_GET["uid"] );
46
+$uid = intval(empty($_GET["uid"]) ? @$args["uid"] : $_GET["uid"]);
47 47
 /* Sort by term */
48
-$sort = empty($_GET["sort"])?@$args["sort"]:$_GET["sort"];
48
+$sort = empty($_GET["sort"]) ? @$args["sort"] : $_GET["sort"];
49 49
 /* Display as list */
50
-$list = intval( empty($_GET["list"])?@$args["list"]:$_GET["list"] );
50
+$list = intval(empty($_GET["list"]) ? @$args["list"] : $_GET["list"]);
51 51
 
52 52
 // restore $_SERVER['REQUEST_URI']
53
-if(!empty($REQUEST_URI_parsed)){
53
+if (!empty($REQUEST_URI_parsed)) {
54 54
 	$args_REQUEST_URI = array();
55
-	$_args =array("start", "sort", "uid", "list");
56
-	foreach($_args as $arg){
57
-		if(!empty(${$arg})){
58
-			$args_REQUEST_URI[] = $arg ."=". ${$arg};
55
+	$_args = array("start", "sort", "uid", "list");
56
+	foreach ($_args as $arg) {
57
+		if (!empty(${$arg})) {
58
+			$args_REQUEST_URI[] = $arg."=".${$arg};
59 59
 		}
60 60
 	}
61
-	if(!empty($blog_id)){
62
-		$args_REQUEST_URI[] = "blog=". $blog_id;
61
+	if (!empty($blog_id)) {
62
+		$args_REQUEST_URI[] = "blog=".$blog_id;
63 63
 	}
64
-	if(!empty($category_id)){
65
-		$args_REQUEST_URI[] = "category=". $category_id;
64
+	if (!empty($category_id)) {
65
+		$args_REQUEST_URI[] = "category=".$category_id;
66 66
 	}
67 67
 	$_SERVER['REQUEST_URI'] = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php".
68
-		(empty($args_REQUEST_URI)?"":"?".implode("&",$args_REQUEST_URI));
68
+		(empty($args_REQUEST_URI) ? "" : "?".implode("&", $args_REQUEST_URI));
69 69
 }
70 70
 
71 71
 $xoopsOption["template_main"] = planet_getTemplate("index");
@@ -76,20 +76,20 @@  discard block
 block discarded – undo
76 76
 	';
77 77
 
78 78
 $xoopsOption["xoops_module_header"] = $xoops_module_header;
79
-include_once( XOOPS_ROOT_PATH . "/header.php" );
79
+include_once(XOOPS_ROOT_PATH."/header.php");
80 80
 include XOOPS_ROOT_PATH."/modules/".$xoopsModule->getVar("dirname")."/include/vars.php";
81 81
 
82 82
 // Following part will not be executed after cache
83
-$category_handler =& xoops_getmodulehandler("category", $GLOBALS["moddirname"]);
84
-$blog_handler =& xoops_getmodulehandler("blog", $GLOBALS["moddirname"]);
85
-$article_handler =& xoops_getmodulehandler("article", $GLOBALS["moddirname"]);
83
+$category_handler = & xoops_getmodulehandler("category", $GLOBALS["moddirname"]);
84
+$blog_handler = & xoops_getmodulehandler("blog", $GLOBALS["moddirname"]);
85
+$article_handler = & xoops_getmodulehandler("article", $GLOBALS["moddirname"]);
86 86
 
87
-$limit = empty($list)? $xoopsModuleConfig["articles_perpage"] : $xoopsModuleConfig["list_perpage"];
87
+$limit = empty($list) ? $xoopsModuleConfig["articles_perpage"] : $xoopsModuleConfig["list_perpage"];
88 88
 $query_type = "";
89 89
 $criteria = new CriteriaCompo();
90 90
 $article_prefix = "";
91 91
 /* Specific category */
92
-if($category_id >0){
92
+if ($category_id>0) {
93 93
 	$category_obj = $category_handler->get($category_id);
94 94
 	$criteria->add(new Criteria("bc.cat_id", $category_id));
95 95
 	$uid = 0;
@@ -99,15 +99,15 @@  discard block
 block discarded – undo
99 99
 	$article_prefix = "a.";
100 100
 }
101 101
 /* Specific blog */	
102
-if($blog_id>0){
103
-	$blog_obj =& $blog_handler->get($blog_id);
104
-	if($blog_obj->getVar("blog_status") || 
105
-		(is_object($xoopsUser) && $xoopsUser->getVar("uid")== $blog_obj->getVar("blog_submitter"))
106
-		){
102
+if ($blog_id>0) {
103
+	$blog_obj = & $blog_handler->get($blog_id);
104
+	if ($blog_obj->getVar("blog_status") || 
105
+		(is_object($xoopsUser) && $xoopsUser->getVar("uid") == $blog_obj->getVar("blog_submitter"))
106
+		) {
107 107
 		$criteria->add(new Criteria("blog_id", $blog_id));
108 108
 		$category_id = 0;
109 109
 		$uid = 0;
110
-		$bookmark_handler =& xoops_getmodulehandler("bookmark", $GLOBALS["moddirname"]);
110
+		$bookmark_handler = & xoops_getmodulehandler("bookmark", $GLOBALS["moddirname"]);
111 111
 		$blog_data = array(
112 112
 			"id"=>$blog_id,
113 113
 			"title"=>$blog_obj->getVar("blog_title"),
@@ -126,11 +126,11 @@  discard block
 block discarded – undo
126 126
 	$article_prefix = "";
127 127
 }
128 128
 /* User bookmarks(favorites) */
129
-if($uid >0){
129
+if ($uid>0) {
130 130
 	$criteria->add(new Criteria("bm.bm_uid", $uid));
131 131
 	$category_id = 0;
132 132
 	$blog_id = 0;
133
-	$bookmark_handler =& xoops_getmodulehandler("bookmark", $GLOBALS["moddirname"]);
133
+	$bookmark_handler = & xoops_getmodulehandler("bookmark", $GLOBALS["moddirname"]);
134 134
 	$user_data = array(
135 135
 		"uid"=>$uid, 
136 136
 		"name"=>XoopsUser::getUnameFromID($uid),
@@ -142,8 +142,8 @@  discard block
 block discarded – undo
142 142
 
143 143
 /* Sort */
144 144
 $order = "DESC";
145
-$sort = empty($sort)?"time":$sort;
146
-switch($sort){
145
+$sort = empty($sort) ? "time" : $sort;
146
+switch ($sort) {
147 147
 	case "views":
148 148
 		$sortby = $article_prefix."art_views";
149 149
 		break;
@@ -163,25 +163,25 @@  discard block
 block discarded – undo
163 163
 $criteria->setStart($start);
164 164
 $criteria->setLimit($limit);
165 165
 
166
-$tags = empty($list)?"":array($article_prefix."art_title", $article_prefix."blog_id", $article_prefix."art_time");
167
-switch($query_type){
166
+$tags = empty($list) ? "" : array($article_prefix."art_title", $article_prefix."blog_id", $article_prefix."art_time");
167
+switch ($query_type) {
168 168
 case "category":
169
-	$articles_obj =& $article_handler->getByCategory($criteria, $tags);
169
+	$articles_obj = & $article_handler->getByCategory($criteria, $tags);
170 170
 	$count_article = $article_handler->getCountByCategory($criteria);
171 171
 	break;
172 172
 case "bookmark":
173
-	$articles_obj =& $article_handler->getByBookmark($criteria, $tags);
173
+	$articles_obj = & $article_handler->getByBookmark($criteria, $tags);
174 174
 	$count_article = $article_handler->getCountByBookmark($criteria);
175 175
 	break;
176 176
 default:
177
-	$articles_obj =& $article_handler->getAll($criteria, $tags);
177
+	$articles_obj = & $article_handler->getAll($criteria, $tags);
178 178
 	$count_article = $article_handler->getCount($criteria);
179 179
 	break;
180 180
 }
181 181
 
182
-if(!empty($blog_data)){
182
+if (!empty($blog_data)) {
183 183
 	$blogs[$blog_data["id"]] = $blog_data["title"];
184
-}else{
184
+}else {
185 185
 	$blog_array = array();
186 186
 	foreach (array_keys($articles_obj) as $id) {
187 187
 		$blog_array[$articles_obj[$id]->getVar("blog_id")] = 1;
@@ -199,7 +199,7 @@  discard block
 block discarded – undo
199 199
 		"time" => $articles_obj[$id]->getTime(),
200 200
 		"blog"=> array("id"=>$articles_obj[$id]->getVar("blog_id"), "title"=>$blogs[$articles_obj[$id]->getVar("blog_id")])
201 201
 		);
202
-	if(empty($list)){
202
+	if (empty($list)) {
203 203
 		$_article = array_merge($_article, array(
204 204
 			"author" => $articles_obj[$id]->getVar("art_author"),
205 205
 			"views"=> $articles_obj[$id]->getVar("art_views"),
@@ -208,9 +208,9 @@  discard block
 block discarded – undo
208 208
 			"rates"=> $articles_obj[$id]->getVar("art_rates")
209 209
 			)
210 210
 		);
211
-		if(!empty($xoopsModuleConfig["display_summary"])){
211
+		if (!empty($xoopsModuleConfig["display_summary"])) {
212 212
 			$_article["content"] = $articles_obj[$id]->getSummary();
213
-		}else{
213
+		}else {
214 214
 			$_article["content"] = $articles_obj[$id]->getVar("art_content");
215 215
 		}
216 216
 	}
@@ -219,46 +219,46 @@  discard block
 block discarded – undo
219 219
 }
220 220
 unset($articles_obj);
221 221
 
222
-if ( $count_article > $limit) {
222
+if ($count_article>$limit) {
223 223
 	include(XOOPS_ROOT_PATH."/class/pagenav.php");
224 224
 	$start_link = array();
225
-	if($sort) $start_link[] = "sort=".$sort;
226
-	if($category_id) $start_link[] = "category=".$category_id;
227
-	if($blog_id) $start_link[] = "blog=".$blog_id;
228
-	if($list) $start_link[] = "list=".$list;
225
+	if ($sort) $start_link[] = "sort=".$sort;
226
+	if ($category_id) $start_link[] = "category=".$category_id;
227
+	if ($blog_id) $start_link[] = "blog=".$blog_id;
228
+	if ($list) $start_link[] = "list=".$list;
229 229
 	$nav = new XoopsPageNav($count_article, $limit, $start, "start", implode("&amp;", $start_link));
230 230
 	$pagenav = $nav->renderNav(4);
231
-} else {
231
+}else {
232 232
 	$pagenav = "";
233 233
 }
234 234
 
235
-$xoopsTpl -> assign("xoops_module_header", $xoops_module_header );
236
-$xoopsTpl -> assign("dirname", $GLOBALS["moddirname"] );
235
+$xoopsTpl -> assign("xoops_module_header", $xoops_module_header);
236
+$xoopsTpl -> assign("dirname", $GLOBALS["moddirname"]);
237 237
 
238
-if($category_id || $blog_id || $uid){
238
+if ($category_id || $blog_id || $uid) {
239 239
 	$xoopsTpl -> assign("link_index", "<a href=\"".XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php\" title=\"".planet_constant("MD_INDEX")."\" target=\"_self\">".planet_constant("MD_INDEX")."</a>");
240 240
 }
241 241
 
242 242
 $link_switch = "<a href=\"".XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php".
243
-	(empty($category_id)?"":"/c".$category_id).
244
-	(empty($uid)?"":"/u".$uid).
245
-	(empty($blog_id)?"":"/b".$blog_id).
246
-	(empty($list)?"/l1":"").
247
-	"\" title=\"".(empty($list)?planet_constant("MD_LISTVIEW"):planet_constant("MD_FULLVIEW"))."\">".(empty($list)?planet_constant("MD_LISTVIEW"):planet_constant("MD_FULLVIEW"))."</a>";
243
+	(empty($category_id) ? "" : "/c".$category_id).
244
+	(empty($uid) ? "" : "/u".$uid).
245
+	(empty($blog_id) ? "" : "/b".$blog_id).
246
+	(empty($list) ? "/l1" : "").
247
+	"\" title=\"".(empty($list) ? planet_constant("MD_LISTVIEW") : planet_constant("MD_FULLVIEW"))."\">".(empty($list) ? planet_constant("MD_LISTVIEW") : planet_constant("MD_FULLVIEW"))."</a>";
248 248
 $xoopsTpl -> assign("link_switch", $link_switch);
249 249
 
250 250
 $link_blogs = "<a href=\"".XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/view.blogs.php".
251
-	(empty($category_id)?"":"/c".$category_id).
252
-	(empty($uid)?"":"/u".$uid).
251
+	(empty($category_id) ? "" : "/c".$category_id).
252
+	(empty($uid) ? "" : "/u".$uid).
253 253
 	"\" title=\"".planet_constant("MD_BLOGS")."\">".planet_constant("MD_BLOGS").
254 254
 	"</a>";
255 255
 $xoopsTpl -> assign("link_blogs", $link_blogs);
256 256
 
257
-if(empty($uid) && is_object($xoopsUser)){
257
+if (empty($uid) && is_object($xoopsUser)) {
258 258
 	$xoopsTpl -> assign("link_bookmark", "<a href=\"".XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php".URL_DELIMITER."u".$xoopsUser->getVar("uid")."\" title=\"".planet_constant("MD_BOOKMARKS")."\" target=\"_self\">".planet_constant("MD_BOOKMARKS")."</a>");
259 259
 }
260 260
 
261
-if($xoopsModuleConfig["newblog_submit"]==1 || is_object($xoopsUser)){
261
+if ($xoopsModuleConfig["newblog_submit"] == 1 || is_object($xoopsUser)) {
262 262
 	$xoopsTpl -> assign("link_submit", "<a href=\"".XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/action.blog.php\" title=\""._SUBMIT."\" target=\"_blank\">"._SUBMIT."</a>");
263 263
 }
264 264
 
@@ -270,21 +270,21 @@  discard block
 block discarded – undo
270 270
 $xoopsTpl -> assign("pagenav", $pagenav);
271 271
 $xoopsTpl -> assign("is_list", !empty($list));
272 272
 
273
-$xoopsTpl -> assign("user_level", !is_object($xoopsUser)?0:($xoopsUser->isAdmin()?2:1));
274
-if(empty($xoopsModuleConfig["anonymous_rate"]) && !is_object($xoopsUser)){
275
-}elseif($blog_id>0){
273
+$xoopsTpl -> assign("user_level", !is_object($xoopsUser) ? 0 : ($xoopsUser->isAdmin() ? 2 : 1));
274
+if (empty($xoopsModuleConfig["anonymous_rate"]) && !is_object($xoopsUser)) {
275
+}elseif ($blog_id>0) {
276 276
 	$xoopsTpl -> assign("canrate", 1);
277 277
 }
278 278
 
279 279
 $sort_link = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php".
280
-	(empty($category_id)?"":"/c".$category_id).
281
-	(empty($uid)?"":"/u".$uid).
282
-	(empty($blog_id)?"":"/b".$blog_id).
283
-	(empty($list)?"":"/l1");
280
+	(empty($category_id) ? "" : "/c".$category_id).
281
+	(empty($uid) ? "" : "/u".$uid).
282
+	(empty($blog_id) ? "" : "/b".$blog_id).
283
+	(empty($list) ? "" : "/l1");
284 284
 $valid_sorts = array("views"=>planet_constant("MD_VIEWS"), "rating"=>planet_constant("MD_RATING"), "time"=>planet_constant("MD_TIME"), "default"=>planet_constant("MD_DEFAULT"));
285 285
 $sortlinks = array();
286
-foreach($valid_sorts as $val=>$name){
287
-	if($val == $sort) continue;
286
+foreach ($valid_sorts as $val=>$name) {
287
+	if ($val == $sort) continue;
288 288
 	$sortlinks[] = "<a href=\"".$sort_link."/".$val."\">".$name."</a>";
289 289
 }
290 290
 $xoopsTpl -> assign("link_sort", implode(" | ", $sortlinks));
@@ -293,7 +293,7 @@  discard block
 block discarded – undo
293 293
 $xoopsTpl->assign('do_pseudocron', $xoopsModuleConfig["do_pseudocron"]);
294 294
 
295 295
 // for notification
296
-if(!empty($blog_id)){
296
+if (!empty($blog_id)) {
297 297
 	//$_SERVER['REQUEST_URI'] = XOOPS_URL."/modules/".$GLOBALS["moddirname"]."/index.php";
298 298
 	$_GET["blog"] = $blog_id;
299 299
 }
Please login to merge, or discard this patch.
Braces   +18 added lines, -8 removed lines patch added patch discarded remove patch
@@ -181,7 +181,7 @@  discard block
 block discarded – undo
181 181
 
182 182
 if(!empty($blog_data)){
183 183
 	$blogs[$blog_data["id"]] = $blog_data["title"];
184
-}else{
184
+} else{
185 185
 	$blog_array = array();
186 186
 	foreach (array_keys($articles_obj) as $id) {
187 187
 		$blog_array[$articles_obj[$id]->getVar("blog_id")] = 1;
@@ -210,7 +210,7 @@  discard block
 block discarded – undo
210 210
 		);
211 211
 		if(!empty($xoopsModuleConfig["display_summary"])){
212 212
 			$_article["content"] = $articles_obj[$id]->getSummary();
213
-		}else{
213
+		} else{
214 214
 			$_article["content"] = $articles_obj[$id]->getVar("art_content");
215 215
 		}
216 216
 	}
@@ -222,10 +222,18 @@  discard block
 block discarded – undo
222 222
 if ( $count_article > $limit) {
223 223
 	include(XOOPS_ROOT_PATH."/class/pagenav.php");
224 224
 	$start_link = array();
225
-	if($sort) $start_link[] = "sort=".$sort;
226
-	if($category_id) $start_link[] = "category=".$category_id;
227
-	if($blog_id) $start_link[] = "blog=".$blog_id;
228
-	if($list) $start_link[] = "list=".$list;
225
+	if($sort) {
226
+		$start_link[] = "sort=".$sort;
227
+	}
228
+	if($category_id) {
229
+		$start_link[] = "category=".$category_id;
230
+	}
231
+	if($blog_id) {
232
+		$start_link[] = "blog=".$blog_id;
233
+	}
234
+	if($list) {
235
+		$start_link[] = "list=".$list;
236
+	}
229 237
 	$nav = new XoopsPageNav($count_article, $limit, $start, "start", implode("&amp;", $start_link));
230 238
 	$pagenav = $nav->renderNav(4);
231 239
 } else {
@@ -272,7 +280,7 @@  discard block
 block discarded – undo
272 280
 
273 281
 $xoopsTpl -> assign("user_level", !is_object($xoopsUser)?0:($xoopsUser->isAdmin()?2:1));
274 282
 if(empty($xoopsModuleConfig["anonymous_rate"]) && !is_object($xoopsUser)){
275
-}elseif($blog_id>0){
283
+} elseif($blog_id>0){
276 284
 	$xoopsTpl -> assign("canrate", 1);
277 285
 }
278 286
 
@@ -284,7 +292,9 @@  discard block
 block discarded – undo
284 292
 $valid_sorts = array("views"=>planet_constant("MD_VIEWS"), "rating"=>planet_constant("MD_RATING"), "time"=>planet_constant("MD_TIME"), "default"=>planet_constant("MD_DEFAULT"));
285 293
 $sortlinks = array();
286 294
 foreach($valid_sorts as $val=>$name){
287
-	if($val == $sort) continue;
295
+	if($val == $sort) {
296
+		continue;
297
+	}
288 298
 	$sortlinks[] = "<a href=\"".$sort_link."/".$val."\">".$name."</a>";
289 299
 }
290 300
 $xoopsTpl -> assign("link_sort", implode(" | ", $sortlinks));
Please login to merge, or discard this patch.