function print_comment($param, $level = 0) { //$output = '<div><ul class="comments">'; $output = ''; foreach ($param as $key => $value) { //$output .= '<li id="comment-'.$value['id'].'" class="clearfix">'; $output .= '<article id="comment-' . $value['id'] . '" class="clearfix" style="margin-left: ' . $level * 20 . 'px">'; $output .= Html::img("http://gravatar.com/avatar/?s=" . ($value['gravatar_id'] ? $value['gravatar_id'] : '230'), ['class' => 'avatar']); $output .= ' <div class="post-comments">'; //$output .= ' <p class="meta">'.Html::encode($value['created_date']).'<a href="#">'.Html::encode($value['author']).'</a> пишет : <i class="pull-right"><a id="comment-reply" data-id="'.$value['id'].'"><small>Ответить</small></a></i></p>'; $output .= '<p class="meta">'; //$output .= Yii::$app->formatter->asDatetime($value['created_date'], Yii::$app->params['datetimeFormat']); $output .= print_mysqldate_russian($value['created_date']) . ' <strong>' . Html::encode($value['author']) . '</strong> пишет:'; $output .= '<i class="pull-right"><a id="comment-reply" href="#comment-form" data-id="' . $value['id'] . '"><small>Ответить</small></a></i>'; $output .= '</p>'; //href="#comment-form" $output .= ' <p>' . $value['content'] . '</p>'; $output .= ' </div>'; $output .= '</article>'; if ($value['childs']) { $output .= print_comment($value['childs'], $level + 1); } //$output .= '</li>'; } //$output .= '</ul></div>'; return $output; }
function print_comment($comment, $table) { $output = ""; if ($table == "ext") { $sect = "external-news"; } elseif ($table == "sites") { $sect = "related-sites"; } else { $sect = "press"; } $c_name = utf8entities(stripslashes($comment->name)); $c_date = utf8entities($comment->postdate); $c_body = nl2br(utf8entities(stripslashes($comment->body)), false); if ($comment->linecount == 1) { $output .= "\n\t\t<div>\n\t\t\t<div class=\"c-small\">\n\t\t\t\t<a name=\"c-{$comment->id}\"></a>\n\t\t\t\t<div class=\"c-small-actions\">\n\t\t\t\t\t<a class=\"c-actions-button\" alt=\"Respond to this comment\" href=\"/{$sect}/item/{$comment->itemid}/comments/post/{$comment->id}/\" onclick=\"return replyToComment(this);\">Reply</a>\n\t\t\t\t\t<a class=\"c-actions-button\" alt=\"Permalink to this comment\" href=\"/{$sect}/item/{$comment->itemid}/comments/#c-{$comment->id}\">Perma</a>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"c-small-inner\">\n\t\t\t\t\t<strong>{$c_name}</strong> \n\t\t\t\t\t{$c_body}\n\t\t\t\t</div>\n\t\t\t\t<div class=\"clear\"></div>\n\t\t\t</div>\n\t\t"; } else { $output .= "\n\t\t<div>\n\t\t\t<div class=\"c-outer\">\n\t\t\t\t<a name=\"c-{$comment->id}\"></a>\n\t\t\t\t<div class=\"c-meta\">\n\t\t\t\t\t<span class=\"c-meta-name\">{$c_name}</span>\n\t\t\t\t\t<span class=\"c-meta-date\">{$c_date}</span>\n\t\t\t\t\t<div class=\"clear\"></div>\n\t\t\t\t</div>\n\t\t\t\t\n\t\t\t\t<div class=\"c-actions\">\n\t\t\t\t\t<a class=\"c-actions-button\" alt=\"Respond to this comment\" href=\"/{$sect}/item/{$comment->itemid}/comments/post/{$comment->id}/\" onclick=\"return replyToComment(this);\">Reply</a>\n\t\t\t\t\t<a class=\"c-actions-button\" alt=\"Permalink to this comment\" href=\"/{$sect}/item/{$comment->itemid}/comments/#c-{$comment->id}\">Perma</a>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"c-body\">\n\t\t\t\t\t{$c_body}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t"; } $output .= "\n\t\t<div class=\"c-reply\">\n\t\t\t{$comment->id}\n\t\t</div>\n\t</div>\n\t<div class=\"c-children\">\n\t"; foreach ($comment->children as $child) { $output .= print_comment($child, $table); } $output .= "</div>"; return $output; }
/** * js module load * * * */ include_once '../bootstrap.php'; $id = $_GET['id']; // connect $m = new MongoClient(); // select a database $db = $m->store; $components = $db->components; $rows = $components->find(array('name' => $_GET['id'])); foreach ($rows as $row) { echo print_comment($row); echo print_minified($row), "\r\n"; } function print_minified($data) { $name = $data['name']; $minified = $_GET['minified']; //$data['minified']; $code = $data['component_code']; if ($minified) { // Basic (default) usage. $code = \JShrink\Minifier::minify($code); } return $code; } function print_comment($data)
?> " style="float:right;"> <div class="ArticleListTitle"> <?php if (!empty($title_link)) { ?> <a href="<?php echo xml_escape($title_link); ?> "> <?php } ?> <?php echo xml_escape($title); if (!empty($title_link)) { ?> </a> <?php } ?> </div> <ul class="comments" style="margin:0 5px;"> <?php foreach ($comments as $comment) { print_comment($comment, $comments_per_page); } ?> </ul> </div>
$pstmt->close(); } $l1comments = array(); $l2comments = array(); foreach ($comments as $c) { if ($c->com_level == 1) { $l1comments[] = $c; } else { $l2comments[] = $c; } } foreach ($l1comments as $c1) { print_comment($db, $logged_in, $c1->dis_id, $c1->com_id, $c1->com_name, $c1->com_level, $c1->com_text, $c1->com_flag, $c1->parent_com_id, $c1->upvote_count, $c1->downvote_count, $c1->username, $c1->pimg); foreach ($l2comments as $c2) { if ($c2->parent_com_id == $c1->com_id) { print_comment($db, $logged_in, $c2->dis_id, $c2->com_id, $c2->com_name, $c2->com_level, $c2->com_text, $c2->com_flag, $c2->parent_com_id, $c2->upvote_count, $c2->downvote_count, $c2->username, $c2->pimg); } } } echo "</div>"; echo "</div>"; /*********** END COMMENT PRINT LOOP *********************/ /****************************************************************/ /*********** SEE IF ALREADY BOOKMARKED *************************/ if ($logged_in) { if (!($db = db_connect())) { echo "Database error<br>"; exit; } $user_name = input_clean($_SESSION['valid_user']); $userQuery = "select user_id \n from user\n where user_name=?";
function print_paper($paper, $filters = array()) { global $logged_on; global $page_vars; $paper_id = $paper['paper_id']; print "<div class='paperbox'>"; # some shortcuts: if ($filters['display'] == "minimal") { if (!isset($filters['show_byline'])) { $filters['show_byline'] = true; } if (!isset($filters['show_tags'])) { $filters['show_tags'] = true; } if (!isset($filters['show_posts'])) { $filters['show_posts'] = false; } if (!isset($filters['show_abstract'])) { $filters['show_abstract'] = false; } if (!isset($filters['show_comments'])) { $filters['show_comments'] = false; } if (!isset($filters['show_teaser'])) { $filters['show_teaser'] = false; } if (!isset($filters['show_scorebox'])) { $filters['show_scorebox'] = true; } if (!isset($filters['add_comment'])) { $filters['add_comment'] = false; } } else { # set some defaults if (!isset($filters['show_byline'])) { $filters['show_byline'] = true; } if (!isset($filters['show_tags'])) { $filters['show_tags'] = true; } if (!isset($filters['show_posts'])) { $filters['show_posts'] = true; } if (!isset($filters['show_abstract'])) { $filters['show_abstract'] = true; } if (!isset($filters['show_comments'])) { $filters['show_comments'] = true; } if (!isset($filters['show_teaser'])) { $filters['show_teaser'] = false; } if (!isset($filters['show_scorebox'])) { $filters['show_scorebox'] = true; } if (!isset($filters['add_comment'])) { $filters['add_comment'] = true; } } $tags = array(); if ($filters['show_tags'] == true) { $tags = get_tags_for_paper($paper_id, true); } # print title of paper if (!$paper['title']) { $paper['title'] = "Unknown title"; } print "<div class='paperbox_title'>"; $title_link = linkto("paper.php", $GLOBALS['page_vars'], array("paper_id" => $paper['paper_id'])); if ($filters['link_through']) { $title_link = $paper['url']; } print "<a href='{$title_link}'>" . $paper['title'] . "</a>"; print "</div>"; if ($filters['show_byline'] == true) { print "<div class='paperbox_byline'>"; print connotea_link($paper['url']); if ($filters['show_scorebox'] == true && $paper['cited_by']) { print print_rating($paper['cited_by'], linkto("paper.php", $page_vars, array("paper_id" => $paper['paper_id']))); } print " published by <a href='" . linkto("journal_search.php", $GLOBALS['page_vars'], array("journal_id" => $paper['journal'])) . "'>" . $paper['journal'] . "</a> on <span class='date'>" . date("D jS M y", strtotime($paper['pubdate'])) . "</span>"; if ($filters['show_abstract'] == true) { print "<br/><span class='author'>" . $paper['authors'] . "</span>"; } print "</div>"; } if ($tags) { print "<div class='tagbox'>"; foreach ($tags as $tag) { print "<a href='" . linkto("tag_search.php", $GLOBALS['page_vars'], array("tag" => $tag)) . "'>{$tag}</a> "; } print "</div>"; } if ($filters['show_abstract'] && $paper['abstract']) { print "<div class='paperbox_identifiers'>"; if ($paper['doi_id']) { printf("DOI <a href='%s'>%s</a> ", "http://dx.doi.org/" . $paper['doi_id'], $paper['doi_id']); } if ($paper['isbn_id']) { printf("ISBN <a href='%s'>%s</a> ", "http://isbndb.com/search-all.html?kw=" . $paper['isbn_id'], $paper['isbn_id']); } if ($paper['pubmed_id']) { printf("PMID <a href='%s'>%s</a> ", "http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=pubmed&cmd=Retrieve&list_uids=" . $paper['pubmed_id'], $paper['pubmed_id']); } if ($paper['arxiv_id']) { printf("OAI <a href='%s'>%s</a> ", "http://www.citebase.org/abstract?id=" . urlencode($paper['arxiv_id']), $paper['arxiv_id']); } print "</div>"; print "<div class='paperbox_abstract'>"; if ($paper['image']) { print "<div class='paperbox_thumbnail'><img src='" . $paper['image'] . "'/></div>"; } print $paper['abstract']; print "<div class='paperbox_footer'> </div>"; print "</div>"; } print "</div>"; if ($filters['add_comment']) { if ($logged_on) { #print_comment_prompt(); } } if ($filters['show_posts'] == true) { $posts = get_posts_for_paper($paper_id); if ($posts) { print "<div class='paperbox_posts'>"; print "<h3>Posts</h3>"; foreach ($posts as $post) { print_post($post, array("image" => true)); } print "</div>"; } } if ($filters['show_comments'] == true) { $comments = get_comments_for_paper($paper_id); if ($comments) { print "<div class='paperbox_comments'>"; print "<h3>Comments</h3>"; foreach ($comments as $comment) { print_comment($comment); } print "</div>"; } } }
function print_comments($url) { $url = trim(str_replace('"', "'", urldecode($url))); if (!empty($_POST["comment"])) { $text = str_replace('"', "'", htmlspecialchars(strip_tags($_POST["comment"]))); $text = str_replace("\n", "<br/>", $text); $query = 'SELECT * FROM `nodes_comments` WHERE `text` LIKE "' . $text . '" AND `url` LIKE "' . $url . '" AND `user_id` = "' . $_SESSION["user"]["id"] . '"'; $res = engine::mysql($query); $data = mysql_fetch_array($res); if (empty($data) && intval($_SESSION["user"]["id"] > 0)) { $query = 'INSERT INTO `nodes_comments` (`url`, `reply`, `user_id`, `text`, `date`) ' . 'VALUES("' . $url . '", "' . intval($_POST["reply"]) . '", "' . $_SESSION["user"]["id"] . '", "' . $text . '", "' . date("U") . '")'; engine::mysql($query); $query = 'SELECT * FROM `nodes_config` WHERE `name` = "send_comments_email"'; $r_conf = engine::mysql($query); $d_conf = mysql_fetch_array($r_conf); if (intval($d_conf["value"])) { $query = 'SELECT * FROM `nodes_config` WHERE `name` = "email"'; $r_email = engine::mysql($query); $d_email = mysql_fetch_array($r_email); $message = 'User ' . $_SESSION["user"]["name"] . ' add new comment!<br/>' . '<a href="' . $_SERVER["SCRIPT_URI"] . '">' . $_SERVER["SCRIPT_URI"] . '</a><br/>' . '<br/>Comment:<br/>-----------------------------<br/>' . $text; engine::send_mail($d_email["value"], "no-reply@" . $_SERVER["HTTP_HOST"], "New comment at " . $_SERVER["HTTP_HOST"], $message); } $fout .= ' <script>alert("' . $GLOBALS["Lang"]["Comment submited!"] . '");</script> '; } } $flag = 0; $fout1 .= '<table align=center style="width: 100%; max-width: 500px; font-size: 14px;">'; $query = 'SELECT * FROM `nodes_comments` WHERE `url` LIKE "' . $url . '"'; $res = engine::mysql($query); while ($data = mysql_fetch_array($res)) { if (intval($data["id"]) > 0) { $fout1 .= print_comment($data["id"]); $flag = 1; } } $fout1 .= '</table><br/>'; if (!empty($_SESSION["user"])) { if (!$flag) { $fout .= $GLOBALS["Lang"]["There is no comments"] . '<br/><br/>'; } else { $fout .= $fout1; } $fout .= ' <form method="POST"> <div id="new_comment" style="display:none;"> <h2 style="font-size: 21px;">' . $GLOBALS["Lang"]["Add new comment"] . '</h2><br/><br/> <textarea name="comment" cols=50 style="height: 80px; width: 100%; max-width: 500px;"></textarea><br/><br/> <center><input type="submit" class="btn" value="' . $GLOBALS["Lang"]["Submit comment"] . '" style="width: 280px;" /></center> </div> <input type="button" class="btn" value="' . $GLOBALS["Lang"]["Add comment"] . '" style="width: 280px;" onClick=\'document.getElementById("new_comment").style.display="block";this.style.display="none";\' /> </form> '; } return $fout; }