コード例 #1
0
 function getMatches($numberofmatches, $projectid, $teamid, $selectiondate, $ordering = 'DESC', $round = 0, $matchstatus, $bUseFavteams)
 {
     $result = array();
     $query_SELECT = ' SELECT matches.*, r.roundcode as roundcode, r.id as roundid, r.name as roundname, "dummy", ' . ' jl.name AS project_name, ' . ' t1.name AS home_name, ' . ' t1.middle_name AS home_middlename, ' . ' t1.short_name AS home_shortname, ' . ' t2.name AS away_name, ' . ' t2.middle_name AS away_middlename, ' . ' t2.short_name AS away_shortname, ' . ' c1.logo_small AS home_icon, ' . ' c2.logo_small AS away_icon, ' . ' t1.id AS team1_id, ' . ' t2.id AS team2_id, ' . ' jl.id AS project_id, ' . ' matches.id AS match_id, ' . ' pt1.division_id ';
     $query_FROM = ' FROM #__joomleague_match AS matches ' . ' INNER JOIN #__joomleague_project_team AS pt1 ON pt1.id = matches.projectteam1_id ' . ' INNER JOIN #__joomleague_project_team AS pt2 ON pt2.id = matches.projectteam2_id ' . ' INNER JOIN #__joomleague_team AS t1 ON pt1.team_id = t1.id ' . ' INNER JOIN #__joomleague_team AS t2 ON pt2.team_id = t2.id ' . ' INNER JOIN #__joomleague_round AS r ON matches.round_id = r.id ' . ' INNER JOIN #__joomleague_project AS jl ON pt1.project_id = jl.id ' . ' INNER JOIN #__joomleague_club AS c1 ON c1.id = t1.club_id ' . ' INNER JOIN #__joomleague_club AS c2 ON c2.id = t2.club_id ';
     $query_WHERE = " WHERE matches.published=1 ";
     switch ($matchstatus) {
         case 0:
             $query_WHERE .= " AND matches.match_date >=  STR_TO_DATE('" . $selectiondate . "', '%Y-%m-%d-%H:%i') ";
             $query_WHERE .= " AND ( matches.match_date + INTERVAL (jl.game_regular_time+jl.halftime*(jl.game_parts-1)) MINUTE ) < NOW() ";
             break;
         case 1:
             $query_WHERE .= " AND ( matches.match_date BETWEEN  STR_TO_DATE('" . $selectiondate . "', '%Y-%m-%d-%H:%i') AND NOW() ) ";
             break;
         case 2:
             $query_WHERE .= " AND ( matches.match_date + INTERVAL (jl.game_regular_time+jl.halftime*(jl.game_parts-1)) MINUTE ) >= NOW() ";
             break;
         case 3:
             $query_WHERE .= " AND matches.match_date >= NOW() ";
             break;
         case 4:
             $query_WHERE .= " AND matches.match_date >= STR_TO_DATE('" . $selectiondate . "', '%Y-%m-%d-%H:%i')";
             break;
     }
     if ($round != 0) {
         $query_WHERE .= " AND r.id = {$round}";
     }
     if ($projectid != -1 && $projectid != '') {
         if (count($projectid) > 1 || is_array($projectid)) {
             $projects = implode(",", $projectid);
         } else {
             $projects = $projectid;
         }
         $query_WHERE .= " AND pt1.project_id IN (" . $projects . ")";
     }
     if ($teamid != -1 && $teamid != '' && is_array($teamid)) {
         if ($teamid[0] != "") {
             if (count($teamid) > 1 || is_array($teamid)) {
                 $teams = implode(",", $teamid);
             } else {
                 $teams = $teamid;
             }
             $query_WHERE .= " AND (pt1.team_id IN (" . $teams . ")";
             $query_WHERE .= " OR pt2.team_id IN (" . $teams . "))";
         }
     }
     if ($bUseFavteams) {
         $teams = modJoomleagueTickerHelper::getFavs($projectid);
         $query_WHERE .= " AND (pt1.team_id IN (" . $teams . ")";
         $query_WHERE .= " OR pt2.team_id IN (" . $teams . "))";
     }
     $query_END = " ORDER BY matches.match_date {$ordering}, matches.match_number\n\t\t\t\t\t\t\t\tDESC LIMIT " . $numberofmatches;
     $database = JFactory::getDBO();
     $database->setQuery($query_SELECT . $query_FROM . $query_WHERE . $query_END);
     $result = $database->loadObjectList();
     return $result;
 }
コード例 #2
0
$mode = $params->def("mode");
$resultsmatch = $params->get('results');
$round = $params->get('round');
$ordering = $params->get('ordering');
$matchstatus = $params->get('matchstatus');
$selectiondate = modJoomleagueTickerHelper::getSelectionDate($params->get('daysback'), $params->get('timezone', 'Europe/Amsterdam'));
$bUseFav = $params->get('usefavteams');
$matches = modJoomleagueTickerHelper::getMatches($resultsmatch, $params->get('p'), $params->get('teamid'), $selectiondate, $ordering, $round, $matchstatus, $bUseFav);
if (empty($matches) || count($matches) == 0) {
    echo JText::_("No matches");
    return;
} else {
    $timezone = new DateTimeZone($params->get('timezone', 'Europe/Amsterdam'));
    $utc = new DateTime();
    $offset = $timezone->getOffset($utc);
    $date = modJoomleagueTickerHelper::getCorrectDateFormat($params->get('dateformat'), $matches, $offset);
    if (count($matches) < $resultsmatch) {
        $resultsmatch = count($matches);
    }
    $tickerpause = $params->def("tickerpause");
    $scrollspeed = $params->def("scrollspeed");
    $scrollpause = $params->def("scrollpause");
    switch ($mode) {
        case 'T':
            include dirname(__FILE__) . DS . 'js' . DS . 'ticker.js';
            break;
        case 'V':
            include dirname(__FILE__) . DS . 'js' . DS . 'qscrollerv.js';
            $document->addScript(JURI::base() . 'modules/mod_joomleague_ticker/js/qscroller.js');
            break;
        case 'H':