Get the RSS link to all comments on this page

@return string
190228
public function getCommentRSSLinkPage()
    {
        return Controller::join_links(
            $this->getCommentRSSLink(),
            str_replace('\\', '-', get_class($this->owner)),
            $this->owner->ID
        );
    }
1167846
protected function render_reddit_link(): string
    {
        return '<a class="reddit-link social-link share-link" rel="external nofollow noopener" href="https://reddit.com/submit?url='.
            \urlencode_deep(\wp_get_shortlink($this->post->get()->ID)).
            '&title='.\urlencode_deep(\get_the_title($this->post->get())).
            '" target="_blank" itemprop="url"><i class="fab fa-reddit fa-sm" aria-hidden="true"></i> '.
            \esc_html__('Reddit', 'grotto-wp-posts').'</a>';
    }
1197541
public function getHTML()
    {
        $loggedin = "";
        $html = "";

        $isadmin = $this->sess['isadmin'] === 1 ? true : false;

        $create = $this->setUrlCreator("comm/create");
        $del = $this->setUrlCreator("comm/admindelete");
        $viewone = $this->setUrlCreator("comm/view-one");

        $loggedin = $this->getLoginLink($isadmin, $create, $del);

        $html .= '<div class="col-sm-12 col-xs-12">
        <div class="col-lg-6 col-sm-7 col-xs-7">
        <h3>Gruppinlägg <span class="small">' . $loggedin . '</span></h3>
        <hr />';

        foreach ($this->comments as $value) {
            if ((int)$value->parentid > 0) {
                continue;
            }
            $html .= $this->getValHtml($value, $isadmin, $viewone);
        }
        
        $html .= '</div></div>';
        return $html;
    }
224937
public function get_permalink()
	{
		$link = $this->get_link();
		$enclosure = $this->get_enclosure(0);
		if ($link !== null)
		{
			return $link;
		}
		elseif ($enclosure !== null)
		{
			return $enclosure->get_link();
		}

		return null;
	}
857041
public function rss()
    {
        /** @var RSSFeed $rss */
        $rss = RSSFeed::create(
            $list = $this->getRSSFeed(), $link = $this->Link('rss'), $title = _t('News.RSSFEED', 'News feed')
        );

        return $rss->outputToBrowser();
    }
1142494
public function getUrl()
	{
		$commentable = $this->commentable;

		$url = false;
		if (method_exists($commentable, 'getUrl'))
		{
			$url = $commentable->getUrl();
		}

		return \URL::to($url.'#C'.$this->id);
	}
1151589
public function getPageHead()
    {
        Container::get('hooks')->fire('model.index.get_page_head_start');

        if (ForumSettings::get('o_feed_type') == '1') {
            $page_head = ['feed' => '<link rel="alternate" type="application/rss+xml" 
            href="'.Router::pathFor('extern').'?action=feed&amp;type=rss" title="'.
                __('RSS active topics feed').'" />'];
        } elseif (ForumSettings::get('o_feed_type') == '2') {
            $page_head = ['feed' => '<link rel="alternate" type="application/atom+xml" 
            href="'.Router::pathFor('extern').'?action=feed&amp;type=atom" title="'.
                __('Atom active topics feed').'" />'];
        }

        $page_head = Container::get('hooks')->fire('model.index.get_page_head', $page_head);

        return $page_head;
    }
413567
public function getComments() {
        $comments = false;
        $table    = \MUtil_Html::create()->table(['class' => 'browser table', 'style' => 'width: auto']);

        $targetSurveyAnswers = $this->getNumberOfAnswers($this->targetSurveyId);
        if ($targetSurveyAnswers > 0) {
            $comments = true;
            $table
                    ->tr(['class' => 'warning'])
                    ->td(
                            sprintf(
                                    $this->_('Target survey already has %d answers. Is this expected?'),
                                    $targetSurveyAnswers
                            )
            );
        }

        if ($comments) {
            return $table;
        }

        return false;
    }
199388
public function getVideoCommentFeedUrl()
    {
        $commentsExtension = $this->getComments();
        $commentsFeedUrl = null;
        if ($commentsExtension) {
            $commentsFeedLink = $commentsExtension->getFeedLink();
            if ($commentsFeedLink) {
                $commentsFeedUrl = $commentsFeedLink->getHref();
            }
        }
        return $commentsFeedUrl;
    }
544357
private function getAllTags()
    {
        if ($comment = $this->getDocComment()) {
            if (preg_match_all("/\@(\w+)(.*)/", $comment, $m)) {
                foreach ($m[0] as $i => $result) {
                    $tagName = $m[1][$i];
                    $tagValue = trim($m[2][$i]);
                    $this->setTag($tagName, $tagValue);
                }
            }
        }
    }
