示例#1
0
 function newPost()
 {
     if (!$this->_checkUser($this->params[1], $this->params[2])) {
         $this->response->add(new XoopsXmlRpcFault(104));
     } else {
         if (!($fields =& $this->_getPostFields(null, $this->params[0]))) {
             $this->response->add(new XoopsXmlRpcFault(106));
         } else {
             $missing = array();
             foreach ($fields as $tag => $detail) {
                 if (!isset($this->params[3][$tag])) {
                     $data = $this->_getTagCdata($this->params[3]['xoops_text'], $tag, true);
                     if (trim($data) == '') {
                         if ($detail['required']) {
                             $missing[] = $tag;
                         }
                     } else {
                         $post[$tag] =& $data;
                     }
                 } else {
                     $post[$tag] =& $this->params[3][$tag];
                 }
             }
             if (count($missing) > 0) {
                 $msg = '';
                 foreach ($missing as $m) {
                     $msg .= '<' . $m . '> ';
                 }
                 $this->response->add(new XoopsXmlRpcFault(109, $msg));
             } 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();
                 $error = false;
                 if (intval($this->params[4]) > 0) {
                     if (!$this->_checkAdmin()) {
                         // non admin users cannot publish
                         $error = true;
                         $this->response->add(new XoopsXmlRpcFault(111));
                     } else {
                         $story->setType('admin');
                         $story->setApproved(true);
                         $story->setPublished(time());
                     }
                 } else {
                     if (!$this->_checkAdmin()) {
                         $story->setType('user');
                     } else {
                         $story->setType('admin');
                     }
                 }
                 if (!$error) {
                     if (isset($post['categories']) && !empty($post['categories'][0])) {
                         $story->setTopicId(intval($post['categories'][0]['categoryId']));
                     } else {
                         $story->setTopicId(1);
                     }
                     $story->setTitle(addslashes(trim($post['title'])));
                     if (isset($post['moretext'])) {
                         $story->setBodytext(addslashes(trim($post['moretext'])));
                     }
                     if (!isset($post['hometext'])) {
                         $story->setHometext(addslashes(trim($this->params[3]['xoops_text'])));
                     } else {
                         $story->setHometext(addslashes(trim($post['hometext'])));
                     }
                     $story->setUid($this->user->getVar('uid'));
                     $story->setHostname($_SERVER['REMOTE_ADDR']);
                     if (!$this->_checkAdmin()) {
                         $story->setNohtml(1);
                     } else {
                         $story->setNohtml(0);
                     }
                     $story->setNosmiley(0);
                     $story->setNotifyPub(1);
                     $story->setTopicalign('R');
                     $ret = $story->store();
                     if (!$ret) {
                         $this->response->add(new XoopsXmlRpcFault(106));
                     } else {
                         $this->response->add(new XoopsXmlRpcString($ret));
                     }
                 }
             }
         }
     }
 }
示例#2
0
     if ($xoopsUser->isAdmin($xoopsModule->mid())) {
         $nohtml_db = empty($nohtml) ? 0 : 1;
     }
 } else {
     if ($xoopsModuleConfig['anonpost'] == 1) {
         $uid = 0;
     } else {
         redirect_header("index.php", 3, _NOPERM);
         exit;
     }
 }
 $story = new NewsStory();
 $story->setTitle($subject);
 $story->setHometext($message);
 $story->setUid($uid);
 $story->setTopicId($topic_id);
 $story->setHostname(xoops_getenv('REMOTE_ADDR'));
 $story->setNohtml($nohtml_db);
 $nosmiley = isset($nosmiley) ? intval($nosmiley) : 0;
 $notifypub = isset($notifypub) ? intval($notifypub) : 0;
 $story->setNosmiley($nosmiley);
 $story->setNotifyPub($notifypub);
 $story->setType('user');
 if ($xoopsModuleConfig['autoapprove'] == 1) {
     $approve = 1;
     $story->setApproved($approve);
     $story->setPublished(time());
     $story->setExpired(0);
     $story->setTopicalign('R');
 }
 $result = $story->store();
示例#3
0
         $storyid = intval($_POST['storyid']);
     } else {
         $storyid = 0;
     }
 }
 if (empty($storyid)) {
     $story = new NewsStory();
     $editmode = false;
 } else {
     $story = new NewsStory($storyid);
     $editmode = true;
 }
 $story->setUid($uid);
 $story->setTitle($_POST['title']);
 $story->setHometext($_POST['hometext']);
 $story->setTopicId(intval($_POST['topic_id']));
 $story->setHostname(xoops_getenv('REMOTE_ADDR'));
 $story->setNohtml($nohtml_db);
 $nosmiley = isset($_POST['nosmiley']) ? intval($_POST['nosmiley']) : 0;
 $story->setNosmiley($nosmiley);
 $notifypub = isset($_POST['notifypub']) ? intval($_POST['notifypub']) : 0;
 $story->setNotifyPub($notifypub);
 $story->setType($_POST['type']);
 if (!empty($_POST['autodate']) && $approveprivilege) {
     $publish_date = $_POST['publish_date'];
     $pubdate = strtotime($publish_date['date']) + $publish_date['time'];
     //$offset = $xoopsUser -> timezone() - $xoopsConfig['server_TZ'];
     //$pubdate = $pubdate - ( $offset * 3600 );
     $story->setPublished($pubdate);
 }
 if (!empty($_POST['autoexpdate']) && $approveprivilege) {
示例#4
0
} else {
    redirect_header('index.php', 3, _MD_ERRORPOST);
}
switch ($op) {
    case 'post':
        //get the post
        $post_handler =& xoops_getmodulehandler('post', 'newbb');
        $post = $post_handler->get($post_id);
        $story = new NewsStory();
        $story->setTitle($post->getVar('subject', 'e'));
        /**/
        $story->setHometext($post->getVar('post_text', 'e'));
        /**/
        $story->setUid($post->getVar('uid'));
        /**/
        $story->setTopicId(1);
        /**/
        $story->setHostname(xoops_getenv('REMOTE_ADDR'));
        /**/
        $dohtml = $post->getVar('dohtml');
        $nohtml = empty($dohtml) ? 1 : 0;
        $story->setNohtml($nohtml);
        /**/
        $story->setNosmiley(0);
        /**/
        $story->setNotifyPub(0);
        /**/
        $story->setType('admin');
        $story->setExpired(0);
        /**/
        $story->setTopicdisplay(0);
示例#5
0
     } else {
         if (!empty($_POST['movetotop'])) {
             $story->setPublished(time());
         }
     }
     if (!empty($_POST['autoexpdate'])) {
         $expdate = mktime($_POST['autoexphour'], $_POST['autoexpmin'], 0, $_POST['autoexpmonth'], $_POST['autoexpday'], $_POST['autoexpyear']);
         if (!empty($autoexpdate)) {
             $offset = $xoopsUser->timezone() - $xoopsConfig['server_TZ'];
         }
         $expdate = $expdate - $offset * 3600;
         $story->setExpired($expdate);
     }
 }
 $story->setApproved($_POST['approve']);
 $story->setTopicId($_POST['topicid']);
 $story->setTitle($_POST['title']);
 $story->setHometext($_POST['hometext']);
 $story->setBodytext($_POST['bodytext']);
 $nohtml = empty($_POST['nohtml']) ? 0 : 1;
 $nosmiley = empty($_POST['nosmiley']) ? 0 : 1;
 $story->setNohtml($nohtml);
 $story->setNosmiley($nosmiley);
 $story->setIhome($_POST['ihome']);
 $story->setTopicalign($_POST['topicalign']);
 $story->setTopicdisplay($_POST['topicdisplay']);
 $story->store();
 $notification_handler =& xoops_gethandler('notification');
 $tags = array();
 $tags['STORY_NAME'] = $story->title();
 $tags['STORY_URL'] = XOOPS_URL . '/modules/' . $xoopsModule->getVar('dirname') . '/article.php?storyid=' . $story->storyid();
示例#6
0
 // We create the story
 $news = new NewsStory();
 $news->setUid($text_lastversion['uid']);
 $news->setTitle($article['title']);
 $news->created = $article['created'];
 $news->setPublished($article['published']);
 $news->setExpired($article['expired']);
 $news->setHostname($article['hostname']);
 $news->setNohtml($article['nohtml']);
 $news->setNosmiley($article['nosmiley']);
 $news->setHometext($text_lastversion['hometext']);
 $news->setBodytext($text_lastversion['bodytext'] . $links . $forum);
 $news->Setkeywords('');
 $news->Setdescription('');
 $news->counter = $article['counter'];
 $news->setTopicId($news_topicid);
 $news->setIhome($article['ihome']);
 $news->setNotifyPub($article['notifypub']);
 $news->story_type = $article['story_type'];
 $news->setTopicdisplay($article['topicdisplay']);
 $news->setTopicalign($article['topicalign']);
 $news->setComments($article['comments']);
 $news->rating = $article['rating'];
 $news->votes = $votes['cpt'];
 $approved = $article['published'] > 0 ? true : false;
 $news->approved = $approved;
 $news->store($approved);
 echo '<br>&nbsp;&nbsp;This story was imported : ' . $news->title();
 $news_newsid = $news->storyid();
 // ********************
 // The files