Christian Kruse: Beantwortbare Threads vs. Archiv

Beitrag lesen

Hallo dedlfix,

Wie soll das gehen ohne den Thread-Baum in seiner Struktur zu zerstören? Deshalb haben wir ja auch unterschiedliche Sortierverfahren für Threads und die Thread-Bäume.

Im alten Forum ging es auch.

Nein.

Dann musst du das alte Forum nochmal anwerfen und genau nachschauen. Wenn bei Sortierung nach jüngstem Posting jemand eine neue Antwort neben bereits bestehende erstellt hatte, dann stand sie über ihren Geschwistern. Hier steht sie unter ihnen.

Du verwechselst hier Sortierung von Threads und Postings. Die Sortierung von Threads kannte (und kennt) die Optionen "aufsteigend," "absteigend" und "nach jüngstem Posting:"

    if(cf_strcmp(args[0],"ascending") == 0) flt_sorting_sorthread_ts = CF_SORT_ASCENDING;
    else if(cf_strcmp(args[0],"newestfirst") == 0) flt_sorting_sorthread_ts = CF_SORT_NEWESTFIRST;
    else flt_sorting_sorthread_ts = CF_SORT_DESCENDING;

Das hatte keinerlei Auswirkungen auf die Sortierung der Postings im Thread-Baum. Die Sortierung der Postings hatte (und hat) die Parameter "aufsteigend" und "absteigend:"

flt_sorting_sortmessages = cf_strcmp(args[0],"ascending") == 0 ? CF_SORT_ASCENDING : CF_SORT_DESCENDING;

Das sortierte (und sortiert) die Nachrichten im Threadbaum aufsteigend oder absteigend. Was anderes gibt und gab es nicht. Das hier ist der Code, der die Nachrichten sortiert hat:

/* {{{ flt_sorting_msgs_cmp */
int flt_sorting_msgs_cmp(const void *a,const void *b) {
  hierarchical_node_t *na = (hierarchical_node_t *)a;
  hierarchical_node_t *nb = (hierarchical_node_t *)b;

  if(flt_sorting_sortmessages == CF_SORT_ASCENDING) {
    if(na->msg->date > nb->msg->date) return 1;
    else if(na->msg->date < nb->msg->date) return -1;
  }
  else {
    if(na->msg->date > nb->msg->date) return -1;
    else if(na->msg->date < nb->msg->date) return 1;
  }

  return 0;
}
/* }}} */

/* {{{ flt_sorting_sort_msgs */
void flt_sorting_sort_msgs(hierarchical_node_t *h) {
  size_t i;

  cf_array_sort(&h->childs,flt_sorting_msgs_cmp);
  for(i=0;i<h->childs.elements;++i) flt_sorting_sort_msgs(cf_array_element_at(&h->childs,i));
}
/* }}} */

Es gibt ausschliesslich aufsteigend und absteigend. Das hier ist der Code, der die Threads sortiert hat:

/* {{{ flt_sorting_threads_cmp */
int flt_sorting_threads_cmp(const void *a,const void *b) {
  cl_thread_t *ta = (cl_thread_t *)a;
  cl_thread_t *tb = (cl_thread_t *)b;

  if(flt_sorting_sortthreads == CF_SORT_ASCENDING) {
    if(ta->messages->date > tb->messages->date) return 1;
    else if(ta->messages->date < tb->messages->date) return -1;
  }
  else if(flt_sorting_sortthreads == CF_SORT_DESCENDING) {
    if(ta->messages->date > tb->messages->date) return -1;
    else if(ta->messages->date < tb->messages->date) return 1;
  }
  else {
    if(ta->newest->date > tb->newest->date) return -1;
    else if(ta->newest->date < tb->newest->date) return 1;
  }

  return 0;
}
/* }}} */

/* {{{ flt_sorting_sort */
#ifndef CF_SHARED_MEM
int flt_sorting_sort(cf_hash_t *head,cf_configuration_t *dc,cf_configuration_t *vc,int sock,rline_t *tsd,cf_array_t *threads)
#else
int flt_sorting_sort(cf_hash_t *head,cf_configuration_t *dc,cf_configuration_t *vc,void *ptr,cf_array_t *threads)
#endif
{
  size_t i;
  cl_thread_t *thr;

  /* sort threads first */
  if(flt_sorting_sortthreads != -1) cf_array_sort(threads,flt_sorting_threads_cmp);

  if(flt_sorting_sortmessages != -1) {
    for(i=0;i<threads->elements;++i) {
      thr = cf_array_element_at(threads,i);
      flt_sorting_sort_msgs(thr->ht);
      cf_msg_linearize(thr,thr->ht);
    }
  }

  return FLT_OK;
}
/* }}} */

Die Sortierung der Threads hatte also keinerlei Auswirkungen auf die Sortierung von Nachrichten.

Ja, das wäre "Nachrichten-Sortierung austeigend" bzw "absteigend," das gibt es heute auch schon ;) Aber nach neustem Posting gab es nie, das müsste die Hierarchie zerreissen.

