diff --git a/ckan/ckan_nose_plugin.py b/ckan/ckan_nose_plugin.py
index 0666b7761c3..58b9d0061a0 100644
--- a/ckan/ckan_nose_plugin.py
+++ b/ckan/ckan_nose_plugin.py
@@ -5,6 +5,7 @@
import pkg_resources
from paste.deploy import loadapp
from pylons import config
+import time
class CkanNose(Plugin):
settings = None
@@ -65,3 +66,26 @@ def describeTest(self, test):
# display module name instead of docstring
return False
+ def startTest(self, test):
+ """
+ startTest: start timing.
+ """
+ self._started = time.time()
+
+ def stopTest(self, test):
+ """
+ stopTest: stop timing, canonicalize the test name, and save
+ the run time.
+ """
+ runtime = time.time() - self._started
+
+ # CTB: HACK!
+ f = open('times.txt', 'a')
+
+ testname = str(test)
+ #if ' ' in testname:
+ # testname = testname.split(' ')[1]
+
+ f.write('%s,%s\n' % (testname, str(runtime)))
+
+ f.close()
diff --git a/ckan/controllers/user.py b/ckan/controllers/user.py
index f446c21c790..88dee13b4fa 100644
--- a/ckan/controllers/user.py
+++ b/ckan/controllers/user.py
@@ -130,8 +130,8 @@ def new(self, data=None, errors=None, error_summary=None):
if c.user and not data:
# #1799 Don't offer the registration form if already logged in
- return render('user/logout_first.html')
-
+ return render('user/logout_first.html')
+
data = data or {}
errors = errors or {}
error_summary = error_summary or {}
diff --git a/ckan/i18n/bg/LC_MESSAGES/ckan.mo b/ckan/i18n/bg/LC_MESSAGES/ckan.mo
index e8603d315ff..8a8a2acd1ce 100644
Binary files a/ckan/i18n/bg/LC_MESSAGES/ckan.mo and b/ckan/i18n/bg/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/ca/LC_MESSAGES/ckan.mo b/ckan/i18n/ca/LC_MESSAGES/ckan.mo
index 0fbf413cb40..b231709129f 100644
Binary files a/ckan/i18n/ca/LC_MESSAGES/ckan.mo and b/ckan/i18n/ca/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/cs_CZ/LC_MESSAGES/ckan.mo b/ckan/i18n/cs_CZ/LC_MESSAGES/ckan.mo
index d2e0a9cb04d..c3962d6b0f8 100644
Binary files a/ckan/i18n/cs_CZ/LC_MESSAGES/ckan.mo and b/ckan/i18n/cs_CZ/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/de/LC_MESSAGES/ckan.mo b/ckan/i18n/de/LC_MESSAGES/ckan.mo
index 18b956def3e..3b792ed1c68 100644
Binary files a/ckan/i18n/de/LC_MESSAGES/ckan.mo and b/ckan/i18n/de/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/el/LC_MESSAGES/ckan.mo b/ckan/i18n/el/LC_MESSAGES/ckan.mo
index 60e2f5f43e2..6c33b3abe60 100644
Binary files a/ckan/i18n/el/LC_MESSAGES/ckan.mo and b/ckan/i18n/el/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/es/LC_MESSAGES/ckan.mo b/ckan/i18n/es/LC_MESSAGES/ckan.mo
index 8e54d36ade3..da0685018fe 100644
Binary files a/ckan/i18n/es/LC_MESSAGES/ckan.mo and b/ckan/i18n/es/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/fi/LC_MESSAGES/ckan.mo b/ckan/i18n/fi/LC_MESSAGES/ckan.mo
index 5980d6f6a88..29c14936533 100644
Binary files a/ckan/i18n/fi/LC_MESSAGES/ckan.mo and b/ckan/i18n/fi/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/fr/LC_MESSAGES/ckan.mo b/ckan/i18n/fr/LC_MESSAGES/ckan.mo
index 9581f1a762e..ec80875c73a 100644
Binary files a/ckan/i18n/fr/LC_MESSAGES/ckan.mo and b/ckan/i18n/fr/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/hu/LC_MESSAGES/ckan.mo b/ckan/i18n/hu/LC_MESSAGES/ckan.mo
index 7911b27a98a..d0f83ac33bc 100644
Binary files a/ckan/i18n/hu/LC_MESSAGES/ckan.mo and b/ckan/i18n/hu/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/it/LC_MESSAGES/ckan.mo b/ckan/i18n/it/LC_MESSAGES/ckan.mo
index 01aebc4bc4e..73428446318 100644
Binary files a/ckan/i18n/it/LC_MESSAGES/ckan.mo and b/ckan/i18n/it/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/lt/LC_MESSAGES/ckan.mo b/ckan/i18n/lt/LC_MESSAGES/ckan.mo
index 57686dc12e2..890980448af 100644
Binary files a/ckan/i18n/lt/LC_MESSAGES/ckan.mo and b/ckan/i18n/lt/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/nl/LC_MESSAGES/ckan.mo b/ckan/i18n/nl/LC_MESSAGES/ckan.mo
index 8f9f9097bdd..d43b055cc12 100644
Binary files a/ckan/i18n/nl/LC_MESSAGES/ckan.mo and b/ckan/i18n/nl/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/no/LC_MESSAGES/ckan.mo b/ckan/i18n/no/LC_MESSAGES/ckan.mo
index bebe704de32..5eb5c0540b3 100644
Binary files a/ckan/i18n/no/LC_MESSAGES/ckan.mo and b/ckan/i18n/no/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/pl/LC_MESSAGES/ckan.mo b/ckan/i18n/pl/LC_MESSAGES/ckan.mo
index a6ff5efcad4..886c113107f 100644
Binary files a/ckan/i18n/pl/LC_MESSAGES/ckan.mo and b/ckan/i18n/pl/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo b/ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo
index 9862def0642..53c45704e2b 100644
Binary files a/ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo and b/ckan/i18n/pt_BR/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/ro/LC_MESSAGES/ckan.mo b/ckan/i18n/ro/LC_MESSAGES/ckan.mo
index c17d234070a..bec2e01c384 100644
Binary files a/ckan/i18n/ro/LC_MESSAGES/ckan.mo and b/ckan/i18n/ro/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/ru/LC_MESSAGES/ckan.mo b/ckan/i18n/ru/LC_MESSAGES/ckan.mo
index 8fd95bbbe13..4cc76893d68 100644
Binary files a/ckan/i18n/ru/LC_MESSAGES/ckan.mo and b/ckan/i18n/ru/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/sl/LC_MESSAGES/ckan.mo b/ckan/i18n/sl/LC_MESSAGES/ckan.mo
index 4290f94f909..f35ffbf5e48 100644
Binary files a/ckan/i18n/sl/LC_MESSAGES/ckan.mo and b/ckan/i18n/sl/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/sq/LC_MESSAGES/ckan.mo b/ckan/i18n/sq/LC_MESSAGES/ckan.mo
index acb7e5ee8d3..944b61bbebe 100644
Binary files a/ckan/i18n/sq/LC_MESSAGES/ckan.mo and b/ckan/i18n/sq/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/sr/LC_MESSAGES/ckan.mo b/ckan/i18n/sr/LC_MESSAGES/ckan.mo
index 5d970452733..223e46124c2 100644
Binary files a/ckan/i18n/sr/LC_MESSAGES/ckan.mo and b/ckan/i18n/sr/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo b/ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo
index 63107b69560..6aa75d5c7ce 100644
Binary files a/ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo and b/ckan/i18n/sr_Latn/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/i18n/sv/LC_MESSAGES/ckan.mo b/ckan/i18n/sv/LC_MESSAGES/ckan.mo
index cad09940fad..b81d8fe10f4 100644
Binary files a/ckan/i18n/sv/LC_MESSAGES/ckan.mo and b/ckan/i18n/sv/LC_MESSAGES/ckan.mo differ
diff --git a/ckan/templates/_util.html b/ckan/templates/_util.html
index 791125aa9c9..08c2da49f65 100644
--- a/ckan/templates/_util.html
+++ b/ckan/templates/_util.html
@@ -6,6 +6,8 @@
py:strip=""
>
+