Page 1 of 1

Publish / Unpublish

Posted: Sun Jul 30, 2006 3:38 am
by ex-sys
Hallo zusammen,
ich habe ein kleines Problem mit dem folgenden Code:
//****************************************************************
// Function: matchList
//
// Display the match list
//
//****************************************************************
function matchList($option, $database, $access, $itemid) {
global $mosConfig_list_limit;

// Get parameters
$limit = trim(mosGetParam($_REQUEST, 'limit', 0));
$limitstart = trim(mosGetParam($_REQUEST, 'limitstart', 0));
$gameid = trim(mosGetParam($_REQUEST, 'gameid', null));
$leagueid = trim(mosGetParam($_REQUEST, 'leagueid', null));
$srt = trim(mosGetParam($_REQUEST, 'sort', 'ddown'));

// Set up limit
if ($limit == 0 && isset ($mosConfig_list_limit)) {
$limit = $mosConfig_list_limit;
} else {
$limit = $limit == 0 ? 20 : $limit;
}

// Setup where clause for the list.
$xwhere = getMatchListWhere($access, $gameid, $leagueid);

$database->setQuery("SELECT count(matchid) FROM #__cwc_match  ".$xwhere);
$total = $database->loadResult();
if ($total setQuery("SELECT count(matchid) FROM #__cwc_match  WHERE selected='1'  ".$xwhere);
$total = $database->loadResult();
if ($total <= $limit) {
$limitstart = 0;
}


Passiert im Frontend gar nichts die komplette MatchList wird angezeigt.
Wie muss ich den Code richtig ändern damit im Frontend nur die Matches angezeigt werden die auch published sind?

Danke euch schon jetzt
Michael

Re: Publish / Unpublish

Posted: Sun Jul 30, 2006 5:42 am
by StephanK
Was macht die funktion getMatchListWhere() und wie sieht deine Datenbankabfrage komplett aus [echo $database->getQuery()] ?

Und was hat die Überschrift deines Threads mit dem Problem zu tun ;)

Re: Publish / Unpublish

Posted: Sun Jul 30, 2006 11:42 am
by ex-sys
StephanK wrote: Und was hat die Überschrift deines Threads mit dem Problem zu tun ;)
? Die Überschrift passt doch - gut ich hätte vielleicht schreiben können "Matches/Items Publish / Unpublish" aber es geht ja um die Funktion.
Dies hier ist ja auch nur ein "Beispiel" um den Code langsam mal zu lernen.
Denn auch an anderen Stellen würde ich das gerne einbauen - wenn es hier klappt bzw. ich das hier kapiere - funktioniert es auch an anderer Stelle!
Letzen Endes kann man dies ja wieder auf andere CMT´s anwenden und von daher habe ich die Überschrift so gelassen.
StephanK wrote: Was macht die funktion getMatchListWhere() und wie sieht deine Datenbankabfrage komplett aus [echo $database->getQuery()] ?
Das ist eine gute Frage!
Im original ist kommt das von http://forum.joomla.org/index.php?actio ... ttach=6367
Wenn ich aber hier ein Match eintrage kommt die Meldung; Danke für deinen Beitrag. Dein Beitrag wird erst begutachtet, bevor er erscheint.
Im Backend hat man/ich aber nichts gefunden um bei den Matches Einstellungen vornehmen zu können.
Also habe ich die Dateien im Backend angepasst. Und der Tabelle _cwc_match das Feld selected hinzugefügt
Hier kann ich jetzt auch die Matches  über die Buttons Publish / Unpublish an- und ausschalten.
Aber im Frontend will das wie gesagt nicht funktionieren

Re: Publish / Unpublish

Posted: Mon Jul 31, 2006 10:47 pm
by StephanK
Wie bereits geschrieben, ein

Code: Select all

echo $database->getQuery()
würde dir zumindest einmal die an die DB geschickte Abfrage anzeigen.

Nach der Funktion "getMatchListWhere()" aus der ZIP-Datei zu urteilen, würde ich darauf tippen, das deine Abfrage
$database->setQuery("SELECT count(matchid) FROM #__cwc_match WHERE selected='1' ".$xwhere);
in etwa diese Abfrage durchführt:
SELECT count(matchid) FROM #__cwc_match WHERE selected='1' WHERE ?='?' AND ?='?'...
Zudem wirst du wohl auch noch in der class.clanwar.php deine neue Variable 'selected' hinzufügen müssen.

Was genau jetzt dein Problem ist, kann ich allerdings nicht nachvollziehen. Für weitere Fragen würde ich dir empfehlen dich direkt an den Author des Scriptes zu wenden, er kennt sich mit dem Code vermutlich am besten aus.