Code Duplication    Length = 22-22 lines in 2 locations

htdocs/class/xml/rpc/metaweblogapi.php 2 locations

@@ 159-180 (lines=22) @@
156
            if (is_array($ret)) {
157
                $struct = new XoopsXmlRpcStruct();
158
                $content = '';
159
                foreach ($ret as $key => $value) {
160
                    $maptag = $this->_getXoopsTagMap($key);
161
                    switch ($maptag) {
162
                        case 'userid':
163
                            $struct->add('userid', new XoopsXmlRpcString($value));
164
                            break;
165
                        case 'dateCreated':
166
                            $struct->add('dateCreated', new XoopsXmlRpcDatetime($value));
167
                            break;
168
                        case 'postid':
169
                            $struct->add('postid', new XoopsXmlRpcString($value));
170
                            $struct->add('link', new XoopsXmlRpcString($xoops_url . '/modules/xoopssections/item.php?item=' . $value));
171
                            $struct->add('permaLink', new XoopsXmlRpcString($xoops_url . '/modules/xoopssections/item.php?item=' . $value));
172
                            break;
173
                        case 'title':
174
                            $struct->add('title', new XoopsXmlRpcString($value));
175
                            break;
176
                        default :
177
                            $content .= '<' . $key . '>' . trim($value) . '</' . $key . '>';
178
                            break;
179
                    }
180
                }
181
                $struct->add('description', new XoopsXmlRpcString($content));
182
                $this->response->add($struct);
183
            } else {
@@ 207-228 (lines=22) @@
204
                    for ($i = 0; $i < $count; ++$i) {
205
                        $struct = new XoopsXmlRpcStruct();
206
                        $content = '';
207
                        foreach ($ret[$i] as $key => $value) {
208
                            $maptag = $this->_getXoopsTagMap($key);
209
                            switch($maptag) {
210
                            case 'userid':
211
                                $struct->add('userid', new XoopsXmlRpcString($value));
212
                                break;
213
                            case 'dateCreated':
214
                                $struct->add('dateCreated', new XoopsXmlRpcDatetime($value));
215
                                break;
216
                            case 'postid':
217
                                $struct->add('postid', new XoopsXmlRpcString($value));
218
                                $struct->add('link', new XoopsXmlRpcString($xoops_url.'/modules/news/article.php?item_id='.$value));
219
                                $struct->add('permaLink', new XoopsXmlRpcString($xoops_url.'/modules/news/article.php?item_id='.$value));
220
                                break;
221
                            case 'title':
222
                                $struct->add('title', new XoopsXmlRpcString($value));
223
                                break;
224
                            default :
225
                                $content .= '<'.$key.'>'.trim($value).'</'.$key.'>';
226
                                break;
227
                            }
228
                        }
229
                        $struct->add('description', new XoopsXmlRpcString($content));
230
                        $arr->add($struct);
231
                        unset($struct);