$entity){
$mapping[$entity] = '' . ord($char) . ';';
}
return str_replace(array_keys($mapping), $mapping, $string);
}
function Excerpt( $excerpt ) {
$excerpt = strip_tags( $excerpt );
if (strlen($excerpt) > 455) {
$excerpt = substr($excerpt,0,452) . '...';
}
return $excerpt;
}
function datesort( $a , $b ) {
if( $a->udate == $b->udate ) return 0;
return( $a->udate > $b->udate ) ? -1 : 1;
}
function utfentities($string)
{
return htmlentities($string, ENT_COMPAT, 'UTF-8');
}
function _query( $s, $byid = false ) {
global $link;
$r = mysqli_query($link, $s ) or die( mysqli_error($link) );
$ret=array();
$i=0;
if( $byid ) {
while ($row = mysqli_fetch_object($r) )
$ret[$row->id] = $row;
} else {
while ($row = mysqli_fetch_object($r) )
$ret[$i++] = $row;
}
return $ret;
}
@$f_title = $type = $_GET['type'];
$f_items = array();
$f_desc = 'News and Comics from Megatokyo.';
/*if( $type == 'status' or $type == '') {
// Status Box Updates
$f_title = 'Megatokyo Status Updates';
$s = _query( "SELECT MAX(id)+1 as m FROM strip" ); // Permalinks to strips?
$s = _query( "SELECT DISTINCT SUBTIME( published, eta ) as dd, UNIX_TIMESTAMP(published) as udate, text, UNIX_TIMESTAMP(eta) as eta, percentage
FROM status s
ORDER BY udate DESC
LIMIT 5");
foreach( $s as $k=>$v ) {
$s[$k]->link = 'http://www.megatokyo.com/';
$s[$k]->title = "Update: $v->percentage%: " . htmlentities($v->text, ENT_COMPAT, ini_get('default_charset'));
$d = date( 'l F jS, H:i', $v->eta );
$dd = (int) (( $v->eta - $v->udate )/3600);
$s[$k]->desc = "$v->percentage% complete.
Next comic should be posted at: $d. ($dd hours)]]>";
$s[$k]->date = date( DATE_RFC822, $v->udate );
$s[$k]->guid = $s[$k]->link;
}
$f_items = array_merge( $f_items, $s );
}*/
if( $type == 'strips' or $type == '') {
$f_title = 'Megatokyo Comics';
$s = _query("SELECT DISTINCT s.id, UNIX_TIMESTAMP(s.published) as udate, t.description as chapdesc, t.name as chapname, s.title
FROM media_t media, strip s, strip_t t
WHERE s.media = media.id AND s.published < NOW()
AND s.type = t.id
ORDER BY s.id DESC LIMIT 5") or die(mysqli_error($link));
foreach($s as $k=>$v) {
$s[$k]->link = SITE_HOST . SITE_PATH . "/strip/$v->id";
#$s[$k]->title = "Comic [$v->id] \"" . utfentities($v->title, ENT_COMPAT, ini_get('default_charset')) . '"';
$s[$k]->title = "Comic [$v->id] \"" . numeric_entities(utfentities($v->title)) . '"';
$s[$k]->desc = "chapdesc comic $v->id
[read...]
[link . "\">permalink]
]]>";
$s[$k]->date = date( DATE_RSS, $v->udate );
$s[$k]->guid = $s[$k]->link;
$s[$k]->perm = 'true';
}
$f_items = array_merge( $f_items, $s );
}
if( $type == 'rants' or $type == '' ) {
$f_title = 'Megatokyo Rants';
$contributers = _query("SELECT * FROM contributor", true);
$s = _query("SELECT r.id, r.body as body, UNIX_TIMESTAMP(r.published) as udate, r.author as authorno, r.title
FROM rant r
WHERE r.published < NOW()
AND r.status = 'published'
ORDER BY udate DESC LIMIT 5");
foreach($s as $k=>$v) {
$s[$k]->link = SITE_HOST . SITE_PATH . "/rant/$v->id";
$s[$k]->author = utfentities( $contributers[$v->authorno]->name, ENT_COMPAT, ini_get('default_charset') );
$s[$k]->title = "Rant [$v->id] \"" . utfentities($v->title, ENT_COMPAT, ini_get('default_charset')) . '"';
$s[$k]->desc = "body) . "