ICAL: add conflict handling
[citadel.git] / webcit / blogview_renderer.c
index 2254b9c0526c01f49c7b6cbb04e25200c371ec41..fa2c64752db2dd0d83ba3c4f217c147055788df0 100644 (file)
@@ -1,26 +1,20 @@
 /* 
  * Blog view renderer module for WebCit
  *
- * Copyright (c) 1996-2011 by the citadel.org team
+ * Copyright (c) 1996-2012 by the citadel.org team
  *
  * This program is open source software.  You can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation -- either version 3 of the
- * License, or (at your option) any later version.
+ * modify it under the terms of the GNU General Public License, version 3.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  */
 
 #include "webcit.h"
 #include "webserver.h"
-#include "groupdav.h"
+#include "dav.h"
 
 
 /*
@@ -60,12 +54,12 @@ void blogpost_render(struct blogpost *bp, int with_comments)
 
        if (with_comments) {
                /* Show any existing comments, then offer the comment box */
-               wc_printf("<a name=\"comments\"></a>\n");
+               wc_printf("<a class=\"blog_show_comments_link\" name=\"comments\"></a>\n");
                wc_printf(_("%d comments"), bp->num_msgs - 1);
-               wc_printf(" | <a href=\"");
+               wc_printf(" | <a class=\"blog_permalink_link\" href=\"");
                tmplput_blog_permalink(NULL, NULL);
                wc_printf("\">%s</a>", _("permalink"));
-               wc_printf("<br>\n");
+               wc_printf("</div>\n");
                for (i=1; i<bp->num_msgs; ++i) {
                        read_message(WC->WBuf, HKEY("view_blog_comment"), bp->msgs[i], NULL, &Mime);
                }
@@ -74,14 +68,14 @@ void blogpost_render(struct blogpost *bp, int with_comments)
 
        else {
                /* Show only the number of comments */
-               wc_printf("<a href=\"readfwd?p=%d?go=", bp->top_level_id);
+               wc_printf("<a class=\"blog_show_comments_link\" href=\"readfwd?p=%d?go=", bp->top_level_id);
                urlescputs(ChrPtr(WC->CurRoom.name));
                wc_printf("#comments\">");
                wc_printf(_("%d comments"), bp->num_msgs - 1);
-               wc_printf("</a> | <a href=\"");
+               wc_printf("</a> | <a class=\"blog_permalink_link\" href=\"");
                tmplput_blog_permalink(NULL, NULL);
                wc_printf("\">%s</a>", _("permalink"));
-               wc_printf("<br><br><br>\n");
+               wc_printf("<hr>\n</div>\n");
        }
 }
 
@@ -104,7 +98,9 @@ int blogview_GetParamsGetServerCall(SharedMessageStatus *Stat,
                                   void **ViewSpecific, 
                                   long oper, 
                                   char *cmd, 
-                                  long len)
+                                   long len,
+                                   char *filter,
+                                   long flen)
 {
        HashList *BLOG = NewHash(1, NULL);
        *ViewSpecific = BLOG;
@@ -214,6 +210,9 @@ int blogview_LoadMsgFromServer(SharedMessageStatus *Stat,
                }
                bp->msgs[bp->num_msgs++] = Msg->msgnum;
        }
+       else {
+               syslog(LOG_DEBUG, "** comment %ld is unparented", Msg->msgnum);
+       }
 
        return 200;
 }
@@ -279,11 +278,11 @@ int blogview_render(SharedMessageStatus *Stat, void **ViewSpecific, long oper)
         * which they point are still owned by the hash list.
         */
        if (num_blogposts > 0) {
+               int start_here = 0;
                /* Sort newest-to-oldest */
                qsort(blogposts, num_blogposts, sizeof(void *), blogview_sortfunc);
 
                /* allow the user to select a starting point in the list */
-               int start_here = 0;
                for (i=0; i<num_blogposts; ++i) {
                        if (blogposts[i]->top_level_id == firstp) {
                                start_here = i;
@@ -342,6 +341,7 @@ InitModule_BLOGVIEWRENDERERS
                VIEW_BLOG,
                blogview_GetParamsGetServerCall,
                NULL,
+               NULL,
                NULL, 
                blogview_LoadMsgFromServer,
                blogview_render,