From: Hendrik B. <nh...@us...> - 2011-08-09 22:08:13
|
Update of /cvsroot/arianne/stendhal_website/mediawiki In directory vz-cvs-4.sog:/tmp/cvs-serv26425/mediawiki Modified Files: sourceforgeTrackerInclude.php Log Message: converted into a MediaWiki extension Index: sourceforgeTrackerInclude.php =================================================================== RCS file: /cvsroot/arianne/stendhal_website/mediawiki/sourceforgeTrackerInclude.php,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** sourceforgeTrackerInclude.php 9 Aug 2011 21:51:47 -0000 1.1 --- sourceforgeTrackerInclude.php 9 Aug 2011 22:08:11 -0000 1.2 *************** *** 17,41 **** */ ! $url = 'http://sourceforge.net/search/index.php?group_id=1111&type_of_search=artifact&q=&artifact_id=3389093+3388444+3388024&submitted_by=&assigned_to=&open_date_start=&open_date_end=&last_update_date_start=&last_update_date_end=&form_submit=Search&limit=100'; ! // get search result ! $data = file_get_contents($url); ! // strip head and foot ! $needle = '<!-- 0 -->'; //<caption>Search Results</caption>'; ! $pos = strpos($data, $needle) + strlen($needle); ! $data = substr($data, $pos, -1); ! $needle = '</table>'; ! $pos = strpos($data, $needle) + strlen($needle); ! $data = substr($data, 0, $pos); ! // fix links ! $data = preg_replace('|<a href="|', '<a href="https://sourceforge.net', $data); ! // add heading ! $prefix = '<table><tr><th>Priority</th><th>ID</th><th>Tracker</th><th>Summary</th><th>Assignee</th><th>Submitter</th><th>Status</th><th>Opened</th></tr>'; ! $data = $prefix.$data; ! echo $data; --- 17,61 ---- */ ! $wgExtensionFunctions[] = "sourceforgeTrackerIncludeSetup"; ! $wgExtensionCredits['other'][] = array( ! 'version' => '0.1', ! 'name' => 'Sourceforge Tracker Include', ! 'author' => 'Hendrik Brummermann', ! 'url' => 'http://arianne.sf.net', ! 'description' => 'Includes results from a sourceforge tracker search' ! ); ! /** ! * setup the parser by telling it about the tags we can ! * handle and include the required java script ! */ ! function sourceforgeTrackerIncludeSetup() { ! global $wgParser, $wgScriptPath, $wgOut; ! $wgParser->setHook('tracker', 'sourceforgeTrackerInclude'); ! } ! function sourceforgeTrackerInclude($input, $argv, $parser) { ! $parser->disableCache(); ! $url = 'http://sourceforge.net/search/index.php?group_id=1111&type_of_search=artifact&q=&artifact_id=3389093+3388444+3388024&limit=100'; ! // get search result ! $data = file_get_contents($url); ! // strip head and foot ! $needle = '<!-- 0 -->'; //<caption>Search Results</caption>'; ! $pos = strpos($data, $needle) + strlen($needle); ! $data = substr($data, $pos, -1); ! $needle = '</table>'; ! $pos = strpos($data, $needle) + strlen($needle); ! $data = substr($data, 0, $pos); + // fix links + $data = preg_replace('|<a href="|', '<a href="https://sourceforge.net', $data); + // add heading + $prefix = '<table class="prettytable sortable"><tr><th>Prio</th><th>ID</th><th>Tracker</th><th>Summary</th><th>Assignee</th><th>Submitter</th><th>Status</th><th>Opened</th></tr>'; + $data = $prefix.$data; + + return $data; + } |