if (count($members)) { foreach ($members as $memb) { $is_moderator_check = $memb['is_moderator'] == 't' ? 1 : 0; $is_manager_check = $memb['is_manager'] == 't' ? 1 : 0; ?> <tr<?php echo $memb['is_banned'] == 't' ? ' class="cau-banned"' : ''; ?> id="user_row_<?php echo $memb['id']; ?> "> <td class="first"> <?php echo __commPrntUsrAvtr($memb); ?> <div class="cau-user"> <div class="b-username"><?php echo __commPrntUsrInfo($memb); ?> </div> <?php if ($is_comm_admin || $is_author) { ?> <div class="form fs-o cau-note"> <b class="b1"></b> <b class="b2"></b> <div class="form-in" id="idNote<?php echo $memb['user_id']; ?>
<?php foreach ($admins as $adm) { ?> <input type="hidden" name="member_id[]" value="<?php echo $adm['id']; ?> "/> <tr valign="middle"> <td align="left" style="padding:15px 0 15px 20px;border-top: 1px solid #DCDBD9;"> <table border="0" width="100%" cellpadding="0" cellspacing="0"> <col style="width:10px"/> <col/> <tr valign="top"> <td> <?php echo __commPrntUsrAvtr($adm); ?> </td> <td align="left" style="padding:0 0 0 15px"> <?php echo __commPrntUsrInfo($adm); ?> <div style="padding-top:4px"> <textarea name="note[]" class="ba bClr" style="overflow:hidden;width:100%;height:40px"><?php echo $adm['note']; ?> </textarea> <div> </td> </tr> </table>
<div> <div style="padding:0 0 10px 15px"><b><?php echo $mCnt; ?> </b></div> </div> </td> </tr> <tr valign="top"> <td style="padding:0 0 0 20px"> <div> <div style="padding-bottom:10px"><b>Создатель:</b></div> <div style="float:left; margin-right:10px"> <?php echo __commPrntUsrAvtr($comm, ''); ?> </div> <?php $comm['dsp_login'] = YellowLine($comm['login']); $comm['dsp_uname'] = YellowLine($comm['uname']); $comm['dsp_usurname'] = YellowLine($comm['usurname']); print __commPrntUsrInfo($comm, ''); ?> </div> </td> <td style="vertical-align:bottom; text-align:right" ><a id="unlock_comm_<?php echo $comm['id']; ?> " href="./?mode=<?php
echo $rec['uid']; ?> " class="izbr-item"> <div class="izbr-check"><input type="checkbox" checked='checked' name="id[]" value="<?php echo $rec['uid']; ?> " /></div> <span id="elm-offset-<?php echo $rec['uid']; ?> -<?php echo $type; ?> "></span> <?php echo __commPrntUsrAvtr($rec); ?> <div class="izbr-text"> <span class="user-inf"><span class="<?php echo $cls; ?> name11"><a href="/users/<?php echo $rec['login']; ?> " class="<?php echo $cls; ?> name11" title="<?php echo $rec['uname'] . " " . $rec['usurname']; ?> "><?php
/** * Проверяет туда ли попал пользователь и есть ли у него на это право. * Возвращает адрес переброски пользователя, если он не туда попал, * и если не NULL, то надо будет вызвать header(). * Если NULL, но $error не пуст, то надо будет выдать страницу ошибок __COMMUNES__ERROR и * прекратить операцию. * Заодно заполняет необходимые переменные. * * @global $uid Ид пользователя * @global $id Ид сообщения * @global $top_id Ид вкладки ТОП * @global $site Сайт * @global $action Действие для данной функции при отсылке данных (submit) * * @param string $error Возвращает сообщение об ошибке * @param array $comm Возвращает данные по комментариям * @param array $top Возвращает популярные сообщения * @param integer $restrict_type Возвращает тип пользования * @param integer $user_mod Возвращает битовую маску прав пользователя * @return string если не null, название страницы куда перенести пользователя */ function __commShaolin(&$error, &$comm, &$top, &$restrict_type, &$user_mod) { global $uid, $id, $top_id, $site, $action, $draft_id; $comm = NULL; $user_mod = 0; if ($uid) { $user_mod = commune::MOD_ADMIN * hasPermissions('communes'); $user_mod |= commune::MOD_MODER * ($user_mod & commune::MOD_ADMIN || hasPermissions('communes')); $user_mod |= commune::MOD_PRO * (payed::CheckPro(get_login($uid)) ? 1 : 0); $user_mod |= commune::MOD_EMPLOYER * (int) is_emp(); $user_mod |= commune::MOD_BANNED * is_banned($uid); } if (!$id) { if (!$site) { return NULL; } if ($site == 'Create') { if (!$uid) { return '/fbd.php'; } if (!($user_mod & (commune::MOD_PRO | commune::MOD_ADMIN))) { /*if ($user_mod & commune::MOD_EMPLOYER) return '/payed-emp/';*/ return '/proonly.php'; } if (($limit = commune::GetUserCommunesLimits($uid)) && $limit['user_communes_count']) { if ($limit['user_communes_count'] >= commune::MAX_COUNT) { $error['name'] = 'Создание вашего сообщества'; $error['message'] = 'Вы уже создали максимальное количество сообществ.'; return NULL; } $seconds = $limit['seconds_passed_since_user_created_his_last_commune']; if ($seconds < commune::CREATION_INTERVAL) { $error['name'] = 'Создание вашего сообщества'; $wait = commune::CREATION_INTERVAL - $seconds; $error['message'] = "Подождите {$wait} " . getSymbolicName($wait, 'second') . '.'; return NULL; } } } else { return '/404.php'; } return NULL; } if (!($comm = commune::GetCommune($id, !$uid ? NULL : $uid, $user_mod))) { return '/commune/'; } if (!$uid) { if ($action) { return "/commune/?id={$id}"; } if ($site == 'Topic') { } else { if ($site == 'Join') { return '/fbd.php'; } else { if ($site == 'Members') { return '/fbd.php'; } else { if ($site) { return "/commune/?id={$id}"; } } } } } else { if ($uStatus = commune::GetUserCommuneRel($id, $uid)) { $user_mod |= commune::MOD_COMM_MODERATOR * $uStatus['is_moderator']; $user_mod |= commune::MOD_COMM_MANAGER * $uStatus['is_manager']; $user_mod |= commune::MOD_COMM_ADMIN * ($uStatus['is_admin'] || $uStatus['is_moderator'] || $uStatus['is_manager']); $user_mod |= commune::MOD_COMM_AUTHOR * $uStatus['is_author']; $user_mod |= commune::MOD_COMM_ASKED * $uStatus['is_asked']; $user_mod |= commune::MOD_COMM_ACCEPTED * ($uStatus['is_accepted'] || $user_mod & commune::MOD_COMM_ADMIN); $user_mod |= commune::MOD_COMM_BANNED * $uStatus['is_banned']; } } if ($comm['is_blocked'] && !($user_mod & commune::MOD_MODER)) { if ($comm['author_id'] != $uid || $comm['author_id'] == $uid && ($site && $site != 'Members' || $action)) { return '/commune/'; } } if ($user_mod & commune::MOD_COMM_BANNED && !hasPermissions('communes') && $comm['restrict_type'] != '00') { $error['name'] = 'Нет доступа в сообщество'; $error['message'] = 'Вы находитесь в бан-листе этой группы. Вы можете обратиться к создателю группы:<br/><br/>' . '<div style="float:left">' . __commPrntUsrAvtr($comm, 'author_') . '</div>' . '<div style="padding-left:10px;float:left">' . __commPrntUsrInfo($comm, 'author_') . '</div>'; return NULL; } $restrict_type = bitStr2Int($comm['restrict_type']); if ($restrict_type & commune::RESTRICT_READ_MASK) { if ($site != 'Join' && $action != 'Join' && !($user_mod & (commune::MOD_COMM_AUTHOR | commune::MOD_COMM_ACCEPTED | commune::MOD_ADMIN | commune::MOD_MODER))) { $error['name'] = 'Нет доступа в сообщество'; if ($user_mod & commune::MOD_COMM_ASKED) { $error['message'] = " Администратор сообщества <b>«{$comm['name']}»</b> еще не рассмотрел вашу заявку. Просмотр этого сообщества вам не доступен.<br/><br/>" . __commPrntJoinButton($comm, $uid); } else { $error['message'] = " Вы не являетесь членом сообщества <b>«{$comm['name']}»</b>. Просмотр этого сообщества вам не доступен.<br/><br/>" . __commPrntJoinButton($comm, $uid); } return NULL; } } switch ($site) { case 'Join': // if ( $user_mod & commune::MOD_COMM_AUTHOR ) // return "/commune/?id={$id}"; // if ( $user_mod & commune::MOD_COMM_ASKED ) // return "/commune/?id={$id}"; break; case 'Create': if ($id) { return "/commune/?id={$id}"; } break; case 'Edit': if (!($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR))) { return "/commune/?id={$id}"; } break; case 'Admin': if (!($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR))) { if ($user_mod & commune::MOD_COMM_MANAGER) { return "/commune/?id={$id}&site=Admin.members"; } return "/commune/?id={$id}"; } break; case 'Admin.members': if (!($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_MANAGER) || hasPermissions('communes'))) { return "/commune/?id={$id}"; } break; case 'Topic': if ($action && $action != 'do.Edit.post' && $action != 'do.Create.post' && $action != 'add_comment' && $action != 'edit_comment' && $action != 'wysiwygUploadImage') { //if ($action && $action != 'Edit.post') return "/404.php"; } if (!$top_id || !($top = commune::GetTopMessageByAnyOther($top_id, $uid, $user_mod, TRUE)) || $top['member_is_banned'] && $comm['restrict_type'] != '00' && ($action != 'do.Edit.post' && $action != 'do.Create.post') && !($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_MANAGER)) || $top['is_private'] == 't' && $top['user_id'] != $uid && !($user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_MANAGER)) || $top['deleted_id'] && !hasPermissions('communes')) { return "/404.php"; } break; case 'Members': break; case 'Newtopic': if (commune::isBannedCommune($user_mod)) { $error['name'] = 'Нет доступа'; $error['message'] = 'Вы находитесь в бан-листе этой группы. Вы можете обратиться к создателю группы:<br/><br/>' . '<div style="float:left">' . __commPrntUsrAvtr($comm, 'author_') . '</div>' . '<div style="padding-left:10px;float:left">' . __commPrntUsrInfo($comm, 'author_') . '</div>'; return NULL; } if (!($user_mod & commune::MOD_COMM_AUTHOR && !$comm['is_blocked']) && !($user_mod & (commune::MOD_ADMIN | commune::MOD_MODER | commune::MOD_COMM_ACCEPTED | commune::MOD_COMM_ADMIN | commune::MOD_COMM_MODERATOR | commune::MOD_COMM_ADMIN))) { return getFriendlyURL('commune_commune', $comm['id']); } break; case 'Editdraft': require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/drafts.php"; $draftData = drafts::getDraft($draft_id, get_uid(false), 4); if (!$draftData) { return getFriendlyURL('commune_commune', $comm['id']); } break; case 'Edittopic': break; default: if ($site) { return "/404.php"; } break; } if ($action) { if ($action == 'Delete' && !($user_mod & commune::MOD_ADMIN)) { return "/commune/?id={$id}"; } if (!$site) { if (($action == 'do.Edit.post' || $action == 'do.Create.post') && $user_mod & (commune::MOD_ADMIN | commune::MOD_COMM_AUTHOR | commune::MOD_COMM_ACCEPTED)) { return NULL; } if ($action == 'Join') { return NULL; } return "/commune/?id={$id}"; } } return NULL; }