add_lang_ext('football/football', 'football'); $user->add_lang_ext('football/football', 'info_acp_matches'); $this->root_path = $phpbb_root_path . 'ext/football/football/'; $this->config = $config; $this->request = $request; $this->phpbb_root_path = $phpbb_root_path; $this->phpbb_admin_path = $phpbb_admin_path; $this->php_ext = $phpEx; if(!function_exists('season_info')) { include($this->root_path . 'includes/functions.' . $this->php_ext); } if (!defined('FOOTB_SEASONS')) { include($this->root_path . 'includes/constants.' . $this->php_ext); } } function main($id, $mode) { global $db, $auth, $phpbb_container, $phpbb_admin_path, $league_info; global $template, $user, $config, $phpbb_extension_manager, $request, $phpbb_root_path, $phpEx; $helper = $phpbb_container->get('controller.helper'); $this->tpl_name = 'acp_football_matches'; $this->page_title = 'ACP_FOOTBALL_MATCHES_MANAGE'; $form_key = 'acp_football_matches'; add_form_key($form_key); include_once($this->phpbb_root_path . 'includes/functions_user.' . $this->php_ext); // Check and set some common vars $action = (isset($_POST['add'])) ? 'add' : $this->request->variable('action', ''); $edit = $this->request->variable('edit', 0); $season = $this->request->variable('s', 0); $league = $this->request->variable('l', 0); $matchday = $this->request->variable('m', 0); $match_number = $this->request->variable('g', 0); $update = (isset($_POST['update'])) ? true : false; // Clear some vars $match_row = array(); $error = array(); // Grab current season if (!$season) { $season = curr_season(); } // Grab basic data for select season if ($season) { $sql = 'SELECT * FROM ' . FOOTB_SEASONS . ' ORDER BY season DESC'; $result = $db->sql_query($sql); $season_options = ''; while ($row = $db->sql_fetchrow($result)) { $selected = ($season && $row['season'] == $season) ? ' selected="selected"' : ''; $season_options .= ''; if ($selected <> '') { $season_name = $row['season_name_short']; } } $db->sql_freeresult($result); } else { trigger_error($user->lang['NO_SEASON'] . adm_back_link($this->u_action), E_USER_WARNING); } // Grab current league if (!$league) { $league = current_league($season, false); } // Grab basic data for select league if ($league) { $sql = 'SELECT * FROM ' . FOOTB_LEAGUES . " WHERE season = $season ORDER BY league ASC"; $result = $db->sql_query($sql); $league_options = ''; while ($row = $db->sql_fetchrow($result)) { $selected = ($league && $row['league'] == $league) ? ' selected="selected"' : ''; $league_options .= ''; if ($selected <> '') { $league_info = $row; $league_matchdays = $row['matchdays']; $matches_matchday = $row['matches_on_matchday']; $league_name = $row['league_name']; $league_type = $row['league_type']; $ko_league = ($row['league_type'] == LEAGUE_KO) ? true : false; } } $db->sql_freeresult($result); } else { trigger_error(sprintf($user->lang['NO_LEAGUE'], $season) . adm_back_link($this->u_action . "&s=$season"), E_USER_WARNING); } // Grab basic data for select matchday if (!$matchday) { $matchday = curr_matchday($season, $league); } $sql = 'SELECT *, UNIX_TIMESTAMP(delivery_date) AS unix_delivery_date FROM ' . FOOTB_MATCHDAYS . " WHERE season = $season AND league = $league ORDER BY matchday ASC"; $result = $db->sql_query($sql); $delivery2 = ''; $delivery3 = ''; $matchday_options = ''; while ($row = $db->sql_fetchrow($result)) { $selected = ($matchday && $row['matchday'] == $matchday) ? ' selected="selected"' : ''; $day_name = (strlen($row['matchday_name']) > 0) ? $row['matchday_name'] : $row['matchday'] . '. ' . sprintf($user->lang['MATCHDAY']); $matchday_options .= ''; if ($selected <> '') { $unix_delivery_date = $row['unix_delivery_date']; $delivery2 = $row['delivery_date_2']; $delivery3 = $row['delivery_date_3']; $matchday_name = $day_name; if ($matches_matchday) { $matches_on_matchday = $matches_matchday; } else { $matches_on_matchday = $row['matches']; } } } $db->sql_freeresult($result); if ($matchday_options == '') { trigger_error(sprintf($user->lang['NO_MATCHDAY'], $league_name, $season) . adm_back_link($this->u_action . "&s=$season&l=$league"), E_USER_WARNING); } // Grab basic data for match, if match is set and exists if ($match_number) { $sql = 'SELECT * FROM ' . FOOTB_MATCHES . " WHERE season = $season AND league = $league AND match_no = $match_number"; $result = $db->sql_query($sql); $match_row = $db->sql_fetchrow($result); $db->sql_freeresult($result); } // Which page? switch ($action) { case 'delete': if (!$season) { trigger_error($user->lang['NO_SEASON'] . adm_back_link($this->u_action), E_USER_WARNING); } if (!$league) { trigger_error($user->lang['NO_LEAGUE'] . adm_back_link($this->u_action . "&s=$season"), E_USER_WARNING); } if (!$matchday) { trigger_error($user->lang['NO_MATCHDAY'] . adm_back_link($this->u_action . "&s=$season&l=$league"), E_USER_WARNING); } if (confirm_box(true)) { $error = ''; if (!$auth->acl_get('a_football_delete')) { trigger_error($user->lang['NO_AUTH_OPERATION'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday"), E_USER_WARNING); } if ($user->data['user_type'] != USER_FOUNDER && $this->config['football_founder_delete']) { trigger_error($user->lang['MATCHES_NO_DELETE'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday"), E_USER_WARNING); } // Delete match $sql = 'DELETE FROM ' . FOOTB_MATCHES . " WHERE season = $season AND league = $league AND match_no = $match_number"; $db->sql_query($sql); // Delete bets $sql = 'DELETE FROM ' . FOOTB_BETS . " WHERE season = $season AND league = $league AND match_no = $match_number"; $db->sql_query($sql); trigger_error($user->lang['MATCH_DELETED'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday")); } else { confirm_box(false, sprintf($user->lang['MATCH_CONFIRM_DELETE'], $match_row['match_no'], $league_name, $season), build_hidden_fields(array( 's' => $season, 'l' => $league, 'm' => $matchday, 'g' => $match_number, 'mode' => $mode, 'action' => $action)) ); } break; case 'add': $sql = "SELECT DISTINCT user_id FROM " . FOOTB_BETS . " WHERE season = $season AND league = $league"; $result = $db->sql_query($sql); $rows_users = $db->sql_fetchrowset($result); $db->sql_freeresult($result); $sql = "SELECT matchday, matches AS matches_matchday, delivery_date FROM " . FOOTB_MATCHDAYS . " WHERE season = $season AND league = $league ORDER BY matchday ASC"; $result = $db->sql_query($sql); $rows_matchdays = $db->sql_fetchrowset($result); $existing_matchdays = sizeof($rows_matchdays); $db->sql_freeresult($result); if ($existing_matchdays < $league_matchdays) { trigger_error($user->lang['MATCHDAY_MISSED'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday")); } else { $current_match = 0; $count_updates = 0; $sql_betary = array(); foreach ($rows_matchdays as $current_matchday) { if ($matches_matchday) { $matches_on_matchday = $matches_matchday; } else { $matches_on_matchday = $current_matchday['matches_matchday']; } for ( $i = 1; $i <= $matches_on_matchday; $i++ ) { $current_match++; $sql_ary = array( 'season' => (int) $season, 'league' => (int) $league, 'match_no' => (int) $current_match, 'team_id_home' => 0, 'team_id_guest' => 0, 'goals_home' => '', 'goals_guest' => '', 'matchday' => $current_matchday['matchday'], 'status' => 0, 'odd_1' => 0, 'odd_x' => 0, 'odd_2' => 0, 'rating' => 0, 'match_datetime' => $current_matchday['delivery_date'], 'group_id' => '', 'formula_home' => '', 'formula_guest' => '', 'ko_match' => 0, 'goals_overtime_home' => '', 'goals_overtime_guest' => '', ); $sql = 'INSERT IGNORE INTO ' . FOOTB_MATCHES . ' ' . $db->sql_build_array('INSERT', $sql_ary); $db->sql_query($sql); if ($db->sql_affectedrows()) { $count_updates++; foreach ($rows_users as $current_user) { $sql_betary[] = array( 'season' => (int) $season, 'league' => (int) $league, 'match_no' => (int) $current_match, 'user_id' => $current_user['user_id'], 'goals_home' => '', 'goals_guest' => '', 'bet_time' => 0, ); } } } } if (sizeof($sql_betary)) { $db->sql_multi_insert(FOOTB_BETS, $sql_betary); } $message = ($count_updates > 1) ? 'MATCHES_CREATED' : 'MATCH_CREATED'; trigger_error(sprintf($user->lang[$message],$count_updates) . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday")); } break; case 'edit': $data = array(); $error_msg = array(); if (!sizeof($error)) { if ($action == 'edit' && !$match_number) { trigger_error($user->lang['NO_MATCH'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday"), E_USER_WARNING); } $data = array( 'mday_day' => 0, 'mday_month' => 0, 'mday_year' => 0, 'mday_hour' => 0, 'mday_min' => 0, ); if ($match_row['match_datetime']) { list($data['mday_date'], $data['mday_time']) = explode(' ', $match_row['match_datetime']); list($data['mday_year'], $data['mday_month'], $data['mday_day']) = explode('-', $data['mday_date']); list($data['mday_hour'], $data['mday_min'], $data['mday_sec']) = explode(':', $data['mday_time']); } $data['mday_day'] = $this->request->variable('mday_day', $data['mday_day']); $data['mday_month'] = $this->request->variable('mday_month', $data['mday_month']); $data['mday_year'] = $this->request->variable('mday_year', $data['mday_year']); $data['mday_hour'] = $this->request->variable('mday_hour', $data['mday_hour']); $data['mday_min'] = $this->request->variable('mday_min', $data['mday_min']); $data['mday_sec'] = '00'; $data['mday_date'] = sprintf('%02d-%02d-%04d', $data['mday_day'], $data['mday_month'], $data['mday_year']); $data['mday_time'] = sprintf('%02d:%02d:%02d', $data['mday_hour'], $data['mday_min'], $data['mday_sec']); $match_row['match_datetime'] = sprintf('%04d-%02d-%02d', $data['mday_year'], $data['mday_month'], $data['mday_day']) . ' ' . $data['mday_time']; // Did we submit? if ($update) { if (!check_form_key($form_key)) { trigger_error($user->lang['FORM_INVALID'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday"), E_USER_WARNING); } $match_row['status'] = utf8_normalize_nfc($this->request->variable('match_status', '', true)); $match_row['odd_1'] = round($this->request->variable('odd_1', $match_row['odd_1']),2); $match_row['odd_x'] = round($this->request->variable('odd_x', $match_row['odd_x']),2); $match_row['odd_2'] = round($this->request->variable('odd_2', $match_row['odd_2']),2); $match_row['rating'] = round($this->request->variable('rating', $match_row['rating']),2); $match_row['team_id_home'] = utf8_normalize_nfc($this->request->variable('team_home', '', true)); $match_row['team_id_guest'] = utf8_normalize_nfc($this->request->variable('team_guest', '', true)); $match_row['formula_home'] = utf8_normalize_nfc($this->request->variable('formula_home', '', true)); $match_row['formula_guest'] = utf8_normalize_nfc($this->request->variable('formula_guest', '', true)); $match_row['ko_match'] = $this->request->variable('match_ko', false); $match_row['group_id'] = ($this->request->variable('group_match', false)) ? utf8_normalize_nfc($this->request->variable('match_group', '', true)) : ''; $match_row['show_table'] = $this->request->variable('show_table', false); if ($match_row['team_id_home'] <> '') { $team_arr = explode(';', $match_row['team_id_home']); $match_row['team_id_home'] = $team_arr[1]; } if ($match_row['team_id_guest'] <> '') { $team_arr = explode(';', $match_row['team_id_guest']); $match_row['team_id_guest'] = $team_arr[1]; } if ($data['mday_day'] <> '--' and $data['mday_month'] <> '--' and $data['mday_year'] <> '--') { $match_timestamp = mktime($data['mday_hour'], $data['mday_min'], 0, $data['mday_month'], $data['mday_day'], $data['mday_year']); $local_board_time = time() + ($this->config['football_time_shift'] * 3600); if ($match_timestamp > $local_board_time AND $match_row['status'] < 3 AND $league_info['bet_in_time'] == 1) { // Bet in time and match moved to future $match_row['status'] = 0; } if ($match_timestamp <= $local_board_time AND $match_row['status'] == 0 AND $league_info['bet_in_time'] == 1) { // Bet in time and match moved to past $match_row['status'] = 1; } if ($match_timestamp < $unix_delivery_date AND $match_row['status'] == 0 AND !$league_info['bet_in_time']) { // No bet in time and match moved before delivery $error[] = $user->lang['MATCH_BEFORE_DELIVERY']; } } else { $error[] = $user->lang['NO_MATCH_BEGIN']; } if (!sizeof($error)) { $sql_ary = array( 'season' => (int) $season, 'league' => (int) $league, 'match_no' => (int) $match_number, 'team_id_home' => (is_numeric($match_row['team_id_home'])) ? $match_row['team_id_home'] : 0, 'team_id_guest' => (is_numeric($match_row['team_id_guest'])) ? $match_row['team_id_guest'] : 0, 'goals_home' => (is_numeric($match_row['goals_home'])) ? $match_row['goals_home'] : '', 'goals_guest' => (is_numeric($match_row['goals_guest'])) ? $match_row['goals_guest'] : '', 'matchday' => $match_row['matchday'], 'status' => (is_numeric($match_row['status'])) ? $match_row['status'] : 0, 'odd_1' => (is_numeric($match_row['odd_1'])) ? $match_row['odd_1'] : 0, 'odd_x' => (is_numeric($match_row['odd_x'])) ? $match_row['odd_x'] : 0, 'odd_2' => (is_numeric($match_row['odd_2'])) ? $match_row['odd_2'] : 0, 'rating' => (is_numeric($match_row['rating'])) ? $match_row['rating'] : 0, 'match_datetime' => $match_row['match_datetime'], 'group_id' => strlen($match_row['group_id']) ? $match_row['group_id'] : '', 'formula_home' => strlen($match_row['formula_home']) ? $match_row['formula_home'] : '', 'formula_guest' => strlen($match_row['formula_guest']) ? $match_row['formula_guest'] : '', 'ko_match' => $match_row['ko_match'] ? $match_row['ko_match'] : 0, 'goals_overtime_home' => (is_numeric($match_row['goals_overtime_home'])) ? $match_row['goals_overtime_home'] : '', 'goals_overtime_guest' => (is_numeric($match_row['goals_overtime_guest'])) ? $match_row['goals_overtime_guest'] : '', ); $var_ary = array( 'mday_date' => array('date', false), ); if (!($error_vals = validate_data($data, $var_ary))) { $sql = 'UPDATE ' . FOOTB_MATCHES . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE season = $season AND league = $league AND match_no = $match_number"; $db->sql_query($sql); if ($match_timestamp > $local_board_time AND $match_row['status'] == 0 AND $league_info['bet_in_time'] == 1) { // Bet in time and match (re)open so reopen matchday and set first delivery $sql_ary = array( 'status' => 0, 'delivery_date' => first_delivery($season, $league, $matchday), ); $sql = 'UPDATE ' . FOOTB_MATCHDAYS . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE season = $season AND league = $league AND matchday = $matchday"; $db->sql_query($sql); } if ($match_timestamp <= $local_board_time AND $match_row['status'] <= 1 AND $league_info['bet_in_time'] == 1) { // Bet in time and match is closed so reopen matchday and set first delivery $first_delivery = first_delivery($season, $league, $matchday); if ($first_delivery <> '') { // Matchday has open matches, so set matchday status = 0 and first delivery $sql_ary = array( 'status' => 0, 'delivery_date' => first_delivery($season, $league, $matchday), ); $sql = 'UPDATE ' . FOOTB_MATCHDAYS . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE season = $season AND league = $league AND matchday = $matchday"; $db->sql_query($sql); } else { // Matchday has no open match, so set matchday status = 1 $sql_ary = array( 'status' => 1, ); $sql = 'UPDATE ' . FOOTB_MATCHDAYS . ' SET ' . $db->sql_build_array('UPDATE', $sql_ary) . " WHERE season = $season AND league = $league AND matchday = $matchday"; $db->sql_query($sql); } } trigger_error($user->lang['MATCH_UPDATED'] . adm_back_link($this->u_action . "&s=$season&l=$league&m=$matchday")); } else { foreach ($error_vals as $error_val) { $error_msg[] = $user->lang[$error_val]; } $error[] = $user->lang['MATCH_UPDATE_FAILED']; $error = array_merge($error, $error_msg); } } } } $s_matchday_day_options = ''; for ($i = 1; $i < 32; $i++) { $selected = ($i == $data['mday_day']) ? ' selected="selected"' : ''; $s_matchday_day_options .= ""; } $s_matchday_month_options = ''; for ($i = 1; $i < 13; $i++) { $selected = ($i == $data['mday_month']) ? ' selected="selected"' : ''; $s_matchday_month_options .= ""; } $s_matchday_year_options = ''; $s_matchday_year_options = ''; for ($i = $season - 1 ; $i <= $season; $i++) { $selected = ($i == $data['mday_year']) ? ' selected="selected"' : ''; $s_matchday_year_options .= ""; } $s_matchday_hour_options = ''; if (!$data['mday_hour']) { $data['mday_hour'] = 0; } for ($i = 0; $i < 24; $i++) { $selected = ($i == $data['mday_hour']) ? ' selected="selected"' : ''; $s_matchday_hour_options .= ""; } $s_matchday_min_options = ''; if (!$data['mday_min']) { $data['mday_min'] = 0; } for ($i = 0; $i < 12; $i++) { $selected = (($i * 5) == $data['mday_min']) ? ' selected="selected"' : ''; $s_matchday_min_options .= ""; } // Selection status $edit_status = false; if ($match_row['status'] < 1) { $edit_status = true; $selected_status = ($match_row['status'] == 0) ? ' selected="selected"' : ''; $status_options = ''; if ($delivery2 != '') { $selected_status = ($match_row['status'] == -1) ? ' selected="selected"' : ''; $status_options .= ''; if ($delivery3 != '') { $selected_status = ($match_row['status'] == -2) ? ' selected="selected"' : ''; $status_options .= ''; } } } else { $status_options = ''; } // Grab for teams for selection if ($ko_league) { $where_round = " AND matchday >= $matchday"; } else { $where_round = ""; } $sql = 'SELECT * FROM ' . FOOTB_TEAMS . " WHERE season = $season AND league = $league $where_round ORDER BY team_name ASC"; $result = $db->sql_query($sql); $team_guest_options = ''; $team_home_options = ''; $match_group = ''; while ($row = $db->sql_fetchrow($result)) { $guest_id = (empty($match_row['team_id_guest'])) ? 0 : $match_row['team_id_guest']; $selected_guest = ($guest_id && $row['team_id'] == $guest_id) ? ' selected="selected"' : ''; if ($row['team_id'] == $guest_id) { $match_group = $row['group_id']; } $team_guest_options .= ''; $home_id = (empty($match_row['team_id_home'])) ? 0 : $match_row['team_id_home']; $selected_home = ($home_id && $row['team_id'] == $home_id) ? ' selected="selected"' : ''; $team_home_options .= ''; } $db->sql_freeresult($result); $u_back = $this->u_action . "&s=$season&l=$league&m=$matchday"; $template->assign_vars(array( 'S_EDIT' => true, 'S_ADD_MATCH' => ($action == 'add') ? true : false, 'S_ERROR' => (sizeof($error)) ? true : false, 'S_KO_LEAGUE' => $ko_league, 'S_EDIT_STATUS' => $edit_status, 'S_VERSION_NO' => $this->config['football_version'], 'ERROR_MSG' => (sizeof($error)) ? implode('
', $error) : '', 'SEASON' => $season, 'SEASON_NAME' => $season_name, 'LEAGUE' => $league, 'LEAGUE_NAME' => $league_name, 'MATCHDAY' => $matchday, 'MATCHDAY_NAME' => $matchday_name, 'MATCH_NUMBER' => $match_number, 'MATCH_STATUS' => $match_row['status'], 'STATUS_OPTIONS' => $status_options, 'S_GROUP_CHECKED' => (strlen($match_row['group_id']) > 0) ? true : false, 'MATCH_GROUP' => $match_group, 'S_KO_CHECKED' => $match_row['ko_match'], 'FORMULA_HOME' => $match_row['formula_home'], 'FORMULA_GUEST' => $match_row['formula_guest'], 'FORMULA_HOME' => $match_row['formula_home'], 'TEAM_GUEST_OPTIONS' => $team_guest_options, 'TEAM_HOME_OPTIONS' => $team_home_options, 'S_MATCHDAY_DAY_OPTIONS' => $s_matchday_day_options, 'S_MATCHDAY_MONTH_OPTIONS' => $s_matchday_month_options, 'S_MATCHDAY_YEAR_OPTIONS' => $s_matchday_year_options, 'S_MATCHDAY_HOUR_OPTIONS' => $s_matchday_hour_options, 'S_MATCHDAY_MIN_OPTIONS' => $s_matchday_min_options, 'MATCH_BEGIN_D' => substr($match_row['match_datetime'],8,2), 'MATCH_BEGIN_M' => substr($match_row['match_datetime'],5,2), 'MATCH_BEGIN_Y' => substr($match_row['match_datetime'],0,4), 'MATCH_BEGIN_H' => substr($match_row['match_datetime'],11,2), 'MATCH_BEGIN_MIN' => substr($match_row['match_datetime'],14,2), 'ODD_1' => $match_row['odd_1'], 'ODD_x' => $match_row['odd_x'], 'ODD_2' => $match_row['odd_2'], 'RATING' => $match_row['rating'], 'U_BACK' => $u_back, 'U_ACTION' => "{$this->u_action}&action=$action&s=$season&l=$league&m=$matchday", ) ); return; break; } // Get us all the matches $lang_dates = $user->lang['datetime']; $sql = "SELECT m.match_no, m.status, m.group_id, m.ko_match, m.formula_home, m.formula_guest, m.team_id_home AS home_id, m.team_id_guest AS guest_id, th.team_name AS home_name, tg.team_name AS guest_name, CONCAT( CASE DATE_FORMAT(m.match_datetime,'%w') WHEN 0 THEN '" . $lang_dates['Sun'] . "' WHEN 1 THEN '" . $lang_dates['Mon'] . "' WHEN 2 THEN '" . $lang_dates['Tue'] . "' WHEN 3 THEN '" . $lang_dates['Wed'] . "' WHEN 4 THEN '" . $lang_dates['Thu'] . "' WHEN 5 THEN '" . $lang_dates['Fri'] . "' WHEN 6 THEN '" . $lang_dates['Sat'] . "' ELSE 'Error' END, DATE_FORMAT(m.match_datetime,' %d.%m.%y %H:%i') ) AS match_begin FROM " . FOOTB_MATCHES . ' AS m LEFT JOIN ' . FOOTB_TEAMS . ' AS th ON (th.season = m.season AND th.league = m.league AND th.team_id = m.team_id_home) LEFT JOIN ' . FOOTB_TEAMS . " AS tg ON (tg.season = m.season AND tg.league = m.league AND tg.team_id = m.team_id_guest) WHERE m.season = $season AND m.league = $league AND m.matchday = $matchday ORDER BY m.match_datetime ASC, m.match_no ASC"; $result = $db->sql_query($sql); $rows_matches = $db->sql_fetchrowset($result); $existing_matches = sizeof($rows_matches); $db->sql_freeresult($result); $template->assign_vars(array( 'U_ACTION' => $this->u_action, 'U_FOOTBALL' => $helper->route('football_football_controller',array('side' => 'bet', 's' => $season, 'l' => $league, 'm' => $matchday)), 'S_SEASON' => $season, 'S_LEAGUE' => $league, 'S_KO_LEAGUE' => $ko_league, 'S_MATCHDAY' => $matchday, 'S_SEASON_OPTIONS' => $season_options, 'S_LEAGUE_OPTIONS' => $league_options, 'S_MATCHDAY_OPTIONS'=> $matchday_options, 'S_MATCH_ADD' => ($matches_on_matchday == $existing_matches) ? false:true, 'S_VERSION_NO' => $this->config['football_version'], ) ); // Check if the user is allowed to delete a match. if ($user->data['user_type'] != USER_FOUNDER && $this->config['football_founder_delete']) { $allow_delete = false; } else { $allow_delete = true; } $row_number = 0; foreach ($rows_matches as $row_match) { $row_number++; $row_class = (!($row_number % 2)) ? 'bg1 row_light' : 'bg2 row_dark'; $template->assign_block_vars('match', array( 'ROW_CLASS' => $row_class, 'MATCH_NUMBER' => $row_match['match_no'], 'MATCH_STATUS' => $row_match['status'], 'MATCH_GROUP' => $row_match['group_id'], 'MATCH_KO' => ($row_match['ko_match']) ? 'KO' : '', 'MATCH_BEGIN' => $row_match['match_begin'], 'MATCH_HOME' => ($row_match['home_name'] == '') ? $row_match['formula_home'] : $row_match['home_name'], 'MATCH_GUEST' => ($row_match['guest_name'] == '') ? $row_match['formula_guest'] : $row_match['guest_name'], 'U_EDIT' => "{$this->u_action}&action=edit&s=" . $season . "&l=" .$league . "&m=" .$matchday . "&g=" .$row_match['match_no'], 'U_DELETE' => ($allow_delete) ? "{$this->u_action}&action=delete&s=" . $season . "&l=" . $league . "&m=" . $matchday . "&g=" . $row_match['match_no'] : '', ) ); } } }