www.intermud.c-Dateireferenz

#include <udp.h>
#include <www.h>
Include-Abhängigkeitsdiagramm für www.intermud.c:

gehe zum Quellcode dieser Datei

Funktionen

private int filter_ldfied (string nm, string chars, mapping muds)
string Request (mapping cmds)
void udp_reply (mapping data)

Dokumentation der Funktionen

private int filter_ldfied ( string  nm,
string  chars,
mapping  muds 
)

Definiert in Zeile 13 der Datei www.intermud.c.

00014 {
00015   if(nm[0] >= chars[0] && nm[0] <= chars[1])
00016     return muds[nm][0];
00017 }

string Request ( mapping  cmds  ) 

Definiert in Zeile 19 der Datei www.intermud.c.

Benutzt BACK, call_out(), DATA, err, ERROR, IDATA, IMUD, INETD, muds(), MUDWWW, NAME, PAGE, R_INTERMUD, REQ, REQUEST, SENDER, TIMEOUT und TYPE.

00020 {
00021   string err;
00022   mapping muds;
00023   if(!sizeof(cmds) || !cmds[IMUD] || !cmds[TYPE]) 
00024   {
00025     if(!cmds[PAGE]) cmds[PAGE] = "af";
00026     return 
00027  "<H1 ALIGN=\"CENTER\">Intermud Request</H1>"
00028 +"<H2 ALIGN=\"CENTER\">"
00029 +"MUDs from <I>"+capitalize(cmds[PAGE][0..0])
00030 +" to "+capitalize(cmds[PAGE][1..1])+"</I><BR>\n<B>"
00031 +"<A HREF=\""+MUDWWW+"?"+REQ+"="+R_INTERMUD+"&"+PAGE+"=af\">[A-F]</A> "
00032 +"<A HREF=\""+MUDWWW+"?"+REQ+"="+R_INTERMUD+"&"+PAGE+"=gk\">[G-K]</A> "
00033 +"<A HREF=\""+MUDWWW+"?"+REQ+"="+R_INTERMUD+"&"+PAGE+"=ls\">[L-S]</A> "
00034 +"<A HREF=\""+MUDWWW+"?"+REQ+"="+R_INTERMUD+"&"+PAGE+"=tz\">[T-Z]</A></B></H2>"
00035 +"<H6 ALIGN=\"CENTER\">"
00036 +"Diese Seite ist Englisch, da es ein Gateway fuer Intermud sein soll, "
00037 +"d.h. auch englischsprachige Nutzer sollen etwas davon haben :)</H6>\n"
00038 +"<HR><FORM METHOD=GET ACTION=\""+MUDWWW+"\">"
00039 +"<INPUT TYPE=hidden NAME=\""+REQ+"\" VALUE=\""+R_INTERMUD+"\">\n"
00040 +"<INPUT TYPE=hidden NAME=\""+BACK+"\" "
00041 +"VALUE=\""+MUDWWW+"?"+REQ+"="+R_INTERMUD+"\">\n"
00042 +"<H3>To get information via InterMUD you need to give the following "
00043 +"information:</H3>\n"
00044 +"First of all you need to select the type of request "
00045 +"<SELECT NAME=\""+TYPE+"\">"
00046 +"<OPTION>"+implode(INETD->query("commands") - ({"channel",
00047                                                  "mail",
00048                                                  "htmlwho",
00049                                                  "tell",
00050                                                  "locate",
00051                                                  "www"}), "<OPTION>\n")
00052 +"</SELECT><BR>and the MUD you want to question "
00053 +"<SELECT NAME=\""+IMUD+"\">"
00054 +"<OPTION>"+implode(
00055               map(sort_array(
00056                           m_indices(muds = INETD->query("hosts")-(["www"])),
00057                           #'>), 
00058                         #'filter_ldfied, cmds[PAGE], muds) - ({0}), "<OPTION>\n")
00059 +"</SELECT>.<P>"
00060 +"Eventually some requests require more data like a nickname: "
00061 +"<INPUT NAME=\""+IDATA+"\" SIZE=\"12\"><P>\n"
00062 +"When you're finished with editing and selecting you may "
00063 +"<INPUT TYPE=submit VALUE=\"Send the Request\"><BR>"
00064 +"or in case something went wrong <INPUT TYPE=reset> the form."
00065 +"</FORM>";
00066   }
00067   if(err = INETD->_send_udp(cmds[IMUD],([
00068                                       REQUEST: cmds[TYPE],
00069                                       SENDER: (string)this_object(),
00070                                       DATA: cmds[IDATA],
00071                                     ]), 1))
00072     return ERROR(err);
00073   call_out("udp_reply", TIMEOUT, 
00074                                                 ([DATA:"<H1><P ALIGN=\"CENTER\">TIMEOUT!</P></H1>",
00075                                           NAME: cmds[IMUD], REQUEST: cmds[REQ]]));
00076   return 0;
00077 }

Hier ist ein Graph der zeigt, was diese Funktion aufruft:

void udp_reply ( mapping  data  ) 

Definiert in Zeile 79 der Datei www.intermud.c.

Benutzt DATA, MUDWWW, NAME, R_INTERMUD, REQ und WWW.

00080 {
00081   remove_call_out("udp_reply");
00082   WWW->Send(0, "<H1>Intermud Request: "+data[REQ]+" <I>"+data[NAME]+"</I>"
00083                      +"</H1><HR><PRE>"
00084               +data[DATA]+"</PRE>", MUDWWW+"?"+REQ+"="+R_INTERMUD);
00085 }

Erzeugt am Thu Jun 3 14:42:01 2010 für MorgenGrauen Mudlib von  doxygen 1.6.3