1%#!/usr/bin/swipl 
    2
    3:- module(logicmoo_webbot,[
    4 www_start/0,www_start/1]).    5
    6:- whenever_flag_permits(load_network,load_library_system(library(logicmoo_network))).    7
    8%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    9:- dmsg("LOGICMOO WEBBOT").   10%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   11
   12www_start:- app_argv_off('--www'),!.
   13www_start:- app_argv_off('--net'),!.
   14www_start:- www_start(3020).
   15
   16:- use_module(library(http/thread_httpd)).   17www_start(Port):- dmsg("WWW Server " = Port), http_server_property(Port, goal(_)),!.
   18www_start(Port):- http_server(http_dispatch,[ port(Port)]). % workers(16) 
   19
   20app_argv_www(Flag):- app_argv_off(Flag),!,fail.
   21app_argv_www(Flag):- app_argv1(Flag),!.
   22app_argv_www(Flag):- app_argv_ok(Flag),(app_argv('--www');app_argv('--all')),!.
   23
   24
   25:- if(app_argv_www('--swish')).   26:- dmsg("SWISH Server").   27%:- user:load_library_system(logicmoo_swish).
   28:- endif.   29%:- user:['lps_corner/swish/user_module_file.pl'].
   30%:- user:['swish/daemon.pl'].
   31
   32
   33:- if(app_argv_www('--cliop')).   34%:- user:load_library_system(logicmoo_cliop).
   35:- endif.   36
   37:- if(app_argv_www('--plweb')).   38:- dmsg("PLWEB Server").   39:- user:load_library_system(logicmoo_plweb).   40:- endif.   41
   42:- if(app_argv_www('--docs');app_argv_www('--pldoc')).   43:- dmsg("PLDOC Server").   44:- user:load_library_system(logicmoo_pldoc).   45:- endif.   46
   47
   48/*
   49:- if(app_argv_www('--www')).
   50:- use_module(library(http/thread_httpd)).
   51:- use_module(library(http/http_dispatch)).
   52:- use_module(library(http/http_parameters)).
   53:- use_module(swi(library/http/html_write)).
   54:- endif.  % --www
   55*/
   56
   57
   58:- if(( false  , app_argv_www('--sigma'))).   59:- dmsg("SIGMA-KE Server").   60:- user:use_module(library(xlisting/xlisting_web)).   61foo_broken.
   62:- listing(foo_broken).   63:- break.   64:- user:listing(baseKB:shared_hide_data/1).   65:- set_fileAssertMt(baseKB).   66foo_broken2.
   67:- listing(foo_broken2).   68:- break.   69%#:- set_current_module(baseKB).
   70:- endif.   71
   72:- if((app_argv('--irc'))).   73:- if(exists_source(library(eggdrop))).   74:- dmsg("Eggdrop Server").   75:- user:use_module(library(eggdrop)).   76%:- egg_go_fg.
   77:- endif.   78:- endif.   79
   80
   81:- if(app_argv('--www')).   82%:- during_net_boot(www_start).
   83:- endif.   84
   85% :- break.
   86
   87%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   88% Sanity tests that first run whenever a person stats the MUD to see if there are regressions in the system
   89%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   90
   91:- if(( ( \+ ((current_prolog_flag(logicmoo_include,Call),Call))) )).   92%.
   93:- endif.   94
   95
   96:- logicmoo_webbot:import(http_dispatch:http_dispatch/1).   97
   98
   99:- threads.