1#!/usr/bin/perl
2#
3
4# makeavl.pl&readlist.pm by Alexander Reznikov 2:4600/220@fidonet,
5#                                              99:2003/110@webnet,
6#                                              homebrewer@yandex.ru
7#
8#
9# ��� �ਯ� �।�����祭 ��� ᮧ����� ������� ᯨ᪠ ��� ��, ����㯭��
10# �� 㧫�. � ����⢥ ��室��� ������ �ᯮ������� ᯨ᪨ �� �������� � �ଠ�
11# EchoList. ����� ��樮���쭮 ����� ���� �ᯮ�짮��� ᢮� ᮡ�⢥���� �宫���
12# � ⮬ �� �ଠ�. � ��砥 hpt ��� ����� ᮧ���� �� ����� �ਯ�
13# fconf2na.pl. ����� �ਯ� ��⠥��� ���� ���ᠭ�� �� �� echolist.txt
14# (䠩��� ECHOLIST) � echo5020.lst, �᫨ ��� ���� � ⥪�饩 ��४�ਨ.
15
16# ����騩 �宫��� � �ଠ� Echolist,
17# �᫨ �� ����� (���������஢��) - �� �ᯮ������
18# ��� ����� ������� �� ����� fidoconfig/fconf2na.pl
19$echolist = 'echolist.fe';
20
21# ��� १������饣� ᯨ᪠ �� "��� �㯮�"
22$avlname = '11f800dc.fwd';
23
24# ���᮪ avail-䠩��� � 䮬�� Echolist, �� ������ �ନ����� १������騩
25# ᯨ᮪
26@fwdlists = ('fwd126.txt', 'fwd113.txt', 'fwd103.txt');
27
28#########
29use readlist;
30InitEchoList();
31
32read_echolist($echolist) if (defined $echolist)&&($echolist ne '');
33
34foreach $i (@fwdlists)
35{
36 read_echolist($i);
37}
38
39open FILE, ">$avlname";
40
41foreach $i (sort keys(%echo))
42{
43 $descr = GetEchoListDescr($i) || $echo{$i} || '';
44# $descr = $echo{$i} if length($descr)==0;
45
46 $descr =~ tr/�/H/;
47
48 print FILE "$i".(length($descr)>0? " $descr": '')."\n";
49}
50
51close(FILE);
52
53sub read_echolist
54{
55 my $filename = shift;
56 if (!open FILE, "<$filename")
57 {
58  warn("Can not open \'$filename\' ($!)\n");
59  return 0;
60 }
61
62 my ($echoid, $descr);
63
64 while (<FILE>)
65 {
66  chomp;
67
68  if (/^([^ ]+)\s*\"?(.*?)\"?$/)
69  {
70   $echoid = uc($1);
71   $descr = $2;
72
73   $echo{$echoid} = $descr if (!exists $echo{$echoid})||(length($echo{$echoid})==0);
74  }
75 }
76 close(FILE);
77 return 1;
78}
79