<commit_before><?php
/**
 * ForumMemberProfile is the profile pages for a given ForumMember
 * 
 * @package forum
 */
class ForumMemberProfile extends Page_Controller {

	public $URLSegment = "ForumMemberProfile"; 

	/**
	 * Return a set of {@link Forum} objects that
	 * this member is a moderator of.
	 *
	 * @return ComponentSet
	 */
	function ModeratedForums() {
		$member = $this->Member();
		return $member ? $member->ModeratedForums() : null;
	}
	
	/**
	 * Create breadcrumbs (just shows a forum holder link and name of user)
	 * @return string HTML code to display breadcrumbs
	 */
	public function Breadcrumbs() {
		$nonPageParts = array();
		$parts = array();

		$forumHolder = $this->ForumHolder();
		$member = $this->Member();
		
		$parts[] = "<a href=\"{$forumHolder->Link()}\">{$forumHolder->Title}</a>";
		$nonPageParts[] = $this->Title;
		
		return implode(" &raquo; ", array_reverse(array_merge($nonPageParts, $parts)));
	}
	
	/**
	 * Initialise the controller
	 */
	function init() {
		Requirements::themedCSS('Forum');
		$member = $this->Member() ? $this->Member() : null;
		$nicknameText = ($member) ? ($member->Nickname . '\'s ') : '';
		
		$this->Title = $nicknameText . 'User Profile';
		
		parent::init();
 	}

	/**
	 * Get the URL for the login action
	 *
	 * @return string URL to the login action
	 */
	function LoginURL() {
		return $this->Link("login");
	}
	
	/**
	 * Is OpenID support available?
	 *
	 * This method checks if the {@link OpenIDAuthenticator} is available and
	 * registered.
	 *
	 * @return bool Returns TRUE if OpenID is available, FALSE otherwise.
	 */
	function OpenIDAvailable() {
		if(class_exists('Authenticator') == false)
			return false;

		return Authenticator::is_registered("OpenIDAuthenticator");<commit_msg>BUGFIX Escaped Title in ForumMemberProfile->init()<commit_after><?php
/**
 * ForumMemberProfile is the profile pages for a given ForumMember
 * 
 * @package forum
 */
class ForumMemberProfile extends Page_Controller {

	public $URLSegment = "ForumMemberProfile"; 

	/**
	 * Return a set of {@link Forum} objects that
	 * this member is a moderator of.
	 *
	 * @return ComponentSet
	 */
	function ModeratedForums() {
		$member = $this->Member();
		return $member ? $member->ModeratedForums() : null;
	}
	
	/**
	 * Create breadcrumbs (just shows a forum holder link and name of user)
	 * @return string HTML code to display breadcrumbs
	 */
	public function Breadcrumbs() {
		$nonPageParts = array();
		$parts = array();

		$forumHolder = $this->ForumHolder();
		$member = $this->Member();
		
		$parts[] = "<a href=\"{$forumHolder->Link()}\">{$forumHolder->Title}</a>";
		$nonPageParts[] = $this->Title;
		
		return implode(" &raquo; ", array_reverse(array_merge($nonPageParts, $parts)));
	}
	
	/**
	 * Initialise the controller
	 */
	function init() {
		Requirements::themedCSS('Forum');
		$member = $this->Member() ? $this->Member() : null;
		$nicknameText = ($member) ? ($member->Nickname . '\'s ') : '';
		
		$this->Title = Convert::raw2xml($nicknameText) . 'User Profile';
		
		parent::init();
 	}

	/**
	 * Get the URL for the login action
	 *
	 * @return string URL to the login action
	 */
	function LoginURL() {
		return $this->Link("login");
	}
	
	/**
	 * Is OpenID support available?
	 *
	 * This method checks if the {@link OpenIDAuthenticator} is available and
	 * registered.
	 *
	 * @return bool Returns TRUE if OpenID is available, FALSE otherwise.
	 */
	function OpenIDAvailable() {
		if(class_exists('Authenticator') == false)
			return false;

		return Authenticator::is_registered("OpenIDAuthenticator");
{'fraction_non_alphanumeric': 0.15380328782390637, 'fraction_numerical': 0.00027862914460852607, 'mean_word_length': 3.773936170212766, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 32, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 1}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4482640', 'n_tokens_mistral': 1216, 'n_tokens_neox': 1076, 'n_words': 309}