summaryrefslogtreecommitdiff
path: root/bin/list_lists
diff options
context:
space:
mode:
Diffstat (limited to 'bin/list_lists')
-rw-r--r--bin/list_lists122
1 files changed, 0 insertions, 122 deletions
diff --git a/bin/list_lists b/bin/list_lists
deleted file mode 100644
index 870759b99..000000000
--- a/bin/list_lists
+++ /dev/null
@@ -1,122 +0,0 @@
-#! @PYTHON@
-#
-# Copyright (C) 1998,1999,2000,2001,2002 by the Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 2
-# of the License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-
-"""List all mailing lists.
-
-Usage: %(program)s [options]
-
-Where:
-
- -a / --advertised
- List only those mailing lists that are publically advertised
-
- --virtual-host-overview=domain
- -V domain
- List only those mailing lists that are homed to the given virtual
- domain. This only works if the VIRTUAL_HOST_OVERVIEW variable is
- set.
-
- -b / --bare
- Displays only the list name, with no description.
-
- -h / --help
- Print this text and exit.
-
-"""
-
-import sys
-import getopt
-import paths
-
-from Mailman import mm_cfg
-from Mailman import MailList
-from Mailman import Utils
-from Mailman import Errors
-from Mailman.i18n import _
-
-program = sys.argv[0]
-
-def usage(code, msg=''):
- if code:
- fd = sys.stderr
- else:
- fd = sys.stdout
- print >> fd, _(__doc__)
- if msg:
- print >> fd, msg
- sys.exit(code)
-
-
-
-def main():
- try:
- opts, args = getopt.getopt(sys.argv[1:], 'abV:h',
- ['advertised', 'bare',
- 'virtual-host-overview=',
- 'help'])
- except getopt.error, msg:
- usage(1, msg)
-
- advertised = 0
- vhost = None
- bare = 0
- for opt, arg in opts:
- if opt in ('-h', '--help'):
- usage(0)
- elif opt in ('-a', '--advertised'):
- advertised = 1
- elif opt in ('-V', '--virtual-host-overview'):
- vhost = arg
- elif opt in ('-b', '--bare'):
- bare = 1
-
- names = Utils.list_names()
- names.sort()
-
- mlists = []
- longest = 0
- for n in names:
- mlist = MailList.MailList(n, lock=0)
- if advertised and not mlist.advertised:
- continue
- if vhost and mm_cfg.VIRTUAL_HOST_OVERVIEW and \
- vhost.find(mlist.web_page_url) == -1 and \
- mlist.web_page_url.find(vhost) == -1:
- continue
- mlists.append(mlist)
- longest = max(len(mlist.real_name), longest)
-
- if not mlists and not bare:
- print _('No matching mailing lists found')
- return
-
- if not bare:
- print len(mlists), _('matching mailing lists found:')
-
- format = '%%%ds - %%.%ds' % (longest, 77 - longest)
- for mlist in mlists:
- if bare:
- print mlist.internal_name()
- else:
- description = mlist.description or _('[no description available]')
- print ' ', format % (mlist.real_name, description)
-
-
-
-if __name__ == '__main__':
- main()