Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:
  • Seite:
  • 1
  • 2

THEMA: Internes Turnier starten

Internes Turnier starten 13 Jahre 10 Monate her #258

  • petesky
  • peteskys Avatar
Nachdem ich nun alles beisammen habe wollte ich ein internes Schachturnier starten. Allerdings schaffe ich es nicht, das Turnier mit Spielern aus meinen Mannschaften zu füllen da er wohl immer nur die dwz_spieler statt der clm_dwz_spieler aufruft.

Wie kann ich ein simples Turnier starten wo nur Spieler aus meiner Schule und nur aus 1 Verein gegeneinander spielen ?
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Internes Turnier starten 13 Jahre 9 Monate her #288

  • TSchwietert
  • TSchwieterts Avatar
  • Offline
  • COM_KUNENA_SAMPLEDATA_RANK_ADMIN
  • Beiträge: 1039
  • Dank erhalten: 4
  • Karma: 13
Ich habe den Post erst jetzt gesehen, daher dauerte es mit der Antowrt etwas länger, sorry.

Ich prüfe welche der beiden Tabellen verwendet wird, da ich es ehrlich gesagt nicht mehr weiß. Sobald ich das geklärt habe melde ich mich hier.
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Internes Turnier starten 13 Jahre 9 Monate her #310

  • petesky
  • peteskys Avatar
Hallo !

Hatte zufälligerweise jemand Zeit sich das anzusehen :-) Danke
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Internes Turnier starten 13 Jahre 9 Monate her #312

  • TSchwietert
  • TSchwieterts Avatar
  • Offline
  • COM_KUNENA_SAMPLEDATA_RANK_ADMIN
  • Beiträge: 1039
  • Dank erhalten: 4
  • Karma: 13
Hi,
Du bist leider von mir vergessen worden. Ich kümmere mich heute oder morgen um die Klärung des Problems.

Grüße
Thomas
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Internes Turnier starten 13 Jahre 9 Monate her #317

  • TSchwietert
  • TSchwieterts Avatar
  • Offline
  • COM_KUNENA_SAMPLEDATA_RANK_ADMIN
  • Beiträge: 1039
  • Dank erhalten: 4
  • Karma: 13
Du hast mit deiner Vermutung das nur auf die dwz_spieler zurückgegriffen wird recht !

Im Prinzip ist das auch gut so, denn man hat bei "normalen" Turnieren immer mal jemanden dabei der nicht aus dem eigenen Bezirk stammt und sonst mühsam nachgemeldet werden müßte.

Leider habe ich noch keine zündende Idee wie ich das Problem löse und muß dich daher noch ein paar Tage vertrösten. Ich bin und bleibe aber dran !
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Aw: Internes Turnier starten 13 Jahre 9 Monate her #324

  • TSchwietert
  • TSchwieterts Avatar
  • Offline
  • COM_KUNENA_SAMPLEDATA_RANK_ADMIN
  • Beiträge: 1039
  • Dank erhalten: 4
  • Karma: 13
Ich hab es ! War gar nicht so einfach weil alle SQL Querys des Edit Controllers neu gebaut werden mußten.

Die Funktion hänge ich unten an, ersetze damit die gleiche in der Datei

/PFAD_ZU_JOOMLA/administrator/components/com_clm/controllers/turnier_teilnehmer.php

