Index: inc/core/class.dc.rs.extensions.php
===================================================================
--- inc/core/class.dc.rs.extensions.php	(revision 772)
+++ inc/core/class.dc.rs.extensions.php	(revision 848)
@@ -117,55 +117,4 @@
 	
 	/**
-	Returns whether comments are enabled on post.
-	
-	@param	rs	Invisible parameter
-	@return	<b>boolean</b>
-	*/
-	public static function commentsActive($rs)
-	{
-		return
-		$rs->core->blog->settings->system->allow_comments
-		&& $rs->post_open_comment
-		&& ($rs->core->blog->settings->system->comments_ttl == 0 ||
-		time()-($rs->core->blog->settings->system->comments_ttl*86400) < $rs->getTS());
-	}
-	
-	/**
-	Returns whether trackbacks are enabled on post.
-	
-	@param	rs	Invisible parameter
-	@return	<b>boolean</b>
-	*/
-	public static function trackbacksActive($rs)
-	{
-		return
-		$rs->core->blog->settings->system->allow_trackbacks
-		&& $rs->post_open_tb
-		&& ($rs->core->blog->settings->system->trackbacks_ttl == 0 ||
-		time()-($rs->core->blog->settings->system->trackbacks_ttl*86400) < $rs->getTS());
-	}
-	
-	/**
-	Returns whether post has at least one comment.
-	
-	@param	rs	Invisible parameter
-	@return	<b>boolean</b>
-	*/
-	public static function hasComments($rs)
-	{
-		return $rs->nb_comment > 0;
-	}
-	
-	/**
-	Returns whether post has at least one trackbacks.
-	
-	@return	<b>boolean</b>
-	*/
-	public static function hasTrackbacks($rs)
-	{
-		return $rs->nb_trackback > 0;
-	}
-	
-	/**
 	Returns full post URL.
 	
@@ -188,5 +137,5 @@
 	public static function getCategoryURL($rs)
 	{
-		return $rs->core->url->getURLFor('category',html::sanitizeURL($rs->cat_url));
+		return $rs->core->blog->url.$rs->core->url->getURLFor('category',html::sanitizeURL($rs->cat_url));
 	}
 	
@@ -361,38 +310,4 @@
 		
 		return 'tag:'.$url['host'].','.$date_part.':'.$rs->post_id;
-	}
-	
-	/**
-	Returns trackback RDF information block in HTML comment.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getTrackbackData($rs)
-	{
-		return
-		"<![CDATA[>\n".
-		"<!--[\n".
-		'<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"'."\n".
-		'  xmlns:dc="http://purl.org/dc/elements/1.1/"'."\n".
-		'  xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">'."\n".
-		"<rdf:Description\n".
-		'  rdf:about="'.$rs->getURL().'"'."\n".
-		'  dc:identifier="'.$rs->getURL().'"'."\n".
-		'  dc:title="'.htmlspecialchars($rs->post_title,ENT_COMPAT,'UTF-8').'"'."\n".
-		'  trackback:ping="'.$rs->getTrackbackLink().'" />'."\n".
-		"</rdf:RDF>\n".
-		"<!]]><!---->\n";
-	}
-	
-	/**
-	Returns post trackback full URL.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getTrackbackLink($rs)
-	{
-		return $rs->core->url->getURLFor('trackback',$rs->post_id);
 	}
 	
@@ -459,265 +374,4 @@
 /**
 @ingroup DC_CORE
-@brief Dotclear comment record helpers.
-
-This class adds new methods to database comment results.
-You can call them on every record comming from dcBlog::getComments and similar
-methods.
-
-@warning You should not give the first argument (usualy $rs) of every described
-function.
-*/
-class rsExtComment
-{
-	/**
-	Returns comment date with <var>$format</var> as formatting pattern. If
-	format is empty, uses <var>date_format</var> blog setting.
-	
-	@param	rs	Invisible parameter
-	@param	format	<b>string</b>		Date format pattern
-	@param	type	<b>string</b>		(dt|upddt) defaults to comment_dt
-	@return	<b>string</b>
-	*/
-	public static function getDate($rs,$format,$type='')
-	{
-		if (!$format) {
-			$format = $rs->core->blog->settings->system->date_format;
-		}
-		
-		if ($type == 'upddt') {
-			return dt::dt2str($format,$rs->comment_upddt,$rs->comment_tz);
-		} else {
-			return dt::dt2str($format,$rs->comment_dt);
-		}
-	}
-	
-	/**
-	Returns comment time with <var>$format</var> as formatting pattern. If
-	format is empty, uses <var>time_format</var> blog setting.
-	
-	@param	rs	Invisible parameter
-	@param	format	<b>string</b>		Date format pattern
-	@param	type	<b>string</b>		(dt|upddt) defaults to comment_dt
-	@return	<b>string</b>
-	*/
-	public static function getTime($rs,$format,$type='')
-	{
-		if (!$format) {
-			$format = $rs->core->blog->settings->system->time_format;
-		}
-		
-		if ($type == 'upddt') {
-			return dt::dt2str($format,$rs->comment_updt,$rs->comment_tz);
-		} else {
-			return dt::dt2str($format,$rs->comment_dt);
-		}
-	}
-	
-	/**
-	Returns comment timestamp.
-	
-	@param	rs	Invisible parameter
-	@param	type	<b>string</b>		(dt|upddt) defaults to comment_dt
-	@return	<b>integer</b>
-	*/
-	public static function getTS($rs,$type='')
-	{
-		if ($type == 'upddt') {
-			return strtotime($rs->comment_upddt);
-		} else {
-			return strtotime($rs->comment_dt);
-		}
-	}
-	
-	/**
-	Returns comment date formating according to the ISO 8601 standard.
-	
-	@param	rs	Invisible parameter
-	@param	type	<b>string</b>		(dt|upddt) defaults to comment_dt
-	@return	<b>string</b>
-	*/
-	public static function getISO8601Date($rs,$type='')
-	{
-		if ($type == 'upddt') {
-			return dt::iso8601($rs->getTS($type)+dt::getTimeOffset($rs->comment_tz),$rs->comment_tz);
-		} else {
-			return dt::iso8601($rs->getTS(),$rs->comment_tz);
-		}
-	}
-	
-	/**
-	Returns comment date formating according to RFC 822.
-	
-	@param	rs	Invisible parameter
-	@param	type	<b>string</b>		(dt|upddt) defaults to comment_dt
-	@return	<b>string</b>
-	*/
-	public static function getRFC822Date($rs,$type='')
-	{
-		if ($type == 'upddt') {
-			return dt::rfc822($rs->getTS($type)+dt::getTimeOffset($rs->comment_tz),$rs->comment_tz);
-		} else {
-			return dt::rfc822($rs->getTS(),$rs->comment_tz);
-		}
-	}
-	
-	/**
-	Returns comment content. If <var>$absolute_urls</var> is true, appends full
-	blog URL to each relative post URLs.
-	
-	@param	rs	Invisible parameter
-	@param	absolute_urls	<b>boolean</b>		With absolute URLs
-	@return	<b>string</b>
-	*/
-	public static function getContent($rs,$absolute_urls=false)
-	{
-		$res = $rs->comment_content;
-		
-		if ($rs->core->blog->settings->system->comments_nofollow) {
-			$res = preg_replace_callback('#<a(.*?href=".*?".*?)>#ms',array('self','noFollowURL'),$res);
-		}
-		
-		if ($absolute_urls) {
-			$res = html::absoluteURLs($res,$rs->getPostURL());
-		}
-		
-		return $res;
-	}
-	
-	private static function noFollowURL($m)
-	{
-		if (preg_match('/rel="nofollow"/',$m[1])) {
-			return $m[0];
-		}
-		
-		return '<a'.$m[1].' rel="nofollow">';
-	}
-	
-	/**
-	Returns comment author link to his website if he specified one.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getAuthorURL($rs)
-	{
-		if (trim($rs->comment_site)) {
-			return trim($rs->comment_site);
-		}
-	}
-	
-	/**
-	Returns comment post full URL.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getPostURL($rs)
-	{
-		return $rs->core->blog->url.$rs->core->getPostPublicURL(
-				$rs->post_type,html::sanitizeURL($rs->post_url)
-			);
-	}
-	
-	/**
-	Returns comment author name in a link to his website if he specified one.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getAuthorLink($rs)
-	{
-		$res = '%1$s';
-		$url = $rs->getAuthorURL();
-		if ($url) {
-			$res = '<a href="%2$s"%3$s>%1$s</a>';
-		}
-		
-		$nofollow = '';
-		if ($rs->core->blog->settings->system->comments_nofollow) {
-			$nofollow = ' rel="nofollow"';
-		}
-		
-		return sprintf($res,html::escapeHTML($rs->comment_author),html::escapeHTML($url),$nofollow);
-	}
-	
-	/**
-	Returns comment author e-mail address. If <var>$encoded</var> is true,
-	"@" sign is replaced by "%40" and "." by "%2e".
-	
-	@param	rs	Invisible parameter
-	@param	encoded	<b>boolean</b>		Encode address.
-	@return	<b>string</b>
-	*/
-	public static function getEmail($rs,$encoded=true)
-	{
-		if ($encoded) {
-			return strtr($rs->comment_email,array('@'=>'%40','.'=>'%2e'));
-		}
-		return $rs->comment_email;
-	}
-	
-	/**
-	Returns trackback site title if comment is a trackback.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getTrackbackTitle($rs)
-	{
-		if ($rs->comment_trackback == 1 &&
-		preg_match('|<p><strong>(.*?)</strong></p>|msU',$rs->comment_content,
-		$match)) {
-			return html::decodeEntities($match[1]);
-		}
-	}
-	
-	/**
-	Returns trackback content if comment is a trackback.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getTrackbackContent($rs)
-	{
-		if ($rs->comment_trackback == 1) {
-			return preg_replace('|<p><strong>.*?</strong></p>|msU','',
-			$rs->comment_content);
-		}
-	}
-	
-	/**
-	Returns comment feed unique ID.
-	
-	@param	rs	Invisible parameter
-	@return	<b>string</b>
-	*/
-	public static function getFeedID($rs)
-	{
-		return 'urn:md5:'.md5($rs->core->blog->uid.$rs->comment_id);
-		
-		$url = parse_url($rs->core->blog->url);
-		$date_part = date('Y-m-d',strtotime($rs->comment_dt));
-		
-		return 'tag:'.$url['host'].','.$date_part.':'.$rs->comment_id;
-	}
-	
-	/**
-	Returns whether comment is from the post author.
-	
-	@param	rs	Invisible parameter
-	@return	<b>boolean</b>
-	*/
-	public static function isMe($rs)
-	{
-		return
-		$rs->comment_email && $rs->comment_site &&
-		$rs->comment_email == $rs->user_email &&
-		$rs->comment_site == $rs->user_url;
-	}
-}
-
-/**
-@ingroup DC_CORE
 @brief Dotclear dates record helpers.
 
@@ -777,5 +431,5 @@
 		$url = date('Y/m',strtotime($rs->dt));
 		
-		return $core->url->getURLFor('archive',$url);
+		return $core->blog->url.$core->url->getURLFor('archive',$url);
 	}
 	
