aboutsummaryrefslogtreecommitdiffstats
path: root/bin/update
diff options
context:
space:
mode:
authorMark Sapiro <mark@msapiro.net>2008-04-28 10:59:50 -0700
committerMark Sapiro <mark@msapiro.net>2008-04-28 10:59:50 -0700
commit8f2ad9d29ddf901a04289b834be3f592fcd62a7e (patch)
tree14d0b11a11638b308a1c8b5b170c013e2b8f7a74 /bin/update
parent35fa6d25927fd941bb270fa42cde0e570606ad21 (diff)
downloadmailman2-8f2ad9d29ddf901a04289b834be3f592fcd62a7e.tar.gz
mailman2-8f2ad9d29ddf901a04289b834be3f592fcd62a7e.tar.xz
mailman2-8f2ad9d29ddf901a04289b834be3f592fcd62a7e.zip
Fixed a problem with bin/update erroneously moving templates from
templates/xx to lists/xx if a list has the same name as a language code. Also fixed the absolute path to lists/ (1418670 ).
Diffstat (limited to 'bin/update')
-rwxr-xr-xbin/update42
1 files changed, 24 insertions, 18 deletions
diff --git a/bin/update b/bin/update
index 23429508..9bd42698 100755
--- a/bin/update
+++ b/bin/update
@@ -1,6 +1,6 @@
-#! @PYTHON@
+#! /usr/bin/python
#
-# Copyright (C) 1998-2005 by the Free Software Foundation, Inc.
+# Copyright (C) 1998-2008 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
@@ -342,25 +342,31 @@ script.
# and move them to the new place if there's not already
# a new one there
#
- tmpl_dir = os.path.join(mm_cfg.PREFIX, "templates")
- list_dir = os.path.join(mm_cfg.PREFIX, "lists")
- b4_tmpl_dir = os.path.join(tmpl_dir, mlist._internal_name)
- new_tmpl_dir = os.path.join(list_dir, mlist._internal_name)
- if os.path.exists(b4_tmpl_dir):
- print _("""\
+ # There is a problem with the following if the list name is equal
+ # to a language code. All the templates get moved from templates/xx
+ # to lists/xx. To avoid this, test the list name, and if it is 'en'
+ # or matches a name in the messages directory, just skip this step.
+ if (mlist._internal_name <> 'en' and mlist._internal_name not in
+ os.listdir(mm_cfg.MESSAGES_DIR)):
+ tmpl_dir = os.path.join(mm_cfg.PREFIX, "templates")
+ list_dir = mm_cfg.LIST_DATA_DIR
+ b4_tmpl_dir = os.path.join(tmpl_dir, mlist._internal_name)
+ new_tmpl_dir = os.path.join(list_dir, mlist._internal_name)
+ if os.path.exists(b4_tmpl_dir):
+ print _("""\
- This list looks like it might have <= b4 list templates around""")
- for f in os.listdir(b4_tmpl_dir):
- o_tmpl = os.path.join(b4_tmpl_dir, f)
- n_tmpl = os.path.join(new_tmpl_dir, f)
- if os.path.exists(o_tmpl):
- if not os.path.exists(n_tmpl):
- os.rename(o_tmpl, n_tmpl)
- print _('- moved %(o_tmpl)s to %(n_tmpl)s')
+ for f in os.listdir(b4_tmpl_dir):
+ o_tmpl = os.path.join(b4_tmpl_dir, f)
+ n_tmpl = os.path.join(new_tmpl_dir, f)
+ if os.path.exists(o_tmpl):
+ if not os.path.exists(n_tmpl):
+ os.rename(o_tmpl, n_tmpl)
+ print _('- moved %(o_tmpl)s to %(n_tmpl)s')
+ else:
+ print _("""\
+- both %(o_tmpl)s and %(n_tmpl)s exist, leaving untouched""")
else:
print _("""\
-- both %(o_tmpl)s and %(n_tmpl)s exist, leaving untouched""")
- else:
- print _("""\
- %(o_tmpl)s doesn't exist, leaving untouched""")
#
# Move all the templates to the en language subdirectory as required for