Ein kurzes Feedback wäre auch ganz nett !
function edit()
{
global $mainframe, $option;
$section = JRequest::getVar('section');
$db =& JFactory::getDBO();

$filter_gid = $mainframe->getUserStateFromRequest( "$option.filter_gid",'filter_gid',0,'int' );
$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_verband = $mainframe->getUserStateFromRequest( "$option.filter_verband",'filter_verband',0,'int' );
$filter_turnier = $mainframe->getUserStateFromRequest( "$option.filter_turnier",'filter_turnier',0,'int' );
$filter_vid = $mainframe->getUserStateFromRequest( "$option.filter_vid",'filter_vid',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();
$orderby = "";

// Wenn Ergebnisse gemeldet kein nachträgliches Melden erlauben
$sql =" SELECT COUNT(id) as id FROM `#__clm_turniere_rnd_spl` "
." WHERE turnier =".$filter_turnier
." AND ergebnis IS NOT NULL"
;
$db->setQuery( $sql);
$counter_erg = $db->loadObjectList();
$count = $counter_erg[0]->id;

if ($count > 0 ) {
JError::raiseWarning( 500, JText::_( 'Es wurden Ergebnisse gemeldet : Kein hinzufügen von Spielern mehr möglich !' ) );
$link = 'index.php?option='.$option.'§ion='.$section;
$mainframe->redirect( $link);
}

if ( $filter_verband ) {
if ( (int)$filter_verband ==700 ) {
$og = '79999';
$ug = (int) $filter_verband.'00';
}
else {
$og = (int) $filter_verband.'99';
$ug = (int) $filter_verband.'00';
}
$where[] = " a.ZPS BETWEEN '$ug' AND '$og'";
}
if ( $filter_vid ) { $where[] = "a.zps = '$filter_vid'"; }
if ($search) { $where[] = 'LOWER(a.Spielername) LIKE '.$db->Quote( '%'.$db->getEscaped( $search, true ).'%', false ); }

$where = ( count( $where ) ? ' ' . implode( ' AND ', $where ) : '' );
$where_sel = 'WHERE '.$where;
$where_union = ' AND '.$where;

if ($filter_order =='a.Spielername' OR $filter_order == 'a.DWZ' OR $filter_order == 'a.Mgl_nr' OR $filter_order == 'a.FIDE_Elo' OR $filter_order == 'v.Vereinname' OR $filter_order == 't.snr' OR $filter_order == 'a.FIDE_Titel') {
$orderby = ' ORDER BY '. $filter_order .' '. $filter_order_Dir ;
}
else { $filter_order = 'a.DWZ'; }

// get the total number of records
$query = '( SELECT COUNT(ZPS) '
. ' FROM dwz_spieler AS a '
. " $where_sel ) "
. ' UNION '
. '( SELECT COUNT(ZPS) '
. ' FROM #__clm_dwz_spieler AS a '
. " WHERE STATUS ='N' $where_union ) "
;
$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 v.Vereinname,t.turnier,t.snr,n.name as tname,a.Mgl_Nr, a.Status,a.Spielername,a.DWZ'
. ' FROM dwz_spieler AS a'
. ' LEFT JOIN #__clm_turniere_tlnr AS t ON t.zps = a.ZPS AND t.mgl_nr = a.Mgl_Nr AND t.turnier ='.(int)$filter_turnier
. ' LEFT JOIN #__clm_turniere AS n ON n.id = t.turnier AND n.sid = t.sid '
. ' LEFT JOIN dwz_vereine AS v ON v.ZPS = a.ZPS '
. " $where_sel $orderby) "
. ' UNION '
. '( SELECT v.Vereinname,t.turnier,t.snr,n.name as tname,a.Mgl_Nr, a.Status,a.Spielername,a.DWZ'
. ' FROM #__clm_dwz_spieler AS a'
. ' LEFT JOIN #__clm_turniere_tlnr AS t ON t.zps = a.ZPS AND t.mgl_nr = a.Mgl_Nr AND t.turnier ='.(int)$filter_turnier
. ' LEFT JOIN #__clm_turniere AS n ON n.id = t.turnier AND n.sid = t.sid '
. ' LEFT JOIN dwz_vereine AS v ON v.ZPS = a.ZPS '
. " WHERE a.STATUS ='N' $where_union $orderby) "
;
$db->setQuery( $query, $pageNav->limitstart, $pageNav->limit );

$rows = $db->loadObjectList();
if ($db->getErrorNum()) {
echo $db->stderr();
return false;
}
// Verbandfilter
$sql = 'SELECT Verband, Verbandname FROM dwz_verbaende';
$db->setQuery($sql);
$verbandlist[] = JHTML::_('select.option', '0', JText::_( '- Verband wählen -' ), 'Verband', 'Verbandname' );
$verbandlist = array_merge( $verbandlist, $db->loadObjectList() );
$lists = JHTML::_('select.genericlist', $verbandlist, 'filter_verband', 'class="inputbox" size="1" onchange="document.adminForm.submit();"','Verband', 'Verbandname', intval( $filter_verband ) );
// Vereinefilter
$sql = 'SELECT ZPS as zps, Vereinname as name FROM dwz_vereine ';
if ( $filter_verband ) { $sql = $sql." WHERE ZPS BETWEEN '$ug' AND '$og'"; }
$db->setQuery($sql);
$vlist[] = JHTML::_('select.option', '0', JText::_( '- Verein wählen -' ), 'zps', 'name' );
$vlist = array_merge( $vlist, $db->loadObjectList() );
$lists = JHTML::_('select.genericlist', $vlist, 'filter_vid', 'class="inputbox" size="1" onchange="document.adminForm.submit();"','zps', 'name', $filter_vid );
// Suchefilter
$lists= $search;
// Ordering
$lists = $filter_order_Dir;
$lists = $filter_order;

require_once(JPATH_COMPONENT.DS.'views'.DS.'turnier_teilnehmer.php');
CLMViewTurnierteilnehmer::Teilnehmer_add( $rows, $lists, $pageNav, $option, $filter_turnier );
}
Der Administrator hat öffentliche Schreibrechte deaktiviert.
  • Seite:
  • 1
  • 2
Ladezeit der Seite: 0.147 Sekunden

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.