home *** CD-ROM | disk | FTP | other *** search
/ Collection of Hack-Phreak Scene Programs / cleanhpvac.zip / cleanhpvac / CON-03A.ZIP / LIST.PAS < prev    next >
Pascal/Delphi Source File  |  1995-11-16  |  3KB  |  136 lines

  1. (* Conspiracy BBS Software / BBS menu / (c)1995 Grooven Designs     *)
  2. (* Coded 100% Original by Paul Maggs/Grooven Designs                *)
  3.  
  4. unit list;
  5.  
  6. interface
  7.  
  8. procedure init_bbs_list;
  9. procedure add_bbs;
  10. procedure edit_bbs;
  11. procedure delete_bbs;
  12. procedure bbs_list;
  13. procedure menu;
  14.  
  15. implementation
  16.  
  17. uses crt,dos,comms,ansi_Drv,mmenu;
  18. type
  19.   list_bbs = record
  20.           boardname, thesysop, boardphone, details : string[80];
  21.           software : string[9];
  22. {$R-}
  23. end;
  24.  
  25. const
  26.   bbsfile = 'data\boards.dat';
  27.  
  28. var
  29.  f : file of list_bbs;
  30.  lister : list_bbs;
  31.  cch : boolean;
  32.  
  33.  
  34. procedure init_bbs_list;
  35. begin
  36.   assign(f,bbsfile);
  37.   reset(f);
  38. end;
  39.  
  40. procedure add_bbs;
  41. begin
  42.   writeln('Add BBS to list');
  43.   write('BBS name       : '); readln(lister.boardname);
  44.   write('Sysop          : '); readln(lister.thesysop);
  45.   write('Phone Number   : '); readln(lister.boardphone);
  46.   write('Details of BBS : '); readln(lister.details);
  47.   write('Software       : '); readln(lister.software);
  48.   clrscr;
  49.   filemode := 2;
  50.   reset(f);
  51.   seek(f,filesize(f));
  52.   write(f,lister);
  53.   close(f);
  54.   init_bbs_list;
  55. end;
  56.  
  57. procedure edit_bbs;
  58. begin
  59. end;
  60.  
  61. procedure delete_bbs;
  62. begin
  63. end;
  64.  
  65. procedure bbs_list;
  66. begin
  67.   if not eof(f) then begin
  68.     read(f,lister);
  69.     gotoxy(11,3);
  70.     write('Board Name   : ' + lister.boardname+'               ');
  71.     gotoxy(11,4);
  72.     write('Sysop(s)     : ' + lister.thesysop+'                ');
  73.     gotoxy(11,5);
  74.     write('Phone Number : ' + lister.boardphone+'              ');
  75.     gotoxy(11,6);
  76.     write('Details      : ' + lister.details,'                 ');
  77.     gotoxy(11,7);
  78.     write('Software     : ' + lister.software,'                ');
  79.   end;
  80. end;
  81.  
  82. procedure exit;
  83. begin
  84.   clrscr;
  85.   gotoxy(1,1);
  86.   textcolor(7);
  87.   writeln('Thanks for using Groovey Express v0.01ß');
  88. end;
  89. (* This procedure brings the menu for bbs listings &
  90.    intializes the user keys *)
  91. { THIS VARIABLE OF CHAR IS REMOVED FOR THE KRYSTEL IMPLEMENTATION}
  92. var
  93.   ch :char;
  94.  
  95. procedure menu;
  96. begin
  97.     clrscr;
  98.    { assign(f,'boards.dat');}
  99.     repeat
  100.     {clearscreen;}
  101.     {send_ansi('bbslistm.ans');}
  102.     {ch:=wfk}
  103.     gotoxy(1,20);
  104.     write('a.dd bbs, e.dit bbs, d.elete bbs, q.uit, +.list next :');
  105.     ch := readkey;
  106.      if (ch = '+') then
  107.            begin
  108.              bbs_list;
  109.            end;
  110.      if (ch = 'Q') or (ch = 'q') then
  111.            exit;
  112.      if (ch = 'A') or (ch = 'a') then
  113.            begin
  114.              add_bbs;
  115.            end;
  116.      if (ch = 'E') or (ch = 'e') then
  117.            begin
  118.              edit_bbs;
  119.            end;
  120.      if (ch = 'D') or (ch = 'd') then
  121.            begin
  122.              delete_bbs;
  123.            end;
  124.      if (ch = 'Q') or (ch = 'q') then
  125.            main_menu;
  126.      until cch
  127. end;
  128. end.
  129.  
  130. (* -------------------------------------------------------------------------*)
  131. (*
  132. begin
  133.   init;
  134.   menu;
  135. end.
  136. *)