923027
public function getCommentForm()
    {
        $postId = $_POST['postId'] ?? null;
        $commentId = $_POST['commentId'] ?? null;

        if (!$commentId || !$postId || !$comment = get_comment($commentId)) {
            wp_send_json_error('Missing variables');
        }

        if (!$comment = get_comment($commentId)) {
            wp_send_json_error('Comment is missing');
        }

        $args = array(
            'id_form' => 'commentupdate',
            'class_submit' => 'btn btn-sm btn-primary',
            'title_reply' => '',
            'title_reply_before' => '',
            'title_reply_after' => '',
            'label_submit' => __('Update', 'municipio'),
            'logged_in_as' => '',
            'comment_field' => '<textarea id="update-comment" name="comment" cols="45" rows="8" aria-required="true">' . $comment->comment_content . '</textarea>',
            'comment_notes_after' => '<input type="hidden" name="commentId" value="' . $commentId . '">
            <input type="hidden" name="nonce" value="' . wp_create_nonce("update-comment_$commentId") . '">',
            'submit_button' => '<input name="%1$s" type="submit" id="%2$s" class="%3$s" value="%4$s" /> <a href="#" class="cancel-update-comment gutter gutter-left gutter-sm"><small>' . __('Cancel', 'municipio') . '</small></a>'
        );

        ob_start();
        comment_form($args, $postId);
        $form = ob_get_clean();
        $form = str_replace('class="comment-respond"', 'class="comment-respond comment-respond-new comment-update"', $form);
        $form = str_replace('id="respond"', 'id="respond-edit"', $form);

        wp_send_json_success($form);
    }
841903
public function getComment()
    {
        $returnValue = (string) '';
        if($this->comment == '') {
            $comment =  $this->getOnePropertyValue($this->getProperty(OntologyRdfs::RDFS_COMMENT));
            $this->comment = $comment != null ? $comment->literal : '';
             
        }
        $returnValue = $this->comment;
        return (string) $returnValue;
    }
1308315
private function getCanonicalLink(): ?string {
        $nodes = $this->getNodesByLowercasePropertyValue($this->article()->getDoc(), 'link', 'rel', 'canonical');

        if ($nodes->count()) {
            return trim($nodes->first()->attr('href'));
        }

        $nodes = $this->getNodesByLowercasePropertyValue($this->article()->getDoc(), 'meta', 'property', 'og:url');

        if ($nodes->count()) {
            return trim($nodes->first()->attr('content'));
        }

        $nodes = $this->getNodesByLowercasePropertyValue($this->article()->getDoc(), 'meta', 'name', 'twitter:url');

        if ($nodes->count()) {
            return trim($nodes->first()->attr('content'));
        }

        return $this->article()->getFinalUrl();
    }
1208965
protected function getBaseLink()
    {
        $res = '.';
        $res .= str_repeat("/..", sizeof($this->PWE->getURL()->getParamsAsArray()));
        return $res;
    }
647545
protected function getLinks()
	{
		$html = '';

		if (is_array($this->window['first'])) {
			$html .= $this->getUrlLinks($this->window['first']);
		}

		if (is_array($this->window['slider'])) {
			$html .= $this->getDots();
			$html .= $this->getUrlLinks($this->window['slider']);
		}

		if (is_array($this->window['last'])) {
			$html .= $this->getDots();
			$html .= $this->getUrlLinks($this->window['last']);
		}

		return $html;
	}
661154
protected function get_review_link() {
		if ( false === $this->op['review_link'] ) {
			$link = '';
			if ( 'wordpress' === $this->op['site'] ) {
				$link = 'https://wordpress.org/support/';

				switch ( $this->op['type'] ) {
					case 'theme':
						$link .= 'theme/';
						break;
					case 'plugin':
						$link .= 'plugin/';
						break;
				}

				$link .= $this->op['type'] . '/reviews';

				$link = \add_query_arg( 'rate', $this->op['rating'], $link ) . \esc_url( $link . '#new-post' );
			} elseif ( 'codecanyon' === $this->op['site'] ) {
				$link = 'https://codecanyon.net/item/x/reviews/' . $this->op['item_id'] . '#rating-' . $this->op['item_id'];
			} elseif ( 'themeforest' === $this->op['site'] ) {
				$link = 'https://themeforest.net/item/x/reviews/' . $this->op['item_id'] . '#rating-' . $this->op['item_id'];
			}

			return $link;
		}

		return $this->op['review_link'];
	}
73333
public function getCommentCount()
    {
        return count(Comment::findAll([
            'parent_id' => $this->id,
            'model' => self::COMMENT_FOR,
            'status' => Comment::STATUS_APPROVED
        ]));
    }