char *wikiLinkChangePasswordUrl(char *hgsid)
/* Return the URL for the user change password page. */
{
char buf[2048];
char *retEnc = encodedHgSessionReturnUrl(hgsid);

if (loginSystemEnabled())
    {
    if (! wikiLinkEnabled())
        errAbort("wikiLinkChangePasswordUrl called when login system is not enabled "
            "(specified in hg.conf).");
    safef(buf, sizeof(buf),
        "http%s://%s/cgi-bin/hgLogin?hgLogin.do.changePasswordPage=1&returnto=%s",
        cgiAppendSForHttps(), wikiLinkHost(), retEnc);
    }
else
    {
    if (! wikiLinkEnabled())
        errAbort("wikiLinkUserLogoutUrl called when wiki is not enable (specified "
            "in hg.conf).");
    safef(buf, sizeof(buf),
        "http://%s/index.php?title=Special:UserlogoutUCSC&returnto=%s",
         wikiLinkHost(), retEnc);
    }
freez(&retEnc);
return(cloneString(buf));
}
char *wikiLinkUserLoginUrl(char *hgsid)
/* Return the URL for the wiki user login page with return going to hgSessions. */
{
char *retUrl = encodedHgSessionReturnUrl(hgsid);
char *result = wikiLinkUserLoginUrlReturning(hgsid, retUrl);
freez(&retUrl);
return result;
}
char *wikiLinkUserLogoutUrl(char *hgsid)
/* Return the URL for the wiki user logout page that returns to hgSessions. */
{
char *retEnc = encodedHgSessionReturnUrl(hgsid);
char *result = wikiLinkUserLogoutUrlReturning(hgsid, retEnc);
freez(&retEnc);
return result;
}
char *wikiLinkUserLogoutUrl(int hgsid)
/* Return the URL for the wiki user logout page. */
{
char buf[2048];
char *retEnc = encodedHgSessionReturnUrl(hgsid);
if (! wikiLinkEnabled())
    errAbort("wikiLinkUserLogoutUrl called when wiki is not enable (specified "
	     "in hg.conf).");
safef(buf, sizeof(buf),
      "http://%s/index.php?title=Special:UserlogoutUCSC&returnto=%s",
      wikiLinkHost(), retEnc);
freez(&retEnc);
return(cloneString(buf));
}