Diff
Not logged in

Differences From Artifact [5b170dcb5c]:

To Artifact [e7bdf3fd12]:


33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
** a reply.
*/
struct ForumEntry {
  int fpid;              /* rid for this entry */
  int fprev;             /* zero if initial entry.  non-zero if an edit */
  int firt;              /* This entry replies to firt */
  int mfirt;             /* Root in-reply-to */
  int nReply;            /* Number of replies to this entry */
  int sid;               /* Serial ID number */
  char *zUuid;           /* Artifact hash */
  ForumEntry *pEditHead; /* Original, unedited entry */
  ForumEntry *pEditTail; /* Most recent edit for this entry */
  ForumEntry *pEditNext; /* This entry is edited by pEditNext */
  ForumEntry *pEditPrev; /* This entry is an edit of pEditPrev */
  ForumEntry *pNext;     /* Next in chronological order */







<







33
34
35
36
37
38
39

40
41
42
43
44
45
46
** a reply.
*/
struct ForumEntry {
  int fpid;              /* rid for this entry */
  int fprev;             /* zero if initial entry.  non-zero if an edit */
  int firt;              /* This entry replies to firt */
  int mfirt;             /* Root in-reply-to */

  int sid;               /* Serial ID number */
  char *zUuid;           /* Artifact hash */
  ForumEntry *pEditHead; /* Original, unedited entry */
  ForumEntry *pEditTail; /* Most recent edit for this entry */
  ForumEntry *pEditNext; /* This entry is edited by pEditNext */
  ForumEntry *pEditPrev; /* This entry is an edit of pEditPrev */
  ForumEntry *pNext;     /* Next in chronological order */
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
  for(p=pBase->pNext; p; p=p->pNext){
    if( p->fprev==0 && p->mfirt==pBase->fpid ){
      if( pPrev ){
        pPrev->nIndent = pBase->nIndent + 1;
        forumentry_add_to_display(pThread, pPrev);
        forumthread_display_order(pThread, pPrev);
      }
      pBase->nReply++;
      pPrev = p;
    }
  }
  if( pPrev ){
    pPrev->nIndent = pBase->nIndent + 1;
    if( pPrev->nIndent>pThread->mxIndent ) pThread->mxIndent = pPrev->nIndent;
    forumentry_add_to_display(pThread, pPrev);







<







135
136
137
138
139
140
141

142
143
144
145
146
147
148
  for(p=pBase->pNext; p; p=p->pNext){
    if( p->fprev==0 && p->mfirt==pBase->fpid ){
      if( pPrev ){
        pPrev->nIndent = pBase->nIndent + 1;
        forumentry_add_to_display(pThread, pPrev);
        forumthread_display_order(pThread, pPrev);
      }

      pPrev = p;
    }
  }
  if( pPrev ){
    pPrev->nIndent = pBase->nIndent + 1;
    if( pPrev->nIndent>pThread->mxIndent ) pThread->mxIndent = pPrev->nIndent;
    forumentry_add_to_display(pThread, pPrev);
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
  fossil_print("fpid  = %d\n", fpid);
  fossil_print("froot = %d\n", froot);
  pThread = forumthread_create(froot, 1);
  fossil_print("Chronological:\n");
  fossil_print(
/* 0         1         2         3         4         5         6         7    */
/*  123456789 123456789 123456789 123456789 123456789 123456789 123456789 123 */
  " sid      fpid      firt     fprev     mfirt     pEditTail  nReply  hash\n");
  for(p=pThread->pFirst; p; p=p->pNext){
    fossil_print("%4d %9d %9d %9d %11d %9d  %6d  %8.8s\n", p->sid,
       p->fpid, p->firt, p->fprev, p->mfirt,
       p->pEditTail ? p->pEditTail->fpid : 0, p->nReply, p->zUuid);
  }
  fossil_print("\nDisplay\n");
  for(p=pThread->pDisplay; p; p=p->pDisplay){
    fossil_print("%*s", (p->nIndent-1)*3, "");
    if( p->pEditTail ){
      fossil_print("%d->%d\n", p->fpid, p->pEditTail->fpid);
    }else{







|

|

|







293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
  fossil_print("fpid  = %d\n", fpid);
  fossil_print("froot = %d\n", froot);
  pThread = forumthread_create(froot, 1);
  fossil_print("Chronological:\n");
  fossil_print(
/* 0         1         2         3         4         5         6         7    */
/*  123456789 123456789 123456789 123456789 123456789 123456789 123456789 123 */
  " sid      fpid      firt     fprev     mfirt pEditTail hash\n");
  for(p=pThread->pFirst; p; p=p->pNext){
    fossil_print("%4d %9d %9d %9d %9d %9d %8.8s\n", p->sid,
       p->fpid, p->firt, p->fprev, p->mfirt,
       p->pEditTail ? p->pEditTail->fpid : 0, p->zUuid);
  }
  fossil_print("\nDisplay\n");
  for(p=pThread->pDisplay; p; p=p->pDisplay){
    fossil_print("%*s", (p->nIndent-1)*3, "");
    if( p->pEditTail ){
      fossil_print("%d->%d\n", p->fpid, p->pEditTail->fpid);
    }else{
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
  /* Undocumented "threadtable" query parameter causes thread table
  ** to be displayed for debugging purposes.
  */
  if( PB("threadtable") ){
    @ <hr>
    @ <table border="1" cellpadding="3" cellspacing="0">
    @ <tr><th>sid<th>fpid<th>firt<th>fprev<th>mfirt<th>pEditHead<th>pEditTail\
    @ <th>pEditNext<th>pEditPrev<th>nReply<th>hash
    for(p=pThread->pFirst; p; p=p->pNext){
      @ <tr><td>%d(p->sid)<td>%d(p->fpid)<td>%d(p->firt)\
      @ <td>%d(p->fprev)<td>%d(p->mfirt)\
      @ <td>%d(p->pEditHead?p->pEditHead->fpid:0)\
      @ <td>%d(p->pEditTail?p->pEditTail->fpid:0)\
      @ <td>%d(p->pEditNext?p->pEditNext->fpid:0)\
      @ <td>%d(p->pEditPrev?p->pEditPrev->fpid:0)\
      @ <td>%d(p->nReply)\
      @ <td>%S(p->zUuid)</tr>
    }
    @ </table>
  }

  forumthread_delete(pThread);
}







|







<







518
519
520
521
522
523
524
525
526
527
528
529
530
531
532

533
534
535
536
537
538
539
  /* Undocumented "threadtable" query parameter causes thread table
  ** to be displayed for debugging purposes.
  */
  if( PB("threadtable") ){
    @ <hr>
    @ <table border="1" cellpadding="3" cellspacing="0">
    @ <tr><th>sid<th>fpid<th>firt<th>fprev<th>mfirt<th>pEditHead<th>pEditTail\
    @ <th>pEditNext<th>pEditPrev<th>hash
    for(p=pThread->pFirst; p; p=p->pNext){
      @ <tr><td>%d(p->sid)<td>%d(p->fpid)<td>%d(p->firt)\
      @ <td>%d(p->fprev)<td>%d(p->mfirt)\
      @ <td>%d(p->pEditHead?p->pEditHead->fpid:0)\
      @ <td>%d(p->pEditTail?p->pEditTail->fpid:0)\
      @ <td>%d(p->pEditNext?p->pEditNext->fpid:0)\
      @ <td>%d(p->pEditPrev?p->pEditPrev->fpid:0)\

      @ <td>%S(p->zUuid)</tr>
    }
    @ </table>
  }

  forumthread_delete(pThread);
}