getId()) { $user_name = USERNAME; } else { $user_name = e107::getSystemUser($id, false)->getName(LAN_ANONYMOUS); } // new template engine - override in THEME/templates/userposts_template.php $USERPOSTS_TEMPLATE = e107::getCoreTemplate('userposts'); $sql2 = e107::getDb('sql2'); if($user_name) { $ccaption = str_replace('[x]', $user_name, UP_LAN_1); $ctotal = e107::getSystemUser($id, false)->getValue('comments', 0); // user_* getter shorthand $data = $cobj->getCommentData(10, $from, 'comment_author_id ='.$id); } else // posts by IP currently disabled (see Query filtering - top of the page) { e107::redirect(); exit; /*$dip = $id; if (strlen($dip) == 8) { // Legacy decode (IPV4 address as it used to be stored - hex string) $hexip = explode('.', chunk_split($dip, 2, '.')); $dip = hexdec($hexip[0]). '.' . hexdec($hexip[1]) . '.' . hexdec($hexip[2]) . '.' . hexdec($hexip[3]); } $ccaption = UP_LAN_1.$dip; $data = $cobj->getCommentData($amount='10', $from, "comment_ip = '".$id."'"); $data = $cobj->getCommentData(10, $from, 'comment_ip ='.$tp->toDB($user_ip));*/ } $ctext = ''; if(empty($data) || !is_array($data)) { $ctext = "".UP_LAN_7.""; } else { $userposts_comments_table_string = ''; foreach($data as $row) { $userposts_comments_table_string .= parse_userposts_comments_table($row, $USERPOSTS_TEMPLATE['comments_table']); } $parms = $ctotal.",10,".$from.",".e_REQUEST_SELF."?[FROM].comments.".$id; $nextprev = $ctotal ? $tp->parseTemplate("{NEXTPREV={$parms}}") : ''; if($nextprev) $nextprev = str_replace('{USERPOSTS_NEXTPREV}', $nextprev, $USERPOSTS_TEMPLATE['np_table']); $vars = new e_vars(array( 'NEXTPREV' => $nextprev )); // preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_TEMPLATE['comments_table_start']); $userposts_comments_table_start = $tp->simpleParse($USERPOSTS_TEMPLATE['comments_table_start'], $vars); // preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_TEMPLATE['comments_table_end']) $userposts_comments_table_end = $tp->simpleParse($USERPOSTS_TEMPLATE['comments_table_end'], $vars); $ctext .= $userposts_comments_table_start.$userposts_comments_table_string.$userposts_comments_table_end; } $ns->tablerender($ccaption, $ctext); } elseif ($action == 'forums') { require_once (e_PLUGIN.'forum/forum_class.php'); $forum = new e107forum(); $forumList = implode(',', $forum->getForumPermList('view')); /*if(is_numeric($id)) { $uinfo = e107::user($id); $fcaption = UP_LAN_0.' '.$uinfo['user_name']; } else { $user_name = 0; }*/ if($id == e107::getUser()->getId()) { $user_name = USERNAME; } else { $user_name = e107::getSystemUser($id, false)->getName(LAN_ANONYMOUS); } if(!$user_name) { e107::redirect(); exit; } // $fcaption = UP_LAN_0.' '.$user_name; $fcaption = str_replace('[x]', $user_name, UP_LAN_0); /* if (!$USERPOSTS_FORUM_TABLE) { if (file_exists(THEME.'userposts_template.php')) { require_once(THEME.'userposts_template.php'); } else { require_once(e_BASE.$THEMES_DIRECTORY.'templates/userposts_template.php'); } }*/ // new template engine - override in THEME/templates/userposts_template.php $USERPOSTS_TEMPLATE = e107::getCoreTemplate('userposts'); $s_info = ''; $_POST['f_query'] = trim(varset($_POST['f_query'])); if ($_POST['f_query'] !== '') { $f_query = $tp->toDB($_POST['f_query']); $s_info = "AND (t.thread_name REGEXP('".$f_query."') OR p.post_entry REGEXP('".$f_query."'))"; $fcaption = UP_LAN_12.' '.$user_name; } $qry = " SELECT SQL_CALC_FOUND_ROWS p.*, t.*, f.* FROM `#forum_post` AS p LEFT JOIN `#forum_thread` AS t ON t.thread_id = p.post_thread LEFT JOIN `#forum` AS f ON f.forum_id = p.post_forum WHERE p.post_user = {$id} AND p.post_forum IN ({$forumList}) {$s_info} ORDER BY p.post_datestamp DESC LIMIT {$from}, 10 "; $debug = deftrue('e_DEBUG'); $sqlp = e107::getDb('posts'); if (!$sqlp->gen($qry)) { $ftext .= "".UP_LAN_8.''; } else { $gen = e107::getDateConvert(); $vars = new e_vars(); $userposts_forum_table_string = ''; while($row = $sqlp->fetch()) { if(empty($row)) { continue; } $datestamp = $gen->convert_date($row['post_datestamp'], 'short'); if ($row['thread_datestamp'] == $row['post_datestamp']) { $vars->USERPOSTS_FORUM_TOPIC_PRE = UP_LAN_2.': '; } else { $vars->USERPOSTS_FORUM_TOPIC_PRE = UP_LAN_15.': '; } $row['forum_sef'] = $forum->getForumSef($row); $row['thread_sef'] = $forum->getThreadSef($row); $forumUrl = e107::url('forum', 'forum', $row); $postNum = $forum->postGetPostNum($row['post_thread'], $row['post_id']); $postPage = ceil($postNum / $forum->prefs->get('postspage')); $postUrl = e107::url('forum', 'topic', $row, array('query' => array('p' => $postPage), 'fragment' => 'post-' . $row['post_id'])); $vars->USERPOSTS_FORUM_ICON = ""; $vars->USERPOSTS_FORUM_TOPIC_HREF_PRE = ""; //$e107->url->getUrl('forum', 'thread', "func=post&id={$row['post_id']}") $vars->USERPOSTS_FORUM_TOPIC = $tp->toHTML($row['thread_name'], true, 'USER_BODY', $id); $vars->USERPOSTS_FORUM_NAME_HREF_PRE = ""; //$e107->url->getUrl('forum', 'forum', "func=view&id={$row['post_forum']}") $vars->USERPOSTS_FORUM_NAME = $tp->toHTML($row['forum_name'], true, 'USER_BODY', $id); $vars->USERPOSTS_FORUM_THREAD = $tp->toHTML($row['post_entry'], true, 'USER_BODY', $id); $vars->USERPOSTS_FORUM_DATESTAMP = UP_LAN_11." ".$datestamp; //$userposts_forum_table_string .= preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_FORUM_TABLE); $userposts_forum_table_string .= $tp->simpleParse($USERPOSTS_TEMPLATE['forum_table'], $vars); } $vars->emptyVars(); $ftotal = $sqlp->foundRows(); $parms = $ftotal.",10,".$from.",".e_REQUEST_SELF."?[FROM].forums.".$id; $vars->NEXTPREV = $ftotal ? $tp->parseTemplate("{NEXTPREV={$parms}}") : ''; if($vars->NEXTPREV) $vars->NEXTPREV = str_replace('{USERPOSTS_NEXTPREV}', $vars->NEXTPREV, $USERPOSTS_TEMPLATE['np_table']); $vars->USERPOSTS_FORUM_SEARCH_VALUE = htmlspecialchars($_POST['f_query'], ENT_QUOTES, CHARSET); $vars->USERPOSTS_FORUM_SEARCH_FIELD = ""; $vars->USERPOSTS_FORUM_SEARCH_BUTTON = ""; $vars->USERPOSTS_FORUM_SEARCH = " "; // $userposts_forum_table_start = preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_FORUM_TABLE_START); $userposts_forum_table_start = $tp->simpleParse($USERPOSTS_TEMPLATE['forum_table_start'], $vars); //$userposts_forum_table_end = preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_FORUM_TABLE_END); $userposts_forum_table_end = $tp->simpleParse($USERPOSTS_TEMPLATE['forum_table_end'], $vars); $ftext = $userposts_forum_table_start.$userposts_forum_table_string.$userposts_forum_table_end; } $ns->tablerender($fcaption, $ftext); /*$ftotal = $e107->sql->total_results; $parms = $ftotal.",10,".$from.",".e_SELF."?[FROM].forums.".$id; $USERPOSTS_NEXTPREV = $tp->parseTemplate("{NEXTPREV={$parms}}"); echo preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_NP_TABLE);*/ } else { e107::redirect(); exit; } require_once(FOOTERF); function parse_userposts_comments_table($row, $template) { // global $USERPOSTS_COMMENTS_TABLE, $pref, $gen, $tp, $id, $sql2, $comment_files; $gen = e107::getDateConvert(); $datestamp = $gen->convert_date($row['comment_datestamp'], "short"); $bullet = ''; if(defined('BULLET')) { $bullet = ''; } elseif(file_exists(THEME.'images/bullet2.gif')) { $bullet = ''; } $vars = new e_vars(); $vars->USERPOSTS_COMMENTS_ICON = $bullet; $vars->USERPOSTS_COMMENTS_DATESTAMP = UP_LAN_11." ".$datestamp; $vars->USERPOSTS_COMMENTS_HEADING = $row['comment_title']; $vars->USERPOSTS_COMMENTS_COMMENT = $row['comment_comment']; $vars->USERPOSTS_COMMENTS_HREF_PRE = ""; $vars->USERPOSTS_COMMENTS_TYPE = $row['comment_type']; //return(preg_replace("/\{(.*?)\}/e", '$\1', $USERPOSTS_COMMENTS_TABLE)); return e107::getParser()->simpleParse($template, $vars); }