]> code.citadel.org Git - citadel.git/blobdiff - webcit/roomops.c
* if we need the first urlpart, we musn't move it just left, but add another one...
[citadel.git] / webcit / roomops.c
index 93a6bfa5235bb010b07d05fe7849c02ae0739aa0..35a150e3f2cf55f8de4167b0cce8c48c05090838 100644 (file)
@@ -276,7 +276,7 @@ void zapped_list(void)
 /**
  * \brief read this room's info file (set v to 1 for verbose mode)
  */
-void readinfo(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType)
+void readinfo(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType)
 {
        char buf[256];
        char briefinfo[128];
@@ -325,7 +325,7 @@ void readinfo(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context,
  * keep the browser from using a cached icon from 
  * another room.
  */
-void embed_room_graphic(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType) {
+void embed_room_graphic(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) {
        char buf[SIZ];
 
        serv_puts("OIMG _roompic_");
@@ -381,7 +381,7 @@ void embed_room_graphic(StrBuf *Target, int nArgs, WCTemplateToken *Token, void
 /**
  * \brief Display the current view and offer an option to change it
  */
-void embed_view_o_matic(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType) {
+void embed_view_o_matic(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) {
        int i;
 
        wprintf("<form name=\"viewomatic\" action=\"changeview\">\n");
@@ -422,7 +422,7 @@ void embed_view_o_matic(StrBuf *Target, int nArgs, WCTemplateToken *Token, void
 /**
  * \brief Display a search box
  */
-void embed_search_o_matic(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType) {
+void embed_search_o_matic(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) {
        wprintf("<form name=\"searchomatic\" action=\"do_search\">\n");
        wprintf("<div style=\"display: inline;\"><input type=\"hidden\" name=\"nonce\" value=\"%d\">\n", WC->nonce);
        wprintf("<label for=\"search_name\">");
@@ -927,7 +927,7 @@ void gotonext(void)
  */
 void smart_goto(char *next_room) {
        gotoroom(next_room);
-       readloop("readnew");
+       readloop(readnew);
 }
 
 
@@ -3201,7 +3201,7 @@ void set_floordiv_expanded(void) {
        StrBuf *FloorDiv;
        
        FloorDiv = NewStrBuf();
-       StrBufAppendBuf(FloorDiv, WCC->UrlFragment1, 0);
+       StrBufAppendBuf(FloorDiv, WCC->UrlFragment2, 0);
        set_preference("floordiv_expanded", FloorDiv, 1);
        WCC->floordiv_expanded = FloorDiv;
 }
@@ -3656,7 +3656,10 @@ void set_room_policy(void) {
 
 void tmplput_RoomName(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType)
 {
-       StrEscAppend(Target, NULL, WC->wc_roomname, 1, 1);
+       StrBuf *tmp;
+       tmp = NewStrBufPlain(WC->wc_roomname, -1);;
+       StrBufAppendTemplate(Target, nArgs, Tokens, Context, ContextType, tmp, 0);
+       FreeStrBuf(&tmp);
 }
 
 void _gotonext(void) { slrp_highest(); gotonext(); }
@@ -3838,7 +3841,7 @@ void
 InitModule_ROOMOPS
 (void)
 {
-       RegisterNamespace("ROOMNAME", 0, 0, tmplput_RoomName, 0);
+       RegisterNamespace("ROOMNAME", 0, 1, tmplput_RoomName, 0);
 
        WebcitAddUrlHandler(HKEY("knrooms"), knrooms, 0);
        WebcitAddUrlHandler(HKEY("gotonext"), _gotonext, 0);
@@ -3862,7 +3865,7 @@ InitModule_ROOMOPS
        WebcitAddUrlHandler(HKEY("set_room_policy"), set_room_policy, 0);
        WebcitAddUrlHandler(HKEY("set_floordiv_expanded"), set_floordiv_expanded, NEED_URL|AJAX);
        WebcitAddUrlHandler(HKEY("changeview"), change_view, 0);
-       RegisterNamespace("ROOMBANNER", 0, 0, tmplput_roombanner, 0);
+       RegisterNamespace("ROOMBANNER", 0, 1, tmplput_roombanner, 0);
 
        RegisterConditional(HKEY("COND:ROOM:FLAGS:QR_PERMANENT"), 0, ConditionalRoomHas_QR_PERMANENT, CTX_NONE);
        RegisterConditional(HKEY("COND:ROOM:FLAGS:QR_INUSE"), 0, ConditionalRoomHas_QR_INUSE, CTX_NONE);