annotate forum/Themes/default/Wireless.template.php @ 76:e3e11437ecea website

Add forum code
author Chris Cannam
date Sun, 07 Jul 2013 11:25:48 +0200
parents
children
rev   line source
Chris@76 1 <?php
Chris@76 2 /**
Chris@76 3 * Simple Machines Forum (SMF)
Chris@76 4 *
Chris@76 5 * @package SMF
Chris@76 6 * @author Simple Machines
Chris@76 7 * @copyright 2011 Simple Machines
Chris@76 8 * @license http://www.simplemachines.org/about/smf/license.php BSD
Chris@76 9 *
Chris@76 10 * @version 2.0
Chris@76 11 */
Chris@76 12
Chris@76 13 // This is the header for WAP 1.1 output. You can view it with ?wap in the URL.
Chris@76 14 function template_wap_above()
Chris@76 15 {
Chris@76 16 global $context, $settings, $options;
Chris@76 17
Chris@76 18 // Show the xml declaration...
Chris@76 19 echo '<?xml version="1.0"?', '>
Chris@76 20 <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
Chris@76 21 <wml>
Chris@76 22 <head>
Chris@76 23 </head>';
Chris@76 24 }
Chris@76 25
Chris@76 26 // This is the board index (main page) in WAP 1.1.
Chris@76 27 function template_wap_boardindex()
Chris@76 28 {
Chris@76 29 global $context, $settings, $options, $scripturl;
Chris@76 30
Chris@76 31 // This is the "main" card...
Chris@76 32 echo '
Chris@76 33 <card id="main" title="', $context['page_title'], '">
Chris@76 34 <p><strong>', $context['forum_name_html_safe'], '</strong><br /></p>';
Chris@76 35
Chris@76 36 // Show an anchor for each category.
Chris@76 37 foreach ($context['categories'] as $category)
Chris@76 38 {
Chris@76 39 // Skip it if it's empty.
Chris@76 40 if (!empty($category['boards']))
Chris@76 41 echo '
Chris@76 42 <p><a href="#c', $category['id'], '">', $category['name'], '</a><br /></p>';
Chris@76 43 }
Chris@76 44
Chris@76 45 // Okay, that's it for the main card.
Chris@76 46 echo '
Chris@76 47 </card>';
Chris@76 48
Chris@76 49 // Now fill out the deck of cards with the boards in each category.
Chris@76 50 foreach ($context['categories'] as $category)
Chris@76 51 {
Chris@76 52 // Begin the card, and make the name available.
Chris@76 53 echo '
Chris@76 54 <card id="c', $category['id'], '" title="', strip_tags($category['name']), '">
Chris@76 55 <p><strong>', strip_tags($category['name']), '</strong><br /></p>';
Chris@76 56
Chris@76 57 // Now show a link for each board.
Chris@76 58 foreach ($category['boards'] as $board)
Chris@76 59 echo '
Chris@76 60 <p><a href="', $scripturl, '?board=', $board['id'], '.0;wap">', $board['name'], '</a><br /></p>';
Chris@76 61
Chris@76 62 echo '
Chris@76 63 </card>';
Chris@76 64 }
Chris@76 65 }
Chris@76 66
Chris@76 67 // This is the message index (list of topics in a board) for WAP 1.1.
Chris@76 68 function template_wap_messageindex()
Chris@76 69 {
Chris@76 70 global $context, $settings, $options, $scripturl, $txt;
Chris@76 71
Chris@76 72 echo '
Chris@76 73 <card id="main" title="', $context['page_title'], '">
Chris@76 74 <p><strong>', $context['name'], '</strong></p>';
Chris@76 75
Chris@76 76 if (isset($context['boards']) && count($context['boards']) > 0)
Chris@76 77 {
Chris@76 78 foreach ($context['boards'] as $board)
Chris@76 79 echo '
Chris@76 80 <p>- <a href="', $scripturl, '?board=', $board['id'], '.0;wap">', $board['name'], '</a><br /></p>';
Chris@76 81 echo '
Chris@76 82 <p><br /></p>';
Chris@76 83 }
Chris@76 84
Chris@76 85 if (!empty($context['topics']))
Chris@76 86 {
Chris@76 87 echo '
Chris@76 88 <p>', $txt['pages'], ': ', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap">&gt;</a> <a href="' . $context['links']['last'] . ';wap">&gt;&gt;</a> ' : '', '<br /></p>';
Chris@76 89
Chris@76 90 foreach ($context['topics'] as $topic)
Chris@76 91 echo '
Chris@76 92 <p><a href="', $scripturl, '?topic=', $topic['id'], '.0;wap">', $topic['first_post']['subject'], '</a>', (!$topic['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), ' - ', $topic['first_post']['member']['name'], '<br /></p>';
Chris@76 93
Chris@76 94 echo '
Chris@76 95 <p>', $txt['pages'], ': ', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap">&gt;</a> <a href="' . $context['links']['last'] . ';wap">&gt;&gt;</a> ' : '', '</p>';
Chris@76 96 }
Chris@76 97
Chris@76 98 echo '
Chris@76 99 </card>';
Chris@76 100 }
Chris@76 101
Chris@76 102 function template_wap_display()
Chris@76 103 {
Chris@76 104 global $context, $settings, $options, $txt;
Chris@76 105
Chris@76 106 echo '
Chris@76 107 <card id="main" title="', $context['page_title'], '">
Chris@76 108 <p><strong>' . $context['linktree'][1]['name'] . ' > ' . $context['linktree'][count($context['linktree']) - 2]['name'] . '</strong></p>
Chris@76 109 <p><strong>', $context['subject'], '</strong></p>
Chris@76 110 <p>', $txt['pages'], ': ', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap">&gt;</a> <a href="' . $context['links']['last'] . ';wap">&gt;&gt;</a> ' : '', '<br /><br /></p>';
Chris@76 111
Chris@76 112 while ($message = $context['get_message']())
Chris@76 113 {
Chris@76 114 // This is a special modification to the post so it will work on phones:
Chris@76 115 $message['body'] = preg_replace('~<div class="(?:quote|code)header">(.+?)</div>~', '<br />--- $1 ---', $message['body']);
Chris@76 116 $message['body'] = strip_tags(str_replace(
Chris@76 117 array(
Chris@76 118 '<blockquote>',
Chris@76 119 '</blockquote>',
Chris@76 120 '<code>',
Chris@76 121 '</code>',
Chris@76 122 '<li>',
Chris@76 123 $txt['code_select'],
Chris@76 124 ),
Chris@76 125 array(
Chris@76 126 '<br>',
Chris@76 127 '<br>--- ' . $txt['wireless_end_quote'] . ' ---<br>',
Chris@76 128 '<br>',
Chris@76 129 '<br>--- ' . $txt['wireless_end_code'] . ' ---<br>',
Chris@76 130 '<br>* ',
Chris@76 131 '',
Chris@76 132 ), $message['body']), '<br>');
Chris@76 133
Chris@76 134 echo '
Chris@76 135 <p><u>', $message['member']['name'], '</u>:', (!$message['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), '<br /></p>
Chris@76 136 <p>', $message['body'], '<br /><br /></p>';
Chris@76 137 }
Chris@76 138
Chris@76 139 echo '
Chris@76 140 <p>', $txt['pages'], ': ', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap">&gt;</a> <a href="' . $context['links']['last'] . ';wap">&gt;&gt;</a> ' : '', '</p>
Chris@76 141 </card>';
Chris@76 142 }
Chris@76 143
Chris@76 144 function template_wap_login()
Chris@76 145 {
Chris@76 146 global $context, $modSettings, $scripturl, $txt;
Chris@76 147
Chris@76 148 echo '
Chris@76 149 <card id="login" title="', $context['page_title'], '">';
Chris@76 150
Chris@76 151 if (isset($context['login_errors']))
Chris@76 152 foreach ($context['login_errors'] as $error)
Chris@76 153 echo '
Chris@76 154 <p><strong>', $error, '</strong></p>';
Chris@76 155
Chris@76 156 echo '
Chris@76 157 <p>', $txt['username'], ':<br />
Chris@76 158 <input type="text" name="user" class="input_text" /></p>
Chris@76 159
Chris@76 160 <p>', $txt['password'], ':<br />
Chris@76 161 <input type="password" name="passwrd" class="input_password" /></p>';
Chris@76 162
Chris@76 163 // Open ID?
Chris@76 164 if (!empty($modSettings['enableOpenID']))
Chris@76 165 echo '
Chris@76 166 <p><strong>&mdash;', $txt['or'], '&mdash;</strong></p>
Chris@76 167
Chris@76 168 <p>', $txt['openid'], ':<br />
Chris@76 169 <input type="text" name="openid_identifier" class="input_text openid_login" size="17" /></p>';
Chris@76 170
Chris@76 171 echo '
Chris@76 172 <p><do type="accept" label="', $txt['login'], '">
Chris@76 173 <go method="post" href="', $scripturl, '?action=login2;wap">
Chris@76 174 <postfield name="user" value="$user" />
Chris@76 175 <postfield name="passwrd" value="$passwrd" />
Chris@76 176 <postfield name="cookieneverexp" value="1" />
Chris@76 177 </go>
Chris@76 178 </do></p>
Chris@76 179 </card>';
Chris@76 180 }
Chris@76 181
Chris@76 182 function template_wap_recent()
Chris@76 183 {
Chris@76 184 global $context, $settings, $options, $scripturl, $txt;
Chris@76 185
Chris@76 186 echo '
Chris@76 187 <card id="recent" title="', $context['page_title'], '">
Chris@76 188 <p><strong>', $_REQUEST['action'] == 'unread' ? $txt['wireless_recent_unread_posts'] : $txt['wireless_recent_unread_replies'], '</strong></p>';
Chris@76 189
Chris@76 190 if (empty($context['topics']))
Chris@76 191 echo '
Chris@76 192 <p>', $txt['old_posts'], '</p>';
Chris@76 193 else
Chris@76 194 {
Chris@76 195 echo '
Chris@76 196 <p>', $txt['pages'], ': ', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap">&gt;</a> <a href="' . $context['links']['last'] . ';wap">&gt;&gt;</a> ' : '', '<br /><br /></p>';
Chris@76 197 foreach ($context['topics'] as $topic)
Chris@76 198 {
Chris@76 199 echo '
Chris@76 200 <p><a href="', $scripturl, '?topic=', $topic['id'], '.msg', $topic['new_from'], ';topicseen;imode#new">', $topic['first_post']['subject'], '</a></p>';
Chris@76 201 }
Chris@76 202 }
Chris@76 203
Chris@76 204 echo '
Chris@76 205 </card>';
Chris@76 206 }
Chris@76 207
Chris@76 208 function template_wap_error()
Chris@76 209 {
Chris@76 210 global $context, $settings, $options, $txt, $scripturl;
Chris@76 211
Chris@76 212 echo '
Chris@76 213 <card id="main" title="', $context['page_title'], '">
Chris@76 214 <p><strong>', $context['error_title'], '</strong></p>
Chris@76 215 <p>', $context['error_message'], '</p>
Chris@76 216 <p><a href="', $scripturl, '?wap">', $txt['wireless_error_home'], '</a></p>
Chris@76 217 </card>';
Chris@76 218 }
Chris@76 219
Chris@76 220 function template_wap_below()
Chris@76 221 {
Chris@76 222 global $context, $settings, $options, $txt;
Chris@76 223
Chris@76 224 echo '
Chris@76 225 <card id="switch" title="', $txt['wireless_go_to_full_version'], '">
Chris@76 226 <p>
Chris@76 227 <a href="', $context['linktree'][count($context['linktree']) - 1]['url'], (count($context['linktree']) > 1 ? ';' : '?'), 'nowap" rel="nofollow">', $txt['wireless_go_to_full_version'], '</a>
Chris@76 228 </p>
Chris@76 229 </card>
Chris@76 230 </wml>';
Chris@76 231 }
Chris@76 232
Chris@76 233 // The cHTML protocol used for i-mode starts here.
Chris@76 234 function template_imode_above()
Chris@76 235 {
Chris@76 236 global $context, $settings, $options, $user_info;
Chris@76 237
Chris@76 238 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD Compact HTML 1.0 Draft//EN">
Chris@76 239 <html', $context['right_to_left'] ? ' dir="rtl"' : '', '>
Chris@76 240 <head>
Chris@76 241 <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />';
Chris@76 242
Chris@76 243 // Present a canonical url for search engines to prevent duplicate content in their indices.
Chris@76 244 if ($user_info['is_guest'] && !empty($context['canonical_url']))
Chris@76 245 echo '
Chris@76 246 <link rel="canonical" href="', $context['canonical_url'], '" />';
Chris@76 247
Chris@76 248 echo '
Chris@76 249 <title>', $context['page_title'], '</title>
Chris@76 250 </head>
Chris@76 251 <body>';
Chris@76 252 }
Chris@76 253
Chris@76 254 function template_imode_boardindex()
Chris@76 255 {
Chris@76 256 global $context, $settings, $options, $scripturl, $txt;
Chris@76 257
Chris@76 258 echo '
Chris@76 259 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 260 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['forum_name_html_safe'], '</font></td></tr>';
Chris@76 261 $count = 0;
Chris@76 262 foreach ($context['categories'] as $category)
Chris@76 263 {
Chris@76 264 if (!empty($category['boards']) || $category['is_collapsed'])
Chris@76 265 echo '
Chris@76 266 <tr bgcolor="#b6dbff"><td>', $category['can_collapse'] ? '<a href="' . $scripturl . '?action=collapse;c=' . $category['id'] . ';sa=' . ($category['is_collapsed'] ? 'expand;' : 'collapse;') . $context['session_var'] . '=' . $context['session_id'] . ';imode">' : '', $category['name'], $category['can_collapse'] ? '</a>' : '', '</td></tr>';
Chris@76 267
Chris@76 268 foreach ($category['boards'] as $board)
Chris@76 269 {
Chris@76 270 $count++;
Chris@76 271 echo '
Chris@76 272 <tr><td>', $board['new'] ? '<font color="#ff0000">' : '', $count < 10 ? '&#' . (59105 + $count) . ';' : '<strong>-</strong>', $board['new'] ? '</font>' : ($board['children_new'] ? '<font color="#ff0000">.</font>' : ''), ' <a href="', $scripturl, '?board=', $board['id'], '.0;imode"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $board['name'], '</a></td></tr>';
Chris@76 273 }
Chris@76 274 }
Chris@76 275 echo '
Chris@76 276 <tr bgcolor="#6d92aa"><td>', $txt['wireless_options'], '</td></tr>';
Chris@76 277 if ($context['user']['is_guest'])
Chris@76 278 echo '
Chris@76 279 <tr><td><a href="', $scripturl, '?action=login;imode">', $txt['wireless_options_login'], '</a></td></tr>';
Chris@76 280 else
Chris@76 281 {
Chris@76 282 if ($context['allow_pm'])
Chris@76 283 echo '
Chris@76 284 <tr><td><a href="', $scripturl, '?action=pm;imode">', empty($context['user']['unread_messages']) ? $txt['wireless_pm_inbox'] : sprintf($txt['wireless_pm_inbox_new'], $context['user']['unread_messages']), '</a></td></tr>';
Chris@76 285 echo '
Chris@76 286 <tr><td><a href="', $scripturl, '?action=unread;imode">', $txt['wireless_recent_unread_posts'], '</a></td></tr>
Chris@76 287 <tr><td><a href="', $scripturl, '?action=unreadreplies;imode">', $txt['wireless_recent_unread_replies'], '</a></td></tr>
Chris@76 288 <tr><td><a href="', $scripturl, '?action=logout;', $context['session_var'], '=', $context['session_id'], ';imode">', $txt['wireless_options_logout'], '</a></td></tr>';
Chris@76 289 }
Chris@76 290 echo '
Chris@76 291 </table>';
Chris@76 292 }
Chris@76 293
Chris@76 294 function template_imode_messageindex()
Chris@76 295 {
Chris@76 296 global $context, $settings, $options, $scripturl, $txt;
Chris@76 297
Chris@76 298 echo '
Chris@76 299 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 300 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['name'], '</font></td></tr>';
Chris@76 301
Chris@76 302 if (!empty($context['boards']))
Chris@76 303 {
Chris@76 304 echo '
Chris@76 305 <tr bgcolor="#b6dbff"><td>', $txt['parent_boards'], '</td></tr>';
Chris@76 306 foreach ($context['boards'] as $board)
Chris@76 307 echo '
Chris@76 308 <tr><td>', $board['new'] ? '<font color="#ff0000">-</font> ' : ($board['children_new'] ? '-<font color="#ff0000">.</font>' : '- '), '<a href="', $scripturl, '?board=', $board['id'], '.0;imode">', $board['name'], '</a></td></tr>';
Chris@76 309 }
Chris@76 310
Chris@76 311 $count = 0;
Chris@76 312 if (!empty($context['topics']))
Chris@76 313 {
Chris@76 314 echo '
Chris@76 315 <tr bgcolor="#b6dbff"><td>', $txt['topics'], '</td></tr>
Chris@76 316 <tr><td>', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';imode">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';imode">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';imode">&gt;</a> <a href="' . $context['links']['last'] . ';imode">&gt;&gt;</a> ' : '', '</td></tr>';
Chris@76 317 foreach ($context['topics'] as $topic)
Chris@76 318 {
Chris@76 319 $count++;
Chris@76 320 echo '
Chris@76 321 <tr><td>', $count < 10 ? '&#' . (59105 + $count) . '; ' : '', '<a href="', $scripturl, '?topic=', $topic['id'], '.0;imode"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $topic['first_post']['subject'], '</a>', (!$topic['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), $topic['new'] && $context['user']['is_logged'] ? ' [<a href="' . $scripturl . '?topic=' . $topic['id'] . '.msg' . $topic['new_from'] . ';imode#new">' . $txt['new'] . '</a>]' : '', '</td></tr>';
Chris@76 322 }
Chris@76 323 }
Chris@76 324 echo '
Chris@76 325 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</td></tr>
Chris@76 326 <tr><td>&#59115; <a href="', $context['links']['up'], ($context['links']['up'] == $scripturl . '?' ? '' : ';'), 'imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></td></tr>', !empty($context['links']['next']) ? '
Chris@76 327 <tr><td>&#59104; <a href="' . $context['links']['next'] . ';imode" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></td></tr>' : '', !empty($context['links']['prev']) ? '
Chris@76 328 <tr><td><strong>[*]</strong> <a href="' . $context['links']['prev'] . ';imode" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></td></tr>' : '', $context['can_post_new'] ? '
Chris@76 329 <tr><td><a href="' . $scripturl . '?action=post;board=' . $context['current_board'] . '.0;imode">' . $txt['start_new_topic'] . '</a></td></tr>' : '', '
Chris@76 330 </table>';
Chris@76 331 }
Chris@76 332
Chris@76 333 function template_imode_display()
Chris@76 334 {
Chris@76 335 global $context, $settings, $options, $scripturl, $board, $txt;
Chris@76 336
Chris@76 337 echo '
Chris@76 338 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 339 <tr bgcolor="#b6dbff"><td>' . $context['linktree'][1]['name'] . ' > ' . $context['linktree'][count($context['linktree']) - 2]['name'] . '</td></tr>
Chris@76 340 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['subject'], '</font></td></tr>
Chris@76 341 <tr><td>', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';imode">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';imode">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';imode">&gt;</a> <a href="' . $context['links']['last'] . ';imode">&gt;&gt;</a> ' : '', '</td></tr>';
Chris@76 342 while ($message = $context['get_message']())
Chris@76 343 {
Chris@76 344 // This is a special modification to the post so it will work on phones:
Chris@76 345 $message['body'] = preg_replace('~<div class="(?:quote|code)header">(.+?)</div>~', '<br />--- $1 ---', $message['body']);
Chris@76 346 $message['body'] = strip_tags(str_replace(
Chris@76 347 array(
Chris@76 348 '<blockquote>',
Chris@76 349 '</blockquote>',
Chris@76 350 '<code>',
Chris@76 351 '</code>',
Chris@76 352 '<li>',
Chris@76 353 $txt['code_select'],
Chris@76 354 ),
Chris@76 355 array(
Chris@76 356 '<br />',
Chris@76 357 '<br />--- ' . $txt['wireless_end_quote'] . ' ---<br />',
Chris@76 358 '<br />',
Chris@76 359 '<br />--- ' . $txt['wireless_end_code'] . ' ---<br />',
Chris@76 360 '<br />* ',
Chris@76 361 '',
Chris@76 362 ), $message['body']), '<br>');
Chris@76 363
Chris@76 364 echo '
Chris@76 365 <tr><td>', $message['first_new'] ? '
Chris@76 366 <a id="new"></a>' : '',
Chris@76 367 $context['wireless_moderate'] && $message['member']['id'] ? '<a href="' . $scripturl . '?action=profile;u=' . $message['member']['id'] . ';imode">' . $message['member']['name'] . '</a>' : '<strong>' . $message['member']['name'] . '</strong>', ':
Chris@76 368 ', ((empty($context['wireless_more']) && $message['can_modify']) || !empty($context['wireless_moderate']) ? '[<a href="' . $scripturl . '?action=post;msg=' . $message['id'] . ';topic=' . $context['current_topic'] . '.' . $context['start'] . ';imode">' . $txt['wireless_display_edit'] . '</a>]' : ''), (!$message['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), '<br />
Chris@76 369 ', $message['body'], '
Chris@76 370 </td></tr>';
Chris@76 371 }
Chris@76 372 echo '
Chris@76 373 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</td></tr>
Chris@76 374 <tr><td>&#59115; <a href="', $context['links']['up'], ';imode" accesskey="0">', $txt['wireless_navigation_index'], '</a></td></tr>', $context['user']['is_logged'] ? '
Chris@76 375 <tr><td>&#59115; <a href="' . $scripturl . '?action=markasread;sa=topic;t=' . $context['mark_unread_time']. ';topic=' . $context['current_topic'] . '.' . $context['start'] . ';' . $context['session_var'] . '=' . $context['session_id'] . ';imode" accesskey="1">' . $txt['mark_unread'] . '</a></td></tr>' : '', !empty($context['links']['next']) ? '
Chris@76 376 <tr><td><a href="' . $context['links']['next'] . ';imode' . $context['wireless_moderate'] . '" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></td></tr>' : '', !empty($context['links']['prev']) ? '
Chris@76 377 <tr><td><a href="' . $context['links']['prev'] . ';imode' . $context['wireless_moderate'] . '" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></td></tr>' : '', $context['can_reply'] ? '
Chris@76 378 <tr><td><a href="' . $scripturl . '?action=post;topic=' . $context['current_topic'] . '.' . $context['start'] . ';imode">' . $txt['reply'] . '</a></td></tr>' : '';
Chris@76 379
Chris@76 380 if (!empty($context['wireless_more']) && empty($context['wireless_moderate']))
Chris@76 381 echo '
Chris@76 382 <tr><td><a href="', $scripturl, '?topic=', $context['current_topic'], '.', $context['start'], ';moderate;imode">', $txt['wireless_display_moderate'], '</a></td></tr>';
Chris@76 383 elseif (!empty($context['wireless_moderate']))
Chris@76 384 {
Chris@76 385 if ($context['can_sticky'])
Chris@76 386 echo '
Chris@76 387 <tr><td><a href="', $scripturl, '?action=sticky;topic=', $context['current_topic'], '.', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';imode">', $txt['wireless_display_' . ($context['is_sticky'] ? 'unsticky' : 'sticky')], '</a></td></tr>';
Chris@76 388 if ($context['can_lock'])
Chris@76 389 echo '
Chris@76 390 <tr><td><a href="', $scripturl, '?action=lock;topic=', $context['current_topic'], '.', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';imode">', $txt['wireless_display_' . ($context['is_locked'] ? 'unlock' : 'lock')], '</a></td></tr>';
Chris@76 391 }
Chris@76 392
Chris@76 393 echo '
Chris@76 394 </table>';
Chris@76 395 }
Chris@76 396
Chris@76 397 function template_imode_post()
Chris@76 398 {
Chris@76 399 global $context, $settings, $options, $scripturl, $txt, $modSettings;
Chris@76 400
Chris@76 401 // !!! $modSettings['guest_post_no_email']
Chris@76 402 echo '
Chris@76 403 <form action="', $scripturl, '?action=', $context['destination'], ';board=', $context['current_board'], '.0;imode" method="post">
Chris@76 404 <table border="0" cellspacing="0" cellpadding="0">';
Chris@76 405
Chris@76 406 if (!$context['becomes_approved'])
Chris@76 407 echo '
Chris@76 408 <tr><td>' . $txt['wait_for_approval'] . '<input type="hidden" name="not_approved" value="1" /></td></tr>';
Chris@76 409
Chris@76 410 if ($context['locked'])
Chris@76 411 echo '
Chris@76 412 <tr><td>' . $txt['topic_locked_no_reply'] . '</td></tr>';
Chris@76 413
Chris@76 414 if (isset($context['name']) && isset($context['email']))
Chris@76 415 {
Chris@76 416 echo '
Chris@76 417 <tr><td>', isset($context['post_error']['long_name']) || isset($context['post_error']['no_name']) ? '<font color="#cc0000">' . $txt['username'] . '</font>' : $txt['username'], ':</td></tr>
Chris@76 418 <tr><td><input type="text" name="guestname" value="', $context['name'], '" class="input_text" /></td></tr>';
Chris@76 419
Chris@76 420 if (empty($modSettings['guest_post_no_email']))
Chris@76 421 echo '
Chris@76 422 <tr><td>', isset($context['post_error']['no_email']) || isset($context['post_error']['bad_email']) ? '<font color="#cc0000">' . $txt['email'] . '</font>' : $txt['email'], ':</td></tr>
Chris@76 423 <tr><td><input type="text" name="email" value="', $context['email'], '" class="input_text" /></td></tr>';
Chris@76 424 }
Chris@76 425
Chris@76 426 // !!! Needs a more specific imode template.
Chris@76 427 if ($context['require_verification'])
Chris@76 428 echo '
Chris@76 429 <tr><td>', !empty($context['post_error']['need_qr_verification']) ? '<font color="#cc0000">' . $txt['verification'] . '</font>' : $txt['verification'], ':</td></tr>
Chris@76 430 <tr><td>', template_control_verification($context['visual_verification_id'], 'all'), '</td></tr>';
Chris@76 431
Chris@76 432 echo '
Chris@76 433 <tr><td>', isset($context['post_error']['no_subject']) ? '<font color="#FF0000">' . $txt['subject'] . '</font>' : $txt['subject'], ':</td></tr>
Chris@76 434 <tr><td><input type="text" name="subject"', $context['subject'] == '' ? '' : ' value="' . $context['subject'] . '"', ' maxlength="80" class="input_text" /></td></tr>
Chris@76 435 <tr><td>', isset($context['post_error']['no_message']) || isset($context['post_error']['long_message']) ? '<font color="#ff0000">' . $txt['message'] . '</font>' : $txt['message'], ':</td></tr>
Chris@76 436 <tr><td><textarea name="message" id="message" rows="5" cols="20">', $context['message'], '</textarea></td></tr>
Chris@76 437 <tr><td>
Chris@76 438 <input type="submit" name="post" value="', $context['submit_label'], '" class="button_submit" />
Chris@76 439 <input type="hidden" name="icon" value="wireless" />
Chris@76 440 <input type="hidden" name="goback" value="', $context['back_to_topic'] || !empty($options['return_to_post']) ? '1' : '0', '" />
Chris@76 441 <input type="hidden" name="seqnum" value="', $context['form_sequence_number'], '" />
Chris@76 442 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />', isset($context['current_topic']) ? '
Chris@76 443 <input type="hidden" name="topic" value="' . $context['current_topic'] . '" />' : '', '
Chris@76 444 <input type="hidden" name="notify" value="', $context['notify'] || !empty($options['auto_notify']) ? '1' : '0', '" />
Chris@76 445 </td></tr>
Chris@76 446 <tr><td>
Chris@76 447 &#59115; ', !empty($context['current_topic']) ? '<a href="' . $scripturl . '?topic=' . $context['current_topic'] . '.new;imode">' . $txt['wireless_navigation_topic'] . '</a>' : '<a href="' . $scripturl . '?board=' . $context['current_board'] . '.0;imode" accesskey="0">' . $txt['wireless_navigation_index'] . '</a>', '
Chris@76 448 </td></tr>
Chris@76 449 </table>
Chris@76 450 </form>';
Chris@76 451 }
Chris@76 452
Chris@76 453 function template_imode_login()
Chris@76 454 {
Chris@76 455 global $context, $settings, $options, $scripturl, $txt, $modSettings;
Chris@76 456
Chris@76 457 echo '
Chris@76 458 <form action="', $scripturl, '?action=login2;imode" method="post">
Chris@76 459 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 460 <tr bgcolor="#b6dbff"><td>', $txt['login'], '</td></tr>';
Chris@76 461 if (isset($context['login_errors']))
Chris@76 462 foreach ($context['login_errors'] as $error)
Chris@76 463 echo '
Chris@76 464 <tr><td><strong><font color="#ff00000">', $error, '</strong></td></tr>';
Chris@76 465 echo '
Chris@76 466 <tr><td>', $txt['username'], ':</td></tr>
Chris@76 467 <tr><td><input type="text" name="user" size="10" class="input_text" /></td></tr>
Chris@76 468 <tr><td>', $txt['password'], ':</td></tr>
Chris@76 469 <tr><td><input type="password" name="passwrd" size="10" class="input_password" /></td></tr>';
Chris@76 470
Chris@76 471 // Open ID?
Chris@76 472 if (!empty($modSettings['enableOpenID']))
Chris@76 473 echo '
Chris@76 474 <tr><td><strong>&mdash;', $txt['or'], '&mdash;</strong></td></tr>
Chris@76 475 <tr><td>', $txt['openid'], ':</td></tr>
Chris@76 476 <tr><td><input type="text" name="openid_identifier" class="input_text openid_login" size="17" /></td></tr>';
Chris@76 477
Chris@76 478 echo '
Chris@76 479 <tr><td><input type="submit" value="', $txt['login'], '" class="button_submit" /><input type="hidden" name="cookieneverexp" value="1" /></td></tr>
Chris@76 480 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</td></tr>
Chris@76 481 <tr><td>[0] <a href="', $scripturl, '?imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></td></tr>
Chris@76 482 </table>
Chris@76 483 </form>';
Chris@76 484 }
Chris@76 485
Chris@76 486 function template_imode_pm()
Chris@76 487 {
Chris@76 488 global $context, $settings, $options, $scripturl, $txt, $user_info;
Chris@76 489
Chris@76 490 if ($_REQUEST['action'] == 'findmember')
Chris@76 491 {
Chris@76 492 echo '
Chris@76 493 <form action="', $scripturl, '?action=findmember;', $context['session_var'], '=', $context['session_id'], ';imode" method="post">
Chris@76 494 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 495 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $txt['wireless_pm_search_member'], '</font></td></tr>
Chris@76 496 <tr bgcolor="#b6dbff"><td>', $txt['find_members'], '</td></tr>
Chris@76 497 <tr><td>
Chris@76 498 <strong>', $txt['wireless_pm_search_name'], ':</strong>
Chris@76 499 <input type="text" name="search" value="', isset($context['last_search']) ? $context['last_search'] : '', '" class="input_text" />', empty($_REQUEST['u']) ? '' : '
Chris@76 500 <input type="hidden" name="u" value="' . $_REQUEST['u'] . '" />', '
Chris@76 501 </td></tr>
Chris@76 502 <tr><td><input type="submit" value="', $txt['search'], '" class="button_submit" /></td></tr>';
Chris@76 503 if (!empty($context['last_search']))
Chris@76 504 {
Chris@76 505 echo '
Chris@76 506 <tr bgcolor="#b6dbff"><td>', $txt['find_results'], '</td></tr>';
Chris@76 507 if (empty($context['results']))
Chris@76 508 echo '
Chris@76 509 <tr bgcolor="#b6dbff"><td>[-] ', $txt['find_no_results'], '</tr></td>';
Chris@76 510 else
Chris@76 511 {
Chris@76 512 echo '
Chris@76 513 <tr bgcolor="#b6dbff"><td>', empty($context['links']['prev']) ? '' : '<a href="' . $context['links']['first'] . ';imode">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';imode">&lt;</a> ', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', empty($context['links']['next']) ? '' : ' <a href="' . $context['links']['next'] . ';imode">&gt;</a> <a href="' . $context['links']['last'] . ';imode">&gt;&gt;</a> ', '</tr></td>';
Chris@76 514 $count = 0;
Chris@76 515 foreach ($context['results'] as $result)
Chris@76 516 {
Chris@76 517 $count++;
Chris@76 518 echo '
Chris@76 519 <tr bgcolor="#b6dbff"><td>
Chris@76 520 ', $count < 10 ? '&#' . (59105 + $count) . '; ' : '', '<a href="', $scripturl, '?action=pm;sa=send;u=', empty($_REQUEST['u']) ? $result['id'] : $_REQUEST['u'] . ',' . $result['id'], ';imode"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $result['name'], '</a>
Chris@76 521 </tr></td>';
Chris@76 522 }
Chris@76 523 }
Chris@76 524 }
Chris@76 525 echo '
Chris@76 526 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</tr></td>
Chris@76 527 <tr><td>[0] <a href="', $context['links']['up'], ';imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></tr></td>';
Chris@76 528 if (!empty($context['results']))
Chris@76 529 echo empty($context['links']['next']) ? '' : '
Chris@76 530 <tr><td>[#] <a href="' . $context['links']['next'] . ';imode" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></tr></td>', empty($context['links']['prev']) ? '' : '
Chris@76 531 <tr><td>[*] <a href="' . $context['links']['prev'] . ';imode" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></tr></td>';
Chris@76 532 echo '
Chris@76 533 </table>
Chris@76 534 </form>';
Chris@76 535 }
Chris@76 536 elseif (!empty($_GET['sa']))
Chris@76 537 {
Chris@76 538 echo '
Chris@76 539 <table border="0" cellspacing="0" cellpadding="0">';
Chris@76 540 if ($_GET['sa'] == 'addbuddy')
Chris@76 541 {
Chris@76 542 echo '
Chris@76 543 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $txt['wireless_pm_add_buddy'], '</font></td></tr>
Chris@76 544 <tr bgcolor="#b6dbff"><td>', $txt['wireless_pm_select_buddy'], '</td></tr>';
Chris@76 545 $count = 0;
Chris@76 546 foreach ($context['buddies'] as $buddy)
Chris@76 547 {
Chris@76 548 $count++;
Chris@76 549 if ($buddy['selected'])
Chris@76 550 echo '
Chris@76 551 <tr><td>[-] <span style="color: gray">', $buddy['name'], '</span></tr></td>';
Chris@76 552 else
Chris@76 553 echo '
Chris@76 554 <tr><td>
Chris@76 555 ', $count < 10 ? '&#' . (59105 + $count) . '; ' : '', '<a href="', $buddy['add_href'], ';imode"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $buddy['name'], '</a>
Chris@76 556 </tr></td>';
Chris@76 557 }
Chris@76 558 echo '
Chris@76 559 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</tr></td>
Chris@76 560 <tr><td>[0] <a href="', $context['pm_href'], ';imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></tr></td>
Chris@76 561 </table>';
Chris@76 562 }
Chris@76 563 if ($_GET['sa'] == 'send' || $_GET['sa'] == 'send2')
Chris@76 564 {
Chris@76 565 echo '
Chris@76 566 <form action="', $scripturl, '?action=pm;sa=send2;imode" method="post">
Chris@76 567 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 568 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $txt['new_message'], '</tr></td>', empty($context['post_error']['messages']) ? '' : '
Chris@76 569 <tr><td><font color="#ff0000">' . implode('<br />', $context['post_error']['messages']) . '</font></tr></td>', '
Chris@76 570 <tr><td>
Chris@76 571 <strong>', $txt['pm_to'], ':</strong> ';
Chris@76 572 if (empty($context['recipients']['to']))
Chris@76 573 echo $txt['wireless_pm_no_recipients'];
Chris@76 574 else
Chris@76 575 {
Chris@76 576 $to_names = array();
Chris@76 577 $ids = array();
Chris@76 578 foreach ($context['recipients']['to'] as $to)
Chris@76 579 {
Chris@76 580 $ids[] = $to['id'];
Chris@76 581 $to_names[] = $to['name'];
Chris@76 582 }
Chris@76 583 echo implode(', ', $to_names);
Chris@76 584 $ids = implode(',', $ids);
Chris@76 585 }
Chris@76 586 echo '
Chris@76 587 ', empty($ids) ? '' : '<input type="hidden" name="u" value="' . $ids . '" />', '<br />
Chris@76 588 <a href="', $scripturl, '?action=findmember', empty($ids) ? '' : ';u=' . $ids, ';', $context['session_var'], '=', $context['session_id'], ';imode">', $txt['wireless_pm_search_member'], '</a>', empty($user_info['buddies']) ? '' : '<br />
Chris@76 589 <a href="' . $scripturl . '?action=pm;sa=addbuddy' . (empty($ids) ? '' : ';u=' . $ids) . ';imode">' . $txt['wireless_pm_add_buddy'] . '</a>', '
Chris@76 590 </tr></td>
Chris@76 591 <tr><td>
Chris@76 592 <strong>', $txt['subject'], ':</strong> <input type="text" name="subject" value="', $context['subject'], '" class="input_text" />
Chris@76 593 </tr></td>
Chris@76 594 <tr><td>
Chris@76 595 <strong>', $txt['message'], ':</strong><br />
Chris@76 596 <textarea name="message" id="message" rows="5" cols="20">', $context['message'], '</textarea>
Chris@76 597 </tr></td>
Chris@76 598 <tr><td>
Chris@76 599 <input type="submit" value="', $txt['send_message'], '" class="button_submit" />
Chris@76 600 <input type="hidden" name="outbox" value="', $context['copy_to_outbox'] ? '1' : '0', '" />
Chris@76 601 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 602 <input type="hidden" name="seqnum" value="', $context['form_sequence_number'], '" />
Chris@76 603 <input type="hidden" name="replied_to" value="', !empty($context['quoted_message']['id']) ? $context['quoted_message']['id'] : 0, '" />
Chris@76 604 <input type="hidden" name="pm_head" value="', !empty($context['quoted_message']['pm_head']) ? $context['quoted_message']['pm_head'] : 0, '" />
Chris@76 605 <input type="hidden" name="f" value="', isset($context['folder']) ? $context['folder'] : '', '" />
Chris@76 606 <input type="hidden" name="l" value="', isset($context['current_label_id']) ? $context['current_label_id'] : -1, '" />
Chris@76 607 </tr></td>';
Chris@76 608 if ($context['reply'])
Chris@76 609 echo '
Chris@76 610 <tr bgcolor="#b6dbff"><td>', $txt['wireless_pm_reply_to'], '</tr></td>
Chris@76 611 <tr><td><strong>', $context['quoted_message']['subject'], '</strong></tr></td>
Chris@76 612 <tr><td>', $context['quoted_message']['body'], '</tr></td>';
Chris@76 613 echo '
Chris@76 614 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</tr></td>
Chris@76 615 <tr><td>[0] <a href="', $scripturl, '?action=pm;imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></tr></td>
Chris@76 616 </table>
Chris@76 617 </form>';
Chris@76 618 }
Chris@76 619 }
Chris@76 620 elseif (empty($_GET['pmsg']))
Chris@76 621 {
Chris@76 622 echo '
Chris@76 623 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 624 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['current_label_id'] == -1 ? $txt['wireless_pm_inbox'] : $txt['pm_current_label'] . ': ' . $context['current_label'], '</td></tr>
Chris@76 625 <tr><td>', empty($context['links']['prev']) ? '' : '<a href="' . $context['links']['first'] . ';imode">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';imode">&lt;</a> ', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', empty($context['links']['next']) ? '' : ' <a href="' . $context['links']['next'] . ';imode">&gt;</a> <a href="' . $context['links']['last'] . ';imode">&gt;&gt;</a> ', '</tr></td>';
Chris@76 626 $count = 0;
Chris@76 627 while ($message = $context['get_pmessage']())
Chris@76 628 {
Chris@76 629 $count++;
Chris@76 630 echo '
Chris@76 631 <tr><td>
Chris@76 632 ', $count < 10 ? '&#' . (59105 + $count) . '; ' : '', '<a href="', $scripturl, '?action=pm;start=', $context['start'], ';pmsg=', $message['id'], ';l=', $context['current_label_id'], ';imode"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $message['subject'], ' <em>', $txt['wireless_pm_by'], '</em> ', $message['member']['name'], '</a>', $message['is_unread'] ? ' [' . $txt['new'] . ']' : '', '
Chris@76 633 </td></tr>';
Chris@76 634 }
Chris@76 635
Chris@76 636 if ($context['currently_using_labels'])
Chris@76 637 {
Chris@76 638 $labels = array();
Chris@76 639 ksort($context['labels']);
Chris@76 640 foreach ($context['labels'] as $label)
Chris@76 641 $labels[] = '<a href="' . $scripturl . '?action=pm;l=' . $label['id'] . ';imode">' . $label['name'] . '</a>' . (!empty($label['unread_messages']) ? ' (' . $label['unread_messages'] . ')' : '');
Chris@76 642 echo '
Chris@76 643 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $txt['pm_labels'], '</font></td></tr>
Chris@76 644 <tr><td>
Chris@76 645 ', implode(', ', $labels), '
Chris@76 646 </td></tr>';
Chris@76 647 }
Chris@76 648 echo '
Chris@76 649 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</tr></td>
Chris@76 650 <tr><td>[0] <a href="', $scripturl, '?imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></tr></td>', empty($context['links']['next']) ? '' : '
Chris@76 651 <tr><td>[#] <a href="' . $context['links']['next'] . ';imode" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></tr></td>', empty($context['links']['prev']) ? '' : '
Chris@76 652 <tr><td>[*] <a href="' . $context['links']['prev'] . ';imode" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></tr></td>', $context['can_send_pm'] ? '
Chris@76 653 <tr><td><a href="' . $scripturl . '?action=pm;sa=send;imode">' . $txt['new_message'] . '</a></tr></td>' : '', '
Chris@76 654 </table>';
Chris@76 655 }
Chris@76 656 else
Chris@76 657 {
Chris@76 658 $message = $context['get_pmessage']();
Chris@76 659 $message['body'] = preg_replace('~<div class="(?:quote|code)header">(.+?)</div>~', '<br />--- $1 ---', $message['body']);
Chris@76 660 $message['body'] = strip_tags(str_replace(
Chris@76 661 array(
Chris@76 662 '<blockquote>',
Chris@76 663 '</blockquote>',
Chris@76 664 '<code>',
Chris@76 665 '</code>',
Chris@76 666 '<li>',
Chris@76 667 $txt['code_select'],
Chris@76 668 ),
Chris@76 669 array(
Chris@76 670 '<br />',
Chris@76 671 '<br />--- ' . $txt['wireless_end_quote'] . ' ---<br />',
Chris@76 672 '<br />',
Chris@76 673 '<br />--- ' . $txt['wireless_end_code'] . ' ---<br />',
Chris@76 674 '<br />* ',
Chris@76 675 '',
Chris@76 676 ), $message['body']), '<br>');
Chris@76 677
Chris@76 678 echo '
Chris@76 679 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 680 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $message['subject'], '</td></tr>
Chris@76 681 <tr bgcolor="#b6dbff"><td>
Chris@76 682 <strong>', $txt['wireless_pm_by'], ':</strong> ', $message['member']['name'], '<br />
Chris@76 683 <strong>', $txt['on'], ':</strong> ', $message['time'], '
Chris@76 684 </td></tr>
Chris@76 685 <tr><td>
Chris@76 686 ', $message['body'], '
Chris@76 687 </td></tr>
Chris@76 688 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</tr></td>
Chris@76 689 <tr><td>[0] <a href="', $scripturl, '?action=pm;start=', $context['start'], ';l=', $context['current_label_id'], ';imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></tr></td>';
Chris@76 690 if ($context['can_send_pm'])
Chris@76 691 echo '
Chris@76 692 <tr><td><a href="', $scripturl, '?action=pm;sa=send;pmsg=', $message['id'], ';u=', $message['member']['id'], ';reply;imode">', $txt['wireless_pm_reply'], '</a></tr></td>';
Chris@76 693
Chris@76 694 if ($context['can_send_pm'] && $message['number_recipients'] > 1)
Chris@76 695 echo '
Chris@76 696 <tr><td><a href="', $scripturl, '?action=pm;sa=send;pmsg=', $message['id'], ';u=all;reply;imode">', $txt['wireless_pm_reply_all'], '</a></tr></td>';
Chris@76 697
Chris@76 698 echo '
Chris@76 699 </table>';
Chris@76 700 }
Chris@76 701 }
Chris@76 702
Chris@76 703 function template_imode_recent()
Chris@76 704 {
Chris@76 705 global $context, $settings, $options, $scripturl, $txt;
Chris@76 706
Chris@76 707 echo '
Chris@76 708 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 709 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $_REQUEST['action'] == 'unread' ? $txt['wireless_recent_unread_posts'] : $txt['wireless_recent_unread_replies'], '</tr></td>';
Chris@76 710
Chris@76 711 $count = 0;
Chris@76 712 if (empty($context['topics']))
Chris@76 713 echo '
Chris@76 714 <tr><td>', $txt['old_posts'], '</td></tr>';
Chris@76 715 else
Chris@76 716 {
Chris@76 717 echo '
Chris@76 718 <tr><td>', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';imode">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';imode">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';imode">&gt;</a> <a href="' . $context['links']['last'] . ';imode">&gt;&gt;</a> ' : '', '</td></tr>';
Chris@76 719 foreach ($context['topics'] as $topic)
Chris@76 720 {
Chris@76 721 $count++;
Chris@76 722 echo '
Chris@76 723 <tr><td>', $count < 10 ? '&#' . (59105 + $count) . '; ' : '', '<a href="', $scripturl, '?topic=', $topic['id'], '.msg', $topic['new_from'], ';topicseen;imode#new"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $topic['first_post']['subject'], '</a></td></tr>';
Chris@76 724 }
Chris@76 725 }
Chris@76 726 echo '
Chris@76 727 <tr bgcolor="#b6dbff"><td>', $txt['wireless_navigation'], '</td></tr>
Chris@76 728 <tr><td>[0] <a href="', $context['links']['up'], '?imode" accesskey="0">', $txt['wireless_navigation_up'], '</a></td></tr>', !empty($context['links']['next']) ? '
Chris@76 729 <tr><td>[#] <a href="' . $context['links']['next'] . ';imode" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></td></tr>' : '', !empty($context['links']['prev']) ? '
Chris@76 730 <tr><td>[*] <a href="' . $context['links']['prev'] . ';imode" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></td></tr>' : '', '
Chris@76 731 </table>';
Chris@76 732 }
Chris@76 733
Chris@76 734 function template_imode_error()
Chris@76 735 {
Chris@76 736 global $context, $settings, $options, $txt, $scripturl;
Chris@76 737
Chris@76 738 echo '
Chris@76 739 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 740 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['error_title'], '</font></td></tr>
Chris@76 741 <tr><td>', $context['error_message'], '</td></tr>
Chris@76 742 <tr class="windowbg"><td>[0] <a href="', $scripturl, '?imode" accesskey="0">', $txt['wireless_error_home'], '</a></td></tr>
Chris@76 743 </table>';
Chris@76 744 }
Chris@76 745
Chris@76 746 function template_imode_profile()
Chris@76 747 {
Chris@76 748 global $context, $settings, $options, $scripturl, $board, $txt;
Chris@76 749
Chris@76 750 echo '
Chris@76 751 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 752 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $txt['summary'], ' - ', $context['member']['name'], '</font></td></tr>
Chris@76 753 <tr><td>
Chris@76 754 <strong>', $txt['name'], ':</strong> ', $context['member']['name'], '
Chris@76 755 </td></tr>
Chris@76 756 <tr><td>
Chris@76 757 <strong>', $txt['position'], ': </strong>', (!empty($context['member']['group']) ? $context['member']['group'] : $context['member']['post_group']), '
Chris@76 758 </td></tr>
Chris@76 759 <tr><td>
Chris@76 760 <strong>', $txt['lastLoggedIn'], ':</strong> ', $context['member']['last_login'], '
Chris@76 761 </td></tr>';
Chris@76 762
Chris@76 763 if (!empty($context['member']['bans']))
Chris@76 764 {
Chris@76 765 echo '
Chris@76 766 <tr><td>
Chris@76 767 <font color="red"><strong>', $txt['user_banned_by_following'], ':</strong></font>';
Chris@76 768
Chris@76 769 foreach ($context['member']['bans'] as $ban)
Chris@76 770 echo '
Chris@76 771 <br />', $ban['explanation'], '';
Chris@76 772
Chris@76 773 echo '
Chris@76 774 </td></tr>';
Chris@76 775 }
Chris@76 776
Chris@76 777 echo '
Chris@76 778
Chris@76 779 <tr bgcolor="#b6dbff"><td>', $txt['additional_info'], '</td></tr>';
Chris@76 780
Chris@76 781 if (!$context['user']['is_owner'] && $context['can_send_pm'])
Chris@76 782 echo '
Chris@76 783 <tr><td><a href="', $scripturl, '?action=pm;sa=send;u=', $context['id_member'], ';imode">', $txt['wireless_profile_pm'], '.</a></td></tr>';
Chris@76 784
Chris@76 785 if (!$context['user']['is_owner'] && !empty($context['can_edit_ban']))
Chris@76 786 echo '
Chris@76 787 <tr><td><a href="', $scripturl, '?action=admin;area=ban;sa=add;u=', $context['id_member'], ';imode">', $txt['profileBanUser'], '.</a></td></tr>';
Chris@76 788
Chris@76 789 echo '
Chris@76 790 <tr><td><a href="', $scripturl, '?imode">', $txt['wireless_error_home'], '.</a></td></tr>';
Chris@76 791
Chris@76 792 echo '
Chris@76 793 </table>';
Chris@76 794 }
Chris@76 795
Chris@76 796 function template_imode_ban_edit()
Chris@76 797 {
Chris@76 798 global $context, $settings, $options, $scripturl, $board, $txt, $modSettings;
Chris@76 799
Chris@76 800 echo '
Chris@76 801 <form action="', $scripturl, '?action=admin;area=ban;sa=add;imode" method="post">
Chris@76 802 <table border="0" cellspacing="0" cellpadding="0">
Chris@76 803 <tr bgcolor="#6d92aa"><td><font color="#ffffff">', $context['ban']['is_new'] ? $txt['ban_add_new'] : $txt['ban_edit'] . ' \'' . $context['ban']['name'] . '\'', '</font></td></tr>
Chris@76 804 <tr><td>
Chris@76 805 <strong>', $txt['ban_name'], ': </strong>
Chris@76 806 <input type="text" name="ban_name" value="', $context['ban']['name'], '" size="20" class="input_text" />
Chris@76 807 </td></tr>
Chris@76 808 <tr><td>
Chris@76 809 <strong>', $txt['ban_expiration'], ': </strong><br />
Chris@76 810 <input type="radio" name="expiration" value="never" ', $context['ban']['expiration']['status'] == 'never' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['never'], '<br />
Chris@76 811 <input type="radio" name="expiration" value="one_day" ', $context['ban']['expiration']['status'] == 'still_active_but_we_re_counting_the_days' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['ban_will_expire_within'], ' <input type="text" name="expire_date" size="3" value="', $context['ban']['expiration']['days'], '" /> ', $txt['ban_days'], '<br />
Chris@76 812 <input type="radio" name="expiration" value="expired" ', $context['ban']['expiration']['status'] == 'expired' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['ban_expired'], '<br />
Chris@76 813 </td></tr>
Chris@76 814 <tr><td>
Chris@76 815 <strong>', $txt['ban_reason'], ': </strong>
Chris@76 816 <input type="text" name="reason" value="', $context['ban']['reason'], '" size="20" class="input_text" />
Chris@76 817 </td></tr>
Chris@76 818 <tr><td>
Chris@76 819 <strong>', $txt['ban_notes'], ': </strong><br />
Chris@76 820 <textarea name="notes" cols="20" rows="3">', $context['ban']['notes'], '</textarea>
Chris@76 821 </td></tr>
Chris@76 822 <tr><td>
Chris@76 823 <strong>', $txt['ban_restriction'], ': </strong><br />
Chris@76 824 <input type="checkbox" name="full_ban" value="1"', $context['ban']['cannot']['access'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_full_ban'], '<br />
Chris@76 825 <input type="checkbox" name="cannot_post" value="1"', $context['ban']['cannot']['post'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_post'], '<br />
Chris@76 826 <input type="checkbox" name="cannot_register" value="1"', $context['ban']['cannot']['register'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_register'], '<br />
Chris@76 827 <input type="checkbox" name="cannot_login" value="1"', $context['ban']['cannot']['login'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_login'], '
Chris@76 828 </td></tr>';
Chris@76 829
Chris@76 830 if (!empty($context['ban_suggestions']))
Chris@76 831 {
Chris@76 832 echo '
Chris@76 833 <tr bgcolor="#b6dbff"><td>', $txt['ban_triggers'], '</td></tr>
Chris@76 834 <tr><td>
Chris@76 835 <input type="checkbox" name="ban_suggestion[]" value="main_ip" class="input_check" /> <strong>', $txt['wireless_ban_ip'], ':</strong><br />
Chris@76 836 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="main_ip" value="', $context['ban_suggestions']['main_ip'], '" size="20" class="input_text" />
Chris@76 837 </td></tr>';
Chris@76 838
Chris@76 839 if (empty($modSettings['disableHostnameLookup']))
Chris@76 840 echo '
Chris@76 841 <tr><td>
Chris@76 842 <input type="checkbox" name="ban_suggestion[]" value="hostname" class="input_check" /> <strong>', $txt['wireless_ban_hostname'], ':</strong><br />
Chris@76 843 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="hostname" value="', $context['ban_suggestions']['hostname'], '" size="20" class="input_text" />
Chris@76 844 </td></tr>';
Chris@76 845
Chris@76 846 echo '
Chris@76 847 <tr><td>
Chris@76 848 <input type="checkbox" name="ban_suggestion[]" value="email" class="input_check" /> <strong>', $txt['wireless_ban_email'], ':</strong><br />
Chris@76 849 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="email" value="', $context['ban_suggestions']['email'], '" size="20" class="input_text" />
Chris@76 850 </td></tr>
Chris@76 851 <tr><td>
Chris@76 852 <input type="checkbox" name="ban_suggestion[]" value="user" class="input_check" /> <strong>', $txt['ban_on_username'], ':</strong><br />';
Chris@76 853
Chris@76 854 if (empty($context['ban_suggestions']['member']['id']))
Chris@76 855 echo '
Chris@76 856 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="user" value="" size="20" class="input_text" />';
Chris@76 857 else
Chris@76 858 echo '
Chris@76 859 &nbsp;&nbsp;&nbsp;&nbsp;', $context['ban_suggestions']['member']['name'], '
Chris@76 860 <input type="hidden" name="bannedUser" value="', $context['ban_suggestions']['member']['id'], '" />';
Chris@76 861
Chris@76 862 echo '
Chris@76 863 </td></tr>';
Chris@76 864 }
Chris@76 865
Chris@76 866 echo '
Chris@76 867 <tr><td><input type="submit" name="', $context['ban']['is_new'] ? 'add_ban' : 'modify_ban', '" value="', $context['ban']['is_new'] ? $txt['ban_add'] : $txt['ban_modify'], '" class="button_submit" /></td></tr>
Chris@76 868 <tr bgcolor="#b6dbff"><td>', $txt['wireless_additional_info'], '</td></tr>
Chris@76 869 <tr><td><a href="', $scripturl, '?imode">', $txt['wireless_error_home'], '.</a></td></tr>';
Chris@76 870
Chris@76 871 echo '
Chris@76 872 </table>
Chris@76 873 <input type="hidden" name="old_expire" value="', $context['ban']['expiration']['days'], '" />
Chris@76 874 <input type="hidden" name="bg" value="', $context['ban']['id'], '" />
Chris@76 875 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 876 </form>';
Chris@76 877 }
Chris@76 878
Chris@76 879 function template_imode_below()
Chris@76 880 {
Chris@76 881 global $context, $settings, $options, $txt;
Chris@76 882
Chris@76 883 echo '
Chris@76 884 <br /><a href="', $context['linktree'][count($context['linktree']) - 1]['url'], (count($context['linktree']) > 1 ? ';' : '?'), 'nowap" rel="nofollow">', $txt['wireless_go_to_full_version'], '</a>
Chris@76 885 </body>
Chris@76 886 </html>';
Chris@76 887 }
Chris@76 888
Chris@76 889 // XHTMLMP (XHTML Mobile Profile) templates used for WAP 2.0 start here
Chris@76 890 function template_wap2_above()
Chris@76 891 {
Chris@76 892 global $context, $settings, $options, $user_info;
Chris@76 893
Chris@76 894 echo '<?xml version="1.0" encoding="', $context['character_set'], '"?', '>
Chris@76 895 <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
Chris@76 896 <html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '>
Chris@76 897 <head>
Chris@76 898 <title>', $context['page_title'], '</title>';
Chris@76 899
Chris@76 900 // Present a canonical url for search engines to prevent duplicate content in their indices.
Chris@76 901 if ($user_info['is_guest'] && !empty($context['canonical_url']))
Chris@76 902 echo '
Chris@76 903 <link rel="canonical" href="', $context['canonical_url'], '" />';
Chris@76 904
Chris@76 905 echo '
Chris@76 906 <link rel="stylesheet" href="', $settings['default_theme_url'], '/css/wireless.css" type="text/css" />
Chris@76 907 </head>
Chris@76 908 <body>';
Chris@76 909 }
Chris@76 910
Chris@76 911 function template_wap2_boardindex()
Chris@76 912 {
Chris@76 913 global $context, $settings, $options, $scripturl, $txt;
Chris@76 914
Chris@76 915 echo '
Chris@76 916 <p class="catbg">', $context['forum_name_html_safe'], '</p>';
Chris@76 917
Chris@76 918 $count = 0;
Chris@76 919 foreach ($context['categories'] as $category)
Chris@76 920 {
Chris@76 921 if (!empty($category['boards']) || $category['is_collapsed'])
Chris@76 922 echo '
Chris@76 923 <p class="titlebg">', $category['can_collapse'] ? '<a href="' . $scripturl . '?action=collapse;c=' . $category['id'] . ';sa=' . ($category['is_collapsed'] ? 'expand;' : 'collapse;') . $context['session_var'] . '=' . $context['session_id'] . ';wap2">' : '', $category['name'], $category['can_collapse'] ? '</a>' : '', '</p>';
Chris@76 924
Chris@76 925 foreach ($category['boards'] as $board)
Chris@76 926 {
Chris@76 927 $count++;
Chris@76 928 echo '
Chris@76 929 <p class="windowbg">', $board['new'] ? '<span class="updated">' : '', $count < 10 ? '[' . $count . '' : '[-', $board['children_new'] && !$board['new'] ? '<span class="updated">' : '', '] ', $board['new'] || $board['children_new'] ? '</span>' : '', '<a href="', $scripturl, '?board=', $board['id'], '.0;wap2"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $board['name'], '</a></p>';
Chris@76 930 }
Chris@76 931 }
Chris@76 932
Chris@76 933 echo '
Chris@76 934 <p class="titlebg">', $txt['wireless_options'], '</p>';
Chris@76 935 if ($context['user']['is_guest'])
Chris@76 936 echo '
Chris@76 937 <p class="windowbg"><a href="', $scripturl, '?action=login;wap2">', $txt['wireless_options_login'], '</a></p>';
Chris@76 938 else
Chris@76 939 {
Chris@76 940 if ($context['allow_pm'])
Chris@76 941 echo '
Chris@76 942 <p class="windowbg"><a href="', $scripturl, '?action=pm;wap2">', empty($context['user']['unread_messages']) ? $txt['wireless_pm_inbox'] : sprintf($txt['wireless_pm_inbox_new'], $context['user']['unread_messages']), '</a></p>';
Chris@76 943 echo '
Chris@76 944 <p class="windowbg"><a href="', $scripturl, '?action=unread;wap2">', $txt['wireless_recent_unread_posts'], '</a></p>
Chris@76 945 <p class="windowbg"><a href="', $scripturl, '?action=unreadreplies;wap2">', $txt['wireless_recent_unread_replies'], '</a></p>
Chris@76 946 <p class="windowbg"><a href="', $scripturl, '?action=logout;', $context['session_var'], '=', $context['session_id'], ';wap2">', $txt['wireless_options_logout'], '</a></p>';
Chris@76 947 }
Chris@76 948 }
Chris@76 949
Chris@76 950 function template_wap2_messageindex()
Chris@76 951 {
Chris@76 952 global $context, $settings, $options, $scripturl, $txt;
Chris@76 953
Chris@76 954 echo '
Chris@76 955 <p class="catbg">', $context['name'], '</p>';
Chris@76 956
Chris@76 957 if (!empty($context['boards']))
Chris@76 958 {
Chris@76 959 echo '
Chris@76 960 <p class="titlebg">', $txt['parent_boards'], '</p>';
Chris@76 961 foreach ($context['boards'] as $board)
Chris@76 962 echo '
Chris@76 963 <p class="windowbg">', $board['new'] ? '<span class="updated">[-] </span>' : ($board['children_new'] ? '[-<span class="updated">] </span>' : '[-] '), '<a href="', $scripturl, '?board=', $board['id'], '.0;wap2">', $board['name'], '</a></p>';
Chris@76 964 }
Chris@76 965
Chris@76 966 $count = 0;
Chris@76 967 if (!empty($context['topics']))
Chris@76 968 {
Chris@76 969 echo '
Chris@76 970 <p class="titlebg">', $txt['topics'], '</p>
Chris@76 971 <p class="windowbg">', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap2">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap2">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap2">&gt;</a> <a href="' . $context['links']['last'] . ';wap2">&gt;&gt;</a> ' : '', '</p>';
Chris@76 972 foreach ($context['topics'] as $topic)
Chris@76 973 {
Chris@76 974 $count++;
Chris@76 975 echo '
Chris@76 976 <p class="windowbg">', $count < 10 ? '[' . $count . '] ' : '', '<a href="', $scripturl, '?topic=', $topic['id'], '.0;wap2"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $topic['first_post']['subject'], '</a>', (!$topic['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), $topic['new'] && $context['user']['is_logged'] ? ' [<a href="' . $scripturl . '?topic=' . $topic['id'] . '.msg' . $topic['new_from'] . ';wap2#new" class="new">' . $txt['new'] . '</a>]' : '', '</p>';
Chris@76 977 }
Chris@76 978 }
Chris@76 979
Chris@76 980 echo '
Chris@76 981 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 982 <p class="windowbg">[0] <a href="', $context['links']['up'], ($context['links']['up'] == $scripturl . '?' ? '' : ';'), 'wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>', !empty($context['links']['next']) ? '
Chris@76 983 <p class="windowbg">[#] <a href="' . $context['links']['next'] . ';wap2" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></p>' : '', !empty($context['links']['prev']) ? '
Chris@76 984 <p class="windowbg">[*] <a href="' . $context['links']['prev'] . ';wap2" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></p>' : '', $context['can_post_new'] ? '
Chris@76 985 <p class="windowbg"><a href="' . $scripturl . '?action=post;board=' . $context['current_board'] . '.0;wap2">' . $txt['start_new_topic'] . '</a></p>' : '';
Chris@76 986 }
Chris@76 987
Chris@76 988 function template_wap2_display()
Chris@76 989 {
Chris@76 990 global $context, $settings, $options, $scripturl, $txt;
Chris@76 991
Chris@76 992 echo '
Chris@76 993 <p class="titlebg">' . $context['linktree'][1]['name'] . ' > ' . $context['linktree'][count($context['linktree']) - 2]['name'] . '</p>
Chris@76 994 <p class="catbg">', $context['subject'], '</p>
Chris@76 995 <p class="windowbg">', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap2">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap2">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap2">&gt;</a> <a href="' . $context['links']['last'] . ';wap2">&gt;&gt;</a> ' : '', '</p>';
Chris@76 996 $alternate = true;
Chris@76 997 while ($message = $context['get_message']())
Chris@76 998 {
Chris@76 999 // This is a special modification to the post so it will work on phones:
Chris@76 1000 $message['body'] = preg_replace('~<div class="(?:quote|code)header">(.+?)</div>~', '<br />--- $1 ---', $message['body']);
Chris@76 1001 $message['body'] = strip_tags(str_replace(
Chris@76 1002 array(
Chris@76 1003 '<blockquote>',
Chris@76 1004 '</blockquote>',
Chris@76 1005 '<code>',
Chris@76 1006 '</code>',
Chris@76 1007 '<li>',
Chris@76 1008 $txt['code_select'],
Chris@76 1009 ),
Chris@76 1010 array(
Chris@76 1011 '<br />',
Chris@76 1012 '<br />--- ' . $txt['wireless_end_quote'] . ' ---<br />',
Chris@76 1013 '<br />',
Chris@76 1014 '<br />--- ' . $txt['wireless_end_code'] . ' ---<br />',
Chris@76 1015 '<br />* ',
Chris@76 1016 '',
Chris@76 1017 ), $message['body']), '<br>');
Chris@76 1018
Chris@76 1019 echo $message['first_new'] ? '
Chris@76 1020 <a id="new"></a>' : '', '
Chris@76 1021 <p class="windowbg', $alternate ? '' : '2', '">
Chris@76 1022 ', $context['wireless_moderate'] && $message['member']['id'] ? '<a href="' . $scripturl . '?action=profile;u=' . $message['member']['id'] . ';wap2">' . $message['member']['name'] . '</a>' : '<strong>' . $message['member']['name'] . '</strong>', ':
Chris@76 1023 ', ((empty($context['wireless_more']) && $message['can_modify']) || !empty($context['wireless_moderate']) ? '[<a href="' . $scripturl . '?action=post;msg=' . $message['id'] . ';topic=' . $context['current_topic'] . '.' . $context['start'] . ';wap2">' . $txt['wireless_display_edit'] . '</a>]' : ''), (!$message['approved'] ? '&nbsp;<em>(' . $txt['awaiting_approval'] . ')</em>' : ''), '<br />
Chris@76 1024 ', $message['body'], '
Chris@76 1025 </p>';
Chris@76 1026 $alternate = !$alternate;
Chris@76 1027 }
Chris@76 1028 echo '
Chris@76 1029 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1030 <p class="windowbg">[0] <a href="', $context['links']['up'], ';wap2" accesskey="0">', $txt['wireless_navigation_index'], '</a></p>', $context['user']['is_logged'] ? '
Chris@76 1031 <p class="windowbg">[1] <a href="' . $scripturl . '?action=markasread;sa=topic;t=' . $context['mark_unread_time']. ';topic=' . $context['current_topic'] . '.' . $context['start'] . ';' . $context['session_var'] . '=' . $context['session_id'] . ';wap2" accesskey="1">' . $txt['mark_unread'] . '</a></p>' : '', !empty($context['links']['next']) ? '
Chris@76 1032 <p class="windowbg">[#] <a href="' . $context['links']['next'] . ';wap2' . $context['wireless_moderate'] . '" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></p>' : '', !empty($context['links']['prev']) ? '
Chris@76 1033 <p class="windowbg">[*] <a href="' . $context['links']['prev'] . ';wap2' . $context['wireless_moderate'] . '" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></p>' : '', $context['can_reply'] ? '
Chris@76 1034 <p class="windowbg"><a href="' . $scripturl . '?action=post;topic=' . $context['current_topic'] . '.' . $context['start'] . ';wap2">' . $txt['reply'] . '</a></p>' : '';
Chris@76 1035
Chris@76 1036 if (!empty($context['wireless_more']) && empty($context['wireless_moderate']))
Chris@76 1037 echo '
Chris@76 1038 <p class="windowbg"><a href="', $scripturl, '?topic=', $context['current_topic'], '.', $context['start'], ';moderate;wap2">', $txt['wireless_display_moderate'], '</a></p>';
Chris@76 1039 elseif (!empty($context['wireless_moderate']))
Chris@76 1040 {
Chris@76 1041 if ($context['can_sticky'])
Chris@76 1042 echo '
Chris@76 1043 <p class="windowbg"><a href="', $scripturl, '?action=sticky;topic=', $context['current_topic'], '.', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';wap2">', $txt['wireless_display_' . ($context['is_sticky'] ? 'unsticky' : 'sticky')], '</a></p>';
Chris@76 1044 if ($context['can_lock'])
Chris@76 1045 echo '
Chris@76 1046 <p class="windowbg"><a href="', $scripturl, '?action=lock;topic=', $context['current_topic'], '.', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';wap2">', $txt['wireless_display_' . ($context['is_locked'] ? 'unlock' : 'lock')], '</a></p>';
Chris@76 1047 }
Chris@76 1048 }
Chris@76 1049
Chris@76 1050 function template_wap2_login()
Chris@76 1051 {
Chris@76 1052 global $context, $modSettings, $scripturl, $txt;
Chris@76 1053
Chris@76 1054 echo '
Chris@76 1055 <form action="', $scripturl, '?action=login2;wap2" method="post">
Chris@76 1056 <p class="catbg">', $txt['login'], '</p>';
Chris@76 1057
Chris@76 1058 if (isset($context['login_errors']))
Chris@76 1059 foreach ($context['login_errors'] as $error)
Chris@76 1060 echo '
Chris@76 1061 <p class="windowbg" style="color: #ff0000;"><strong>', $error, '</strong></p>';
Chris@76 1062
Chris@76 1063 echo '
Chris@76 1064 <p class="windowbg">', $txt['username'], ':</p>
Chris@76 1065 <p class="windowbg"><input type="text" name="user" size="10" class="input_text" /></p>
Chris@76 1066 <p class="windowbg">', $txt['password'], ':</p>
Chris@76 1067 <p class="windowbg"><input type="password" name="passwrd" size="10" class="input_password" /></p>';
Chris@76 1068
Chris@76 1069 // Open ID?
Chris@76 1070 if (!empty($modSettings['enableOpenID']))
Chris@76 1071 echo '
Chris@76 1072 <p class="windowbg"><strong>&mdash;', $txt['or'], '&mdash;</strong></p>
Chris@76 1073 <p class="windowbg">', $txt['openid'], ':</p>
Chris@76 1074 <p class="windowbg"><input type="text" name="openid_identifier" class="input_text openid_login" size="17" /></p>';
Chris@76 1075
Chris@76 1076 echo '
Chris@76 1077 <p class="windowbg"><input type="submit" value="', $txt['login'], '" class="button_submit" /><input type="hidden" name="cookieneverexp" value="1" /></p>
Chris@76 1078 <p class="catbg">', $txt['wireless_navigation'], '</p>
Chris@76 1079 <p class="windowbg">[0] <a href="', $scripturl, '?wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>
Chris@76 1080 </form>';
Chris@76 1081 }
Chris@76 1082
Chris@76 1083 function template_wap2_post()
Chris@76 1084 {
Chris@76 1085 global $context, $settings, $options, $scripturl, $txt, $modSettings;
Chris@76 1086
Chris@76 1087 echo '
Chris@76 1088 <form action="', $scripturl, '?action=', $context['destination'], ';board=', $context['current_board'], '.0;wap2" method="post">
Chris@76 1089 <p class="titlebg">', $context['page_title'], '</p>';
Chris@76 1090
Chris@76 1091 if (!$context['becomes_approved'])
Chris@76 1092 echo '
Chris@76 1093 <p class="windowbg">
Chris@76 1094 ' . $txt['wait_for_approval'] . '
Chris@76 1095 <input type="hidden" name="not_approved" value="1" />
Chris@76 1096 </p>';
Chris@76 1097
Chris@76 1098 if ($context['locked'])
Chris@76 1099 echo '
Chris@76 1100 <p class="windowbg">
Chris@76 1101 ' . $txt['topic_locked_no_reply'] . '
Chris@76 1102 </p>';
Chris@76 1103
Chris@76 1104 if (isset($context['name']) && isset($context['email']))
Chris@76 1105 {
Chris@76 1106 echo '
Chris@76 1107 <p class="windowbg"' . (isset($context['post_error']['long_name']) || isset($context['post_error']['no_name']) ? ' style="color: #ff0000"' : '') . '>
Chris@76 1108 ' . $txt['username'] . ': <input type="text" name="guestname" value="' . $context['name'] . '" class="input_text" />
Chris@76 1109 </p>';
Chris@76 1110
Chris@76 1111 if (empty($modSettings['guest_post_no_email']))
Chris@76 1112 echo '
Chris@76 1113 <p class="windowbg"' . (isset($context['post_error']['no_email']) || isset($context['post_error']['bad_email']) ? ' style="color: #ff0000"' : '') . '>
Chris@76 1114 ' . $txt['email'] . ': <input type="text" name="email" value="' . $context['email'] . '" class="input_text" />
Chris@76 1115 </p>';
Chris@76 1116 }
Chris@76 1117
Chris@76 1118 if ($context['require_verification'])
Chris@76 1119 echo '
Chris@76 1120 <p class="windowbg"', !empty($context['post_error']['need_qr_verification']) ? ' style="color: #ff0000"' : '', '>
Chris@76 1121 ' . $txt['verification'] . ': ', template_control_verification($context['visual_verification_id'], 'all'), '
Chris@76 1122 </p>';
Chris@76 1123
Chris@76 1124 echo '
Chris@76 1125 <p class="windowbg"', isset($context['post_error']['no_subject']) ? ' style="color: #ff0000"' : '', '>
Chris@76 1126 ', $txt['subject'], ': <input type="text" name="subject"', $context['subject'] == '' ? '' : ' value="' . $context['subject'] . '"', ' maxlength="80" class="input_text" />
Chris@76 1127 </p>
Chris@76 1128 <p class="windowbg"', isset($context['post_error']['no_message']) || isset($context['post_error']['long_message']) ? ' style="color: #ff0000;"' : '', '>
Chris@76 1129 ', $txt['message'], ': <br />
Chris@76 1130 <textarea name="message" id="message" rows="5" cols="20">', $context['message'], '</textarea>
Chris@76 1131 </p>
Chris@76 1132 <p class="windowbg">
Chris@76 1133 <input type="submit" name="post" value="', $context['submit_label'], '" class="button_submit" />
Chris@76 1134 <input type="hidden" name="icon" value="wireless" />
Chris@76 1135 <input type="hidden" name="goback" value="', $context['back_to_topic'] || !empty($options['return_to_post']) ? '1' : '0', '" />
Chris@76 1136 <input type="hidden" name="seqnum" value="', $context['form_sequence_number'], '" />
Chris@76 1137 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />', isset($context['current_topic']) ? '
Chris@76 1138 <input type="hidden" name="topic" value="' . $context['current_topic'] . '" />' : '', '
Chris@76 1139 <input type="hidden" name="notify" value="', $context['notify'] || !empty($options['auto_notify']) ? '1' : '0', '" />
Chris@76 1140 </p>
Chris@76 1141 <p class="windowbg">[0] ', !empty($context['current_topic']) ? '<a href="' . $scripturl . '?topic=' . $context['current_topic'] . '.new;wap2">' . $txt['wireless_navigation_topic'] . '</a>' : '<a href="' . $scripturl . '?board=' . $context['current_board'] . '.0;wap2" accesskey="0">' . $txt['wireless_navigation_index'] . '</a>', '</p>
Chris@76 1142 </form>';
Chris@76 1143 }
Chris@76 1144
Chris@76 1145 function template_wap2_pm()
Chris@76 1146 {
Chris@76 1147 global $context, $settings, $options, $scripturl, $txt, $user_info;
Chris@76 1148
Chris@76 1149 if ($_REQUEST['action'] == 'findmember')
Chris@76 1150 {
Chris@76 1151 echo '
Chris@76 1152 <form action="', $scripturl, '?action=findmember;', $context['session_var'], '=', $context['session_id'], ';wap2" method="post">
Chris@76 1153 <p class="catbg">', $txt['wireless_pm_search_member'], '</p>
Chris@76 1154 <p class="titlebg">', $txt['find_members'], '</p>
Chris@76 1155 <p class="windowbg">
Chris@76 1156 <strong>', $txt['wireless_pm_search_name'], ':</strong>
Chris@76 1157 <input type="text" name="search" value="', isset($context['last_search']) ? $context['last_search'] : '', '" class="input_text" />', empty($_REQUEST['u']) ? '' : '
Chris@76 1158 <input type="hidden" name="u" value="' . $_REQUEST['u'] . '" />', '
Chris@76 1159 </p>
Chris@76 1160 <p class="windowbg"><input type="submit" value="', $txt['search'], '" class="button_submit" /></p>
Chris@76 1161 </form>';
Chris@76 1162 if (!empty($context['last_search']))
Chris@76 1163 {
Chris@76 1164 echo '
Chris@76 1165 <p class="titlebg">', $txt['find_results'], '</p>';
Chris@76 1166 if (empty($context['results']))
Chris@76 1167 echo '
Chris@76 1168 <p class="windowbg">[-] ', $txt['find_no_results'], '</p>';
Chris@76 1169 else
Chris@76 1170 {
Chris@76 1171 echo '
Chris@76 1172 <p class="windowbg">', empty($context['links']['prev']) ? '' : '<a href="' . $context['links']['first'] . ';wap2">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap2">&lt;</a> ', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', empty($context['links']['next']) ? '' : ' <a href="' . $context['links']['next'] . ';wap2">&gt;</a> <a href="' . $context['links']['last'] . ';wap2">&gt;&gt;</a> ', '</p>';
Chris@76 1173 $count = 0;
Chris@76 1174 foreach ($context['results'] as $result)
Chris@76 1175 {
Chris@76 1176 $count++;
Chris@76 1177 echo '
Chris@76 1178 <p class="windowbg">
Chris@76 1179 [', $count < 10 ? $count : '-', '] <a href="', $scripturl, '?action=pm;sa=send;u=', empty($_REQUEST['u']) ? $result['id'] : $_REQUEST['u'] . ',' . $result['id'], ';wap2"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $result['name'], '</a>
Chris@76 1180 </p>';
Chris@76 1181 }
Chris@76 1182 }
Chris@76 1183 }
Chris@76 1184 echo '
Chris@76 1185 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1186 <p class="windowbg">[0] <a href="', $context['links']['up'], ';wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>';
Chris@76 1187 if (!empty($context['results']))
Chris@76 1188 echo empty($context['links']['next']) ? '' : '
Chris@76 1189 <p class="windowbg">[#] <a href="' . $context['links']['next'] . ';wap2" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></p>', empty($context['links']['prev']) ? '' : '
Chris@76 1190 <p class="windowbg">[*] <a href="' . $context['links']['prev'] . ';wap2" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></p>';
Chris@76 1191 }
Chris@76 1192 elseif (!empty($_GET['sa']))
Chris@76 1193 {
Chris@76 1194 if ($_GET['sa'] == 'addbuddy')
Chris@76 1195 {
Chris@76 1196 echo '
Chris@76 1197 <p class="catbg">', $txt['wireless_pm_add_buddy'], '</p>
Chris@76 1198 <p class="titlebg">', $txt['wireless_pm_select_buddy'], '</p>';
Chris@76 1199 $count = 0;
Chris@76 1200 foreach ($context['buddies'] as $buddy)
Chris@76 1201 {
Chris@76 1202 $count++;
Chris@76 1203 if ($buddy['selected'])
Chris@76 1204 echo '
Chris@76 1205 <p class="windowbg">[-] <span style="color: gray">', $buddy['name'], '</span></p>';
Chris@76 1206 else
Chris@76 1207 echo '
Chris@76 1208 <p class="windowbg">
Chris@76 1209 [', $count < 10 ? $count : '-', '] <a href="', $buddy['add_href'], ';wap2"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $buddy['name'], '</a>
Chris@76 1210 </p>';
Chris@76 1211 }
Chris@76 1212 echo '
Chris@76 1213 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1214 <p class="windowbg">[0] <a href="', $context['pm_href'], ';wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>';
Chris@76 1215 }
Chris@76 1216 if ($_GET['sa'] == 'send' || $_GET['sa'] == 'send2')
Chris@76 1217 {
Chris@76 1218 echo '
Chris@76 1219 <form action="', $scripturl, '?action=pm;sa=send2;wap2" method="post">
Chris@76 1220 <p class="catbg">', $txt['new_message'], '</p>', empty($context['post_error']['messages']) ? '' : '
Chris@76 1221 <p class="windowbg error">' . implode('<br />', $context['post_error']['messages']) . '</p>', '
Chris@76 1222 <p class="windowbg">
Chris@76 1223 <strong>', $txt['pm_to'], ':</strong> ';
Chris@76 1224 if (empty($context['recipients']['to']))
Chris@76 1225 echo $txt['wireless_pm_no_recipients'];
Chris@76 1226 else
Chris@76 1227 {
Chris@76 1228 $to_names = array();
Chris@76 1229 $ids = array();
Chris@76 1230 foreach ($context['recipients']['to'] as $to)
Chris@76 1231 {
Chris@76 1232 $ids[] = $to['id'];
Chris@76 1233 $to_names[] = $to['name'];
Chris@76 1234 }
Chris@76 1235 echo implode(', ', $to_names);
Chris@76 1236 $ids = implode(',', $ids);
Chris@76 1237 }
Chris@76 1238 echo '
Chris@76 1239 ', empty($ids) ? '' : '<input type="hidden" name="u" value="' . $ids . '" />', '<br />
Chris@76 1240 <a href="', $scripturl, '?action=findmember', empty($ids) ? '' : ';u=' . $ids, ';', $context['session_var'], '=', $context['session_id'], ';wap2">', $txt['wireless_pm_search_member'], '</a>', empty($user_info['buddies']) ? '' : '<br />
Chris@76 1241 <a href="' . $scripturl . '?action=pm;sa=addbuddy' . (empty($ids) ? '' : ';u=' . $ids) . ';wap2">' . $txt['wireless_pm_add_buddy'] . '</a>', '
Chris@76 1242 </p>
Chris@76 1243 <p class="windowbg">
Chris@76 1244 <strong>', $txt['subject'], ':</strong> <input type="text" name="subject" value="', $context['subject'], '" />
Chris@76 1245 </p>
Chris@76 1246 <p class="windowbg">
Chris@76 1247 <strong>', $txt['message'], ':</strong><br />
Chris@76 1248 <textarea name="message" id="message" rows="5" cols="20">', $context['message'], '</textarea>
Chris@76 1249 </p>
Chris@76 1250 <p class="windowbg">
Chris@76 1251 <input type="submit" value="', $txt['send_message'], '" class="button_submit" />
Chris@76 1252 <input type="hidden" name="outbox" value="', $context['copy_to_outbox'] ? '1' : '0', '" />
Chris@76 1253 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 1254 <input type="hidden" name="seqnum" value="', $context['form_sequence_number'], '" />
Chris@76 1255 <input type="hidden" name="replied_to" value="', !empty($context['quoted_message']['id']) ? $context['quoted_message']['id'] : 0, '" />
Chris@76 1256 <input type="hidden" name="pm_head" value="', !empty($context['quoted_message']['pm_head']) ? $context['quoted_message']['pm_head'] : 0, '" />
Chris@76 1257 <input type="hidden" name="f" value="', isset($context['folder']) ? $context['folder'] : '', '" />
Chris@76 1258 <input type="hidden" name="l" value="', isset($context['current_label_id']) ? $context['current_label_id'] : -1, '" />
Chris@76 1259 </p>';
Chris@76 1260 if ($context['reply'])
Chris@76 1261 echo '
Chris@76 1262 <p class="titlebg">', $txt['wireless_pm_reply_to'], '</p>
Chris@76 1263 <p class="windowbg"><strong>', $context['quoted_message']['subject'], '</strong></p>
Chris@76 1264 <p class="windowbg">', $context['quoted_message']['body'], '</p>';
Chris@76 1265 echo '
Chris@76 1266 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1267 <p class="windowbg">[0] <a href="', $scripturl, '?action=pm;wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>
Chris@76 1268 </form>';
Chris@76 1269 }
Chris@76 1270 }
Chris@76 1271 elseif (empty($_GET['pmsg']))
Chris@76 1272 {
Chris@76 1273 echo '
Chris@76 1274 <p class="catbg">', $context['current_label_id'] == -1 ? $txt['wireless_pm_inbox'] : $txt['pm_current_label'] . ': ' . $context['current_label'], '</p>
Chris@76 1275 <p class="windowbg">', empty($context['links']['prev']) ? '' : '<a href="' . $context['links']['first'] . ';wap2">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap2">&lt;</a> ', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', empty($context['links']['next']) ? '' : ' <a href="' . $context['links']['next'] . ';wap2">&gt;</a> <a href="' . $context['links']['last'] . ';wap2">&gt;&gt;</a> ', '</p>';
Chris@76 1276 $count = 0;
Chris@76 1277 while ($message = $context['get_pmessage']())
Chris@76 1278 {
Chris@76 1279 $count++;
Chris@76 1280 echo '
Chris@76 1281 <p class="windowbg">
Chris@76 1282 [', $count < 10 ? $count : '-', '] <a href="', $scripturl, '?action=pm;start=', $context['start'], ';pmsg=', $message['id'], ';l=', $context['current_label_id'], ';wap2"', $count < 10 ? ' accesskey="' . $count . '"' : '', '>', $message['subject'], ' <em>', $txt['wireless_pm_by'], '</em> ', $message['member']['name'], '</a>', $message['is_unread'] ? ' [' . $txt['new'] . ']' : '', '
Chris@76 1283 </p>';
Chris@76 1284 }
Chris@76 1285
Chris@76 1286 if ($context['currently_using_labels'])
Chris@76 1287 {
Chris@76 1288 $labels = array();
Chris@76 1289 ksort($context['labels']);
Chris@76 1290 foreach ($context['labels'] as $label)
Chris@76 1291 $labels[] = '<a href="' . $scripturl . '?action=pm;l=' . $label['id'] . ';wap2">' . $label['name'] . '</a>' . (!empty($label['unread_messages']) ? ' (' . $label['unread_messages'] . ')' : '');
Chris@76 1292 echo '
Chris@76 1293 <p class="catbg">
Chris@76 1294 ', $txt['pm_labels'], '
Chris@76 1295 </p>
Chris@76 1296 <p class="windowbg">
Chris@76 1297 ', implode(', ', $labels), '
Chris@76 1298 </p>';
Chris@76 1299 }
Chris@76 1300
Chris@76 1301 echo '
Chris@76 1302 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1303 <p class="windowbg">[0] <a href="', $scripturl, '?wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>', empty($context['links']['next']) ? '' : '
Chris@76 1304 <p class="windowbg">[#] <a href="' . $context['links']['next'] . ';wap2" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></p>', empty($context['links']['prev']) ? '' : '
Chris@76 1305 <p class="windowbg">[*] <a href="' . $context['links']['prev'] . ';wap2" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></p>', $context['can_send_pm'] ? '
Chris@76 1306 <p class="windowbg"><a href="' . $scripturl . '?action=pm;sa=send;wap2">' . $txt['new_message'] . '</a></p>' : '';
Chris@76 1307 }
Chris@76 1308 else
Chris@76 1309 {
Chris@76 1310 $message = $context['get_pmessage']();
Chris@76 1311 $message['body'] = preg_replace('~<div class="(?:quote|code)header">(.+?)</div>~', '<br />--- $1 ---', $message['body']);
Chris@76 1312 $message['body'] = strip_tags(str_replace(
Chris@76 1313 array(
Chris@76 1314 '<blockquote>',
Chris@76 1315 '</blockquote>',
Chris@76 1316 '<code>',
Chris@76 1317 '</code>',
Chris@76 1318 '<li>',
Chris@76 1319 $txt['code_select'],
Chris@76 1320 ),
Chris@76 1321 array(
Chris@76 1322 '<br />',
Chris@76 1323 '<br />--- ' . $txt['wireless_end_quote'] . ' ---<br />',
Chris@76 1324 '<br />',
Chris@76 1325 '<br />--- ' . $txt['wireless_end_code'] . ' ---<br />',
Chris@76 1326 '<br />* ',
Chris@76 1327 '',
Chris@76 1328 ), $message['body']), '<br>');
Chris@76 1329
Chris@76 1330 echo '
Chris@76 1331 <p class="catbg">', $message['subject'], '</p>
Chris@76 1332 <p class="titlebg">
Chris@76 1333 <strong>', $txt['wireless_pm_by'], ':</strong> ', $message['member']['name'], '<br />
Chris@76 1334 <strong>', $txt['on'], ':</strong> ', $message['time'], '
Chris@76 1335 </p>
Chris@76 1336 <p class="windowbg">
Chris@76 1337 ', $message['body'], '
Chris@76 1338 </p>
Chris@76 1339 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1340 <p class="windowbg">[0] <a href="', $scripturl, '?action=pm;start=', $context['start'], ';l=', $context['current_label_id'], ';wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>';
Chris@76 1341 if ($context['can_send_pm'])
Chris@76 1342 echo '
Chris@76 1343 <p class="windowbg"><a href="', $scripturl, '?action=pm;sa=send;pmsg=', $message['id'], ';u=', $message['member']['id'], ';reply;wap2">', $txt['wireless_pm_reply'], '</a></p>';
Chris@76 1344
Chris@76 1345 if ($context['can_send_pm'] && $message['number_recipients'] > 1)
Chris@76 1346 echo '
Chris@76 1347 <p class="windowbg"><a href="', $scripturl, '?action=pm;sa=send;pmsg=', $message['id'], ';u=all;reply;wap2">', $txt['wireless_pm_reply_all'], '</a></p>';
Chris@76 1348
Chris@76 1349 }
Chris@76 1350 }
Chris@76 1351
Chris@76 1352 function template_wap2_recent()
Chris@76 1353 {
Chris@76 1354 global $context, $settings, $options, $scripturl, $txt;
Chris@76 1355
Chris@76 1356 echo '
Chris@76 1357 <p class="catbg">', $_REQUEST['action'] == 'unread' ? $txt['wireless_recent_unread_posts'] : $txt['wireless_recent_unread_replies'], '</p>';
Chris@76 1358
Chris@76 1359 $count = 0;
Chris@76 1360 if (empty($context['topics']))
Chris@76 1361 echo '
Chris@76 1362 <p class="windowbg">', $txt['old_posts'], '</p>';
Chris@76 1363 else
Chris@76 1364 {
Chris@76 1365 echo '
Chris@76 1366 <p class="windowbg">', !empty($context['links']['prev']) ? '<a href="' . $context['links']['first'] . ';wap2">&lt;&lt;</a> <a href="' . $context['links']['prev'] . ';wap2">&lt;</a> ' : '', '(', $context['page_info']['current_page'], '/', $context['page_info']['num_pages'], ')', !empty($context['links']['next']) ? ' <a href="' . $context['links']['next'] . ';wap2">&gt;</a> <a href="' . $context['links']['last'] . ';wap2">&gt;&gt;</a> ' : '', '</p>';
Chris@76 1367 foreach ($context['topics'] as $topic)
Chris@76 1368 {
Chris@76 1369 $count++;
Chris@76 1370 echo '
Chris@76 1371 <p class="windowbg">', ($count < 10 ? '[' . $count . '] ' : ''), '<a href="', $scripturl, '?topic=', $topic['id'], '.msg', $topic['new_from'], ';topicseen;wap2#new"', ($count < 10 ? ' accesskey="' . $count . '"' : ''), '>', $topic['first_post']['subject'], '</a></p>';
Chris@76 1372 }
Chris@76 1373 }
Chris@76 1374 echo '
Chris@76 1375 <p class="titlebg">', $txt['wireless_navigation'], '</p>
Chris@76 1376 <p class="windowbg">[0] <a href="', $context['links']['up'], '?wap2" accesskey="0">', $txt['wireless_navigation_up'], '</a></p>', !empty($context['links']['next']) ? '
Chris@76 1377 <p class="windowbg">[#] <a href="' . $context['links']['next'] . ';wap2" accesskey="#">' . $txt['wireless_navigation_next'] . '</a></p>' : '', !empty($context['links']['prev']) ? '
Chris@76 1378 <p class="windowbg">[*] <a href="' . $context['links']['prev'] . ';wap2" accesskey="*">' . $txt['wireless_navigation_prev'] . '</a></p>' : '';
Chris@76 1379 }
Chris@76 1380
Chris@76 1381 function template_wap2_error()
Chris@76 1382 {
Chris@76 1383 global $context, $settings, $options, $txt, $scripturl;
Chris@76 1384
Chris@76 1385 echo '
Chris@76 1386 <p class="catbg">', $context['error_title'], '</p>
Chris@76 1387 <p class="windowbg">', $context['error_message'], '</p>
Chris@76 1388 <p class="windowbg">[0] <a href="', $scripturl, '?wap2" accesskey="0">', $txt['wireless_error_home'], '</a></p>';
Chris@76 1389 }
Chris@76 1390
Chris@76 1391 function template_wap2_profile()
Chris@76 1392 {
Chris@76 1393 global $context, $settings, $options, $scripturl, $board, $txt;
Chris@76 1394
Chris@76 1395 echo '
Chris@76 1396 <p class="catbg">', $txt['summary'], ' - ', $context['member']['name'], '</p>
Chris@76 1397 <p class="windowbg"><strong>', $txt['name'], ':</strong> ', $context['member']['name'], '</p>
Chris@76 1398 <p class="windowbg"><strong>', $txt['position'], ': </strong>', (!empty($context['member']['group']) ? $context['member']['group'] : $context['member']['post_group']), '</p>
Chris@76 1399 <p class="windowbg"><strong>', $txt['lastLoggedIn'], ':</strong> ', $context['member']['last_login'], '</p>';
Chris@76 1400
Chris@76 1401 if (!empty($context['member']['bans']))
Chris@76 1402 {
Chris@76 1403 echo '
Chris@76 1404 <p class="titlebg"><strong>', $txt['user_banned_by_following'], ':</strong></p>';
Chris@76 1405
Chris@76 1406 foreach ($context['member']['bans'] as $ban)
Chris@76 1407 echo '
Chris@76 1408 <p class="windowbg">', $ban['explanation'], '</p>';
Chris@76 1409
Chris@76 1410 }
Chris@76 1411
Chris@76 1412 echo '
Chris@76 1413
Chris@76 1414 <p class="titlebg">', $txt['additional_info'], '</p>';
Chris@76 1415
Chris@76 1416 if (!$context['user']['is_owner'] && $context['can_send_pm'])
Chris@76 1417 echo '
Chris@76 1418 <p class="windowbg"><a href="', $scripturl, '?action=pm;sa=send;u=', $context['id_member'], ';wap2">', $txt['wireless_profile_pm'], '.</a></p>';
Chris@76 1419
Chris@76 1420 if (!$context['user']['is_owner'] && !empty($context['can_edit_ban']))
Chris@76 1421 echo '
Chris@76 1422 <p class="windowbg"><a href="', $scripturl, '?action=admin;area=ban;sa=add;u=', $context['id_member'], ';wap2">', $txt['profileBanUser'], '.</a></p>';
Chris@76 1423
Chris@76 1424 echo '
Chris@76 1425 <p class="windowbg"><a href="', $scripturl, '?wap2">', $txt['wireless_error_home'], '.</a></p>';
Chris@76 1426
Chris@76 1427 }
Chris@76 1428
Chris@76 1429 function template_wap2_ban_edit()
Chris@76 1430 {
Chris@76 1431 global $context, $settings, $options, $scripturl, $board, $txt, $modSettings;
Chris@76 1432
Chris@76 1433 echo '
Chris@76 1434 <form action="', $scripturl, '?action=admin;area=ban;sa=add;wap2" method="post">
Chris@76 1435 <p class="catbg">', $context['ban']['is_new'] ? $txt['ban_add_new'] : $txt['ban_edit'] . ' \'' . $context['ban']['name'] . '\'', '</p>
Chris@76 1436 <p class="windowbg">
Chris@76 1437 <strong>', $txt['ban_name'], ': </strong>
Chris@76 1438 <input type="text" name="ban_name" value="', $context['ban']['name'], '" size="20" class="input_text" />
Chris@76 1439 </p>
Chris@76 1440 <p class="windowbg">
Chris@76 1441 <strong>', $txt['ban_expiration'], ': </strong><br />
Chris@76 1442 <input type="radio" name="expiration" value="never" ', $context['ban']['expiration']['status'] == 'never' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['never'], '<br />
Chris@76 1443 <input type="radio" name="expiration" value="one_day" ', $context['ban']['expiration']['status'] == 'still_active_but_we_re_counting_the_days' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['ban_will_expire_within'], ' <input type="text" name="expire_date" size="3" value="', $context['ban']['expiration']['days'], '" /> ', $txt['ban_days'], '<br />
Chris@76 1444 <input type="radio" name="expiration" value="expired" ', $context['ban']['expiration']['status'] == 'expired' ? ' checked="checked"' : '', ' class="input_radio" /> ', $txt['ban_expired'], '<br />
Chris@76 1445 </p>
Chris@76 1446 <p class="windowbg">
Chris@76 1447 <strong>', $txt['ban_reason'], ': </strong>
Chris@76 1448 <input type="text" name="reason" value="', $context['ban']['reason'], '" size="20" class="input_text" />
Chris@76 1449 </p>
Chris@76 1450 <p class="windowbg">
Chris@76 1451 <strong>', $txt['ban_notes'], ': </strong><br />
Chris@76 1452 <textarea name="notes" cols="20" rows="3">', $context['ban']['notes'], '</textarea>
Chris@76 1453 </p>
Chris@76 1454 <p class="windowbg">
Chris@76 1455 <strong>', $txt['ban_restriction'], ': </strong><br />
Chris@76 1456 <input type="checkbox" name="full_ban" value="1"', $context['ban']['cannot']['access'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_full_ban'], '<br />
Chris@76 1457 <input type="checkbox" name="cannot_post" value="1"', $context['ban']['cannot']['post'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_post'], '<br />
Chris@76 1458 <input type="checkbox" name="cannot_register" value="1"', $context['ban']['cannot']['register'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_register'], '<br />
Chris@76 1459 <input type="checkbox" name="cannot_login" value="1"', $context['ban']['cannot']['login'] ? ' checked="checked"' : '', ' class="input_check" /> ', $txt['ban_cannot_login'], '
Chris@76 1460 </p>';
Chris@76 1461
Chris@76 1462 if (!empty($context['ban_suggestions']))
Chris@76 1463 {
Chris@76 1464 echo '
Chris@76 1465 <p class="titlebg">', $txt['ban_triggers'], '</p>
Chris@76 1466 <p class="windowbg">
Chris@76 1467 <input type="checkbox" name="ban_suggestion[]" value="main_ip" class="input_check" /> <strong>', $txt['wireless_ban_ip'], ':</strong><br />
Chris@76 1468 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="main_ip" value="', $context['ban_suggestions']['main_ip'], '" size="20" class="input_text" />
Chris@76 1469 </p>';
Chris@76 1470
Chris@76 1471 if (empty($modSettings['disableHostnameLookup']))
Chris@76 1472 echo '
Chris@76 1473 <p class="windowbg">
Chris@76 1474 <input type="checkbox" name="ban_suggestion[]" value="hostname" class="input_check" /> <strong>', $txt['wireless_ban_hostname'], ':</strong><br />
Chris@76 1475 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="hostname" value="', $context['ban_suggestions']['hostname'], '" size="20" class="input_text" />
Chris@76 1476 <p>';
Chris@76 1477
Chris@76 1478 echo '
Chris@76 1479 <p class="windowbg">
Chris@76 1480 <input type="checkbox" name="ban_suggestion[]" value="email" class="input_check" /> <strong>', $txt['wireless_ban_email'], ':</strong><br />
Chris@76 1481 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="email" value="', $context['ban_suggestions']['email'], '" size="20" class="input_text" />
Chris@76 1482 </p>
Chris@76 1483 <p class="windowbg">
Chris@76 1484 <input type="checkbox" name="ban_suggestion[]" value="user" class="input_check" /> <strong>', $txt['ban_on_username'], ':</strong><br />';
Chris@76 1485
Chris@76 1486 if (empty($context['ban_suggestions']['member']['id']))
Chris@76 1487 echo '
Chris@76 1488 &nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="user" value="" size="20" class="input_text" />';
Chris@76 1489 else
Chris@76 1490 echo '
Chris@76 1491 &nbsp;&nbsp;&nbsp;&nbsp;', $context['ban_suggestions']['member']['name'], '
Chris@76 1492 <input type="hidden" name="bannedUser" value="', $context['ban_suggestions']['member']['id'], '" />';
Chris@76 1493
Chris@76 1494 echo '
Chris@76 1495 </p>';
Chris@76 1496 }
Chris@76 1497
Chris@76 1498 echo '
Chris@76 1499
Chris@76 1500 <p class="windowbg"><input type="submit" name="', $context['ban']['is_new'] ? 'add_ban' : 'modify_ban', '" value="', $context['ban']['is_new'] ? $txt['ban_add'] : $txt['ban_modify'], '" class="button_submit" /></p>
Chris@76 1501 <p class="titlebg">', $txt['wireless_additional_info'], '</p>
Chris@76 1502 <p class="windowbg"><a href="', $scripturl, '?wap2">', $txt['wireless_error_home'], '.</a></p>';
Chris@76 1503
Chris@76 1504 echo '
Chris@76 1505 <input type="hidden" name="old_expire" value="', $context['ban']['expiration']['days'], '" />
Chris@76 1506 <input type="hidden" name="bg" value="', $context['ban']['id'], '" />
Chris@76 1507 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 1508 </form>';
Chris@76 1509 }
Chris@76 1510
Chris@76 1511 function template_wap2_below()
Chris@76 1512 {
Chris@76 1513 global $context, $settings, $options, $txt;
Chris@76 1514
Chris@76 1515 echo '
Chris@76 1516 <a href="', $context['linktree'][count($context['linktree']) - 1]['url'], (count($context['linktree']) > 1 ? ';' : '?'), 'nowap" rel="nofollow">', $txt['wireless_go_to_full_version'], '</a>
Chris@76 1517 </body>
Chris@76 1518 </html>';
Chris@76 1519 }
Chris@76 1520
Chris@76 1521 ?>