| [ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * MyBB 1.6 4 * Copyright 2010 MyBB Group, All Rights Reserved 5 * 6 * Website: http://mybb.com 7 * License: http://mybb.com/about/license 8 * 9 * $Id: announcements.php 5565 2011-09-08 09:07:55Z Tomm $ 10 */ 11 12 define("IN_MYBB", 1); 13 define('THIS_SCRIPT', 'announcements.php'); 14 15 $templatelist = "announcement,postbit_groupimage,postbit_reputation,postbit_avatar,postbit_online,postbit_offline,postbit_find,postbit_pm,postbit_email,postbit_www,postbit_author_user,announcement_edit,announcement_quickdelete,postbit"; 16 require_once "./global.php"; 17 require_once MYBB_ROOT."inc/functions_post.php"; 18 19 // Load global language phrases 20 $lang->load("announcements"); 21 22 $aid = intval($mybb->input['aid']); 23 24 $plugins->run_hooks("announcements_start"); 25 26 // Get announcement fid 27 $query = $db->simple_select("announcements", "fid", "aid='$aid'"); 28 $announcement = $db->fetch_array($query); 29 30 if(!$announcement) 31 { 32 error($lang->error_invalidannouncement); 33 } 34 35 // Get forum info 36 $fid = $announcement['fid']; 37 if($fid > 0) 38 { 39 $forum = get_forum($fid); 40 41 if(!$forum) 42 { 43 error($lang->error_invalidforum); 44 } 45 46 // Make navigation 47 build_forum_breadcrumb($forum['fid']); 48 49 // Permissions 50 $forumpermissions = forum_permissions($forum['fid']); 51 52 if($forumpermissions['canview'] == 0 || $forumpermissions['canviewthreads'] == 0) 53 { 54 error_no_permission(); 55 } 56 57 // Check if this forum is password protected and we have a valid password 58 check_forum_password($forum['fid']); 59 } 60 add_breadcrumb($lang->nav_announcements); 61 62 $archive_url = build_archive_link("announcement", $aid); 63 64 // Get announcement info 65 $time = TIME_NOW; 66 67 $query = $db->query(" 68 SELECT u.*, u.username AS userusername, a.*, f.* 69 FROM ".TABLE_PREFIX."announcements a 70 LEFT JOIN ".TABLE_PREFIX."users u ON (u.uid=a.uid) 71 LEFT JOIN ".TABLE_PREFIX."userfields f ON (f.ufid=u.uid) 72 WHERE a.startdate<='$time' AND (a.enddate>='$time' OR a.enddate='0') AND a.aid='$aid' 73 "); 74 75 $announcementarray = $db->fetch_array($query); 76 77 if(!$announcementarray) 78 { 79 error($lang->error_invalidannouncement); 80 } 81 82 // Gather usergroup data from the cache 83 // Field => Array Key 84 $data_key = array( 85 'title' => 'grouptitle', 86 'usertitle' => 'groupusertitle', 87 'stars' => 'groupstars', 88 'starimage' => 'groupstarimage', 89 'image' => 'groupimage', 90 'namestyle' => 'namestyle', 91 'usereputationsystem' => 'usereputationsystem' 92 ); 93 94 foreach($data_key as $field => $key) 95 { 96 $announcementarray[$key] = $groupscache[$announcementarray['usergroup']][$field]; 97 } 98 99 $announcementarray['dateline'] = $announcementarray['startdate']; 100 $announcementarray['userusername'] = $announcementarray['username']; 101 $announcement = build_postbit($announcementarray, 3); 102 $lang->forum_announcement = $lang->sprintf($lang->forum_announcement, htmlspecialchars_uni($announcementarray['subject'])); 103 104 if($announcementarray['startdate'] > $mybb->user['lastvisit']) 105 { 106 $setcookie = true; 107 if($mybb->cookies['mybb']['announcements']) 108 { 109 $cookie = unserialize(stripslashes($mybb->cookies['mybb']['announcements'])); 110 111 if(isset($cookie[$announcementarray['aid']])) 112 { 113 $setcookie = false; 114 } 115 } 116 117 if($setcookie) 118 { 119 my_set_array_cookie('announcements', $announcementarray['aid'], $announcementarray['startdate'], -1); 120 } 121 } 122 123 $plugins->run_hooks("announcements_end"); 124 125 eval("\$forumannouncement = \"".$templates->get("announcement")."\";"); 126 output_page($forumannouncement); 127 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
| Generated: Sun Jan 1 10:49:49 2012 | Cross-referenced by PHPXref 0.7.1 |