Beispiel #1
0
$unix = new unix();
$pidfile = "/etc/artica-postfix/pids/" . basename(__FILE__) . ".MAIN.pid";
$pidfileTime = "/etc/artica-postfix/pids/" . basename(__FILE__) . ".MAIN.pid.time";
$pid = $unix->get_pid_from_file($pidfile);
if ($unix->process_exists($pid, basename(__FILE__))) {
    system_admin_events("Already process {$pid} exists", __FUNCTION__, __FILE__, __LINE__, "clean");
    die;
}
if (system_is_overloaded()) {
    system_admin_events("Overloaded system, aborting task", __FUNCTION__, __FILE__, __LINE__, "clean");
}
$t = time();
system_admin_events("Starting cleaning ipband table...", __FUNCTION__, __FILE__, __LINE__, "clean");
ipband_clean();
system_admin_events("Starting cleaning events table...", __FUNCTION__, __FILE__, __LINE__, "clean");
CleanEvents();
system_admin_events("Starting cleaning maillog table...", __FUNCTION__, __FILE__, __LINE__, "clean");
clean_maillogs();
system_admin_events("Starting cleaning squid statistics table...", __FUNCTION__, __FILE__, __LINE__, "clean");
clean_squid_stats_dbs();
clean_squid_stats_no_items();
$took = $unix->distanceOfTimeInWords($t, time(), true);
system_admin_events("Finish, took {$took}", __FUNCTION__, __FILE__, __LINE__, "clean");
function ipband_clean()
{
    $q = new mysql();
    $sock = new sockets();
    $array = unserialize(base64_decode($sock->GET_INFO("ipbandClean")));
    $MAX_DAY = $array["MAX_DAYS"];
    $MAX_ROWS = $array["MAX_ROWS"];
    if (!is_numeric($MAX_ROWS)) {
Beispiel #2
0
$pdf->PrintFlags = !empty($_REQUEST["ScoreFlags"]);
$MyQuery = "";
if (isset($_REQUEST['Blank'])) {
    $rows = empty($_REQUEST['Rows']) ? 5 : intval($_REQUEST['Rows']);
    $cols = empty($_REQUEST['Cols']) ? 3 : intval($_REQUEST['Cols']);
    $sots = empty($_REQUEST['SO']) ? 1 : intval($_REQUEST['SO']);
    $MyQuery = "(SELECT DISTINCT " . " '' AS EvCode, '' AS EvEventName, '' AS EvFinalFirstPhase, '0' AS GrPhase," . " 0 AS GrMatchNo, '' AS Athlete," . " '' AS CoCode, '' AS CoName, '' AS IndRank, '' AS FSTarget," . " '' AS FinArrowString, '' AS FinTieBreak, EvMatchMode, IF(EvMatchArrowsNo=0,0,1) AS EvMatchArrowsNo, " . " 0 as Score, 0 as FinTie " . " , '{$rows}' CalcEnds " . " , '{$cols}' CalcArrows " . " , '{$sots}' CalcSO " . "FROM Events " . "WHERE EvTournament=" . StrSafe_DB($_SESSION['TourId']) . " AND EvTeamEvent=0) " . "UNION ALL " . "(SELECT DISTINCT " . " '' AS EvCode, '' AS EvEventName, '' AS EvFinalFirstPhase, '0' AS GrPhase," . " 1 AS GrMatchNo, '' AS Athlete," . " '' AS CoCode, '' AS CoName, '' AS IndRank, '' AS FSTarget," . " '' AS FinArrowString, '' AS FinTieBreak, EvMatchMode, IF(EvMatchArrowsNo=0,0,1) AS EvMatchArrowsNo, " . " 0 as Score, 0 as FinTie " . " , '{$rows}' CalcEnds " . " , '{$cols}' CalcArrows " . " , '{$sots}' CalcSO " . "FROM Events " . "WHERE EvTournament=" . StrSafe_DB($_SESSION['TourId']) . " AND EvTeamEvent=0) " . "ORDER BY  EvMatchMode, EvMatchArrowsNo, GrMatchNo";
} else {
    $MyQuery = 'SELECT ' . ' EvCode, EvEventName, EvFinalFirstPhase, GrPhase, ' . ' GrMatchNo, CONCAT(EnName, \' \', EnFirstName) as Athlete, FinAthlete,' . ' CoCode, CoName, IF(EvELim2>0, ElRank, IndRank) AS  IndRank, FSTarget, ' . ' FinArrowString, FinTieBreak, FinSetScore, EvMatchMode, EvMatchArrowsNo, ' . ' IF(EvMatchMode=0,FinScore,FinSetScore) AS Score, FinTie, @elimination:=pow(2, ceil(log2(GrPhase))+1) & EvMatchArrowsNo ' . " , if(@elimination, EvElimEnds, EvFinEnds) CalcEnds " . " , if(@elimination, EvElimArrows, EvFinArrows) CalcArrows " . " , if(@elimination, EvElimSO, EvFinSO) CalcSO " . ' FROM Events' . ' INNER JOIN Finals ON EvCode=FinEvent AND EvTournament=FinTournament' . ' INNER JOIN Grids ON FinMatchNo=GrMAtchNo AND GrPhase<=(IF(EvFinalFirstPhase=24,32, IF(EvFinalFirstPhase=48,64,EvFinalFirstPhase )))' . ' LEFT JOIN Individuals ON FinAthlete=IndId AND FinEvent=IndEvent AND FinTournament=IndTournament' . ' LEFT JOIN Entries ON FinAthlete=EnId AND FinTournament=EnTournament' . ' LEFT JOIN Qualifications ON QuId=EnId' . ' LEFT JOIN Eliminations ON ElId=EnId AND ElElimPhase=1' . ' LEFT JOIN Countries on EnCountry=CoId AND EnTournament=CoTournament' . ' LEFT JOIN FinSchedule ON FinEvent=FSEvent AND FinMatchNo=FSMatchNo AND FinTournament=FSTournament AND FSTeamEvent=\'0\'' . ' WHERE EvTournament=' . StrSafe_DB($_SESSION['TourId']) . ' AND EvTeamEvent=0 ';
    if (isset($_REQUEST['x_Session']) && $_REQUEST['x_Session'] != -1) {
        $MyQuery .= "AND concat(FSTeamEvent, FSScheduledDate, ' ', FSScheduledTime)=" . strSafe_DB($_REQUEST['x_Session']) . " ";
        $OrderBy = 'FsTarget, ';
    } else {
        $OrderBy = '';
        if (!empty($_REQUEST['Event'])) {
            $MyQuery .= CleanEvents($_REQUEST['Event'], "EvCode") . " ";
        }
        if (isset($_REQUEST['Phase']) && preg_match("/^[0-9]{1,2}\$/i", $_REQUEST["Phase"])) {
            $p = $_REQUEST['Phase'];
            //	print $p;exit;
            if ($p == 24) {
                $p = 32;
            } elseif ($p == 48) {
                $p = 64;
            }
            $MyQuery .= "AND GrPhase = {$p} ";
            //. StrSafe_DB($_REQUEST['Phase']) . " ";
            //$MyQuery.= "AND GrPhase = " . StrSafe_DB($_REQUEST['Phase']) . " ";
        }
    }
    $MyQuery .= ' ORDER BY ' . $OrderBy . ' EvCode, GrPhase DESC, FinMatchNo ASC';
Beispiel #3
0
function getIndividualBracketsQuery($ORIS = false)
{
    if ($ORIS) {
        $MyQuery = "SELECT f.FinEvent AS Event, EvEventName AS EventDescr, f.FinMatchNo, EvFinalFirstPhase, " . "IF(GrPhase!=0,GrPhase,1) as Phase, (GrPhase=1) as Finalina, IndRank, QuScore, " . "EnFirstName as FirstName, EnName as Name, CoCode as Country, IF(EvMatchMode=0,f.FinScore,f.FinSetScore) AS Score, f.FinTie, f.FinTiebreak, IF(EvMatchMode=0,f2.FinScore,f2.FinSetScore) as OppScore, f2.FinTie as OppTie, f.FinSetPoints as SetPoints, " . "IF(EvFinalFirstPhase=48 || EvFinalFirstPhase=24,GrPosition2, GrPosition) GrPosition, EvFinalPrintHead, FSTarget, DATE_FORMAT(FSScheduledDate,'" . get_text('DateFmtDB') . "') as ScheduledDate, DATE_FORMAT(FSScheduledTime,'" . get_text('TimeFmt') . "') AS ScheduledTime ";
        $MyQuery .= "FROM Finals AS f ";
        $MyQuery .= "INNER JOIN Finals AS f2 ON f.FinEvent=f2.FinEvent AND f.FinMatchNo=IF((f.FinMatchNo % 2)=0,f2.FinMatchNo-1,f2.FinMatchNo+1) AND f.FinTournament=f2.FinTournament ";
        $MyQuery .= "INNER JOIN Events ON f.FinEvent=EvCode AND f.FinTournament=EvTournament AND EvTeamEvent=0 ";
        $MyQuery .= "INNER JOIN Grids ON f.FinMatchNo=GrMatchNo ";
        $MyQuery .= "LEFT JOIN Individuals ON f.FinAthlete=IndId AND f.FinEvent=IndEvent AND f.FinTournament=IndTournament ";
        $MyQuery .= "LEFT JOIN Entries ON f.FinAthlete=EnId AND f.FinTournament=EnTournament ";
        $MyQuery .= "LEFT JOIN Qualifications ON EnId=QuId  ";
        $MyQuery .= "LEFT JOIN Countries ON EnCountry=CoId AND EnTournament=CoTournament ";
        $MyQuery .= "LEFT JOIN FinSchedule ON f.FinEvent=FSEvent AND f.FinMatchNo=FSMatchNo AND f.FinTournament=FSTournament AND FSTeamEvent='0' ";
        $MyQuery .= "WHERE f.FinTournament = " . StrSafe_DB($_SESSION['TourId']) . " ";
        if (!empty($_REQUEST['Event'])) {
            $MyQuery .= CleanEvents($_REQUEST['Event'], 'f.FinEvent');
        }
        $MyQuery .= "ORDER BY EvProgr ASC, EvCode, Phase DESC, f.FinMatchNo ASC ";
        return $MyQuery;
    }
    $MyQuery = "SELECT f.FinEvent AS Event, EvEventName AS EventDescr, f.FinMatchNo, EvFinalFirstPhase, " . "IF(GrPhase!=0,GrPhase,1) as Phase, (GrPhase=1) as finalina, " . "f.FinSetPoints, f2.FinSetPoints OppSetPoints, " . "concat(EnFirstName, ' ', EnName) as Atleta, concat(EnFirstName, ' ', Substr(EnName,1,1), '.') as AtletaShort, CoCode as Country, " . "IF(EvMatchMode=0,f.FinScore,f.FinSetScore) AS Score, IF(EvMatchMode=0,f2.FinScore,f2.FinSetScore) AS OppScore, f.FinTie, f2.FinTie as OppTie, f.FinTiebreak, " . "IF(EvFinalFirstPhase=48 || EvFinalFirstPhase=24, GrPosition2, GrPosition) as GrPosition, EvFinalPrintHead, FSTarget, DATE_FORMAT(FSScheduledDate,'" . get_text('DateFmtDB') . "') as ScheduledDate, DATE_FORMAT(FSScheduledTime,'" . get_text('TimeFmt') . "') AS ScheduledTime ";
    $MyQuery .= "FROM Finals as f ";
    $MyQuery .= "INNER JOIN Finals AS f2 ON f.FinEvent=f2.FinEvent AND f.FinMatchNo=IF((f.FinMatchNo % 2)=0,f2.FinMatchNo-1,f2.FinMatchNo+1) AND f.FinTournament=f2.FinTournament ";
    $MyQuery .= "INNER JOIN Events ON f.FinEvent=EvCode AND f.FinTournament=EvTournament AND EvTeamEvent=0 ";
    $MyQuery .= "INNER JOIN Grids ON f.FinMatchNo=GrMatchNo ";
    $MyQuery .= "LEFT JOIN Entries ON f.FinAthlete=EnId AND f.FinTournament=EnTournament ";
    $MyQuery .= "LEFT JOIN Countries ON EnCountry=CoId AND EnTournament=CoTournament ";
    $MyQuery .= "LEFT JOIN FinSchedule ON f.FinEvent=FSEvent AND f.FinMatchNo=FSMatchNo AND f.FinTournament=FSTournament AND FSTeamEvent='0' ";
    $MyQuery .= "WHERE f.FinTournament = " . StrSafe_DB($_SESSION['TourId']) . " ";
    if (!empty($_REQUEST['Event'])) {
        $MyQuery .= CleanEvents($_REQUEST['Event'], 'f.FinEvent');
    }
    $MyQuery .= "ORDER BY EvProgr ASC, EvCode, Phase DESC, f.FinMatchNo ASC ";
    return $MyQuery;
}
Beispiel #4
0
    $_REQUEST['BigNames'] = true;
    $_REQUEST['TargetAssign'] = false;
    $MyQuery = "SELECT " . " '' EvCode, '' EvEventName, '' EvFinalFirstPhase, '' GrPhase, " . " '' TfTarget, '' GrMatchNo, " . " FlCode CoCode, concat(FlCode,' ', IF(co.CoName,co.CoName,'TEST')) Athlete, 1 AS Rank, 'test1|test2|test3' CoName, " . " '' s8, '' s4, '' s2, '' sBr, '' sGo " . " FROM Flags " . " left join (select CoCode, CoName from Countries group by CoCode) co on CoCode=FlCode " . " Where FlSVG>'' and FlTournament=-1 " . (!empty($_REQUEST['checked']) ? " and FlChecked='1'" : '') . (!empty($_REQUEST['unchecked']) ? " and FlChecked!='1'" : '') . " order by FlCode " . (!empty($_REQUEST['nolimit']) ? '' : " limit 10 ");
} elseif (!empty($_REQUEST['TeamLabel'])) {
    $_REQUEST['BigNames'] = true;
    $_REQUEST['TargetAssign'] = false;
    $MyQuery = "SELECT distinct " . " '' EvCode, '' EvEventName, '' EvFinalFirstPhase, '' GrPhase, " . " '' TfTarget, '' GrMatchNo, " . " CoCode, Countries.CoName Athlete, 1 AS Rank, 'test1|test2|test3' CoName, " . " fl.FlSVG, fl.FlJPG, " . " '' s8, '' s4, '' s2, '' sBr, '' sGo " . " FROM Countries " . " INNER JOIN Entries on EnCountry=CoId " . " left join (select FlCode, FlSVG, FlJPG from Flags where FlTournament=-1 or FlTournament={$_SESSION['TourId']}) fl on CoCode=FlCode " . " Where CoTournament={$_SESSION['TourId']} " . " order by CoCode ";
    $TeamLeaf = true;
} else {
    $MyQuery = 'SELECT ' . ' EvCode, EvEventName, EvFinalFirstPhase, GrPhase, ' . ' TfTarget, GrMatchNo, ' . ' CoCode, CoName Athlete, TeRank AS Rank, group_concat(concat(upper(EnFirstname), " ", EnName) separator "|") CoName, ' . ' NULLIF(s8.FSTarget,\'\') s8, NULLIF(s4.FSTarget,\'\') s4, NULLIF(s2.FSTarget,\'\') s2, NULLIF(sb.FSTarget,\'\') sBr, NULLIF(sg.FSTarget,\'\') sGo ' . ' ' . ' FROM Events' . ' INNER JOIN TeamFinals ON EvCode=TfEvent AND EvTournament=TfTournament ' . ' INNER JOIN Grids ON TfMatchNo=GrMatchNo /* AND GrPhase<=EvFinalFirstPhase */ ' . ' LEFT JOIN Teams ON TfTeam=TeCoId AND TfTournament=TeTournament AND TfEvent=TeEvent and TfSubTeam=TeSubTeam AND TeFinEvent=1 ' . ' LEFT JOIN Countries on TfTeam=CoId AND TfTournament=CoTournament' . ' left join TeamFinComponent on  TfcCoId=CoId and TfcSubTeam=TeSubTeam and TfcTournament=EvTournament and TfcEvent=EvCode ' . ' left join Entries on TfcId=EnId ' . ' LEFT JOIN FinSchedule s8 ON EvCode=s8.FSEvent AND EvTeamEvent=s8.FSTeamEvent AND EvTournament=s8.FSTournament AND IF(EvFinalFirstPhase=8,TfMatchNo,-256)=s8.FSMatchNo' . ' LEFT JOIN FinSchedule s4 ON EvCode=s4.FSEvent AND EvTeamEvent=s4.FSTeamEvent AND EvTournament=s4.FSTournament AND IF(EvFinalFirstPhase=4,TfMatchNo,FLOOR(s8.FSMatchNo/2))=s4.FSMatchNo' . ' LEFT JOIN FinSchedule s2 ON EvCode=s2.FSEvent AND EvTeamEvent=s2.FSTeamEvent AND EvTournament=s2.FSTournament AND IF(EvFinalFirstPhase=2,TfMatchNo,FLOOR(s4.FSMatchNo/2))=s2.FSMatchNo' . ' LEFT JOIN FinSchedule sb ON EvCode=sb.FSEvent AND EvTeamEvent=sb.FSTeamEvent AND EvTournament=sb.FSTournament AND FLOOR(s2.FSMatchNo/2)=sb.FSMatchNo' . ' LEFT JOIN FinSchedule sg ON EvCode=sg.FSEvent AND EvTeamEvent=sg.FSTeamEvent AND EvTournament=sg.FSTournament AND FLOOR(s2.FSMatchNo/2)-2=sg.FSMatchNo' . ' WHERE EvTournament=' . StrSafe_DB($_SESSION['TourId']) . ' AND EvTeamEvent=1 ';
    $MyQuery .= ' AND EvFinalFirstPhase=GrPhase ';
    if (!empty($_REQUEST['Event'])) {
        $MyQuery .= CleanEvents($_REQUEST['Event'], 'EvCode') . ' ';
    }
    if (isset($_REQUEST['Phase']) && preg_match("/^[0-9]{1,2}\$/i", $_REQUEST["Phase"])) {
        $MyQuery .= ' AND (TfEvent, TfTeam, TfSubTeam) IN (SELECT DISTINCT TfEvent,TfTeam, TfSubTeam FROM TeamFinals INNER JOIN Grids ON TfMatchNo=GrMatchNo WHERE TfTournament=' . $_SESSION['TourId'] . ' and grPhase=' . $_REQUEST['Phase'] . (!empty($_REQUEST['Event']) ? CleanEvents($_REQUEST['Event'], 'TfEvent') : '') . ')';
    }
    $MyQuery .= ' Group By EvCode, GrPhase, TfMatchNo ';
    $MyQuery .= ' ORDER BY EvCode, GrPhase DESC, TfMatchNo ASC, TfcOrder';
    // 		debug_svela($MyQuery, true);
}
//*DEBUG*/echo $MyQuery;exit();
$Rs = safe_r_sql($MyQuery);
// Se il Recordset � valido e contiene almeno una riga
if (safe_num_rows($Rs) > 0) {
    if (!empty($_REQUEST['BigNames'])) {
        require_once 'Common/Fun_FormatText.inc.php';
        require_once 'Common/pdf/BigNamesPDF.inc.php';
        $pdf = new BigNamesPDF(get_text('Sign/guide-board', 'Tournament'), false);
        if (!empty($_REQUEST['TestCountries'])) {
            $pdf->setPrintHeader(false);
Beispiel #5
0
$MyQuery .= "INNER JOIN Teams AS te ON t.ToId=te.TeTournament AND te.TeFinEvent=0 ";
$MyQuery .= "INNER JOIN Countries AS c ON te.TeCoId=c.CoId AND te.TeTournament=c.CoTournament ";
$MyQuery .= "INNER JOIN (SELECT TcCoId, TcEvent, TcTournament, TcFinEvent, COUNT(TcId) as Quanti FROM TeamComponent GROUP BY TcCoId, TcEvent, TcTournament, TcFinEvent) AS sq ON te.TeCoId=sq.TcCoId AND te.TeEvent=sq.TcEvent AND te.TeTournament=sq.TcTournament AND te.TeFinEvent=sq.TcFinEvent ";
$MyQuery .= "INNER JOIN TeamComponent AS tc ON te.TeCoId=tc.TcCoId AND te.TeEvent=tc.TcEvent AND te.TeTournament=tc.TcTournament AND te.TeFinEvent=tc.TcFinEvent ";
$MyQuery .= "INNER JOIN Entries AS en ON tc.TcId=en.EnId ";
$MyQuery .= "INNER JOIN Qualifications AS q ON en.EnId=q.QuId ";
$MyQuery .= "INNER JOIN (select concat(DivId, ClId) DivClass, Divisions.*, Classes.* from Divisions inner join Classes on DivTournament=ClTournament where DivAthlete and ClAthlete) DivClass on te.TeEvent=DivClass and te.TeTournament=DivTournament ";
$MyQuery .= "WHERE ToId = " . StrSafe_DB($_SESSION['TourId']) . " ";
if (isset($_REQUEST["Definition"])) {
    $MyQuery .= "AND te.TeEvent LIKE " . StrSafe_DB($_REQUEST["Definition"]) . " ";
}
if (isset($_REQUEST["Classes"])) {
    $MyQuery .= CleanEvents($_REQUEST["Classes"], 'ClId');
}
if (isset($_REQUEST["Divisions"])) {
    $MyQuery .= CleanEvents($_REQUEST["Classes"], 'DivId');
}
$MyQuery .= "ORDER BY DivViewOrder, ClViewOrder, TeScore DESC, TeGold DESC, TeXnine DESC, NationCode, TcOrder ";
//debug_svela($MyQuery);
//echo $MyQuery;exit();
$Rs = safe_r_sql($MyQuery);
if ($Rs) {
    $CurGroup = "....";
    $CurTeam = "....";
    // Variabili per la gestione del ranking
    $MyRank = 1;
    $MyPos = 0;
    // Variabili che contengono i punti del precedente atleta per la gestione del rank
    $MyScoreOld = 0;
    $MyGoldOld = 0;
    $MyXNineOld = 0;
Beispiel #6
0
//	if (isset($_REQUEST['Phase']) && preg_match("/^[0-9]{1,2}$/i",$_REQUEST["Phase"]))
//		$MyQuery.= "AND GrPhase = " . StrSafe_DB($_REQUEST['Phase']) . " ";
//	$MyQuery .= ' ORDER BY EvCode, GrPhase DESC, FinMatchNo ASC';
$MyQuery = 'SELECT ' . ' EvCode, EvEventName, EvFinalFirstPhase, GrPhase, ' . ' GrMatchNo, EnId, Concat(EnFirstName, " ", LEFT(EnName,1), ".") as Athlete, ' . ' CoCode, CoName, IndRank as Rank, ' . ' NULLIF(s64.FSLetter,\'\') s64, NULLIF(s32.FSLetter,\'\') s32, NULLIF(s16.FSLetter,\'\') s16, NULLIF(s8.FSLetter,\'\') s8, NULLIF(s4.FSLetter,\'\') s4, NULLIF(s2.FSLetter,\'\') s2, NULLIF(sb.FSLetter,\'\') sBr, NULLIF(sg.FSLetter,\'\') sGo ' . ' FROM Events' . ' INNER JOIN Finals ON EvCode=FinEvent AND EvTournament=FinTournament' . ' INNER JOIN Grids ON FinMatchNo=GrMatchNo AND GrPhase=(IF(EvFinalFirstPhase=24,32, IF(EvFinalFirstPhase=48,64,EvFinalFirstPhase )))' . ' INNER JOIN Individuals ON FinAthlete=IndId AND FinEvent=IndEvent AND FinTournament=IndTournament' . ' LEFT JOIN Entries ON FinAthlete=EnId AND FinTournament=EnTournament' . ' LEFT JOIN Qualifications ON QuId=EnId' . ' LEFT JOIN Countries on EnCountry=CoId AND EnTournament=CoTournament' . ' LEFT JOIN FinSchedule s64 ON EvCode=s64.FSEvent AND EvTeamEvent=s64.FSTeamEvent AND EvTournament=s64.FSTournament AND IF(EvFinalFirstPhase=64 OR EvFinalFirstPhase=48 ,FinMatchNo,-256)=s64.FSMatchNo' . ' LEFT JOIN FinSchedule s32 ON EvCode=s32.FSEvent AND EvTeamEvent=s32.FSTeamEvent AND EvTournament=s32.FSTournament AND IF(EvFinalFirstPhase=32 OR EvFinalFirstPhase=24,FinMatchNo,FLOOR(s64.FSMatchNo/2))=s32.FSMatchNo' . ' LEFT JOIN FinSchedule s16 ON EvCode=s16.FSEvent AND EvTeamEvent=s16.FSTeamEvent AND EvTournament=s16.FSTournament AND IF(EvFinalFirstPhase=16,FinMatchNo,FLOOR(s32.FSMatchNo/2))=s16.FSMatchNo' . ' LEFT JOIN FinSchedule s8 ON EvCode=s8.FSEvent AND EvTeamEvent=s8.FSTeamEvent AND EvTournament=s8.FSTournament AND IF(EvFinalFirstPhase=8,FinMatchNo,FLOOR(s16.FSMatchNo/2))=s8.FSMatchNo' . ' LEFT JOIN FinSchedule s4 ON EvCode=s4.FSEvent AND EvTeamEvent=s4.FSTeamEvent AND EvTournament=s4.FSTournament AND IF(EvFinalFirstPhase=4,FinMatchNo,FLOOR(s8.FSMatchNo/2))=s4.FSMatchNo' . ' LEFT JOIN FinSchedule s2 ON EvCode=s2.FSEvent AND EvTeamEvent=s2.FSTeamEvent AND EvTournament=s2.FSTournament AND IF(EvFinalFirstPhase=2,FinMatchNo,FLOOR(s4.FSMatchNo/2))=s2.FSMatchNo' . ' LEFT JOIN FinSchedule sb ON EvCode=sb.FSEvent AND EvTeamEvent=sb.FSTeamEvent AND EvTournament=sb.FSTournament AND FLOOR(s2.FSMatchNo/2)=sb.FSMatchNo' . ' LEFT JOIN FinSchedule sg ON EvCode=sg.FSEvent AND EvTeamEvent=sg.FSTeamEvent AND EvTournament=sg.FSTournament AND FLOOR(s2.FSMatchNo/2)-2=sg.FSMatchNo' . ' WHERE EvTournament=' . StrSafe_DB($_SESSION['TourId']) . ' AND EvTeamEvent=0 ';
if (!empty($_REQUEST['Event'])) {
    $MyQuery .= CleanEvents($_REQUEST['Event'], 'EvCode') . ' ';
}
if (isset($_REQUEST['Phase']) && preg_match("/^[0-9]{1,2}\$/i", $_REQUEST["Phase"])) {
    $p = $_REQUEST['Phase'];
    //	print $p;exit;
    if ($p == 24) {
        $p = 32;
    } elseif ($p == 48) {
        $p = 64;
    }
    $MyQuery .= 'AND EnId IN (SELECT DISTINCT FinAthlete FROM Finals INNER JOIN Grids ON FinMatchNo=GrMatchNo WHERE FinTournament=' . $_SESSION['TourId'] . ' and grPhase=' . $p . (!empty($_REQUEST['Event']) ? CleanEvents($_REQUEST['Event'], 'EvCode') : '') . ')';
}
$MyQuery .= ' ORDER BY EvCode, GrPhase DESC, FinMatchNo ASC';
//*DEBUG*/echo $MyQuery;exit();
$Rs = safe_r_sql($MyQuery);
// Se il Recordset è valido e contiene almeno una riga
if (safe_num_rows($Rs) > 0) {
    //	debug_svela($MyQuery);
    if (!empty($_REQUEST['BigNames'])) {
        require_once 'Common/Fun_FormatText.inc.php';
        require_once 'Common/pdf/BigNamesPDF.inc.php';
        $pdf = new BigNamesPDF(get_text('Sign/guide-board', 'Tournament'), false);
        $pdf->init($Rs);
        $pdf->TargetAssignment = !empty($_REQUEST['TargetAssign']);
        $pdf->IncludeLogo = !empty($_REQUEST['IncludeLogo']);
        $pdf->Make();
Beispiel #7
0
<?php

require_once dirname(dirname(__FILE__)) . '/config.php';
include_once 'Common/pdf/OrisPDF.inc.php';
$pdf = new OrisPDF(get_text('DailySchedule', 'Tournament'), false);
//Genero la query
$MyQuery = "SELECT f.FinEvent AS Event, " . " EvEventName AS EventDescr," . " f.FinMatchNo," . " EvFinalFirstPhase, " . " IF(GrPhase!=0,GrPhase,1) as Phase, " . " (GrPhase=1) as Finalina, " . " I1.IndRank as Rank, " . " Q1.QuScore, " . " E1.EnFirstName as FirstName, " . " E1.EnName as Name, " . " C1.CoCode as Country, " . " I2.IndRank OppRank, " . " Q2.QuScore OppQuScore, " . " E2.EnFirstName as OppFirstName, " . " E2.EnName as OppName, " . " C2.CoCode as OppCountry, " . " IF(EvMatchMode=0,f.FinScore,f.FinSetScore) AS Score, " . " f.FinTie," . " f.FinTiebreak," . " IF(EvMatchMode=0,f2.FinScore,f2.FinSetScore) as OppScore," . " f2.FinTie as OppTie," . " f.FinSetPoints as SetPoints, " . " GrPosition," . " EvFinalPrintHead," . " fs1.FSTarget," . " fs2.FSTarget OppFSTarget," . " DATE_FORMAT(fs1.FSScheduledDate,'" . get_text('DateFmtDB') . "') as ScheduledDate," . " DATE_FORMAT(fs1.FSScheduledTime,'" . get_text('TimeFmt') . "') AS ScheduledTime " . "FROM Finals AS f " . "INNER JOIN Finals AS f2 ON f.FinEvent=f2.FinEvent AND f.FinMatchNo=f2.FinMatchNo-1 AND f.FinTournament=f2.FinTournament " . "INNER JOIN Events ON f.FinEvent=EvCode AND f.FinTournament=EvTournament AND EvTeamEvent=0 " . "INNER JOIN Grids ON f.FinMatchNo=GrMatchNo " . "INNER JOIN Entries E1 ON f.FinAthlete=E1.EnId AND f.FinTournament=E1.EnTournament " . "INNER JOIN Qualifications Q1 ON E1.EnId=Q1.QuId  " . "INNER JOIN Individuals I1 ON I1.IndId=f.FinAthlete AND I1.IndEvent=f.FinEvent AND I1.IndTournament=f.FinTournament  " . "INNER JOIN Countries C1 ON E1.EnCountry=C1.CoId AND E1.EnTournament=C1.CoTournament " . "INNER JOIN Entries E2 ON f2.FinAthlete=E2.EnId AND f2.FinTournament=E2.EnTournament " . "INNER JOIN Qualifications Q2 ON E2.EnId=Q2.QuId  " . "INNER JOIN Individuals I2 ON I2.IndId=f2.FinAthlete AND I2.IndEvent=f2.FinEvent AND I2.IndTournament=f2.FinTournament  " . "INNER JOIN Countries C2  ON E2.EnCountry=C2.CoId AND E2.EnTournament=C2.CoTournament " . "INNER JOIN FinSchedule fs1 ON f.FinEvent=fs1.FSEvent AND f.FinMatchNo=fs1.FSMatchNo AND f.FinTournament=fs1.FSTournament AND fs1.FSTeamEvent='0' " . "INNER JOIN FinSchedule fs2 ON f.FinEvent=fs2.FSEvent AND f.FinMatchNo=fs2.FSMatchNo AND f.FinTournament=fs2.FSTournament AND fs2.FSTeamEvent='0' " . "WHERE f.FinTournament = " . StrSafe_DB($_SESSION['TourId']) . " " . " AND f.FinMatchNo%2 = 0 ";
if (!empty($_REQUEST['Event'])) {
    $MyQuery .= CleanEvents($_REQUEST['Event'], 'f.FinEvent');
}
$MyQuery .= "ORDER BY fs1.FSScheduledDate, fs1.FSScheduledTime, EvProgr ASC, EvCode, Phase DESC, f.FinMatchNo ASC ";
//$MyQuery = "($MyQuery) union (";
$Rs = safe_r_sql($MyQuery);
$pdf->SetMargins(10, 35, 10);
$pdf->AddPage();
$W = $pdf->getPageWidth();
$W = ($W - 100 - 20) / 2;
$pdf->SetLineWidth(0.1);
$pdf->SetFontSize(15);
$pdf->SetFont('', 'b');
$pdf->Cell($pdf->getPageWidth() - 20, 5, get_text('DailySchedule', 'Tournament'), 0, 1, 'C');
$pdf->sety($pdf->gety() + 5);
$pdf->SetFontSize(10);
$oldDate = '';
$oldTime = '';
$oldEvent = '';
$oldPhase = '';
$Date = '';
$Time = '';
$Event = '';
$Phase = '';
 public function read()
 {
     $filter = $this->safeFilter();
     error_reporting(E_ALL);
     /*
      *  prima passata per costruire la struttura del vettore.
      *  Tiro fuori i nomi delle squadre
      */
     $MyQueryNames = "SELECT TfcId, TfcEvent, TfcCoId, TfcSubTeam, TfcOrder, ucase(EnFirstName) EnUpperName, EnFirstName, EnName, concat(ucase(EnFirstName), ' ', EnName) Athlete, CONCAT(TeRank,CHAR(64+TfcOrder)) AS BackNo  ";
     $MyQueryNames .= "FROM TeamFinComponent ";
     $MyQueryNames .= "INNER JOIN Events ON TfcEvent=EvCode AND TfcTournament=EvTournament AND EvTeamEvent=1 AND EvFinalFirstPhase!=0 ";
     $MyQueryNames .= "INNER JOIN Entries ON TfcId=EnId AND TfcTournament=EnTournament ";
     $MyQueryNames .= "INNER JOIN Teams ON TfcCoId=TeCoId AND TfcSubTeam=TeSubTeam AND TfcEvent=TeEvent AND TfcTournament=TeTournament AND TeFinEvent=1 ";
     $MyQueryNames .= "WHERE TfcTournament = " . $this->tournament . " ";
     if (!empty($this->opts['events'])) {
         $MyQueryNames .= CleanEvents($this->opts['events'], 'TfcEvent');
     }
     $MyQueryNames .= " ORDER BY EvProgr, TfcEvent, TfcCoId, TfcSubTeam, TfcOrder ";
     $this->data['sections'] = array();
     $q = safe_r_SQL($MyQueryNames);
     while ($r = safe_fetch($q)) {
         $this->data['sections'][$r->TfcEvent]['athletes'][$r->TfcCoId][$r->TfcSubTeam][] = array('athlete' => $r->Athlete, 'backNo' => $r->BackNo, 'id' => $r->TfcId, 'familyName' => $r->EnFirstName, 'familyUpperName' => $r->EnUpperName, 'givenName' => $r->EnName);
         if (!empty($this->opts['enid']) and $r->TfcId == $this->opts['enid']) {
             $this->EnIdFound[] = $r->TfcEvent;
             $this->TeamFound = $r->TfcCoId;
         }
     }
     if (!empty($this->opts['enid'])) {
         if (!$this->EnIdFound) {
             return;
         }
         foreach ($this->data['sections'] as $ev => $data) {
             if (!in_array($ev, $this->EnIdFound)) {
                 unset($this->data['sections'][$ev]);
             }
         }
     }
     $q = "SELECT * from (" . "select" . " EvCode Event," . " EvEventName EventDescr," . " EvFinalFirstPhase," . " EvMaxTeamPerson," . " EvFinalPrintHead," . " EvMatchMode," . " EvProgr," . " EvShootOff," . " GrPhase Phase," . " IF(EvFinalFirstPhase=48 || EvFinalFirstPhase=24,GrPosition2, GrPosition) Position," . " TfTournament Tournament," . " TfTeam Team," . " TfSubTeam SubTeam," . " TfMatchNo MatchNo," . " TeRank QualRank," . " TeRankFinal FinRank," . " TeScore QualScore, " . " TfWinLose Winner, " . " TfDateTime LastUpdated, " . " CONCAT(CoName, IF(TfSubTeam>'1',CONCAT(' (',TfSubTeam,')'),'')) as CountryName," . " CoCode as CountryCode," . " TfScore AS Score," . " TfSetScore as SetScore," . " TfTie Tie," . " TfTieBreak TieBreak," . " TfStatus Status, " . " TfSetPoints SetPoints, " . " TfArrowstring arrowstring, TfLive LiveFlag," . " FSTarget Target," . " TarId, TarDescr, EvDistance as Distance, EvTargetSize as TargetSize, " . "\tEvFinEnds, EvFinArrows, EvFinSO, EvElimEnds, EvElimArrows, EvElimSO, " . " DATE_FORMAT(FSScheduledDate,'" . get_text('DateFmtDB') . "') as ScheduledDate," . " DATE_FORMAT(FSScheduledTime,'" . get_text('TimeFmt') . "') AS ScheduledTime " . " FROM TeamFinals " . " INNER JOIN Events ON TfEvent=EvCode AND TfTournament=EvTournament AND EvTeamEvent=1 AND EvFinalFirstPhase!=0 " . " INNER JOIN Grids ON TfMatchNo=GrMatchNo " . " INNER JOIN Targets ON EvFinalTargetType=TarId " . " LEFT JOIN Teams ON TfTeam=TeCoId AND TfSubTeam=TeSubTeam AND TfEvent=TeEvent AND TfTournament=TeTournament AND TeFinEvent=1 " . " LEFT JOIN Countries ON TfTeam=CoId AND TfTournament=CoTournament " . " LEFT JOIN FinSchedule ON TfEvent=FSEvent AND TfMatchNo=FSMatchNo AND TfTournament=FSTournament AND FSTeamEvent='1' " . " WHERE TfMatchNo%2=0 AND TfTournament = " . $this->tournament . " " . $filter . ") f1 inner join (" . "select" . " EvCode OppEvent," . " IF(EvFinalFirstPhase=48 || EvFinalFirstPhase=24,GrPosition2, GrPosition) OppPosition," . " TfTournament OppTournament," . " TfTeam OppTeam," . " TfSubTeam OppSubTeam," . " TfMatchNo OppMatchNo," . " TeRank OppQualRank," . " TeRankFinal OppFinRank," . " TeScore OppQualScore, " . " TfWinLose OppWinner, " . " TfDateTime OppLastUpdated, " . " CONCAT(CoName, IF(TfSubTeam>'1',CONCAT(' (',TfSubTeam,')'),'')) as OppCountryName," . " CoCode as OppCountryCode," . " TfScore AS OppScore," . " TfSetScore as OppSetScore," . " TfTie OppTie," . " TfTieBreak OppTieBreak," . " TfStatus OppStatus, " . " TfSetPoints OppSetPoints, " . " TfArrowstring oppArrowstring, " . " FSTarget OppTarget " . " FROM TeamFinals " . " INNER JOIN Events ON TfEvent=EvCode AND TfTournament=EvTournament AND EvTeamEvent=1 AND EvFinalFirstPhase!=0 " . " INNER JOIN Grids ON TfMatchNo=GrMatchNo " . " LEFT JOIN Teams ON TfTeam=TeCoId AND TfSubTeam=TeSubTeam AND TfEvent=TeEvent AND TfTournament=TeTournament AND TeFinEvent=1 " . " LEFT JOIN Countries ON TfTeam=CoId AND TfTournament=CoTournament " . " LEFT JOIN FinSchedule ON TfEvent=FSEvent AND TfMatchNo=FSMatchNo AND TfTournament=FSTournament AND FSTeamEvent='1' " . " WHERE TfMatchNo%2=1 AND TfTournament = " . $this->tournament . " " . $filter . ") f2 on Tournament=OppTournament and Event=OppEvent and MatchNo=OppMatchNo-1 " . ($this->EnIdFound ? ' where Event in ("' . implode('","', $this->EnIdFound) . '") AND (Team=' . StrSafe_DB($this->TeamFound) . ' or oppTeam=' . StrSafe_DB($this->TeamFound) . ')' : '') . (empty($this->opts['coid']) ? '' : " where (Team=" . intval($this->opts['coid']) . " or OppTeam=" . intval($this->opts['coid']) . ") ") . (isset($this->opts['matchno']) ? " where MatchNo=" . intval($this->opts['matchno']) . ' ' : '') . (isset($this->opts['liveFlag']) ? " where LiveFlag=1 " : '') . " ORDER BY EvProgr ASC, event, Phase DESC, MatchNo ASC ";
     $r = safe_r_sql($q);
     $this->data['meta']['title'] = get_text('BracketsSq');
     $this->data['meta']['lastUpdate'] = '0000-00-00 00:00:00';
     $this->data['meta']['fields'] = array('scheduledDate' => get_text('Date', 'Tournament'), 'scheduledTime' => get_text('Time', 'Tournament'), 'winner' => get_text('Winner'), 'matchNo' => get_text('MatchNo'), 'bib' => get_text('Code', 'Tournament'), 'target' => get_text('Target'), 'athlete' => get_text('Athlete'), 'familyname' => get_text('FamilyName', 'Tournament'), 'givenname' => get_text('Name', 'Tournament'), 'countryCode' => '', 'countryName' => get_text('Country'), 'countryIocCode' => '', 'qualRank' => get_text('RankScoreShort'), 'finRank' => get_text('FinalRank', 'Tournament'), 'qualscore' => get_text('TotalShort', 'Tournament'), 'score' => get_text('TotalShort', 'Tournament'), 'setScore' => get_text('SetTotal', 'Tournament'), 'setPoints' => get_text('SetPoints', 'Tournament'), 'tie' => 'S.O.', 'arrowstring' => get_text('Arrows', 'Tournament'), 'tiebreak' => get_text('TieArrows'), 'status' => get_text('Status', 'Tournament'), 'oppMatchNo' => get_text('MatchNo'), 'oppBib' => get_text('Code', 'Tournament'), 'oppTarget' => get_text('Target'), 'oppAthlete' => get_text('Athlete'), 'oppFamilyname' => get_text('FamilyName', 'Tournament'), 'oppGivenname' => get_text('Name', 'Tournament'), 'oppCountryCode' => '', 'oppCountryName' => get_text('Country'), 'oppCountryIocCode' => '', 'oppQualRank' => get_text('RankScoreShort'), 'oppFinRank' => get_text('FinalRank', 'Tournament'), 'oppQualScore' => get_text('TotalShort', 'Tournament'), 'oppScore' => get_text('TotalShort', 'Tournament'), 'oppSetScore' => get_text('SetTotal', 'Tournament'), 'oppSetPoints' => get_text('SetPoints', 'Tournament'), 'oppTie' => 'S.O.', 'oppArrowstring' => get_text('Arrows', 'Tournament'), 'oppTiebreak' => get_text('TieArrows'), 'oppStatus' => get_text('Status', 'Tournament'));
     while ($myRow = safe_fetch($r)) {
         if ($myRow->LastUpdated > $this->data['meta']['lastUpdate']) {
             $this->data['meta']['lastUpdate'] = $myRow->LastUpdated;
         }
         if ($myRow->OppLastUpdated > $this->data['meta']['lastUpdate']) {
             $this->data['meta']['lastUpdate'] = $myRow->OppLastUpdated;
         }
         if (!isset($this->data['sections'][$myRow->Event]['meta'])) {
             $this->data['sections'][$myRow->Event]['meta'] = array('phase' => get_text('Phase'), 'eventName' => get_text($myRow->EventDescr, '', '', true), 'firstPhase' => $myRow->EvFinalFirstPhase, 'printHead' => get_text($myRow->EvFinalPrintHead, '', '', true), 'maxTeamPerson' => $myRow->EvMaxTeamPerson, 'matchMode' => $myRow->EvMatchMode, 'order' => $myRow->EvProgr, 'shootOffSolved' => $myRow->EvShootOff, 'finEnds' => $myRow->EvFinEnds, 'finArrows' => $myRow->EvFinArrows, 'finSO' => $myRow->EvFinSO, 'elimEnds' => $myRow->EvElimEnds, 'elimArrows' => $myRow->EvElimArrows, 'elimSO' => $myRow->EvElimSO, 'targetType' => $myRow->TarDescr, 'targetTypeId' => $myRow->TarId, 'targetSize' => $myRow->TargetSize, 'distance' => $myRow->Distance);
             $this->data['sections'][$myRow->Event]['phases'] = array();
         }
         if (!isset($this->data['sections'][$myRow->Event]['phases'][$myRow->Phase])) {
             $this->data['sections'][$myRow->Event]['phases'][$myRow->Phase]['meta'] = array('phaseName' => get_text($myRow->Phase . "_Phase"));
             $this->data['sections'][$myRow->Event]['phases'][$myRow->Phase]['items'] = array();
         }
         $tmpArr = array();
         $oppArr = array();
         if ($myRow->TieBreak) {
             for ($countArr = 0; $countArr < strlen(trim($myRow->TieBreak)); $countArr += $myRow->EvMaxTeamPerson) {
                 $tmp = ValutaArrowString(substr(trim($myRow->TieBreak), $countArr, $myRow->EvMaxTeamPerson));
                 if (!ctype_upper(trim($myRow->TieBreak))) {
                     $tmp .= "*";
                 }
                 $tmpArr[] = $tmp;
             }
             //debug_svela($myRow);
         }
         if ($myRow->OppTieBreak) {
             for ($countArr = 0; $countArr < strlen(trim($myRow->OppTieBreak)); $countArr += $myRow->EvMaxTeamPerson) {
                 $tmp = ValutaArrowString(substr(trim($myRow->OppTieBreak), $countArr, $myRow->EvMaxTeamPerson));
                 if (!ctype_upper(trim($myRow->OppTieBreak))) {
                     $tmp .= "*";
                 }
                 $oppArr[] = $tmp;
             }
         }
         $this->data['sections'][$myRow->Event]['phases'][$myRow->Phase]['items'][] = array('liveFlag' => $myRow->LiveFlag, 'scheduledDate' => $myRow->ScheduledDate, 'scheduledTime' => $myRow->ScheduledTime, 'matchNo' => $myRow->MatchNo, 'target' => $myRow->Target, 'countryCode' => $myRow->CountryCode, 'countryName' => $myRow->CountryName, 'qualRank' => $myRow->QualRank, 'finRank' => $myRow->FinRank, 'qualScore' => $myRow->QualScore, 'winner' => $myRow->Winner, 'score' => $myRow->Score, 'setScore' => $myRow->SetScore, 'setPoints' => $myRow->SetPoints, 'arrowstring' => $myRow->arrowstring, 'tie' => $myRow->Tie, 'tiebreak' => $myRow->TieBreak, 'tiebreakDecoded' => implode(',', $tmpArr), 'status' => $myRow->Status, 'position' => $myRow->QualRank ? $myRow->QualRank : $myRow->Position, 'teamId' => $myRow->Team, 'subTeam' => $myRow->SubTeam, 'oppMatchNo' => $myRow->OppMatchNo, 'oppTarget' => $myRow->OppTarget, 'oppCountryCode' => $myRow->OppCountryCode, 'oppCountryName' => $myRow->OppCountryName, 'oppQualRank' => $myRow->OppQualRank, 'oppFinRank' => $myRow->OppFinRank, 'oppQualScore' => $myRow->OppQualScore, 'oppWinner' => $myRow->OppWinner, 'oppScore' => $myRow->OppScore, 'oppSetScore' => $myRow->OppSetScore, 'oppSetPoints' => $myRow->OppSetPoints, 'oppArrowstring' => $myRow->oppArrowstring, 'oppTie' => $myRow->OppTie, 'oppTiebreak' => $myRow->OppTieBreak, 'oppTiebreakDecoded' => implode(',', $oppArr), 'oppStatus' => $myRow->OppStatus, 'oppPosition' => $myRow->OppQualRank ? $myRow->OppQualRank : $myRow->OppPosition, 'oppTeamId' => $myRow->OppTeam, 'oppSubTeam' => $myRow->OppSubTeam);
     }
 }