Example #1
0
function setUnionError($message)
{
    global $viewmode;
    // пока так
    $viewmode = "";
    CMmb::setError($message, 'ViewAdminUnionPage', 'ReturnAfterError');
}
Example #2
0
File: json.php Project: se-ti/mmb
    $Sql = "select user_id, user_admin from Users where user_hide = 0 and trim(user_email) = trim('{$_GET['Login']}') and user_password = '******'Password'])) . "'";
    $Result = MySqlQuery($Sql);
    $Row = mysql_fetch_assoc($Result);
    if ($Row['user_id'] <= 0) {
        print "Autenthication failed";
        return;
    }
    if ($Row['user_admin'] == 0) {
        print "Authorization failed";
        return;
    }
}
// Конец проверки, как именно используем скрипт: из интерфейса или отдельно
// Проверяем, что передали идентификатор ММБ
if (empty($RaidId)) {
    CMmb::setShortResult('Не указан ММБ', '');
    return;
    /*
      $sql = "select raid_id
     	  from Raids 
     	  order by raid_registrationenddate desc
    	  LIMIT 0,1 ";
    
      $Result = MySqlQuery($sql);
      $Row = mysql_fetch_assoc($Result);
      $RaidId = $Row['raid_id'];
      mysql_free_result($Result);
    */
}
// Сбор данных для дампа
$data = array();
Example #3
0
    }
    if ($SessionId <= 0) {
        CMmb::setErrorMessage('Сессия не найдена');
        return;
    }
    $pUserLinkId = trim($_POST['UserLinkId']);
    if (!isset($pUserLinkId)) {
        $pUserLinkId = 0;
    }
    if ($pUserLinkId <= 0) {
        CMmb::setErrorMessage('Ссылка не найдена');
        return;
    }
    $sql = "select raid_id \n\t           from  UserLinks \n\t           where userlink_id = {$pUserLinkId}\n\t\t   ";
    //     echo $sql;
    $raidId = CSql::singleValue($sql, 'raid_id');
    $userId = CSql::userId($SessionId);
    // Права на редактирование
    if (!UACanLinkEdit($pUserId, $raidId, $userId)) {
        return;
    }
    // выходим
    $Sql = "update  UserLinks set userlink_hide = 1 where userlink_id = {$pUserLinkId}";
    //    echo $sql;
    MySqlQuery($Sql);
    CMmb::setResult('Впечатление удалено', "ViewUserData", "");
} else {
    // если никаких действий не требуется
    //  $statustext = "<br/>";
}
//	print('view = '.$view.' action = '.$action);
Example #4
0
// +++++++++++ Показ/редактирование данных команды ++++++++++++++++++++++++++++
// Выходим, если файл был запрошен напрямую, а не через include
if (!isset($MyPHPScript)) {
    return;
}
if (!isset($viewmode)) {
    $viewmode = "";
}
if (!isset($viewsubmode)) {
    $viewsubmode = "";
}
// ================ Добавляем новую команду ===================================
if ($viewmode == 'Add') {
    if ($RaidId <= 0 || $UserId <= 0) {
        CMmb::setErrorMessage('Для регистрации новой команды обязателен идентификатор пользователя и ММБ');
        return;
    }
    // Если запрещено создавать команду - молча выходим, сообщение уже выведено в teamaction.php
    //if (!CanCreateTeam($Administrator, $Moderator, $OldMmb, $RaidStage, $TeamOutOfRange)) return;
    if (!CRights::canCreateTeam($UserId, $RaidId)) {
        return;
    }
    $Sql = "select user_email from Users where user_id = {$UserId}";
    $UserEmail = CSql::singleValue($Sql, 'user_email');
    // Если вернулись после ошибки переменные не нужно инициализировать
    if ($viewsubmode == "ReturnAfterError") {
        ReverseClearArrays();
        $TeamNum = (int) $_POST['TeamNum'];
        $TeamName = CMmbUi::toHtml($_POST['TeamName']);
        $DistanceId = mmb_validateInt($_POST, 'DistanceId');
Example #5
0
function RecalcTeamResultFromTeamLevelPoints($raidid, $teamid)
{
    if (empty($teamid) and empty($raidid)) {
        return;
    }
    $teamRaidCondition = !empty($teamid) ? " t.team_id = {$teamid}" : "d.raid_id = {$raidid}";
    if (empty($teamid)) {
        CMmbLogger::enable(0);
        //CMmbLogger::enable(1);
    }
    $tm0 = microtime(true);
    // Обнуляем данные расчета
    $sql = " update  TeamLevelPoints tlp\n\t\t         join Teams t\n\t\t\t on tlp.team_id = t.team_id\n  \t\t         inner join Distances d\n\t\t\t on t.distance_id = d.distance_id\n\t\t  set  tlp.teamlevelpoint_penalty = NULL,\n\t\t       tlp.teamlevelpoint_duration = NULL,\n\t\t       t.team_maxlevelpointorderdone = NULL,\n\t\t       t.team_minlevelpointorderwitherror = NULL,\n\t\t       t.team_donelevelpoint = NULL,\n\t\t       t.team_comment = NULL\n \t\t  where {$teamRaidCondition}";
    $rs = MySqlQuery($sql);
    $tm1 = CMmbLogger::addInterval(' 1 ', $tm0);
    RecalcTeamLevelPointsDuration($raidid, $teamid);
    $tm2 = CMmbLogger::addInterval(' 2', $tm1);
    RecalcTeamLevelPointsPenaltyWithDiscount($raidid, $teamid);
    $tm3 = CMmbLogger::addInterval(' 3', $tm2);
    RecalcTeamLevelPointsPenaltyWithoutDiscount($raidid, $teamid);
    $tm4 = CMmbLogger::addInterval(' 4', $tm3);
    // echo 'RecalcTeamLevelPointsResult '.$raidid.','.$teamid;
    RecalcTeamLevelPointsResult($raidid, $teamid);
    $tm5 = CMmbLogger::addInterval(' 5', $tm4);
    //	return;
    // Находим ключ ММБ, если указана только команда
    if (empty($raidid)) {
        $sql = "select d.raid_id\n\t\t\t\tfrom Teams t\n\t\t\t\t\tinner join Distances d\n\t\t\t\t\ton t.distance_id = d.distance_id\n\t\t\t\twhere t.team_id = {$teamid}\n\t\t\t\tLIMIT 0,1";
        $raidid = CSql::singleValue($sql, 'raid_id');
    }
    //Ставим ошибки
    //FindErrors($raidid, $teamid);
    $tm6 = CMmbLogger::addInterval(' 6', $tm5);
    // $raidid мог измениться
    $teamRaidCondition = !empty($teamid) ? "t.team_id = {$teamid}" : "d.raid_id = {$raidid}";
    // Результат команды - это результат в максимальной точке
    // Перевод в секунды нужен для корректной работы MAX
    $sql = " update  Teams t\n\t\t\t\tinner join\n\t\t          \t(select tlp.team_id,\n\t\t\t\t\t        MAX(COALESCE(lp.levelpoint_order, 0)) as progress,\n\t\t\t\t\t\t\tMAX(t.distance_id) as distance_id,\n\t\t\t\t\t        MAX(TIME_TO_SEC(COALESCE(tlp.teamlevelpoint_result, 0))) as secresult\n\t\t\t\t\t from TeamLevelPoints tlp\n\t\t\t\t\t      inner join Teams t\n\t\t\t\t\t      on tlp.team_id = t.team_id\n\t\t\t\t\t      inner join Distances d\n\t\t\t\t\t      on t.distance_id = d.distance_id\n\t\t\t\t\t      inner join LevelPoints lp\n\t\t\t\t\t      on tlp.levelpoint_id = lp.levelpoint_id\n\t\t\t\t\t where  {$teamRaidCondition}\n\t\t\t\t\t group by tlp.team_id\n\t\t\t\t\t) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  \t\tinner join\n\t\t\t\t\t(select  lp.distance_id,\n\t\t\t\t\t         MAX(lp.levelpoint_order) as maxlporder\n\t\t\t\t\tfrom LevelPoints lp\n\t\t\t\t\tgroup by lp.distance_id\n\t\t\t\t\t) b\n\t\t\t  \ton a.distance_id = b.distance_id\n  \t          set  team_result =  CASE WHEN b.maxlporder = COALESCE(a.progress, 0) THEN SEC_TO_TIME(COALESCE(a.secresult, 0)) ELSE NULL END\n\t\t\t\t, team_maxlevelpointorderdone = COALESCE(a.progress, 0) ";
    //     echo $sql;
    $rs = MySqlQuery($sql);
    $tm7 = CMmbLogger::addInterval(' 7', $tm6);
    // теперь можно посчитать рейтинг
    RecalcTeamUsersRank($raidid);
    $tm8 = CMmbLogger::addInterval(' 8', $tm7);
    //
    // Находим минимальную точку с ошибкой (COALESCE(tlp.error_id, 0) > 0)
    // < 0 - это не ошибка - предупреждение
    $sql = " update  Teams t\n\t\t\t\t    inner join\n\t    \t\t      \t(select tlp.team_id,\n\t\t\t\t\t        MIN(COALESCE(lp.levelpoint_order, 0)) as error\n\t\t\t\t\t\tfrom TeamLevelPoints tlp\n\t\t\t\t\t\t\t\tinner join Teams t\n\t\t\t\t\t\t\t    on tlp.team_id = t.team_id\n\t\t\t      \t\t\t\tinner join Distances d\n\t\t\t      \t\t\t\ton t.distance_id = d.distance_id\n\t\t\t      \t\t\t\tinner join LevelPoints lp\n\t\t\t      \t\t\t\ton tlp.levelpoint_id = lp.levelpoint_id\n\t\t\t\t\t\twhere  COALESCE(tlp.error_id, 0) > 0\n\t\t        \t\t\tand {$teamRaidCondition}\n\t\t\t\t\t\tgroup by tlp.team_id\n\t\t\t\t\t\t) a\n\t\t  \t\t\ton t.team_id = a.team_id\n          \tset  team_minlevelpointorderwitherror = COALESCE(a.error, 0)";
    //     echo $sql;
    $rs = MySqlQuery($sql);
    $tm9 = CMmbLogger::addInterval(' 9', $tm8);
    // Находим невзятые КП
    // расчет закомментирован, так ка Сергей строит список другим способом
    /*
    	 $sql = " update  Teams t
    				    inner join
    	    		      	(select t.team_id, GROUP_CONCAT(lp.levelpoint_name ORDER BY lp.levelpoint_order, ' ') as skippedlevelpoint
    						from  Teams t
    								inner join  Distances d
    								on t.distance_id = d.distance_id
    								join LevelPoints lp
     								on t.distance_id = lp.distance_id
    									and  COALESCE(t.team_maxlevelpointorderdone, 0) >= lp.levelpoint_order
    								left outer join TeamLevelPoints tlp
    								on lp.levelpoint_id = tlp.levelpoint_id
    									and t.team_id = tlp.team_id
    					 	where 	tlp.levelpoint_id is NULL
    								and d.distance_hide = 0 and t.team_hide = 0
    								and $teamRaidCondition
    						group by t.team_id
    						) a
    		  			on t.team_id = a.team_id
    	       		set  team_skippedlevelpoint = COALESCE(a.skippedlevelpoint, '')";
    
    		 //     echo $sql;
    
    		 $rs = MySqlQuery($sql);*/
    // Обновляем комментарий у команды
    $sql = " update  Teams t\n                inner join\n                      (select tlp.team_id \n\t\t\t\t\t\t,group_concat(COALESCE(teamlevelpoint_comment, '')) as team_comment\n\t\t\t\t       from TeamLevelPoints tlp\n\t\t\t\t\t\t\tleft outer join Errors err\n\t\t\t\t\t\t\ton tlp.error_id = err.error_id\n\t\t\t\t\t\t    inner join Teams t\n\t\t\t\t\t\t    on t.team_id = tlp.team_id\n\t\t\t\t\t\t    inner join Distances d\n\t\t\t    \t\t\ton t.distance_id = d.distance_id\n                       where  COALESCE(tlp.teamlevelpoint_comment, '') <> ''\n                                and {$teamRaidCondition}\n                       group by tlp.team_id\n                      ) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  set  t.team_comment = a.team_comment";
    //   echo $sql;
    $rs = MySqlQuery($sql);
    $tm10 = CMmbLogger::addInterval(' 10', $tm9);
    //Теперь в это поле добавляем ошибки  tlp.error_id  > 0
    $sql = " update  Teams t\n                inner join\n                      (select tlp.team_id \n\t\t\t\t\t\t,group_concat(COALESCE(error_name, '')) as team_error\n\t\t\t\t\t\tfrom TeamLevelPoints tlp\n\t\t\t\t\t\t\t\tleft outer join Errors err\n\t\t\t\t\t\t\t\ton tlp.error_id = err.error_id\n\t\t\t\t\t\t\t    inner join Teams t\n\t\t\t\t\t\t\t    on t.team_id = tlp.team_id\n\t\t\t\t\t\t\t    inner join Distances d\n\t\t\t\t\t\t\t    on t.distance_id = d.distance_id\n\t\t\t\t\t\twhere  COALESCE(tlp.error_id, 0) > 0\n\t\t                       and {$teamRaidCondition}\n\t\t\t\t\t\tgroup by tlp.team_id\n                      ) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  set  t.team_comment = CASE WHEN a.team_error <> '' THEN CONCAT('Ошибки: ', a.team_error, '; ',  COALESCE(t.team_comment, ''))  ELSE t.team_comment END";
    //   echo $sql;
    $rs = MySqlQuery($sql);
    $tm11 = CMmbLogger::addInterval(' 11', $tm10);
    //Теперь в это поле добавляем предупреждения  tlp.error_id  < 0
    $sql = " update  Teams t\n                inner join\n                      (select tlp.team_id \n\t\t\t\t\t\t,group_concat(COALESCE(error_name, '')) as team_error\n\t\t\t\t\t\tfrom TeamLevelPoints tlp\n\t\t\t\t\t\t\t\tleft outer join Errors err\n\t\t\t\t\t\t\t\ton tlp.error_id = err.error_id\n\t\t\t\t\t\t\t    inner join Teams t\n\t\t\t\t\t\t\t    on t.team_id = tlp.team_id\n\t\t\t\t\t\t\t    inner join Distances d\n\t\t\t\t\t\t\t    on t.distance_id = d.distance_id\n\t\t\t\t\t\twhere  COALESCE(tlp.error_id, 0) < 0\n\t\t                       and {$teamRaidCondition}\n\t\t\t\t\t\tgroup by tlp.team_id\n                      ) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  set  t.team_comment = CASE WHEN a.team_error <> '' THEN CONCAT('Предупреждения: ', a.team_error, '; ',  COALESCE(t.team_comment, ''))  ELSE t.team_comment END";
    //   echo $sql;
    $rs = MySqlQuery($sql);
    $tm12 = CMmbLogger::addInterval(' 12', $tm11);
    //Теперь в это поле добавляем предупреждения  tlp.error_id  < 0
    $sql = " update  Teams t\n                inner join\n                      (select tlp.team_id \n\t\t\t\t\t\t,group_concat(COALESCE(error_name, '')) as team_error\n\t\t\t\t\t\tfrom TeamLevelPoints tlp\n\t\t\t\t\t\t\t\tleft outer join Errors err\n\t\t\t\t\t\t\t\ton tlp.error_id = err.error_id\n\t\t\t\t\t\t\t    inner join Teams t\n\t\t\t\t\t\t\t    on t.team_id = tlp.team_id\n\t\t\t\t\t\t\t    inner join Distances d\n\t\t\t\t\t\t\t    on t.distance_id = d.distance_id\n\t\t\t\t\t\twhere  COALESCE(tlp.error_id, 0) < 0\n\t\t                       and {$teamRaidCondition}\n\t\t\t\t\t\tgroup by tlp.team_id\n                      ) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  set  t.team_comment = CASE WHEN a.team_error <> '' THEN CONCAT('Предупреждения: ', a.team_error, '; ',  COALESCE(t.team_comment, ''))  ELSE t.team_comment END";
    //   echo $sql;
    $rs = MySqlQuery($sql);
    $tm13 = CMmbLogger::addInterval(' 13', $tm12);
    //считаем (только для интерфейса список вщзятых КП
    $sql = " update  Teams t\n                inner join\n                      (select tlp.team_id \n\t\t\t,group_concat(DATE_FORMAT(COALESCE(tlp.teamlevelpoint_datetime, ''),'%H:%i')  order by teamlevelpoint_datetime  separator ', ') as team_donelevelpoint\n\t\t\t\t\t\tfrom TeamLevelPoints tlp\n\t\t\t\t\t\t\t    inner join Teams t\n\t\t\t\t\t\t\t    on t.team_id = tlp.team_id\n\t\t\t\t\t\t\t    inner join Distances d\n\t\t\t\t\t\t\t    on t.distance_id = d.distance_id\n\t\t\t\t\t\twhere  COALESCE(tlp.teamlevelpoint_datetime, 0) > 0\n\t\t                       and {$teamRaidCondition}\n\t\t\t\t\t\tgroup by tlp.team_id\n                      ) a\n\t\t  \t\ton t.team_id = a.team_id\n\t\t  set  t.team_donelevelpoint = a.team_donelevelpoint ";
    //   echo $sql;
    $rs = MySqlQuery($sql);
    $tm14 = CMmbLogger::addInterval(' 14', $tm13);
    // теперь можно посчитать рейтинг
    RecalcUsersRank($raidid);
    $tm14 = CMmbLogger::addInterval(' 15', $tm13);
    $msg = CMmbLogger::getText();
    //CMmb::setShortResult($msg, '');
    CMmb::setMessage($msg);
}
Example #6
0
<?php

// +++++++++++ Показ/редактирование данных пользователя +++++++++++++++++++++++
// Выходим, если файл был запрошен напрямую, а не через include
if (!isset($MyPHPScript)) {
    return;
}
// Выходим, если не администратор и не модератор
if (!$Administrator and !$Moderator) {
    CMmb::setShortResult('Нет прав на экспорт', '');
    return;
}
// Выводим javascrpit
?>

<!-- Выводим javascrpit -->
<script language = "JavaScript">


	function RecalcRaidResults()
	{ 
              document.AdminForm.action.value = "RecalcRaidResults";
              document.AdminForm.RaidId.value = document.FindTeamForm.RaidId.value; 
	      document.AdminForm.submit();
              return true;
	}

	function FindRaidErrors()
	{
              document.AdminForm.action.value = "FindRaidErrors";
              document.AdminForm.RaidId.value = document.FindTeamForm.RaidId.value;
Example #7
0
    for ($inv_type = 1; $inv_type <= 3; $inv_type++) {
        $sql = "SELECT COUNT(*) AS invited_count FROM\n\t\t\t(SELECT DISTINCT t.team_id FROM Teams t\n\t\t\t\tINNER JOIN Invitations inv ON inv.invitation_id = t.invitation_id\n\t\t\t\tINNER JOIN TeamUsers tu ON tu.team_id = t.team_id AND tu.teamuser_hide = 0\n\t\t\t\tINNER JOIN InvitationDeliveries invd ON invd.invitationdelivery_id = inv.invitationdelivery_id\n\t\t\t\tWHERE {$DistanceTeams} AND invd.invitationdelivery_type = {$inv_type}) AS TeamsInvited";
        $invited[$inv_type] = CSql::singleValue($sql, 'invited_count');
    }
    // отдельно считаем количество команд, приглашенных по рейтингу своими участниками
    $sql = "SELECT COUNT(*) AS invited_count FROM\n\t\t(SELECT DISTINCT t.team_id FROM Teams t\n\t\t\tINNER JOIN Invitations inv ON inv.invitation_id = t.invitation_id\n\t\t\tINNER JOIN TeamUsers tu ON tu.team_id = t.team_id AND tu.teamuser_hide = 0\n\t\t\tINNER JOIN InvitationDeliveries invd ON invd.invitationdelivery_id = inv.invitationdelivery_id\n\t\t\tWHERE {$DistanceTeams} AND invd.invitationdelivery_type = 1 AND tu.user_id = inv.user_id) AS TeamsInvited";
    $invited_self = CSql::singleValue($sql, 'invited_count');
    // выводим статистику
    print " <td colspan={$colspan}>Участвует команд <span title=\"всего команд с приглашениями\">{$teamInRangeCount}</span> " . "(<span title=\"пригласившие сами себя\">{$invited_self}</span>" . "/<span title=\"приглашенные другими участниками\">" . ($invited[1] - $invited_self) . "</span>" . "/<span title=\"выгравшие в лотерею\">" . $invited[2] . "</span>" . "/<span title=\"с приглашениями, выданными вручную\">" . $invited[3] . "</span>), ";
    print "ожидают приглашения <span title=\"всего команд без приглашений\">{$teamOutOfRangeCount}</span>, ";
    print "участников <span title=\"в приглашенных командах\">{$teamUserInRangeCount}</span>/<span title=\"в командах, ожидающих приглашение\">{$teamUserOutOfRangeCount}</span>, ";
    print "карт <span title=\"в приглашенных командах\">{$mapsInRangeCount}</span>/<span title=\"в командах, ожидающих приглашение\">{$mapsOutOfRangeCount}</span></td>\n</tr>\n";
}
// Проверяем, что передали  идентификатор ММБ
if ($RaidId <= 0) {
    CMmb::setMessage('Не указан ММБ');
    return;
}
?>
	
         <form  name = "RaidTeamsForm"  action = "<?php 
echo $MyPHPScript;
?>
" 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;
?>
">
Example #8
0
function teamEditError($error)
{
    global $view, $viewmode;
    CMmb::setError($error, $view, 'ReturnAfterErrorTlp');
    $viewmode = "EditTlp";
}
Example #9
0
function raidError($message)
{
    global $viewmode;
    $viewmode = "Edit";
    CMmb::setErrorSm($message);
}
Example #10
0
        CMmb::setShortResult('Рейтинг пересчитан', 'ViewAdminDataPage');
    } elseif ($action == 'DeleteOutOfRangeTeams') {
        CMmb::setViews('ViewAdminDataPage', '');
        if ($RaidId <= 0) {
            CMmb::setError('Марш-бросок не найден.', $view, '');
            return;
        }
        // проверяем
        if (!CRights::canDeleteOutOfRangeTeams($UserId, $RaidId)) {
            CMmb::setError('Невозможно удалить команды вне зачета.', $view, '');
            return;
        }
        $sql = "UPDATE Teams t INNER JOIN Distances d on t.distance_id = d.distance_id \n\t\tSET t.team_hide = 1  \n\t\tWHERE d.raid_id = {$RaidId} and t.team_outofrange = 1\n\t\t";
        //echo  $sql;
        MySqlQuery($sql);
        CMmb::setShortResult('Команды вне зачета удалены', '');
        //CMmb::setResult('', "ViewAdminDataPage", "");
        return;
    } else {
    }
}
// Сохранение флага ошибки в базе
// функция больше не используется
function LogError($teamlevel_id, $error)
{
    $sql = "update TeamLevels set error_id = {$error} where teamlevel_id = {$teamlevel_id}";
    $Result = MySqlQuery($sql);
    return $error;
}
// Проверка конкретной команды
// функция больше не используется
Example #11
0
    if ($Result == 1) {
        CMmb::setShortResult('Рассылка запущена', 'ViewAdminDataPage');
    } else {
        CMmb::setError('Ошибка при отправке рассылки.', $view, '');
        return;
    }
} elseif ($action == 'RaidTeamUsersExport') {
    if ($RaidId <= 0) {
        CMmb::setShortResult('Марш-бросок не найден', '');
        return;
    }
    // рассылать всем может только администратор
    if (!$Administrator) {
        return;
    }
    CMmb::setViews('ViewAdminDataPage', '');
    $Sql = "select u.user_name, user_birthyear, \n\t\t\tCOALESCE(u.user_city, '') as user_city,\n\t\t\tCOALESCE(u.user_phone, '') as user_phone,\n\t\t        t.team_num, t.team_name, t.team_outofrange  \n\t\tfrom Teams t \n\t\t\tinner join Distances d on t.distance_id = d.distance_id\n\t\t\tinner join TeamUsers tu on tu.team_id = t.team_id\n\t\t\tinner join Users u on tu.user_id = u.user_id\n\t\twhere t.team_hide = 0 \n\t\t\tand tu.teamuser_hide = 0\n\t\t\tand d.raid_id = {$RaidId}\n\t\torder by user_name\n\t\t";
    $Result = MySqlQuery($Sql);
    // Заголовки, чтобы скачивать можно было и на мобильных устройствах просто браузером (который не умеет делать Save as...)
    header('Content-Type: text/csv; charset=utf-8');
    header('Content-Disposition: attachment; filename=raidteamusers.csv');
    // create a file pointer connected to the output stream
    $output = fopen('php://output', 'w');
    while ($Row = mysql_fetch_assoc($Result)) {
        fputcsv($output, $Row);
    }
    mysql_free_result($Result);
    fclose($output);
    die;
    return;
} else {
Example #12
0
    if (!empty($maxinvdt)) {
        $invEndDt = $maxinvdt;
    }
    $sql = "insert into InvitationDeliveries (raid_id, invitationdelivery_type, invitationdelivery_dt, user_id, invitationdelivery_amount)\n                    VALUES ({$RaidId}, 3, NOW(), {$UserId}, 1)";
    //echo $sql;
    $newInvDeliveryId = MySqlQuery($sql);
    //echo "newInvDeliveryId=  $newInvDeliveryId ";
    if ($newInvDeliveryId <= 0) {
        CMmb::setErrorSm('Ошибка записи раздачи приглашения.');
        return;
    }
    if ($pUserId <= 0 or $UserId <= 0 or !CRights::canDeliveryInvitation($UserId, $RaidId, 1)) {
        CMmb::setErrorMessage('Не хватает прав или нет доступных приглашений');
        return;
    }
    $sql = "insert into Invitations (user_id, invitation_begindt, invitation_enddt, invitationdelivery_id)\n                VALUES ({$pUserId}, NOW(), '{$invEndDt}', {$newInvDeliveryId})";
    //echo $sql;
    $newInvId = MySqlQuery($sql);
    if ($newInvId <= 0) {
        CMmb::setErrorSm('Ошибка записи приглашения.');
        return;
    }
    CMmb::setResult('Приглашение выдано', "ViewUserData", "");
} else {
    // если никаких действий не требуется
    //  $statustext = "<br/>";
}
//	print('view = '.$view.' action = '.$action);
?>