mud/lib/secure/cmds/creators/wget.c
2020-09-06 05:43:07 -07:00

43 lines
1.3 KiB
C

#include <lib.h>
#include <daemons.h>
inherit LIB_DAEMON;
mapping FilesMap = ([]);
varargs int cmd(string str){
object wget = new(WGET_D, this_object());
if(!FilesMap) FilesMap = ([]);
write("Requesting url: "+str);
FilesMap[wget] = this_player();
wget->eventGet(str);
return 1;
}
varargs mixed eventReceiveWebData(string content, string file){
object wget = previous_object();
object who;
string savefile;
if(!FilesMap[wget] || !(who = FilesMap[wget])){
map_delete(FilesMap, wget);
return 1;
}
savefile = user_path(who)+last_string_element(file,"/");
who->eventPrint("File received: "+file+" , saving to: "+savefile);
write_file(savefile,content,1);
return 1;
}
string GetHelp(){
return "Syntax: wget <url>\n\n"
"Attempts to download internet content to your home directory. "
"Examples:\n"
"wget http://dead-souls.net/RELEASE_NOTES\n"
"wget http://149.152.218.102/RELEASE_NOTES -n dead-souls.net\n"
"The second syntax may be necessary if your mud does not use name "
"resolution and the target wbesite uses virtual hosts.\n"
"NOTE 1: This command is for text files only!\n"
"NOTE 2: You may have to manually remove some header information.\n"
"See also: resolve, rowsdower";
}