test tag
0, 'dups' => 0); $tag_array = explode(',', $tags); for($i = 0; $i < sizeof($tag_array); $i++) { if(insert_tag(str_replace('"', '', trim($tag_array[$i])), $topic_id)){ $outcome['added']++; }else{ $outcome['dups']++; } } return $outcome; } function insert_tag($tag, $topic_id){ global $db; $sql_array = array('tag' => $tag, 'topic_id' => $topic_id); if(trim($tag) == '') { //exit right away return false; } $sql = 'SELECT * FROM ' . TAGS_TABLE . " WHERE " . $db->sql_build_array('SELECT', $sql_array); $result = $db->sql_query($sql); $row = $db->sql_fetchrow($result); if($row != null) { return false; } else { $sql = "INSERT INTO " . TAGS_TABLE . ' ' . $db->sql_build_array('INSERT', $sql_array); $db->sql_query($sql); return true; } } function get_board_tags($limit){ global $db, $config, $auth; $sql = "SELECT t.*, topics.forum_id FROM " . TAGS_TABLE . " t JOIN " . TOPICS_TABLE . " topics ON t.topic_id = topics.topic_id "; $sql = get_cloud_sort($sql); if($limit > 0){ $result = $db->sql_query_limit($sql, $limit, 0); }else{ $result = $db->sql_query($sql); } /* for($i = 0; $i < sizeof($result_set); $i++){ $tag_array[$result_set[$i]['tag']] = $result_set[$i]['tag_count']; } * */ $tag_list = array(); while ($row = $db->sql_fetchrow($result)){ // Do not include those topics the user has no permission to access if ($auth->acl_get('f_read', $row['forum_id'])){ if(isset($tag_list[$row['tag']])){ $tag_list[$row['tag']] += 1; }else{ $tag_list[$row['tag']] = 1; } } } return $tag_list; } function get_topic_tags($topic_id, $limit){ global $db, $config, $auth; $sql = "SELECT t.*, topics.forum_id FROM " . TAGS_TABLE . " t JOIN " . TOPICS_TABLE . " topics ON t.topic_id = topics.topic_id - "; + WHERE t.topic_id = " . (int)$topic_id; $sql = get_cloud_sort($sql); if($limit > 0){ $result = $db->sql_query_limit($sql, $limit, 0); }else{ $result = $db->sql_query($sql); } $tag_list = array(); while ($row = $db->sql_fetchrow($result)){ // Do not include those topics the user has no permission to access if ($auth->acl_get('f_read', $row['forum_id'])){ if(isset($tag_list[$row['tag']])){ $tag_list[$row['tag']] += 1; }else{ $tag_list[$row['tag']] = 1; } } } return $tag_list; } function get_cloud_sort($sql){ global $config; switch($config['ptt_tag_sort']){ case 'random': $sql .= " ORDER BY RAND()"; break; case 'popular': $sql .= ' ORDER BY tag_count DESC'; break; case 'alphabetical': default: $sql .= " ORDER BY t.tag"; break; } return $sql; } function get_tag_cloud($min_size, $max_size, $col1, $col2, $limit){ global $phpEx, $user, $config, $phpbb_root_path; $tags = get_board_tags($limit); if(sizeof($tags) > 0){ $min_count = min(array_values($tags)); $max_count = max(array_values($tags)); $spread = $max_count - $min_count; if($spread == 0){ $spread = 1; } $tag_cloud = ''; $cTools = new ColourTools(); $gradient = $cTools->gradient($col1, $col2, $max_count); foreach ($tags as $tag => $count) { $size = $min_size + ($count - $min_count) * ($max_size - $min_size) / $spread; $tag_param = $tag; if(strpos($tag, ' ') !== false){ $tag_param = '"' . urlencode($tag) . '"'; } $tag_cloud .= ' ' . $tag . ' '; } }else{ $tag_cloud = false; } return $tag_cloud; } function get_tag_list($topic_id, $limit, $type = 'topic', $admin = false){ global $phpbb_root_path, $phpEx, $user; $tag_list = ""; $tags = get_topic_tags($topic_id, $limit); if(sizeof($tags) > 0) { foreach ($tags as $tag => $count) { $tag_param = $tag; if(strpos($tag, ' ') !== false) { $tag_param = '"' . urlencode($tag) . '"'; } if($admin){ //$tag_list .= '     '; } $tag_list .= '' . $tag . ', '; } $tag_list = substr($tag_list, 0, -2); } else { $tag_list = false; } return $tag_list; } /* USED FOR DIFFERENT TAGS DEPENDING ON WETHER IT SHOULD BE BOARD, TOPIC, FROUM. NEEDS RE WORKING function get_topic_tags($type = 'board', $id = 0, $limit = 60){ //TODO: santize input global $db; switch($type){ case 'forum': //forum sql $sql = "SELECT t.tag, COUNT(*) tag_count FROM " . TAGS_TABLE . " t, " . TOPICS_TABLE . " topics WHERE topics.forum_id = $id AND t.topic_id = topics.topic_id GROUP BY t.tag"; break; case 'topic': //topic sql $sql = "SELECT t.tag, COUNT(*) tag_count FROM " . TAGS_TABLE . " t WHERE t.topic_id = $id GROUP BY t.tag"; break; case 'board': default: //board sql $sql = "SELECT t.tag, COUNT(*) tag_count FROM " . TAGS_TABLE . " t GROUP BY t.tag"; } if($limit > 0){ $result = $db->sql_query_limit($sql, $limit, 0); }else{ $result = $db->sql_query($sql); } $result_set = $db->sql_fetchrowset($result); $tag_array = array(); for($i = 0; $i < sizeof($result_set); $i++) { $tag_array[$result_set[$i]['tag']] = $result_set[$i]['tag_count']; } return $tag_array; } function get_tag_list($topic_id, $limit, $type = 'topic', $admin = false){ global $phpbb_root_path, $phpEx, $user; $tag_list = ""; $tags = get_topic_tags($type, $topic_id, $limit); if(sizeof($tags) > 0) { foreach ($tags as $tag => $count) { $tag_param = $tag; if(strpos($tag, ' ') !== false) { $tag_param = '"' . $tag . '"'; } if($admin){ $tag_list .= '     '; } $tag_list .= '' . $tag . ', '; } $tag_list = substr($tag_list, 0, -2); } else { $tag_list = false; } return $tag_list; } function get_tag_cloud($type = 'board', $id = -1, $min_size = 8, $max_size = 26, $limit = 60){ global $phpEx, $user, $config; $tags = get_topic_tags($type, $id, $limit); if(sizeof($tags) > 0) { $min_count = min(array_values($tags)); $max_count = max(array_values($tags)); $spread = $max_count - $min_count; if($spread == 0) { $spread = 1; } $cTools = new ColourTools(); $gradient = $cTools->gradient($config['ptt_colour1'], $config['ptt_colour2'], $max_count); foreach ($tags as $tag => $count) { $size = $min_size + ($count - $min_count) * ($max_size - $min_size) / $spread; $tag_param = $tag; if(strpos($tag, ' ') !== false) { $tag_param = '"' . $tag . '"'; } $tag_cloud .= ' ' . $tag . ' '; } } else { $tag_cloud = false; } return $tag_cloud; } */ function get_num_rows($tags){ global $db, $config, $auth; $end = $config['topics_per_page']; $tag_array = filter_tags($tags); $sql = "SELECT topi.topic_id, topi.forum_id, topi.topic_type, topi.topic_replies_real, topi.topic_replies, topi.topic_status, topi.topic_moved_id, topi.topic_last_post_time, topi.topic_approved, topi.topic_poster, topi.topic_first_poster_name, topi.topic_time, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_poster_id, topi.topic_views, topi.topic_title, topi.icon_id, topi.poll_start, topi.topic_attachment, topi.topic_first_poster_name, COUNT(topi.topic_id) count FROM ". TAGS_TABLE ." t, ". TOPICS_TABLE ." topi"; if(!empty($tag_array['include'])){ $sql .= " WHERE (t.tag IN ("; $sql .= prepare_search_string($tag_array['include']); $sql .= "))"; } if(!empty($tag_array['include']) && !empty($tag_array['exclude'])){ $sql .= " AND "; }else if(empty($tag_array['include']) && !empty($tag_array['exclude'])){ $sql .= " WHERE "; } if(!empty($tag_array['exclude'])){ $sql .= " (topi.topic_id NOT IN ( SELECT top2.topic_id FROM ". TAGS_TABLE ." t2, ". TOPICS_TABLE ." top2 WHERE t2.topic_id = top2.topic_id"; $sql .= prep_exclusion_string($tag_array['exclude']); $sql .= "))"; } $sql .= "AND topi.topic_id = t.topic_id GROUP BY topi.topic_id, topi.forum_id, topi.topic_type, topi.topic_replies_real, topi.topic_replies, topi.topic_status, topi.topic_moved_id, topi.topic_last_post_time, topi.topic_approved, topi.topic_poster, topi.topic_first_poster_name, topi.topic_time, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_poster_id, topi.topic_views, topi.topic_title, topi.icon_id, topi.poll_start, topi.topic_attachment, topi.topic_first_poster_name ORDER BY count DESC"; if(!($result = $db->sql_query($sql))) { message_die(GENERAL_ERROR, 'Error retrieving search results', '', __LINE__, __FILE__, $sql); } $topic_list = array(); while ($row = $db->sql_fetchrow($result)){ // Do not include those topics the user has no permission to access if ($auth->acl_get('f_read', $row['forum_id'])){ $topic_list[] = $row; } } return sizeof($topic_list); } function search_tags($tags, $start = 0, $end = false){ global $db, $config, $auth; $topics_count = (int) $db->sql_fetchfield('num_topics'); if($end === false){ $end = $config['topics_per_page']; } $tag_array = filter_tags($tags); $sql = "SELECT topi.topic_id, topi.forum_id, topi.topic_type, topi.topic_replies_real, topi.topic_replies, topi.topic_status, topi.topic_moved_id, topi.topic_last_post_time, topi.topic_approved, topi.topic_poster, topi.topic_first_poster_name, topi.topic_time, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_poster_id, topi.topic_views, topi.topic_title, topi.icon_id, topi.topic_attachment, topi.topic_first_poster_name, topi.topic_last_post_id, topi.topic_last_poster_id, topi.topic_last_poster_name, topi.topic_last_poster_colour, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_view_time, topi.poll_start, COUNT(topi.topic_id) count FROM ". TAGS_TABLE ." t, ". TOPICS_TABLE ." topi"; if(!empty($tag_array['include'])){ $sql .= " WHERE (t.tag IN ("; $sql .= prepare_search_string($tag_array['include']); $sql .= "))"; } if(!empty($tag_array['include']) && !empty($tag_array['exclude'])){ $sql .= " AND "; }else if(empty($tag_array['include']) && !empty($tag_array['exclude'])){ $sql .= " WHERE "; } if(!empty($tag_array['exclude'])){ $sql .= "(topi.topic_id NOT IN ( SELECT top2.topic_id FROM ". TAGS_TABLE ." t2, ". TOPICS_TABLE ." top2 WHERE t2.topic_id = top2.topic_id"; $sql .= prep_exclusion_string($tag_array['exclude']); $sql .= "))"; } $sql .= "AND topi.topic_id = t.topic_id GROUP BY topi.topic_id, topi.forum_id, topi.topic_type, topi.topic_replies_real, topi.topic_replies, topi.topic_status, topi.topic_moved_id, topi.topic_last_post_time, topi.topic_approved, topi.topic_poster, topi.topic_first_poster_name, topi.topic_time, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_poster_id, topi.topic_views, topi.topic_title, topi.icon_id, topi.topic_attachment, topi.topic_first_poster_name, topi.topic_last_post_id, topi.topic_last_poster_id, topi.topic_last_poster_name, topi.topic_last_poster_colour, topi.topic_last_post_subject, topi.topic_last_post_time, topi.topic_last_view_time ORDER BY topic_time DESC"; if(!($result = $db->sql_query_limit($sql, $end, $start))) { message_die(GENERAL_ERROR, 'Error retrieving search results', '', __LINE__, __FILE__, $sql); } $topic_list = array(); while ($row = $db->sql_fetchrow($result)){ // Do not include those topics the user has no permission to access if ($auth->acl_get('f_read', $row['forum_id'])){ $topic_list[] = $row; } } return $topic_list; } function prep_exclusion_string($exclude_array){ $string = ''; for($i = 0; $i < sizeof($exclude_array); $i++){ $string .= ' AND t2.tag = \'' . $exclude_array[$i] . '\''; } return $string; } function filter_tags($tags){ $tag_array = tags_to_array($tags); $incl = array(); $excl = array(); $filtered_array = array('include' => $incl, 'exclude' => $excl); for($i = 0; $i < sizeof($tag_array); $i++){ if($tag_array[$i][0] == '-'){ array_push($filtered_array['exclude'], substr($tag_array[$i], 1)); }else{ array_push($filtered_array['include'], $tag_array[$i]); } } return $filtered_array; } function tags_to_array($string){ $str_array = array(); $qoute = false; $str_buffer = ""; $tags = html_entity_decode($string); //$tags = $string; for($i = 0; $i < strlen($tags); $i++ ) { if(($tags[$i] == '"') && $qoute === true) { $qoute = false; } else if(($tags[$i] == '"') && $qoute === false) { $qoute = true; } if($tags[$i] == ' ' && !$qoute) { //str_replace( $str_buffer = str_replace('"', '', $str_buffer); array_push($str_array, $str_buffer); $str_buffer = ""; } else { $str_buffer .= $tags[$i]; } } $str_buffer = htmlspecialchars(str_replace('"', '', $str_buffer)); array_push($str_array, $str_buffer); return $str_array; } function prepare_search_string($str_array){ global $db; $prep_str = ""; for($j = 0; $j < sizeof($str_array); $j++) { $prep_str .= "'" . $db->sql_escape($str_array[$j]) . "',"; } return substr($prep_str, 0, strlen($prep_str)-1); } ?>
Search
 
 

Display results as :
 


Rechercher Advanced Search

Keywords

Akashi  Basic  

Latest topics
» Test Blog number one
Sun Aug 31, 2014 8:50 am by Kelsea

» Akashi Tanikaze
Sat Aug 30, 2014 11:41 pm by Tatyina

» This is a basic user generated topic.
Sat Aug 23, 2014 5:14 pm by anegge

» Your first subject
Wed Aug 13, 2014 8:41 pm by Kelsea

June 2017
MonTueWedThuFriSatSun
   1234
567891011
12131415161718
19202122232425
2627282930  

Calendar Calendar

Affiliates

free forum

Forumotion on Facebook Forumotion on Twitter Forumotion on YouTube Forumotion on Google+


Your first subject

View previous topic View next topic Go down

Your first subject

Post by Kelsea on Wed Aug 13, 2014 8:41 pm

Take some time to read this information before starting to use the administration of your forum:

How to access your administration panel ?
In the top menu, click on Log In, a new page is displayed. Fill in the username "admin" and the password you have choosen during your registration. If you have lost or forgot it, click here. Once you are logged in, click on the link "Administration Panel" at the bottom of the page.

How to modify your board's appearance ?
You can modify your board's appearance by choosing a theme (each theme displays different pictures, colors and icons). To do that, go to the administration panel, then click on Management in the Styles Admin menu and choose one of the displayed themes. You can later change it or choose another one.

How to manage the categories and forums ?
You can add, modify and delete the categories and forums that you have created anytime and without limit. To do that, go to the administration panel, in the management part of the Forum Admin, and click on "Add a link" (a forum or a category). In a first time, we advice you to create test categories and test forums that you will delete later, in order to understand how this tool works.
avatar
Kelsea
Admin

Posts : 4
Join date : 2014-08-13

View user profile http://afwrpgtest.forumotion.co.uk

Back to top Go down

View previous topic View next topic Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum