Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Präfixe - sortieren
#1
Hallo an alle,

mir hat das Thema Präfixe keine Ruhe gelassen. Wenn diese nicht sortiert werden können, sind diese auch nur "Schmuck".

Vorab möchte ich euch eine noch nicht fertige aber funktionierende Lösung vorstellen,
um Präfixe zu sortieren. in der Sortierauswahlliste ist bei dieser Lösung noch ein leeres Feld.

Weiter bin ich noch nicht gekommen, weil ich auch keine Zeit mehr habe. Vielleicht kann ja jemand weitermachen. Also sucht bitte in der forumsdisplay.php bei ca. Zeile 453 folgenden Code.

PHP-Code:
$t "t.";

$sortby htmlspecialchars($mybb->input['sortby']);
switch(
$mybb->input['sortby'])
{
        case 
"prefix":                     //
                
$sortfield "prefix";   // von RABA eingesetzt
                
break;                       //
        
case "subject":
                
$sortfield "subject";
                break;
        case 
"replies":
                
$sortfield "replies";
                break;
        case 
"views":
                
$sortfield "views";
                break;
        case 
"starter":
                
$sortfield "username";
                break;
        case 
"rating":
                
$t "";
                
$sortfield "averagerating";
                
$sortfield2 ", t.totalratings DESC";
                break;
        case 
"started":
                
$sortfield "dateline";
                break;
        default:
                
$sortby "lastpost";
                
$sortfield "lastpost";
                
$mybb->input['sortby'] = "lastpost";
                break;
}

$sortsel[$mybb->input['sortby']] = "selected=\"selected\""


Ganz oben der CASE-Abfragen habe ich mit Kommentar gekennzeichnet die prefix Abfrage dazugeschrieben.

Wie gesagt in dem Menue erscheint noch ein leeres Feld. Aber sonst funktioniert es.

Viel Spaß damit!Wink

mfG raba

NACHTRAG: wenn es schnell gehen soll vergist man die hälfte. SORRY

In der forumdisplay_thread Template muss natürlich noch diese Ergänzung dazu:


Code:
<select name="sortby">
                                        <option value="prefix" {$sorted['prefix']}>{$lang->sort_by_prefix}</option>
                    <option value="subject" {$sortsel['subject']}>{$lang->sort_by_subject}</option>
                    <option value="lastpost" {$sortsel['lastpost']}>{$lang->sort_by_lastpost}</option>
                    <option value="starter" {$sortsel['starter']}>{$lang->sort_by_starter}</option>
                    <option value="started" {$sortsel['started']}>{$lang->sort_by_started}</option>
                    {$ratingsort}
                    <option value="replies" {$sortsel['replies']}>{$lang->sort_by_replies}</option>
                    <option value="views" {$sortsel['views']}>{$lang->sort_by_views}</option>
                </select>

siehe oben die Zeile mit "prefix"

Danke Jockl.

mfG raba


Edit by Jockl: php-tags hinzugefügt
Zitieren
#2
(14.07.2012, 13:40)raba schrieb: in der Sortierauswahlliste ist bei dieser Lösung noch ein leeres Feld.
Du meinst, es wird "Präfix" in der Auswahlliste gar nicht angezeigt oder wie ist das zu verstehen?
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#3
Hallo Jockl,

genauso ist es. Wenn man das leere Feld anklickt funktioniert die Sortierung trotzdem.

Das leere Feld ist ganz oben. Bin auf Arbeit etwas hektisch hier, muss wieder weitermachen.

mfG rabaWink
Zitieren
#4
Code:
{$lang->sort_by_prefix}
Du musst die Variable natürlich auch in der forumdisplay.lang.php zur Verfügung stellen. Wink
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#5
Kann das leere Feld nicht bestätigen, hat sofort alles angezeigt und Funktioniert auch.
Mit freundlichen Grüßen

MrBrechreiz
Zitieren
#6
Hallo an alle,

wenn Ihr folgende Zeile in die forumsdisplay_lang einsetzt ist das leere Feld richtig beschriftet.

Dies ist ein Auszug aus der deutschen Sprachdatei (Du oder Sie egal)

PHP-Code:
$l['sort_by_prefix'] = "Sortieren nach: Präfix";    // diese Zeile dazuschreiben
$l['sort_by_subject'] = "Sortieren nach: Betreff";
$l['sort_by_lastpost'] = "Sortieren nach: Letzter Beitrag";
$l['sort_by_starter'] = "Sortieren nach: Verfasser";
$l['sort_by_started'] = "Sortieren nach: Erstellungszeit";
$l['sort_by_rating'] = "Sortieren nach: Bewertung";
$l['sort_by_replies'] = "Sortieren nach: Antworten";
$l['sort_by_views'] = "Sortieren nach: Ansichten"


Hat jemand eine Idee, das die Sortierung auch noch nach ABC funktioniert ?
Dann wäre das doch ganz brauchbar, oder ?Wink

mfG raba
Zitieren
#7
Was soll denn "ABC" sein?
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#8
Alphabetische Sortierung.
Zitieren
#9
Aber was soll denn alphabetisch sortiert werden?
viele Grüße
Jockl
übersetzte und eigene Plugins
Zitieren
#10
Hallo Jockl,

sorry das ich erst zum Antworten komme (Arbeitsbedingt).

Wenn man Präfixe einträgt, dann werden diese in der Tabelle "threadprefixes" gespeichert. In dieser Tabelle befinden sich u.a. die Spalten "pid" und "prefix".
In der Spalte "pid" stehen Zahlen die die Reihenfolge des Eintrages der Präfixe ensprechen. Ich habe z.B. den Präfix "Suchen" als erstes eingetragen, weshalb "Suchen" in der Tabelle nun die Nr.1 ist. Mein zweiter Eintrag ist "Biete", folglich mit der Nr. 2 in der Tabelle. Und so geht das immer weiter. Schaut man in der Tabelle "threads" nach, findet man dort die Spalte "prefix" eben mit diesen Zahlen und nicht mit dem Namen des Präfixes.

Wenn ich nun die Präfixe sortieren möchte, werden diese Eintragszahlen als Sortierkriterium von "sortby" (MyBB) genutzt. Ich müsste also von vornherrein schon beim Erstellen der Präfixe darauf achten, diese dem ABC entsprechend einzutragen um eine korrekte Sortierung nach ABC zu erhalten.

Dies ist theoretisch zwar machbar, aber an der Prazis völlig daneben. Nun habe ich in den letzten Tagen experimentiert und bin zu dem Ergebniss gekommen, das es am sinnvollsten wäre, in dem Eingabe-Formular für Präfixe ähnlich wie bei der Neuerstellung von Foren eine Sortierung mit einzubauen. So könnte man bei einem späteren Eintrag egal mit welchem Buchstaben er beginnt die Sortierung nach ABC durch entsprechende Zahlen einstellen. Genauso kann ich ja die Reihenfolge von Foren in der Anzeige selber bestimmen, egal wenn ich diese einstelle oder welchen Anfangsbuchstaben (Text) diese haben.

Und nun mein Vorschlag. Da es für die Foren ja schon diese Funktion gibt, bräuchte man diese doch einfach nur für die Präfixe zu übernehmen, oder ?Cool

Und nun kratze ich an Eurer Ehre und frage wer kann das machen.Toungue

mfG rabaWink
Zitieren