<?php require "includes/feedreader.php"; require "includes/ausgabe.php"; // tragen Sie hier den ATOM Feed wie unter // http://www.imkermarkt/services/ beschrieben ein // z.B. $myfeedcontent = parseFeed("http://www.imkermarkt.de/kleinanzeigen.atom"); $myfeedcontent = parseFeed("http://www.imkermarkt.de/feeds/3/2/0.atom"); //$myfeedcontent = parseFeed("<ihratomfeed>"); ?> <h1 style="margin:0 0 10px 0">Biete Zubehör</h1> <?php feedausgabe($myfeedcontent);
function parseAllFeed($feed) { $feedData = parseFeed($feed); return parseFeedData($feedData); }
<?php // CodeBork $codebork = parseFeed('http://www.codebork.com/rss.xml'); // ReelCritic $reelcritic = parseFeed('http://www.reelcritic.co.uk/rss.xml'); function parseFeed($url) { $doc = new DOMDocument(); $doc->load($url); $feed = array(); foreach ($doc->getElementsByTagName('item') as $node) { $timestamp = strtotime($node->getElementsByTagName('pubDate')->item(0)->nodeValue); $itemRSS = array('title' => $node->getElementsByTagName('title')->item(0)->nodeValue, 'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue, 'link' => $node->getElementsByTagName('link')->item(0)->nodeValue, 'date' => $timestamp); array_push($feed, $itemRSS); } return $feed; } function printFeed($feed, $includeReadMore = false, $numItems = 5) { $count = $numItems; foreach ($feed as $item) { if ($count == 0) { break; } ?> <h3><a href="#"><?php print $item['title']; ?> </a></h3> <div>
} if (!$db_dopen) { $addwhere .= " AND f.type!='diary'"; } if (!$db_phopen) { $addwhere .= " AND f.type!='photo'"; } if (!$db_share_open) { $addwhere .= " AND f.type!='share'"; } if (!$db_groups_open) { $addwhere .= " AND f.type!='colony' AND f.type!='colony_post' AND f.type!='colony_photo'"; } $query = $db->query("SELECT f.*,m.username,m.groupid,m.icon FROM pw_feed f LEFT JOIN pw_members m ON f.uid=m.uid WHERE f.uid= " . pwEscape($u) . " {$addwhere} ORDER BY f.timestamp DESC LIMIT 30"); while ($rt = $db->fetch_array($query)) { $rt['descrip'] = parseFeed($rt['descrip']); if ($rt['groupid'] == 6 && $db_shield && $groupid != 3) { $rt['descrip'] = appShield('ban_feed'); } $key = get_date($rt['timestamp'], 'y-m-d'); list($rt['faceurl']) = showfacedesign($rt['icon'], '1', 's'); $rt['appicon'] = getAppIcon($rt['type']); $feeds[$key][] = $rt; } } $friends = getFriends($u, 0, 18, '', 1); //$sendfriends = getFriends($winduid,0,0,false,1); //留言板 if ($privacy['msgboard']) { $boards = array(); require_once R_P . 'require/bbscode.php';
function browseFeeds($num) { global $db, $groupid, $db_shield; $feeds = array(); $query = $db->query("SELECT f.*,m.username,m.groupid FROM pw_feed f LEFT JOIN pw_members m ON f.uid=m.uid ORDER BY timestamp DESC LIMIT {$num}"); while ($rt = $db->fetch_array($query)) { $rt['descrip'] = parseFeed($rt['descrip']); if ($rt['groupid'] == 6 && $db_shield && $groupid != 3) { $rt['descrip'] = appShield('ban_feed'); } $key = get_date($rt['timestamp'], 'y-m-d'); $feeds[$key][] = $rt; } return $feeds; }
private static function loop($line) { $d = IRC::split($line); if ($d === null) { return; } if ($d['type'] == 'direct') { switch ($d['command']) { case 'ping': self::send('PONG :' . $d['pieces'][0]); break; } } else { switch ($d['command']) { case '376': case '422': self::send('JOIN ' . self::$channel); break; case 'privmsg': if (strtolower($d['target']) == self::$channel) { $rawmessage = $d['pieces'][0]; $message = str_replace("", '', $rawmessage); $message = preg_replace('/\\003(\\d\\d?(,\\d\\d?)?)?/', '', $message); $data = parseFeed($message); if ($data === false) { return; } $data['line'] = $message; $data['rawline'] = $rawmessage; if (stripos('N', $data['flags']) !== false) { self::bail($data, 'New article'); return; } $stalkchannel = array(); foreach (Globals::$stalk as $key => $value) { if (myfnmatch(str_replace('_', ' ', $key), str_replace('_', ' ', $data['user']))) { $stalkchannel = array_merge($stalkchannel, explode(',', $value)); } } foreach (Globals::$edit as $key => $value) { if (myfnmatch(str_replace('_', ' ', $key), str_replace('_', ' ', ($data['namespace'] == 'Main:' ? '' : $data['namespace']) . $data['title']))) { $stalkchannel = array_merge($stalkchannel, explode(',', $value)); } } $stalkchannel = array_unique($stalkchannel); foreach ($stalkchannel as $chan) { IRC::say($chan, 'New edit: [[' . ($data['namespace'] == 'Main:' ? '' : $data['namespace']) . $data['title'] . ']] https://en.wikipedia.org/w/index.php?title=' . urlencode($data['namespace'] . $data['title']) . '&diff=prev&oldid=' . urlencode($data['revid']) . ' * ' . $data['user'] . ' * ' . $data['comment']); } switch ($data['namespace'] . $data['title']) { case 'User:'******'/Run': Globals::$run = Api::$q->getpage('User:'******'/Run'); break; case 'Wikipedia:Huggle/Whitelist': Globals::$wl = Api::$q->getpage('Wikipedia:Huggle/Whitelist'); break; case 'User:'******'/Optin': Globals::$optin = Api::$q->getpage('User:'******'/Optin'); break; case 'User:'******'/AngryOptin': Globals::$aoptin = Api::$q->getpage('User:'******'/AngryOptin'); break; } if ($data['namespace'] != 'Main:' and !preg_match('/\\* \\[\\[(' . preg_quote($data['namespace'] . $data['title'], '/') . ')\\]\\] \\- .*/i', Globals::$optin)) { self::bail($data, 'Outside of valid namespaces'); return; } echo 'Processing: ' . $message . "\n"; Process::processEdit($data); } break; } } }