NovaArgon Posted November 25, 2007 Share Posted November 25, 2007 Hi my name is Chase and I have no clue what parse errors are. ((Loud Reply)) "Hi Chase" We can talk about the drugs and alcoholism latter on to the important stuff. Parse Errors It seems that I have parse errors somewhere that is why my page is jacked up if you look at the later part of the source the last entry is just the header so i'm told. I don't have a very complex page so I can wipe it out and start from scratch. Its just that I was already starting from scratch. How do I fix parse errors or what are they. Why are they kicking my balls? Quote Link to comment Share on other sites More sharing options...
hitman6003 Posted November 25, 2007 Share Posted November 25, 2007 You fix the parse errors by not writing incorrect code. If you want better help, tell us what the errors are. If you want even better help, include your source code. Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <title>Advice Forums Home</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="HTML Tidy for Linux (vers 1 September 2005), see www.w3.org" /> <meta name="keywords" content="Advice Forums, Money Advice Forums, Relationship Advice Forums, Parenting Advice Forums, Pet Advice Forums" /> <meta name="description" content="Advice Forums is based on the idea that you can learn how to do anything with alittle advice. It's about helping people and sharing knowledge. I hope you enjoy your time here and spend it helping yourself and others. Welcome to our community." /> <meta name="robots" content="index, follow" /> <link href="style2.css" rel="stylesheet" type="text/css" /> </head> <script type="text/javascript" src="http://shots.snap.com/ss/09c6f7d6c2bd3571d2bd4d2cec8b013c/snap_shots.js"></script> <body> <div id="wrapper"> <div id="header"><a href="index.php"> <img src="Img/logo.jpg" class="logo" alt="Advice Forums" title="Advice Forums" /> </a> <div id="nav"> <ul> <li><a href="index.php" class="selected">Home</a></li> <li><a href="phpBB3">Forums</a></li> <li><a href="blank.php">Comming Soon</a></li> <li><a href="contact.php">Contact</a></li> </ul> </div> <!-- END NAV --> </div> <!-- END HEADER --> <div id="content"> <div id="col1"> <h1>Welcome</h1> <p class="quote"><img src="Img/quote.jpg" alt="quote" class="quote" />The happiness of your life depends upon the quaility of your thoughts.</p> <p>Advice Forums is based on the idea that you can learn how to do anything with alittle advice. It's about helping people and sharing knowledge. I hope you enjoy your time here and spend it helping yourself and others.</p> <p>Welcome to our community.</p> </div> <!--END COL1--> <div id="col2"> <h1>Recent Post</h1> <?php include($phpbb_root_path . '/home/advisorg/public_html/phpBB3/includes/functions_display.php' . $phpEx); include($phpbb_root_path . '/home/advisorg/public_html/phpBB3/includes/functions_posts_anywhere.php' . $phpEx); $forum_id = 25;//forum id to display recent posts from $limit = 10;//number of posts to show on the page $char_limit = 500;//character limit for each post (more button will show for posts over this size) $unique = true; //display only 1 post per topic? true or false $recursive = false; //view new posts in the forum selected and any subforums? true or false display_posts($forum_id, $limit, $char_limit, $unique, $recursive); ?> <!--END COL2--></div> <!-- END CONTENT --> <div id="boxcontainer"> <div class="box1"> <h1>This is Box 1</h1> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus luctus. Curabitur vitae velit ac nisi ultricies venenatis. Praesent ultricies. <a href="index.htm">Read More</a></p> </div> <!-- END BOX 1 --> <div class="box2"> <h1>This is Box 2</h1> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus luctus. Curabitur vitae velit ac nisi ultricies venenatis. Praesent ultricies. <a href="index.htm">Read More</a></p> </div> <!-- END BOX 2 --> <div class="box3"> <h1>This is Box 3</h1> <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus luctus. Curabitur vitae velit ac nisi ultricies venenatis. Praesent ultricies. <a href="index.htm">Read More</a></p> </div> <!-- END BOX 2 --></div> <!-- END BOXCONTAINER --></div> <!--END WRAP --> <div id="footer"> <p>2007 adviceforums.org All Rights Reserved</p> <p>| <a href="http://adviceforums.org/phpBB3/viewforum.php?f=4&sid=d2816ae19965b1a42a1fb69d1e8e56d9">TOS</a> | <a href="http://adviceforums.org/phpBB3/viewforum.php?f=4&sid=d2816ae19965b1a42a1fb69d1e8e56d9">Privacy Policy</a> |</p> </div> <!-- END FOOTER --> </body> </html> Sorry i'm not sure what the errors are I'v been trying to get help with some code and that was the last thing I was told. I haven't found the errors yet. Thanks for taking a look at my code Quote Link to comment Share on other sites More sharing options...
hitman6003 Posted November 25, 2007 Share Posted November 25, 2007 I don't see anything particularly wrong with the code...mostly just html. You can turn on php error reporting by placing the following at the very top of your page: <?php ini_set("display_errors", 1); ini_set("display_startup_errors", 1); error_reporting(E_ALL); ?> Quote Link to comment Share on other sites More sharing options...
PHP_PhREEEk Posted November 25, 2007 Share Posted November 25, 2007 Since PHP won't parse HTML output (anything outside of <?php ?> tags), the only possible part of your code that would throw a parse error is: <?php include($phpbb_root_path . '/home/advisorg/public_html/phpBB3/includes/functions_display.php' . $phpEx); include($phpbb_root_path . '/home/advisorg/public_html/phpBB3/includes/functions_posts_anywhere.php' . $phpEx); $forum_id = 25;//forum id to display recent posts from $limit = 10;//number of posts to show on the page $char_limit = 500;//character limit for each post (more button will show for posts over this size) $unique = true; //display only 1 post per topic? true or false $recursive = false; //view new posts in the forum selected and any subforums? true or false display_posts($forum_id, $limit, $char_limit, $unique, $recursive); ?> $phpbb_root_path is a variable that needs a string value if it is to be used in an include. I don't see it defined anywhere before it is called, nor do I see any file included earlier in the script that might provide it to this script. That's going to be a problem... So, you'll need to define that path. $phpEx also needs a definition if it's going to be used. Typically this is '.php', and it is appended to any filenames phpBB uses. Since you are providing the file extension already, this extra variable won't work. Even once the pathing is correct, it will look for a file called: functions_display.php.php, which obviously will fail. So, let's remove that, fix the path, then try this code: <?php $phpbb_root_path = 'home/advisorg/public_html/phpbb3/'; include('$phpbb_root_path' . 'includes/functions_display.php'); include('$phpbb_root_path' . 'includes/functions_posts_anywhere.php'); $forum_id = 25;//forum id to display recent posts from $limit = 10;//number of posts to show on the page $char_limit = 500;//character limit for each post (more button will show for posts over this size) $unique = true; //display only 1 post per topic? true or false $recursive = false; //view new posts in the forum selected and any subforums? true or false display_posts($forum_id, $limit, $char_limit, $unique, $recursive); ?> PhREEEk Quote Link to comment Share on other sites More sharing options...
wsantos Posted November 25, 2007 Share Posted November 25, 2007 Can you post the contents of this file functions_display.php functions_posts_anywhere.php and the path it is on Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 functions_display.php <?php /** * * @package phpBB3 * @version $Id: functions_display.php,v 1.167 2007/10/05 14:30:10 acydburn Exp $ * @copyright © 2005 phpBB Group * @license http://opensource.org/licenses/gpl-license.php GNU Public License * */ /** * @ignore */ if (!defined('IN_PHPBB')) { exit; } /** * Display Forums */ function display_forums($root_data = '', $display_moderators = true, $return_moderators = false) { global $db, $auth, $user, $template; global $phpbb_root_path, $phpEx, $config; $forum_rows = $subforums = $forum_ids = $forum_ids_moderator = $forum_moderators = $active_forum_ary = array(); $parent_id = $visible_forums = 0; $sql_from = ''; // Mark forums read? $mark_read = request_var('mark', ''); if ($mark_read == 'all') { $mark_read = ''; } if (!$root_data) { if ($mark_read == 'forums') { $mark_read = 'all'; } $root_data = array('forum_id' => 0); $sql_where = ''; } else { $sql_where = 'left_id > ' . $root_data['left_id'] . ' AND left_id < ' . $root_data['right_id']; } // Display list of active topics for this category? $show_active = (isset($root_data['forum_flags']) && ($root_data['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS)) ? true : false; $sql_array = array( 'SELECT' => 'f.*', 'FROM' => array( FORUMS_TABLE => 'f' ), 'LEFT_JOIN' => array(), ); if ($config['load_db_lastread'] && $user->data['is_registered']) { $sql_array['LEFT_JOIN'][] = array('FROM' => array(FORUMS_TRACK_TABLE => 'ft'), 'ON' => 'ft.user_id = ' . $user->data['user_id'] . ' AND ft.forum_id = f.forum_id'); $sql_array['SELECT'] .= ', ft.mark_time'; } else if ($config['load_anon_lastread'] || $user->data['is_registered']) { $tracking_topics = (isset($_COOKIE[$config['cookie_name'] . '_track'])) ? ((STRIP) ? stripslashes($_COOKIE[$config['cookie_name'] . '_track']) : $_COOKIE[$config['cookie_name'] . '_track']) : ''; $tracking_topics = ($tracking_topics) ? tracking_unserialize($tracking_topics) : array(); if (!$user->data['is_registered']) { $user->data['user_lastmark'] = (isset($tracking_topics['l'])) ? (int) (base_convert($tracking_topics['l'], 36, 10) + $config['board_startdate']) : 0; } } if ($show_active) { $sql_array['LEFT_JOIN'][] = array( 'FROM' => array(FORUMS_ACCESS_TABLE => 'fa'), 'ON' => "fa.forum_id = f.forum_id AND fa.session_id = '" . $db->sql_escape($user->session_id) . "'" ); $sql_array['SELECT'] .= ', fa.user_id'; } $sql = $db->sql_build_query('SELECT', array( 'SELECT' => $sql_array['SELECT'], 'FROM' => $sql_array['FROM'], 'LEFT_JOIN' => $sql_array['LEFT_JOIN'], 'WHERE' => $sql_where, 'ORDER_BY' => 'f.left_id', )); $result = $db->sql_query($sql); $forum_tracking_info = array(); $branch_root_id = $root_data['forum_id']; while ($row = $db->sql_fetchrow($result)) { $forum_id = $row['forum_id']; // Mark forums read? if ($mark_read == 'forums' || $mark_read == 'all') { if ($auth->acl_get('f_list', $forum_id)) { $forum_ids[] = $forum_id; continue; } } // Category with no members if ($row['forum_type'] == FORUM_CAT && ($row['left_id'] + 1 == $row['right_id'])) { continue; } // Skip branch if (isset($right_id)) { if ($row['left_id'] < $right_id) { continue; } unset($right_id); } if (!$auth->acl_get('f_list', $forum_id)) { // if the user does not have permissions to list this forum, skip everything until next branch $right_id = $row['right_id']; continue; } $forum_ids[] = $forum_id; if ($config['load_db_lastread'] && $user->data['is_registered']) { $forum_tracking_info[$forum_id] = (!empty($row['mark_time'])) ? $row['mark_time'] : $user->data['user_lastmark']; } else if ($config['load_anon_lastread'] || $user->data['is_registered']) { if (!$user->data['is_registered']) { $user->data['user_lastmark'] = (isset($tracking_topics['l'])) ? (int) (base_convert($tracking_topics['l'], 36, 10) + $config['board_startdate']) : 0; } $forum_tracking_info[$forum_id] = (isset($tracking_topics['f'][$forum_id])) ? (int) (base_convert($tracking_topics['f'][$forum_id], 36, 10) + $config['board_startdate']) : $user->data['user_lastmark']; } $row['forum_topics'] = ($auth->acl_get('m_approve', $forum_id)) ? $row['forum_topics_real'] : $row['forum_topics']; // Display active topics from this forum? if ($show_active && $row['forum_type'] == FORUM_POST && $auth->acl_get('f_read', $forum_id) && ($row['forum_flags'] & FORUM_FLAG_ACTIVE_TOPICS)) { if (!isset($active_forum_ary['forum_topics'])) { $active_forum_ary['forum_topics'] = 0; } if (!isset($active_forum_ary['forum_posts'])) { $active_forum_ary['forum_posts'] = 0; } $active_forum_ary['forum_id'][] = $forum_id; $active_forum_ary['enable_icons'][] = $row['enable_icons']; $active_forum_ary['forum_topics'] += $row['forum_topics']; $active_forum_ary['forum_posts'] += $row['forum_posts']; // If this is a passworded forum we do not show active topics from it if the user is not authorised to view it... if ($row['forum_password'] && $row['user_id'] != $user->data['user_id']) { $active_forum_ary['exclude_forum_id'][] = $forum_id; } } // if ($row['parent_id'] == $root_data['forum_id'] || $row['parent_id'] == $branch_root_id) { if ($row['forum_type'] != FORUM_CAT) { $forum_ids_moderator[] = (int) $forum_id; } // Direct child of current branch $parent_id = $forum_id; $forum_rows[$forum_id] = $row; if ($row['forum_type'] == FORUM_CAT && $row['parent_id'] == $root_data['forum_id']) { $branch_root_id = $forum_id; } $forum_rows[$parent_id]['forum_id_last_post'] = $row['forum_id']; $forum_rows[$parent_id]['orig_forum_last_post_time'] = $row['forum_last_post_time']; } else if ($row['forum_type'] != FORUM_CAT) { $subforums[$parent_id][$forum_id]['display'] = ($row['display_on_index']) ? true : false; $subforums[$parent_id][$forum_id]['name'] = $row['forum_name']; $subforums[$parent_id][$forum_id]['orig_forum_last_post_time'] = $row['forum_last_post_time']; $forum_rows[$parent_id]['forum_topics'] += $row['forum_topics']; // Do not list redirects in LINK Forums as Posts. if ($row['forum_type'] != FORUM_LINK) { $forum_rows[$parent_id]['forum_posts'] += $row['forum_posts']; } if ($row['forum_last_post_time'] > $forum_rows[$parent_id]['forum_last_post_time']) { $forum_rows[$parent_id]['forum_last_post_id'] = $row['forum_last_post_id']; $forum_rows[$parent_id]['forum_last_post_subject'] = $row['forum_last_post_subject']; $forum_rows[$parent_id]['forum_last_post_time'] = $row['forum_last_post_time']; $forum_rows[$parent_id]['forum_last_poster_id'] = $row['forum_last_poster_id']; $forum_rows[$parent_id]['forum_last_poster_name'] = $row['forum_last_poster_name']; $forum_rows[$parent_id]['forum_last_poster_colour'] = $row['forum_last_poster_colour']; $forum_rows[$parent_id]['forum_id_last_post'] = $forum_id; } } } $db->sql_freeresult($result); // Handle marking posts if ($mark_read == 'forums' || $mark_read == 'all') { $redirect = build_url('mark'); if ($mark_read == 'all') { markread('all'); $message = sprintf($user->lang['RETURN_INDEX'], '<a href="' . $redirect . '">', '</a>'); } else { markread('topics', $forum_ids); $message = sprintf($user->lang['RETURN_FORUM'], '<a href="' . $redirect . '">', '</a>'); } meta_refresh(3, $redirect); trigger_error($user->lang['FORUMS_MARKED'] . '<br /><br />' . $message); } // Grab moderators ... if necessary if ($display_moderators) { if ($return_moderators) { $forum_ids_moderator[] = $root_data['forum_id']; } get_moderators($forum_moderators, $forum_ids_moderator); } // Used to tell whatever we have to create a dummy category or not. $last_catless = true; foreach ($forum_rows as $row) { // Empty category if ($row['parent_id'] == $root_data['forum_id'] && $row['forum_type'] == FORUM_CAT) { $template->assign_block_vars('forumrow', array( 'S_IS_CAT' => true, 'FORUM_ID' => $row['forum_id'], 'FORUM_NAME' => $row['forum_name'], 'FORUM_DESC' => generate_text_for_display($row['forum_desc'], $row['forum_desc_uid'], $row['forum_desc_bitfield'], $row['forum_desc_options']), 'FORUM_FOLDER_IMG' => '', 'FORUM_FOLDER_IMG_SRC' => '', 'FORUM_IMAGE' => ($row['forum_image']) ? '<img src="' . $phpbb_root_path . $row['forum_image'] . '" alt="' . $user->lang['FORUM_CAT'] . '" />' : '', 'FORUM_IMAGE_SRC' => ($row['forum_image']) ? $phpbb_root_path . $row['forum_image'] : '', 'U_VIEWFORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id'])) ); continue; } $visible_forums++; $forum_id = $row['forum_id']; $forum_unread = (isset($forum_tracking_info[$forum_id]) && $row['orig_forum_last_post_time'] > $forum_tracking_info[$forum_id]) ? true : false; $folder_image = $folder_alt = $l_subforums = ''; $subforums_list = array(); // Generate list of subforums if we need to if (isset($subforums[$forum_id])) { foreach ($subforums[$forum_id] as $subforum_id => $subforum_row) { $subforum_unread = (isset($forum_tracking_info[$subforum_id]) && $subforum_row['orig_forum_last_post_time'] > $forum_tracking_info[$subforum_id]) ? true : false; if ($subforum_row['display'] && $subforum_row['name']) { $subforums_list[] = array( 'link' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $subforum_id), 'name' => $subforum_row['name'], 'unread' => $subforum_unread, ); } else { unset($subforums[$forum_id][$subforum_id]); } // If one subforum is unread the forum gets unread too... if ($subforum_unread) { $forum_unread = true; } } $l_subforums = (sizeof($subforums[$forum_id]) == 1) ? $user->lang['SUBFORUM'] . ': ' : $user->lang['SUBFORUMS'] . ': '; $folder_image = ($forum_unread) ? 'forum_unread_subforum' : 'forum_read_subforum'; } else { switch ($row['forum_type']) { case FORUM_POST: $folder_image = ($forum_unread) ? 'forum_unread' : 'forum_read'; break; case FORUM_LINK: $folder_image = 'forum_link'; break; } } // Which folder should we display? if ($row['forum_status'] == ITEM_LOCKED) { $folder_image = ($forum_unread) ? 'forum_unread_locked' : 'forum_read_locked'; $folder_alt = 'FORUM_LOCKED'; } else { $folder_alt = ($forum_unread) ? 'NEW_POSTS' : 'NO_NEW_POSTS'; } // Create last post link information, if appropriate if ($row['forum_last_post_id']) { $last_post_subject = $row['forum_last_post_subject']; $last_post_time = $user->format_date($row['forum_last_post_time']); $last_post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'f=' . $row['forum_id_last_post'] . '&p=' . $row['forum_last_post_id']) . '#p' . $row['forum_last_post_id']; } else { $last_post_subject = $last_post_time = $last_post_url = ''; } // Output moderator listing ... if applicable $l_moderator = $moderators_list = ''; if ($display_moderators && !empty($forum_moderators[$forum_id])) { $l_moderator = (sizeof($forum_moderators[$forum_id]) == 1) ? $user->lang['MODERATOR'] : $user->lang['MODERATORS']; $moderators_list = implode(', ', $forum_moderators[$forum_id]); } $l_post_click_count = ($row['forum_type'] == FORUM_LINK) ? 'CLICKS' : 'POSTS'; $post_click_count = ($row['forum_type'] != FORUM_LINK || $row['forum_flags'] & FORUM_FLAG_LINK_TRACK) ? $row['forum_posts'] : ''; $s_subforums_list = array(); foreach ($subforums_list as $subforum) { $s_subforums_list[] = '<a href="' . $subforum['link'] . '" class="subforum ' . (($subforum['unread']) ? 'unread' : 'read') . '">' . $subforum['name'] . '</a>'; } $s_subforums_list = (string) implode(', ', $s_subforums_list); $catless = ($row['parent_id'] == $root_data['forum_id']) ? true : false; if ($row['forum_type'] != FORUM_LINK) { $u_viewforum = append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']); } else { // If the forum is a link and we count redirects we need to visit it // If the forum is having a password or no read access we do not expose the link, but instead handle it in viewforum if (($row['forum_flags'] & FORUM_FLAG_LINK_TRACK) || $row['forum_password'] || !$auth->acl_get('f_read', $forum_id)) { $u_viewforum = append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $row['forum_id']); } else { $u_viewforum = $row['forum_link']; } } $template->assign_block_vars('forumrow', array( 'S_IS_CAT' => false, 'S_NO_CAT' => $catless && !$last_catless, 'S_IS_LINK' => ($row['forum_type'] == FORUM_LINK) ? true : false, 'S_UNREAD_FORUM' => $forum_unread, 'S_LOCKED_FORUM' => ($row['forum_status'] == ITEM_LOCKED) ? true : false, 'S_SUBFORUMS' => (sizeof($subforums_list)) ? true : false, 'FORUM_ID' => $row['forum_id'], 'FORUM_NAME' => $row['forum_name'], 'FORUM_DESC' => generate_text_for_display($row['forum_desc'], $row['forum_desc_uid'], $row['forum_desc_bitfield'], $row['forum_desc_options']), 'TOPICS' => $row['forum_topics'], $l_post_click_count => $post_click_count, 'FORUM_FOLDER_IMG' => $user->img($folder_image, $folder_alt), 'FORUM_FOLDER_IMG_SRC' => $user->img($folder_image, $folder_alt, false, '', 'src'), 'FORUM_IMAGE' => ($row['forum_image']) ? '<img src="' . $phpbb_root_path . $row['forum_image'] . '" alt="' . $user->lang[$folder_alt] . '" />' : '', 'FORUM_IMAGE_SRC' => ($row['forum_image']) ? $phpbb_root_path . $row['forum_image'] : '', 'LAST_POST_SUBJECT' => censor_text($last_post_subject), 'LAST_POST_TIME' => $last_post_time, 'LAST_POSTER' => get_username_string('username', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']), 'LAST_POSTER_COLOUR' => get_username_string('colour', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']), 'LAST_POSTER_FULL' => get_username_string('full', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']), 'MODERATORS' => $moderators_list, 'SUBFORUMS' => $s_subforums_list, 'L_SUBFORUM_STR' => $l_subforums, 'L_FORUM_FOLDER_ALT' => $folder_alt, 'L_MODERATOR_STR' => $l_moderator, 'U_VIEWFORUM' => $u_viewforum, 'U_LAST_POSTER' => get_username_string('profile', $row['forum_last_poster_id'], $row['forum_last_poster_name'], $row['forum_last_poster_colour']), 'U_LAST_POST' => $last_post_url) ); // Assign subforums loop for style authors foreach ($subforums_list as $subforum) { $template->assign_block_vars('forumrow.subforum', array( 'U_SUBFORUM' => $subforum['link'], 'SUBFORUM_NAME' => $subforum['name'], 'S_UNREAD' => $subforum['unread']) ); } $last_catless = $catless; } $template->assign_vars(array( 'U_MARK_FORUMS' => ($user->data['is_registered'] || $config['load_anon_lastread']) ? append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $root_data['forum_id'] . '&mark=forums') : '', 'S_HAS_SUBFORUM' => ($visible_forums) ? true : false, 'L_SUBFORUM' => ($visible_forums == 1) ? $user->lang['SUBFORUM'] : $user->lang['SUBFORUMS'], 'LAST_POST_IMG' => $user->img('icon_topic_latest', 'VIEW_LATEST_POST')) ); if ($return_moderators) { return array($active_forum_ary, $forum_moderators); } return array($active_forum_ary, array()); } /** * Create forum rules for given forum */ function generate_forum_rules(&$forum_data) { if (!$forum_data['forum_rules'] && !$forum_data['forum_rules_link']) { return; } global $template, $phpbb_root_path, $phpEx; if ($forum_data['forum_rules']) { $forum_data['forum_rules'] = generate_text_for_display($forum_data['forum_rules'], $forum_data['forum_rules_uid'], $forum_data['forum_rules_bitfield'], $forum_data['forum_rules_options']); } $template->assign_vars(array( 'S_FORUM_RULES' => true, 'U_FORUM_RULES' => $forum_data['forum_rules_link'], 'FORUM_RULES' => $forum_data['forum_rules']) ); } /** * Create forum navigation links for given forum, create parent * list if currently null, assign basic forum info to template */ function generate_forum_nav(&$forum_data) { global $db, $user, $template, $auth; global $phpEx, $phpbb_root_path; if (!$auth->acl_get('f_list', $forum_data['forum_id'])) { return; } // Get forum parents $forum_parents = get_forum_parents($forum_data); // Build navigation links if (!empty($forum_parents)) { foreach ($forum_parents as $parent_forum_id => $parent_data) { list($parent_name, $parent_type) = array_values($parent_data); // Skip this parent if the user does not have the permission to view it if (!$auth->acl_get('f_list', $parent_forum_id)) { continue; } $template->assign_block_vars('navlinks', array( 'S_IS_CAT' => ($parent_type == FORUM_CAT) ? true : false, 'S_IS_LINK' => ($parent_type == FORUM_LINK) ? true : false, 'S_IS_POST' => ($parent_type == FORUM_POST) ? true : false, 'FORUM_NAME' => $parent_name, 'FORUM_ID' => $parent_forum_id, 'U_VIEW_FORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $parent_forum_id)) ); } } $template->assign_block_vars('navlinks', array( 'S_IS_CAT' => ($forum_data['forum_type'] == FORUM_CAT) ? true : false, 'S_IS_LINK' => ($forum_data['forum_type'] == FORUM_LINK) ? true : false, 'S_IS_POST' => ($forum_data['forum_type'] == FORUM_POST) ? true : false, 'FORUM_NAME' => $forum_data['forum_name'], 'FORUM_ID' => $forum_data['forum_id'], 'U_VIEW_FORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $forum_data['forum_id'])) ); $template->assign_vars(array( 'FORUM_ID' => $forum_data['forum_id'], 'FORUM_NAME' => $forum_data['forum_name'], 'FORUM_DESC' => generate_text_for_display($forum_data['forum_desc'], $forum_data['forum_desc_uid'], $forum_data['forum_desc_bitfield'], $forum_data['forum_desc_options'])) ); return; } /** * Returns forum parents as an array. Get them from forum_data if available, or update the database otherwise */ function get_forum_parents(&$forum_data) { global $db; $forum_parents = array(); if ($forum_data['parent_id'] > 0) { if ($forum_data['forum_parents'] == '') { $sql = 'SELECT forum_id, forum_name, forum_type FROM ' . FORUMS_TABLE . ' WHERE left_id < ' . $forum_data['left_id'] . ' AND right_id > ' . $forum_data['right_id'] . ' ORDER BY left_id ASC'; $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) { $forum_parents[$row['forum_id']] = array($row['forum_name'], (int) $row['forum_type']); } $db->sql_freeresult($result); $forum_data['forum_parents'] = serialize($forum_parents); $sql = 'UPDATE ' . FORUMS_TABLE . " SET forum_parents = '" . $db->sql_escape($forum_data['forum_parents']) . "' WHERE parent_id = " . $forum_data['parent_id']; $db->sql_query($sql); } else { $forum_parents = unserialize($forum_data['forum_parents']); } } return $forum_parents; } /** * Generate topic pagination */ function topic_generate_pagination($replies, $url) { global $config, $user; // Make sure $per_page is a valid value $per_page = ($config['posts_per_page'] <= 0) ? 1 : $config['posts_per_page']; if (($replies + 1) > $per_page) { $total_pages = ceil(($replies + 1) / $per_page); $pagination = ''; $times = 1; for ($j = 0; $j < $replies + 1; $j += $per_page) { $pagination .= '<a href="' . $url . '&start=' . $j . '">' . $times . '</a>'; if ($times == 1 && $total_pages > 5) { $pagination .= ' ... '; // Display the last three pages $times = $total_pages - 3; $j += ($total_pages - 4) * $per_page; } else if ($times < $total_pages) { $pagination .= '<span class="page-sep">' . $user->lang['COMMA_SEPARATOR'] . '</span>'; } $times++; } } else { $pagination = ''; } return $pagination; } /** * Obtain list of moderators of each forum */ function get_moderators(&$forum_moderators, $forum_id = false) { global $config, $template, $db, $phpbb_root_path, $phpEx; // Have we disabled the display of moderators? If so, then return // from whence we came ... if (!$config['load_moderators']) { return; } $forum_sql = ''; if ($forum_id !== false) { if (!is_array($forum_id)) { $forum_id = array($forum_id); } // If we don't have a forum then we can't have a moderator if (!sizeof($forum_id)) { return; } $forum_sql = 'AND m.' . $db->sql_in_set('forum_id', $forum_id); } $sql_array = array( 'SELECT' => 'm.*, u.user_colour, g.group_colour, g.group_type', 'FROM' => array( MODERATOR_CACHE_TABLE => 'm', ), 'LEFT_JOIN' => array( array( 'FROM' => array(USERS_TABLE => 'u'), 'ON' => 'm.user_id = u.user_id', ), array( 'FROM' => array(GROUPS_TABLE => 'g'), 'ON' => 'm.group_id = g.group_id', ), ), 'WHERE' => "m.display_on_index = 1 $forum_sql", ); $sql = $db->sql_build_query('SELECT', $sql_array); $result = $db->sql_query($sql, 3600); while ($row = $db->sql_fetchrow($result)) { if (!empty($row['user_id'])) { $forum_moderators[$row['forum_id']][] = get_username_string('full', $row['user_id'], $row['username'], $row['user_colour']); } else { $forum_moderators[$row['forum_id']][] = '<a' . (($row['group_colour']) ? ' style="color:#' . $row['group_colour'] . ';"' : '') . ' href="' . append_sid("{$phpbb_root_path}memberlist.$phpEx", 'mode=group&g=' . $row['group_id']) . '">' . (($row['group_type'] == GROUP_SPECIAL) ? $user->lang['G_' . $row['group_name']] : $row['group_name']) . '</a>'; } } $db->sql_freeresult($result); return; } /** * User authorisation levels output * * @param string $mode Can be forum or topic. Not in use at the moment. * @param int $forum_id The current forum the user is in. * @param int $forum_status The forums status bit. */ function gen_forum_auth_level($mode, $forum_id, $forum_status) { global $template, $auth, $user, $config; $locked = ($forum_status == ITEM_LOCKED && !$auth->acl_get('m_edit', $forum_id)) ? true : false; $rules = array( ($auth->acl_get('f_post', $forum_id) && !$locked) ? $user->lang['RULES_POST_CAN'] : $user->lang['RULES_POST_CANNOT'], ($auth->acl_get('f_reply', $forum_id) && !$locked) ? $user->lang['RULES_REPLY_CAN'] : $user->lang['RULES_REPLY_CANNOT'], ($user->data['is_registered'] && $auth->acl_gets('f_edit', 'm_edit', $forum_id) && !$locked) ? $user->lang['RULES_EDIT_CAN'] : $user->lang['RULES_EDIT_CANNOT'], ($user->data['is_registered'] && $auth->acl_gets('f_delete', 'm_delete', $forum_id) && !$locked) ? $user->lang['RULES_DELETE_CAN'] : $user->lang['RULES_DELETE_CANNOT'], ); if ($config['allow_attachments']) { $rules[] = ($auth->acl_get('f_attach', $forum_id) && $auth->acl_get('u_attach') && !$locked) ? $user->lang['RULES_ATTACH_CAN'] : $user->lang['RULES_ATTACH_CANNOT']; } foreach ($rules as $rule) { $template->assign_block_vars('rules', array('RULE' => $rule)); } return; } /** * Generate topic status */ function topic_status(&$topic_row, $replies, $unread_topic, &$folder_img, &$folder_alt, &$topic_type) { global $user, $config; $folder = $folder_new = ''; if ($topic_row['topic_status'] == ITEM_MOVED) { $topic_type = $user->lang['VIEW_TOPIC_MOVED']; $folder_img = 'topic_moved'; $folder_alt = 'TOPIC_MOVED'; } else { switch ($topic_row['topic_type']) { case POST_GLOBAL: $topic_type = $user->lang['VIEW_TOPIC_GLOBAL']; $folder = 'global_read'; $folder_new = 'global_unread'; break; case POST_ANNOUNCE: $topic_type = $user->lang['VIEW_TOPIC_ANNOUNCEMENT']; $folder = 'announce_read'; $folder_new = 'announce_unread'; break; case POST_STICKY: $topic_type = $user->lang['VIEW_TOPIC_STICKY']; $folder = 'sticky_read'; $folder_new = 'sticky_unread'; break; default: $topic_type = ''; $folder = 'topic_read'; $folder_new = 'topic_unread'; if ($config['hot_threshold'] && $replies >= $config['hot_threshold'] && $topic_row['topic_status'] != ITEM_LOCKED) { $folder .= '_hot'; $folder_new .= '_hot'; } break; } if ($topic_row['topic_status'] == ITEM_LOCKED) { $topic_type = $user->lang['VIEW_TOPIC_LOCKED']; $folder .= '_locked'; $folder_new .= '_locked'; } $folder_img = ($unread_topic) ? $folder_new : $folder; $folder_alt = ($unread_topic) ? 'NEW_POSTS' : (($topic_row['topic_status'] == ITEM_LOCKED) ? 'TOPIC_LOCKED' : 'NO_NEW_POSTS'); // Posted image? if (!empty($topic_row['topic_posted']) && $topic_row['topic_posted']) { $folder_img .= '_mine'; } } if ($topic_row['poll_start'] && $topic_row['topic_status'] != ITEM_MOVED) { $topic_type = $user->lang['VIEW_TOPIC_POLL']; } } /** * Assign/Build custom bbcodes for display in screens supporting using of bbcodes * The custom bbcodes buttons will be placed within the template block 'custom_codes' */ function display_custom_bbcodes() { global $db, $template; // Start counting from 22 for the bbcode ids (every bbcode takes two ids - opening/closing) $num_predefined_bbcodes = 22; $sql = 'SELECT bbcode_id, bbcode_tag, bbcode_helpline FROM ' . BBCODES_TABLE . ' WHERE display_on_posting = 1 ORDER BY bbcode_tag'; $result = $db->sql_query($sql); $i = 0; while ($row = $db->sql_fetchrow($result)) { $template->assign_block_vars('custom_tags', array( 'BBCODE_NAME' => "'[{$row['bbcode_tag']}]', '[/" . str_replace('=, '', $row['bbcode_tag]) . "]'", 'BBCODE_ID' => $num_predefined_bbcodes + ($i * 2), 'BBCODE_TAG' => $row['bbcode_tag'], 'BBCODE_HELPLINE' => str_replace(array('&', '"', "'", '<', '>'), array('\&', '\"', '\\\'', '<', '>'), $row['bbcode_helpline'])) ); $i++; } $db->sql_freeresult($result); } /** * Display reasons */ function display_reasons($reason_id = 0) { global $db, $user, $template; $sql = 'SELECT * FROM ' . REPORTS_REASONS_TABLE . ' ORDER BY reason_order ASC'; $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) { // If the reason is defined within the language file, we will use the localized version, else just use the database entry... if (isset($user->lang['report_reasons']['TITLE'][strtoupper($row['reason_title'])]) && isset($user->lang['report_reasons']['DESCRIPTION'][strtoupper($row['reason_title'])])) { $row['reason_description'] = $user->lang['report_reasons']['DESCRIPTION'][strtoupper($row['reason_title'])]; $row['reason_title'] = $user->lang['report_reasons']['TITLE'][strtoupper($row['reason_title'])]; } $template->assign_block_vars('reason', array( 'ID' => $row['reason_id'], 'TITLE' => $row['reason_title'], 'DESCRIPTION' => $row['reason_description'], 'S_SELECTED' => ($row['reason_id'] == $reason_id) ? true : false) ); } $db->sql_freeresult($result); } /** * Display user activity (action forum/topic) */ function display_user_activity(&$userdata) { global $auth, $template, $db, $user; global $phpbb_root_path, $phpEx; // Do not display user activity for users having more than 5000 posts... if ($userdata['user_posts'] > 5000) { return; } $forum_ary = array(); // Do not include those forums the user is not having read access to... $forum_read_ary = $auth->acl_getf('!f_read'); foreach ($forum_read_ary as $forum_id => $not_allowed) { if ($not_allowed['f_read']) { $forum_ary[] = (int) $forum_id; } } $forum_ary = array_unique($forum_ary); $forum_sql = (sizeof($forum_ary)) ? 'AND ' . $db->sql_in_set('forum_id', $forum_ary, true) : ''; // Obtain active forum $sql = 'SELECT forum_id, COUNT(post_id) AS num_posts FROM ' . POSTS_TABLE . ' WHERE poster_id = ' . $userdata['user_id'] . " AND post_postcount = 1 $forum_sql GROUP BY forum_id ORDER BY num_posts DESC"; $result = $db->sql_query_limit($sql, 1); $active_f_row = $db->sql_fetchrow($result); $db->sql_freeresult($result); if (!empty($active_f_row)) { $sql = 'SELECT forum_name FROM ' . FORUMS_TABLE . ' WHERE forum_id = ' . $active_f_row['forum_id']; $result = $db->sql_query($sql, 3600); $active_f_row['forum_name'] = (string) $db->sql_fetchfield('forum_name'); $db->sql_freeresult($result); } // Obtain active topic $sql = 'SELECT topic_id, COUNT(post_id) AS num_posts FROM ' . POSTS_TABLE . ' WHERE poster_id = ' . $userdata['user_id'] . " AND post_postcount = 1 $forum_sql GROUP BY topic_id ORDER BY num_posts DESC"; $result = $db->sql_query_limit($sql, 1); $active_t_row = $db->sql_fetchrow($result); $db->sql_freeresult($result); if (!empty($active_t_row)) { $sql = 'SELECT topic_title FROM ' . TOPICS_TABLE . ' WHERE topic_id = ' . $active_t_row['topic_id']; $result = $db->sql_query($sql); $active_t_row['topic_title'] = (string) $db->sql_fetchfield('topic_title'); $db->sql_freeresult($result); } $userdata['active_t_row'] = $active_t_row; $userdata['active_f_row'] = $active_f_row; $active_f_name = $active_f_id = $active_f_count = $active_f_pct = ''; if (!empty($active_f_row['num_posts'])) { $active_f_name = $active_f_row['forum_name']; $active_f_id = $active_f_row['forum_id']; $active_f_count = $active_f_row['num_posts']; $active_f_pct = ($userdata['user_posts']) ? ($active_f_count / $userdata['user_posts']) * 100 : 0; } $active_t_name = $active_t_id = $active_t_count = $active_t_pct = ''; if (!empty($active_t_row['num_posts'])) { $active_t_name = $active_t_row['topic_title']; $active_t_id = $active_t_row['topic_id']; $active_t_count = $active_t_row['num_posts']; $active_t_pct = ($userdata['user_posts']) ? ($active_t_count / $userdata['user_posts']) * 100 : 0; } $l_active_pct = ($userdata['user_id'] != ANONYMOUS && $userdata['user_id'] == $user->data['user_id']) ? $user->lang['POST_PCT_ACTIVE_OWN'] : $user->lang['POST_PCT_ACTIVE']; $template->assign_vars(array( 'ACTIVE_FORUM' => $active_f_name, 'ACTIVE_FORUM_POSTS' => ($active_f_count == 1) ? sprintf($user->lang['USER_POST'], 1) : sprintf($user->lang['USER_POSTS'], $active_f_count), 'ACTIVE_FORUM_PCT' => sprintf($l_active_pct, $active_f_pct), 'ACTIVE_TOPIC' => censor_text($active_t_name), 'ACTIVE_TOPIC_POSTS' => ($active_t_count == 1) ? sprintf($user->lang['USER_POST'], 1) : sprintf($user->lang['USER_POSTS'], $active_t_count), 'ACTIVE_TOPIC_PCT' => sprintf($l_active_pct, $active_t_pct), 'U_ACTIVE_FORUM' => append_sid("{$phpbb_root_path}viewforum.$phpEx", 'f=' . $active_f_id), 'U_ACTIVE_TOPIC' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't=' . $active_t_id), 'S_SHOW_ACTIVITY' => true) ); } /** * Topic and forum watching common code */ function watch_topic_forum($mode, &$s_watching, &$s_watching_img, $user_id, $forum_id, $topic_id, $notify_status = 'unset', $start = 0) { global $template, $db, $user, $phpEx, $start, $phpbb_root_path; $table_sql = ($mode == 'forum') ? FORUMS_WATCH_TABLE : TOPICS_WATCH_TABLE; $where_sql = ($mode == 'forum') ? 'forum_id' : 'topic_id'; $match_id = ($mode == 'forum') ? $forum_id : $topic_id; $u_url = ($mode == 'forum') ? 'f' : 'f=' . $forum_id . '&t'; // Is user watching this thread? if ($user_id != ANONYMOUS) { $can_watch = true; if ($notify_status == 'unset') { $sql = "SELECT notify_status FROM $table_sql WHERE $where_sql = $match_id AND user_id = $user_id"; $result = $db->sql_query($sql); $notify_status = ($row = $db->sql_fetchrow($result)) ? $row['notify_status'] : NULL; $db->sql_freeresult($result); } if (!is_null($notify_status) && $notify_status !== '') { if (isset($_GET['unwatch'])) { if ($_GET['unwatch'] == $mode) { $is_watching = 0; $sql = 'DELETE FROM ' . $table_sql . " WHERE $where_sql = $match_id AND user_id = $user_id"; $db->sql_query($sql); } $redirect_url = append_sid("{$phpbb_root_path}view$mode.$phpEx", "$u_url=$match_id&start=$start"); meta_refresh(3, $redirect_url); $message = $user->lang['NOT_WATCHING_' . strtoupper($mode)] . '<br /><br />' . sprintf($user->lang['RETURN_' . strtoupper($mode)], '<a href="' . $redirect_url . '">', '</a>'); trigger_error($message); } else { $is_watching = true; if ($notify_status) { $sql = 'UPDATE ' . $table_sql . " SET notify_status = 0 WHERE $where_sql = $match_id AND user_id = $user_id"; $db->sql_query($sql); } } } else { if (isset($_GET['watch'])) { if ($_GET['watch'] == $mode) { $is_watching = true; $sql = 'INSERT INTO ' . $table_sql . " (user_id, $where_sql, notify_status) VALUES ($user_id, $match_id, 0)"; $db->sql_query($sql); } $redirect_url = append_sid("{$phpbb_root_path}view$mode.$phpEx", "$u_url=$match_id&start=$start"); meta_refresh(3, $redirect_url); $message = $user->lang['ARE_WATCHING_' . strtoupper($mode)] . '<br /><br />' . sprintf($user->lang['RETURN_' . strtoupper($mode)], '<a href="' . $redirect_url . '">', '</a>'); trigger_error($message); } else { $is_watching = 0; } } } else { if (isset($_GET['unwatch']) && $_GET['unwatch'] == $mode) { login_box(); } else { $can_watch = 0; $is_watching = 0; } } if ($can_watch) { $s_watching['link'] = append_sid("{$phpbb_root_path}view$mode.$phpEx", "$u_url=$match_id&" . (($is_watching) ? 'unwatch' : 'watch') . "=$mode&start=$start"); $s_watching['title'] = $user->lang[(($is_watching) ? 'STOP' : 'START') . '_WATCHING_' . strtoupper($mode)]; $s_watching['is_watching'] = $is_watching; } return; } /** * Get user rank title and image * * @param int $user_rank the current stored users rank id * @param int $user_posts the users number of posts * @param string &$rank_title the rank title will be stored here after execution * @param string &$rank_img the rank image as full img tag is stored here after execution * @param string &$rank_img_src the rank image source is stored here after execution * */ function get_user_rank($user_rank, $user_posts, &$rank_title, &$rank_img, &$rank_img_src) { global $ranks, $config; if (empty($ranks)) { global $cache; $ranks = $cache->obtain_ranks(); } if (!empty($user_rank)) { $rank_title = (isset($ranks['special'][$user_rank]['rank_title'])) ? $ranks['special'][$user_rank]['rank_title'] : ''; $rank_img = (!empty($ranks['special'][$user_rank]['rank_image'])) ? '<img src="' . $config['ranks_path'] . '/' . $ranks['special'][$user_rank]['rank_image'] . '" alt="' . $ranks['special'][$user_rank]['rank_title'] . '" title="' . $ranks['special'][$user_rank]['rank_title'] . '" />' : ''; $rank_img_src = (!empty($ranks['special'][$user_rank]['rank_image'])) ? $config['ranks_path'] . '/' . $ranks['special'][$user_rank]['rank_image'] : ''; } else { if (!empty($ranks['normal'])) { foreach ($ranks['normal'] as $rank) { if ($user_posts >= $rank['rank_min']) { $rank_title = $rank['rank_title']; $rank_img = (!empty($rank['rank_image'])) ? '<img src="' . $config['ranks_path'] . '/' . $rank['rank_image'] . '" alt="' . $rank['rank_title'] . '" title="' . $rank['rank_title'] . '" />' : ''; $rank_img_src = (!empty($rank['rank_image'])) ? $config['ranks_path'] . '/' . $rank['rank_image'] : ''; break; } } } } } /** * Get user avatar * * @param string $avatar Users assigned avatar name * @param int $avatar_type Type of avatar * @param string $avatar_width Width of users avatar * @param string $avatar_height Height of users avatar * @param string $alt Optional language string for alt tag within image, can be a language key or text * * @return string Avatar image */ function get_user_avatar($avatar, $avatar_type, $avatar_width, $avatar_height, $alt = 'USER_AVATAR') { global $user, $config, $phpbb_root_path, $phpEx; if (empty($avatar) || !$avatar_type) { return ''; } $avatar_img = ''; switch ($avatar_type) { case AVATAR_UPLOAD: $avatar_img = $phpbb_root_path . "download/file.$phpEx?avatar="; break; case AVATAR_GALLERY: $avatar_img = $phpbb_root_path . $config['avatar_gallery_path'] . '/'; break; } $avatar_img .= $avatar; return '<img src="' . $avatar_img . '" width="' . $avatar_width . '" height="' . $avatar_height . '" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />'; } ?> Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 functions_posts_anywhere.php <?php /** * * @package acp * @version $Id: functions_admin.php,v 1.247 2007/08/19 13:36:52 naderman Exp $ * @copyright © 2005 phpBB Group * @license http://opensource.org/licenses/gpl-license.php GNU Public License * */ /** * Display posts for forums, topics or posts * * @param mixed $forum_id forum_id or forum_ids (array) * @param mixed $topic_id topic_id or topic_ids (array) * @param mixed $post_id post_id or post_ids (array) * @param int $limit Number of results returned * @param string $display_type forum, topic or post. Displays results as forum, topic or posts * @param int $char_limit character limit for each post before it cuts off to say read more * @param bool $recursive view topics or posts under this parent recursively */ function display_posts($id, $limit = 10, $char_limit = 500, $unique = true, $recursive = true) { global $db, $user, $template, $phpbb_root_path, $auth, $phpEx, $config; $forum_id = request_var('f', 0); if (!$forum_id) { $forum_id = $id; } // Container for user details, only process once $forum_ary = $post_ary = $user_cache = $user_ary = $post_ids = $user_cache = $attachments = $update_count = array(); $has_attachments = $display_notice = false; //if recursive is selected, grab forums beneath the selected if ($recursive && $forum_id) { //grab array of subforums beneath this one $forum_ary = select_subforums($forum_id); if (!sizeof($forum_ary)) { trigger_error('NO_FORUM'); } $where = $db->sql_in_set('forum_id', $forum_ary) . ((!$auth->acl_get('m_approve', 'forum_id')) ? ' AND post_approved = 1' : ''); } else if ($forum_id) { if (!$auth->acl_get('f_read', $forum_id) && $forum_id !== 0) { trigger_error('SORRY_AUTH_READ'); } $forum_ary[$forum_id] = $forum_id; $where = $db->sql_in_set('forum_id', $forum_ary) . ((!$auth->acl_get('m_approve', 'forum_id')) ? ' AND post_approved = 1' : ''); } else if ($id === false) { $where = (!$auth->acl_get('m_approve', 'forum_id')) ? ' post_approved = 1' : ''; } else { $forum_ary[0] = 0; $where = $db->sql_in_set('forum_id', $forum_ary) . ((!$auth->acl_get('m_approve', 'forum_id')) ? ' AND post_approved = 1' : ''); } if ($unique) { //grab the topic id's well be using $sql_ary = array( 'SELECT' => 'DISTINCT topic_id', 'FROM' => array( POSTS_TABLE => '', ), 'WHERE' => $where, 'ORDER_BY' => 'post_time DESC', ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = $db->sql_query_limit($sql, $limit); while ($row = $db->sql_fetchrow($result)) { $topic_ary[$row['topic_id']] = $row['topic_id']; } $db->sql_freeresult($result); } $details_ary = array( 'unique' => $unique, 'limit' => $limit, ); select_posts($details_ary, $forum_ary, $topic_ary, $post_ary, $post_ids, $user_ary); //grab attachments if any for these posts $sql_ary = array( 'SELECT' => '*', 'FROM' => array( ATTACHMENTS_TABLE => '', ), 'WHERE' => $db->sql_in_set('post_msg_id', $post_ids), ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) { $attachments[$row['post_msg_id']][] = $row; } $db->sql_freeresult($result); //get user_cache build_user_cache($user_ary, $user_cache); // Load custom profile fields if ($config['load_cpf_viewtopic']) { include($phpbb_root_path . 'includes/functions_profile_fields.' . $phpEx); $cp = new custom_profile(); // Grab all profile fields from users in id cache for later use - similar to the poster cache $profile_fields_cache = $cp->generate_profile_fields_template('grab', $user_ary); } // Generate online information for user if ($config['load_onlinetrack'] && sizeof($user_ary)) { $sql_ary = array( 'SELECT' => 'session_user_id, MAX(session_time) as online_time, MIN(session_viewonline) AS viewonline', 'FROM' => array( SESSIONS_TABLE => '', ), 'WHERE' => $db->sql_in_set('session_user_id', $user_ary), 'GROUP_BY' => 'session_user_id', ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = $db->sql_query($sql); $update_time = $config['load_online_time'] * 60; while ($row = $db->sql_fetchrow($result)) { $user_cache[$row['session_user_id']]['online'] = (time() - $update_time < $row['online_time'] && (($row['viewonline']) || $auth->acl_get('u_viewonline'))) ? true : false; } $db->sql_freeresult($result); } foreach ($post_ary as $row) { $poster_id = $row['poster_id']; $forum_id = $row['forum_id']; $row['bbcode_options'] = $row['enable_bbcode'] + $row['enable_smilies'] + $row['enable_magic_url']; $row['username'] = $user_cache[$poster_id]['username']; $row['user_colour'] = $user_cache[$poster_id]['user_colour']; $message = $row['post_text']; $trim = false; if ($char_limit) { strip_bbcode($message, $row['bbcode_uid']); if (utf8_strlen($message) > $char_limit) { $message = utf8_substr($message, 0, $char_limit); $trim = true; } else { $message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']); } } else { $message = generate_text_for_display($row['post_text'], $row['bbcode_uid'], $row['bbcode_bitfield'], $row['bbcode_options']); } if ($auth->acl_get('u_download') && $auth->acl_get('f_download', $forum_id)) { parse_attachments($forum_id, $message, $attachments[$row['post_id']], $update_count); } else { $display_notice = true; } $post_unread = ($row['mark_time'] > $row['post_time'] && $user->data['user_id'] != ANONYMOUS) ? true : false; if ($config['load_cpf_viewtopic']) { $cp_row = (isset($profile_fields_cache[$poster_id])) ? $cp->generate_profile_fields_template('show', false, $profile_fields_cache[$poster_id]) : array(); } $template->assign_block_vars('postrow', array( 'POST_AUTHOR_FULL' => get_username_string('full', $poster_id, $row['username'], $row['user_colour'], $row['post_username']), 'POST_AUTHOR_COLOUR' => get_username_string('colour', $poster_id, $row['username'], $row['user_colour'], $row['post_username']), 'POST_AUTHOR' => get_username_string('username', $poster_id, $row['username'], $row['user_colour'], $row['post_username']), 'U_POST_AUTHOR' => get_username_string('profile', $poster_id, $row['username'], $row['user_colour'], $row['post_username']), 'RANK_TITLE' => $user_cache[$poster_id]['rank_title'], 'RANK_IMG' => $user_cache[$poster_id]['rank_image'], 'RANK_IMG_SRC' => $user_cache[$poster_id]['rank_image_src'], 'POSTER_JOINED' => $user_cache[$poster_id]['joined'], 'POSTER_POSTS' => $user_cache[$poster_id]['posts'], 'POSTER_FROM' => $user_cache[$poster_id]['from'], 'POSTER_AVATAR' => $user_cache[$poster_id]['avatar'], 'POSTER_WARNINGS' => $user_cache[$poster_id]['warnings'], 'POSTER_AGE' => $user_cache[$poster_id]['age'], 'POST_DATE' => $user->format_date($row['post_time']), 'POST_SUBJECT' => $row['post_subject'], 'MESSAGE' => $message, 'READ_MORE' => ($trim) ? true : false, 'SIGNATURE' => ($row['enable_sig']) ? $user_cache[$poster_id]['sig'] : '', 'EDITED_MESSAGE' => ($row['post_edit_count']) ? get_username_string('full', $row['post_edit_user'], $user_cache[$poster_id]['username'], $user_cache[$poster_id]['user_colour']) : '', 'EDIT_REASON' => $row['post_edit_reason'], 'MINI_POST_IMG' => ($post_unread) ? $user->img('icon_post_target_unread', 'NEW_POST') : $user->img('icon_post_target', 'POST'), #'POST_ICON_IMG' => ($row['enable_icons'] && !empty($row['icon_id'])) ? $icons[$row['icon_id']]['img'] : '', #'POST_ICON_IMG_WIDTH' => ($row['enable_icons'] && !empty($row['icon_id'])) ? $icons[$row['icon_id']]['width'] : '', #'POST_ICON_IMG_HEIGHT'=> ($row['enable_icons'] && !empty($row['icon_id'])) ? $icons[$row['icon_id']]['height'] : '', 'ICQ_STATUS_IMG' => $user_cache[$poster_id]['icq_status_img'], 'ONLINE_IMG' => ($poster_id == ANONYMOUS || !$config['load_onlinetrack']) ? '' : (($user_cache[$poster_id]['online']) ? $user->img('icon_user_online', 'ONLINE') : $user->img('icon_user_offline', 'OFFLINE')), 'S_ONLINE' => ($poster_id == ANONYMOUS || !$config['load_onlinetrack']) ? false : (($user_cache[$poster_id]['online']) ? true : false), 'U_EDIT' => (!$user->data['is_registered']) ? '' : ((($user->data['user_id'] == $poster_id && $auth->acl_get('f_edit', $forum_id) && ($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])) || $auth->acl_get('m_edit', $forum_id)) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=edit&f=$forum_id&p={$row['post_id']}") : ''), 'U_QUOTE' => ($auth->acl_get('f_reply', $forum_id)) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=quote&f=$forum_id&p={$row['post_id']}") : '', 'U_INFO' => ($auth->acl_get('m_info', $forum_id)) ? append_sid("{$phpbb_root_path}mcp.$phpEx", "i=main&mode=post_details&f=$forum_id&p=" . $row['post_id'], true, $user->session_id) : '', 'U_DELETE' => (!$user->data['is_registered']) ? '' : ((($user->data['user_id'] == $poster_id && $auth->acl_get('f_delete', $forum_id) && $row['topic_last_post_id'] == $row['post_id'] && ($row['post_time'] > time() - ($config['edit_time'] * 60) || !$config['edit_time'])) || $auth->acl_get('m_delete', $forum_id)) ? append_sid("{$phpbb_root_path}posting.$phpEx", "mode=delete&f=$forum_id&p={$row['post_id']}") : ''), 'U_PROFILE' => $user_cache[$poster_id]['profile'], 'U_SEARCH' => $user_cache[$poster_id]['search'], 'U_PM' => ($poster_id != ANONYMOUS && $config['allow_privmsg'] && $auth->acl_get('u_sendpm') && ($user_cache[$poster_id]['allow_pm'] || $auth->acl_gets('a_', 'm_') || $auth->acl_getf_global('m_'))) ? append_sid("{$phpbb_root_path}ucp.$phpEx", 'i=pm&mode=compose&action=quotepost&p=' . $row['post_id']) : '', 'U_EMAIL' => $user_cache[$poster_id]['email'], 'U_WWW' => $user_cache[$poster_id]['www'], 'U_ICQ' => $user_cache[$poster_id]['icq'], 'U_AIM' => $user_cache[$poster_id]['aim'], 'U_MSN' => $user_cache[$poster_id]['msn'], 'U_YIM' => $user_cache[$poster_id]['yim'], 'U_JABBER' => $user_cache[$poster_id]['jabber'], 'U_REPORT' => ($auth->acl_get('f_report', $forum_id)) ? append_sid("{$phpbb_root_path}report.$phpEx", 'f=' . $forum_id . '&p=' . $row['post_id']) : '', 'U_MCP_REPORT' => ($auth->acl_get('m_report', $forum_id)) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=reports&mode=report_details&f=' . $forum_id . '&p=' . $row['post_id'], true, $user->session_id) : '', 'U_MCP_APPROVE' => ($auth->acl_get('m_approve', $forum_id)) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=queue&mode=approve_details&f=' . $forum_id . '&p=' . $row['post_id'], true, $user->session_id) : '', 'U_MINI_POST' => append_sid("{$phpbb_root_path}viewtopic.$phpEx", 'p=' . $row['post_id']) . (($row['topic_type'] == POST_GLOBAL) ? '&f=' . $forum_id : '') . '#p' . $row['post_id'], #'U_NEXT_POST_ID' => ($i < $i_total && isset($rowset[$post_list[$i + 1]])) ? $rowset[$post_list[$i + 1]]['post_id'] : '', #'U_PREV_POST_ID' => $prev_post_id, 'U_NOTES' => ($auth->acl_getf_global('m_')) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=notes&mode=user_notes&u=' . $poster_id, true, $user->session_id) : '', 'U_WARN' => ($auth->acl_get('m_warn') && $poster_id != $user->data['user_id'] && $poster_id != ANONYMOUS) ? append_sid("{$phpbb_root_path}mcp.$phpEx", 'i=warn&mode=warn_post&f=' . $forum_id . '&p=' . $row['post_id'], true, $user->session_id) : '', 'POST_ID' => $row['post_id'], 'POSTER_ID' => $poster_id, 'S_HAS_ATTACHMENTS' => (!empty($attachments[$row['post_id']])) ? true : false, 'S_POST_UNAPPROVED' => ($row['post_approved']) ? false : true, 'S_POST_REPORTED' => ($row['post_reported'] && $auth->acl_get('m_report', $forum_id)) ? true : false, 'S_DISPLAY_NOTICE' => $display_notice && $row['post_attachment'], #'S_FRIEND' => ($row['friend']) ? true : false, 'S_UNREAD_POST' => $post_unread, #'S_FIRST_UNREAD' => $s_first_unread, 'S_CUSTOM_FIELDS' => (isset($cp_row['row']) && sizeof($cp_row['row'])) ? true : false, #'S_TOPIC_POSTER' => ($topic_data['topic_poster'] == $poster_id) ? true : false, )); // Display not already displayed Attachments for this post, we already parsed them. if (!empty($attachments[$row['post_id']])) { foreach ($attachments[$row['post_id']] as $attachment) { $template->assign_block_vars('postrow.attachment', array( 'DISPLAY_ATTACHMENT' => $attachment) ); } } } $db->sql_freeresult($result); return; } /** * Select subforums * * @param int $forum_id * @return array $forum_ary array of forum id's */ function select_subforums($forum_id) { global $db, $auth; $forum_ary = array(); //grab all forums and subforums under the forum id selected $sql_ary = array( 'SELECT' => 'b.*', 'FROM' => array( FORUMS_TABLE => 'a', ), 'LEFT_JOIN' => array( array( 'FROM' => array(FORUMS_TABLE => 'b'), 'ON' => 'b.left_id BETWEEN a.left_id AND a.right_id', ) ), 'WHERE' => "a.forum_id = $forum_id", 'ORDER_BY' => 'b.forum_last_post_time DESC', ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) { //compile the list of ids if we have permission to view them if (!$auth->acl_get('f_read', $forum_id)) { continue; } $forum_ary[$row['forum_id']] = $row['forum_id']; } $db->sql_freeresult($result); return $forum_ary; } /** * Select posts and post info to display * * @param array $details insert details (limit, where and unique) * @param array $topic_ary insert topic_ary * @param array $post_ary output post_ary * @param array $post_ids output post_ids * @param array $user_ary output user_ary (array of user_ids) */ function select_posts($details, $forum_ary, &$topic_ary, &$post_ary, &$post_ids, &$user_ary) { global $db, $user, $auth; //open up some vars $unique = $details['unique']; $limit = $details['limit']; //get unread and posts data $count = 0; if (sizeof($topic_ary)) { $where = $db->sql_in_set('p.topic_id', $topic_ary) . ' AND t.topic_id = p.topic_id'; } else if (sizeof($forum_ary)) { $where = $db->sql_in_set('p.forum_id', $forum_ary) . ((!$auth->acl_get('m_approve', 'p.forum_id')) ? ' AND p.post_approved = 1' : ''); } else { $where = ''; } $sql_ary = array( 'SELECT' => 'p.*, t.*, tt.mark_time', 'FROM' => array( POSTS_TABLE => 'p', TOPICS_TABLE => 't', ), 'LEFT_JOIN' => array( array( 'FROM' => array(TOPICS_TRACK_TABLE => 'tt'), 'ON' => "tt.topic_id = p.topic_id AND tt.user_id = {$user->data['user_id']}", ), array( 'FROM' => array(USERS_TABLE => 'u'), 'ON' => 'u.user_id = p.poster_id', ), ), 'WHERE' => $where, 'ORDER_BY' => 'p.post_time DESC', ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = ($unique) ? $db->sql_query($sql) : $db->sql_query_limit($sql, $limit); while ($row = $db->sql_fetchrow($result)) { if (!$auth->acl_get('f_read', $row['forum_id']) && $row['forum_id'] != 0) { continue; } //if unique = true, make sure we aren't pulling duplicate topics if ($unique) { if (!isset($topic_ary[$row['topic_id']])) { continue; } if ($count == $limit) { break; } unset($topic_ary[$row['topic_id']]); $count++; } $post_ary[$row['post_id']] = $row; $post_ids[$row['post_id']] = $row['post_id']; if ($row['post_edit_user']) { $user_ary[$row['post_edit_user']] = $row['post_edit_user']; } $user_ary[$row['poster_id']] = $row['poster_id']; } $db->sql_freeresult($result); if (!sizeof($post_ary)) { trigger_error('NO_FORUM'); } return; } /** * Build User Cache * * @param array $user_ary insert user id's * @param array $user_cache outputs user_cache */ function build_user_cache($user_ary, &$user_cache) { global $db, $user, $config, $auth, $phpbb_root_path, $phpEx; $now = getdate(time() + $user->timezone + $user->dst - date('Z')); //grab users data $sql_ary = array( 'SELECT' => '*', 'FROM' => array( USERS_TABLE => '', ), 'WHERE' => $db->sql_in_set('user_id', $user_ary), ); $sql = $db->sql_build_query('SELECT', $sql_ary); $result = $db->sql_query($sql); while ($row = $db->sql_fetchrow($result)) { $poster_id = $row['user_id']; if (!isset($user_cache[$poster_id])) { if ($poster_id == ANONYMOUS) { $user_cache[$poster_id] = array( 'joined' => '', 'posts' => '', 'from' => '', 'sig' => '', 'sig_bbcode_uid' => '', 'sig_bbcode_bitfield' => '', 'online' => false, 'avatar' => '', 'rank_title' => '', 'rank_image' => '', 'rank_image_src' => '', 'sig' => '', 'posts' => '', 'profile' => '', 'pm' => '', 'email' => '', 'www' => '', 'icq_status_img' => '', 'icq' => '', 'aim' => '', 'msn' => '', 'yim' => '', 'jabber' => '', 'search' => '', 'age' => '', 'username' => $row['username'], 'user_colour' => $row['user_colour'], 'warnings' => 0, 'allow_pm' => 0, ); } else { $user_sig = ''; // We add the signature to every posters entry because enable_sig is post dependant if ($row['user_sig'] && $config['allow_sig'] && $user->optionget('viewsigs')) { $user_sig = generate_text_for_display($row['user_sig'], $row['user_sig_bbcode_uid'], $row['user_sig_bbcode_bitfield'], 7); } $user_cache[$poster_id] = array( 'joined' => $user->format_date($row['user_regdate']), 'posts' => $row['user_posts'], 'warnings' => (isset($row['user_warnings'])) ? $row['user_warnings'] : 0, 'from' => (!empty($row['user_from'])) ? $row['user_from'] : '', 'sig' => $user_sig, 'viewonline' => $row['user_allow_viewonline'], 'allow_pm' => $row['user_allow_pm'], 'avatar' => ($user->optionget('viewavatars')) ? get_user_avatar($row['user_avatar'], $row['user_avatar_type'], $row['user_avatar_width'], $row['user_avatar_height']) : '', 'age' => '', 'rank_title' => '', 'rank_image' => '', 'rank_image_src' => '', 'username' => $row['username'], 'user_colour' => $row['user_colour'], 'online' => false, 'profile' => append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=viewprofile&u=$poster_id"), 'www' => $row['user_website'], 'aim' => ($row['user_aim'] && $auth->acl_get('u_sendim')) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=contact&action=aim&u=$poster_id") : '', 'msn' => ($row['user_msnm'] && $auth->acl_get('u_sendim')) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=contact&action=msnm&u=$poster_id") : '', 'yim' => ($row['user_yim']) ? 'http://edit.yahoo.com/config/send_webmesg?.target=' . $row['user_yim'] . '&.src=pg' : '', 'jabber' => ($row['user_jabber'] && $auth->acl_get('u_sendim')) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=contact&action=jabber&u=$poster_id") : '', 'search' => ($auth->acl_get('u_search')) ? append_sid("{$phpbb_root_path}search.$phpEx", 'search_author=' . urlencode($row['username']) .'&showresults=posts') : '', ); get_user_rank($row['user_rank'], $row['user_posts'], $user_cache[$poster_id]['rank_title'], $user_cache[$poster_id]['rank_image'], $user_cache[$poster_id]['rank_image_src']); $user_cache[$poster_id]['email'] = ''; if (!empty($row['user_allow_viewemail']) || $auth->acl_get('a_email')) { $user_cache[$poster_id]['email'] = ($config['board_email_form'] && $config['email_enable']) ? append_sid("{$phpbb_root_path}memberlist.$phpEx", "mode=email&u=$poster_id") : (($config['board_hide_emails'] && !$auth->acl_get('a_email')) ? '' : 'mailto:' . $row['user_email']); } $user_cache[$poster_id]['icq'] = (!empty($row['user_icq'])) ? 'http://www.icq.com/people/webmsg.php?to=' . $row['user_icq'] : ''; $user_cache[$poster_id]['icq_status_img'] = (!empty($row['user_icq'])) ? '<img src="http://web.icq.com/whitepages/online?icq=' . $row['user_icq'] . '&img=5" width="18" height="18" alt="" />' : ''; if ($config['allow_birthdays'] && !empty($row['user_birthday'])) { list($bday_day, $bday_month, $bday_year) = array_map('intval', explode('-', $row['user_birthday'])); if ($bday_year) { $diff = $now['mon'] - $bday_month; $diff = ($diff < 0 || $now['mday'] - $bday_day < 0) ? 1 : 0; $user_cache[$poster_id]['age'] = (int) ($now['year'] - $bday_year - $diff); } } } } } $db->sql_freeresult($result); return; } ?> Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 That was the two files requested sorry they are so large I had to split them up on two posts. They are both in the same file path http://www.adviceforums.org/phpBB3/includes/ or /public_html/phpBB3/includes Quote Link to comment Share on other sites More sharing options...
PHP_PhREEEk Posted November 25, 2007 Share Posted November 25, 2007 Well, that was special... I really doubt whether phpBB core files are going to contain your parse errors. Especially since they are not being properly included in your script. Did you happen to find time to do as I suggested, and did it do anything different? PhREEEk Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 I don't see anything particularly wrong with the code...mostly just html. You can turn on php error reporting by placing the following at the very top of your page: <?php ini_set("display_errors", 1); ini_set("display_startup_errors", 1); error_reporting(E_ALL); ?> I added the code to gave me to the tope of the page. I also used the code PhREEEk gave me. I wasn't sure what path I need to fix so I removed the .php off the end of the 2 fun files. this is the error i'm getting now. Warning: include($phpbb_root_pathincludes/functions_display.php) [function.include]: failed to open stream: No such file or directory in /home/advisorg/public_html/index.php on line 60 Warning: include() [function.include]: Failed opening '$phpbb_root_pathincludes/functions_display.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/advisorg/public_html/index.php on line 60 Warning: include($phpbb_root_pathincludes/functions_posts_anywhere.php) [function.include]: failed to open stream: No such file or directory in /home/advisorg/public_html/index.php on line 61 Warning: include() [function.include]: Failed opening '$phpbb_root_pathincludes/functions_posts_anywhere.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/advisorg/public_html/index.php on line 61 Fatal error: Call to undefined function display_posts() in /home/advisorg/public_html/index.php on line 68 Quote Link to comment Share on other sites More sharing options...
wsantos Posted November 25, 2007 Share Posted November 25, 2007 Warning: include($phpbb_root_pathincludes/functions_display.php) [function.include]: failed to open stream: No such file or directory in /home/advisorg/public_html/index.php on line 60 Means that there is no such file in that directory. Utilize the list command to check if the files are in that path. Quote Link to comment Share on other sites More sharing options...
revraz Posted November 25, 2007 Share Posted November 25, 2007 Because it's not parsing the variable. Quote Link to comment Share on other sites More sharing options...
NovaArgon Posted November 25, 2007 Author Share Posted November 25, 2007 Thank you guys so much for taking the time to help me with this. The path would just be http://www.adviceforums.org/phpBB3/includes/functions_display.php right? I just don't understand a lot of this and i'm starting to think it has something to do with my host... They suck but they are free. We have tried so much stuff and its still not working. When I say we I mean... http://www.phpbbhacks.com/forums/recent-posts-disply-on-home-page-vt71128.html http://www.webmasterwidget.com/index.php?topic=115.0 http://forums.htmlhelp.com/index.php?showtopic=4724 http://www.phpbb.com/community/viewtopic.php?f=70&t=544039 http://www.phpbb.com/community/viewtopic.php?f=72&t=546383 http://www.theadminzone.com/forums/showthread.php?t=43277 http://www.dietzelsupport.com/showthread.php?t=16742 The part that gets me after talking to all these people is that its skill level is rated EASY and the average install time is 3 freaking minuets. I have been working on it for days lol I am just starting to think its something other than an error between the seat and the keyboard... which is usually always the case. Do you think I should just give up on it or what? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.