[Feed-collector-svn] SF.net SVN: feed-collector: [76] trunk
Status: Beta
Brought to you by:
c167
From: <c1...@us...> - 2006-12-20 21:44:41
|
Revision: 76 http://feed-collector.svn.sourceforge.net/feed-collector/?rev=76&view=rev Author: c167 Date: 2006-12-20 13:44:39 -0800 (Wed, 20 Dec 2006) Log Message: ----------- Modified Paths: -------------- trunk/page_login.php trunk/page_main.php trunk/page_personal.php trunk/page_show_all_feeds.php trunk/page_show_feed.php trunk/statistics.php trunk/update_feeds.php Modified: trunk/page_login.php =================================================================== --- trunk/page_login.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/page_login.php 2006-12-20 21:44:39 UTC (rev 76) @@ -78,22 +78,17 @@ require_once "class/User_manager.php"; $user = new User_manager($db); if (false === HTTP_Session :: get("logged_in", false)) { - echo 1; if (isset ($_POST['submit'])) { - echo 2; - print_r($_POST); if (empty ($_POST['username']) or empty ($_POST['passwd'])) { - echo 4; - $main = displayLoginForm(LOGIN_NO_VALUES); + $main = displayLoginForm(LOGIN_WRONG_VALUES); } else { - echo 5; $login = $user->loginUser($_POST['username'], md5($_POST['passwd'])); switch ($login['state']) { case LOGIN_SUCCESSFULL : - echo 6; HTTP_Session :: set("logged_in", true); HTTP_Session :: set("uid", $login['id']); HTTP_Session :: set("username", $login['username']); + $user->updateUserAction(); if (isset ($_POST['cameFrom']) and true === in_array(basename($_POST['cameFrom']), $validPages)) { HTTP :: redirect("./" . $_POST['cameFrom']); die(); @@ -101,30 +96,25 @@ HTTP :: redirect("./page_main.php"); die(); } - break; - case LOGIN_WRONG_USERNAME : - echo 7; - $main = displayLoginForm(LOGIN_WRONG_USERNAME); + case LOGIN_WRONG_VALUES : + $main = displayLoginForm(LOGIN_WRONG_VALUES); HTTP_Session :: set("logged_in", false); break; - case LOGIN_WRONG_PASSWD : - echo 8; - $main = displayLoginForm(LOGIN_WRONG_PASSWD); + case LOGIN_INACTIVE : + $main = displayLoginForm(LOGIN_INACTIVE); HTTP_Session :: set("logged_in", false); break; default : - echo 9; - $main = displayLoginForm(LOGIN_WRONG_USERNAME); + $main = displayLoginForm(LOGIN_WRONG_VALUES); } } } else { - echo 3; $main = displayLoginForm(0); } } else { - header("Location: http://localhost/~stefan/ws32/feed-collector/trunk/page_main.php"); + HTTP :: redirect ("./page_main.php"); } ##################### @@ -167,26 +157,17 @@ function displayLoginForm($error) { switch ($error) { - case LOGIN_WRONG_PASSWD : - echo "a"; - $id_username = "ok"; + case LOGIN_WRONG_VALUES : + $id_username = "error"; $id_password = "error"; - $message = sprintf(" <p>%s</p>\n", _("Wrong password!")); + $message = sprintf(" <p>%s</p>\n", _("Unknown username. If you don't have a username then please <a href=\"./page_register.pgp\">register</a> a new one")); break; - case LOGIN_WRONG_USERNAME : - echo "b"; + case LOGIN_INACTIVE : $id_username = "error"; - $id_password = "ok"; - $message = sprintf(" <p>%s</p>\n", _("Unknown username. If you don't have a username then please <a href=\"./page_register.pgp\">register</a> a new one")); + $id_password = "error"; + $message = sprintf(" <p>%s</p>\n", _("This useraccount is not active. You should have received a mail with an access-key. If not, please look at your spam-folder or send a mail to the site-admin.")); break; - case LOGIN_NO_VALUES : - echo "c"; - $id_username = "ok"; - $id_password = "ok"; - $message = ""; - break; default : - echo "d"; $id_username = "ok"; $id_password = "ok"; $message = sprintf(" <p>%s</p>\n", _("Please enter you username and your password to login. Cookies have to be enabled from this point.")); Modified: trunk/page_main.php =================================================================== --- trunk/page_main.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/page_main.php 2006-12-20 21:44:39 UTC (rev 76) @@ -99,22 +99,22 @@ if (false === HTTP_Session :: get("logged_in", false)) { $midHeader_title_right = sprintf(" <form action=\"./page_login.php\" method=\"post\"><span>%s</span> <input type=\"submit\" name=\"submit\" value=\"%s\" /><br />\n" . " <input type=\"text\" name=\"username\" value=\"%s\" size=\"20\" /><br />\n" . - " <input type=\"password\" name=\"password\" value=\"%s\" /><br />\n" . + " <input type=\"password\" name=\"passwd\" value=\"%s\" /><br />\n" . " <input type=\"hidden\" name=\"cameFrom\" value=\"%s\" />" . " </form>\n" . " </div>", _("Login:"), _("Submit!"), _("Username"), _("Password"), basename($_SERVER['PHP_SELF'])); } else { $midHeader_title_right = sprintf(" <span>%s %s</span><br />\n" . - " <p id=\"userinfo\">%s %s</p>", _("Hello"), HTTP_Session :: get("username"), _("Your last login was at"), date("H:m:i", HTTP_Session :: get("lastLogin"))); + " <div id=\"userinfo\">%s %s</div>", _("Hello"), HTTP_Session :: get("username"), _("Your last login was at"), date("H:m:i", HTTP_Session :: get("lastLogin"))); } $design = str_replace("<!-- midHeader title right -->", $midHeader_title_right, $design); // navigation -$navigation = sprintf(" <a href=\"./page_main.php\" class=\"highlight\">%s</a> |\n <a href=\"./page_show_feeds.php\">%s</a> |\n <a href=\"./page_search.php\">%s</a> |\n <a href=\"./index.html\">%s</a> |\n <a href=\"./index.html\">%s</a> |\n", _("Home"), _("Show Feeds"), _("Search"), _("Show TAGs"), _("About")); +$navigation = sprintf(" <a href=\"./page_main.php\" class=\"highlight\">%s</a> |\n <a href=\"./page_show_feeds.php\">%s</a> |\n <a href=\"./page_search.php\">%s</a> |\n <a href=\"./page_show_all_feeds.php\">%s</a> |\n <a href=\"./page_show_feed_tag.php\">%s</a> |\n", _("Home"), _("Show Feeds"), _("Search"), _("Select a Feed"), _("TABs")); if (false === HTTP_Session :: get("logged_in", false)) { $navigation .= sprintf(" <a href=\"./page_login.php\">%s</a> |\n <a href=\"./page_register.php\">%s</a>", _("Login"), _("Register")); } else { - $navigation .= sprintf(" <a href=\"./page_profile.php\">%s</a>", _("Profile")); + $navigation .= sprintf(" <a href=\"./page_personal.php\">%s</a> |\n <a href=\"./page_logout.php\">%s</a>", _("Personal Page"), _("LogOut")); } $design = str_replace("<!-- navigation -->", $navigation, $design); @@ -152,7 +152,7 @@ $design = str_replace("<!-- latest news -->", $latest_news, $design); // box 1 -$box_1 = sprintf(" <h1>%s</h1>\n <p>%s %d<br />\n %s %d<br />\n %s %d<br />\n </p>\n <p>\n %s %d<br />\n %s %d<br />\n %s %d</p>", _("Statistic"), _("Fedds in the Database: "), $feed->stat_countFeeds(), _("Items over all:"), $feed->stat_countAllItems(), _("Average items per feed:"), $feed->stat_avgItemsPerFeed(), _("[ATOM 1.0] feeds:"), $feed->stat_countFeedTypes("ATOM 1.0"), _("[RDF 0.9] feeds:"), $feed->stat_countFeedTypes("RDF 0.9"), _("[RSS 2.0] feeds:"), $feed->stat_countFeedTypes("RSS 2.0")); +$box_1 = sprintf(" <h1>%s</h1>\n <p>%s %d<br />\n %s %d<br />\n %s %d<br />\n </p>\n <p>\n %s %d<br />\n %s %d<br />\n %s %d<br />\n %s %d</p>", _("Statistic"), _("Fedds in the Database: "), $feed->stat_countFeeds(), _("Items over all:"), $feed->stat_countAllItems(), _("Average items per feed:"), $feed->stat_avgItemsPerFeed(), _("[ATOM 1.0] feeds:"), $feed->stat_countFeedTypes("ATOM 1.0"), _("[RDF 0.9] feeds:"), $feed->stat_countFeedTypes("RDF 0.9"), _("[RSS 2.0] feeds:"), $feed->stat_countFeedTypes("RSS 2.0"), _("[RSS 1.0] feeds"), $feed->stat_countFeedTypes("RSS 1.0")); $design = str_replace("<!-- box 1 -->", $box_1, $design); // box 2 @@ -160,7 +160,7 @@ $box_2 = sprintf(" <h1>%d %s</h1>\n <ul>\n", $biggestfeeds, _("biggest feeds")); $biggest_feeds = $feed->getBiggestFeeds($biggestfeeds); foreach ($biggest_feeds as $biggest) { - $box_2 .= sprintf(" <li><a href=\"./index.php?page=show_feeds&feed=%s\">%s (%d%s)</a> </li>\n", $biggest['feed_db_name'], $biggest['feed_name'], $biggest['items'], _(" Items")); + $box_2 .= sprintf(" <li><a href=\"./page_show_feed.php?feed=%s\">%s (%d%s)</a> </li>\n", $biggest['feed_db_name'], $biggest['feed_name'], $biggest['items'], _(" Items")); } $box_2 .=" </ul>\n"; $design = str_replace("<!-- box 2 -->", $box_2, $design); @@ -170,7 +170,7 @@ $box_3 = sprintf(" <h1>%d %s</h1>\n <ul>\n", $newestfeeds, _("random feeds")); $random_feeds = $feed->getRandomFeeds($newestfeeds); foreach ($random_feeds as $randfeed) { - $box_3 .= sprintf(" <li><a href=\"./index.php?page=show_feeds&feed=%s\">%s (%d%s)</a> </li>\n", $randfeed['feed_db_name'], $randfeed['feed_name'], $randfeed['items'], _(" Items")); + $box_3 .= sprintf(" <li><a href=\"./page_show_feed.php?feed=%s\">%s (%d%s)</a> </li>\n", $randfeed['feed_db_name'], $randfeed['feed_name'], $randfeed['items'], _(" Items")); } $box_3 .= " </ul>\n"; @@ -180,7 +180,7 @@ $box_4 = sprintf(" <h1>%s</h1>\n <ul>\n", _("Newest feeds")); $newest_feeds = $feed->getNewestFeeds(6); foreach ($newest_feeds as $newest) { - $box_4 .= sprintf(" <li><a href=\"./index.php?page=show_feeds&feed=%s\"><!--•-->%s</a> %s (%d%s)</li>\n", $newest['feed_db_name'], $newest['feed_name'], date(("m.d.y H:m:s"), $newest['added']), $newest['items'], _(" Items")); + $box_4 .= sprintf(" <li><a href=\"./page_show_feeds.php?feed=%s\"><!--•-->%s</a> %s (%d%s)</li>\n", $newest['feed_db_name'], $newest['feed_name'], date(("m.d.y H:m:s"), $newest['added']), $newest['items'], _(" Items")); } $box_4 .= " </ul>"; $design = str_replace("<!-- box 4 -->", $box_4, $design); Modified: trunk/page_personal.php =================================================================== --- trunk/page_personal.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/page_personal.php 2006-12-20 21:44:39 UTC (rev 76) @@ -71,7 +71,7 @@ // // get the design -$design = file_get_contents("styles/default/page_show_feed.tpl", "r"); +$design = file_get_contents("styles/default/page_personal.tpl", "r"); # Header // title @@ -91,13 +91,13 @@ if (false === HTTP_Session :: get("logged_in", false)) { $midHeader_title_right = sprintf(" <form action=\"./page_login.php\" method=\"post\"><span>%s</span> <input type=\"submit\" name=\"submit\" value=\"%s\" /><br />\n" . " <input type=\"text\" name=\"username\" value=\"%s\" size=\"20\" /><br />\n" . - " <input type=\"text\" name=\"password\" value=\"%s\" /><br />\n" . + " <input type=\"password\" name=\"passwd\" value=\"%s\" /><br />\n" . " <input type=\"hidden\" name=\"cameFrom\" value=\"%s\" />" . " </form>\n" . " </div>", _("Login:"), _("Submit!"), _("Username"), _("Password"), basename($_SERVER['PHP_SELF'])); } else { $midHeader_title_right = sprintf(" <span>%s %s</span><br />\n" . - " <p id=\"userinfo\">%s %s</p>", _("Hello"), HTTP_Session :: get("username"), _("Your last login was at"), date("H:m:i", HTTP_Session :: get("lastLogin"))); + " <p id=\"userinfo\">%s %s</p>", _("Hello"), $user->getUsername(), _("Your last login was at"), date("H:m:i", HTTP_Session :: get("lastLogin"))); } $design = str_replace("<!-- midHeader title right -->", $midHeader_title_right, $design); Modified: trunk/page_show_all_feeds.php =================================================================== --- trunk/page_show_all_feeds.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/page_show_all_feeds.php 2006-12-20 21:44:39 UTC (rev 76) @@ -73,7 +73,7 @@ require_once "class/User_manager.php"; $user = new User_manager($db); -$maxpages = $feed->getMaxPages(10); +$maxpages = $feed->getFeedsMaxPages(10); $page = "main"; // Modified: trunk/page_show_feed.php =================================================================== --- trunk/page_show_feed.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/page_show_feed.php 2006-12-20 21:44:39 UTC (rev 76) @@ -65,18 +65,28 @@ require_once "class/User_manager.php"; $user = new User_manager($db); -$page = "main"; +############### +# Tag-Manager # +############### +require_once "class/Tag_manager.php"; +$tag_manager = new Tag_Manager($db); + +require_once "HTTP.php"; // // Now we're going to replace the placeholders in the template with the important content // +if (!isset ($_GET['feed'])) { + //HTTP :: redirect("./page_show_all_feeds.php"); +} else { + $maxpages = $feed->getItemsMaxPages($_GET['feed']); + $main = createItemsTable($_GET['feed'], $feed, detectActualPage($maxpages), 30); +} -// get the design $design = file_get_contents("styles/default/page_show_feed.tpl", "r"); # Header // title $title = "Feed-Collector"; -if (HTTP_Session :: get("personal_page", true)); $design = str_replace("<!-- title -->", $title, $design); // related sites @@ -115,43 +125,27 @@ */ # Main copy // main -HTTP_Session :: set("uid", 0); -if (HTTP_Session :: get("uid") >= 0 and HTTP_Session :: get("uid") < $user->getNumberOfUsers()) { - $cols = $user->getUserCols(HTTP_Session :: get("uid"), false); - $main = ""; - ############ - # Column 1 # - ############ - $main .= createColumn($cols, 1, $feed); +$design = str_replace("<!-- main -->", $main, $design); - ############ - # Column 2 # - ############ - $main .= createColumn($cols, 2, $feed); +// page-navigation +$page_navigation = displayPageNavi($maxpages, detectActualPage($maxpages), $_GET['feed']); +$design = str_replace("<!-- page-navigation -->", $page_navigation, $design); - ############ - # Column 3 # - ############ - $main .= createColumn($cols, 3, $feed); +# sideBar +// rightSideBar +$feedinfo = $feed->getFeedInfo($_GET['feed']); +$rightSideBar = sprintf(" <p class=\"sideBarTitle\">%s</p>\n\n <div class=\"sideBarText\"><strong>%s</strong><br />\n", _("Tags"), $feedinfo['feed_name']); +$tags = $tag_manager->getTags($_GET['feed']); +if (false == $tags) { +$rightSideBar .= sprintf("%s <a href=\"./page_add_tag.php?feed=%s\">%s</a>", _("No tag submitted yet, you can add one "), $_GET['feed'], _("here!")); } else { - $main = ""; + foreach ($tags as $tag) { + $rightSideBar .= sprintf(" <a href=\"./page_show_feed_tag.php?tag=%s\">%s</a>, \n", $tag, $tag); + } } -$design = str_replace("<!-- main -->", $main, $design); +$rightSideBar .= "\n </div>"; +$design = str_replace("<!-- rightSideBar -->", $rightSideBar, $design); -/* -# sideBar -// sideBarElement one -$sideBarElement_one = sprintf(" <p class=\"sideBarTitle\">%s</p>\n\n <div class=\"sideBarText\"><strong>? May 03</strong><br />\n Submitted revised version of Gila to <a href=\"http://www.oswd.org\">OSWD</a></div>\n\n <div class=\"sideBarText\"><strong>3 Feb 03</strong><br />\n Original version of Gila submitted</div>\n\n <a href=\"./index.html\" class=\"more\">more news »</a>", _("News")); -$design = str_replace("<!-- sideBarElement one -->", $sideBarElement_one, $design); - -// sideBarElement two -$sideBarElement_two = sprintf(" <p class=\"sideBarTitle\">Downloads</p>\n\n <div class=\"sideBarText\"><strong>Product Delta</strong><br />\n <a href=\"./index.html\">info</a> | <a href=\"./index.html\">download</a></div>\n <div class=\"sideBarText\"><strong>Product Echo</strong><br />\n <a href=\"./index.html\">info</a> | <a href=\"./index.html\">download</a></div>\n <div class=\"sideBarText\"><strong>Product Foxtrot</strong><br />\n <a href=\"./index.html\">info</a> | <a href=\"./index.html\">download</a></div>"); -$design = str_replace("<!-- sideBarElement two -->", $sideBarElement_two, $design); - -// sideBarElement three -$sideBarElement_three = sprintf(" <p class=\"sideBarTitle\">Validation</p>\n\n <div class=\"sideBarText\">Validate the <a href=\"http://validator.w3.org/check/referer\">XHTML</a>\n and <a href=\"http://jigsaw.w3.org/css-validator/check/referer\">CSS</a> of this page.</div>\n </div>"); -$design = str_replace("<!-- sideBarElement three -->", $sideBarElement_three, $design); -*/ # footer // footer $footer = sprintf(" <span class=\"doNotPrint\">\n %s\n <a href=\"mailto:c1...@us...\" title=\"the developsers email adress\">email the Webmaster</a><br />\n </span>\n\n <!-- <strong>URI »</strong> http://domain.is.invalid/prosimii/index.html -->\n • <strong>Updated »</strong> 2006-Oct-25 18:42 +1000 •", _("For comments or questions about this website, please")); @@ -159,19 +153,20 @@ echo $design; -function createColumn($cols, $number, $feed) { - $return = " <div class=\"column$number\">\n"; - foreach ($cols["column$number"] as $col) { - $return .= " <div id=\"$col\">\n"; - $feed_info = $feed->getFeedInfo($col); - $return .= sprintf(" <div class=\"feed_headline\">\n <a href=\"%s\">%s</a>\n </div>\n <ul>\n", $feed_info['site_url'], $feed_info['feed_name']); - $items = $feed->getNewestItems($col, 10); - for ($i = 0; $i < count($items); $i++) { - $return .= sprintf(" <li><a href=\"%s\">%s</a></li>\n", $items[$i]['url'], $items[$i]['title']); - } - $return .= " </ul>\n </div>\n"; +function createItemsTable($feedname, $feed, $count, $page) { + $items = $feed->getItemsPerPage($feedname, $count, $page); + if (false === $items) { + return "error!!!"; } - $return .= " </div>\n"; + $return = sprintf(" <table summary=\"%s\">\n", $feedname); + for ($i = count($items) - 1; $i >= 0; $i--) { + //foreach ($items as $list) { + $return .= sprintf(" <tr>\n" . + " <td><a id=\"n%d\" href=\"%s\">%s</a></td>\n" . + " </tr>\n", $items[$i]['id'], $items[$i]['url'], $items[$i]['title'], $items[$i]['summary']); + } + + $return .= " </table>"; return $return; } @@ -188,4 +183,31 @@ $number = $a3; return $number; } + +function displayPageNavi($maxpages, $page, $feedname) { + $return = _("Page: "); + for ($i = 1; $i <= $maxpages; $i++) { + if ($i !== 1) { + $return .= " | "; + } + if ($i !== $page) { + $return .= sprintf(" [<a href=\"./page_show_feed.php?feed=%s&page=%d\">%d</a>]", $feedname, $i, $i); + } else { + $return .= sprintf(" [%d]", $i); + } + } + return $return; +} + +function detectActualPage($maxpages) { + if (!isset ($_GET['page'])) { + return 1; + } + if ($maxpages < $_GET['page']) { + return $maxpages; + } + $page = $_GET['page']; + settype($page, 'int'); + return $page; +} ?> \ No newline at end of file Modified: trunk/statistics.php =================================================================== --- trunk/statistics.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/statistics.php 2006-12-20 21:44:39 UTC (rev 76) @@ -1,41 +1,56 @@ <?php + /** * This file is the main-control for the statistics. * It is optional, so there is no need to make it work ;) */ +require_once "MDB2.php"; +require_once "Log.php"; // Logger -require_once "XML/Feed/Parser.php"; # The PEAR::XML_PARSER +// some other stuff +require_once "inc/config.php"; +require_once "inc/definitions.php"; +$conf = array ( + 'error_prepend' => "<tt>", + 'error_append' => "</tt>", + 'linebreak' => "<br />\n" +); +$log = & Log :: singleton('display', '', '', $conf, $update['loglevel']); +$dsn = array ( + 'phptype' => DB_TYPE, + 'username' => DB_LOGIN, + 'password' => DB_PASSWD, + 'hostspec' => DB_HOST, + 'database' => DB_DATABASE +); +$options = array ( + 'debug' => 2, + 'result_buffering' => true, + 'portability' => MDB2_PORTABILITY_ALL +); -$feed_url = "http://www.heise.de/open/news/news-atom.xml"; -$feed_source = file_get_contents($feed_url); -try { -$feed = new XML_Feed_Parser($feed_source); -} catch (XML_Feed_Parser_Exception $e) { - die('Feed invalid: ' . $e->getMessage()); +$db = & MDB2 :: factory($dsn, $options); +if (PEAR :: isError($db)) { + $log->log($db->getMessage(), PEAR_LOG_ALERT); + $log->log(sprintf(_("Script ended with error at %d"), time()), PEAR_LOG_NOTICE); + die(); +} else { + $log->log(_("Successfully connected to the database"), PEAR_LOG_NOTICE); } -print_r($feed); -echo "<br /><br /><br /><br /><br />"; -foreach ($feed as $entry) { - print $entry->title ."<br />\n"; -} +$db->setFetchMode(MDB2_FETCHMODE_ASSOC); +$db->loadModule('Extended', null, false); -echo "<br />Number of Items: "; -$i = 0; -foreach($feed as $entry) { - $i++; -} -echo $i ."<br />"; -for($count = $i; $count >= 0; $count--) { - echo "<br />"; - echo $feed->getEntryByOffset($count); -} -//echo "<br />" .count($feed); -echo $a = $feed->getEntryByOffset(1); -echo "<br />"; -echo $a->title ."<br />" .$a->id ."<br />" .$a->updated ."<br />" .$a->summary; -//print_r($feed->); -$feed->free(); - +require_once "class/User_manager.php"; +$user = new User_Manager($db); +require_once "class/Feed_manager.php"; +$feed = new Feed_Manager($db); +require_once "class/Tag_manager.php"; +$tags = new Tag_Manager($db); +$feedname = "heise_online_news"; +$count = 30; +$page=1; +print_r($tags->getTags($feedname, $count, $page)); +print_r($feed->getItemsPerPage($feedname, $page, $count)); ?> \ No newline at end of file Modified: trunk/update_feeds.php =================================================================== --- trunk/update_feeds.php 2006-12-20 21:43:59 UTC (rev 75) +++ trunk/update_feeds.php 2006-12-20 21:44:39 UTC (rev 76) @@ -11,10 +11,13 @@ * @author c167 <c1...@us...> * @todo use different parsers for RSS and ATOM-feeds */ -echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" - \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n"; -echo "<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"de\" xml:lang=\"de\">\n"; -echo "\t<head>\n\t\t<title>update</title>\n\t\t<meta http-equiv=\"content-type\" content=\"application/xhtml+xml; charset=UTF-8\" />\n\t</head>\n\t<body>\n"; +$console = false; +if (false === $console) { + echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" + \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n"; + echo "<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"de\" xml:lang=\"de\">\n"; + echo "\t<head>\n\t\t<title>update</title>\n\t\t<meta http-equiv=\"content-type\" content=\"application/xhtml+xml; charset=UTF-8\" />\n\t</head>\n\t<body>\n"; +} error_reporting(E_ALL); //error_reporting(E_STRICT); @@ -22,19 +25,25 @@ require_once "MDB2.php"; require_once "Log.php"; // Logger - // some other stuff require_once "inc/config.php"; require_once "inc/definitions.php"; -//$update['difference'] = 1; ############################### # Configure and start logging # ############################### -$conf = array ( - 'error_prepend' => "<tt>", - 'error_append' => "</tt>", - 'linebreak' => "<br />\n" -); +if (true === $console) { + $conf = array ( + 'error_prepend' => "", + 'error_append' => "", + 'linebreak' => "\n" + ); +} else { + $conf = array ( + 'error_prepend' => "<tt>", + 'error_append' => "</tt>", + 'linebreak' => "<br />\n" + ); +} $log = & Log :: singleton('display', '', '', $conf, $update['loglevel']); $time_now = time(); @@ -121,7 +130,7 @@ } if (($time_now - $row['last_change']) < $update['difference']) { - $log->log(sprintf(_("No Update: diff: %d -> %d"), ($time_now - $row['last_change']), date(("H:m:s"), ($time_now - $row['last_change']))), PEAR_LOG_WARNING); + $log->log(sprintf(_("No Update: diff: %d -> %d"), ($time_now - $row['last_change']), date(("h:i:s"), ($time_now - $row['last_change']))), PEAR_LOG_WARNING); $log->log(sprintf(_("Not to update: %s"), $row['feed_name']), PEAR_LOG_NOTICE); continue; } else { @@ -129,7 +138,7 @@ ################################### # Okay, this feed needs an update # ################################### - $log->log(sprintf(_("Update: %s | diff: %s -> %s"), $row['feed_name'], ($time_now - $row['last_change']), date(("H:m:s"), ($time_now - $row['last_change']))), PEAR_LOG_WARNING); + $log->log(sprintf(_("Update: %s | diff: %s -> %s"), $row['feed_name'], ($time_now - $row['last_change']), date(("h:i:s"), ($time_now - $row['last_change']))), PEAR_LOG_WARNING); ################################## # Swwitching to the right reader # @@ -145,6 +154,10 @@ $log->log(_("Feed type is RDF 0.9, using RSS-Parser"), PEAR_LOG_NOTICE); $feed = parseRSS($row['feed_url'], $log); break; + case "RSS 1.0" : + $log->log(_("Feed type is RSS 1.0, using RSS-Parser"), PEAR_LOG_NOTICE); + $feed = parseRss($row['feed_url'], $log); + break; case "RSS 2.0" : $log->log(_("Feed type is RSS 2.0, using RSS-Parser"), PEAR_LOG_NOTICE); $feed = parseRSS($row['feed_url'], $log); @@ -162,7 +175,7 @@ } $result = insertData($feed, $row['feed_db_name'], $log, $db); - + $new_numberofitems = $db->queryOne(sprintf("SELECT COUNT(*) FROM f_%s;", $row['feed_db_name'])); $log->log(sprintf(_("We've got %d items in the feed, %d added"), $new_numberofitems, ($new_numberofitems - $numberofitems)), PEAR_LOG_NOTICE); $log->log(sprintf(_("Feed \"%s\" is up to date now!"), $row['feed_name']), PEAR_LOG_NOTICE); @@ -173,7 +186,7 @@ $log->log($settime->getDebugInfo(), PEAR_LOG_ALERT); } $settime->free(); - + } } $res->free(); @@ -186,15 +199,16 @@ $db->disconnect(); $log->log(_("Disconnected from the Database"), PEAR_LOG_NOTICE); $log->log(sprintf(_("Script finished at %s"), microtime()), PEAR_LOG_NOTICE); -$log->log(sprintf(_("Script needed %d seconds"), (time()-$time_now)), PEAR_LOG_NOTICE); -echo "\t</body>\n</html>"; +$log->log(sprintf(_("Script needed %d seconds"), (time() - $time_now)), PEAR_LOG_NOTICE); +if(false === $console) echo "\t</body>\n</html>"; +else echo ""; function insertData($data, $table_name, $log, $mdb2) { $mdb2->loadModule('Extended'); $log->log(_("checking if the url's are already in the db."), PEAR_LOG_NOTICE); $table_name = 'f_' . $table_name; - + $data = array_reverse($data); foreach ($data as $row) { $fields_values = array ( @@ -224,8 +238,7 @@ $return['error'] = false; } } - - + return $return; } @@ -262,11 +275,6 @@ } function parseRSS($feed_url, $log) { - /* require_once "magpierss/rss_parse.inc"; - - $feed = new MagpieRSS($feed_url, 'UTF-8'); - */ - require_once "XML/RSS.php"; try { @@ -293,19 +301,17 @@ $return[$i]['url'] = utf8_decode($item['link']); if (isset ($item['description'])) $return[$i]['summary'] = utf8_decode($item['description']); - if (isset ($item['updated'])) + if (!isset ($item['updated']) or "" == $item['updated'] or is_null($item['updated'])) { + $return[$i]['updated'] = time(); + } else { $return[$i]['updated'] = utf8_decode($item['updated']); - else - $return[$i]['updated'] = time(); + } $return[$i]['hash'] = calculateHash("md5", utf8_decode($item['title']), utf8_decode($item['link'])); $log->log(sprintf(_("id: %d | subject: %s | URL: %s"), $i, $item['title'], $item['link']), PEAR_LOG_DEBUG); $i++; } - for ($i = 0; $i < $items; $i++) { - } - return $return; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |