Exemplo n.º 1
0
int personlig(void) {
	int nummer,editret;
	struct Mote *motpek;
	if(argument[0]) {
		if(mote2==-1) {
			puttekn("\r\n\nBrev kommenterar du som vanligt med 'kommentera'.\r\n\n",-1);
			return(0);
		}
		nummer=atoi(argument);
		motpek=getmotpek(mote2);
		if(motpek->type == MOTE_ORGINAL) {
			if(nummer<Servermem->info.lowtext || nummer>Servermem->info.hightext) {
				puttekn("\r\n\nTexten finns inte!\r\n\n",-1);
				return(0);
			}
			if(!MayBeMemberConf(Servermem->texts[nummer%MAXTEXTS], inloggad, &Servermem->inne[nodnr])) {
				puttekn("\r\n\nDu har inte rätt att kommentera den texten!\r\n\n",-1);
				return(0);
			}
			if(readtexthead(nummer,&readhead)) return(0);
			senast_text_mote = Servermem->texts[nummer%MAXTEXTS];
		} else if(motpek->type == MOTE_FIDO) {
			if(nummer<motpek->lowtext || nummer>motpek->texter) {
				puttekn("\r\n\nTexten finns inte!\r\n\n",-1);
				return(0);
			}
			senast_text_mote = motpek->nummer;
		}
		senast_text_typ=TEXT;
		senast_text_nr = nummer;
	} else {
		if(senast_text_typ==BREV) {
			puttekn("\r\n\nBrev kommenterar du som vanligt med 'kommentera'.\r\n\n",-1);
			return(0);
		}
		if(!(motpek=getmotpek(senast_text_mote))) {
			puttekn("\n\n\rHmm.. Mötet där texten finns existerar inte..\n\r",-1);
			return(0);
		}

	}
	if(motpek->type == MOTE_FIDO) {
		nu_skrivs = BREV_FIDO;
		return(fido_brev(NULL,NULL,motpek));
	}
	nu_skrivs=BREV;
	initpersheader();
	if((editret=edittext(NULL))==1) return(1);
	if(!editret) sparabrev();
	return(0);
}
Exemplo n.º 2
0
void medlem(char *args) {
    struct UnreadTexts *unreadTexts = &Servermem->unreadTexts[nodnr];
    struct Mote *conf;
    BPTR lock;
    int confId;
    char filename[40];

    if(args[0] == '-' && (args[1] == 'a' || args[1] == 'A')) {
        ITER_EL(conf, Servermem->mot_list, mot_node, struct Mote *) {
            if(MayBeMemberConf(conf->nummer, inloggad, &Servermem->inne[nodnr])
                    && !IsMemberConf(conf->nummer, inloggad, &Servermem->inne[nodnr])) {
                BAMSET(Servermem->inne[nodnr].motmed, conf->nummer);
                if(conf->type == MOTE_ORGINAL) {
                    unreadTexts->lowestPossibleUnreadText[conf->nummer] = 0;
                }
                else if(conf->type == MOTE_FIDO) {
                    unreadTexts->lowestPossibleUnreadText[conf->nummer] = conf->lowtext;
                }
            }
        }
        return;
    }