Example #1
0
 function &getPost($respond = true)
 {
     if (!$this->_checkUser($this->params[1], $this->params[2])) {
         $this->response->add(new XoopsXmlRpcFault(104));
     } else {
         // will be removed... don't worry if this looks bad
         include_once XOOPS_ROOT_PATH . '/modules/news/class/class.newsstory.php';
         $story = new NewsStory($this->params[0]);
         $ret = array('uid' => $story->uid(), 'published' => $story->published(), 'storyid' => $story->storyId(), 'title' => $story->title('Edit'), 'hometext' => $story->hometext('Edit'), 'moretext' => $story->bodytext('Edit'));
         if (!$respond) {
             return $ret;
         } else {
             if (!$ret) {
                 $this->response->add(new XoopsXmlRpcFault(106));
             } else {
                 $struct = new XoopsXmlRpcStruct();
                 $content = '';
                 foreach ($ret as $key => $value) {
                     switch ($key) {
                         case 'uid':
                             $struct->add('userid', new XoopsXmlRpcString($value));
                             break;
                         case 'published':
                             $struct->add('dateCreated', new XoopsXmlRpcDatetime($value));
                             break;
                         case 'storyid':
                             $struct->add('postid', new XoopsXmlRpcString($value));
                             $struct->add('link', new XoopsXmlRpcString(XOOPS_URL . '/modules/news/article.php?item_id=' . $value));
                             $struct->add('permaLink', new XoopsXmlRpcString(XOOPS_URL . '/modules/news/article.php?item_id=' . $value));
                             break;
                         case 'title':
                             $struct->add('title', new XoopsXmlRpcString($value));
                             break;
                         default:
                             $content .= '<' . $key . '>' . trim($value) . '</' . $key . '>';
                             break;
                     }
                 }
                 $struct->add('description', new XoopsXmlRpcString($content));
                 $this->response->add($struct);
             }
         }
     }
 }