// Добавил ограничение - только по текущему ММБ $Sql = "select u.user_id, CASE WHEN COALESCE(u.user_noshow, 0) = 1 THEN '{$Anonimus}' ELSE u.user_name END as user_name,\n\t u.user_birthyear, u.user_city, u.user_minraidid, u.user_maxraidid,\n\t\t u.user_maxnotstartraidid, u.user_r6, u.user_noinvitation \n\t from Users u\n\t\t\t inner join TeamUsers tu on u.user_id = tu.user_id\n\t\t \t inner join Teams t on tu.team_id = t.team_id\n\t\t \t inner join Distances d on t.distance_id = d.distance_id\n\t\t\twhere u.user_hide = 0 and t.team_hide = 0 and tu.teamuser_hide = 0 and d.distance_hide = 0 and d.raid_id = {$RaidId}"; $Result = MySqlQuery($Sql); while ($Row = mysql_fetch_assoc($Result)) { $data["Users"][] = $Row; } mysql_free_result($Result); // TeamUsers: teamuser_id, team_id, user_id, teamuser_hide $Sql = "select teamuser_id, tu.team_id, tu.user_id, tu.teamuser_rank, tu.teamuser_new, tu.teamuser_notstartraidid \n\t from TeamUsers tu \n\t\t \tinner join Teams t on tu.team_id = t.team_id\n\t\t \tinner join Distances d on t.distance_id = d.distance_id\n\t\t\twhere t.team_hide = 0 and tu.teamuser_hide = 0 and d.distance_hide = 0 and d.raid_id = {$RaidId}"; $Result = MySqlQuery($Sql); while ($Row = mysql_fetch_assoc($Result)) { $data["TeamUsers"][] = $Row; } mysql_free_result($Result); // Определяем, можно ли показывать пользователю информацию об этапах дистанции $LevelDataVisible = CanViewResults($Administrator, $Moderator, $RaidStage); if ($LevelDataVisible) { // LevelPoints: levelpoint_id, distance_id, levelpoint_name, levelpoint_order, pointtype_id, level_pointnames, level_pointpenalties, level_begtime, level_maxbegtime, level_minendtime, level_endtime $Sql = "select lp.levelpoint_id, lp.distance_id, lp.levelpoint_name, lp.levelpoint_order, lp.pointtype_id, \n\t\t\t\t\tlp.levelpoint_penalty, lp.levelpoint_mindatetime, lp.levelpoint_maxdatetime,\n\t\t\t\t\tlp.scanpoint_id\n\t\t\tfrom LevelPoints lp \n\t\t\t\t\tinner join Distances d on lp.distance_id = d.distance_id \n\t\t\twhere d.distance_hide = 0 and d.raid_id = {$RaidId}"; $Result = MySqlQuery($Sql); while ($Row = mysql_fetch_assoc($Result)) { $data["Levels"][] = $Row; } mysql_free_result($Result); // TeamLevelDismiss: $Sql = "select teamleveldismiss_id, tld.levelpoint_id, \n\t\t\t\t\tteamleveldismiss_date, teamuser_id\n\t\t\tfrom TeamLevelDismiss tld\n\t\t\t inner join LevelPoints lp on tld.levelpoint_id = lp.levelpoint_id\n\t\t\t inner join Distances d on lp.distance_id = d.distance_id\n\t\t\twhere d.distance_hide = 0 and d.raid_id = {$RaidId}"; $Result = MySqlQuery($Sql); while ($Row = mysql_fetch_assoc($Result)) { $data["TeamLevelDismiss"][] = $Row; } mysql_free_result($Result);
$SaveButtonText = 'Сохранить данные команды'; $UnionButtonText = 'Добавить в объединение'; } // ================ Конец инициализации переменных команды ================= // Определяем права по редактированию команды if ($viewmode == "Add" || CanEditTeam($Administrator, $Moderator, $TeamUser, $OldMmb, $RaidStage, $TeamOutOfRange)) { $AllowEdit = 1; $DisabledText = ''; $OnSubmitFunction = 'return ValidateTeamDataForm();'; } else { $AllowEdit = 0; $DisabledText = ' disabled'; $OnSubmitFunction = 'return false;'; } // Определяем права по просмотру результатов if ($viewmode != "Add" && CanViewResults($Administrator, $Moderator, $RaidStage)) { $AllowViewResults = 1; } else { $AllowViewResults = 0; } // Получаем параметры марш-броска $sql = "select r.raid_name, r.raid_registrationenddate, raid_mapprice, raid_teamslimit,\n\tDATE_SUB(MIN(lp.levelpoint_mindatetime), INTERVAL COALESCE(r.raid_readonlyhoursbeforestart, 8) HOUR) as raid_editend\n\tfrom Raids r, Distances d, LevelPoints lp\n\twhere r.raid_id = {$RaidId} and d.raid_id = r.raid_id and lp.distance_id = d.distance_id and lp.levelpoint_mindatetime is not NULL and lp.levelpoint_mindatetime > 0"; $Row = CSql::singleRow($sql); $RaidName = $Row['raid_name']; $RegistrationEnd = $Row['raid_registrationenddate'] . " 23:59"; $EditEnd = substr($Row['raid_editend'], 0, -3); $MapPrice = $Row['raid_mapprice']; $TeamsLimit = $Row['raid_teamslimit']; $InvitationEnd = CSql::invitationDeadline($RaidId); // Получаем количество зарегистрированных команд $sql = "select count(*) as teamscount from Raids r, Distances d, Teams t\n\twhere r.raid_id = {$RaidId} and r.raid_id = d.raid_id and d.distance_id = t.distance_id\n\tand t.team_hide = 0 and t.team_outofrange = 0";
?> " method = "post"> <input type = "hidden" name = "action" value = "ViewRaidTeams"> <input type = "hidden" name = "TeamId" value = "0"> <input type = "hidden" name = "UserId" value = "0"> <input type = "hidden" name = "RaidId" value = "<?php echo $RaidId; ?> "> <?php $t1 = microtime(true); $TabIndex = 0; $DisabledText = ''; //Определяем локальные переменные-флаги показа результатов и этапов $CanViewResults = CanViewResults($Administrator, $Moderator, $RaidStage); $CanViewLevels = CanViewLevels($Administrator, $Moderator, $RaidStage); // Разбираемся с сортировкой $OrderType = mmb_validate($_REQUEST, 'OrderType', ''); if ($OrderType == 'Errors' && !$Administrator && !$Moderator) { $OrderType = ''; } $sql = "select raid_registrationenddate, raid_closedate,\n\t\t\t\t COALESCE(r.raid_noshowresult, 0) as raid_noshowresult, raid_readonlyhoursbeforestart\n\t\t\t from Raids r\n\t\t\t where r.raid_id = {$RaidId}"; $Row = CSql::singleRow($sql); $RaidRegisterEndDt = $Row['raid_registrationenddate']; $RaidCloseDt = $Row['raid_closedate']; $RaidNoShowResult = $Row['raid_noshowresult']; $RaidReadonlyHoursBeforeStart = $Row['raid_readonlyhoursbeforestart']; // 03/05/2014 Исправил порядок сортировки - раньше независимо от установленного $OrderType могло сбрасываться // если порядок не задан смотрим на соотношение временени публикации и текущего if (empty($OrderType)) {