aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes
diff options
context:
space:
mode:
authorBart van Bragt <bartvb@users.sourceforge.net>2001-12-18 20:35:17 +0000
committerBart van Bragt <bartvb@users.sourceforge.net>2001-12-18 20:35:17 +0000
commit27ed6223d8867d7dd4c66c83114d35ae3f606670 (patch)
treecccd292a89a1219f2d4ba92f1d643430662cca99 /phpBB/includes
parentb3db480ffad5651d55f6e4712612d231575eb0d9 (diff)
downloadforums-27ed6223d8867d7dd4c66c83114d35ae3f606670.tar
forums-27ed6223d8867d7dd4c66c83114d35ae3f606670.tar.gz
forums-27ed6223d8867d7dd4c66c83114d35ae3f606670.tar.bz2
forums-27ed6223d8867d7dd4c66c83114d35ae3f606670.tar.xz
forums-27ed6223d8867d7dd4c66c83114d35ae3f606670.zip
Moved generate_smilies() into includes/post.php, use smileypath in config table
git-svn-id: file:///svn/phpbb/trunk@1628 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes')
-rw-r--r--phpBB/includes/post.php109
1 files changed, 108 insertions, 1 deletions
diff --git a/phpBB/includes/post.php b/phpBB/includes/post.php
index b43b055257..391671d716 100644
--- a/phpBB/includes/post.php
+++ b/phpBB/includes/post.php
@@ -96,4 +96,111 @@ function prepare_message($message, $html_on, $bbcode_on, $smile_on, $bbcode_uid
return($message);
}
-?> \ No newline at end of file
+
+//
+// Fill smiley templates (or just the variables) with smileys
+// Either in a window or inline
+//
+function generate_smilies($mode)
+{
+ global $db, $board_config, $template, $lang, $images, $theme, $phpEx;
+ global $user_ip, $forum_id, $session_length;
+ global $userdata;
+
+ if( $mode == 'window' )
+ {
+ $userdata = session_pagestart($user_ip, $forum_id, $session_length);
+ init_userprefs($userdata);
+
+ $gen_simple_header = TRUE;
+
+ $page_title = $lang['Review_topic'] ." - $topic_title";
+ include($phpbb_root_path . 'includes/page_header.'.$phpEx);
+
+ $template->set_filenames(array(
+ "smiliesbody" => "posting_smilies.tpl")
+ );
+ }
+
+ $sql = "SELECT emoticon, code, smile_url
+ FROM " . SMILIES_TABLE . "
+ ORDER BY smilies_id";
+ if( $result = $db->sql_query($sql) )
+ {
+ if( $db->sql_numrows($result) )
+ {
+ $rowset = array();
+ while( $row = $db->sql_fetchrow($result) )
+ {
+ if( empty($rowset[$row['smile_url']]) )
+ {
+ $rowset[$row['smile_url']]['code'] = $row['code'];
+ $rowset[$row['smile_url']]['emoticon'] = $row['emoticon'];
+ }
+ }
+
+ $num_smilies = count($rowset);
+
+ $smilies_count = ( $mode == 'inline' ) ? min(19, $num_smilies) : $num_smilies;
+ $smilies_split_row = ( $mode == 'inline' ) ? 3 : 7;
+
+ $s_colspan = 0;
+ $row = 0;
+ $col = 0;
+
+ while( list($smile_url, $data) = @each($rowset) )
+ {
+ if( !$col )
+ {
+ $template->assign_block_vars("smilies_row", array());
+ }
+
+ $template->assign_block_vars("smilies_row.smilies_col", array(
+ "SMILEY_CODE" => $data['code'],
+ "SMILEY_IMG" => $board_config['smilies_path'] . "/" . $smile_url,
+ "SMILEY_DESC" => $data['emoticon'])
+ );
+
+ $s_colspan = max($s_colspan, $col + 1);
+
+ if( $col == $smilies_split_row )
+ {
+ if( $mode == 'inline' && $row == 4 )
+ {
+ break;
+ }
+ $col = 0;
+ $row++;
+ }
+ else
+ {
+ $col++;
+ }
+ }
+
+ if( $mode == 'inline' && $num_smilies > 20)
+ {
+ $template->assign_block_vars("switch_smilies_extra", array());
+
+ $template->assign_vars(array(
+ "L_MORE_SMILIES" => $lang['More_emoticons'],
+ "U_MORE_SMILIES" => append_sid("posting.$phpEx?mode=smilies"))
+ );
+ }
+
+ $template->assign_vars(array(
+ "L_EMOTICONS" => $lang['Emoticons'],
+ "L_CLOSE_WINDOW" => $lang['Close_window'],
+ "S_SMILIES_COLSPAN" => $s_colspan)
+ );
+ }
+ }
+
+ if( $mode == 'window' )
+ {
+ $template->pparse("smiliesbody");
+
+ include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
+ }
+}
+?>