function PrintPage($storyid) { global $xoopsConfig, $xoopsModule; $story = new NewsStory($storyid); $datetime = formatTimestamp($story->published()); echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'; echo '<html><head>'; echo '<meta http-equiv="Content-Type" content="text/html; charset=' . _CHARSET . '" />'; echo '<title>' . $xoopsConfig['sitename'] . '</title>'; echo '<meta name="AUTHOR" content="' . $xoopsConfig['sitename'] . '" />'; echo '<meta name="COPYRIGHT" content="Copyright (c) 2001 by ' . $xoopsConfig['sitename'] . '" />'; echo '<meta name="DESCRIPTION" content="' . $xoopsConfig['slogan'] . '" />'; echo '<meta name="GENERATOR" content="' . XOOPS_VERSION . '" />'; echo '<body bgcolor="#ffffff" text="#000000" onload="window.print()"> <table border="0"><tr><td align="center"> <table border="0" width="640" cellpadding="0" cellspacing="1" bgcolor="#000000"><tr><td> <table border="0" width="640" cellpadding="20" cellspacing="1" bgcolor="#ffffff"><tr><td align="center"> <img src="' . XOOPS_URL . '/images/logo.gif" border="0" alt="" /><br /><br /> <h3>' . $story->title() . '</h3> <small><b>' . _NW_DATE . '</b> ' . $datetime . ' | <b>' . _NW_TOPICC . '</b> ' . $story->topic_title() . '</small><br /><br /></td></tr>'; echo '<tr valign="top" style="font:12px;"><td>' . $story->hometext() . '<br />'; $bodytext = $story->bodytext(); $bodytext = str_replace("[pagebreak]", "<br style=\"page-break-after:always;\">", $bodytext); if ($bodytext != '') { echo $bodytext . '<br /><br />'; } echo '</td></tr></table></td></tr></table> <br /><br />'; printf(_NW_THISCOMESFROM, $xoopsConfig['sitename']); echo '<br /><a href="' . XOOPS_URL . '/">' . XOOPS_URL . '</a><br /><br /> ' . _NW_URLFORSTORY . ' <!-- Tag below can be used to display Permalink image --><!--img src="' . XOOPS_URL . '/modules/' . $xoopsModule->dirname() . '/images/x.gif" /--><br /> <a href="' . XOOPS_URL . '/modules/' . $xoopsModule->dirname() . '/article.php?storyid=' . $story->storyid() . '">' . XOOPS_URL . '/article.php?storyid=' . $story->storyid() . '</a> </td></tr></table> </body> </html> '; }
function editPost() { if (!$this->_checkUser($this->params[1], $this->params[2])) { $this->response->add(new XoopsXmlRpcFault(104)); } else { if (!($fields =& $this->_getPostFields($this->params[0]))) { } 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($this->params[0]); $storyid = $story->storyid(); if (empty($storyid)) { $this->response->add(new XoopsXmlRpcFault(106)); } elseif (!$this->_checkAdmin()) { $this->response->add(new XoopsXmlRpcFault(111)); } else { $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']))); } if ($this->params[4]) { $story->setApproved(true); $story->setPublished(time()); } $story->setTopicalign('R'); if (!$story->store()) { $this->response->add(new XoopsXmlRpcFault(106)); } else { $this->response->add(new XoopsXmlRpcBoolean(true)); } } } } } }
/** * Notes about the spotlight : * If you have restricted topics on index page (in fact if the program must completly respect the permissions) and if * the news you have selected to be viewed in the spotlight can't be viewed by someone then the spotlight is not visible ! * This is available in the classical and in the tabbed view. * But if you have uncheck the option "Restrict topics on index page", then the news will be visible but users without * permissions will be rejected when they will try to read news content. * * Also, if you have selected a tabbed view and wanted to use the Spotlight but did not choosed a story, then the block * will switch to the "most recent news" mode (the visible news will be searched according to the permissions) */ function b_news_top_show($options) { global $xoopsConfig; include_once XOOPS_ROOT_PATH . '/modules/news/include/functions.php'; $myts =& MyTextSanitizer::getInstance(); $block = array(); $displayname = news_getmoduleoption('displayname'); $tabskin = news_getmoduleoption('tabskin'); if (file_exists(XOOPS_ROOT_PATH . '/modules/news/language/' . $xoopsConfig['language'] . '/main.php')) { include_once XOOPS_ROOT_PATH . '/modules/news/language/' . $xoopsConfig['language'] . '/main.php'; } else { include_once XOOPS_ROOT_PATH . '/modules/news/language/english/main.php'; } $block['displayview'] = $options[8]; $block['tabskin'] = $tabskin; $block['imagesurl'] = XOOPS_URL . '/modules/news/images/'; $restricted = news_getmoduleoption('restrictindex'); $dateformat = news_getmoduleoption('dateformat'); $infotips = news_getmoduleoption('infotips'); $newsrating = news_getmoduleoption('ratenews'); if ($dateformat == '') { $dateformat = 's'; } $perm_verified = false; $news_visible = true; // Is the spotlight visible ? if ($options[4] == 1 && $restricted && $options[5] == 0) { $perm_verified = true; $permittedtopics = news_MygetItemIds(); $permstory = new NewsStory($options[6]); if (!in_array($permstory->topicid(), $permittedtopics)) { $usespotlight = false; $news_visible = false; $topicstitles = array(); } $options[4] == 0; } // Try to see what tabs are visibles (if we are in restricted view of course) if ($options[8] == 2 && $restricted && $options[14] != 0) { $topics2 = array(); $permittedtopics = news_MygetItemIds(); $topics = array_slice($options, 14); foreach ($topics as $onetopic) { if (in_array($onetopic, $permittedtopics)) { $topics2[] = $onetopic; } } $before = array_slice($options, 0, 14); $options = array_merge($before, $topics2); } if ($options[8] == 2) { // Tabbed view ******************************************************************************************** $defcolors[1] = array('#F90', '#FFFFFF', '#F90', '#C60', '#999'); // Bar Style $defcolors[2] = array('#F90', '#FFFFFF', '#F90', '#AAA', '#666'); // Beveled $defcolors[3] = array('#F90', '#FFFFFF', '', '#789', '#789'); // Classic $defcolors[4] = array('#F90', '#FFFFFF', '', '', ''); // Folders $defcolors[5] = array('#F90', '#FFFFFF', '#CCC', 'inherit', '#999'); // MacOs $defcolors[6] = array('#F90', '#FFFFFF', '#FFF', '#DDD', '#999'); // Plain $defcolors[7] = array('#F90', '#FFFFFF', '', '', ''); // Rounded $defcolors[8] = array('#F90', '#FFFFFF', '#F90', '#930', '#C60'); // ZDnet $myurl = $_SERVER['PHP_SELF']; if (substr($myurl, strlen($myurl) - 1, 1) == '/') { $myurl .= 'index.php'; } $myurl .= '?'; foreach ($_GET as $key => $value) { if ($key != 'NewsTab') { $myurl .= $key . '=' . $value . '&'; } } $block['url'] = $myurl; $tabscount = 0; $usespotlight = false; if (isset($_GET['NewsTab'])) { $_SESSION['NewsTab'] = intval($_GET['NewsTab']); $currenttab = intval($_GET['NewsTab']); } elseif (isset($_SESSION['NewsTab'])) { $currenttab = intval($_SESSION['NewsTab']); } else { $currenttab = 0; } $tmpstory = new NewsStory(); $topic = new NewsTopic(); $topicstitles = array(); if ($options[4] == 1) { // Spotlight enabled $topicstitles[0] = _MB_NEWS_SPOTLIGHT_TITLE; $tabscount++; $usespotlight = true; } if ($options[5] == 0 && $restricted) { // Use a specific news and we are in restricted mode if (!$perm_verified) { $permittedtopics = news_MygetItemIds(); $permstory = new NewsStory($options[6]); if (!in_array($permstory->topicid(), $permittedtopics)) { $usespotlight = false; $topicstitles = array(); } //unset($permstory); } else { if (!$news_visible) { $usespotlight = false; $topicstitles = array(); } } } $block['use_spotlight'] = $usespotlight; if (isset($options[14]) && $options[14] != 0) { // Topic to use $topics = array_slice($options, 14); $tabscount += count($topics); $topicstitles = $topic->getTopicTitleFromId($topics, $topicstitles); } $tabs = array(); if ($usespotlight) { $tabs[] = array('id' => 0, 'title' => _MB_NEWS_SPOTLIGHT_TITLE); } if (count($topics) > 0) { foreach ($topics as $onetopic) { if (isset($topicstitles[$onetopic])) { $tabs[] = array('id' => $onetopic, 'title' => $topicstitles[$onetopic]['title'], 'picture' => $topicstitles[$onetopic]['picture']); } } } $block['tabs'] = $tabs; $block['current_is_spotlight'] = false; $block['current_tab'] = $currenttab; $block['use_rating'] = $newsrating; if ($currenttab == 0 && $usespotlight) { // Spotlight or not ? $block['current_is_spotlight'] = true; if ($options[5] == 0 && $options[6] == 0) { // If the story to use was no selected then we switch to the "recent news" mode. $options[5] = 1; } if ($options[5] == 0) { // Use a specific news if (!isset($permstory)) { $tmpstory->NewsStory($options[6]); } else { $tmpstory = $permstory; } } else { // Use the most recent news $stories = array(); $stories = $tmpstory->getAllPublished(1, 0, $restricted, 0, 1, true, $options[0]); if (count($stories) > 0) { $firststory = $stories[0]; $tmpstory->NewsStory($firststory->storyid()); } else { $block['use_spotlight'] = false; } } $spotlight = array(); $spotlight['title'] = $tmpstory->title(); if ($options[7] != '') { $spotlight['image'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $tmpstory->storyid(), $myts->displayTarea($options[7], $tmpstory->nohtml)); } $spotlight['text'] = $tmpstory->hometext(); // Added 16 february 2007 ***************************************** $story_user = null; $story_user = new XoopsUser($tmpstory->uid()); if (is_object($story_user)) { $spotlight['avatar'] = XOOPS_UPLOAD_URL . '/' . $story_user->getVar('user_avatar'); } // **************************************************************** $spotlight['id'] = $tmpstory->storyid(); $spotlight['date'] = formatTimestamp($tmpstory->published(), $dateformat); $spotlight['hits'] = $tmpstory->counter(); $spotlight['rating'] = number_format($tmpstory->rating(), 2); $spotlight['votes'] = $tmpstory->votes(); if (strlen(xoops_trim($tmpstory->bodytext())) > 0) { $spotlight['read_more'] = true; } else { $spotlight['read_more'] = false; } $spotlight['readmore'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $tmpstory->storyid(), _MB_READMORE); $spotlight['title_with_link'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $tmpstory->storyid(), $tmpstory->title()); if ($tmpstory->votes() == 1) { $spotlight['number_votes'] = _NW_ONEVOTE; } else { $spotlight['number_votes'] = sprintf(_NW_NUMVOTES, $tmpstory->votes()); } $spotlight['votes_with_text'] = sprintf(_NW_NUMVOTES, $tmpstory->votes()); $spotlight['topicid'] = $tmpstory->topicid(); $spotlight['topic_title'] = $tmpstory->topic_title(); // Added, topic's image and description $spotlight['topic_image'] = XOOPS_URL . '/modules/news/images/topics/' . $tmpstory->topic_imgurl(); $spotlight['topic_description'] = $myts->displayTarea($tmpstory->topic_description, 1); if ($displayname != 3) { $spotlight['author'] = sprintf("%s %s", _POSTEDBY, $tmpstory->uname()); $spotlight['author_with_link'] = sprintf("%s <a href='%s'>%s</a>", _POSTEDBY, XOOPS_URL . '/userinfo.php?uid=' . $tmpstory->uid(), $tmpstory->uname()); } else { $spotlight['author'] = ''; $spotlight['author_with_link'] = ''; } $spotlight['author_id'] = $tmpstory->uid(); // Create the summary table under the spotlight text if (isset($options[14]) && $options[14] == 0) { // Use all topics $stories = $tmpstory->getAllPublished($options[1], 0, $restricted, 0, 1, true, $options[0]); } else { // Use some topics $topics = array_slice($options, 14); $stories = $tmpstory->getAllPublished($options[1], 0, $restricted, $topics, 1, true, $options[0]); } if (count($stories) > 0) { foreach ($stories as $key => $story) { $news = array(); $title = $story->title(); if (strlen($title) > $options[2]) { $title = xoops_substr($title, 0, $options[2] + 3); } $news['title'] = $title; $news['id'] = $story->storyid(); $news['date'] = formatTimestamp($story->published(), $dateformat); $news['hits'] = $story->counter(); $news['rating'] = number_format($story->rating(), 2); $news['votes'] = $story->votes(); $news['topicid'] = $story->topicid(); $news['topic_title'] = $story->topic_title(); $news['topic_color'] = '#' . $myts->displayTarea($story->topic_color); if ($displayname != 3) { $news['author'] = sprintf("%s %s", _POSTEDBY, $story->uname()); } else { $news['author'] = ''; } if ($options[3] > 0) { $html = $story->nohtml() == 1 ? 0 : 1; $news['teaser'] = news_truncate_tagsafe($myts->displayTarea($story->hometext(), $html), $options[3] + 3); } else { $news['teaser'] = ''; } if ($infotips > 0) { $news['infotips'] = ' title="' . news_make_infotips($story->hometext()) . '"'; } else { $news['infotips'] = ''; } $news['title_with_link'] = sprintf("<a href='%s'%s>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), $news['infotips'], $title); $spotlight['news'][] = $news; } } $block['spotlight'] = $spotlight; } else { if ($tabscount > 0) { $topics = array_slice($options, 14); $thetopic = $currenttab; $stories = $tmpstory->getAllPublished($options[1], 0, $restricted, $thetopic, 1, true, $options[0]); $topic->getTopic($thetopic); // Added, topic's image and description $block['topic_image'] = XOOPS_URL . '/modules/news/images/topics/' . $topic->topic_imgurl(); $block['topic_description'] = $topic->topic_description(); $smallheader = array(); $stats = $topic->getTopicMiniStats($thetopic); $smallheader[] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/index.php?storytopic=' . $thetopic, _MB_READMORE); $smallheader[] = sprintf("%u %s", $stats['count'], _NW_ARTICLES); $smallheader[] = sprintf("%u %s", $stats['reads'], _READS); if (count($stories) > 0) { foreach ($stories as $key => $story) { $news = array(); $title = $story->title(); if (strlen($title) > $options[2]) { $title = news_truncate_tagsafe($title, $options[2] + 3); } if ($options[7] != '') { $news['image'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), $myts->displayTarea($options[7], $story->nohtml)); } if ($options[3] > 0) { $html = $story->nohtml() == 1 ? 0 : 1; $news['text'] = news_truncate_tagsafe($myts->displayTarea($story->hometext(), $html), $options[3] + 3); } else { $news['text'] = ''; } if ($story->votes() == 1) { $news['number_votes'] = _NW_ONEVOTE; } else { $news['number_votes'] = sprintf(_NW_NUMVOTES, $story->votes()); } if ($infotips > 0) { $news['infotips'] = ' title="' . news_make_infotips($story->hometext()) . '"'; } else { $news['infotips'] = ''; } $news['title'] = sprintf("<a href='%s' %s>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), $news['infotips'], $title); $news['id'] = $story->storyid(); $news['date'] = formatTimestamp($story->published(), $dateformat); $news['hits'] = $story->counter(); $news['rating'] = number_format($story->rating(), 2); $news['votes'] = $story->votes(); $news['topicid'] = $story->topicid(); $news['topic_title'] = $story->topic_title(); $news['topic_color'] = '#' . $myts->displayTarea($story->topic_color); if ($displayname != 3) { $news['author'] = sprintf("%s %s", _POSTEDBY, $story->uname()); } else { $news['author'] = ''; } $news['title_with_link'] = sprintf("<a href='%s'%s>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), $news['infotips'], $title); $block['news'][] = $news; } $block['smallheader'] = $smallheader; } } } $block['lang_on'] = _ON; // on $block['lang_reads'] = _READS; // reads // Default values $block['color1'] = $defcolors[$tabskin][0]; $block['color2'] = $defcolors[$tabskin][1]; $block['color3'] = $defcolors[$tabskin][2]; $block['color4'] = $defcolors[$tabskin][3]; $block['color5'] = $defcolors[$tabskin][4]; if (xoops_trim($options[9]) != '') { $block['color1'] = $options[9]; } if (xoops_trim($options[10]) != '') { $block['color2'] = $options[10]; } if (xoops_trim($options[11]) != '') { $block['color3'] = $options[11]; } if (xoops_trim($options[12]) != '') { $block['color4'] = $options[12]; } if (xoops_trim($options[13]) != '') { $block['color5'] = $options[13]; } } else { // ************************ Classical view ************************************************************************************************************** $tmpstory = new NewsStory(); if (isset($options[14]) && $options[14] == 0) { $stories = $tmpstory->getAllPublished($options[1], 0, $restricted, 0, 1, true, $options[0]); } else { $topics = array_slice($options, 14); $stories = $tmpstory->getAllPublished($options[1], 0, $restricted, $topics, 1, true, $options[0]); } if (!count($stories)) { return ''; } $topic = new NewsTopic(); foreach ($stories as $key => $story) { $news = array(); $title = $story->title(); if (strlen($title) > $options[2]) { $title = xoops_substr($title, 0, $options[2] + 3); } //if spotlight is enabled and this is either the first article or the selected one if ($options[5] == 0 && $options[4] == 1 && ($options[6] > 0 && $options[6] == $story->storyid() || $options[6] == 0 && $key == 0)) { $spotlight = array(); $visible = true; if ($restricted) { $permittedtopics = news_MygetItemIds(); if (!in_array($story->topicid(), $permittedtopics)) { $visible = false; } } if ($visible) { $spotlight['title'] = $title; if ($options[7] != '') { $spotlight['image'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), $myts->displayTarea($options[7], $story->nohtml)); } // Added 16 february 2007 ***************************************** $story_user = null; $story_user = new XoopsUser($story->uid()); if (is_object($story_user)) { $spotlight['avatar'] = XOOPS_UPLOAD_URL . '/' . $story_user->getVar('user_avatar'); } // **************************************************************** $spotlight['text'] = $story->hometext(); $spotlight['id'] = $story->storyid(); $spotlight['date'] = formatTimestamp($story->published(), $dateformat); $spotlight['hits'] = $story->counter(); $spotlight['rating'] = $story->rating(); $spotlight['votes'] = $story->votes(); $spotlight['topicid'] = $story->topicid(); $spotlight['topic_title'] = $story->topic_title(); $spotlight['topic_color'] = '#' . $myts->displayTarea($story->topic_color); // Added, topic's image and description $spotlight['topic_image'] = XOOPS_URL . '/modules/news/images/topics/' . $story->topic_imgurl(); $spotlight['topic_description'] = $myts->displayTarea($story->topic_description, 1); if (strlen(xoops_trim($story->bodytext())) > 0) { $spotlight['read_more'] = true; } else { $spotlight['read_more'] = false; } if ($displayname != 3) { $spotlight['author'] = sprintf("%s %s", _POSTEDBY, $story->uname()); } else { $spotlight['author'] = ''; } } $block['spotlight'] = $spotlight; } else { $news['title'] = $title; $news['id'] = $story->storyid(); $news['date'] = formatTimestamp($story->published(), $dateformat); $news['hits'] = $story->counter(); $news['rating'] = $story->rating(); $news['votes'] = $story->votes(); $news['topicid'] = $story->topicid(); $news['topic_title'] = $story->topic_title(); $news['topic_color'] = '#' . $myts->displayTarea($story->topic_color); if ($displayname != 3) { $news['author'] = sprintf("%s %s", _POSTEDBY, $story->uname()); } else { $news['author'] = ''; } if ($options[3] > 0) { $html = $story->nohtml() == 1 ? 0 : 1; $news['teaser'] = news_truncate_tagsafe($myts->displayTarea($story->hometext(), $html), $options[3] + 3); $news['infotips'] = ''; } else { $news['teaser'] = ''; if ($infotips > 0) { $news['infotips'] = ' title="' . news_make_infotips($story->hometext()) . '"'; } else { $news['infotips'] = ''; } } $block['stories'][] = $news; } } // If spotlight article was not in the fetched stories if (!isset($spotlight) && $options[4]) { $block['use_spotlight'] = true; $visible = true; if ($options[5] == 0 && $restricted) { // Use a specific news and we are in restricted mode $permittedtopics = news_MygetItemIds(); $permstory = new NewsStory($options[6]); if (!in_array($permstory->topicid(), $permittedtopics)) { $visible = false; } unset($permstory); } if ($options[5] == 0) { // Use a specific news if ($visible) { $spotlightArticle = new NewsStory($options[6]); } else { $block['use_spotlight'] = false; } } else { // Use the most recent news $stories = array(); $stories = $tmpstory->getAllPublished(1, 0, $restricted, 0, 1, true, $options[0]); if (count($stories) > 0) { $firststory = $stories[0]; $spotlightArticle = new NewsStory($firststory->storyid()); } else { $block['use_spotlight'] = false; } } if ($block['use_spotlight'] == true) { $spotlight = array(); $spotlight['title'] = xoops_substr($spotlightArticle->title(), 0, $options[2] - 1); if ($options[7] != '') { $spotlight['image'] = sprintf("<a href='%s'>%s</a>", XOOPS_URL . '/modules/news/article.php?storyid=' . $spotlightArticle->storyid(), $myts->displayTarea($options[7], $spotlightArticle->nohtml)); } // Added 16 february 2007 ***************************************** $story_user = null; $story_user = new XoopsUser($spotlightArticle->uid()); if (is_object($story_user)) { $spotlight['avatar'] = XOOPS_UPLOAD_URL . '/' . $story_user->getVar('user_avatar'); } // **************************************************************** $spotlight['topicid'] = $spotlightArticle->topicid(); $spotlight['topic_title'] = $spotlightArticle->topic_title(); $spotlight['topic_color'] = '#' . $myts->displayTarea($spotlightArticle->topic_color); $spotlight['text'] = $spotlightArticle->hometext(); $spotlight['id'] = $spotlightArticle->storyid(); $spotlight['date'] = formatTimestamp($spotlightArticle->published(), $dateformat); $spotlight['hits'] = $spotlightArticle->counter(); $spotlight['rating'] = $spotlightArticle->rating(); $spotlight['votes'] = $spotlightArticle->votes(); // Added, topic's image and description $spotlight['topic_image'] = XOOPS_URL . '/modules/news/images/topics/' . $spotlightArticle->topic_imgurl(); $spotlight['topic_description'] = $myts->displayTarea($spotlightArticle->topic_description, 1); if ($displayname != 3) { $spotlight['author'] = sprintf("%s %s", _POSTEDBY, $spotlightArticle->uname()); } else { $spotlight['author'] = ''; } if (strlen(xoops_trim($spotlightArticle->bodytext())) > 0) { $spotlight['read_more'] = true; } else { $spotlight['read_more'] = false; } $block['spotlight'] = $spotlight; } } } if (isset($permstory)) { unset($permstory); } $block['lang_read_more'] = $myts->htmlSpecialChars(_MB_READMORE); // Read More... $block['lang_orderby'] = $myts->htmlSpecialChars(_MB_NEWS_ORDER); // "Order By" $block['lang_orderby_date'] = $myts->htmlSpecialChars(_MB_NEWS_DATE); // Published date $block['lang_orderby_hits'] = $myts->htmlSpecialChars(_MB_NEWS_HITS); // Number of Hits $block['lang_orderby_rating'] = $myts->htmlSpecialChars(_MB_NEWS_RATE); // Rating $block['sort'] = $options[0]; // "published" or "counter" or "rating" return $block; }
$tpl->assign('channel_desc', xoops_utf8_encode(htmlspecialchars($xoopsConfig['slogan'], ENT_QUOTES))); $tpl->assign('channel_lastbuild', formatTimestamp(time(), 'rss')); $tpl->assign('channel_webmaster', checkEmail($xoopsConfig['adminmail'], true)); // Fed up with spam $tpl->assign('channel_editor', checkEmail($xoopsConfig['adminmail'], true)); // Fed up with spam $tpl->assign('channel_category', 'News'); $tpl->assign('channel_generator', 'XOOPS'); $tpl->assign('channel_language', _LANGCODE); $tpl->assign('image_url', XOOPS_URL . '/images/logo.gif'); $dimention = getimagesize(XOOPS_ROOT_PATH . '/images/logo.gif'); if (empty($dimention[0])) { $width = 88; } else { $width = $dimention[0] > 144 ? 144 : $dimention[0]; } if (empty($dimention[1])) { $height = 31; } else { $height = $dimention[1] > 400 ? 400 : $dimention[1]; } $tpl->assign('image_width', $width); $tpl->assign('image_height', $height); $count = $sarray; foreach ($sarray as $story) { //$tpl->append('items', array('title' => xoops_utf8_encode(htmlspecialchars($story->title(), ENT_QUOTES)), 'link' => XOOPS_URL.'/modules/news/article.php?storyid='.$story->storyid(), 'guid' => XOOPS_URL.'/modules/news/article.php?storyid='.$story->storyid(), 'pubdate' => formatTimestamp($story->published(), 'rss'), 'description' => xoops_utf8_encode($myts->undoHtmlSpecialChars($story->hometext(), ENT_QUOTES)))); $tpl->append('items', array('title' => xoops_utf8_encode(htmlspecialchars($story->title(), ENT_QUOTES)), 'link' => XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), 'guid' => XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), 'pubdate' => formatTimestamp($story->published(), 'rss'), 'description' => xoops_utf8_encode(htmlspecialchars($story->hometext(), ENT_QUOTES)))); } } } $tpl->display('db:system_rss.html');
$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(); if ($result) { // Notification $notification_handler =& xoops_gethandler('notification'); $tags = array(); $tags['STORY_NAME'] = $subject; $tags['STORY_URL'] = XOOPS_URL . '/modules/' . $xoopsModule->getVar('dirname') . '/article.php?storyid=' . $story->storyid(); if ($xoopsModuleConfig['autoapprove'] == 1) { $notification_handler->triggerEvent('global', 0, 'new_story', $tags); } else { $tags['WAITINGSTORIES_URL'] = XOOPS_URL . '/modules/' . $xoopsModule->getVar('dirname') . '/admin/index.php?op=newarticle'; $notification_handler->triggerEvent('global', 0, 'story_submit', $tags); } // If notify checkbox is set, add subscription for approve if ($notifypub) { include_once XOOPS_ROOT_PATH . '/include/notification_constants.php'; $notification_handler->subscribe('story', $story->storyid(), 'approve', XOOPS_NOTIFICATION_MODE_SENDONCETHENDELETE); } /* if ($xoopsModuleConfig['notifysubmit'] == 1 ) { $xoopsMailer =& getMailer(); $xoopsMailer->useMail();
$story->Setpicture(basename($destname)); } else { echo _AM_UPLOAD_ERROR . ' ' . $uploader->getErrors(); } } else { echo $uploader->getErrors(); } } } } $destname = ''; $result = $story->store(); if ($result) { if ($approveprivilege && news_getmoduleoption('tags')) { $tag_handler = xoops_getmodulehandler('tag', 'tag'); $tag_handler->updateByItem($_POST['item_tag'], $story->storyid(), $xoopsModule->getVar('dirname'), 0); } if (!$editmode) { // Notification // TODO: modifier afin qu'en cas de prépublication, la notification ne se fasse pas $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(); // If notify checkbox is set, add subscription for approve if ($notifypub && $approve) { include_once XOOPS_ROOT_PATH . '/include/notification_constants.php'; $notification_handler->subscribe('story', $story->storyid(), 'approve', XOOPS_NOTIFICATION_MODE_SENDONCETHENDELETE, $xoopsModule->getVar('mid'), $story->uid()); } if ($approve == 1) { $notification_handler->triggerEvent('global', 0, 'new_story', $tags);
if (is_object($xoopsUser)) { if ($xoopsUser->isAdmin($xoopsModule->getVar('mid')) || news_getmoduleoption('authoredit') && $article->uid() == $xoopsUser->getVar('uid')) { $isadmin = true; $story['adminlink'] = $article->adminlink(); } } $story['topicid'] = $article->topicid(); $story['topic_color'] = '#' . $myts->displayTarea($article->topic_color); $story['imglink'] = ''; $story['align'] = ''; if ($article->topicdisplay()) { $story['imglink'] = $article->imglink(); $story['align'] = $article->topicalign(); } $story['hits'] = $article->counter(); $story['mail_link'] = 'mailto:?subject=' . sprintf(_NW_INTARTICLE, $xoopsConfig['sitename']) . '&body=' . sprintf(_NW_INTARTFOUND, $xoopsConfig['sitename']) . ': ' . XOOPS_URL . '/modules/news/article.php?storyid=' . $article->storyid(); $xoopsTpl->assign('lang_printerpage', _NW_PRINTERFRIENDLY); $xoopsTpl->assign('lang_sendstory', _NW_SENDSTORY); $xoopsTpl->assign('lang_pdfstory', _NW_MAKEPDF); $xoopsTpl->assign('lang_on', _ON); $xoopsTpl->assign('lang_postedby', _POSTEDBY); $xoopsTpl->assign('lang_reads', _READS); $xoopsTpl->assign('mail_link', 'mailto:?subject=' . sprintf(_NW_INTARTICLE, $xoopsConfig['sitename']) . '&body=' . sprintf(_NW_INTARTFOUND, $xoopsConfig['sitename']) . ': ' . XOOPS_URL . '/modules/news/article.php?storyid=' . $article->storyid()); if (xoops_trim($article->picture()) != '') { $xoopsTpl->assign('articlePicture', XOOPS_URL . '/modules/news/images/topics/' . $article->picture()); } else { $xoopsTpl->assign('articlePicture', ''); } $xoopsTpl->assign('lang_attached_files', _NW_ATTACHEDFILES); $sfiles = new sFiles(); $filesarr = $newsfiles = array();
$story->setExpired(0); /**/ $story->setPublished(0); /**/ $story->setApproved(0); /**/ //save the story $result = $story->store(); //notify if ($result) { $notification_handler =& xoops_gethandler('notification'); $tags['WAITINGSTORIES_URL'] = XOOPS_URL . '/modules/news/admin/index.php?op=newarticle'; $notification_handler->triggerEvent('global', 0, 'story_submit', $tags); $tags = array(); $tags['STORY_NAME'] = $post->getVar('subject', 'e'); $tags['STORY_URL'] = XOOPS_URL . '/modules/news/ticle.php?storyid=' . $story->storyid(); $tags['WAITINGSTORIES_URL'] = XOOPS_URL . '/modules/news/admin/index.php?op=newarticle'; $notification_handler->triggerEvent('global', 0, 'story_submit', $tags); } redirect_header(XOOPS_URL . '/modules/news/submit.php?op=edit&storyid=' . $story->storyid(), 3, _MD_THANKSSUBMIT); break; case 'form': default: echo "<form action='" . $_SERVER['PHP_SELF'] . "' method='post'>"; echo "<table border='0' cellpadding='1' cellspacing='0' align='center' width='95%'>"; echo "<tr>"; echo "<td align='center'><p style='margin:5px;'><h2>" . _MD_POSTTONEWS . "</h2></p>"; echo "<input type='hidden' name='post_id' value='" . $post_id . "' />"; echo "<input type='submit' name='post' value='" . _MD_SUBMIT . "' />"; echo "</td></tr></table></form>"; break;
$tpl->assign('channel_lastbuild', formatTimestamp(time(), 'rss')); $tpl->assign('channel_webmaster', checkEmail($xoopsConfig['adminmail'], true)); // Fed up with spam $tpl->assign('channel_editor', checkEmail($xoopsConfig['adminmail'], true)); // Fed up with spam $tpl->assign('channel_category', htmlspecialchars($xt->topic_title(), ENT_QUOTES)); $tpl->assign('channel_generator', 'XOOPS'); $tpl->assign('channel_language', _LANGCODE); $tpl->assign('image_url', XOOPS_URL . '/images/logo.gif'); $dimention = getimagesize(XOOPS_ROOT_PATH . '/images/logo.gif'); if (empty($dimention[0])) { $width = 88; } else { $width = $dimention[0] > 144 ? 144 : $dimention[0]; } if (empty($dimention[1])) { $height = 31; } else { $height = $dimention[1] > 400 ? 400 : $dimention[1]; } $tpl->assign('image_width', $width); $tpl->assign('image_height', $height); $count = $sarray; foreach ($sarray as $story) { $storytitle = htmlspecialchars($story->title(), ENT_QUOTES); $description = htmlspecialchars($story->hometext(), ENT_QUOTES); $tpl->append('items', array('title' => xoops_utf8_encode($storytitle), 'link' => XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), 'guid' => XOOPS_URL . '/modules/news/article.php?storyid=' . $story->storyid(), 'pubdate' => formatTimestamp($story->published(), 'rss'), 'description' => xoops_utf8_encode($description))); } } } $tpl->display('db:news_rss.html', $topicid);
$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(); if (!empty($isnew)) { $notification_handler->triggerEvent('story', $story->storyid(), 'approve', $tags); } $notification_handler->triggerEvent('global', 0, 'new_story', $tags); /* $poster = new XoopsUser($story->uid()); $subject = _AM_ARTPUBLISHED; $message = sprintf(_AM_HELLO,$poster->uname()); $message .= "\n\n"._AM_YOURARTPUB."\n\n"; $message .= _AM_TITLEC.$story->title()."\n"._AM_URLC.XOOPS_URL."/modules/".$xoopsModule->dirname()."/article.php?storyid=".$story->storyid()."\n"._AM_PUBLISHEDC.formatTimestamp($story->published(),"m",0)."\n\n"; $message .= $xoopsConfig['sitename']."\n".XOOPS_URL.""; $xoopsMailer =& getMailer(); $xoopsMailer->useMail(); $xoopsMailer->setToEmails($poster->getVar("email")); $xoopsMailer->setFromEmail($xoopsConfig['adminmail']);
/** * @param bool $respond * * @return array */ public 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); } } } return null; }
$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> This story was imported : ' . $news->title(); $news_newsid = $news->storyid(); // ******************** // The files $result4 = $db->query('SELECT * FROM ' . $ams_files . ' WHERE storyid=' . $ams_newsid); while ($file = $db->fetchArray($result4)) { $sfile = new sFiles(); $sfile->setFileRealName($file['filerealname']); $sfile->setStoryid($news_newsid); $sfile->date = $file['date']; $sfile->setMimetype($file['mimetype']); $sfile->setDownloadname($file['downloadname']); $sfile->counter = $file['counter']; $sfile->store(); echo '<br> This file was imported : ' . $sfile->getDownloadname(); $news_fileid = $sfile->fileid; }
$xoopsTpl->assign('currentyear', $fromyear); $xoopsTpl->assign('lang_actions', _NW_ACTIONS); $xoopsTpl->assign('lang_date', _NW_DATE); $xoopsTpl->assign('lang_views', _NW_VIEWS); // must adjust the selected time to server timestamp $timeoffset = $useroffset - $xoopsConfig['server_TZ']; $monthstart = mktime(0 - $timeoffset, 0, 0, $frommonth, 1, $fromyear); $monthend = mktime(23 - $timeoffset, 59, 59, $frommonth + 1, 0, $fromyear); $monthend = $monthend > time() ? time() : $monthend; $sql = "SELECT * FROM " . $xoopsDB->prefix("stories") . " WHERE published > {$monthstart} and published < {$monthend} ORDER by published DESC"; $result = $xoopsDB->query($sql); $count = 0; while ($myrow = $xoopsDB->fetchArray($result)) { $article = new NewsStory($myrow); $story = array(); $story['title'] = "<a href='index.php?storytopic=" . $article->topicid() . "'>" . $article->topic_title() . "</a>: <a href='article.php?storyid=" . $article->storyid() . "'>" . $article->title() . "</a>"; $story['counter'] = $article->counter(); $story['date'] = formatTimestamp($article->published(), "m", $useroffset); $story['print_link'] = 'print.php?storyid=' . $article->storyid(); $story['mail_link'] = 'mailto:?subject=' . sprintf(_NW_INTARTICLE, $xoopsConfig['sitename']) . '&body=' . sprintf(_NW_INTARTFOUND, $xoopsConfig['sitename']) . ': ' . XOOPS_URL . '/modules/' . $xoopsModule->dirname() . '/article.php?storyid=' . $article->storyid(); $xoopsTpl->append('stories', $story); $count++; } $xoopsTpl->assign('lang_printer', _NW_PRINTERFRIENDLY); $xoopsTpl->assign('lang_sendstory', _NW_SENDSTORY); $xoopsTpl->assign('lang_storytotal', sprintf(_NW_THEREAREINTOTAL, $count)); } else { $xoopsTpl->assign('show_articles', false); } $xoopsTpl->assign('lang_newsarchives', _NW_NEWSARCHIVES); include XOOPS_ROOT_PATH . "/footer.php";