annotate forum/Themes/default/ModerationCenter.template.php @ 82:6dd719d7c78b website

Add Sonic Annotator pages (probably best to host it here in future rather than with the omras2 site)
author Chris Cannam
date Mon, 20 Jan 2014 10:48:02 +0000
parents e3e11437ecea
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 function template_moderation_center()
Chris@76 14 {
Chris@76 15 global $settings, $options, $context, $txt, $scripturl;
Chris@76 16
Chris@76 17 // Show a welcome message to the user.
Chris@76 18 echo '
Chris@76 19 <div id="modcenter">
Chris@76 20 <div class="cat_bar">
Chris@76 21 <h3 class="catbg">', $txt['moderation_center'], '</h3>
Chris@76 22 </div>
Chris@76 23 <div class="information">
Chris@76 24 <strong>', $txt['hello_guest'], ' ', $context['user']['name'], '!</strong>
Chris@76 25 <p>
Chris@76 26 ', $txt['mc_description'], '
Chris@76 27 </p>
Chris@76 28
Chris@76 29 </div>';
Chris@76 30
Chris@76 31 $alternate = true;
Chris@76 32 // Show all the blocks they want to see.
Chris@76 33 foreach ($context['mod_blocks'] as $block)
Chris@76 34 {
Chris@76 35 $block_function = 'template_' . $block;
Chris@76 36
Chris@76 37 echo '
Chris@76 38 <div class="modblock_', $alternate ? 'left' : 'right', '">', function_exists($block_function) ? $block_function() : '', '</div>';
Chris@76 39
Chris@76 40 if (!$alternate)
Chris@76 41 echo '
Chris@76 42 <br class="clear" />';
Chris@76 43
Chris@76 44 $alternate = !$alternate;
Chris@76 45 }
Chris@76 46
Chris@76 47 echo '
Chris@76 48 </div>
Chris@76 49 <br class="clear" />';
Chris@76 50 }
Chris@76 51
Chris@76 52 function template_latest_news()
Chris@76 53 {
Chris@76 54 global $settings, $options, $context, $txt, $scripturl;
Chris@76 55
Chris@76 56 echo '
Chris@76 57 <div class="cat_bar">
Chris@76 58 <h3 class="catbg">
Chris@76 59 <span class="ie6_header floatleft"><a href="', $scripturl, '?action=helpadmin;help=live_news" onclick="return reqWin(this.href);" class="help"><img src="', $settings['images_url'], '/helptopics.gif" alt="', $txt['help'], '" class="icon" /></a> ', $txt['mc_latest_news'], '</span>
Chris@76 60 </h3>
Chris@76 61 </div>
Chris@76 62 <div class="windowbg">
Chris@76 63 <span class="topslice"><span></span></span>
Chris@76 64 <div class="content">
Chris@76 65 <div id="smfAnnouncements" class="smalltext">', $txt['mc_cannot_connect_sm'], '</div>
Chris@76 66 </div>
Chris@76 67 <span class="botslice"><span></span></span>
Chris@76 68 </div>';
Chris@76 69
Chris@76 70 // This requires a lot of javascript...
Chris@76 71 //!!! Put this in it's own file!!
Chris@76 72 echo '
Chris@76 73 <script type="text/javascript" src="', $scripturl, '?action=viewsmfile;filename=current-version.js"></script>
Chris@76 74 <script type="text/javascript" src="', $scripturl, '?action=viewsmfile;filename=latest-news.js"></script>
Chris@76 75 <script type="text/javascript" src="', $settings['default_theme_url'], '/scripts/admin.js?fin20"></script>
Chris@76 76 <script type="text/javascript"><!-- // --><![CDATA[
Chris@76 77 var oAdminIndex = new smf_AdminIndex({
Chris@76 78 sSelf: \'oAdminCenter\',
Chris@76 79
Chris@76 80 bLoadAnnouncements: true,
Chris@76 81 sAnnouncementTemplate: ', JavaScriptEscape('
Chris@76 82 <dl>
Chris@76 83 %content%
Chris@76 84 </dl>
Chris@76 85 '), ',
Chris@76 86 sAnnouncementMessageTemplate: ', JavaScriptEscape('
Chris@76 87 <dt><a href="%href%">%subject%</a> ' . $txt['on'] . ' %time%</dt>
Chris@76 88 <dd>
Chris@76 89 %message%
Chris@76 90 </dd>
Chris@76 91 '), ',
Chris@76 92 sAnnouncementContainerId: \'smfAnnouncements\'
Chris@76 93 });
Chris@76 94 // ]]></script>';
Chris@76 95
Chris@76 96 }
Chris@76 97
Chris@76 98 // Show all the group requests the user can see.
Chris@76 99 function template_group_requests_block()
Chris@76 100 {
Chris@76 101 global $settings, $options, $context, $txt, $scripturl;
Chris@76 102
Chris@76 103 echo '
Chris@76 104 <div class="cat_bar">
Chris@76 105 <h3 class="catbg">
Chris@76 106 <a href="', $scripturl, '?action=groups;sa=requests">', $txt['mc_group_requests'], '</a>
Chris@76 107 </h3>
Chris@76 108 </div>
Chris@76 109 <div class="windowbg">
Chris@76 110 <span class="topslice"><span></span></span>
Chris@76 111 <div class="content modbox">
Chris@76 112 <ul class="reset">';
Chris@76 113
Chris@76 114 foreach ($context['group_requests'] as $request)
Chris@76 115 echo '
Chris@76 116 <li class="smalltext">
Chris@76 117 <a href="', $request['request_href'], '">', $request['group']['name'], '</a> ', $txt['mc_groupr_by'], ' ', $request['member']['link'], '
Chris@76 118 </li>';
Chris@76 119
Chris@76 120 // Don't have any watched users right now?
Chris@76 121 if (empty($context['group_requests']))
Chris@76 122 echo '
Chris@76 123 <li>
Chris@76 124 <strong class="smalltext">', $txt['mc_group_requests_none'], '</strong>
Chris@76 125 </li>';
Chris@76 126
Chris@76 127 echo '
Chris@76 128 </ul>
Chris@76 129 </div>
Chris@76 130 <span class="botslice"><span></span></span>
Chris@76 131 </div>';
Chris@76 132 }
Chris@76 133
Chris@76 134 // A block to show the current top reported posts.
Chris@76 135 function template_reported_posts_block()
Chris@76 136 {
Chris@76 137 global $settings, $options, $context, $txt, $scripturl;
Chris@76 138
Chris@76 139 echo '
Chris@76 140 <div class="cat_bar">
Chris@76 141 <h3 class="catbg">
Chris@76 142 <a href="', $scripturl, '?action=moderate;area=reports">', $txt['mc_recent_reports'], '</a>
Chris@76 143 </h3>
Chris@76 144 </div>
Chris@76 145 <div class="windowbg">
Chris@76 146 <span class="topslice"><span></span></span>
Chris@76 147 <div class="content modbox">
Chris@76 148 <ul class="reset">';
Chris@76 149
Chris@76 150 foreach ($context['reported_posts'] as $report)
Chris@76 151 echo '
Chris@76 152 <li class="smalltext">
Chris@76 153 <a href="', $report['report_href'], '">', $report['subject'], '</a> ', $txt['mc_reportedp_by'], ' ', $report['author']['link'], '
Chris@76 154 </li>';
Chris@76 155
Chris@76 156 // Don't have any watched users right now?
Chris@76 157 if (empty($context['reported_posts']))
Chris@76 158 echo '
Chris@76 159 <li>
Chris@76 160 <strong class="smalltext">', $txt['mc_recent_reports_none'], '</strong>
Chris@76 161 </li>';
Chris@76 162
Chris@76 163 echo '
Chris@76 164 </ul>
Chris@76 165 </div>
Chris@76 166 <span class="botslice"><span></span></span>
Chris@76 167 </div>';
Chris@76 168 }
Chris@76 169
Chris@76 170 function template_watched_users()
Chris@76 171 {
Chris@76 172 global $settings, $options, $context, $txt, $scripturl;
Chris@76 173
Chris@76 174 echo '
Chris@76 175 <div class="cat_bar">
Chris@76 176 <h3 class="catbg">
Chris@76 177 <a href="', $scripturl, '?action=moderate;area=userwatch">', $txt['mc_watched_users'], '</a>
Chris@76 178 </h3>
Chris@76 179 </div>
Chris@76 180 <div class="windowbg">
Chris@76 181 <span class="topslice"><span></span></span>
Chris@76 182 <div class="content modbox">
Chris@76 183 <ul class="reset">';
Chris@76 184
Chris@76 185 foreach ($context['watched_users'] as $user)
Chris@76 186 echo '
Chris@76 187 <li>
Chris@76 188 <span class="smalltext">', sprintf(!empty($user['last_login']) ? $txt['mc_seen'] : $txt['mc_seen_never'], $user['link'], $user['last_login']), '</span>
Chris@76 189 </li>';
Chris@76 190
Chris@76 191 // Don't have any watched users right now?
Chris@76 192 if (empty($context['watched_users']))
Chris@76 193 echo '
Chris@76 194 <li>
Chris@76 195 <strong class="smalltext">', $txt['mc_watched_users_none'], '</strong>
Chris@76 196 </li>';
Chris@76 197
Chris@76 198 echo '
Chris@76 199 </ul>
Chris@76 200 </div>
Chris@76 201 <span class="botslice"><span></span></span>
Chris@76 202 </div>';
Chris@76 203 }
Chris@76 204
Chris@76 205 // Little section for making... notes.
Chris@76 206 function template_notes()
Chris@76 207 {
Chris@76 208 global $settings, $options, $context, $txt, $scripturl;
Chris@76 209
Chris@76 210 echo '
Chris@76 211 <form action="', $scripturl, '?action=moderate;area=index" method="post">
Chris@76 212 <div class="cat_bar">
Chris@76 213 <h3 class="catbg">', $txt['mc_notes'], '</h3>
Chris@76 214 </div>
Chris@76 215 <div class="windowbg">
Chris@76 216 <span class="topslice"><span></span></span>
Chris@76 217 <div class="content modbox">';
Chris@76 218
Chris@76 219 if (!empty($context['notes']))
Chris@76 220 {
Chris@76 221 echo '
Chris@76 222 <ul class="reset moderation_notes">';
Chris@76 223
Chris@76 224 // Cycle through the notes.
Chris@76 225 foreach ($context['notes'] as $note)
Chris@76 226 echo '
Chris@76 227 <li class="smalltext"><a href="', $note['delete_href'], '"><img src="', $settings['images_url'], '/pm_recipient_delete.gif" alt="" /></a> <strong>', $note['author']['link'], ':</strong> ', $note['text'], '</li>';
Chris@76 228
Chris@76 229 echo '
Chris@76 230 </ul>
Chris@76 231 <div class="pagesection notes">
Chris@76 232 <span class="smalltext">', $txt['pages'], ': ', $context['page_index'], '</span>
Chris@76 233 </div>';
Chris@76 234 }
Chris@76 235
Chris@76 236 echo '
Chris@76 237 <div class="floatleft post_note">
Chris@76 238 <input type="text" name="new_note" value="', $txt['mc_click_add_note'], '" style="width: 95%;" onclick="if (this.value == \'', $txt['mc_click_add_note'], '\') this.value = \'\';" class="input_text" />
Chris@76 239 </div>
Chris@76 240 <div class="floatright">
Chris@76 241 <input type="submit" name="makenote" value="', $txt['mc_add_note'], '" class="button_submit" />
Chris@76 242 </div>
Chris@76 243 <br class="clear" />
Chris@76 244 </div>
Chris@76 245 <span class="botslice"><span></span></span>
Chris@76 246 </div>
Chris@76 247 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 248 </form>';
Chris@76 249 }
Chris@76 250
Chris@76 251 function template_reported_posts()
Chris@76 252 {
Chris@76 253 global $settings, $options, $context, $txt, $scripturl;
Chris@76 254
Chris@76 255 echo '
Chris@76 256 <form action="', $scripturl, '?action=moderate;area=reports', $context['view_closed'] ? ';sa=closed' : '', ';start=', $context['start'], '" method="post" accept-charset="', $context['character_set'], '">
Chris@76 257 <div class="cat_bar">
Chris@76 258 <h3 class="catbg">
Chris@76 259 ', $context['view_closed'] ? $txt['mc_reportedp_closed'] : $txt['mc_reportedp_active'], '
Chris@76 260 </h3>
Chris@76 261 </div>
Chris@76 262 <div class="pagesection">
Chris@76 263 <div class="pages">', $txt['pages'], ': ', $context['page_index'], '</div>
Chris@76 264 </div>';
Chris@76 265
Chris@76 266 // Make the buttons.
Chris@76 267 $close_button = create_button('close.gif', $context['view_closed'] ? 'mc_reportedp_open' : 'mc_reportedp_close', $context['view_closed'] ? 'mc_reportedp_open' : 'mc_reportedp_close', 'align="middle"');
Chris@76 268 $details_button = create_button('details.gif', 'mc_reportedp_details', 'mc_reportedp_details', 'align="middle"');
Chris@76 269 $ignore_button = create_button('ignore.gif', 'mc_reportedp_ignore', 'mc_reportedp_ignore', 'align="middle"');
Chris@76 270 $unignore_button = create_button('ignore.gif', 'mc_reportedp_unignore', 'mc_reportedp_unignore', 'align="middle"');
Chris@76 271
Chris@76 272 foreach ($context['reports'] as $report)
Chris@76 273 {
Chris@76 274 echo '
Chris@76 275 <div class="', $report['alternate'] ? 'windowbg' : 'windowbg2', '">
Chris@76 276 <span class="topslice"><span></span></span>
Chris@76 277 <div class="content">
Chris@76 278 <div>
Chris@76 279 <div class="floatleft">
Chris@76 280 <strong><a href="', $report['topic_href'], '">', $report['subject'], '</a></strong> ', $txt['mc_reportedp_by'], ' <strong>', $report['author']['link'], '</strong>
Chris@76 281 </div>
Chris@76 282 <div class="floatright">
Chris@76 283 <a href="', $report['report_href'], '">', $details_button, '</a>
Chris@76 284 <a href="', $scripturl, '?action=moderate;area=reports', $context['view_closed'] ? ';sa=closed' : '', ';ignore=', (int) !$report['ignore'], ';rid=', $report['id'], ';start=', $context['start'], ';', $context['session_var'], '=', $context['session_id'], '" ', !$report['ignore'] ? 'onclick="return confirm(\'' . $txt['mc_reportedp_ignore_confirm'] . '\');"' : '', '>', $report['ignore'] ? $unignore_button : $ignore_button, '</a>
Chris@76 285 <a href="', $scripturl, '?action=moderate;area=reports', $context['view_closed'] ? ';sa=closed' : '', ';close=', (int) !$report['closed'], ';rid=', $report['id'], ';start=', $context['start'], ';', $context['session_var'], '=', $context['session_id'], '">', $close_button, '</a>
Chris@76 286 ', !$context['view_closed'] ? '<input type="checkbox" name="close[]" value="' . $report['id'] . '" class="input_check" />' : '', '
Chris@76 287 </div>
Chris@76 288 </div><br />
Chris@76 289 <div class="smalltext">
Chris@76 290 &#171; ', $txt['mc_reportedp_last_reported'], ': ', $report['last_updated'], ' &#187;<br />';
Chris@76 291
Chris@76 292 // Prepare the comments...
Chris@76 293 $comments = array();
Chris@76 294 foreach ($report['comments'] as $comment)
Chris@76 295 $comments[$comment['member']['id']] = $comment['member']['link'];
Chris@76 296
Chris@76 297 echo '
Chris@76 298 &#171; ', $txt['mc_reportedp_reported_by'], ': ', implode(', ', $comments), ' &#187;
Chris@76 299 </div>
Chris@76 300 <hr />
Chris@76 301 ', $report['body'], '
Chris@76 302 </div>
Chris@76 303 <span class="botslice"><span></span></span>
Chris@76 304 </div>';
Chris@76 305 }
Chris@76 306
Chris@76 307 // Were none found?
Chris@76 308 if (empty($context['reports']))
Chris@76 309 echo '
Chris@76 310 <div class="windowbg2">
Chris@76 311 <span class="topslice"><span></span></span>
Chris@76 312 <div class="content">
Chris@76 313 <p class="centertext">', $txt['mc_reportedp_none_found'], '</p>
Chris@76 314 </div>
Chris@76 315 <span class="botslice"><span></span></span>
Chris@76 316 </div>';
Chris@76 317
Chris@76 318 echo '
Chris@76 319 <div class="pagesection">
Chris@76 320 <div class="floatleft">
Chris@76 321 ', $txt['pages'], ': ', $context['page_index'], '
Chris@76 322 </div>
Chris@76 323 <div class="floatright">
Chris@76 324 ', !$context['view_closed'] ? '<input type="submit" name="close_selected" value="' . $txt['mc_reportedp_close_selected'] . '" class="button_submit" />' : '', '
Chris@76 325 </div>
Chris@76 326 </div>
Chris@76 327 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 328 </form>
Chris@76 329 <br class="clear" />';
Chris@76 330 }
Chris@76 331
Chris@76 332 // Show a list of all the unapproved posts
Chris@76 333 function template_unapproved_posts()
Chris@76 334 {
Chris@76 335 global $settings, $options, $context, $txt, $scripturl;
Chris@76 336
Chris@76 337 // Just a big table of it all really...
Chris@76 338 echo '
Chris@76 339 <div id="modcenter">
Chris@76 340 <form action="', $scripturl, '?action=moderate;area=postmod;start=', $context['start'], ';sa=', $context['current_view'], '" method="post" accept-charset="', $context['character_set'], '">
Chris@76 341 <div class="cat_bar">
Chris@76 342 <h3 class="catbg">', $txt['mc_unapproved_posts'], '</h3>
Chris@76 343 </div>';
Chris@76 344
Chris@76 345 // Make up some buttons
Chris@76 346 $approve_button = create_button('approve.gif', 'approve', 'approve', 'align="middle"');
Chris@76 347 $remove_button = create_button('delete.gif', 'remove_message', 'remove', 'align="middle"');
Chris@76 348
Chris@76 349 // No posts?
Chris@76 350 if (empty($context['unapproved_items']))
Chris@76 351 echo '
Chris@76 352 <div class="windowbg2">
Chris@76 353 <span class="topslice"><span></span></span>
Chris@76 354 <div class="content">
Chris@76 355 <p class="centertext">', $txt['mc_unapproved_' . $context['current_view'] . '_none_found'], '</p>
Chris@76 356 </div>
Chris@76 357 <span class="botslice"><span></span></span>
Chris@76 358 </div>';
Chris@76 359 else
Chris@76 360 echo '
Chris@76 361 <div class="pagesection">
Chris@76 362 <div class="pagelinks">', $txt['pages'], ': ', $context['page_index'], '</div>
Chris@76 363 </div>';
Chris@76 364
Chris@76 365 foreach ($context['unapproved_items'] as $item)
Chris@76 366 {
Chris@76 367 echo '
Chris@76 368 <div class="cat_bar">
Chris@76 369 <h3 class="catbg">
Chris@76 370 <span class="smalltext floatleft">', $item['counter'], '&nbsp;</span>
Chris@76 371 <span class="smalltext floatleft"><a href="', $scripturl, '#c', $item['category']['id'], '">', $item['category']['name'], '</a> / <a href="', $scripturl, '?board=', $item['board']['id'], '.0">', $item['board']['name'], '</a> / <a href="', $scripturl, '?topic=', $item['topic']['id'], '.msg', $item['id'], '#msg', $item['id'], '">', $item['subject'], '</a></span>
Chris@76 372 <span class="smalltext floatright">', $txt['mc_unapproved_by'], ' ', $item['poster']['link'], ' ', $txt['on'], ': ', $item['time'], '</span>
Chris@76 373 </h3>
Chris@76 374 </div>
Chris@76 375 <div class="', $item['alternate'] ? 'windowbg' : 'windowbg2', '">
Chris@76 376 <span class="topslice"><span></span></span>
Chris@76 377 <div class="content">
Chris@76 378 <div class="post">', $item['body'], '</div>
Chris@76 379 <span class="floatright">
Chris@76 380 <a href="', $scripturl, '?action=moderate;area=postmod;sa=', $context['current_view'], ';start=', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';approve=', $item['id'], '">', $approve_button, '</a>';
Chris@76 381
Chris@76 382 if ($item['can_delete'])
Chris@76 383 echo '
Chris@76 384 ', $context['menu_separator'], '
Chris@76 385 <a href="', $scripturl, '?action=moderate;area=postmod;sa=', $context['current_view'], ';start=', $context['start'], ';', $context['session_var'], '=', $context['session_id'], ';delete=', $item['id'], '">', $remove_button, '</a>';
Chris@76 386
Chris@76 387 echo '
Chris@76 388 <input type="checkbox" name="item[]" value="', $item['id'], '" checked="checked" class="input_check" /> ';
Chris@76 389
Chris@76 390 echo '
Chris@76 391 </span>
Chris@76 392 <br class="clear" />
Chris@76 393 </div>
Chris@76 394 <span class="botslice"><span></span></span>
Chris@76 395 </div>';
Chris@76 396 }
Chris@76 397
Chris@76 398 echo '
Chris@76 399 <div class="pagesection">
Chris@76 400 <div class="floatright">
Chris@76 401 <select name="do" onchange="if (this.value != 0 &amp;&amp; confirm(\'', $txt['mc_unapproved_sure'], '\')) submit();">
Chris@76 402 <option value="0">', $txt['with_selected'], ':</option>
Chris@76 403 <option value="0">-------------------</option>
Chris@76 404 <option value="approve">&nbsp;--&nbsp;', $txt['approve'], '</option>
Chris@76 405 <option value="delete">&nbsp;--&nbsp;', $txt['delete'], '</option>
Chris@76 406 </select>
Chris@76 407 <noscript><input type="submit" name="submit" value="', $txt['go'], '" class="button_submit" /></noscript>
Chris@76 408 </div>';
Chris@76 409
Chris@76 410 if (!empty($context['unapproved_items']))
Chris@76 411 echo '
Chris@76 412 <div class="floatleft">
Chris@76 413 <div class="pagelinks">', $txt['pages'], ': ', $context['page_index'], '</div>
Chris@76 414 </div>';
Chris@76 415
Chris@76 416 echo '
Chris@76 417 </div>
Chris@76 418 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 419 </form>
Chris@76 420 </div>
Chris@76 421 <br class="clear" />';
Chris@76 422 }
Chris@76 423
Chris@76 424 // List all attachments awaiting approval.
Chris@76 425 function template_unapproved_attachments()
Chris@76 426 {
Chris@76 427 global $settings, $options, $context, $txt, $scripturl;
Chris@76 428
Chris@76 429 // Show all the attachments still oustanding.
Chris@76 430 echo '
Chris@76 431 <div id="modcenter">
Chris@76 432 <form action="', $scripturl, '?action=moderate;area=attachmod;sa=attachments;start=', $context['start'], '" method="post" accept-charset="', $context['character_set'], '">
Chris@76 433 <div class="cat_bar">
Chris@76 434 <h3 class="catbg">', $txt['mc_unapproved_attachments'], '</h3>
Chris@76 435 </div>';
Chris@76 436
Chris@76 437 // The ever popular approve button, with the massively unpopular delete.
Chris@76 438 $approve_button = create_button('approve.gif', 'approve', 'approve', 'align="middle"');
Chris@76 439 $remove_button = create_button('delete.gif', 'remove_message', 'remove', 'align="middle"');
Chris@76 440
Chris@76 441 // None awaiting?
Chris@76 442 if (empty($context['unapproved_items']))
Chris@76 443 echo '
Chris@76 444 <div class="windowbg">
Chris@76 445 <span class="topslice"><span></span></span>
Chris@76 446 <div class="content">
Chris@76 447 <p class="centertext">', $txt['mc_unapproved_attachments_none_found'], '</p>
Chris@76 448 </div>
Chris@76 449 <span class="botslice"><span></span></span>
Chris@76 450 </div>';
Chris@76 451 else
Chris@76 452 echo '
Chris@76 453 <div class="pagesection">
Chris@76 454 <div class="pagelinks">', $txt['pages'], ': ', $context['page_index'], '</div>
Chris@76 455 </div>
Chris@76 456 <table class="table_grid" width="100%">
Chris@76 457 <thead>
Chris@76 458 <tr class="catbg">
Chris@76 459 <th>', $txt['mc_unapproved_attach_name'], '</th>
Chris@76 460 <th>', $txt['mc_unapproved_attach_size'], '</th>
Chris@76 461 <th>', $txt['mc_unapproved_attach_poster'], '</th>
Chris@76 462 <th>', $txt['date'], '</th>
Chris@76 463 <th nowrap="nowrap" align="center"><input type="checkbox" onclick="invertAll(this, this.form);" class="input_check" checked="checked" /></th>
Chris@76 464 </tr>
Chris@76 465 </thead>
Chris@76 466 <tbody>';
Chris@76 467
Chris@76 468 foreach ($context['unapproved_items'] as $item)
Chris@76 469 {
Chris@76 470 echo '
Chris@76 471 <tr class="', $item['alternate'] ? 'windowbg' : 'windowbg2', '">
Chris@76 472 <td>
Chris@76 473 ', $item['filename'], '
Chris@76 474 </td>
Chris@76 475 <td align="right">
Chris@76 476 ', $item['size'], $txt['kilobyte'], '
Chris@76 477 </td>
Chris@76 478 <td>
Chris@76 479 ', $item['poster']['link'], '
Chris@76 480 </td>
Chris@76 481 <td class="smalltext">
Chris@76 482 ', $item['time'], '<br />', $txt['in'], ' <a href="', $item['message']['href'], '">', $item['message']['subject'], '</a>
Chris@76 483 </td>
Chris@76 484 <td width="4%" align="center">
Chris@76 485 <input type="checkbox" name="item[]" value="', $item['id'], '" checked="checked" class="input_check" />
Chris@76 486 </td>
Chris@76 487 </tr>';
Chris@76 488 }
Chris@76 489
Chris@76 490 if (!empty($context['unapproved_items']))
Chris@76 491 echo '
Chris@76 492 </tbody>
Chris@76 493 </table>';
Chris@76 494
Chris@76 495 echo '
Chris@76 496 <div class="pagesection">
Chris@76 497 <div class="floatright">
Chris@76 498 <select name="do" onchange="if (this.value != 0 &amp;&amp; confirm(\'', $txt['mc_unapproved_sure'], '\')) submit();">
Chris@76 499 <option value="0">', $txt['with_selected'], ':</option>
Chris@76 500 <option value="0">-------------------</option>
Chris@76 501 <option value="approve">&nbsp;--&nbsp;', $txt['approve'], '</option>
Chris@76 502 <option value="delete">&nbsp;--&nbsp;', $txt['delete'], '</option>
Chris@76 503 </select>
Chris@76 504 <noscript><input type="submit" name="submit" value="', $txt['go'], '" class="button_submit" /></noscript>
Chris@76 505 </div>';
Chris@76 506
Chris@76 507 if (!empty($context['unapproved_items']))
Chris@76 508 echo '
Chris@76 509 <div class="floatleft">
Chris@76 510 <div class="pagelinks">', $txt['pages'], ': ', $context['page_index'], '</div>
Chris@76 511 </div>';
Chris@76 512
Chris@76 513 echo '
Chris@76 514 </div>
Chris@76 515 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 516 </form>
Chris@76 517 </div>
Chris@76 518 <br class="clear" />';
Chris@76 519 }
Chris@76 520
Chris@76 521 function template_viewmodreport()
Chris@76 522 {
Chris@76 523 global $context, $scripturl, $txt;
Chris@76 524
Chris@76 525 echo '
Chris@76 526 <div id="modcenter">
Chris@76 527 <form action="', $scripturl, '?action=moderate;area=reports;report=', $context['report']['id'], '" method="post" accept-charset="', $context['character_set'], '">
Chris@76 528 <div class="cat_bar">
Chris@76 529 <h3 class="catbg">
Chris@76 530 ', sprintf($txt['mc_viewmodreport'], $context['report']['message_link'], $context['report']['author']['link']), '
Chris@76 531 </h3>
Chris@76 532 </div>
Chris@76 533 <div class="title_bar">
Chris@76 534 <h3 class="titlebg">
Chris@76 535 <span class="floatleft">
Chris@76 536 ', sprintf($txt['mc_modreport_summary'], $context['report']['num_reports'], $context['report']['last_updated']), '
Chris@76 537 </span>
Chris@76 538 <span class="floatright">';
Chris@76 539
Chris@76 540 // Make the buttons.
Chris@76 541 $close_button = create_button('close.gif', $context['report']['closed'] ? 'mc_reportedp_open' : 'mc_reportedp_close', $context['report']['closed'] ? 'mc_reportedp_open' : 'mc_reportedp_close', 'align="middle"');
Chris@76 542 $ignore_button = create_button('ignore.gif', 'mc_reportedp_ignore', 'mc_reportedp_ignore', 'align="middle"');
Chris@76 543 $unignore_button = create_button('ignore.gif', 'mc_reportedp_unignore', 'mc_reportedp_unignore', 'align="middle"');
Chris@76 544
Chris@76 545 echo '
Chris@76 546 <a href="', $scripturl, '?action=moderate;area=reports;ignore=', (int) !$context['report']['ignore'], ';rid=', $context['report']['id'], ';', $context['session_var'], '=', $context['session_id'], '" ', !$context['report']['ignore'] ? 'onclick="return confirm(\'' . $txt['mc_reportedp_ignore_confirm'] . '\');"' : '', '>', $context['report']['ignore'] ? $unignore_button : $ignore_button, '</a>
Chris@76 547 <a href="', $scripturl, '?action=moderate;area=reports;close=', (int) !$context['report']['closed'], ';rid=', $context['report']['id'], ';', $context['session_var'], '=', $context['session_id'], '">', $close_button, '</a>
Chris@76 548 </span>
Chris@76 549 </h3>
Chris@76 550 </div>
Chris@76 551 <div class="windowbg2">
Chris@76 552 <span class="topslice"><span></span></span>
Chris@76 553 <div class="content">
Chris@76 554 ', $context['report']['body'], '
Chris@76 555 </div>
Chris@76 556 <span class="botslice"><span></span></span>
Chris@76 557 </div>
Chris@76 558 <br />
Chris@76 559 <div class="cat_bar">
Chris@76 560 <h3 class="catbg">', $txt['mc_modreport_whoreported_title'], '</h3>
Chris@76 561 </div>';
Chris@76 562
Chris@76 563 foreach ($context['report']['comments'] as $comment)
Chris@76 564 echo '
Chris@76 565 <div class="windowbg">
Chris@76 566 <span class="topslice"><span></span></span>
Chris@76 567 <div class="content">
Chris@76 568 <p class="smalltext">', sprintf($txt['mc_modreport_whoreported_data'], $comment['member']['link'] . (empty($comment['member']['id']) && !empty($comment['member']['ip']) ? ' (' . $comment['member']['ip'] . ')' : ''), $comment['time']), '</p>
Chris@76 569 <p>', $comment['message'], '</p>
Chris@76 570 </div>
Chris@76 571 <span class="botslice"><span></span></span>
Chris@76 572 </div>';
Chris@76 573
Chris@76 574 echo '
Chris@76 575 <br />
Chris@76 576 <div class="cat_bar">
Chris@76 577 <h3 class="catbg">', $txt['mc_modreport_mod_comments'], '</h3>
Chris@76 578 </div>
Chris@76 579 <div class="windowbg2">
Chris@76 580 <span class="topslice"><span></span></span>
Chris@76 581 <div class="content">';
Chris@76 582
Chris@76 583 if (empty($context['report']['mod_comments']))
Chris@76 584 echo '
Chris@76 585 <p class="centertext">', $txt['mc_modreport_no_mod_comment'], '</p>';
Chris@76 586
Chris@76 587 foreach ($context['report']['mod_comments'] as $comment)
Chris@76 588 echo
Chris@76 589 '<p>', $comment['member']['link'], ': ', $comment['message'], ' <em class="smalltext">(', $comment['time'], ')</em></p>';
Chris@76 590
Chris@76 591 echo '
Chris@76 592 <textarea rows="2" cols="60" style="' . ($context['browser']['is_ie8'] ? 'width: 635px; max-width: 60%; min-width: 60%' : 'width: 60%') . ';" name="mod_comment"></textarea>
Chris@76 593 <div>
Chris@76 594 <input type="submit" name="add_comment" value="', $txt['mc_modreport_add_mod_comment'], '" class="button_submit" />
Chris@76 595 </div>
Chris@76 596 </div>
Chris@76 597 <span class="botslice"><span></span></span>
Chris@76 598 </div>
Chris@76 599 <br />';
Chris@76 600
Chris@76 601 $alt = false;
Chris@76 602
Chris@76 603 template_show_list('moderation_actions_list');
Chris@76 604
Chris@76 605 if (!empty($context['entries']))
Chris@76 606 {
Chris@76 607 echo '
Chris@76 608 <div class="cat_bar">
Chris@76 609 <h3 class="catbg">', $txt['mc_modreport_modactions'], '</h3>
Chris@76 610 </div>
Chris@76 611 <table width="100%" class="table_grid">
Chris@76 612 <thead>
Chris@76 613 <tr class="catbg">
Chris@76 614 <th>', $txt['modlog_action'], '</th>
Chris@76 615 <th>', $txt['modlog_date'], '</th>
Chris@76 616 <th>', $txt['modlog_member'], '</th>
Chris@76 617 <th>', $txt['modlog_position'], '</th>
Chris@76 618 <th>', $txt['modlog_ip'], '</th>
Chris@76 619 </tr>
Chris@76 620 </thead>
Chris@76 621 <tbody>';
Chris@76 622
Chris@76 623 foreach ($context['entries'] as $entry)
Chris@76 624 {
Chris@76 625 echo '
Chris@76 626 <tr class="', $alt ? 'windowbg2' : 'windowbg', '">
Chris@76 627 <td>', $entry['action'], '</td>
Chris@76 628 <td>', $entry['time'], '</td>
Chris@76 629 <td>', $entry['moderator']['link'], '</td>
Chris@76 630 <td>', $entry['position'], '</td>
Chris@76 631 <td>', $entry['ip'], '</td>
Chris@76 632 </tr>
Chris@76 633 <tr>
Chris@76 634 <td colspan="5" class="', $alt ? 'windowbg2' : 'windowbg', '">';
Chris@76 635
Chris@76 636 foreach ($entry['extra'] as $key => $value)
Chris@76 637 echo '
Chris@76 638 <em>', $key, '</em>: ', $value;
Chris@76 639 echo '
Chris@76 640 </td>
Chris@76 641 </tr>';
Chris@76 642 }
Chris@76 643 echo '
Chris@76 644 </tbody>
Chris@76 645 </table>';
Chris@76 646 }
Chris@76 647
Chris@76 648 echo '
Chris@76 649 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 650 </form>
Chris@76 651 </div>
Chris@76 652 <br class="clear" />';
Chris@76 653 }
Chris@76 654
Chris@76 655 // Callback function for showing a watched users post in the table.
Chris@76 656 function template_user_watch_post_callback($post)
Chris@76 657 {
Chris@76 658 global $scripturl, $context, $txt, $delete_button;
Chris@76 659
Chris@76 660 // We'll have a delete please bob.
Chris@76 661 if (empty($delete_button))
Chris@76 662 $delete_button = create_button('delete.gif', 'remove_message', 'remove', 'align="middle"');
Chris@76 663
Chris@76 664 $output_html = '
Chris@76 665 <div>
Chris@76 666 <div class="floatleft">
Chris@76 667 <strong><a href="' . $scripturl . '?topic=' . $post['id_topic'] . '.' . $post['id'] . '#msg' . $post['id'] . '">' . $post['subject'] . '</a></strong> ' . $txt['mc_reportedp_by'] . ' <strong>' . $post['author_link'] . '</strong>
Chris@76 668 </div>
Chris@76 669 <div class="floatright">';
Chris@76 670
Chris@76 671 if ($post['can_delete'])
Chris@76 672 $output_html .= '
Chris@76 673 <a href="' . $scripturl . '?action=moderate;area=userwatch;sa=post;delete=' . $post['id'] . ';start=' . $context['start'] . ';' . $context['session_var'] . '=' . $context['session_id'] . '" onclick="return confirm(\'' . $txt['mc_watched_users_delete_post'] . '\');">' . $delete_button . '</a>
Chris@76 674 <input type="checkbox" name="delete[]" value="' . $post['id'] . '" class="input_check" />';
Chris@76 675
Chris@76 676 $output_html .= '
Chris@76 677 </div>
Chris@76 678 </div><br />
Chris@76 679 <div class="smalltext">
Chris@76 680 &#171; ' . $txt['mc_watched_users_posted'] . ': ' . $post['poster_time'] . ' &#187;
Chris@76 681 </div>
Chris@76 682 <hr />
Chris@76 683 ' . $post['body'];
Chris@76 684
Chris@76 685 return $output_html;
Chris@76 686 }
Chris@76 687
Chris@76 688 // Moderation settings
Chris@76 689 function template_moderation_settings()
Chris@76 690 {
Chris@76 691 global $settings, $options, $context, $txt, $scripturl;
Chris@76 692
Chris@76 693 echo '
Chris@76 694 <div id="modcenter">
Chris@76 695 <form action="', $scripturl, '?action=moderate;area=settings" method="post" accept-charset="', $context['character_set'], '">
Chris@76 696 <div class="cat_bar">
Chris@76 697 <h3 class="catbg">', $txt['mc_prefs_title'], '</h3>
Chris@76 698 </div>
Chris@76 699 <div class="information">
Chris@76 700 ', $txt['mc_prefs_desc'], '
Chris@76 701 </div>
Chris@76 702 <div class="windowbg2">
Chris@76 703 <span class="topslice"><span></span></span>
Chris@76 704 <div class="content">
Chris@76 705 <dl class="settings">
Chris@76 706 <dt>
Chris@76 707 <strong>', $txt['mc_prefs_homepage'], ':</strong>
Chris@76 708 </dt>
Chris@76 709 <dd>';
Chris@76 710
Chris@76 711 foreach ($context['homepage_blocks'] as $k => $v)
Chris@76 712 echo '
Chris@76 713 <label for="mod_homepage_', $k, '"><input type="checkbox" id="mod_homepage_', $k, '" name="mod_homepage[', $k, ']"', in_array($k, $context['mod_settings']['user_blocks']) ? ' checked="checked"' : '', ' class="input_check" /> ', $v, '</label><br />';
Chris@76 714
Chris@76 715 echo '
Chris@76 716 </dd>';
Chris@76 717
Chris@76 718 // If they can moderate boards they have more options!
Chris@76 719 if ($context['can_moderate_boards'])
Chris@76 720 {
Chris@76 721 echo '
Chris@76 722 <dt>
Chris@76 723 <strong><label for="mod_show_reports">', $txt['mc_prefs_show_reports'], '</label>:</strong>
Chris@76 724 </dt>
Chris@76 725 <dd>
Chris@76 726 <input type="checkbox" id="mod_show_reports" name="mod_show_reports" ', $context['mod_settings']['show_reports'] ? 'checked="checked"' : '', ' class="input_check" />
Chris@76 727 </dd>
Chris@76 728 <dt>
Chris@76 729 <strong><label for="mod_notify_report">', $txt['mc_prefs_notify_report'], '</label>:</strong>
Chris@76 730 </dt>
Chris@76 731 <dd>
Chris@76 732 <select id="mod_notify_report" name="mod_notify_report">
Chris@76 733 <option value="0" ', $context['mod_settings']['notify_report'] == 0 ? 'selected="selected"' : '', '>', $txt['mc_prefs_notify_report_never'], '</option>
Chris@76 734 <option value="1" ', $context['mod_settings']['notify_report'] == 1 ? 'selected="selected"' : '', '>', $txt['mc_prefs_notify_report_moderator'], '</option>
Chris@76 735 <option value="2" ', $context['mod_settings']['notify_report'] == 2 ? 'selected="selected"' : '', '>', $txt['mc_prefs_notify_report_always'], '</option>
Chris@76 736 </select>
Chris@76 737 </dd>';
Chris@76 738
Chris@76 739 }
Chris@76 740
Chris@76 741 if ($context['can_moderate_approvals'])
Chris@76 742 {
Chris@76 743 echo '
Chris@76 744
Chris@76 745 <dt>
Chris@76 746 <strong><label for="mod_notify_approval">', $txt['mc_prefs_notify_approval'], '</label>:</strong>
Chris@76 747 </dt>
Chris@76 748 <dd>
Chris@76 749 <input type="checkbox" id="mod_notify_approval" name="mod_notify_approval" ', $context['mod_settings']['notify_approval'] ? 'checked="checked"' : '', ' class="input_check" />
Chris@76 750 </dd>';
Chris@76 751 }
Chris@76 752
Chris@76 753 echo '
Chris@76 754 </dl>
Chris@76 755 <div class="righttext">
Chris@76 756 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 757 <input type="submit" name="save" value="', $txt['save'], '" class="button_submit" />
Chris@76 758 </div>
Chris@76 759 </div>
Chris@76 760 <span class="botslice"><span></span></span>
Chris@76 761 </div>
Chris@76 762 </form>
Chris@76 763 </div>
Chris@76 764 <br class="clear" />';
Chris@76 765 }
Chris@76 766
Chris@76 767 // Show a notice sent to a user.
Chris@76 768 function template_show_notice()
Chris@76 769 {
Chris@76 770 global $txt, $settings, $options, $context;
Chris@76 771
Chris@76 772 // We do all the HTML for this one!
Chris@76 773 echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Chris@76 774 <html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '>
Chris@76 775 <head>
Chris@76 776 <meta http-equiv="Content-Type" content="text/html; charset=', $context['character_set'], '" />
Chris@76 777 <title>', $context['page_title'], '</title>
Chris@76 778 <link rel="stylesheet" type="text/css" href="', $settings['theme_url'], '/css/index.css" />
Chris@76 779 </head>
Chris@76 780 <body>
Chris@76 781 <div class="cat_bar">
Chris@76 782 <h3 class="catbg">', $txt['show_notice'], '</h3>
Chris@76 783 </div>
Chris@76 784 <div class="title_bar">
Chris@76 785 <h3 class="titlebg">', $txt['show_notice_subject'], ': ', $context['notice_subject'], '</h3>
Chris@76 786 </div>
Chris@76 787 <div class="windowbg">
Chris@76 788 <span class="topslice"><span></span></span>
Chris@76 789 <div class="content">
Chris@76 790 <dl>
Chris@76 791 <dt>
Chris@76 792 <strong>', $txt['show_notice_text'], ':</strong>
Chris@76 793 </dt>
Chris@76 794 <dd>
Chris@76 795 ', $context['notice_body'], '
Chris@76 796 </dd>
Chris@76 797 </dl>
Chris@76 798 </div>
Chris@76 799 <span class="botslice"><span></span></span>
Chris@76 800 </div>
Chris@76 801 </body>
Chris@76 802 </html>';
Chris@76 803
Chris@76 804 }
Chris@76 805
Chris@76 806 // Add or edit a warning template.
Chris@76 807 function template_warn_template()
Chris@76 808 {
Chris@76 809 global $context, $settings, $options, $txt, $scripturl;
Chris@76 810
Chris@76 811 echo '
Chris@76 812 <div id="modcenter">
Chris@76 813 <form action="', $scripturl, '?action=moderate;area=warnings;sa=templateedit;tid=', $context['id_template'], '" method="post" accept-charset="', $context['character_set'], '">
Chris@76 814 <div class="cat_bar">
Chris@76 815 <h3 class="catbg">', $context['page_title'], '</h3>
Chris@76 816 </div>
Chris@76 817 <div class="information">
Chris@76 818 ', $txt['mc_warning_template_desc'], '
Chris@76 819 </div>
Chris@76 820 <div class="windowbg">
Chris@76 821 <span class="topslice"><span></span></span>
Chris@76 822 <div class="content">
Chris@76 823 <dl class="settings">
Chris@76 824 <dt>
Chris@76 825 <strong><label for="template_title">', $txt['mc_warning_template_title'], '</label>:</strong>
Chris@76 826 </dt>
Chris@76 827 <dd>
Chris@76 828 <input type="text" id="template_title" name="template_title" value="', $context['template_data']['title'], '" size="30" class="input_text" />
Chris@76 829 </dd>
Chris@76 830 <dt>
Chris@76 831 <strong><label for="template_body">', $txt['profile_warning_notify_body'], '</label>:</strong><br />
Chris@76 832 <span class="smalltext">', $txt['mc_warning_template_body_desc'], '</span>
Chris@76 833 </dt>
Chris@76 834 <dd>
Chris@76 835 <textarea id="template_body" name="template_body" rows="10" cols="45" class="smalltext">', $context['template_data']['body'], '</textarea>
Chris@76 836 </dd>
Chris@76 837 </dl>';
Chris@76 838
Chris@76 839 if ($context['template_data']['can_edit_personal'])
Chris@76 840 echo '
Chris@76 841 <input type="checkbox" name="make_personal" id="make_personal" ', $context['template_data']['personal'] ? 'checked="checked"' : '', ' class="input_check" />
Chris@76 842 <label for="make_personal">
Chris@76 843 <strong>', $txt['mc_warning_template_personal'], '</strong>
Chris@76 844 </label>
Chris@76 845 <br />
Chris@76 846 <span class="smalltext">', $txt['mc_warning_template_personal_desc'], '</span>
Chris@76 847 <br />';
Chris@76 848
Chris@76 849 echo '
Chris@76 850 <input type="submit" name="save" value="', $context['page_title'], '" class="button_submit" />
Chris@76 851 </div>
Chris@76 852 <span class="botslice"><span></span></span>
Chris@76 853 </div>
Chris@76 854 <input type="hidden" name="', $context['session_var'], '" value="', $context['session_id'], '" />
Chris@76 855 </form>
Chris@76 856 </div>
Chris@76 857 <br class="clear" />';
Chris@76 858 }
Chris@76 859
Chris@76 860 ?>