void savemyclass() { struct brcinfo *brcinfo; struct boardmem *bx; char *ptr = getparm("myclass"); bx = getboard2(ptr); if (!bx) { printf("<b>没有找到 %s 版,请用“搜索”功能搜索版面</b><br>\n", ptr); return; } if (!has_read_perm_x(currentuser, bx)) { printf ("<b>%s 版是一个封闭版面,请先向版务申请加入,或者用“搜索”功能另选其他版面</b><br>\n", ptr); return; } brcinfo = brc_readinfo(currentuser->userid); strsncpy(brcinfo->myclass, bx->header.filename, sizeof (brcinfo->myclass)); ptr = strtrim(getparm("myclasstitle")); if (!strcmp(ptr, "版面标题")) brcinfo->myclasstitle[0] = 0; else strsncpy(brcinfo->myclasstitle, ptr, sizeof (brcinfo->myclasstitle)); brc_saveinfo(currentuser->userid, brcinfo); printf ("<b>设置成功</b>(以后可以到菜单“个人工具箱”-->“设定底栏显示的版面”进行修改)<br>"); printf("<script>top.f4.location.reload();</script>"); }
int showExLinks2009(const struct sectree *sec, int num) { char bname[30], buf[256], *line, *ptr; struct boardmem *x1; FILE *fp; char sitename[32], url[STRLEN], logo[32]; if(sec == §ree || !strcmp(sec->basestr,"0")) strcpy(bname, "sysop"); else sprintf(bname, "%sadmin", sec->basestr); x1 = getboard2(bname); if(!x1 || !x1->wwwlink) return 0; sprintf(buf, MY_BBS_HOME "/ftphome/root/boards/%s/link/config.ini", bname); fp = fopen(buf, "r"); if(fp == NULL) return 0; printf("<script language=javascript>\n\tvar links = new Array(\n"); while(fgets(buf, sizeof(buf), fp)) { if(strchr("\r\n#", buf[0])) continue; line = buf; ptr = strchr(line, '\t'); if(ptr) { *ptr = 0; strncpy(sitename, line, sizeof(sitename)-1); } else continue; line = ++ptr; ptr = strchr(line, '\t'); if(ptr) { *ptr = 0; strncpy(url, line, sizeof(url)-1); } else continue; line = ++ptr; ptr = strchr(line, '\r'); // in case of windows format \r\n if(ptr == NULL) ptr = strchr(line, '\n'); if(ptr) *ptr = 0; strncpy(logo, line, sizeof(logo)-1); printf("\tnew aLink('%s', '%s', '%s'),\n", sitename, url, logo); } printf("\tnew aLink(-1, -1, -1)\n);\n"); printf("printExLinks(%d, %d);\n", getbnumx(x1), num); printf("</script>"); fclose(fp); return 0; }