X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=webcit%2Fpreferences.c;h=46e439f7f1984c70c72cae9dab6442cc521c4633;hp=8118e6eb8792518d513ba7e6a738911729660b4d;hb=808f3be91dd6b6677e380695e2f16e6473141a7e;hpb=7cf191852d60ac09cdc1df9510c438aa42211d50 diff --git a/webcit/preferences.c b/webcit/preferences.c index 8118e6eb8..46e439f7f 100644 --- a/webcit/preferences.c +++ b/webcit/preferences.c @@ -122,7 +122,7 @@ void load_preferences(void) } /* Go back to the room we're supposed to be in */ - serv_printf("GOTO %s", WC->wc_roomname); + serv_printf("GOTO %s", ChrPtr(WC->wc_roomname)); serv_getln(buf, sizeof buf); } @@ -234,7 +234,7 @@ void save_preferences(void) { } /** Go back to the room we're supposed to be in */ - serv_printf("GOTO %s", WC->wc_roomname); + serv_printf("GOTO %s", ChrPtr(WC->wc_roomname)); serv_getln(buf, sizeof buf); } @@ -341,7 +341,7 @@ StrBuf *get_ROOM_PREFS(const char *key, size_t keylen) StrBuf *pref_name, *pref_value; pref_name = NewStrBuf (); - StrBufPrintf(pref_name, "%s %s", key, WC->wc_roomname); + StrBufPrintf(pref_name, "%s %s", key, ChrPtr(WC->wc_roomname)); get_pref(pref_name, &pref_value); FreeStrBuf(&pref_name); return pref_value; @@ -352,7 +352,7 @@ void set_ROOM_PREFS(const char *key, size_t keylen, StrBuf *value, int save_to_s StrBuf *pref_name; pref_name = NewStrBuf (); - StrBufPrintf(pref_name, "%s %s", key, WC->wc_roomname); + StrBufPrintf(pref_name, "%s %s", key, ChrPtr(WC->wc_roomname)); set_PREFERENCE(ChrPtr(pref_name), StrLength(pref_name), value, save_to_server); FreeStrBuf(&pref_name); } @@ -360,7 +360,8 @@ void set_ROOM_PREFS(const char *key, size_t keylen, StrBuf *value, int save_to_s /* * Offer to make any page the user's "start page." */ -void offer_start_page(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *Context, int ContextType) { +void offer_start_page(StrBuf *Target, WCTemplputParams *TP) +{ wprintf("this_page); wprintf("\">"); @@ -368,9 +369,9 @@ void offer_start_page(StrBuf *Target, int nArgs, WCTemplateToken *Token, void *C wprintf(""); #ifdef TECH_PREVIEW wprintf("
wc_roomname); + urlescputs(ChrPtr(WC->wc_roomname)); wprintf("\" title=\"RSS 2.0 feed for "); - escputs(WC->wc_roomname); + escputs(ChrPtr(WC->wc_roomname)); wprintf("\">\"RSS\"\n"); #endif } @@ -456,14 +457,14 @@ void set_preferences(void) #define PRF_YESNO 4 -void tmplput_CFG_Value(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) +void tmplput_CFG_Value(StrBuf *Target, WCTemplputParams *TP) { StrBuf *Setting; if (get_PREFERENCE(TKEY(0), &Setting)) - StrBufAppendTemplate(Target, nArgs, Tokens, Context, ContextType, Setting, 1); + StrBufAppendTemplate(Target, TP, Setting, 1); } -void tmplput_CFG_Descr(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) +void tmplput_CFG_Descr(StrBuf *Target, WCTemplputParams *TP) { const char *SettingStr; SettingStr = PrefGetLocalStr(TKEY(0)); @@ -472,31 +473,31 @@ void tmplput_CFG_Descr(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void } -void CfgZoneTempl(StrBuf *TemplBuffer, void *vContext, WCTemplateToken *Token) +void CfgZoneTempl(StrBuf *TemplBuffer, WCTemplputParams *TP) { - StrBuf *Zone = (StrBuf*) vContext; + StrBuf *Zone = (StrBuf*) CTX; SVPutBuf("ZONENAME", Zone, 1); } -int ConditionalPreference(WCTemplateToken *Tokens, void *Context, int ContextType) +int ConditionalPreference(StrBuf *Target, WCTemplputParams *TP) { StrBuf *Pref; if (!get_PREFERENCE(TKEY(2), &Pref)) return 0; - if (Tokens->nParameters == 3) { + if (TP->Tokens->nParameters == 3) { return 1; } - else if (Tokens->Params[3]->Type == TYPE_STR) - return ((Tokens->Params[3]->len == StrLength(Pref)) && - (strcmp(Tokens->Params[3]->Start, ChrPtr(Pref)) == 0)); + else if (TP->Tokens->Params[3]->Type == TYPE_STR) + return ((TP->Tokens->Params[3]->len == StrLength(Pref)) && + (strcmp(TP->Tokens->Params[3]->Start, ChrPtr(Pref)) == 0)); else - return (StrTol(Pref) == Tokens->Params[3]->lvalue); + return (StrTol(Pref) == TP->Tokens->Params[3]->lvalue); } -int ConditionalHazePreference(WCTemplateToken *Tokens, void *Context, int ContextType) +int ConditionalHazePreference(StrBuf *Target, WCTemplputParams *TP) { StrBuf *Pref; @@ -507,7 +508,7 @@ int ConditionalHazePreference(WCTemplateToken *Tokens, void *Context, int Contex return 1; } -HashList *GetGVEAHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) +HashList *GetGVEAHash(StrBuf *Target, WCTemplputParams *TP) { StrBuf *Rcp; HashList *List = NULL; @@ -518,7 +519,7 @@ HashList *GetGVEAHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void * Rcp = NewStrBuf(); serv_puts("GVEA"); StrBuf_ServGetln(Rcp); - if (ChrPtr(Rcp)[0] == '1') { + if (GetServerStatus(Rcp, NULL) == 1) { FlushStrBuf(Rcp); List = NewHash(1, NULL); while (!Done && (StrBuf_ServGetln(Rcp)>=0)) { @@ -544,7 +545,7 @@ void DeleteGVEAHash(HashList **KillMe) DeleteHash(KillMe); } -HashList *GetGVSNHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void *Context, int ContextType) +HashList *GetGVSNHash(StrBuf *Target, WCTemplputParams *TP) { StrBuf *Rcp; HashList *List = NULL; @@ -555,7 +556,7 @@ HashList *GetGVSNHash(StrBuf *Target, int nArgs, WCTemplateToken *Tokens, void * Rcp = NewStrBuf(); serv_puts("GVSN"); StrBuf_ServGetln(Rcp); - if (ChrPtr(Rcp)[0] == '1') { + if (GetServerStatus(Rcp, NULL) == 1) { FlushStrBuf(Rcp); List = NewHash(1, NULL); while (!Done && (StrBuf_ServGetln(Rcp)>=0)) { @@ -602,7 +603,7 @@ InitModule_PREFERENCES RegisterPreference("defaultfrom", _("Preferred email address"), PRF_STRING); RegisterPreference("defaultname", _("Preferred display name for email messages"), PRF_STRING); RegisterPreference("defaulthandle", _("Preferred display name for bulletin board posts"), PRF_STRING); - + RegisterNamespace("OFFERSTARTPAGE", 0, 0, offer_start_page, CTX_NONE); RegisterNamespace("PREF:VALUE", 1, 2, tmplput_CFG_Value, CTX_NONE); RegisterNamespace("PREF:DESCR", 1, 1, tmplput_CFG_Descr, CTX_NONE); RegisterIterator("PREF:ZONE", 0, ZoneHash, NULL, CfgZoneTempl, NULL, CTX_PREF, CTX_NONE, IT_NOFLAG);