blob: 8cece79bdb7ad4353e16b84d75ab56b08c1027e9 [file] [log] [blame]
MG Mud User88f12472016-06-24 23:31:02 +02001// MorgenGrauen MUDlib
2//
3// svn2news.c -- Setzt die Subversion-Eintraege in magier.mudlib
4//
5// $Id$
6
7// Erstellt auf Basis von rcs2news von Zook.
8
9#pragma strict_types,save_types
10#pragma no_clone,no_shadow
11
12#include <daemon.h>
13
14#define NEWSFILE "/p/daemon/save/svn2news.txt"
15#define NEWSFILEOLD "/p/daemon/save/svn2news.old"
16
17#define DEBUG(str) if (find_player("zook")) \
18 tell_object(find_player("zook"), sprintf("svn2news: DEBUG: %O\n",str))
19
20static void checkrcs()
21{
22 string str;
23 mixed art;
24 // Letzte Eintrag sollte ein wenig her sein, damit es keine
25 // Ueberschneidungen gibt.
26 if (file_time(NEWSFILE)+1800 > time()) return;
27 if (!(str=read_file(NEWSFILE,0,10000)) || (str=="")) return;
28 art=({"magier.mudlib","SVN2NEWS",0,0,
29 "SVN-Eintraege vom "+dtime(time()),str});
30 if (("/secure/news"->WriteNote(art,1)>=1) ||
31 (("/secure/news"->RemoveNote("magier.mudlib",0)>=1) &&
32 ("/secure/news"->WriteNote(art,1)>=1)))
33 catch(rename(NEWSFILE,NEWSFILEOLD);publish);
34 else log_file("SVN2NEWS",dtime(time())+
35 " : Kann RCS-Eintraege nicht nach magier.mudlib posten!\n");
36}
37
38void reset()
39{
40 // call_out() noetig, da sonst kein weiteres reset() gerufen wird
41 // reset() wird nur gerufen bei einem call einer anderen Funktion
42 // nach einem Reset
43 call_out("checkrcs",1);
44}
45
46void create()
47{
48 seteuid(getuid());
49 reset();
50}
51
52void clean_up(int refc)
53{
54 return 0;
55}