function display($cachable = false, $urlparams = array()) { $mainframe = JFactory::getApplication(); $option = JRequest::getCmd('option'); $section = JRequest::getVar('section'); $db = JFactory::getDBO(); $liga = JRequest::getVar('liga'); // Parameter auslesen $config = clm_core::$db->config(); $val = $config->menue; if ($val == 1) { $liga = JRequest::getVar('liga'); } // für kaskadierende Menüführung if ($val == 1 and $liga > 0) { $mainframe->setUserState("{$option}.filter_lid", "{$liga}"); } $filter_order = $mainframe->getUserStateFromRequest("{$option}.filter_order", 'filter_order', 'a.id', 'cmd'); $filter_order_Dir = $mainframe->getUserStateFromRequest("{$option}.filter_order_Dir", 'filter_order_Dir', '', 'word'); $filter_state = $mainframe->getUserStateFromRequest("{$option}.filter_state", 'filter_state', '', 'word'); $filter_sid = $mainframe->getUserStateFromRequest("{$option}.filter_sid", 'filter_sid', 0, 'int'); $filter_lid = $mainframe->getUserStateFromRequest("{$option}.filter_lid", 'filter_lid', 0, 'int'); $filter_catid = $mainframe->getUserStateFromRequest("{$option}.filter_catid", 'filter_catid', 0, 'int'); $search = $mainframe->getUserStateFromRequest("{$option}.search", 'search', '', 'string'); $search = JString::strtolower($search); $limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int'); $limitstart = $mainframe->getUserStateFromRequest($option . '.limitstart', 'limitstart', 0, 'int'); $where = array(); $where[] = ' c.archiv = 0'; if ($filter_catid) { $where[] = 'a.published = ' . (int) $filter_catid; } if ($filter_sid) { $where[] = 'a.sid = ' . (int) $filter_sid; } if ($filter_lid) { $where[] = 'a.liga = ' . (int) $filter_lid; } if ($search) { $where[] = 'LOWER(a.name) LIKE "' . $db->escape('%' . $search . '%') . '"'; } if ($filter_state) { if ($filter_state == 'P') { $where[] = 'a.published = 1'; } else { if ($filter_state == 'U') { $where[] = 'a.published = 0'; } } } $where = count($where) ? ' WHERE ' . implode(' AND ', $where) : ''; if ($filter_order == 'a.id') { $orderby = ' ORDER BY id'; } else { if ($filter_order == 'a.name' or $filter_order == 'a.nr' or $filter_order == 'a.datum' or $filter_order == 'd.name' or $filter_order == 'c.name' or $filter_order == 'a.meldung' or $filter_order == 'a.sl_ok' or $filter_order == 'a.published' or $filter_order == 'a.ordering') { $orderby = ' ORDER BY ' . $filter_order . ' ' . $filter_order_Dir . ', a.id'; } else { $filter_order = 'a.id'; } } // get the total number of records $query = ' SELECT COUNT(*) ' . ' FROM #__clm_runden_termine AS a' . ' LEFT JOIN #__clm_saison AS c ON c.id = a.sid' . $where; $db->setQuery($query); $total = $db->loadResult(); jimport('joomla.html.pagination'); $pageNav = new JPagination($total, $limitstart, $limit); // get the subset (based on limits) of required records $query = "SELECT a.*, c.name AS saison, c.published as sid_pub, u.name AS editor, d.name AS liga_name, " . " d.durchgang, d.runden ,d.rnd as erstellt, d.sl, d.liga_mt " . ' FROM #__clm_runden_termine AS a' . ' LEFT JOIN #__clm_saison AS c ON c.id = a.sid' . ' LEFT JOIN #__clm_liga AS d ON a.liga = d.id' . ' LEFT JOIN #__users AS u ON u.id = a.checked_out' . $where . $orderby; $db->setQuery($query, $pageNav->limitstart, $pageNav->limit); $rows = $db->loadObjectList(); if ($db->getErrorNum()) { echo $db->stderr(); return false; } // Filter // Statusfilter $lists['state'] = JHtml::_('grid.state', $filter_state); // nach Saison sortieren $sql = 'SELECT id, name FROM #__clm_saison WHERE archiv =0'; $db->setQuery($sql); $saisonlist[] = JHtml::_('select.option', '0', JText::_('RUNDE_SAISON_WAE'), 'id', 'name'); $saisonlist = array_merge($saisonlist, $db->loadObjectList()); $lists['sid'] = JHtml::_('select.genericlist', $saisonlist, 'filter_sid', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'id', 'name', intval($filter_sid)); // Nur ausführen wenn Saison published = 1 !! //Zugangscheck $clmAccess = clm_core::$access; if (isset($rows[0]) && $rows[0]->liga_mt == "0") { $mppoint = 'league'; $csection = 'ligen'; } else { $mppoint = 'teamtournament'; $csection = 'mturniere'; } //echo "<br>runden: "; var_dump($rows); die(' section'); if ($clmAccess->access('BE_' . $mppoint . '_edit_round') === false) { JError::raiseWarning(500, JText::_('LIGEN_STAFFEL_TOTAL')); $section = $csection; $mainframe->redirect('index.php?option=' . $option . '§ion=' . $section, $msg, "message"); } elseif ($clmAccess->access('BE_' . $mppoint . '_edit_round') === true) { $where_sl = ''; } else { $where_sl = ' AND a.sl = ' . clm_core::$access->getJid(); } // Ligafilter $sql = 'SELECT a.id AS cid, a.name FROM #__clm_liga as a' . " LEFT JOIN #__clm_saison as s ON s.id = a.sid" . " WHERE s.archiv = 0 " . $where_sl; $db->setQuery($sql); $ligalist[] = JHtml::_('select.option', '0', JText::_('RUNDE_LIGA_WAE'), 'cid', 'name'); $ligalist = array_merge($ligalist, $db->loadObjectList()); $lists['lid'] = JHtml::_('select.genericlist', $ligalist, 'filter_lid', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'cid', 'name', intval($filter_lid)); // Ordering $lists['order_Dir'] = $filter_order_Dir; $lists['order'] = $filter_order; // Suchefilter $lists['search'] = $search; if (isset($rows[0]) && $rows[0]->sl !== clm_core::$access->getJid() and $clmAccess->access('BE_' . $mppoint . '_edit_round') !== true) { JError::raiseWarning(500, JText::_('LIGEN_STAFFEL1')); $section = 'ligen'; $mainframe->redirect('index.php?option=' . $option . '§ion=' . $section, $msg, "message"); } require_once JPATH_COMPONENT . DS . 'views' . DS . 'runden.php'; CLMViewRunden::Runden($rows, $lists, $pageNav, $option); }
function display() { global $mainframe, $option; $section = JRequest::getVar('section'); $db =& JFactory::getDBO(); // Parameter auslesen $config =& JComponentHelper::getParams('com_clm'); $val = $config->get('menue', 1); if ($val == 1) { $liga = JRequest::getVar('liga'); } // für kaskadierende Menüführung if ($val == 1 and $liga > 0) { $mainframe->setUserState("{$option}.filter_lid", "{$liga}"); } $filter_order = $mainframe->getUserStateFromRequest("{$option}.filter_order", 'filter_order', 'a.id', 'cmd'); $filter_order_Dir = $mainframe->getUserStateFromRequest("{$option}.filter_order_Dir", 'filter_order_Dir', '', 'word'); $filter_state = $mainframe->getUserStateFromRequest("{$option}.filter_state", 'filter_state', '', 'word'); $filter_sid = $mainframe->getUserStateFromRequest("{$option}.filter_sid", 'filter_sid', 0, 'int'); $filter_lid = $mainframe->getUserStateFromRequest("{$option}.filter_lid", 'filter_lid', 0, 'int'); $filter_catid = $mainframe->getUserStateFromRequest("{$option}.filter_catid", 'filter_catid', 0, 'int'); $search = $mainframe->getUserStateFromRequest("{$option}.search", 'search', '', 'string'); $search = JString::strtolower($search); $limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int'); $limitstart = $mainframe->getUserStateFromRequest($option . '.limitstart', 'limitstart', 0, 'int'); $where = array(); $where[] = ' c.archiv = 0'; if ($filter_catid) { $where[] = 'a.published = ' . (int) $filter_catid; } if ($filter_sid) { $where[] = 'a.sid = ' . (int) $filter_sid; } if ($filter_lid) { $where[] = 'a.liga = ' . (int) $filter_lid; } if ($search) { $where[] = 'LOWER(a.name) LIKE ' . $db->Quote('%' . $db->getEscaped($search, true) . '%', false); } if ($filter_state) { if ($filter_state == 'P') { $where[] = 'a.published = 1'; } else { if ($filter_state == 'U') { $where[] = 'a.published = 0'; } } } $where = count($where) ? ' WHERE ' . implode(' AND ', $where) : ''; if ($filter_order == 'a.id') { $orderby = ' ORDER BY id'; } else { if ($filter_order == 'a.name' or $filter_order == 'a.nr' or $filter_order == 'a.datum' or $filter_order == 'd.name' or $filter_order == 'c.name' or $filter_order == 'a.meldung' or $filter_order == 'a.sl_ok' or $filter_order == 'a.published' or $filter_order == 'a.ordering') { $orderby = ' ORDER BY ' . $filter_order . ' ' . $filter_order_Dir . ', a.id'; } else { $filter_order = 'a.id'; } } // get the total number of records $query = ' SELECT COUNT(*) ' . ' FROM #__clm_runden_termine AS a' . ' LEFT JOIN #__clm_saison AS c ON c.id = a.sid' . $where; $db->setQuery($query); $total = $db->loadResult(); jimport('joomla.html.pagination'); $pageNav = new JPagination($total, $limitstart, $limit); // get the subset (based on limits) of required records $query = "SELECT a.*, c.name AS saison, c.published as sid_pub, u.name AS editor, d.name AS liga_name, " . " d.durchgang, d.runden ,d.rnd as erstellt " . ' FROM #__clm_runden_termine AS a' . ' LEFT JOIN #__clm_saison AS c ON c.id = a.sid' . ' LEFT JOIN #__clm_liga AS d ON a.liga = d.id' . ' LEFT JOIN #__users AS u ON u.id = a.checked_out' . $where . $orderby; $db->setQuery($query, $pageNav->limitstart, $pageNav->limit); $rows = $db->loadObjectList(); if ($db->getErrorNum()) { echo $db->stderr(); return false; } // Filter // Statusfilter $lists['state'] = JHTML::_('grid.state', $filter_state); // nach Saison sortieren $sql = 'SELECT id, name FROM #__clm_saison WHERE archiv =0'; $db->setQuery($sql); $saisonlist[] = JHTML::_('select.option', '0', JText::_('RUNDE_SAISON_WAE'), 'id', 'name'); $saisonlist = array_merge($saisonlist, $db->loadObjectList()); $lists['sid'] = JHTML::_('select.genericlist', $saisonlist, 'filter_sid', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'id', 'name', intval($filter_sid)); // Nur ausführen wenn Saison published = 1 !! // Ligafilter $sql = 'SELECT a.id AS cid, a.name FROM #__clm_liga as a' . " LEFT JOIN #__clm_saison as s ON s.id = a.sid" . " WHERE s.archiv = 0 "; $db->setQuery($sql); $ligalist[] = JHTML::_('select.option', '0', JText::_('RUNDE_LIGA_WAE'), 'cid', 'name'); $ligalist = array_merge($ligalist, $db->loadObjectList()); $lists['lid'] = JHTML::_('select.genericlist', $ligalist, 'filter_lid', 'class="inputbox" size="1" onchange="document.adminForm.submit();"', 'cid', 'name', intval($filter_lid)); // Ordering $lists['order_Dir'] = $filter_order_Dir; $lists['order'] = $filter_order; // Suchefilter $lists['search'] = $search; require_once JPATH_COMPONENT . DS . 'views' . DS . 'runden.php'; CLMViewRunden::Runden($rows, $lists, $pageNav, $option); }