Nein, das zerreißt gar nichts. [...] Die Struktur ist weiterhin vorhanden.

Du möchtest nur innerhalb der Teilbäume sortieren nach der neusten Nachricht, und nicht die Nachrichten sortieren nach der neusten Nachricht. Grosser Unterschied :) Ich nehms mal mit auf, aber für die 4.0.1 wird das nicht mehr befürchte ich.

LG,
CK

1 202

Umstellung auf Classic Forum 4.0

Christian Kruse
  • zu diesem forum
  1. 2
    schuer
  2. 0
    Encoder ohne Passwort
    1. 0
      Christian Kruse
      1. 0
        Matthias Apsel
        1. 0
          dedlfix
      2. 0
        Encoder immer noch ohne...
        1. 0
          Christian Kruse
          1. 0
            Matthias Apsel
            1. 1
              dedlfix
              1. 0
                auge
              2. 0
                bobby
                1. 0
                  Matthias Apsel
                2. 0
                  Matthias Apsel
                  1. 0
                    Matthias Apsel
                    1. 0
                      Auge
                      1. 0
                        Matthias Apsel
                    2. 0
                      MudGuard
  3. 1
    Felix Riesterer
    1. 0
      Felix Riesterer
      1. 0
        Christian Kruse
    2. 0
      Christian Kruse
      1. 1

        automatisches Verbergen archivierter Threads

        Felix Riesterer
        1. 0
          Christian Kruse
      2. 2
        mkbk
        1. 0
          dedlfix
          1. 2
            mkbk
            1. 0
              dedlfix
        2. 0
          Der Martin
          1. 0
            Matthias Apsel
    3. 0
      Felix Riesterer
      1. 0
        Christian Kruse
    4. 0
      Felix Riesterer
      1. 0
        Christian Kruse
  4. 1
    Lukas.
    1. 1
      Jnnbo
    2. 0
      dedlfix
      1. 1
        Lukas.
        1. 0
          dedlfix
          1. 1
            Lukas.
  5. 0

    Und wo ist die Forensuche?

    Lukas.
    1. 0

      Wie erstelle ich einen Beitrag?

      Lukas.
      1. 0
        Matthias Apsel
        1. 0
          Lukas.
    2. 0
      dedlfix
      1. 0
        Lukas.
  6. 0
    Robert R. (ohne)
    1. 0
      Christian Kruse
  7. 1
    JürgenB
    1. 0
      Matthias Apsel
      1. 0
        Christian Kruse
        1. 1
          JürgenB
          1. 0
            auge
            1. 0
              dedlfix
              1. 0
                auge
  8. 1

    Feature Request für das neue Forum

    robertroth
    • feature
    • zu diesem forum
    1. 1
      auge
      1. 0
        dedlfix
      2. 1
        Der Martin
    2. 0

      Frage zum und weiterer Feature Request für das neue Forum

      robertroth
      1. 0
        Christian Kruse
        1. 0
          1unitedpower
          1. 0
            Christian Kruse
            1. 0
              1unitedpower
              1. 0
                Christian Kruse
      2. 0
        dedlfix
        1. 0
          Robert R. (ohne)
      3. 1
        Der Martin
        1. 0
          Christian Kruse
          1. 0
            Matthias Apsel
            1. 0
              Auge
              • feature
              • meinung
              • zu diesem forum
            2. 0

              Protest: Nested-Ansicht

              Camping_RIDER
              • feature
              • meinung
              • zu diesem forum
              1. 0
                lichtheini
              2. 0
                frankx
                1. 0
                  Tabellenkalk
                  1. 0

                    Hamma: Voting nur mit Eingangshürde!!!

                    frankx
                    1. 0
                      frankx
                    2. 1
                      Tabellenkalk
                      1. 1

                        Hamma: Voting nur mit Eingangshürde!!! Brauch ich schon wieder einen neuen Usernamen?

                        frankx
                        1. 0
                          Tabellenkalk
                          • meinung
                          1. 0
                            frankx
                        2. 0
                          Matthias Apsel
                    3. 1

                      Hilfreiche Kritik vs. substanzloses Gemeckere

                      Matthias Apsel
                      1. 0
                        frankx
                      2. 0

                        Refreshzeit - mit JS oder ohne?

                        frankx
                        1. 0

                          Refreshzeit - mit inline-JS, wie es "funzt"

                          frankx
                          1. 0

                            Refreshzeit - mit inline-JS, wie es "funzt" - Absätze im Code ...

                            frankx
                    4. 1
                      Der Martin
                      1. 0
                        frankx
                        1. 0
                          Matthias Apsel
                          • zu diesem forum
                          1. 0
                            frankx
                        2. 1
                          Christian Kruse
                      2. 1
                        Auge
                        1. 0
                          frankx
                          1. 2
                            Auge
                            1. 0
                              frankx
                        2. 0
                          Christian Kruse
                      3. 0
                        Tabellenkalk
                        • bug
                        • feature
                        • zu diesem forum
                        1. 0
                          Christian Kruse
                  2. 0

                    Punktesystem

                    frankx
                    1. 2
                      Auge
                      • feature
                      • zu diesem forum
                      1. 1
                        frankx
                      2. 1
                        Matthias Apsel
                        1. 0
                          frankx
                        2. 0
                          MudGuard
                          1. 0
                            frankx
                            1. 4
                              Auge
                              • meinung
                              1. 1

                                Punktesystem - Gefahr droht!

                                frankx
                                1. 0
                                  robertroth
                                  1. 0
                                    frankx
                                    1. 0

                                      Punktesystem - Gefahr droht! - Bearbeiten geht nicht (mehr)

                                      frankx
                                      1. 0
                                        Auge
                                        1. 0
                                          frankx
                                      2. 0
                                        Matthias Apsel
                                        1. 0
                                          frankx
                                          • meinung
                                          • zu diesem forum
                                          1. 0
                                            frankx
                                            1. 1
                                              Matthias Apsel
                                2. 0
                                  Auge
                                  • menschelei
                                  1. 0
                                    frankx
                                    1. 0
                                      robertroth
                                      1. 0
                                        frankx
                          2. 0
                            Christian Kruse
            3. 0

              Zurück in die Steinzeit

              Lukas.
              1. 0
                Matthias Apsel
  9. 1

    Archiv - E-Mail und Homepage des Autors werden angezeigt

    JürgenB
    1. 1
      JürgenB
  10. 0
    M.
    1. 0
      Christian Kruse
      1. 0
        M.
  11. 1
    Auge
    1. 0
      Christian Kruse
  12. 0

    Auf und Zu und Sortieren für Unangemeldete

    dedlfix
    1. 0
      Mitleser
  13. 0
    JürgenB
    1. 0
      Matthias Apsel
    2. 0
      Felix Riesterer
      • bug
      • zu diesem forum
      1. 0
        Matthias Apsel
        1. 0
          Matthias Apsel
  14. 0

    Kleine Fehlerlerchen: fett geht nicht

    robertroth
    1. 0
      Matthias Apsel
      1. 0
        Boshmrdifsy
        1. 0
          Der Martin
          1. 0

            Kleine Fehlerlerchen: fett geht nicht 1. April

            Matthias Apsel
            • menschelei
            • zu diesem forum
          2. 0
            MudGuard
        2. 0
          robertroth
  15. 0

    Beantwortbare Threads vs. Archiv

    Felix Riesterer
    1. 0
      Christian Kruse
      1. 0
        Tabellenkalk
        1. 0
          Christian Kruse
          1. 0
            Tabellenkalk
            1. 0
              Christian Kruse
              1. 0
                Felix Riesterer
                1. 0
                  Matthias Apsel
                2. 0
                  Christian Kruse
                  1. 0
                    Felix Riesterer
                    1. 0
                      Christian Kruse
              2. 1
                Der Martin
                1. 0
                  Matthias Apsel
                  1. 0
                    MudGuard
                    1. 0
                      Matthias Apsel
                    2. 0
                      Tabellenkalk
                      1. 1
                        Auge
                        1. 0
                          dedlfix
                          1. 0
                            Matthias Apsel
                            1. 0
                              dedlfix
                              1. 0
                                Christian Kruse
                                1. 0
                                  dedlfix
                                  1. 0
                                    Christian Kruse
                                    1. 0
                                      dedlfix
                                      1. 0
                                        Christian Kruse
                                        1. 0
                                          dedlfix
                    3. 0
                      dedlfix
                      1. 0
                        MudGuard
                        1. 0
                          dedlfix
                2. 0
                  Christian Kruse
                  1. 1
                    Der Martin
                  2. 0
                    Matthias Apsel
                    • feature
                    • zu diesem forum
                    1. 0
                      Christian Kruse
                      1. 0
                        Matthias Apsel
                        1. 0
                          Christian Kruse
                          1. 0
                            Matthias Apsel
                            1. 0
                              Christian Kruse
                              1. 0
                                Matthias Apsel
                                1. 1
                                  Der Martin
                                2. 0
                                  Christian Kruse
                                  1. 0
                                    Jnnbo
                                    1. 0
                                      Christian Kruse
                                      1. 0
                                        Matthias Apsel
                                        1. 0
                                          Christian Kruse
                                          1. 0
                                            Matthias Apsel
                                            1. 0
                                              Christian Kruse
                                              1. 0
                                                Matthias Apsel
                                                1. 0
                                                  Christian Kruse
                                              2. 0
                                                JürgenB
                                                1. 0
                                                  Christian Kruse
                                                  • feature
                                                  • javascript
                                                  • zu diesem forum
                                                  1. 0
                                                    Jnnbo
                                                    1. 0
                                                      Christian Kruse
                                                      1. 0
                                                        Jnnbo
                                                        1. 0
                                                          Christian Kruse
                                                      2. 0
                                                        MudGuard
                                                        1. 0
                                                          Christian Kruse
                                                          • feature
                                                          • zu diesem forum
                                          2. 1
                                            JürgenB