summaryrefslogtreecommitdiff
path: root/lib/python2.7/site-packages/django/contrib/auth
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python2.7/site-packages/django/contrib/auth')
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/__init__.py154
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/admin.py183
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/backends.py136
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/context_processors.py65
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/create_superuser.py8
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/decorators.py72
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/fixtures/authtestdata.json110
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/fixtures/context-processors-users.xml17
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/fixtures/custom_user.json14
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/fixtures/natural.json32
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/fixtures/regular.json30
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/forms.py367
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/handlers/__init__.py0
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/handlers/modwsgi.py47
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/hashers.py515
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.mobin796 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.po271
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.mobin6187 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.po282
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.mobin3748 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.po279
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.mobin5753 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.po284
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.mobin5647 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.po283
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.mobin4263 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.po273
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.mobin1153 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.po272
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.mobin3668 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.po282
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.mobin5198 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.po285
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.mobin5443 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.mobin1739 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.po274
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.mobin5249 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.mobin5440 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.po291
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.mobin5372 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.mobin356 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.po268
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.mobin4396 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.po283
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.mobin5204 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.po286
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.mobin5457 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.mobin5648 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.po293
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.mobin4713 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.po287
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.mobin5274 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.po287
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.mobin5182 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.mobin6350 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.po285
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.mobin4998 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.po286
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.mobin5734 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.po293
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.mobin478 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.po271
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.mobin4703 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.po292
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.mobin5328 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.po285
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.mobin5821 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.po282
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.mobin7575 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.po284
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.mobin5398 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.po295
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.mobin5338 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.mobin4613 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.po285
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.mobin5093 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.mobin4668 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.po290
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.mobin5302 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.po286
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.mobin5913 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.po286
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.mobin8206 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.mobin4429 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.po276
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.mobin2910 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.po272
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.mobin4305 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.po275
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.mobin3686 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.po276
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.mobin5477 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.po290
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.mobin3631 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.po275
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.mobin6819 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.mobin8071 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.po283
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.mobin6594 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.mobin1122 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.po272
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.mobin5112 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.po283
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.mobin5469 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.po274
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.mobin5292 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.po293
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.mobin3456 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.po273
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.mobin6233 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.po284
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.mobin4557 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.po273
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.mobin5214 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.mobin5463 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.mobin5240 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.po294
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.mobin3684 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.po285
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.mobin6897 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.po288
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.mobin5380 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.po284
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.mobin5220 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.mobin5337 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.po287
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.mobin5566 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.po286
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.mobin4511 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.po287
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.mobin5271 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.po289
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.mobin5179 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.po281
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.mobin2977 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.po272
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.mobin3230 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.po274
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.mobin7384 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.po275
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.mobin5314 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.po293
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.mobin865 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.po271
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.mobin6754 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.po292
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.mobin889 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.po271
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.mobin4684 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.po282
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.mobin4862 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.po278
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.mobin4851 -> 0 bytes
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.po278
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/management/__init__.py193
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/management/commands/__init__.py0
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/management/commands/changepassword.py63
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/management/commands/createsuperuser.py143
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/middleware.py91
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/models.py527
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/signals.py5
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/templates/registration/password_reset_subject.txt3
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/__init__.py1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/custom_user.py200
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_access.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_messages.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_no_access.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perm_in_perms.html4
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perms.html4
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_test_access.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_user.html4
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/logged_out.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/login.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_change_form.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_complete.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_confirm.html5
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_done.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_email.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_form.html1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_subject.txt1
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_auth_backends.py506
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_basic.py257
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_context_processors.py170
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_decorators.py51
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_forms.py432
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_handlers.py79
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_hashers.py322
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_management.py249
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_models.py168
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_remote_user.py198
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_signals.py80
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_tokens.py69
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/test_views.py780
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/urls.py90
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/urls_admin.py18
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tests/utils.py9
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/tokens.py73
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/urls.py22
-rw-r--r--lib/python2.7/site-packages/django/contrib/auth/views.py284
212 files changed, 0 insertions, 28378 deletions
diff --git a/lib/python2.7/site-packages/django/contrib/auth/__init__.py b/lib/python2.7/site-packages/django/contrib/auth/__init__.py
deleted file mode 100644
index 32569e6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/__init__.py
+++ /dev/null
@@ -1,154 +0,0 @@
-import re
-
-from django.conf import settings
-from django.core.exceptions import ImproperlyConfigured, PermissionDenied
-from django.utils.module_loading import import_by_path
-from django.middleware.csrf import rotate_token
-
-from .signals import user_logged_in, user_logged_out, user_login_failed
-
-SESSION_KEY = '_auth_user_id'
-BACKEND_SESSION_KEY = '_auth_user_backend'
-REDIRECT_FIELD_NAME = 'next'
-
-
-def load_backend(path):
- return import_by_path(path)()
-
-
-def get_backends():
- backends = []
- for backend_path in settings.AUTHENTICATION_BACKENDS:
- backends.append(load_backend(backend_path))
- if not backends:
- raise ImproperlyConfigured('No authentication backends have been defined. Does AUTHENTICATION_BACKENDS contain anything?')
- return backends
-
-
-def _clean_credentials(credentials):
- """
- Cleans a dictionary of credentials of potentially sensitive info before
- sending to less secure functions.
-
- Not comprehensive - intended for user_login_failed signal
- """
- SENSITIVE_CREDENTIALS = re.compile('api|token|key|secret|password|signature', re.I)
- CLEANSED_SUBSTITUTE = '********************'
- for key in credentials:
- if SENSITIVE_CREDENTIALS.search(key):
- credentials[key] = CLEANSED_SUBSTITUTE
- return credentials
-
-
-def authenticate(**credentials):
- """
- If the given credentials are valid, return a User object.
- """
- for backend in get_backends():
- try:
- user = backend.authenticate(**credentials)
- except TypeError:
- # This backend doesn't accept these credentials as arguments. Try the next one.
- continue
- except PermissionDenied:
- # This backend says to stop in our tracks - this user should not be allowed in at all.
- return None
- if user is None:
- continue
- # Annotate the user object with the path of the backend.
- user.backend = "%s.%s" % (backend.__module__, backend.__class__.__name__)
- return user
-
- # The credentials supplied are invalid to all backends, fire signal
- user_login_failed.send(sender=__name__,
- credentials=_clean_credentials(credentials))
-
-
-def login(request, user):
- """
- Persist a user id and a backend in the request. This way a user doesn't
- have to reauthenticate on every request. Note that data set during
- the anonymous session is retained when the user logs in.
- """
- if user is None:
- user = request.user
- # TODO: It would be nice to support different login methods, like signed cookies.
- if SESSION_KEY in request.session:
- if request.session[SESSION_KEY] != user.pk:
- # To avoid reusing another user's session, create a new, empty
- # session if the existing session corresponds to a different
- # authenticated user.
- request.session.flush()
- else:
- request.session.cycle_key()
- request.session[SESSION_KEY] = user.pk
- request.session[BACKEND_SESSION_KEY] = user.backend
- if hasattr(request, 'user'):
- request.user = user
- rotate_token(request)
- user_logged_in.send(sender=user.__class__, request=request, user=user)
-
-
-def logout(request):
- """
- Removes the authenticated user's ID from the request and flushes their
- session data.
- """
- # Dispatch the signal before the user is logged out so the receivers have a
- # chance to find out *who* logged out.
- user = getattr(request, 'user', None)
- if hasattr(user, 'is_authenticated') and not user.is_authenticated():
- user = None
- user_logged_out.send(sender=user.__class__, request=request, user=user)
-
- # remember language choice saved to session
- language = request.session.get('django_language')
-
- request.session.flush()
-
- if language is not None:
- request.session['django_language'] = language
-
- if hasattr(request, 'user'):
- from django.contrib.auth.models import AnonymousUser
- request.user = AnonymousUser()
-
-
-def get_user_model():
- """
- Returns the User model that is active in this project.
- """
- from django.db.models import get_model
-
- try:
- app_label, model_name = settings.AUTH_USER_MODEL.split('.')
- except ValueError:
- raise ImproperlyConfigured("AUTH_USER_MODEL must be of the form 'app_label.model_name'")
- user_model = get_model(app_label, model_name)
- if user_model is None:
- raise ImproperlyConfigured("AUTH_USER_MODEL refers to model '%s' that has not been installed" % settings.AUTH_USER_MODEL)
- return user_model
-
-
-def get_user(request):
- """
- Returns the user model instance associated with the given request session.
- If no user is retrieved an instance of `AnonymousUser` is returned.
- """
- from .models import AnonymousUser
- try:
- user_id = request.session[SESSION_KEY]
- backend_path = request.session[BACKEND_SESSION_KEY]
- assert backend_path in settings.AUTHENTICATION_BACKENDS
- backend = load_backend(backend_path)
- user = backend.get_user(user_id) or AnonymousUser()
- except (KeyError, AssertionError):
- user = AnonymousUser()
- return user
-
-
-def get_permission_codename(action, opts):
- """
- Returns the codename of the permission for the specified action.
- """
- return '%s_%s' % (action, opts.model_name)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/admin.py b/lib/python2.7/site-packages/django/contrib/auth/admin.py
deleted file mode 100644
index 033e3cf..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/admin.py
+++ /dev/null
@@ -1,183 +0,0 @@
-from django.db import transaction
-from django.conf import settings
-from django.contrib import admin
-from django.contrib.admin.options import IS_POPUP_VAR
-from django.contrib.auth.forms import (UserCreationForm, UserChangeForm,
- AdminPasswordChangeForm)
-from django.contrib.auth.models import User, Group
-from django.contrib import messages
-from django.core.exceptions import PermissionDenied
-from django.http import HttpResponseRedirect, Http404
-from django.shortcuts import get_object_or_404
-from django.template.response import TemplateResponse
-from django.utils.html import escape
-from django.utils.decorators import method_decorator
-from django.utils.translation import ugettext, ugettext_lazy as _
-from django.views.decorators.csrf import csrf_protect
-from django.views.decorators.debug import sensitive_post_parameters
-
-csrf_protect_m = method_decorator(csrf_protect)
-sensitive_post_parameters_m = method_decorator(sensitive_post_parameters())
-
-
-class GroupAdmin(admin.ModelAdmin):
- search_fields = ('name',)
- ordering = ('name',)
- filter_horizontal = ('permissions',)
-
- def formfield_for_manytomany(self, db_field, request=None, **kwargs):
- if db_field.name == 'permissions':
- qs = kwargs.get('queryset', db_field.rel.to.objects)
- # Avoid a major performance hit resolving permission names which
- # triggers a content_type load:
- kwargs['queryset'] = qs.select_related('content_type')
- return super(GroupAdmin, self).formfield_for_manytomany(
- db_field, request=request, **kwargs)
-
-
-class UserAdmin(admin.ModelAdmin):
- add_form_template = 'admin/auth/user/add_form.html'
- change_user_password_template = None
- fieldsets = (
- (None, {'fields': ('username', 'password')}),
- (_('Personal info'), {'fields': ('first_name', 'last_name', 'email')}),
- (_('Permissions'), {'fields': ('is_active', 'is_staff', 'is_superuser',
- 'groups', 'user_permissions')}),
- (_('Important dates'), {'fields': ('last_login', 'date_joined')}),
- )
- add_fieldsets = (
- (None, {
- 'classes': ('wide',),
- 'fields': ('username', 'password1', 'password2')}
- ),
- )
- form = UserChangeForm
- add_form = UserCreationForm
- change_password_form = AdminPasswordChangeForm
- list_display = ('username', 'email', 'first_name', 'last_name', 'is_staff')
- list_filter = ('is_staff', 'is_superuser', 'is_active', 'groups')
- search_fields = ('username', 'first_name', 'last_name', 'email')
- ordering = ('username',)
- filter_horizontal = ('groups', 'user_permissions',)
-
- def get_fieldsets(self, request, obj=None):
- if not obj:
- return self.add_fieldsets
- return super(UserAdmin, self).get_fieldsets(request, obj)
-
- def get_form(self, request, obj=None, **kwargs):
- """
- Use special form during user creation
- """
- defaults = {}
- if obj is None:
- defaults.update({
- 'form': self.add_form,
- 'fields': admin.util.flatten_fieldsets(self.add_fieldsets),
- })
- defaults.update(kwargs)
- return super(UserAdmin, self).get_form(request, obj, **defaults)
-
- def get_urls(self):
- from django.conf.urls import patterns
- return patterns('',
- (r'^(\d+)/password/$',
- self.admin_site.admin_view(self.user_change_password))
- ) + super(UserAdmin, self).get_urls()
-
- def lookup_allowed(self, lookup, value):
- # See #20078: we don't want to allow any lookups involving passwords.
- if lookup.startswith('password'):
- return False
- return super(UserAdmin, self).lookup_allowed(lookup, value)
-
- @sensitive_post_parameters_m
- @csrf_protect_m
- @transaction.atomic
- def add_view(self, request, form_url='', extra_context=None):
- # It's an error for a user to have add permission but NOT change
- # permission for users. If we allowed such users to add users, they
- # could create superusers, which would mean they would essentially have
- # the permission to change users. To avoid the problem entirely, we
- # disallow users from adding users if they don't have change
- # permission.
- if not self.has_change_permission(request):
- if self.has_add_permission(request) and settings.DEBUG:
- # Raise Http404 in debug mode so that the user gets a helpful
- # error message.
- raise Http404(
- 'Your user does not have the "Change user" permission. In '
- 'order to add users, Django requires that your user '
- 'account have both the "Add user" and "Change user" '
- 'permissions set.')
- raise PermissionDenied
- if extra_context is None:
- extra_context = {}
- username_field = self.model._meta.get_field(self.model.USERNAME_FIELD)
- defaults = {
- 'auto_populated_fields': (),
- 'username_help_text': username_field.help_text,
- }
- extra_context.update(defaults)
- return super(UserAdmin, self).add_view(request, form_url,
- extra_context)
-
- @sensitive_post_parameters_m
- def user_change_password(self, request, id, form_url=''):
- if not self.has_change_permission(request):
- raise PermissionDenied
- user = get_object_or_404(self.get_queryset(request), pk=id)
- if request.method == 'POST':
- form = self.change_password_form(user, request.POST)
- if form.is_valid():
- form.save()
- change_message = self.construct_change_message(request, form, None)
- self.log_change(request, request.user, change_message)
- msg = ugettext('Password changed successfully.')
- messages.success(request, msg)
- return HttpResponseRedirect('..')
- else:
- form = self.change_password_form(user)
-
- fieldsets = [(None, {'fields': list(form.base_fields)})]
- adminForm = admin.helpers.AdminForm(form, fieldsets, {})
-
- context = {
- 'title': _('Change password: %s') % escape(user.get_username()),
- 'adminForm': adminForm,
- 'form_url': form_url,
- 'form': form,
- 'is_popup': IS_POPUP_VAR in request.REQUEST,
- 'add': True,
- 'change': False,
- 'has_delete_permission': False,
- 'has_change_permission': True,
- 'has_absolute_url': False,
- 'opts': self.model._meta,
- 'original': user,
- 'save_as': False,
- 'show_save': True,
- }
- return TemplateResponse(request,
- self.change_user_password_template or
- 'admin/auth/user/change_password.html',
- context, current_app=self.admin_site.name)
-
- def response_add(self, request, obj, post_url_continue=None):
- """
- Determines the HttpResponse for the add_view stage. It mostly defers to
- its superclass implementation but is customized because the User model
- has a slightly different workflow.
- """
- # We should allow further modification of the user just added i.e. the
- # 'Save' button should behave like the 'Save and continue editing'
- # button except in two scenarios:
- # * The user has pressed the 'Save and add another' button
- # * We are adding a user in a popup
- if '_addanother' not in request.POST and IS_POPUP_VAR not in request.POST:
- request.POST['_continue'] = 1
- return super(UserAdmin, self).response_add(request, obj,
- post_url_continue)
-
-admin.site.register(Group, GroupAdmin)
-admin.site.register(User, UserAdmin)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/backends.py b/lib/python2.7/site-packages/django/contrib/auth/backends.py
deleted file mode 100644
index 006c88d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/backends.py
+++ /dev/null
@@ -1,136 +0,0 @@
-from __future__ import unicode_literals
-from django.contrib.auth import get_user_model
-from django.contrib.auth.models import Permission
-
-
-class ModelBackend(object):
- """
- Authenticates against settings.AUTH_USER_MODEL.
- """
-
- def authenticate(self, username=None, password=None, **kwargs):
- UserModel = get_user_model()
- if username is None:
- username = kwargs.get(UserModel.USERNAME_FIELD)
- try:
- user = UserModel._default_manager.get_by_natural_key(username)
- if user.check_password(password):
- return user
- except UserModel.DoesNotExist:
- # Run the default password hasher once to reduce the timing
- # difference between an existing and a non-existing user (#20760).
- UserModel().set_password(password)
-
- def get_group_permissions(self, user_obj, obj=None):
- """
- Returns a set of permission strings that this user has through his/her
- groups.
- """
- if user_obj.is_anonymous() or obj is not None:
- return set()
- if not hasattr(user_obj, '_group_perm_cache'):
- if user_obj.is_superuser:
- perms = Permission.objects.all()
- else:
- user_groups_field = get_user_model()._meta.get_field('groups')
- user_groups_query = 'group__%s' % user_groups_field.related_query_name()
- perms = Permission.objects.filter(**{user_groups_query: user_obj})
- perms = perms.values_list('content_type__app_label', 'codename').order_by()
- user_obj._group_perm_cache = set(["%s.%s" % (ct, name) for ct, name in perms])
- return user_obj._group_perm_cache
-
- def get_all_permissions(self, user_obj, obj=None):
- if user_obj.is_anonymous() or obj is not None:
- return set()
- if not hasattr(user_obj, '_perm_cache'):
- user_obj._perm_cache = set(["%s.%s" % (p.content_type.app_label, p.codename) for p in user_obj.user_permissions.select_related()])
- user_obj._perm_cache.update(self.get_group_permissions(user_obj))
- return user_obj._perm_cache
-
- def has_perm(self, user_obj, perm, obj=None):
- if not user_obj.is_active:
- return False
- return perm in self.get_all_permissions(user_obj, obj)
-
- def has_module_perms(self, user_obj, app_label):
- """
- Returns True if user_obj has any permissions in the given app_label.
- """
- if not user_obj.is_active:
- return False
- for perm in self.get_all_permissions(user_obj):
- if perm[:perm.index('.')] == app_label:
- return True
- return False
-
- def get_user(self, user_id):
- UserModel = get_user_model()
- try:
- return UserModel._default_manager.get(pk=user_id)
- except UserModel.DoesNotExist:
- return None
-
-
-class RemoteUserBackend(ModelBackend):
- """
- This backend is to be used in conjunction with the ``RemoteUserMiddleware``
- found in the middleware module of this package, and is used when the server
- is handling authentication outside of Django.
-
- By default, the ``authenticate`` method creates ``User`` objects for
- usernames that don't already exist in the database. Subclasses can disable
- this behavior by setting the ``create_unknown_user`` attribute to
- ``False``.
- """
-
- # Create a User object if not already in the database?
- create_unknown_user = True
-
- def authenticate(self, remote_user):
- """
- The username passed as ``remote_user`` is considered trusted. This
- method simply returns the ``User`` object with the given username,
- creating a new ``User`` object if ``create_unknown_user`` is ``True``.
-
- Returns None if ``create_unknown_user`` is ``False`` and a ``User``
- object with the given username is not found in the database.
- """
- if not remote_user:
- return
- user = None
- username = self.clean_username(remote_user)
-
- UserModel = get_user_model()
-
- # Note that this could be accomplished in one try-except clause, but
- # instead we use get_or_create when creating unknown users since it has
- # built-in safeguards for multiple threads.
- if self.create_unknown_user:
- user, created = UserModel.objects.get_or_create(**{
- UserModel.USERNAME_FIELD: username
- })
- if created:
- user = self.configure_user(user)
- else:
- try:
- user = UserModel.objects.get_by_natural_key(username)
- except UserModel.DoesNotExist:
- pass
- return user
-
- def clean_username(self, username):
- """
- Performs any cleaning on the "username" prior to using it to get or
- create the user object. Returns the cleaned username.
-
- By default, returns the username unchanged.
- """
- return username
-
- def configure_user(self, user):
- """
- Configures a user after creation and returns the updated user.
-
- By default, returns the user unmodified.
- """
- return user
diff --git a/lib/python2.7/site-packages/django/contrib/auth/context_processors.py b/lib/python2.7/site-packages/django/contrib/auth/context_processors.py
deleted file mode 100644
index b8ead73..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/context_processors.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# PermWrapper and PermLookupDict proxy the permissions system into objects that
-# the template system can understand.
-
-class PermLookupDict(object):
- def __init__(self, user, app_label):
- self.user, self.app_label = user, app_label
-
- def __repr__(self):
- return str(self.user.get_all_permissions())
-
- def __getitem__(self, perm_name):
- return self.user.has_perm("%s.%s" % (self.app_label, perm_name))
-
- def __iter__(self):
- # To fix 'item in perms.someapp' and __getitem__ iteraction we need to
- # define __iter__. See #18979 for details.
- raise TypeError("PermLookupDict is not iterable.")
-
- def __bool__(self):
- return self.user.has_module_perms(self.app_label)
-
- def __nonzero__(self): # Python 2 compatibility
- return type(self).__bool__(self)
-
-
-class PermWrapper(object):
- def __init__(self, user):
- self.user = user
-
- def __getitem__(self, app_label):
- return PermLookupDict(self.user, app_label)
-
- def __iter__(self):
- # I am large, I contain multitudes.
- raise TypeError("PermWrapper is not iterable.")
-
- def __contains__(self, perm_name):
- """
- Lookup by "someapp" or "someapp.someperm" in perms.
- """
- if '.' not in perm_name:
- # The name refers to module.
- return bool(self[perm_name])
- app_label, perm_name = perm_name.split('.', 1)
- return self[app_label][perm_name]
-
-
-def auth(request):
- """
- Returns context variables required by apps that use Django's authentication
- system.
-
- If there is no 'user' attribute in the request, uses AnonymousUser (from
- django.contrib.auth).
- """
- if hasattr(request, 'user'):
- user = request.user
- else:
- from django.contrib.auth.models import AnonymousUser
- user = AnonymousUser()
-
- return {
- 'user': user,
- 'perms': PermWrapper(user),
- }
diff --git a/lib/python2.7/site-packages/django/contrib/auth/create_superuser.py b/lib/python2.7/site-packages/django/contrib/auth/create_superuser.py
deleted file mode 100644
index 7b58678..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/create_superuser.py
+++ /dev/null
@@ -1,8 +0,0 @@
-"""
-Create a superuser from the command line. Deprecated; use manage.py
-createsuperuser instead.
-"""
-
-if __name__ == "__main__":
- from django.core.management import call_command
- call_command("createsuperuser")
diff --git a/lib/python2.7/site-packages/django/contrib/auth/decorators.py b/lib/python2.7/site-packages/django/contrib/auth/decorators.py
deleted file mode 100644
index 19f7028..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/decorators.py
+++ /dev/null
@@ -1,72 +0,0 @@
-from functools import wraps
-from django.conf import settings
-from django.contrib.auth import REDIRECT_FIELD_NAME
-from django.core.exceptions import PermissionDenied
-from django.utils.decorators import available_attrs
-from django.utils.encoding import force_str
-from django.utils.six.moves.urllib.parse import urlparse
-from django.shortcuts import resolve_url
-
-
-def user_passes_test(test_func, login_url=None, redirect_field_name=REDIRECT_FIELD_NAME):
- """
- Decorator for views that checks that the user passes the given test,
- redirecting to the log-in page if necessary. The test should be a callable
- that takes the user object and returns True if the user passes.
- """
-
- def decorator(view_func):
- @wraps(view_func, assigned=available_attrs(view_func))
- def _wrapped_view(request, *args, **kwargs):
- if test_func(request.user):
- return view_func(request, *args, **kwargs)
- path = request.build_absolute_uri()
- # urlparse chokes on lazy objects in Python 3, force to str
- resolved_login_url = force_str(
- resolve_url(login_url or settings.LOGIN_URL))
- # If the login url is the same scheme and net location then just
- # use the path as the "next" url.
- login_scheme, login_netloc = urlparse(resolved_login_url)[:2]
- current_scheme, current_netloc = urlparse(path)[:2]
- if ((not login_scheme or login_scheme == current_scheme) and
- (not login_netloc or login_netloc == current_netloc)):
- path = request.get_full_path()
- from django.contrib.auth.views import redirect_to_login
- return redirect_to_login(
- path, resolved_login_url, redirect_field_name)
- return _wrapped_view
- return decorator
-
-
-def login_required(function=None, redirect_field_name=REDIRECT_FIELD_NAME, login_url=None):
- """
- Decorator for views that checks that the user is logged in, redirecting
- to the log-in page if necessary.
- """
- actual_decorator = user_passes_test(
- lambda u: u.is_authenticated(),
- login_url=login_url,
- redirect_field_name=redirect_field_name
- )
- if function:
- return actual_decorator(function)
- return actual_decorator
-
-
-def permission_required(perm, login_url=None, raise_exception=False):
- """
- Decorator for views that checks whether a user has a particular permission
- enabled, redirecting to the log-in page if neccesary.
- If the raise_exception parameter is given the PermissionDenied exception
- is raised.
- """
- def check_perms(user):
- # First check if the user has the permission (even anon users)
- if user.has_perm(perm):
- return True
- # In case the 403 handler should be called raise the exception
- if raise_exception:
- raise PermissionDenied
- # As the last resort, show the login form
- return False
- return user_passes_test(check_perms, login_url=login_url)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/fixtures/authtestdata.json b/lib/python2.7/site-packages/django/contrib/auth/fixtures/authtestdata.json
deleted file mode 100644
index 9313288..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/fixtures/authtestdata.json
+++ /dev/null
@@ -1,110 +0,0 @@
-[
- {
- "pk": "1",
- "model": "auth.user",
- "fields": {
- "username": "testclient",
- "first_name": "Test",
- "last_name": "Client",
- "is_active": true,
- "is_superuser": false,
- "is_staff": false,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "sha1$6efc0$f93efe9fd7542f25a7be94871ea45aa95de57161",
- "email": "testclient@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- },
- {
- "pk": "2",
- "model": "auth.user",
- "fields": {
- "username": "inactive",
- "first_name": "Inactive",
- "last_name": "User",
- "is_active": false,
- "is_superuser": false,
- "is_staff": false,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "sha1$6efc0$f93efe9fd7542f25a7be94871ea45aa95de57161",
- "email": "testclient2@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- },
- {
- "pk": "3",
- "model": "auth.user",
- "fields": {
- "username": "staff",
- "first_name": "Staff",
- "last_name": "Member",
- "is_active": true,
- "is_superuser": false,
- "is_staff": true,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "sha1$6efc0$f93efe9fd7542f25a7be94871ea45aa95de57161",
- "email": "staffmember@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- },
- {
- "pk": "4",
- "model": "auth.user",
- "fields": {
- "username": "empty_password",
- "first_name": "Empty",
- "last_name": "Password",
- "is_active": true,
- "is_superuser": false,
- "is_staff": false,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "",
- "email": "empty_password@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- },
- {
- "pk": "5",
- "model": "auth.user",
- "fields": {
- "username": "unmanageable_password",
- "first_name": "Unmanageable",
- "last_name": "Password",
- "is_active": true,
- "is_superuser": false,
- "is_staff": false,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "$",
- "email": "unmanageable_password@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- },
- {
- "pk": "6",
- "model": "auth.user",
- "fields": {
- "username": "unknown_password",
- "first_name": "Unknown",
- "last_name": "Password",
- "is_active": true,
- "is_superuser": false,
- "is_staff": false,
- "last_login": "2006-12-17 07:03:31",
- "groups": [],
- "user_permissions": [],
- "password": "foo$bar",
- "email": "unknown_password@example.com",
- "date_joined": "2006-12-17 07:03:31"
- }
- }
-]
diff --git a/lib/python2.7/site-packages/django/contrib/auth/fixtures/context-processors-users.xml b/lib/python2.7/site-packages/django/contrib/auth/fixtures/context-processors-users.xml
deleted file mode 100644
index aba8f4a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/fixtures/context-processors-users.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<django-objects version="1.0">
- <object pk="100" model="auth.user">
- <field type="CharField" name="username">super</field>
- <field type="CharField" name="first_name">Super</field>
- <field type="CharField" name="last_name">User</field>
- <field type="CharField" name="email">super@example.com</field>
- <field type="CharField" name="password">sha1$995a3$6011485ea3834267d719b4c801409b8b1ddd0158</field>
- <field type="BooleanField" name="is_staff">True</field>
- <field type="BooleanField" name="is_active">True</field>
- <field type="BooleanField" name="is_superuser">True</field>
- <field type="DateTimeField" name="last_login">2007-05-30 13:20:10</field>
- <field type="DateTimeField" name="date_joined">2007-05-30 13:20:10</field>
- <field to="auth.group" name="groups" rel="ManyToManyRel"></field>
- <field to="auth.permission" name="user_permissions" rel="ManyToManyRel"></field>
- </object>
-</django-objects>
diff --git a/lib/python2.7/site-packages/django/contrib/auth/fixtures/custom_user.json b/lib/python2.7/site-packages/django/contrib/auth/fixtures/custom_user.json
deleted file mode 100644
index 770bea6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/fixtures/custom_user.json
+++ /dev/null
@@ -1,14 +0,0 @@
-[
- {
- "pk": "1",
- "model": "auth.customuser",
- "fields": {
- "password": "sha1$6efc0$f93efe9fd7542f25a7be94871ea45aa95de57161",
- "last_login": "2006-12-17 07:03:31",
- "email": "staffmember@example.com",
- "is_active": true,
- "is_admin": false,
- "date_of_birth": "1976-11-08"
- }
- }
-] \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/fixtures/natural.json b/lib/python2.7/site-packages/django/contrib/auth/fixtures/natural.json
deleted file mode 100644
index 795c1a3..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/fixtures/natural.json
+++ /dev/null
@@ -1,32 +0,0 @@
-[
- {
- "pk": 1,
- "model": "auth.group",
- "fields": {
- "name": "my_group",
- "permissions": []
- }
- },
- {
- "pk": 1,
- "model": "auth.user",
- "fields": {
- "username": "my_username",
- "first_name": "",
- "last_name": "",
- "is_active": true,
- "is_superuser": true,
- "is_staff": true,
- "last_login": "2012-01-13 00:14:00",
- "groups": [
- [
- "my_group"
- ]
- ],
- "user_permissions": [],
- "password": "pbkdf2_sha256$10000$LUyhxJjuLwXF$f6Zbpnx1L5dPze8m0itBaHMDyZ/n6JyhuavQy2RrBIM=",
- "email": "email@example.com",
- "date_joined": "2012-01-13 00:14:00"
- }
- }
-]
diff --git a/lib/python2.7/site-packages/django/contrib/auth/fixtures/regular.json b/lib/python2.7/site-packages/django/contrib/auth/fixtures/regular.json
deleted file mode 100644
index dad891d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/fixtures/regular.json
+++ /dev/null
@@ -1,30 +0,0 @@
-[
- {
- "pk": 1,
- "model": "auth.group",
- "fields": {
- "name": "my_group",
- "permissions": []
- }
- },
- {
- "pk": 1,
- "model": "auth.user",
- "fields": {
- "username": "my_username",
- "first_name": "",
- "last_name": "",
- "is_active": true,
- "is_superuser": true,
- "is_staff": true,
- "last_login": "2012-01-13 00:14:00",
- "groups": [
- 1
- ],
- "user_permissions": [],
- "password": "pbkdf2_sha256$10000$LUyhxJjuLwXF$f6Zbpnx1L5dPze8m0itBaHMDyZ/n6JyhuavQy2RrBIM=",
- "email": "email@example.com",
- "date_joined": "2012-01-13 00:14:00"
- }
- }
-]
diff --git a/lib/python2.7/site-packages/django/contrib/auth/forms.py b/lib/python2.7/site-packages/django/contrib/auth/forms.py
deleted file mode 100644
index 081d9e5..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/forms.py
+++ /dev/null
@@ -1,367 +0,0 @@
-from __future__ import unicode_literals
-
-import warnings
-
-from django import forms
-from django.forms.util import flatatt
-from django.template import loader
-from django.utils.datastructures import SortedDict
-from django.utils.encoding import force_bytes
-from django.utils.html import format_html, format_html_join
-from django.utils.http import urlsafe_base64_encode
-from django.utils.safestring import mark_safe
-from django.utils.text import capfirst
-from django.utils.translation import ugettext, ugettext_lazy as _
-
-from django.contrib.auth import authenticate, get_user_model
-from django.contrib.auth.models import User
-from django.contrib.auth.hashers import UNUSABLE_PASSWORD_PREFIX, identify_hasher
-from django.contrib.auth.tokens import default_token_generator
-from django.contrib.sites.models import get_current_site
-
-
-UNMASKED_DIGITS_TO_SHOW = 6
-
-mask_password = lambda p: "%s%s" % (p[:UNMASKED_DIGITS_TO_SHOW], "*" * max(len(p) - UNMASKED_DIGITS_TO_SHOW, 0))
-
-
-class ReadOnlyPasswordHashWidget(forms.Widget):
- def render(self, name, value, attrs):
- encoded = value
- final_attrs = self.build_attrs(attrs)
-
- if not encoded or encoded.startswith(UNUSABLE_PASSWORD_PREFIX):
- summary = mark_safe("<strong>%s</strong>" % ugettext("No password set."))
- else:
- try:
- hasher = identify_hasher(encoded)
- except ValueError:
- summary = mark_safe("<strong>%s</strong>" % ugettext(
- "Invalid password format or unknown hashing algorithm."))
- else:
- summary = format_html_join('',
- "<strong>{0}</strong>: {1} ",
- ((ugettext(key), value)
- for key, value in hasher.safe_summary(encoded).items())
- )
-
- return format_html("<div{0}>{1}</div>", flatatt(final_attrs), summary)
-
-
-class ReadOnlyPasswordHashField(forms.Field):
- widget = ReadOnlyPasswordHashWidget
-
- def __init__(self, *args, **kwargs):
- kwargs.setdefault("required", False)
- super(ReadOnlyPasswordHashField, self).__init__(*args, **kwargs)
-
- def bound_data(self, data, initial):
- # Always return initial because the widget doesn't
- # render an input field.
- return initial
-
- def _has_changed(self, initial, data):
- return False
-
-
-class UserCreationForm(forms.ModelForm):
- """
- A form that creates a user, with no privileges, from the given username and
- password.
- """
- error_messages = {
- 'duplicate_username': _("A user with that username already exists."),
- 'password_mismatch': _("The two password fields didn't match."),
- }
- username = forms.RegexField(label=_("Username"), max_length=30,
- regex=r'^[\w.@+-]+$',
- help_text=_("Required. 30 characters or fewer. Letters, digits and "
- "@/./+/-/_ only."),
- error_messages={
- 'invalid': _("This value may contain only letters, numbers and "
- "@/./+/-/_ characters.")})
- password1 = forms.CharField(label=_("Password"),
- widget=forms.PasswordInput)
- password2 = forms.CharField(label=_("Password confirmation"),
- widget=forms.PasswordInput,
- help_text=_("Enter the same password as above, for verification."))
-
- class Meta:
- model = User
- fields = ("username",)
-
- def clean_username(self):
- # Since User.username is unique, this check is redundant,
- # but it sets a nicer error message than the ORM. See #13147.
- username = self.cleaned_data["username"]
- try:
- User._default_manager.get(username=username)
- except User.DoesNotExist:
- return username
- raise forms.ValidationError(
- self.error_messages['duplicate_username'],
- code='duplicate_username',
- )
-
- def clean_password2(self):
- password1 = self.cleaned_data.get("password1")
- password2 = self.cleaned_data.get("password2")
- if password1 and password2 and password1 != password2:
- raise forms.ValidationError(
- self.error_messages['password_mismatch'],
- code='password_mismatch',
- )
- return password2
-
- def save(self, commit=True):
- user = super(UserCreationForm, self).save(commit=False)
- user.set_password(self.cleaned_data["password1"])
- if commit:
- user.save()
- return user
-
-
-class UserChangeForm(forms.ModelForm):
- username = forms.RegexField(
- label=_("Username"), max_length=30, regex=r"^[\w.@+-]+$",
- help_text=_("Required. 30 characters or fewer. Letters, digits and "
- "@/./+/-/_ only."),
- error_messages={
- 'invalid': _("This value may contain only letters, numbers and "
- "@/./+/-/_ characters.")})
- password = ReadOnlyPasswordHashField(label=_("Password"),
- help_text=_("Raw passwords are not stored, so there is no way to see "
- "this user's password, but you can change the password "
- "using <a href=\"password/\">this form</a>."))
-
- class Meta:
- model = User
- fields = '__all__'
-
- def __init__(self, *args, **kwargs):
- super(UserChangeForm, self).__init__(*args, **kwargs)
- f = self.fields.get('user_permissions', None)
- if f is not None:
- f.queryset = f.queryset.select_related('content_type')
-
- def clean_password(self):
- # Regardless of what the user provides, return the initial value.
- # This is done here, rather than on the field, because the
- # field does not have access to the initial value
- return self.initial["password"]
-
-
-class AuthenticationForm(forms.Form):
- """
- Base class for authenticating users. Extend this to get a form that accepts
- username/password logins.
- """
- username = forms.CharField(max_length=254)
- password = forms.CharField(label=_("Password"), widget=forms.PasswordInput)
-
- error_messages = {
- 'invalid_login': _("Please enter a correct %(username)s and password. "
- "Note that both fields may be case-sensitive."),
- 'inactive': _("This account is inactive."),
- }
-
- def __init__(self, request=None, *args, **kwargs):
- """
- The 'request' parameter is set for custom auth use by subclasses.
- The form data comes in via the standard 'data' kwarg.
- """
- self.request = request
- self.user_cache = None
- super(AuthenticationForm, self).__init__(*args, **kwargs)
-
- # Set the label for the "username" field.
- UserModel = get_user_model()
- self.username_field = UserModel._meta.get_field(UserModel.USERNAME_FIELD)
- if self.fields['username'].label is None:
- self.fields['username'].label = capfirst(self.username_field.verbose_name)
-
- def clean(self):
- username = self.cleaned_data.get('username')
- password = self.cleaned_data.get('password')
-
- if username and password:
- self.user_cache = authenticate(username=username,
- password=password)
- if self.user_cache is None:
- raise forms.ValidationError(
- self.error_messages['invalid_login'],
- code='invalid_login',
- params={'username': self.username_field.verbose_name},
- )
- elif not self.user_cache.is_active:
- raise forms.ValidationError(
- self.error_messages['inactive'],
- code='inactive',
- )
- return self.cleaned_data
-
- def check_for_test_cookie(self):
- warnings.warn("check_for_test_cookie is deprecated; ensure your login "
- "view is CSRF-protected.", DeprecationWarning)
-
- def get_user_id(self):
- if self.user_cache:
- return self.user_cache.id
- return None
-
- def get_user(self):
- return self.user_cache
-
-
-class PasswordResetForm(forms.Form):
- email = forms.EmailField(label=_("Email"), max_length=254)
-
- def save(self, domain_override=None,
- subject_template_name='registration/password_reset_subject.txt',
- email_template_name='registration/password_reset_email.html',
- use_https=False, token_generator=default_token_generator,
- from_email=None, request=None):
- """
- Generates a one-use only link for resetting password and sends to the
- user.
- """
- from django.core.mail import send_mail
- UserModel = get_user_model()
- email = self.cleaned_data["email"]
- active_users = UserModel._default_manager.filter(
- email__iexact=email, is_active=True)
- for user in active_users:
- # Make sure that no email is sent to a user that actually has
- # a password marked as unusable
- if not user.has_usable_password():
- continue
- if not domain_override:
- current_site = get_current_site(request)
- site_name = current_site.name
- domain = current_site.domain
- else:
- site_name = domain = domain_override
- c = {
- 'email': user.email,
- 'domain': domain,
- 'site_name': site_name,
- 'uid': urlsafe_base64_encode(force_bytes(user.pk)),
- 'user': user,
- 'token': token_generator.make_token(user),
- 'protocol': 'https' if use_https else 'http',
- }
- subject = loader.render_to_string(subject_template_name, c)
- # Email subject *must not* contain newlines
- subject = ''.join(subject.splitlines())
- email = loader.render_to_string(email_template_name, c)
- send_mail(subject, email, from_email, [user.email])
-
-
-class SetPasswordForm(forms.Form):
- """
- A form that lets a user change set his/her password without entering the
- old password
- """
- error_messages = {
- 'password_mismatch': _("The two password fields didn't match."),
- }
- new_password1 = forms.CharField(label=_("New password"),
- widget=forms.PasswordInput)
- new_password2 = forms.CharField(label=_("New password confirmation"),
- widget=forms.PasswordInput)
-
- def __init__(self, user, *args, **kwargs):
- self.user = user
- super(SetPasswordForm, self).__init__(*args, **kwargs)
-
- def clean_new_password2(self):
- password1 = self.cleaned_data.get('new_password1')
- password2 = self.cleaned_data.get('new_password2')
- if password1 and password2:
- if password1 != password2:
- raise forms.ValidationError(
- self.error_messages['password_mismatch'],
- code='password_mismatch',
- )
- return password2
-
- def save(self, commit=True):
- self.user.set_password(self.cleaned_data['new_password1'])
- if commit:
- self.user.save()
- return self.user
-
-
-class PasswordChangeForm(SetPasswordForm):
- """
- A form that lets a user change his/her password by entering
- their old password.
- """
- error_messages = dict(SetPasswordForm.error_messages, **{
- 'password_incorrect': _("Your old password was entered incorrectly. "
- "Please enter it again."),
- })
- old_password = forms.CharField(label=_("Old password"),
- widget=forms.PasswordInput)
-
- def clean_old_password(self):
- """
- Validates that the old_password field is correct.
- """
- old_password = self.cleaned_data["old_password"]
- if not self.user.check_password(old_password):
- raise forms.ValidationError(
- self.error_messages['password_incorrect'],
- code='password_incorrect',
- )
- return old_password
-
-PasswordChangeForm.base_fields = SortedDict([
- (k, PasswordChangeForm.base_fields[k])
- for k in ['old_password', 'new_password1', 'new_password2']
-])
-
-
-class AdminPasswordChangeForm(forms.Form):
- """
- A form used to change the password of a user in the admin interface.
- """
- error_messages = {
- 'password_mismatch': _("The two password fields didn't match."),
- }
- password1 = forms.CharField(label=_("Password"),
- widget=forms.PasswordInput)
- password2 = forms.CharField(label=_("Password (again)"),
- widget=forms.PasswordInput)
-
- def __init__(self, user, *args, **kwargs):
- self.user = user
- super(AdminPasswordChangeForm, self).__init__(*args, **kwargs)
-
- def clean_password2(self):
- password1 = self.cleaned_data.get('password1')
- password2 = self.cleaned_data.get('password2')
- if password1 and password2:
- if password1 != password2:
- raise forms.ValidationError(
- self.error_messages['password_mismatch'],
- code='password_mismatch',
- )
- return password2
-
- def save(self, commit=True):
- """
- Saves the new password.
- """
- self.user.set_password(self.cleaned_data["password1"])
- if commit:
- self.user.save()
- return self.user
-
- def _get_changed_data(self):
- data = super(AdminPasswordChangeForm, self).changed_data
- for name in self.fields.keys():
- if name not in data:
- return []
- return ['password']
- changed_data = property(_get_changed_data)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/handlers/__init__.py b/lib/python2.7/site-packages/django/contrib/auth/handlers/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/handlers/__init__.py
+++ /dev/null
diff --git a/lib/python2.7/site-packages/django/contrib/auth/handlers/modwsgi.py b/lib/python2.7/site-packages/django/contrib/auth/handlers/modwsgi.py
deleted file mode 100644
index f14afcf..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/handlers/modwsgi.py
+++ /dev/null
@@ -1,47 +0,0 @@
-from django.contrib import auth
-from django import db
-from django.utils.encoding import force_bytes
-
-
-def check_password(environ, username, password):
- """
- Authenticates against Django's auth database
-
- mod_wsgi docs specify None, True, False as return value depending
- on whether the user exists and authenticates.
- """
-
- UserModel = auth.get_user_model()
- # db connection state is managed similarly to the wsgi handler
- # as mod_wsgi may call these functions outside of a request/response cycle
- db.reset_queries()
-
- try:
- try:
- user = UserModel._default_manager.get_by_natural_key(username)
- except UserModel.DoesNotExist:
- return None
- if not user.is_active:
- return None
- return user.check_password(password)
- finally:
- db.close_old_connections()
-
-def groups_for_user(environ, username):
- """
- Authorizes a user based on groups
- """
-
- UserModel = auth.get_user_model()
- db.reset_queries()
-
- try:
- try:
- user = UserModel._default_manager.get_by_natural_key(username)
- except UserModel.DoesNotExist:
- return []
- if not user.is_active:
- return []
- return [force_bytes(group.name) for group in user.groups.all()]
- finally:
- db.close_old_connections()
diff --git a/lib/python2.7/site-packages/django/contrib/auth/hashers.py b/lib/python2.7/site-packages/django/contrib/auth/hashers.py
deleted file mode 100644
index d285126..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/hashers.py
+++ /dev/null
@@ -1,515 +0,0 @@
-from __future__ import unicode_literals
-
-import base64
-import binascii
-import hashlib
-
-from django.dispatch import receiver
-from django.conf import settings
-from django.test.signals import setting_changed
-from django.utils import importlib
-from django.utils.datastructures import SortedDict
-from django.utils.encoding import force_bytes, force_str, force_text
-from django.core.exceptions import ImproperlyConfigured
-from django.utils.crypto import (
- pbkdf2, constant_time_compare, get_random_string)
-from django.utils.module_loading import import_by_path
-from django.utils.translation import ugettext_noop as _
-
-
-UNUSABLE_PASSWORD_PREFIX = '!' # This will never be a valid encoded hash
-UNUSABLE_PASSWORD_SUFFIX_LENGTH = 40 # number of random chars to add after UNUSABLE_PASSWORD_PREFIX
-HASHERS = None # lazily loaded from PASSWORD_HASHERS
-PREFERRED_HASHER = None # defaults to first item in PASSWORD_HASHERS
-
-
-@receiver(setting_changed)
-def reset_hashers(**kwargs):
- if kwargs['setting'] == 'PASSWORD_HASHERS':
- global HASHERS, PREFERRED_HASHER
- HASHERS = None
- PREFERRED_HASHER = None
-
-
-def is_password_usable(encoded):
- if encoded is None or encoded.startswith(UNUSABLE_PASSWORD_PREFIX):
- return False
- try:
- identify_hasher(encoded)
- except ValueError:
- return False
- return True
-
-
-def check_password(password, encoded, setter=None, preferred='default'):
- """
- Returns a boolean of whether the raw password matches the three
- part encoded digest.
-
- If setter is specified, it'll be called when you need to
- regenerate the password.
- """
- if password is None or not is_password_usable(encoded):
- return False
-
- preferred = get_hasher(preferred)
- hasher = identify_hasher(encoded)
-
- must_update = hasher.algorithm != preferred.algorithm
- if not must_update:
- must_update = preferred.must_update(encoded)
- is_correct = hasher.verify(password, encoded)
- if setter and is_correct and must_update:
- setter(password)
- return is_correct
-
-
-def make_password(password, salt=None, hasher='default'):
- """
- Turn a plain-text password into a hash for database storage
-
- Same as encode() but generates a new random salt.
- If password is None then a concatenation of
- UNUSABLE_PASSWORD_PREFIX and a random string will be returned
- which disallows logins. Additional random string reduces chances
- of gaining access to staff or superuser accounts.
- See ticket #20079 for more info.
- """
- if password is None:
- return UNUSABLE_PASSWORD_PREFIX + get_random_string(UNUSABLE_PASSWORD_SUFFIX_LENGTH)
- hasher = get_hasher(hasher)
-
- if not salt:
- salt = hasher.salt()
-
- return hasher.encode(password, salt)
-
-
-def load_hashers(password_hashers=None):
- global HASHERS
- global PREFERRED_HASHER
- hashers = []
- if not password_hashers:
- password_hashers = settings.PASSWORD_HASHERS
- for backend in password_hashers:
- hasher = import_by_path(backend)()
- if not getattr(hasher, 'algorithm'):
- raise ImproperlyConfigured("hasher doesn't specify an "
- "algorithm name: %s" % backend)
- hashers.append(hasher)
- HASHERS = dict([(hasher.algorithm, hasher) for hasher in hashers])
- PREFERRED_HASHER = hashers[0]
-
-
-def get_hasher(algorithm='default'):
- """
- Returns an instance of a loaded password hasher.
-
- If algorithm is 'default', the default hasher will be returned.
- This function will also lazy import hashers specified in your
- settings file if needed.
- """
- if hasattr(algorithm, 'algorithm'):
- return algorithm
-
- elif algorithm == 'default':
- if PREFERRED_HASHER is None:
- load_hashers()
- return PREFERRED_HASHER
- else:
- if HASHERS is None:
- load_hashers()
- if algorithm not in HASHERS:
- raise ValueError("Unknown password hashing algorithm '%s'. "
- "Did you specify it in the PASSWORD_HASHERS "
- "setting?" % algorithm)
- return HASHERS[algorithm]
-
-
-def identify_hasher(encoded):
- """
- Returns an instance of a loaded password hasher.
-
- Identifies hasher algorithm by examining encoded hash, and calls
- get_hasher() to return hasher. Raises ValueError if
- algorithm cannot be identified, or if hasher is not loaded.
- """
- # Ancient versions of Django created plain MD5 passwords and accepted
- # MD5 passwords with an empty salt.
- if ((len(encoded) == 32 and '$' not in encoded) or
- (len(encoded) == 37 and encoded.startswith('md5$$'))):
- algorithm = 'unsalted_md5'
- # Ancient versions of Django accepted SHA1 passwords with an empty salt.
- elif len(encoded) == 46 and encoded.startswith('sha1$$'):
- algorithm = 'unsalted_sha1'
- else:
- algorithm = encoded.split('$', 1)[0]
- return get_hasher(algorithm)
-
-
-def mask_hash(hash, show=6, char="*"):
- """
- Returns the given hash, with only the first ``show`` number shown. The
- rest are masked with ``char`` for security reasons.
- """
- masked = hash[:show]
- masked += char * len(hash[show:])
- return masked
-
-
-class BasePasswordHasher(object):
- """
- Abstract base class for password hashers
-
- When creating your own hasher, you need to override algorithm,
- verify(), encode() and safe_summary().
-
- PasswordHasher objects are immutable.
- """
- algorithm = None
- library = None
-
- def _load_library(self):
- if self.library is not None:
- if isinstance(self.library, (tuple, list)):
- name, mod_path = self.library
- else:
- name = mod_path = self.library
- try:
- module = importlib.import_module(mod_path)
- except ImportError as e:
- raise ValueError("Couldn't load %r algorithm library: %s" %
- (self.__class__.__name__, e))
- return module
- raise ValueError("Hasher %r doesn't specify a library attribute" %
- self.__class__.__name__)
-
- def salt(self):
- """
- Generates a cryptographically secure nonce salt in ascii
- """
- return get_random_string()
-
- def verify(self, password, encoded):
- """
- Checks if the given password is correct
- """
- raise NotImplementedError()
-
- def encode(self, password, salt):
- """
- Creates an encoded database value
-
- The result is normally formatted as "algorithm$salt$hash" and
- must be fewer than 128 characters.
- """
- raise NotImplementedError()
-
- def safe_summary(self, encoded):
- """
- Returns a summary of safe values
-
- The result is a dictionary and will be used where the password field
- must be displayed to construct a safe representation of the password.
- """
- raise NotImplementedError()
-
- def must_update(self, encoded):
- return False
-
-
-class PBKDF2PasswordHasher(BasePasswordHasher):
- """
- Secure password hashing using the PBKDF2 algorithm (recommended)
-
- Configured to use PBKDF2 + HMAC + SHA256 with 12000 iterations.
- The result is a 64 byte binary string. Iterations may be changed
- safely but you must rename the algorithm if you change SHA256.
- """
- algorithm = "pbkdf2_sha256"
- iterations = 12000
- digest = hashlib.sha256
-
- def encode(self, password, salt, iterations=None):
- assert password is not None
- assert salt and '$' not in salt
- if not iterations:
- iterations = self.iterations
- hash = pbkdf2(password, salt, iterations, digest=self.digest)
- hash = base64.b64encode(hash).decode('ascii').strip()
- return "%s$%d$%s$%s" % (self.algorithm, iterations, salt, hash)
-
- def verify(self, password, encoded):
- algorithm, iterations, salt, hash = encoded.split('$', 3)
- assert algorithm == self.algorithm
- encoded_2 = self.encode(password, salt, int(iterations))
- return constant_time_compare(encoded, encoded_2)
-
- def safe_summary(self, encoded):
- algorithm, iterations, salt, hash = encoded.split('$', 3)
- assert algorithm == self.algorithm
- return SortedDict([
- (_('algorithm'), algorithm),
- (_('iterations'), iterations),
- (_('salt'), mask_hash(salt)),
- (_('hash'), mask_hash(hash)),
- ])
-
- def must_update(self, encoded):
- algorithm, iterations, salt, hash = encoded.split('$', 3)
- return int(iterations) != self.iterations
-
-
-class PBKDF2SHA1PasswordHasher(PBKDF2PasswordHasher):
- """
- Alternate PBKDF2 hasher which uses SHA1, the default PRF
- recommended by PKCS #5. This is compatible with other
- implementations of PBKDF2, such as openssl's
- PKCS5_PBKDF2_HMAC_SHA1().
- """
- algorithm = "pbkdf2_sha1"
- digest = hashlib.sha1
-
-
-class BCryptSHA256PasswordHasher(BasePasswordHasher):
- """
- Secure password hashing using the bcrypt algorithm (recommended)
-
- This is considered by many to be the most secure algorithm but you
- must first install the bcrypt library. Please be warned that
- this library depends on native C code and might cause portability
- issues.
- """
- algorithm = "bcrypt_sha256"
- digest = hashlib.sha256
- library = ("bcrypt", "bcrypt")
- rounds = 12
-
- def salt(self):
- bcrypt = self._load_library()
- return bcrypt.gensalt(self.rounds)
-
- def encode(self, password, salt):
- bcrypt = self._load_library()
- # Need to reevaluate the force_bytes call once bcrypt is supported on
- # Python 3
-
- # Hash the password prior to using bcrypt to prevent password truncation
- # See: https://code.djangoproject.com/ticket/20138
- if self.digest is not None:
- # We use binascii.hexlify here because Python3 decided that a hex encoded
- # bytestring is somehow a unicode.
- password = binascii.hexlify(self.digest(force_bytes(password)).digest())
- else:
- password = force_bytes(password)
-
- data = bcrypt.hashpw(password, salt)
- return "%s$%s" % (self.algorithm, force_text(data))
-
- def verify(self, password, encoded):
- algorithm, data = encoded.split('$', 1)
- assert algorithm == self.algorithm
- bcrypt = self._load_library()
-
- # Hash the password prior to using bcrypt to prevent password truncation
- # See: https://code.djangoproject.com/ticket/20138
- if self.digest is not None:
- # We use binascii.hexlify here because Python3 decided that a hex encoded
- # bytestring is somehow a unicode.
- password = binascii.hexlify(self.digest(force_bytes(password)).digest())
- else:
- password = force_bytes(password)
-
- # Ensure that our data is a bytestring
- data = force_bytes(data)
- # force_bytes() necessary for py-bcrypt compatibility
- hashpw = force_bytes(bcrypt.hashpw(password, data))
-
- return constant_time_compare(data, hashpw)
-
- def safe_summary(self, encoded):
- algorithm, empty, algostr, work_factor, data = encoded.split('$', 4)
- assert algorithm == self.algorithm
- salt, checksum = data[:22], data[22:]
- return SortedDict([
- (_('algorithm'), algorithm),
- (_('work factor'), work_factor),
- (_('salt'), mask_hash(salt)),
- (_('checksum'), mask_hash(checksum)),
- ])
-
-
-class BCryptPasswordHasher(BCryptSHA256PasswordHasher):
- """
- Secure password hashing using the bcrypt algorithm
-
- This is considered by many to be the most secure algorithm but you
- must first install the bcrypt library. Please be warned that
- this library depends on native C code and might cause portability
- issues.
-
- This hasher does not first hash the password which means it is subject to
- the 72 character bcrypt password truncation, most use cases should prefer
- the BCryptSha512PasswordHasher.
-
- See: https://code.djangoproject.com/ticket/20138
- """
- algorithm = "bcrypt"
- digest = None
-
-
-class SHA1PasswordHasher(BasePasswordHasher):
- """
- The SHA1 password hashing algorithm (not recommended)
- """
- algorithm = "sha1"
-
- def encode(self, password, salt):
- assert password is not None
- assert salt and '$' not in salt
- hash = hashlib.sha1(force_bytes(salt + password)).hexdigest()
- return "%s$%s$%s" % (self.algorithm, salt, hash)
-
- def verify(self, password, encoded):
- algorithm, salt, hash = encoded.split('$', 2)
- assert algorithm == self.algorithm
- encoded_2 = self.encode(password, salt)
- return constant_time_compare(encoded, encoded_2)
-
- def safe_summary(self, encoded):
- algorithm, salt, hash = encoded.split('$', 2)
- assert algorithm == self.algorithm
- return SortedDict([
- (_('algorithm'), algorithm),
- (_('salt'), mask_hash(salt, show=2)),
- (_('hash'), mask_hash(hash)),
- ])
-
-
-class MD5PasswordHasher(BasePasswordHasher):
- """
- The Salted MD5 password hashing algorithm (not recommended)
- """
- algorithm = "md5"
-
- def encode(self, password, salt):
- assert password is not None
- assert salt and '$' not in salt
- hash = hashlib.md5(force_bytes(salt + password)).hexdigest()
- return "%s$%s$%s" % (self.algorithm, salt, hash)
-
- def verify(self, password, encoded):
- algorithm, salt, hash = encoded.split('$', 2)
- assert algorithm == self.algorithm
- encoded_2 = self.encode(password, salt)
- return constant_time_compare(encoded, encoded_2)
-
- def safe_summary(self, encoded):
- algorithm, salt, hash = encoded.split('$', 2)
- assert algorithm == self.algorithm
- return SortedDict([
- (_('algorithm'), algorithm),
- (_('salt'), mask_hash(salt, show=2)),
- (_('hash'), mask_hash(hash)),
- ])
-
-
-class UnsaltedSHA1PasswordHasher(BasePasswordHasher):
- """
- Very insecure algorithm that you should *never* use; stores SHA1 hashes
- with an empty salt.
-
- This class is implemented because Django used to accept such password
- hashes. Some older Django installs still have these values lingering
- around so we need to handle and upgrade them properly.
- """
- algorithm = "unsalted_sha1"
-
- def salt(self):
- return ''
-
- def encode(self, password, salt):
- assert salt == ''
- hash = hashlib.sha1(force_bytes(password)).hexdigest()
- return 'sha1$$%s' % hash
-
- def verify(self, password, encoded):
- encoded_2 = self.encode(password, '')
- return constant_time_compare(encoded, encoded_2)
-
- def safe_summary(self, encoded):
- assert encoded.startswith('sha1$$')
- hash = encoded[6:]
- return SortedDict([
- (_('algorithm'), self.algorithm),
- (_('hash'), mask_hash(hash)),
- ])
-
-
-class UnsaltedMD5PasswordHasher(BasePasswordHasher):
- """
- Incredibly insecure algorithm that you should *never* use; stores unsalted
- MD5 hashes without the algorithm prefix, also accepts MD5 hashes with an
- empty salt.
-
- This class is implemented because Django used to store passwords this way
- and to accept such password hashes. Some older Django installs still have
- these values lingering around so we need to handle and upgrade them
- properly.
- """
- algorithm = "unsalted_md5"
-
- def salt(self):
- return ''
-
- def encode(self, password, salt):
- assert salt == ''
- return hashlib.md5(force_bytes(password)).hexdigest()
-
- def verify(self, password, encoded):
- if len(encoded) == 37 and encoded.startswith('md5$$'):
- encoded = encoded[5:]
- encoded_2 = self.encode(password, '')
- return constant_time_compare(encoded, encoded_2)
-
- def safe_summary(self, encoded):
- return SortedDict([
- (_('algorithm'), self.algorithm),
- (_('hash'), mask_hash(encoded, show=3)),
- ])
-
-
-class CryptPasswordHasher(BasePasswordHasher):
- """
- Password hashing using UNIX crypt (not recommended)
-
- The crypt module is not supported on all platforms.
- """
- algorithm = "crypt"
- library = "crypt"
-
- def salt(self):
- return get_random_string(2)
-
- def encode(self, password, salt):
- crypt = self._load_library()
- assert len(salt) == 2
- data = crypt.crypt(force_str(password), salt)
- # we don't need to store the salt, but Django used to do this
- return "%s$%s$%s" % (self.algorithm, '', data)
-
- def verify(self, password, encoded):
- crypt = self._load_library()
- algorithm, salt, data = encoded.split('$', 2)
- assert algorithm == self.algorithm
- return constant_time_compare(data, crypt.crypt(force_str(password), data))
-
- def safe_summary(self, encoded):
- algorithm, salt, data = encoded.split('$', 2)
- assert algorithm == self.algorithm
- return SortedDict([
- (_('algorithm'), algorithm),
- (_('salt'), salt),
- (_('hash'), mask_hash(data, show=3)),
- ])
-
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.mo
deleted file mode 100644
index d4333bf..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.po
deleted file mode 100644
index a2004d3..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/af/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,271 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Afrikaans (http://www.transifex.com/projects/p/django/"
-"language/af/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: af\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Wagwoord"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Vul dieselfde wagwoord in as hierbo, for bevestiging."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nuwe wagwoord"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Ou wagwoord"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Wagwoord (weer)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr ""
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.mo
deleted file mode 100644
index cc246c0..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.po
deleted file mode 100644
index 125333a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ar/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,282 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Ahmad Khayyat <akhayyat@gmail.com>, 2013
-# dado_eyad <d.eyad.t@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-28 09:47+0000\n"
-"Last-Translator: dado_eyad <d.eyad.t@gmail.com>\n"
-"Language-Team: Arabic (http://www.transifex.com/projects/p/django/language/"
-"ar/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ar\n"
-"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
-"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "المعلومات الشخصية"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "الصلاحيات"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "تواريخ مهمة"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "تم تغيير كلمة المرور بنجاح."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "غيّر كلمة المرور: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "لا يوجد كلمة سر حتى الآن."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "تنسيق كلمة المرور غير صالح أو خوارزمية التجزئة غير معروفة."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "هناك مستخدم موجود مسبقاً بهذا الاسم."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "حقلا كلمتي المرور غير متطابقين."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "اسم المستخدم"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "مطلوب. 30 حرف أو أقل. يتكوّن من حروف، وأرقام، والرموز @/./+/-/_ فقط."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "هذه القيمة يجب أن تحتوي الأحرف، والأرقام، والرموز @/./+/-/_ فقط."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "كلمة المرور"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "تأكيد كلمة المرور"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "أدخل كلمة المرور أعلاه مرة أخرى لتأكيدها."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"لا يتم حفظ كلمات السر كما هي، لذلك لا يمكن عرض كلمة السر هذه، ولكن يمكن "
-"تغييرها باستخدام <a href=\"password/\">هذا النموذج</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "الرجاء إدخال ال%(username)s و كلمة السر الصحيحين."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "هذا الحساب غير نشط."
-
-#: forms.py:206
-msgid "Email"
-msgstr "بريد إلكتروني"
-
-#: forms.py:256
-msgid "New password"
-msgstr "كلمة المرور الجديدة"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "تأكيد كلمة المرور الجديدة"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "كلمة مرورك القديمة غير صحيحة. رجاءً أدخلها مرة أخرى."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "كلمة المرور القديمة"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "كلمة المرور (مجدداً)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "خوارزمية"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "التكرارات"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "الاسم"
-
-#: models.py:74
-msgid "codename"
-msgstr "الاسم الرمزي"
-
-#: models.py:78
-msgid "permission"
-msgstr "الصلاحية"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "الصلاحيات"
-
-#: models.py:128
-msgid "group"
-msgstr "مجموعة"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "المجموعات"
-
-#: models.py:200
-msgid "password"
-msgstr "كلمة المرور"
-
-#: models.py:201
-msgid "last login"
-msgstr "آخر دخول"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "حالة المستخدم الخارق"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"حدد بأن هذا المستخدم يمتلك كافة الصلاحيات دون الحاجة لتحديدها له تصريحا."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"المجموعات التي ينتمي إليها المستخدم. سوف يحصل المستخدم على كافة الصلاحيات "
-"المعينة لكل مجموعة ينتمي إليها."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "صلاحيات المستخدم"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "الصلاحيات الخاصة بالمستخدم."
-
-#: models.py:368
-msgid "username"
-msgstr "اسم المستخدم"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "مطلوب. 30 حرف أو أقل. يتكوّن من حروف، وأرقام، والرموز @/./+/-/_ فقط."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "أدخل اسم مستخدم صحيح."
-
-#: models.py:372
-msgid "first name"
-msgstr "الاسم الأول"
-
-#: models.py:373
-msgid "last name"
-msgstr "الاسم الأخير"
-
-#: models.py:374
-msgid "email address"
-msgstr "عنوان بريد إلكتروني"
-
-#: models.py:375
-msgid "staff status"
-msgstr "حالة الطاقم"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "يحدد ما إذا كان المستخدم يستطيع الدخول إلى موقع الإدارة هذا."
-
-#: models.py:378
-msgid "active"
-msgstr "نشط"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"يحدد ما إذا كان المستخدم سيُعامل على أنّه نشط. أزل تحديد ها الخيار بدلاً من حذف "
-"الحسابات."
-
-#: models.py:381
-msgid "date joined"
-msgstr "تاريخ الانضمام"
-
-#: models.py:389
-msgid "user"
-msgstr "مستخدم"
-
-#: models.py:390
-msgid "users"
-msgstr "المستخدمين"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "تم الخروج"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "إعادة تعيين كلمة المرور على %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "أدخل عنوان بريد إلكتروني صحيح."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.mo
deleted file mode 100644
index b27c335..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.po
deleted file mode 100644
index bc3125c..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/az/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,279 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Ali Ismayilov <ali@ismailov.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Azerbaijani (http://www.transifex.com/projects/p/django/"
-"language/az/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: az\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Şəxsi məlumat"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "İcazələr"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Vacib tarixlər"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Parol uğurla dəyişdirildi"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Parolu dəyiş: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Bu istifadəçi adı altında başqa istifadəçi var."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Parollar üst-üstə düşmədi."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "İstifadəçi adı"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Vacibdir. 30 simvoldan az olmalıdır. Yalnız hərf, rəqəm və @/./+/-/_ "
-"simvollarından istifadə etmək olar."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Yalnız hərf, rəqəm və @/./+/-/_ simvollarından istifadə etmək olar."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Parol"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Parolun təsdiqi"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Yuxarıdakı parolu daxil edin ki, dəqiqliyinə əmin olaq."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Bu hesab qeyri-aktivdir."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Yeni parol"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Yeni parolun təsdiqi"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Köhnə parolu səhv daxil etdiniz. Bir daha cəhd etməyinizi xahiş edirik."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Köhnə parol"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Parol (bir daha)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ad"
-
-#: models.py:74
-msgid "codename"
-msgstr "kod adı"
-
-#: models.py:78
-msgid "permission"
-msgstr "icazə"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "icazələr"
-
-#: models.py:128
-msgid "group"
-msgstr "qrup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "qruplar"
-
-#: models.py:200
-msgid "password"
-msgstr "parol"
-
-#: models.py:201
-msgid "last login"
-msgstr "son dəfə daxil olub"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superistifadəçi statusu"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "İstifadəçiyə bütün icazələri verir."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "səlahiyyətləri"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "istifadəçi adı"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Vacibdir. 30 simvola bərabər və ya az olmalıdır. Yalnız hərf, rəqəm və @/./"
-"+/-/_ simvollarından istifadə etmək olar."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "ad"
-
-#: models.py:373
-msgid "last name"
-msgstr "soyad"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "admin statusu"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "İstifadəçinin admin panelinə daxil olub, olmayacağını təyin edir."
-
-#: models.py:378
-msgid "active"
-msgstr "Aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"İstifadəçinin aktiv və ya qeyri-aktiv olmasını təyin edir. Hesabları silmək "
-"əvəzinə bundan istifadə edin."
-
-#: models.py:381
-msgid "date joined"
-msgstr "qoşulub"
-
-#: models.py:389
-msgid "user"
-msgstr "istifadəçi"
-
-#: models.py:390
-msgid "users"
-msgstr "istifadəçilər"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Çıxdınız"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s, parolun sıfırlanması"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.mo
deleted file mode 100644
index 317d155..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.po
deleted file mode 100644
index d5846a1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/be/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,284 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Belarusian (http://www.transifex.com/projects/p/django/"
-"language/be/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: be\n"
-"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Асабістыя зьвесткі"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Дазволы"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важныя даты"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Пароль зьмянілі."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Зьмяніць пароль: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Карыстальнік з такім іменем ужо існуе."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Не супадаюць паролі ў двух палях."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Імя карыстальніка"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Абавязковае поле. Да трыццаці знакаў. Толькі лічбы, літары ды знакі «@», "
-"«.» (кропка), «+», «-», «_»."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Дазваляюцца толькі літары, лічбы ды знакі «@», «.» (кропка), «+», «-», «_»."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Пароль"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Пацьвердзіце пароль"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Дзеля пэўнасьці набярыце такі самы пароль яшчэ раз."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Паролі не захоўваюцца ў такім выглядзе, як іх набралі, таму ўбачыць пароль "
-"карыстальніка нельга, але яго можна зьмяніць <a href=\"password/\">тут</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Рахунак ня дзейнічае."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Новы пароль"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Пацьвердзіце новы пароль"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Пазначылі неадпаведны стары пароль. Набярыце яго зноўку."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Стары пароль"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Пароль (яшчэ раз)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "альґарытм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "паўтарэньні"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "соль"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "скарот"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "множнік працы"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "кантрольная сума"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "назва"
-
-#: models.py:74
-msgid "codename"
-msgstr "найменьне"
-
-#: models.py:78
-msgid "permission"
-msgstr "дазвол"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "дазволы"
-
-#: models.py:128
-msgid "group"
-msgstr "суполка"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "суполкі"
-
-#: models.py:200
-msgid "password"
-msgstr "пароль"
-
-#: models.py:201
-msgid "last login"
-msgstr "апошні раз уваходзіў"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "становішча спраўніка"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Паказвае, ці мае карыстальнік усе дазволы без таго, каб іх яўна прызначаць."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Суполкі, у якія ўваходзіць карыстальнік. Карыстальнік атрымае дазволы, якія "
-"мае кожная ягоная суполка."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "дазволы карыстальніка"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "імя карыстальніка"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Абавязковае поле. Да трыццаці знакаў. Лічбы, літары ды знакі «@», "
-"«.» (кропка), «+», «-», «_»."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "імя"
-
-#: models.py:373
-msgid "last name"
-msgstr "прозьвішча"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "становішча"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Паказвае, ці можа карыстальнік ўваходзіць на кіраўнічую пляцоўку."
-
-#: models.py:378
-msgid "active"
-msgstr "дзейны"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Паказвае, ці трэба ставіцца да карыстальніка як да дзейнага. Замест таго "
-"каб, каб выдаляць рахунак, зраіце карыстальніка нядзейным."
-
-#: models.py:381
-msgid "date joined"
-msgstr "калі далучылі"
-
-#: models.py:389
-msgid "user"
-msgstr "карыстальнік"
-
-#: models.py:390
-msgid "users"
-msgstr "карыстальнікі"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Не ўвайшоў"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Узнавіць пароль на %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.mo
deleted file mode 100644
index bd42db7..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.po
deleted file mode 100644
index cf071d0..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bg/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,283 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Boris Chervenkov <office@sentido.bg>, 2012
-# Georgi Kostadinov <grgkostadinov@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Bulgarian (http://www.transifex.com/projects/p/django/"
-"language/bg/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: bg\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Лична информация"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Права"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важни дати"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Паролата беше променена успешно. "
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Промени парола: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Потребител с това потребителско име вече съществува. "
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Двете полета за паролата не съвпадат. "
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Потребител"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Задължително. 30 знака или по-малко. Букви, цифри и @/./+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Тази стойност може да съдържа само букви, цифри и @/./+/-/_ символи."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Парола"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Потвърждение на паролата"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Въведете същата парола още веднъж за проверка. "
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Ние не запаметяваме паролите в чист вид, така че няма как да видите паролата "
-"на този потребител. Можете да промените паролата чрез <a href=\"password/"
-"\">този формуляр</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Този профил е неактивен."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Нова парола"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "потвърждение на нова паролата"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Въвели сте погрешна стара парола. Въведете я отново. "
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Стара парола"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Парола (отново)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритъм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "повторения"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "'salt'"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хеш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "работен фактор"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "чексума"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "име"
-
-#: models.py:74
-msgid "codename"
-msgstr "код"
-
-#: models.py:78
-msgid "permission"
-msgstr "право"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "права"
-
-#: models.py:128
-msgid "group"
-msgstr "група"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "групи"
-
-#: models.py:200
-msgid "password"
-msgstr "парола"
-
-#: models.py:201
-msgid "last login"
-msgstr "последно вписване"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "статут на супер-потребител"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Указва, че този потребител има всички права (без да има нужда да се "
-"изброяват изрично)."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Групата, към която този потребител принадлежи. Този потребител ще получи "
-"правата на всяка група, към която принадлежи."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "права на потребител"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "потребител"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Задължително. 30 знака или по-малко. Букви, цифри и символи @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "собствено име"
-
-#: models.py:373
-msgid "last name"
-msgstr "фамилно име"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "статус на персонал"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Указва дали този потребител има достъп до административния панел."
-
-#: models.py:378
-msgid "active"
-msgstr "активен"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Указва дали този потребител трябва да се третира като активен. Премахнете на "
-"избора на това, вместо да триете профила."
-
-#: models.py:381
-msgid "date joined"
-msgstr "дата на регистриране"
-
-#: models.py:389
-msgid "user"
-msgstr "потребител"
-
-#: models.py:390
-msgid "users"
-msgstr "потребители"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Извън системата"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Променена парола на %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.mo
deleted file mode 100644
index e971db4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.po
deleted file mode 100644
index 1b9d33a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bn/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,273 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Bengali (http://www.transifex.com/projects/p/django/language/"
-"bn/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: bn\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ব্যক্তিগত তথ্য"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "অনুমোদন"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "গুরুত্বপূর্ণ তারিখ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "পাসওয়ার্ড বদল সফল হয়েছে।"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "পাসওয়ার্ড বদলানঃ %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "এই সদস্যনামে একজন সদস্য আছেন।"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "পাসওয়ার্ড দুটো মেলেনি।"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "সদস্যনাম"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "পাসওয়ার্ড"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "পাসওয়ার্ড নিশ্চিত করুন"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "উপরের পাসওয়ার্ডটি পুনরায় প্রবেশ করান, যাচাইয়ের জন্য।"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "এই একাউন্টটি কার্যকর নয়।"
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "নতুন পাসওয়ার্ড"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "নতুন পাসওয়ার্ড নিশ্চিতকরণ"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"আপনার পুরনো পাসওয়ার্ড ঠিকভাবে প্রবেশ করানো হয়নি। অনুগ্রহপূর্বক সঠিক পাসওয়ার্ড দিন।"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "পুরনো পাসওয়ার্ড"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "পাসওয়ার্ড (পুনরায়)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "নাম"
-
-#: models.py:74
-msgid "codename"
-msgstr "কোডনাম"
-
-#: models.py:78
-msgid "permission"
-msgstr "অনুমোদন"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "অনুমোদন"
-
-#: models.py:128
-msgid "group"
-msgstr "দল"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "দল সমূহ"
-
-#: models.py:200
-msgid "password"
-msgstr "পাসওয়ার্ড"
-
-#: models.py:201
-msgid "last login"
-msgstr "সর্বশেষ প্রবেশ"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "সুপারইউজার মর্যাদা"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "সদস্যকে সকল ধরণের অনুমতি প্রদান করে।"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "সদস্যের অনুমোদন সমূহ"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "সদস্যনাম"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "প্রথম নাম"
-
-#: models.py:373
-msgid "last name"
-msgstr "শেষ নাম"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "স্টাফ মর্যাদা"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "সদস্যকে প্রশাসন সাইটে প্রবেশাধিকার প্রদান।"
-
-#: models.py:378
-msgid "active"
-msgstr "সচল"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr "সদস্যকে সচল হিসেবে নির্ধারণ করুন। একাউন্ট মুছে ফেলার বদলে এটি ব্যবহার করুন।"
-
-#: models.py:381
-msgid "date joined"
-msgstr "যোগদানের তারিখ"
-
-#: models.py:389
-msgid "user"
-msgstr "সদস্য"
-
-#: models.py:390
-msgid "users"
-msgstr "সদস্যগণ"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "প্রস্থান সম্পন্ন"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.mo
deleted file mode 100644
index 998cf76..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.po
deleted file mode 100644
index 06fbebe..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/br/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,272 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Fulup <fulup.jakez@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Breton (http://www.transifex.com/projects/p/django/language/"
-"br/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: br\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Ger-tremen"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Ger-tremen nevez"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Kadarnaat ar ger-tremen nevez"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Ger-tremen kozh"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Ger-tremen (adarre)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "anv"
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr "strollad"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "strolladoù"
-
-#: models.py:200
-msgid "password"
-msgstr "ger-tremen"
-
-#: models.py:201
-msgid "last login"
-msgstr "kevreet da ziwezhañ"
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "anv-bihan"
-
-#: models.py:373
-msgid "last name"
-msgstr "anv-familh"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr "implijer"
-
-#: models.py:390
-msgid "users"
-msgstr "implijerien"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Digevreet"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.mo
deleted file mode 100644
index 6035fda..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.po
deleted file mode 100644
index 326d750..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/bs/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,282 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Bosnian (http://www.transifex.com/projects/p/django/language/"
-"bs/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: bs\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Lični podaci"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Dozvole"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Važni datumi"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Lozinka uspješno izmjenjena."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Izmjeni lozinku: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Korisnik sa tim korisničkim imenom već postoji."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dva polja za lozinku se nisu poklopila."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Korisnik"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Neophodno. Najviše 30 slovnih mesta. Samo slova, brojke i @/./+/-/_ only."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Ova vrijednost može sadržati samo slova, brojke i digits and @/./+/-/_ "
-"znamenke."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Lozinka"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potvrda lozinke"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Radi provjere tačnosti ponovo unesite lozinku koju ste unijeli gore."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ovaj nalog je neaktivan."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova lozinka"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potvrda nove lozinke"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vaša stara lozinka nije pravilno unesena. Unesite je ponovo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Stara lozinka"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Lozinka (ponovite)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ime"
-
-#: models.py:74
-msgid "codename"
-msgstr "šifra dozvole"
-
-#: models.py:78
-msgid "permission"
-msgstr "dozvola"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "dozvole"
-
-#: models.py:128
-msgid "group"
-msgstr "grupa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupe"
-
-#: models.py:200
-msgid "password"
-msgstr "lozinka"
-
-#: models.py:201
-msgid "last login"
-msgstr "posljednja prijava"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status administratora"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Označava da li korisnik ima sve dozvole bez dodjeljivanja pojedinačnih "
-"dozvola."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "korisničke dozvole"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "korisničko ime"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Neophodno. Najviše 30 slovnih mesta. Slova, brojke i @/./+/-/_ karakteri"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "ime"
-
-#: models.py:373
-msgid "last name"
-msgstr "prezime"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "status člana uredništva"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Označava da li korisnik može da se prijavi na ovaj sajt za administraciju."
-
-#: models.py:378
-msgid "active"
-msgstr "aktivan"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Označava da li se korisnik smatra aktivnim. Uklnote izbor sa ovog polja "
-"umjesto da brišete nalog."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datum registracije"
-
-#: models.py:389
-msgid "user"
-msgstr "korisnik"
-
-#: models.py:390
-msgid "users"
-msgstr "korisnici"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Odjavljen"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.mo
deleted file mode 100644
index cfd1ead..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.po
deleted file mode 100644
index 22297fb..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ca/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,285 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Carles Barrobés <carles@barrobes.com>, 2011-2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Catalan (http://www.transifex.com/projects/p/django/language/"
-"ca/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ca\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informació personal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisos"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Dates importants"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Contrasenya canviada amb èxit"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Canviar contrasenya: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "No s'ha establert la clau."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Format de clau incorrecta o algorisme de hash desconegut."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ja existeix un usuari amb aquest nom."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Els dos camps de contrasenya no coincideixen."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nom d'usuari"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Obligatori. 30 o menys caràcters. Només lletres, dígits i @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Aquest valor ha de contenir només lletres, números i @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contrasenya"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmació de contrasenya"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Introduïu la mateixa contrasenya de dalt, per fer-ne la verificació."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"No s'emmagatzemen les contrasenyes en clar, per tant no hi ha manera de "
-"veure la contrasenya d'aquest usuari, però la podeu canviar fent servir <a "
-"href=\"password/\">aquest formulari</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"SSi us plau, introduïu un %(username)s i clau. Observeu que ambdós camps "
-"poden ser sensibles a majúscules."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Aquest compte està inactiu"
-
-#: forms.py:206
-msgid "Email"
-msgstr "Correu electrònic"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Contrasenya nova"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Contrasenya nova confirmada"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"La vostra antiga contrasenya no és correcta. Si us plau, introduïu-la de nou."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Contrasenya antiga"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contrasenya (de nou)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorisme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracions"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sal"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "factor de treball"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma de comprovació"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nom"
-
-#: models.py:74
-msgid "codename"
-msgstr "nom en clau"
-
-#: models.py:78
-msgid "permission"
-msgstr "permís"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisos"
-
-#: models.py:128
-msgid "group"
-msgstr "grup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grups"
-
-#: models.py:200
-msgid "password"
-msgstr "contrasenya"
-
-#: models.py:201
-msgid "last login"
-msgstr "últim inici de sessió"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "estat de superusuari"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Designa que aquest usuari té tots els permisos sense assignar-los "
-"explícitament."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Els grups als quals pertany aquest usuari. A un usuari se li concediran tots "
-"els permisos de cadascun dels seus grups."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisos de l'usuari"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nom d'usuari"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Obligatori. 30 o menys caràcters. Només lletres, números i @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Introdueix un nom d'usuari vàlid"
-
-#: models.py:372
-msgid "first name"
-msgstr "nom propi"
-
-#: models.py:373
-msgid "last name"
-msgstr "cognoms"
-
-#: models.py:374
-msgid "email address"
-msgstr "adreça de correu electrònic"
-
-#: models.py:375
-msgid "staff status"
-msgstr "membre del personal"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Designa si l'usuari pot entrar al lloc administratiu."
-
-#: models.py:378
-msgid "active"
-msgstr "actiu"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Designa si aquest usuari ha de ser tractat com a actiu. Deseleccioneu-ho "
-"enlloc d'esborrar comptes d'usuari."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data d'incorporació"
-
-#: models.py:389
-msgid "user"
-msgstr "usuari"
-
-#: models.py:390
-msgid "users"
-msgstr "usuaris"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sessió finalitzada"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Reinicialitzar la contrasenya a %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.mo
deleted file mode 100644
index fe35821..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.po
deleted file mode 100644
index c68bfd5..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/cs/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Mokys <jan.munclinger@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Vlada Macek <macek@sandbox.cz>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-09 15:20+0000\n"
-"Last-Translator: Vlada Macek <macek@sandbox.cz>\n"
-"Language-Team: Czech (http://www.transifex.com/projects/p/django/language/"
-"cs/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: cs\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Osobní údaje"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Oprávnění"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Důležitá data"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Změna hesla byla úspěšná."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Heslo pro uživatele %s: změnit"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Heslo nenastaveno."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Neplatný formát hesla nebo neplatný hashovací algoritmus."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Uživatel s tímto jménem již existuje."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Hesla se neshodují."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Uživatelské jméno"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Požadováno. 30 znaků nebo méně. Pouze písmena bez diakritiky (háčků a "
-"čárek), číslice a znaky @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Hodnota může obsahovat pouze písmena bez diakritiky (háčků a čárek), číslice "
-"a znaky @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Heslo"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potvrzení hesla"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Pro ověření vložte stejné heslo znovu."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Hesla se neukládají přímo a tak je nelze zobrazit. Je ale možné je změnit "
-"pomocí <a href=\"password/\">tohoto formuláře</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Zadejte správnou hodnotu pole %(username)s a heslo. Pozor, obě pole mohou "
-"rozlišovat malá a velká písmena."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Tento účet je neaktivní."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-mail"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nové heslo"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potvrzení nového hesla"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vaše současné heslo nebylo vloženo správně. Zkuste to znovu."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Současné heslo"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Heslo (znovu)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmus"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterace"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "hodnota salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "faktor práce"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrolní součet"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "název"
-
-#: models.py:74
-msgid "codename"
-msgstr "kódový název"
-
-#: models.py:78
-msgid "permission"
-msgstr "oprávnění"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "oprávnění"
-
-#: models.py:128
-msgid "group"
-msgstr "skupina"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "skupiny"
-
-#: models.py:200
-msgid "password"
-msgstr "heslo"
-
-#: models.py:201
-msgid "last login"
-msgstr "poslední přihlášení"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superuživatel"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Určuje, že uživatel má veškerá oprávnění bez jejich explicitního přiřazení."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Skupiny, do kterých tento uživatel patří. Uživatel dostane všechna oprávnění "
-"udělená každé z jeho skupin."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "uživatelská oprávnění"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Specifická oprávnění pro tohoto uživatele."
-
-#: models.py:368
-msgid "username"
-msgstr "uživatelské jméno"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Požadováno. 30 znaků nebo méně. Pouze písmena bez diakritiky (háčků a "
-"čárek), číslice a znaky @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Zadejte platné uživatelské jméno"
-
-#: models.py:372
-msgid "first name"
-msgstr "křestní jméno"
-
-#: models.py:373
-msgid "last name"
-msgstr "příjmení"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mailová adresa"
-
-#: models.py:375
-msgid "staff status"
-msgstr "administrační přístup"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Určuje, zda se uživatel může přihlásit do správy tohoto webu."
-
-#: models.py:378
-msgid "active"
-msgstr "aktivní"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Určuje, zda bude uživatel považován za aktivního. Použijte tuto možnost "
-"místo odstranění účtů."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datum registrace"
-
-#: models.py:389
-msgid "user"
-msgstr "uživatel"
-
-#: models.py:390
-msgid "users"
-msgstr "uživatelé"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Odhlášeno"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Obnovení hesla na webu %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Zadejte platnou e-mailovou adresu."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.mo
deleted file mode 100644
index 8e0f440..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.po
deleted file mode 100644
index 126567d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/cy/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,274 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Maredudd ap Gwyndaf <maredudd@maredudd.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-12 20:43+0000\n"
-"Last-Translator: Maredudd ap Gwyndaf <maredudd@maredudd.com>\n"
-"Language-Team: Welsh (http://www.transifex.com/projects/p/django/language/"
-"cy/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: cy\n"
-"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != "
-"11) ? 2 : 3;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Gwybodaeth personol"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Hawliau"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Dyddiadau pwysig"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Newidwyd y gyfrinair."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Newid cyfrinair: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Cyfrinair heb ei osod."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Fformat cyfrinair annilys neu algorithm hashio anhysbys."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Mae'r enw defnyddiwr yn bodoli'n barod."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr ""
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr ""
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "enw"
-
-#: models.py:74
-msgid "codename"
-msgstr "enw arwyddol"
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr "cyfrinair"
-
-#: models.py:201
-msgid "last login"
-msgstr "mewngofnod olaf"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "statws defnyddiwr swper"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "enw defnyddiwr"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "enw cyntaf"
-
-#: models.py:373
-msgid "last name"
-msgstr "enw olaf"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "statws staff"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Dylunio ai'r defnyddiwr yn gally mewngofnodi i'r safle weinyddiad yma."
-
-#: models.py:378
-msgid "active"
-msgstr "gweithredol"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "Dyddiad"
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.mo
deleted file mode 100644
index a30bee0..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.po
deleted file mode 100644
index 6738132..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/da/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Christian Joergensen <christian@gmta.info>, 2012
-# Erik Wognsen <r4mses@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Steven Gandsø <steven.gandso@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-27 02:54+0000\n"
-"Last-Translator: Erik Wognsen <r4mses@gmail.com>\n"
-"Language-Team: Danish (http://www.transifex.com/projects/p/django/language/"
-"da/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: da\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personlig information"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Rettigheder"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Vigtige datoer"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Adgangskoden blev ændret."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Skift adgangskode: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Ingen adgangskode valgt."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Ugyldigt adgangskodeformat eller hashing-algoritme."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "En bruger med dette brugernavn findes allerede."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "De to adgangskoder var ikke identiske."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Brugernavn"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Påkrævet. Højst 30 tegn. Kun bogstaver og cifre samt @/./+/-/_"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Dette felt må kun indeholde bogstaver og cifre samt disse tegn: @/./+/-/_"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Adgangskode"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Bekræftelse af adgangskode"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Indtast den samme adgangskode som ovenfor for verifikation."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Rå adgangskoder gemmes ikke, så det er ikke muligt at se denne brugers "
-"adgangskode, men du kan ændre adgangskoden ved hjælp af <a href=\"password/"
-"\">denne formular</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Indtast venligst et korrekt %(username)s og adgangskode. Bemærk at begge "
-"felter kan være versalfølsomme."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Denne konto er inaktiv."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-mail"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Ny adgangskode"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Bekræftelse af ny adgangskode"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Din gamle adgangskode blev ikke indtastet korrekt. Indtast den venligst igen."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Gammel adgangskode"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Adgangskode (igen)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterationer"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "tjeksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "navn"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodenavn"
-
-#: models.py:78
-msgid "permission"
-msgstr "rettighed"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "rettigheder"
-
-#: models.py:128
-msgid "group"
-msgstr "gruppe"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupper"
-
-#: models.py:200
-msgid "password"
-msgstr "adgangskode"
-
-#: models.py:201
-msgid "last login"
-msgstr "sidst logget ind"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superbrugerstatus"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Bestemmer at denne bruger har alle rettigheder uden at tildele dem eksplicit."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupperne som denne bruger hører til. En bruger får alle rettigheder givet "
-"til hver af hans/hendes grupper."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "rettigheder"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Specifikke rettigheder for denne bruger."
-
-#: models.py:368
-msgid "username"
-msgstr "brugernavn"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Påkrævet. Højst 30 tegn. Kun bogstaver og cifre samt disse tegn: @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Indtast et gyldigt brugernavn."
-
-#: models.py:372
-msgid "first name"
-msgstr "fornavn"
-
-#: models.py:373
-msgid "last name"
-msgstr "efternavn"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mail-adresse"
-
-#: models.py:375
-msgid "staff status"
-msgstr "admin-status"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Bestemmer om brugeren kan logge ind på dette administrationswebsite."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Bestemmer om brugeren skal behandles som aktiv. Fravælg dette frem for at "
-"slette en konto."
-
-#: models.py:381
-msgid "date joined"
-msgstr "dato for registrering"
-
-#: models.py:389
-msgid "user"
-msgstr "bruger"
-
-#: models.py:390
-msgid "users"
-msgstr "brugere"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Logget ud"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Adgangskode nulstillet på %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Indtast en gyldig e-mail-adresse."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.mo
deleted file mode 100644
index 5df1433..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.po
deleted file mode 100644
index 36ae40b..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/de/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,291 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# André Hagenbruch <ahagenbruch@googlemail.com>, 2011
-# apollo13 <florian@apolloner.eu>, 2012
-# Jannis , 2013
-# Markus Holtermann <inyoka@markusholtermann.eu>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-21 17:42+0000\n"
-"Last-Translator: Jannis \n"
-"Language-Team: German (http://www.transifex.com/projects/p/django/language/"
-"de/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: de\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Persönliche Infos"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Berechtigungen"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Wichtige Daten"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Passwort erfolgreich geändert."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Passwort ändern: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Kein Passwort gesetzt."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Ungültiges Passwortformat oder unbekannter Hashing-Algorithmus."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Dieser Benutzername ist bereits vergeben."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Die beiden Passwörter sind nicht identisch."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Benutzername"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Erforderlich. 30 Zeichen oder weniger. Nur alphanumerische Zeichen "
-"(Buchstaben, Ziffern und @/./+/-/_) sind erlaubt."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Dieser Wert darf nur Buchstaben, Ziffern und @/./+/-/_ enthalten."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Passwort"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Passwort bestätigen"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Bitte das gleiche Passwort zur Überprüfung nochmal eingeben."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Die Passwörter werden nicht als Klartext gespeichert, somit gibt es keine "
-"Möglichkeit das Passwort dieses Benutzers anzuschauen, allerdings kann das "
-"Passwort über <a href=\"password/\">dieses Formular</a> geändert werden."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Bitte einen gültigen %(username)s und ein Passwort eingeben. Beide Felder "
-"berücksichtigen die Groß-/Kleinschreibung."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Dieser Benutzer ist inaktiv."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-Mail-Adresse"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Neues Passwort"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Neues Passwort bestätigen"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Das alte Passwort war falsch. Bitte neu eingeben."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Altes Passwort"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Passwort (wiederholen)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "Algorithmus"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "Iterationen"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "Salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "Hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "Arbeitsfaktor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "Prüfsumme"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "Name"
-
-#: models.py:74
-msgid "codename"
-msgstr "Codename"
-
-#: models.py:78
-msgid "permission"
-msgstr "Berechtigung"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "Berechtigungen"
-
-#: models.py:128
-msgid "group"
-msgstr "Gruppe"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "Gruppen"
-
-#: models.py:200
-msgid "password"
-msgstr "Passwort"
-
-#: models.py:201
-msgid "last login"
-msgstr "Letzte Anmeldung"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "Administrator-Status"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Legt fest, dass der Benutzer alle Berechtigungen hat, ohne diese einzeln "
-"zuweisen zu müssen."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Die Gruppen, denen der Benutzer angehört. Ein Benutzer bekommt alle "
-"Berechtigungen seiner zugeteilten Gruppen."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "Berechtigungen"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Spezifische Berechtigungen für diesen Benutzer."
-
-#: models.py:368
-msgid "username"
-msgstr "Benutzername"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Erforderlich. 30 Zeichen oder weniger. Nur alphanumerische Zeichen "
-"(Buchstaben, Ziffern und @/./+/-/_) sind erlaubt."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Bitte einen gültigen Benutzernamen eingeben."
-
-#: models.py:372
-msgid "first name"
-msgstr "Vorname"
-
-#: models.py:373
-msgid "last name"
-msgstr "Nachname"
-
-#: models.py:374
-msgid "email address"
-msgstr "E-Mail-Adresse"
-
-#: models.py:375
-msgid "staff status"
-msgstr "Redakteur-Status"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Legt fest, ob sich der Benutzer an der Administrationsseite anmelden kann."
-
-#: models.py:378
-msgid "active"
-msgstr "Aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Legt fest, ob dieser Benutzer aktiv ist. Kann deaktiviert werden, anstatt "
-"Benutzer zu löschen."
-
-#: models.py:381
-msgid "date joined"
-msgstr "Mitglied seit"
-
-#: models.py:389
-msgid "user"
-msgstr "Benutzer"
-
-#: models.py:390
-msgid "users"
-msgstr "Benutzer"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Abgemeldet"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Passwort auf %(site_name)s zurücksetzen"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Bitte eine gültige E-Mail-Adresse eingeben."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.mo
deleted file mode 100644
index 39d0353..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.po
deleted file mode 100644
index 35864c8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/el/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Apostolos Mpessas <mpessas+txc@transifex.com>, 2013
-# Dimitris Glezos <glezos@transifex.com>, 2011-2012
-# glogiotatidis <seadog@sealabs.net>, 2011
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Yorgos Pagles <y.pagles@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Greek (http://www.transifex.com/projects/p/django/language/"
-"el/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: el\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Προσωπικές πληροφορίες"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Δικαιώματα"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Σημαντικές ημερομηνίες"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Ο κωδικός πρόσβασης αλλάχτηκε με επιτυχία."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Αλλαγή κωδικού πρόσβασης: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Αυτό το όνομα χρήστη χρησιμοποιείται ήδη."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Τα δύο πεδία κωδικού χρήστη δεν ταιριάζουν."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Όνομα χρήστη"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Απαραίτητο. Πρέπει να αποτελείται από 30 ή λιγότερους χαρακτήρες. Μπορείτε "
-"να χρησιμοποιήσετε μόνο γράμματα, αριθμούς και τους χαρακτήρες @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Αυτή η τιμή μπορεί να περιέχει μόνο γράμματα, αριθμούς και τους χαρακτήρες "
-"@/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Κωδικός χρήστη"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Επιβεβαίωση κωδικού χρήστη"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-"Εισάγετε τον ίδιο κωδικό χρήστη όπως παραπάνω, για λόγους επιβεβαίωσης."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Αυτός ο λογαριασμός είναι ανενεργός."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Νέο συνθηματικό"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Επιβεβαίωση νέου συνθηματικού"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Το παλιό συνθηματικό σας δόθηκε λανθασμένα. Παρακαλώ δοκιμάστε ξανά."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Παλιό συνθηματικό"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Συνθηματικό (ξανά)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "όνομα"
-
-#: models.py:74
-msgid "codename"
-msgstr "κωδικό όνομα"
-
-#: models.py:78
-msgid "permission"
-msgstr "δικαίωμα"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "διακαιώματα"
-
-#: models.py:128
-msgid "group"
-msgstr "ομάδα"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ομάδες"
-
-#: models.py:200
-msgid "password"
-msgstr "συνθηματικό"
-
-#: models.py:201
-msgid "last login"
-msgstr "τελευταία σύνδεση"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "κατάσταση υπερχρήστη"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Υποδηλώνει ότι ο συγκεκριμένος χρήστης έχει όλα τα δικαιώματα χωρίς να "
-"χρειάζεται να τα παραχωρήσετε ξεχωριστά."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "δικαιώματα χρήστη"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "όνομα χρήστη"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Απαραίτητα. 30 ή λιγότεροι χαρακτήρες. Γράμματα, αριθμοί και οι χαρακτήρες "
-"@/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Εισάφετε ένα έγκυρο όνομα χρήστη."
-
-#: models.py:372
-msgid "first name"
-msgstr "όνομα"
-
-#: models.py:373
-msgid "last name"
-msgstr "επώνυμο"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "Κατάσταση προσωπικού"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Ορίζει αν ο χρήστης μπορεί να συνδεθεί στο χώρο διαχείρισης."
-
-#: models.py:378
-msgid "active"
-msgstr "ενεργό"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Υποδηλώνει αν ο συγκεκριμένος χρήστης μπορεί να θεωρηθεί ενεργός. Προτιμήστε "
-"την επεπιλογή αυτής της επιλογής αντί του να πραγματοποιήσετε διαγραφή του "
-"χρήστη."
-
-#: models.py:381
-msgid "date joined"
-msgstr "ημερομηνία σύνδεσης"
-
-#: models.py:389
-msgid "user"
-msgstr "χρήστης"
-
-#: models.py:390
-msgid "users"
-msgstr "χρήστες"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Έγινε αποσύνδεση"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Επαναφοράς κωδικού πρόσβασης για το %(site_name)s "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Εισάφετε ένα έγκυρο όνομα χρήστη."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.mo
deleted file mode 100644
index 6734aa6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.po
deleted file mode 100644
index 8ccb65e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/en/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,268 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: Django\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2010-05-13 15:35+0200\n"
-"Last-Translator: Django team\n"
-"Language-Team: English <en@li.org>\n"
-"Language: en\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr ""
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr ""
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr ""
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.mo
deleted file mode 100644
index 2be1bbf..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.po
deleted file mode 100644
index 27a8d61..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/en_GB/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,283 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# jon_atkinson <jon@jonatkinson.co.uk>, 2011-2012
-# Ross Poulton <ross@rossp.org>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: English (United Kingdom) (http://www.transifex.com/projects/p/"
-"django/language/en_GB/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en_GB\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personal info"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permissions"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Important dates"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Password changed successfully."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Change password: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "A user with that username already exists."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "The two password fields didn't match."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Username"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "This value may contain only letters, numbers and @/./+/-/_ characters."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Password"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Password confirmation"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Enter the same password as above, for verification."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "This account is inactive."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "New password"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "New password confirmation"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Your old password was entered incorrectly. Please enter it again."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Old password"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Password (again)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorithm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterations"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "name"
-
-#: models.py:74
-msgid "codename"
-msgstr "codename"
-
-#: models.py:78
-msgid "permission"
-msgstr "permission"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permissions"
-
-#: models.py:128
-msgid "group"
-msgstr "group"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "groups"
-
-#: models.py:200
-msgid "password"
-msgstr "password"
-
-#: models.py:201
-msgid "last login"
-msgstr "last login"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superuser status"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "user permissions"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "username"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "first name"
-
-#: models.py:373
-msgid "last name"
-msgstr "last name"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "staff status"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Designates whether the user can log into this admin site."
-
-#: models.py:378
-msgid "active"
-msgstr "active"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-
-#: models.py:381
-msgid "date joined"
-msgstr "date joined"
-
-#: models.py:389
-msgid "user"
-msgstr "user"
-
-#: models.py:390
-msgid "users"
-msgstr "users"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Logged out"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Password reset on %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.mo
deleted file mode 100644
index c5f78c8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.po
deleted file mode 100644
index b1e178e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/eo/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,286 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Baptiste <baptiste+transifex@darthenay.fr>, 2012-2013
-# Baptiste <baptiste+transifex@darthenay.fr>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 14:42+0000\n"
-"Last-Translator: Baptiste <baptiste+transifex@darthenay.fr>\n"
-"Language-Team: Esperanto (http://www.transifex.com/projects/p/django/"
-"language/eo/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: eo\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personaj informoj"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permesoj"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Gravaj datoj"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Pasvorto suksese ŝanĝita."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Ŝanĝi pasvorton: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Neniu pasvorto agordita."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Nevalida pasvorta formato, aŭ nekonata haketa algoritmo."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Uzanto kun sama salutnomo jam ekzistas."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "La du pasvotaj kampoj ne kongruas."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Salutnomo"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Petita. 30 karakteroj aŭ malpli. Literoj, ciferoj kaj @/./+/-/_ nure."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Ĉi-tiu valoro povas enhavi nur literoj, ciferoj kaj la @/./+/-/_ karakteroj."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Pasvorto"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Pasvorta konfirmo"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Entajpu la saman pasvorton kiel supre, por konfirmo."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Pasvortoj ne estas krude entenita, do ne eblas vidi la pasvorton de tiu "
-"uzanto, sed vi povas ŝanĝi la pasvorton uzante <a href=\"password/\">tiu "
-"formalaro</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Bonvolu enigi korektan %(username)s-n kaj pasvorton. Notu, ke ambaŭ kampoj "
-"povas esti usklecodistingaj."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ĉi-tiu konto ne estas aktiva."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Retpoŝto"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova pasvorto"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Nova pasvorto por konfirmo"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Via malnova pasvorto estis nekorekte tajpita. Bonvolu denove entajpi ĝin."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Malnova pasvorto"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Pasvorto (denove)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracioj"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salo"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "haketo"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "laborfaktoro"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrolsumo"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nomo"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodnomo"
-
-#: models.py:78
-msgid "permission"
-msgstr "permeso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permesoj"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupoj"
-
-#: models.py:200
-msgid "password"
-msgstr "pasvorto"
-
-#: models.py:201
-msgid "last login"
-msgstr "lasta ensaluto"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "ĉefuzanta statuso"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indikas ke tiu uzanto havas ĉiujn permesojn, sen eksplicite asigni ilin."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"La grupoj en kiu tiu uzanto apartenas. Uzanto akiros ĉiuj permesoj donita al "
-"ĉiuj de lia/ŝia grupo."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "uzantaj permesoj"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Apartaj permesoj por tiu uzanto."
-
-#: models.py:368
-msgid "username"
-msgstr "salutnomo"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Petita. 30 karakteroj aŭ malpli. Literoj, nombroj kaj @/./+/-/_ karakteroj"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Enigu validan salutnomon."
-
-#: models.py:372
-msgid "first name"
-msgstr "persona nomo"
-
-#: models.py:373
-msgid "last name"
-msgstr "famalia nomo"
-
-#: models.py:374
-msgid "email address"
-msgstr "retpoŝta adreso"
-
-#: models.py:375
-msgid "staff status"
-msgstr "personara statuso"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indikas ĉu la uzanto povas saluti en ĉi-tiu administranta retejo."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiva"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indikas ĉu tiu uzanto devus esti traktita kiel aktiva. Malselekti tion ĉi "
-"anstataŭ forigi kontojn."
-
-#: models.py:381
-msgid "date joined"
-msgstr "dato aliĝita"
-
-#: models.py:389
-msgid "user"
-msgstr "uzanto"
-
-#: models.py:390
-msgid "users"
-msgstr "uzantoj"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Adiaŭita"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Pasvorta rekomencigo ĉe %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Enigu validan retpoŝtan adreson."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.mo
deleted file mode 100644
index 28b16aa..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.po
deleted file mode 100644
index f060413..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Antoni Aloy <aaloy@apsl.net>, 2012-2013
-# guillem <serra.guillem@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Leonardo J. Caballero G. <leonardocaballero@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 16:52+0000\n"
-"Last-Translator: Antoni Aloy <aaloy@apsl.net>\n"
-"Language-Team: Spanish (http://www.transifex.com/projects/p/django/language/"
-"es/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: es\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Información personal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisos"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Fechas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "La contraseña se ha cambiado con éxito."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambiar contraseña: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "No se ha establecido la clave."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato de clave incorrecto o algoritmo de hash desconocido."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ya existe un usuario con este nombre."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Los dos campos de contraseña no coinciden."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nombre de usuario"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Requerido. 30 caracteres o menos. Letras, dígitos y @/./+/-/_ solamente."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Este valor puede contener sólo letras, números y @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contraseña"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Contraseña (confirmación)"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Introduzca la misma contraseña que arriba, para verificación."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Las contraseñas no se almacenan en bruto, así que no hay manera de ver la "
-"contraseña del usuario, pero se puede cambiar la contraseña mediante <a href="
-"\"password/\">este formulario</a> ."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Por favor, introduce un %(username)s y clave correctos. Observa que ambos "
-"campos pueden ser sensibles a mayúsculas."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta cuenta está inactiva."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Correo electrónico"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Contraseña nueva"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Contraseña nueva (confirmación):"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Su contraseña antigua es incorrecta. Por favor, vuelva a introducirla "
-"correctamente."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Contraseña antigua"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contraseña (de nuevo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteraciones"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sal"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "función resumen"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "factor trabajo"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma de verificación"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nombre"
-
-#: models.py:74
-msgid "codename"
-msgstr "nombre en código"
-
-#: models.py:78
-msgid "permission"
-msgstr "permiso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisos"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "contraseña"
-
-#: models.py:201
-msgid "last login"
-msgstr "último inicio de sesión"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "es superusuario"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que este usuario tiene todos los permisos sin asignárselos "
-"explícitamente."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Los grupos a los que este usuario pertenece. Un usuario obtendrá todos los "
-"permisos concedidos a cada uno sus grupos."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisos de usuario"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Permisos específicos para este usuario."
-
-#: models.py:368
-msgid "username"
-msgstr "nombre de usuario"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Requerido. 30 caracteres o menos. Letras, números y @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Introduce un nombre de usuario válido"
-
-#: models.py:372
-msgid "first name"
-msgstr "nombre"
-
-#: models.py:373
-msgid "last name"
-msgstr "apellidos"
-
-#: models.py:374
-msgid "email address"
-msgstr "dirección de correo electrónico"
-
-#: models.py:375
-msgid "staff status"
-msgstr "es staff"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica si el usuario puede entrar en este sitio de administración."
-
-#: models.py:378
-msgid "active"
-msgstr "activo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indica si el usuario debe ser tratado como activo. Desmarque esta opción en "
-"lugar de borrar la cuenta."
-
-#: models.py:381
-msgid "date joined"
-msgstr "fecha de alta"
-
-#: models.py:389
-msgid "user"
-msgstr "usuario"
-
-#: models.py:390
-msgid "users"
-msgstr "usuarios"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sesión terminada"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Contraseña restablecida en %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Introduzca una dirección de correo electrónico válida."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.mo
deleted file mode 100644
index 51996a8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.po
deleted file mode 100644
index af83105..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es_AR/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,293 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Ramiro Morales <cramm0@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-05 11:12+0000\n"
-"Last-Translator: Ramiro Morales <cramm0@gmail.com>\n"
-"Language-Team: Spanish (Argentina) (http://www.transifex.com/projects/p/"
-"django/language/es_AR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: es_AR\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Información personal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisos"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Fechas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Cambio de contraseña exitoso"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambiar contraseña: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "No se ha establecido una contraseña."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato de contraseña inválido o algoritmo de hashing desconocido."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ya existe un usuario con ese nombre."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Los dos campos de contraseñas no coinciden entre si."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nombre de usuario"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obligatorio. Longitud máxima de 30 caracteres. Sólo puede estar formado por "
-"letras, números y los caracteres @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Este valor solo puede contener letras, números y alguno de los caracteres "
-"@/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contraseña"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmación de contraseña"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-"Para verificación, introduzca la misma contraseña que introdujo arriba."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Las contraseñas no se almacenan por lo cual no es posible visualizar la "
-"contraseña de este usuario, pero puede modificarla usando <a href=\"password/"
-"\">este formulario</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Por favor introduzca un %(username)s y una contraseña correctos. Tenga en "
-"cuenta que ambos campos son sensibles a mayúsculas/minúsculas."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta cuenta está inactiva"
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Contraseña nueva"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmación de contraseña nueva"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"La antigua contraseña introducida es incorrecta. Por favor introdúzcala "
-"nuevamente."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Contraseña antigua"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contraseña (de nuevo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteraciones"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma de verificación"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nombre"
-
-#: models.py:74
-msgid "codename"
-msgstr "nombre en código"
-
-#: models.py:78
-msgid "permission"
-msgstr "permiso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisos"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "contraseña"
-
-#: models.py:201
-msgid "last login"
-msgstr "último ingreso"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "es superusuario"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que este usuario posee todos los permisos sin que sea necesario "
-"asignarle los mismos en forma explícita."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupos a los cuales pertenece este usuario. Un usuario obtiene todos los "
-"permisos otorgados a cada uno de los grupos a los cuales pertenece."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisos de usuario"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Permisos específicos a otorgar a este usuario."
-
-#: models.py:368
-msgid "username"
-msgstr "nombre de usuario"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obligatorio. Longitud máxima de 30 caracteres. Sólo puede estar formado por "
-"letras, números y los caracteres @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Introduzca un nombre de usuario válido."
-
-#: models.py:372
-msgid "first name"
-msgstr "nombre"
-
-#: models.py:373
-msgid "last name"
-msgstr "apellido"
-
-#: models.py:374
-msgid "email address"
-msgstr "Dirección de email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "es staff"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica si el usuario puede ingresar a este sitio de administración."
-
-#: models.py:378
-msgid "active"
-msgstr "activo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indica si el usuario debe ser tratado como un usuario activo. Desactive este "
-"campo en lugar de eliminar usuarios."
-
-#: models.py:381
-msgid "date joined"
-msgstr "fecha de creación"
-
-#: models.py:389
-msgid "user"
-msgstr "usuario"
-
-#: models.py:390
-msgid "users"
-msgstr "usuarios"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sesión cerrada"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Reinicio de contraseña en %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Introduzca una dirección de email válida."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.mo
deleted file mode 100644
index ec457d0..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.po
deleted file mode 100644
index 6f4cd4b..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/es_MX/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,287 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Abraham Estrada <abraham.estrada@gmail.com>, 2011-2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Spanish (Mexico) (http://www.transifex.com/projects/p/django/"
-"language/es_MX/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: es_MX\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Información personal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisos"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Fechas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Cambio de contraseña exitoso"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambiar contraseña: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ya existe un usuario con ese nombre."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Los dos campos de contraseñas no coinciden entre si."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nombre de usuario"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obligatorio. Longitud máxima 30 caracteres alfanuméricos (letras, dígitos y "
-"@/./+/-/_) solamente."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Este valor solo puede contener letras, números y @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contraseña"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmación de contraseña"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Para verificar, introduzca la misma contraseña que introdujo arriba."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Las contraseñas no se almacenan en texto plano, así que no hay manera de ver "
-"la contraseña del usuario, pero se puede cambiar la contraseña mediante <a "
-"href=\"password/\">este formulario</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta cuenta está inactiva."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Contraseña nueva"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmación de contraseña nueva"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"La antigua contraseña introducida es incorrecta. Por favor introdúzcala "
-"nuevamente."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Contraseña antigua"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contraseña (de nuevo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "repeticiones"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "factor trabajo"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nombre"
-
-#: models.py:74
-msgid "codename"
-msgstr "nombre código"
-
-#: models.py:78
-msgid "permission"
-msgstr "permiso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisos"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "contraseña"
-
-#: models.py:201
-msgid "last login"
-msgstr "último ingreso"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "es superusuario"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que este usuario posee todos los permisos sin que sea necesario "
-"asignarle los mismos en forma explícita."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Los grupos a los que pertenece este usuario. Un usuario obtendrá todos los "
-"permisos concedidos para cada uno de su grupo."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisos de usuario"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nombre de usuario"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obligatorio. Longitud máxima de 30 caracteres alfanuméricos (letras, dígitos "
-"y @/./+/-/_)."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "nombre"
-
-#: models.py:373
-msgid "last name"
-msgstr "apellido"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "es staff"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica si el usuario puede ingresar a este sitio de administración."
-
-#: models.py:378
-msgid "active"
-msgstr "activo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indica si el usuario debe ser tratado como un usuario activo. Desactive este "
-"campo en lugar de eliminar usuarios."
-
-#: models.py:381
-msgid "date joined"
-msgstr "fecha de creación"
-
-#: models.py:389
-msgid "user"
-msgstr "usuario"
-
-#: models.py:390
-msgid "users"
-msgstr "usuarios"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sesión cerrada"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Restablecimiento de la contraseña en %(site_name)s "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.mo
deleted file mode 100644
index e16cf84..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.po
deleted file mode 100644
index 1359f0b..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/et/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,287 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# jannolii <jannolii@gmail.com>, 2013
-# madisvain <madisvain@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-26 21:31+0000\n"
-"Last-Translator: jannolii <jannolii@gmail.com>\n"
-"Language-Team: Estonian (http://www.transifex.com/projects/p/django/language/"
-"et/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: et\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Isiklikud andmd"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Õigused"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Tähtsad kuupäevad"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Salasõna edukalt muudetud."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Muuda salasõna: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Parool on määramata."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Lubamatu parooli formaat või tundmatu räsialgoritm."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Sama kasutajatunnusega kasutaja on juba olemas."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Kaks sisestatud parooli ei olnud identsed."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Kasutajatunnus"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Nõutav. 30 märki või vähem. Ainult tähed, numbrid ja /./+/-/_ tähemärgid."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"See väärtust võib sisaldada ainult tähti, numbreid ja/./+/-/_ tähemärke."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Salasõna"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Salasõna kinnitus"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-"Sisestage sama salasõna uuesti veendumaks, et sisestamisel ei tekkinud vigu"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Paroole ei salvestata töötlemata kujul, seega puudub võimalus selle kasutaja "
-"parooli nägemiseks, kuid saate seda muuta kasutades <a href=\"password/"
-"\">seda vormi</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Palun sisestage õige %(username)s ja parool. Teadke, et mõlemad väljad "
-"võivad olla tõstutundlikud."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "See konto ei ole aktiivne."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-post"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Uus salasõna"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Uue salasõna kinnitus"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Te sisestasite oma vana parooli vigaselt. Palun sisestage see uuesti."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Vana salasõna"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Salasõna (uuesti)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteratsioone"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sool"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "räsi"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "töötegur"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrollsumma"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nimi"
-
-#: models.py:74
-msgid "codename"
-msgstr "koodnimi"
-
-#: models.py:78
-msgid "permission"
-msgstr "õigus"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "õigused"
-
-#: models.py:128
-msgid "group"
-msgstr "grupp"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupid"
-
-#: models.py:200
-msgid "password"
-msgstr "salasõna"
-
-#: models.py:201
-msgid "last login"
-msgstr "viimane sisenemine"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superkasutaja staatus"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Määrab, kas see kasutaja omab automaatselt ja alati kõiki õigus."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupid millesse antud kasutaja kuulub. Kasutaja pärib kõik õigused mis on "
-"määratud igale tema grupile."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "kasutajaõigused"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Spetsiaalsed õigused sellele kasutajale."
-
-#: models.py:368
-msgid "username"
-msgstr "kasutajatunnus"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Nõutav. 30 märki või vähem. Tähted, numbreid ja/./+/-/_ tähemärgid."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Sisestage korrektne kasutajanimi."
-
-#: models.py:372
-msgid "first name"
-msgstr "eesnimi"
-
-#: models.py:373
-msgid "last name"
-msgstr "perenimi"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-posti aadress"
-
-#: models.py:375
-msgid "staff status"
-msgstr "personalistaatus"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Määrab, kas kasutaja saab sisse logida sellesse admininistreerimisliidesesse."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiivne"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Määrab, kas see konto on aktiivne. Kustutamise asemel lihtsalt deaktiveerige "
-"konto."
-
-#: models.py:381
-msgid "date joined"
-msgstr "liitumise kuupäev"
-
-#: models.py:389
-msgid "user"
-msgstr "kasutaja"
-
-#: models.py:390
-msgid "users"
-msgstr "kasutajad"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Välja logitud"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Uue salasõna loomine saidil %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Sisestage korrektne e-posti aadress."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.mo
deleted file mode 100644
index c6e8084..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.po
deleted file mode 100644
index b5dc117..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/eu/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Aitzol Naberan <anaberan@codesyntax.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-31 11:48+0000\n"
-"Last-Translator: Aitzol Naberan <anaberan@codesyntax.com>\n"
-"Language-Team: Basque (http://www.transifex.com/projects/p/django/language/"
-"eu/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: eu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informazio pertsonala"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Baimenak"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Data garrantzitsuak"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Ondo aldatu da pasahitza."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Pasahitza aldatu: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Pasahitza ezarri gabe."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Pasahitz formatu baliogabea edo hash algoritmo ezezaguna."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Erabiltzaile izen hori ez dago eskuragarri."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Pasahitzak ez datoz bat."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Erabiltzaile izena"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Beharrezkoa. 30 karaktere edo gutxiago. Hizki, zenbaki eta @/./+/-/_ "
-"bakarrik."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Hizki, zenbaki eta @/./+/-/_ karaktereak bakarrik izan ditzazke"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Pasahitza"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Pasahitza berretsi"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Idatzi berriro pasahitza."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Pasahitzak zifratuta gordetzen direnez ez dago erabiltzaile pasahitza "
-"ikusterik, baina pasahitza aldatu dezakezu <a href=\"password/\">hemen</a>"
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Mesedez idatzi %(username)s eta pasahitz egokiak. Maiskula eta minuskulak "
-"ondo bereiztu."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Kontu hau az dago aktibo."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Eposta"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Pasahitz berria"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Pasahitz berria berretsi"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Zure pasahitz zaharra ez da zuzena. Idatzi ezazu berriro."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Pasahitz zaharra"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Pasahitza (berriro)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmoak"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "begiztak"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "izena"
-
-#: models.py:74
-msgid "codename"
-msgstr "kode izena"
-
-#: models.py:78
-msgid "permission"
-msgstr "baimena"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "baimenak"
-
-#: models.py:128
-msgid "group"
-msgstr "taldea"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "taldeak"
-
-#: models.py:200
-msgid "password"
-msgstr "pasahitza"
-
-#: models.py:201
-msgid "last login"
-msgstr "azken sarrera"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "Erabiltzaile nagusia"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Erabiltzaileari baimen guztiak esleitzeko banan-banan aukeratu behar izan "
-"gabe."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Erabiltzailea zein taldetakoa den. Erabiltzaileak taldeari emandako baimen "
-"guztiak jasoko ditu."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "Erabiltzailearen baimenak"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Erabiltzaile honentzako baimenak."
-
-#: models.py:368
-msgid "username"
-msgstr "erabiltzaile izena"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Beharrezkoa. 30 karaktere edo gutxiago. Hizki, zenbaki eta @/./+/-/_ "
-"karaktereak"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Sartu baleko erabiltzaile izen bat."
-
-#: models.py:372
-msgid "first name"
-msgstr "izena"
-
-#: models.py:373
-msgid "last name"
-msgstr "abizena"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mail helbidea"
-
-#: models.py:375
-msgid "staff status"
-msgstr "Arduradun egoera"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Erabiltzaileak kudeaketa gune honetan sartzeko baimena duen edo ez "
-"adierazten du."
-
-#: models.py:378
-msgid "active"
-msgstr "Aktiboa"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Erabiltzaile bat aktibo gisa tratatu edo ez zehazten du. Ezgaitu hau kontuak "
-"ezabatu beharrean."
-
-#: models.py:381
-msgid "date joined"
-msgstr "erregistro eguna"
-
-#: models.py:389
-msgid "user"
-msgstr "Erabiltzailea"
-
-#: models.py:390
-msgid "users"
-msgstr "Erabiltzaileak"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sesiotik kanpo"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Pasahitza berrezarri %(site_name)s webgunean"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Sartu baleko erabiltzaile izen bat."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.mo
deleted file mode 100644
index bcc18a8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.po
deleted file mode 100644
index 6a7b4cd..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fa/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,285 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Reza Mohammadi <reza@teeleh.ir>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-05 07:36+0000\n"
-"Last-Translator: Reza Mohammadi <reza@teeleh.ir>\n"
-"Language-Team: Persian (http://www.transifex.com/projects/p/django/language/"
-"fa/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fa\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "اطلاعات شخصی"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "اجازه‌ها"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "تاریخ‌های مهم"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "گذرواژه با موفقیت تغییر یافت."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "تغییر گذرواژه: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "هیچ رمزی انتخاب نشده است."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "رمز نامعتبر یا الگوریتم رمزنگاری ناشناس"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "کاربری با این نام کاربری وجود دارد."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "دو فیلد گذرواژه با هم مطابقت ندارند."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "نام کاربری"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"الزامی. ۳۰ حرف یا کمتر. فقط حروف الفبا (ارقام، الفبا و علائم @/./+/-/_)."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "این مقدار فقط باید حاوی حروف، اعداد و یا علائم @/./+/-/_ باشد."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "گذرواژه"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "تصدیق گذرواژه"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "همان گذرواژهٔ بالایی را برای اطمینان دوباره وارد کنید."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"کلمات عبور نگهداری نمی شوند، لذا روشی برای مشاهده کلمه عبور کاربر وجود "
-"ندارد. ولی شما می توانید کلمه عبور را بوسیله <a href=\"password/\">این فرم</"
-"a> عوض کنید."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"لطفا %(username)s و گذرواژه‌ی را برای حساب کارکنان وارد کنید.\n"
-"توجه داشته باشید که هر دو میتوانند به کوچکی و بزرگی حروف حساس باشند."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "این حساب غیرفعال است."
-
-#: forms.py:206
-msgid "Email"
-msgstr "ایمیل"
-
-#: forms.py:256
-msgid "New password"
-msgstr "گذرواژهٔ جدید"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "تصدیق گذرواژهٔ جدید"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "گذرواژهٔ قدیمی شما اشتباه بود. لطفاً دوباره وارد کنید."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "گذرواژهٔ قدیمی"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "گذرواژه (تکرار)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "الگوریتم"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "تکرار"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "عامل کار"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "نام"
-
-#: models.py:74
-msgid "codename"
-msgstr "نام کد"
-
-#: models.py:78
-msgid "permission"
-msgstr "اجازه"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "اجازه‌ها"
-
-#: models.py:128
-msgid "group"
-msgstr "گروه"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "گروه‌ها"
-
-#: models.py:200
-msgid "password"
-msgstr "گذرواژه"
-
-#: models.py:201
-msgid "last login"
-msgstr "آخرین ورود"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "ابرکاربر"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"نشان می‌دهد که آیا این کاربر دسترسی نامحدود به کلیهٔ بخشهای وبگاه مدیریت دارد."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"گروه های این کاربر به آن تعلق دارد. کاربر تمامی دسترسیهای اعطا شده به هر یک "
-"از / گروه خود را دریافت کنید."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "اجازه‌های کاربر"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "اجازه‌های خاص این کاربر."
-
-#: models.py:368
-msgid "username"
-msgstr "نام کاربری"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"الزامی. 30 حرف یا کمتر. فقط حروف الفبا (ارقام، الفبا و علائم @/./+/-/_ )."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "یک نام کاربری معتبر وارد کنید"
-
-#: models.py:372
-msgid "first name"
-msgstr "نام"
-
-#: models.py:373
-msgid "last name"
-msgstr "نام خانوادگی"
-
-#: models.py:374
-msgid "email address"
-msgstr "آدرس ایمیل"
-
-#: models.py:375
-msgid "staff status"
-msgstr "وضعیت کارمندی"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "تعبیه شده برای اینکه در وبگاه مدیریت، کاربر بتواند یا نتواند وارد شود."
-
-#: models.py:378
-msgid "active"
-msgstr "فعال"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"برای نشان دادن اینکه آیا باید با این کاربر به عنوان کاربر فعال رفتار کرد "
-"تعبیه شده است. به جای حذف کاربر تیک را بردارید."
-
-#: models.py:381
-msgid "date joined"
-msgstr "تاریخ پیوستن"
-
-#: models.py:389
-msgid "user"
-msgstr "کاربر"
-
-#: models.py:390
-msgid "users"
-msgstr "کاربرها"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "خارج شدید"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "بازیابی کلمه عبور بر روی %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "یک آدرس ایمیل معتبر وارد کنید."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.mo
deleted file mode 100644
index 50f1725..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.po
deleted file mode 100644
index 91bebfc..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fi/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,286 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Antti Kaihola <antti-2013@ambitone.com>, 2011
-# Jannis Leidel <jannis@leidel.info>, 2011
-# nanook <klaus.dahlen@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Finnish (http://www.transifex.com/projects/p/django/language/"
-"fi/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fi\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Henkilökohtaiset tiedot"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Oikeudet"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Tärkeät päivämäärät"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Salasana muutettu onnistuneesti."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Vaihda salasana: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Salasanaa ei ole asetettu."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Tuntematon salasanamuoto tai tuntematon hajakoodausalgoritmi."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Käyttäjätunnus on jo rekisteröity."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Salasanat eivät täsmää."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Käyttäjätunnus"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-" Vaaditaan. Enintään 30 merkkiä. Vain kirjaimet, numerot ja @/./+/-/_ ovat "
-"sallittuja."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Tässä voidaan käyttää vain kirjaimia, numeroita ja @/./+/-/_ merkkejä."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Salasana"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Salasanan vahvistaminen"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Syötä sama salasana tarkistuksen vuoksi toistamiseen."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Salasanoja ei tallenneta selkokielisinä, joten tämän käyttäjän salasanaa on "
-"mahdoton nähdä, mutta voit vaihtaa salasanan käyttämällä <a href=\"password/"
-"\">tätä lomaketta</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Tämä käyttäjätili ei ole voimassa."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Sähköposti"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Uusi salasana"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Uusi salasana uudelleen"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vanha salasana on virheellinen. Yritä uudelleen."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Vanha salasana"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Salasana toistamiseen"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmi"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteraatioita"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "suola"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "tiiviste"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "työmäärä"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "tarkistussumma"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nimi"
-
-#: models.py:74
-msgid "codename"
-msgstr "tunniste"
-
-#: models.py:78
-msgid "permission"
-msgstr "oikeus"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "oikeudet"
-
-#: models.py:128
-msgid "group"
-msgstr "ryhmä"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ryhmät"
-
-#: models.py:200
-msgid "password"
-msgstr "salasana"
-
-#: models.py:201
-msgid "last login"
-msgstr "viimeisin kirjautuminen"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "pääkäyttäjä"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Antaa käyttäjälle kaikki oikeudet ilman, että niitä täytyy erikseen luetella."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Käyttäjäryhmät joihin tämä käyttäjä kuuluu. Käyttäjä saa käyttöoikeudet "
-"kaikista käyttäjäryhmistä, joihin hän kuuluu."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "käyttäjän oikeudet"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "käyttäjätunnus"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-" Vaaditaan. Enintään 30 merkkiä. Vain kirjaimet, numerot ja @/./+/-/_ ovat "
-"sallittuja."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Syötä kelvollinen käyttäjätunnus."
-
-#: models.py:372
-msgid "first name"
-msgstr "etunimi"
-
-#: models.py:373
-msgid "last name"
-msgstr "sukunimi"
-
-#: models.py:374
-msgid "email address"
-msgstr "sähköpostiosoite"
-
-#: models.py:375
-msgid "staff status"
-msgstr "ylläpitäjä"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Määrittää, pääseekö käyttäjä tähän sivuston ylläpito-osioon."
-
-#: models.py:378
-msgid "active"
-msgstr "voimassa"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Määrää, voiko käyttäjä kirjautua sisään. Tällä voi estää käyttäjätilin "
-"käytön poistamatta sitä."
-
-#: models.py:381
-msgid "date joined"
-msgstr "liittynyt"
-
-#: models.py:389
-msgid "user"
-msgstr "käyttäjä"
-
-#: models.py:390
-msgid "users"
-msgstr "käyttäjät"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Kirjautunut ulos"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Salasanan nollaus sivustolla %(site_name)s "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.mo
deleted file mode 100644
index 4488776..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.po
deleted file mode 100644
index 9ef1759..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fr/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,293 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# claudep <claude@2xlibre.net>, 2013
-# claudep <claude@2xlibre.net>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-12 08:50+0000\n"
-"Last-Translator: claudep <claude@2xlibre.net>\n"
-"Language-Team: French (http://www.transifex.com/projects/p/django/language/"
-"fr/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fr\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Information personnelle"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permissions"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Dates importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Mot de passe modifié avec succès"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Modifier le mot de passe : %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Aucun mot de passe défini."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-"Format de mot de passe non valide ou algorithme de hachage non reconnu."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Un utilisateur avec ce nom existe déjà."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Les deux mots de passe ne correspondent pas."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nom d'utilisateur"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Requis. 30 caractères maximum. Uniquement des lettres, nombres et les "
-"caractères « @ », « . », « + », « - » et « _ »."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Cette valeur peut uniquement contenir des lettres, nombres et les caractères "
-"« @ », « . », « + », « - » et « _ »."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Mot de passe"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmation du mot de passe"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Saisissez le même mot de passe que précédemment, pour vérification."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Les mots de passe ne sont pas enregistrés en clair, ce qui ne permet pas "
-"d'afficher le mot de passe de cet utilisateur, mais il est possible de le "
-"changer en utilisant <a href=\"password/\">ce formulaire</a>. "
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Saisissez un %(username)s et un mot de passe valides. Remarquez que chacun "
-"de ces champs est sensible à la casse (différenciation des majuscules/"
-"minuscules)."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ce compte est inactif."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Courriel"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nouveau mot de passe"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmation du nouveau mot de passe"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Votre ancien mot de passe est incorrect. Veuillez le rectifier."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Ancien mot de passe"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Mot de passe (à nouveau)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorithme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "itérations"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salage"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "empreinte"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "facteur travail"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "somme de contrôle"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nom"
-
-#: models.py:74
-msgid "codename"
-msgstr "nom de code"
-
-#: models.py:78
-msgid "permission"
-msgstr "permission"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permissions"
-
-#: models.py:128
-msgid "group"
-msgstr "groupe"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "groupes"
-
-#: models.py:200
-msgid "password"
-msgstr "mot de passe"
-
-#: models.py:201
-msgid "last login"
-msgstr "dernière connexion"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "statut super-utilisateur"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Précise que l'utilisateur possède toutes les permissions sans les assigner "
-"explicitement."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Les groupes dont fait partie cet utilisateur. Celui-ci obtient tous les "
-"droits de tous ses groupes."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permissions de l'utilisateur"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Permissions spécifiques à cet utilisateur."
-
-#: models.py:368
-msgid "username"
-msgstr "nom d'utilisateur"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Requis. 30 caractères maximum. Uniquement des lettres, nombres et les "
-"caractères « @ », « . », « + », « - » et « _ »."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Saisissez un nom d'utilisateur valable."
-
-#: models.py:372
-msgid "first name"
-msgstr "prénom"
-
-#: models.py:373
-msgid "last name"
-msgstr "nom"
-
-#: models.py:374
-msgid "email address"
-msgstr "adresse électronique"
-
-#: models.py:375
-msgid "staff status"
-msgstr "statut équipe"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Précise si l'utilisateur peut se connecter à ce site d'administration."
-
-#: models.py:378
-msgid "active"
-msgstr "actif"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Précise si l'utilisateur doit être considéré comme actif. Décochez ceci "
-"plutôt que de supprimer le compte."
-
-#: models.py:381
-msgid "date joined"
-msgstr "date d'inscription"
-
-#: models.py:389
-msgid "user"
-msgstr "utilisateur"
-
-#: models.py:390
-msgid "users"
-msgstr "utilisateurs"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Déconnecté"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Réinitialisation du mot de passe sur %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Saisissez un nom d'utilisateur valable."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.mo
deleted file mode 100644
index 1fbbb3d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.po
deleted file mode 100644
index b315ae9..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/fy_NL/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,271 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-04-25 08:09+0000\n"
-"Last-Translator: Django team\n"
-"Language-Team: Western Frisian (Netherlands) (http://www.transifex.com/"
-"projects/p/django/language/fy_NL/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fy_NL\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr ""
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr ""
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr ""
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.mo
deleted file mode 100644
index 8cbf1ab..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.po
deleted file mode 100644
index 612974c..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ga/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,292 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Michael Thornhill <michael@maithu.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Irish (http://www.transifex.com/projects/p/django/language/"
-"ga/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ga\n"
-"Plural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : "
-"4);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Eolas pearsantach"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Ceada"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Dáta tábhactach"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Focal faire aithraithe rathúil"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Athraigh focal faire: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "In ann do úsáideoir leis an ainm úsáideora."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Níl an dá focla faire comhoiriúnigh"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Ainm úsaideoir"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Riachtanach. 30 carachtair nó níos lú. Litreacha, digite agus @/./+/-/_ "
-"amháin."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Cathaigh litreacha, digite agus na carachtair @/./+/-/_ amhain le hadhaigh "
-"an méid seo."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Focal faire"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Focal faire deimhniú"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Iontráíl an focal faire céanna mar thuas, le fíorúchán."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Níl focail fairí amh stóráilailte, agus mar sin níl aon bhealach focal faire "
-"an úsaideora a fheiceáil, ach is féidir leat athrú ar an focal faire leis <a "
-"href=\"password/\">an bhfoirm seo</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Tá an cuntas seo neamhghníomhach."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Focal faire nua"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Deimnhiú focal faire nua"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Cuireadh do sean-focal faire isteach go mícheart. Iontráil isteach é arís."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Sean-focal faire "
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Focal faire (arís)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algartam"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "atriallta"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salann"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "haiseáil"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "fachtóir oibre"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suim sheiceála"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ainm"
-
-#: models.py:74
-msgid "codename"
-msgstr "Ainm cód"
-
-#: models.py:78
-msgid "permission"
-msgstr "cead"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "ceada"
-
-#: models.py:128
-msgid "group"
-msgstr "grúpa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grúpa"
-
-#: models.py:200
-msgid "password"
-msgstr "focal faire"
-
-#: models.py:201
-msgid "last login"
-msgstr "logáil deirneach"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "stádas forúsáideoir"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Sainíonn go bhfuil gach ceada ag an úsáideoir seo gan iad a cur le go "
-"díreach."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Na grúpaí a mbaineann leis an úsáideoir seo. Gheobhaidh úsáideor na ceadanna "
-"a deonaíodh do gach ceann den a grúpa."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ceada úsáideoira"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "Ainm úsáideoir"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Riachtanach. 30 carachtair nó níos lú. Litreacha, digite agus na carachtair "
-"@/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "ainm baiste"
-
-#: models.py:373
-msgid "last name"
-msgstr "sloinne"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "stádas foirne"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Sainigh an bhfuil cead ag an úsáideoir logáil isteach go dtí an suíomh "
-"riaracháin seo."
-
-#: models.py:378
-msgid "active"
-msgstr "gníomhach"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Sainíonn an bhfuil an úsáideoir gníomhach. Míroghnaigh seo in aineonn de "
-"scriseadh cuntasí."
-
-#: models.py:381
-msgid "date joined"
-msgstr "Dáta teacht isteach"
-
-#: models.py:389
-msgid "user"
-msgstr "úsáideoir"
-
-#: models.py:390
-msgid "users"
-msgstr "úsáideora"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Logáilte amach"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Athshocraigh focal faire ar %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.mo
deleted file mode 100644
index c05dd72..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.po
deleted file mode 100644
index 00a3789..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/gl/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,285 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# fasouto <fsoutomoure@gmail.com>, 2011
-# fonso <fonzzo@gmail.com>, 2011,2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Leandro Regueiro <leandro.regueiro@gmail.com>, 2011,2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Galician (http://www.transifex.com/projects/p/django/language/"
-"gl/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: gl\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Información persoal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisos"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Datas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "O contrasinal cambiouse correctamente."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambiar o contrasinal: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Non se configurou ningún contrasinal."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato de contrasinal non válido ou algoritmo de hash descoñecido."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Xa existe un usuario con ese nome de usuario."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Os dous campos de contrasinal non coinciden."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nome de usuario"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Requirido. 30 caracteres ou menos. Só letras, díxitos e @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Este valor só pode conter letras, números e os caracteres @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contrasinal"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmación do contrasinal"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Insira o mesmo contrasinal de enriba para verificalo."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Non se gardan os contrasinais sen cifrar, de maneira que non se pode ver o "
-"contrasinal deste usuario, pero pode modificar o contrasinal mediante <a "
-"href=\"password/\">este formulario</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Por favor, insira un %(username)s e contrasinal correctos. Teña en conta que "
-"ambos os dous campos poden distinguir maiúsculas e minúsculas."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta conta está inactiva."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Correo electrónico"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Novo contrasinal"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmación do novo contrasinal"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Inseriu incorrectamente o seu contrasinal actual. Insírao de novo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Contrasinal antigo"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contrasinal (outra vez)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracións"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sal"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "factor de traballo"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma de verificación"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nome"
-
-#: models.py:74
-msgid "codename"
-msgstr "código"
-
-#: models.py:78
-msgid "permission"
-msgstr "permiso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisos"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "contrasinal"
-
-#: models.py:201
-msgid "last login"
-msgstr "última sesión"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "estatus de superusuario"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que este usuario ten todos os permisos sen asignarllos explicitamente."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Os grupos aos que pertence este usuario. Un/ha usuario/a recibirá todos os "
-"permisos outorgados a cada un dos seus grupos."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisos de usuario"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nome de usuario"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Requirido. 30 caracteres ou menos. Letras, díxitos e @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Insira un nome de usuario válido."
-
-#: models.py:372
-msgid "first name"
-msgstr "nome"
-
-#: models.py:373
-msgid "last name"
-msgstr "apelidos"
-
-#: models.py:374
-msgid "email address"
-msgstr "enderezo de correo electrónico"
-
-#: models.py:375
-msgid "staff status"
-msgstr "membro do persoal"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica se o usuario pode acceder a este sitio de administración."
-
-#: models.py:378
-msgid "active"
-msgstr "activo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Determina se este usuario se debe considerar activo. Deseleccione isto en "
-"vez de borrar contas de usuario."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data de rexistro"
-
-#: models.py:389
-msgid "user"
-msgstr "usuario"
-
-#: models.py:390
-msgid "users"
-msgstr "usuarios"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Rematou a sesión"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Cambio de contrasinal en %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Insira un nome de usuario válido."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.mo
deleted file mode 100644
index e891bf1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.po
deleted file mode 100644
index aadb12d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/he/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,282 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Alex Gaynor <alex.gaynor@gmail.com>, 2011-2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Meir Kriheli <mkriheli@gmail.com>, 2012-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-02 11:18+0000\n"
-"Last-Translator: Meir Kriheli <mkriheli@gmail.com>\n"
-"Language-Team: Hebrew (http://www.transifex.com/projects/p/django/language/"
-"he/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: he\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "מידע אישי"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "הרשאות"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "תאריכים חשובים"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "הסיסמה שונתה בהצלחה."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "שינוי סיסמה: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "לא נקבעה סיסמה."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "תחביר סיסמה בלתי-חוקי או אלגוריתם גיבוב לא ידוע."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "משתמש עם שם משתמש זה קיים כבר"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "שני שדות הסיסמה אינם זהים."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "שם משתמש"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "שדה חובה. 30 תווים או פחות. אותיות, ספרות ו-@/./+/-/_ בלבד."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "ערך זה יכול להכיל אותיות, ספרות והתווים @/./+/-/_ בלבד."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "סיסמה"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "אימות סיסמה"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "יש להזין את אותה סיסמה שוב,לאימות."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"הסיסמאות אינן נשמרות באופן חשוף, כך שאין דרך לראות את סיסמת המשתמש, ניתן "
-"לשנות את הסיסמה בעזרת <a href=\"password/\">טופס זה</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"נא להזין %(username)s וסיסמה נכונים. נא לשים לב כי שני השדות רגישים לאותיות "
-"גדולות/קטנות."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "חשבון זה אינו פעיל."
-
-#: forms.py:206
-msgid "Email"
-msgstr "דוא\"ל"
-
-#: forms.py:256
-msgid "New password"
-msgstr "סיסמה חדשה"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "אימות סיסמה חדשה"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "סיסמתך הישנה הוזנה בצורה שגויה. נא להזינה שוב."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "סיסמה ישנה"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "סיסמה (שוב)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "אלגוריתם"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "חזרות"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "גיבוב"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "סיכום ביקורת"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "שם"
-
-#: models.py:74
-msgid "codename"
-msgstr "שם קוד"
-
-#: models.py:78
-msgid "permission"
-msgstr "הרשאה"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "הרשאות"
-
-#: models.py:128
-msgid "group"
-msgstr "קבוצה"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "קבוצות"
-
-#: models.py:200
-msgid "password"
-msgstr "סיסמה"
-
-#: models.py:201
-msgid "last login"
-msgstr "כניסה אחרונה"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "סטטוס משתמש על"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "מציין שלמשתמש זה יש את כל ההרשאות ללא הצורך המפורש בהענקתן."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"הקבוצות שמשתמש זה שייך אליהן. משתמש יקבל את כל ההרשאות המוקצות לקבוצה שלו/"
-"שלה."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "הרשאות משתמש"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "הרשאות ספציפיות למשתמש זה."
-
-#: models.py:368
-msgid "username"
-msgstr "שם משתמש"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "שדה חובה. 30 תווים או פחות. אותיות, ספרות והתווים @/./+/-/_ בלבד."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "נא להזין שם משתמש חוקי."
-
-#: models.py:372
-msgid "first name"
-msgstr "שם פרטי"
-
-#: models.py:373
-msgid "last name"
-msgstr "שם משפחה"
-
-#: models.py:374
-msgid "email address"
-msgstr "כתובת דוא\"ל"
-
-#: models.py:375
-msgid "staff status"
-msgstr "סטטוס איש צוות"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "מציין האם המשתמש יכול להתחבר לאתר הניהול."
-
-#: models.py:378
-msgid "active"
-msgstr "פעיל"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"מציין האם יש להתייחס למשתמש כפעיל. יש לבטל בחירה זו במקום למחוק חשבונות "
-"משתמשים."
-
-#: models.py:381
-msgid "date joined"
-msgstr "תאריך הצטרפות"
-
-#: models.py:389
-msgid "user"
-msgstr "משתמש"
-
-#: models.py:390
-msgid "users"
-msgstr "משתמשים"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "יצאת מהמערכת"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "החלפת הסיסמה ב-%(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "נא להזין כתובת דואר אלקטרוני חוקית."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.mo
deleted file mode 100644
index 77a8183..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.po
deleted file mode 100644
index 4223062..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hi/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,284 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# आलोक कुमार <alok.kumar@gmail.com>, 2013
-# Chandan kumar <chandankumar.093047@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Sandeep Satavlekar <sandysat@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Hindi (http://www.transifex.com/projects/p/django/language/"
-"hi/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: hi\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "व्यक्तिगत सूचना"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "अनुमतियाँ"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "महत्त्वपूर्ण तिथियाँ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "शब्दकूट बदली कामयाब"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "शब्दकूट बदलें: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "कोई कूटशब्द नहीं।"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "अवैध कूटशब्द प्रारूप या अज्ञात द्रुतान्वेषण कलन विधि"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "इस नाम के साथ प्रवोक्ता अस्तित्व है"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "यह दो शब्दकूट क्षेत्रों का मेल नहीं होता "
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "प्रवोक्ता नाम"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "जरूरी है | 30 या कम | केवल वर्णों, अक्षर, अंक और @/./+/-/_ |"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "यह मूल्य केवल अक्षर, संख्या और @/./+/-/_ हो सकते हैं |"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "कूटशब्द"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "कूटशब्द पुष्टि"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "सत्याप्ती के लिए ऊपर दर्ज किए शब्दकूट को फिर से प्रवेश करें"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"अधूरे कूटशब्द का संग्रह नहीं होता है, तो वहाँ इस उपयोगकर्ता के कूटशब्द को देखने के लिए कोई "
-"तरीका नहीं है, लेकिन आप <a href=\"password/\"> इस प्रपत्र</a> का उपयोग करते हुए "
-"कूटशब्द बदल सकते हैं."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "कृपया सही %(username)s व कूटशब्द भरें। भरते समय लघु और दीर्घ अक्षरों का ध्यान रखें।"
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "यस खाता सुस्त है"
-
-#: forms.py:206
-msgid "Email"
-msgstr "डाक पता"
-
-#: forms.py:256
-msgid "New password"
-msgstr "नया शब्दकूट"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "नया शब्दकूट पुष्टि"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "आपने पुराना शब्दकूट गलत दर्ज किया है । कृपया फिर से दर्ज करें"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "पुराना शब्दकूट"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "शब्दकूट (दुबारा)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "अलगोरिथम"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "पुनरूक्तियाँ"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "साल्ट"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "हैश"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "कार्य फ़ैक्टर"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "चेकसम"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "नाम"
-
-#: models.py:74
-msgid "codename"
-msgstr "कोडनेम"
-
-#: models.py:78
-msgid "permission"
-msgstr "अनुमति"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "अनुमतियाँ"
-
-#: models.py:128
-msgid "group"
-msgstr "वर्ग"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "वर्गों"
-
-#: models.py:200
-msgid "password"
-msgstr "शब्दकूट"
-
-#: models.py:201
-msgid "last login"
-msgstr "पिछला लॉगिन"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "सर्वोच्च प्रयोक्ता स्थिति"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"निर्दिष्ट करता है कि जो इस उपयोगकर्ता के पास सभी अनुमतियाँ उन्हें बिना बताए स्पष्ट रूप से "
-"निर्धारित है."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"समूह के अंतर्गत यह उपयोगकर्ता आता है. उपयोगकर्ता उसकी / उसके समूह के प्रत्येक के लिए दी गई "
-"अनुमति प्राप्त होगा."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "प्रयोक्ता अनुमतियाँ"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "प्रयोक्ता नाम"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "जरूरी है | 30 या कम वर्णों | केवल अक्षर, संख्या और @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "वैध प्रयोक्ता नाम भरें"
-
-#: models.py:372
-msgid "first name"
-msgstr "पहला नाम"
-
-#: models.py:373
-msgid "last name"
-msgstr "आखिरी नाम"
-
-#: models.py:374
-msgid "email address"
-msgstr "डाक पता"
-
-#: models.py:375
-msgid "staff status"
-msgstr "कर्मचारी स्थिति"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "तय करता हैं की उपयोगकर्ता इस साईट प्रशासन में प्रवेश कर सकता हैं या नहीं |"
-
-#: models.py:378
-msgid "active"
-msgstr "सक्रिय"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"निर्दिष्ट करता है कि क्या इस उपयोगकर्ता को सक्रिय माना जाना चाहिए.खातों को हटाने की "
-"बजाय इस अचयनित करे."
-
-#: models.py:381
-msgid "date joined"
-msgstr "तिथि भरती"
-
-#: models.py:389
-msgid "user"
-msgstr "उपभोक्ता"
-
-#: models.py:390
-msgid "users"
-msgstr "उपभोक्ताऐं"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "लाग्ड आउट "
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s पर कूटशब्द को पुनःठीक करे"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "वैध प्रयोक्ता नाम भरें"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.mo
deleted file mode 100644
index 7e506f9..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.po
deleted file mode 100644
index b442864..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hr/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,295 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Bojan Mihelač <bmihelac@mihelac.org>, 2012
-# Davor Lučić <r.dav.lc@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# mislav <mislav.cimpersak@gmail.com>, 2013
-# Ninopoopmap <ninonandroid@gmail.com>, 2013
-# senko <senko.rasic@dobarkod.hr>, 2012
-# zmasek <zlatko.masek@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-28 22:37+0000\n"
-"Last-Translator: mislav <mislav.cimpersak@gmail.com>\n"
-"Language-Team: Croatian (http://www.transifex.com/projects/p/django/language/"
-"hr/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: hr\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Osobni podaci"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Privilegije"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Važni datumi"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Lozinka uspješno promijenjena."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Promijeni lozinku: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Lozinka nije postavljena."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Neispravan format lozinke ili nepoznati hashing algoritam."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Korisnik sa navedenim imenom već postoji."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dva polja za lozinku nisu jednaka."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Korisničko ime"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obavezan unos. 30 alfanumeričkih znakova ili manje. Samo slova, brojevi i "
-"@/./+/-/_ znakovi."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Ova vrijednost može sadržavati samo slova, brojeve i @/./+/-/_ znakove."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Lozinka"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potvrda lozinke"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Unesite istu lozinku, za potvrdu."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Lozinke se ne pohranjuju u čitljivom obliku, zbog toga nije moguće vidjeti "
-"lozinku ovog korisnika, ali je možete promjeniti koristeći <a href="
-"\"password/\">ovaj obrazac</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Unesite ispravno %(username)s i lozinku. Imajte na umu da oba polja mogu "
-"biti velika i mala slova."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ovaj korisnički račun nije aktivan."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-mail"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova lozinka"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potvrda nove lozinke"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vaša stara lozinka je pogrešno unesena. Molim unesite ponovo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Stara lozinka"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Lozinka (unesi ponovo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritam"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracije"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "slučajna vrijednost"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "količina rada"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "zbroj za provjeru"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ime"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodno ime"
-
-#: models.py:78
-msgid "permission"
-msgstr "privilegija"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "privilegije"
-
-#: models.py:128
-msgid "group"
-msgstr "grupa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupe"
-
-#: models.py:200
-msgid "password"
-msgstr "lozinka"
-
-#: models.py:201
-msgid "last login"
-msgstr "posljednja prijava"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superuser status"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Određuje da ovaj korisnik ima sve privilegije te uklanja potrebu da se "
-"privilegije unose eksplicitno/ručno."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupe kojima ovaj korisnik pripada. Korisnik će imati sve privilegije grupa "
-"kojima pripada."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "privilegije korisnika"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Određene privilegije za korisnika."
-
-#: models.py:368
-msgid "username"
-msgstr "korisničko ime"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obavezan unos. 30 alfanumeričkih znakova ili manje. Samo slova, brojevi i "
-"@/./+/-/_ dozvoljeni."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Unesite ispravno korisničko ime."
-
-#: models.py:372
-msgid "first name"
-msgstr "ime"
-
-#: models.py:373
-msgid "last name"
-msgstr "prezime"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mail adresa"
-
-#: models.py:375
-msgid "staff status"
-msgstr "status osoblja"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Određuje može li se korisnik prijaviti na ove stranice administracije."
-
-#: models.py:378
-msgid "active"
-msgstr "aktivan"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Određuje treba li se ovaj korisnik tretirati kao aktivan korisnik. Koristite "
-"ovu opciju umjesto brisanja korisničkih računa."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datum učlanjenja"
-
-#: models.py:389
-msgid "user"
-msgstr "korisnik"
-
-#: models.py:390
-msgid "users"
-msgstr "korisnici"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Niste logirani"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Resetiranje lozinke na %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Unesite ispravnu e-mail adresu."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.mo
deleted file mode 100644
index 146698f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.po
deleted file mode 100644
index f648002..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/hu/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Szilveszter Farkas <szilveszter.farkas@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Hungarian (http://www.transifex.com/projects/p/django/"
-"language/hu/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: hu\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Személyes információ"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Jogosultságok"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Fontos dátumok"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Sikeres jelszóváltoztatás."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Jelszó megváltoztatása: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Nincs jelszó beállítva."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Érvénytelen jelszóformátum vagy ismeretlen hash-algoritmus."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Létezik már egy felhasználó ezzel a névvel."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "A két jelszó mező tartalma nem egyezik meg."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Felhasználó"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Kötelező. Legfeljebb 30 karakter. Betűk, számok és @/./+/-/_ karakterek."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Ez az érték csak betűket, számokat és @/./+/-/_ karaktereket tartalmazhat."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Jelszó"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Jelszó megerősítése"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Írja be a fenti jelszót ellenőrzés céljából."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"A kódolatlan jelszavakat nem tároljuk, így a felhasználó jelszavát nem lehet "
-"megtekinteni, azonban <a href=\"password/\">ezzel az űrlappal</a> a jelszó "
-"megváltoztatható."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Írjon be egy helyes %(username)s és jelszót. Mindkét mező kisbetű-nagybetű "
-"érzékeny lehet."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ez a fiók inaktív."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-mail"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Új jelszó"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Új jelszó megerősítése"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "A régi jelszó hibásan lett megadva. Írja be újra."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Régi jelszó"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Jelszó újra"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmus"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterációk"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "erősség"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "ellenőrző összeg"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "név"
-
-#: models.py:74
-msgid "codename"
-msgstr "kódnév"
-
-#: models.py:78
-msgid "permission"
-msgstr "jogosultság"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "jogosultságok"
-
-#: models.py:128
-msgid "group"
-msgstr "csoport"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "csoportok"
-
-#: models.py:200
-msgid "password"
-msgstr "jelszó"
-
-#: models.py:201
-msgid "last login"
-msgstr "utolsó bejelentkezés"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "rendszergazda státusz"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Megadja, hogy ez a felhasználó rendelkezik-e minden jogosultsággal anélkül, "
-"hogy azt külön meg kellene adni."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"A csoportok, amelyekhez a felhasználó tartozik. A felhasználó minden egyes "
-"csoportja jogosultságaival rendelkezni fog."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "felhasználói jogosultságok"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "felhasználónév"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Kötelező. Legfeljebb 30 karakter. Betűk, számok és @/./+/-/_ karakterek."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Adjon meg egy érvényes felhasnzálónevet."
-
-#: models.py:372
-msgid "first name"
-msgstr "keresztnév"
-
-#: models.py:373
-msgid "last name"
-msgstr "vezetéknév"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mail cím"
-
-#: models.py:375
-msgid "staff status"
-msgstr "személyzet státusz"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Megadja, hogy a felhasználó bejelentkezhet-e erre az adminisztrációs oldalra."
-
-#: models.py:378
-msgid "active"
-msgstr "aktív"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Megadja, hogy a felhasználó aktív-e. Állítsa át ezt az értéket a fiók "
-"törlése helyett."
-
-#: models.py:381
-msgid "date joined"
-msgstr "csatlakozás dátuma"
-
-#: models.py:389
-msgid "user"
-msgstr "felhasználó"
-
-#: models.py:390
-msgid "users"
-msgstr "felhasználók"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Kijelentkezve"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Jelszó újragenerálása ezen az oldalon: %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Adjon meg egy érvényes felhasználónevet."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.mo
deleted file mode 100644
index 28f9f44..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.po
deleted file mode 100644
index 7297068..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ia/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,285 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Martijn Dekker <mcdutchie@hotmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Interlingua (http://www.transifex.com/projects/p/django/"
-"language/ia/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ia\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Information personal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permissiones"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Datas importante"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Le cambio del contrasigno ha succedite."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambia contrasigno: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Un usator con iste nomine de usator jam existe."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Le duo campos de contrasigno non es identic."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nomine de usator"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obligatori. 30 characteres o minus. Litteras, cifras e @/./+/-/_ solmente."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Iste valor pote continer solmente litteras, numeros e le characteres @/./+/-/"
-"_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Contrasigno"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirma contrasigno"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Repete le contrasigno pro verification."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Le contrasignos non es immagazinate in forma de texto simple, dunque il non "
-"es possibile vider le contrasigno de iste usator, ma tu pote cambiar le "
-"contrasigno con <a href=\"password/\">iste formulario</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Iste conto es inactive."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nove contrasigno"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirma nove contrasigno"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Le ancian contrasigno non es correcte. Per favor scribe lo de novo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Ancian contrasigno"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Contrasigno (de novo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorithmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterationes"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sal"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "factor de labor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "summa de controlo"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nomine"
-
-#: models.py:74
-msgid "codename"
-msgstr "nomine de codice"
-
-#: models.py:78
-msgid "permission"
-msgstr "permission"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permissiones"
-
-#: models.py:128
-msgid "group"
-msgstr "gruppo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "gruppos"
-
-#: models.py:200
-msgid "password"
-msgstr "contrasigno"
-
-#: models.py:201
-msgid "last login"
-msgstr "ultime session"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "stato de superusator"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que iste usator ha tote le permissiones sin assignar los "
-"explicitemente."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Le gruppos al quales iste usator pertine. Un usator obtene tote le "
-"permissiones concedite a cata un de su gruppos."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permissiones de usator"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nomine de usator"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obligatori. 30 characteres o minus. Litteras, numeros e characteres @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "prenomine"
-
-#: models.py:373
-msgid "last name"
-msgstr "nomine de familia"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "stato de personal"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica si le usator pote aperir session in iste sito administrative."
-
-#: models.py:378
-msgid "active"
-msgstr "active"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indica si iste usator debe esser tractate como active. Dismarca isto in vice "
-"de deler contos."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data de inscription"
-
-#: models.py:389
-msgid "user"
-msgstr "usator"
-
-#: models.py:390
-msgid "users"
-msgstr "usatores"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Session claudite"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Reinitialisation del contrasigno in %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.mo
deleted file mode 100644
index 4c4110f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.po
deleted file mode 100644
index f8624b1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/id/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# rodin <romihardiyanto@gmail.com>, 2011,2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Indonesian (http://www.transifex.com/projects/p/django/"
-"language/id/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: id\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informasi pribadi"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Hak akses"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Tanggal penting"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Sandi berhasil diubah."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Ganti sandi: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Belum ada sandi yang disetel."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Format sandi tidak valid atau algoritma hash yang tidak dikenal."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Seorang pengguna dengan nama pengguna tersebut sudah ada."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dua bidang sandi tidak cocok."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Username"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Wajib. 30 karakter atau kurang dalam kombinasi huruf, angka, dan karakter "
-"@/./+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Nilai ini hanya boleh berisi huruf, angka, dan karakter @/./+/-/_ ."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Sandi"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Konfirmasi sandi"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Masukkan sandi yang sama dengan di atas, untuk verifikasi."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Sandi mentah tidak akan disimpan dan tidak ada cara untuk membaca sandi "
-"pengguna ini, namun Anda dapat mengganti sandi tersebut lewat <a href="
-"\"password/\">formulir ini</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Masukkan nama pengguna %(username)s dan sandi yang benar. Huruf besar/kecil "
-"pada bidang ini berpengaruh."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Akun ini tidak aktif."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Sandi baru"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Konfirmasi sandi baru"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Sandi lama Anda yang dimasukkan salah. Masukkan sekali lagi."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Sandi lama"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Sandi (ulangi)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterasi"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "garam"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "faktor kerja"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "ceksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nama"
-
-#: models.py:74
-msgid "codename"
-msgstr "namasandi"
-
-#: models.py:78
-msgid "permission"
-msgstr "hak akses"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "hak akses"
-
-#: models.py:128
-msgid "group"
-msgstr "grup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grup"
-
-#: models.py:200
-msgid "password"
-msgstr "sandi"
-
-#: models.py:201
-msgid "last login"
-msgstr "masuk terakhir"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status superuser"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Menentukan apakah pengguna memiliki semua hak akses tanpa perlu diberikan "
-"secara manual."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grup tempat pengguna ini dikelompokkan. Pengguna akan mendapatkan semua hak "
-"akses yang diberikan pada grupnya."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "hak akses pengguna"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nama pengguna"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Wajib. 30 karakter atau kurang dalam kombinasi huruf, angka, karakter @/./"
-"+/-/_ "
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Masukkan nama pengguna yang valid."
-
-#: models.py:372
-msgid "first name"
-msgstr "nama depan"
-
-#: models.py:373
-msgid "last name"
-msgstr "nama belakang"
-
-#: models.py:374
-msgid "email address"
-msgstr "alamat email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "status staf"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Menentukan apakah pengguna berhak masuk ke situs administrasi ini."
-
-#: models.py:378
-msgid "active"
-msgstr "aktif"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Menentukan apakah pengguna dianggap aktif. Hapus pilihan ini tanpa perlu "
-"menghapus akunnya."
-
-#: models.py:381
-msgid "date joined"
-msgstr "tanggal daftar"
-
-#: models.py:389
-msgid "user"
-msgstr "pengguna"
-
-#: models.py:390
-msgid "users"
-msgstr "pengguna"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Keluar"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Penyetelan ulang sandi di %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Masukkan nama pengguna yang valid."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.mo
deleted file mode 100644
index 613cd72..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.po
deleted file mode 100644
index 8df80e4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/is/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,290 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Hafsteinn Einarsson <haffi67@gmail.com>, 2011-2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Logi Ragnarsson <logi@belgingur.is>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Icelandic (http://www.transifex.com/projects/p/django/"
-"language/is/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: is\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Persónuupplýsingar"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Réttindi"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Mikilvægar dagsetningar"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Breyting á lykilorði tókst."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Breyta lykilorði: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Notandi með þetta notendanafn er nú þegar til."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Lykilorðin tvö pössuðu ekki saman."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Notandanafn"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Nauðsynlegt að fylla út. 30 stafir eða færri. Bókstafir (ekki broddstafir), "
-"tölustafir og @/./+/-/_ aðeins leyft."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Þessi reitur má aðeins innihalda bókstafi (ekki broddstafi), tölustafi og "
-"@/./+/-/_ táknin"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Lykilorð"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Staðfesting lykilorðs"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Settu inn sama lykilorðið aftur til staðfestingar."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Lykilorð eru aðeins geymd dulkóðuð, svo ekki er hægt að sjá lykilorð þessa "
-"notanda, en þú getur breytt lykilorðinu með <a href=\"password/\">þessu "
-"eyðublaði</a> ."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Þessi reikningur er óvirkur."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nýtt lykilorð"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Nýtt lykilorð (endurtekið)"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Gamla lykilorðið var vitlaust. Vinsamlegast reyndu aftur."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Gamalt lykilorð"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Lykilorð (aftur)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algrím"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "ítranir"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hashtafla"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "vinnustuðull"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "varsumma"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nafn"
-
-#: models.py:74
-msgid "codename"
-msgstr "vinnuheiti"
-
-#: models.py:78
-msgid "permission"
-msgstr "réttindi"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "réttindi"
-
-#: models.py:128
-msgid "group"
-msgstr "hópur"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "hópar"
-
-#: models.py:200
-msgid "password"
-msgstr "lykilorð"
-
-#: models.py:201
-msgid "last login"
-msgstr "síðasta innskráning"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "staða ofurnotanda"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Til marks um að notandinn hafi öll réttindi án þess að taka þau sérstaklega "
-"fram."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Hópar sem þessi notandi tilheyrir. Notandi fær allan aðgangsrétt sem fylgir "
-"hverjum hóp sem hann/hún er skráð(ur) í."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "réttindi"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "notandanafn"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Nauðsynlegt að fylla út. 30 stafir eða færri. Bókstafir (ekki broddstafir), "
-"tölustafir og @/./+/-/_ aðeins leyft."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "skírnarnafn"
-
-#: models.py:373
-msgid "last name"
-msgstr "eftirnafn"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "staða starfsmanns"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Segir til um hvort notandinn getur skráð sig inn á þetta stjórnunarsvæði."
-
-#: models.py:378
-msgid "active"
-msgstr "virkur"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Til marks um að notandinn sé virku. Taktu hakið úr þessum möguleika til að "
-"eyða aðgangi."
-
-#: models.py:381
-msgid "date joined"
-msgstr "skráning dags."
-
-#: models.py:389
-msgid "user"
-msgstr "notandi"
-
-#: models.py:390
-msgid "users"
-msgstr "notendur"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Útskráð(ur)"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Lykilorð endursett á %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.mo
deleted file mode 100644
index e1bbba2..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.po
deleted file mode 100644
index 263d525..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/it/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,286 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Federico Capoano <federico.capoano@teletu.it>, 2011
-# Flavio Curella <flavio.curella@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 16:19+0000\n"
-"Last-Translator: Flavio Curella <flavio.curella@gmail.com>\n"
-"Language-Team: Italian (http://www.transifex.com/projects/p/django/language/"
-"it/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: it\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informazioni personali"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permessi"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Date importanti"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "La password è stata cambiata correttamente."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Cambia la password: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Nessuna password impostata."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato di password non valido o algoritmo di hash sconosciuto."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Un utente con questo nome è già presente."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "I due campi password non corrispondono."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nome utente"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Obbligatorio. 30 caratteri o meno. Solo lettere, cifre e @/./+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Questo valore può contenere solo lettere, cifre e @/./+/-/_ ."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Password"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Conferma password"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Inserisci la stessa password inserita sopra, come verifica."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Le password originarie non vengono conservate, quindi non c'è modo di vedere "
-"la password di questo utente, ma è possibile modificare la password usando "
-"<a href=\"password/\">questa form</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Inserisci %(username)s e password corretti. In entrambi i campi le maiuscole "
-"sono significative."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Questo account non è attivo."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nuova password"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Conferma nuova password"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"La password attuale non è stata inserita correttamente: va inserita di nuovo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Password attuale"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Password (di nuovo)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterazioni"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nome"
-
-#: models.py:74
-msgid "codename"
-msgstr "nome in codice"
-
-#: models.py:78
-msgid "permission"
-msgstr "permesso"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permessi"
-
-#: models.py:128
-msgid "group"
-msgstr "gruppo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "gruppi"
-
-#: models.py:200
-msgid "password"
-msgstr "password"
-
-#: models.py:201
-msgid "last login"
-msgstr "ultimo accesso"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "privilegi di superutente"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Stabilisce che l'utente ha tutti i privilegi, senza che siano stati "
-"assegnati esplicitamente."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"I gruppi cui l'utente appartiene. Un utente otterrà tutte le autorizzazioni "
-"concesse a ciascuno dei suoi gruppi."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "privilegi utente"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Permessi specifici per questo utente."
-
-#: models.py:368
-msgid "username"
-msgstr "nome utente"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Obbligatorio. 30 caratteri o meno. Solo lettere, cifre e @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Inserisci un nome utente valido."
-
-#: models.py:372
-msgid "first name"
-msgstr "nome"
-
-#: models.py:373
-msgid "last name"
-msgstr "cognome"
-
-#: models.py:374
-msgid "email address"
-msgstr "indirizzo email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "privilegi di staff"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica se l'utente può accedere a questo sito di amministrazione."
-
-#: models.py:378
-msgid "active"
-msgstr "attivo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Stabilisce se l'utente debba essere considerato attivo. Deseleziona qui, "
-"piuttosto che cancellare gli account."
-
-#: models.py:381
-msgid "date joined"
-msgstr "iscritto in data"
-
-#: models.py:389
-msgid "user"
-msgstr "utente"
-
-#: models.py:390
-msgid "users"
-msgstr "utenti"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Accesso annullato"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Password reset su %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Inserisci un nome utente valido."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.mo
deleted file mode 100644
index 8bca229..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.po
deleted file mode 100644
index 9030ba4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ja/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,286 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Shinya Okano <tokibito@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-30 16:12+0000\n"
-"Last-Translator: Shinya Okano <tokibito@gmail.com>\n"
-"Language-Team: Japanese (http://www.transifex.com/projects/p/django/language/"
-"ja/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ja\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "個人情報"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "パーミッション"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "重要な日程"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "パスワードを変更しました"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "パスワードの変更: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "パスワードは設定されませんでした。"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "無効なパスワードか不明なハッシュアルゴリズムです。"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "同じユーザー名が既に登録済みです。"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "確認用パスワードが一致しません。"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "ユーザー名"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"この項目は必須です。半角アルファベット、半角数字、@/./+/-/_ で30文字以下にし"
-"てください。"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "半角の英数字および次の記号 @/./+/-/_ 以外は使用できません。"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "パスワード"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "パスワードの確認"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "確認のため、再度パスワードを入力してください。"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"生のパスワードが格納されていないので、このユーザーのパスワードは参照できませ"
-"んが、 <a href=\"password/\">このフォーム</a> を使用してパスワードを変更でき"
-"ます 。"
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"正しい%(username)sとパスワードを入力してください。どちらのフィールドも大文字"
-"と小文字は区別されます。"
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "アカウントが無効です。"
-
-#: forms.py:206
-msgid "Email"
-msgstr "メールアドレス"
-
-#: forms.py:256
-msgid "New password"
-msgstr "新しいパスワード"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "新しいパスワード(確認用)"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "元のパスワードが間違っています。もう一度入力してください。"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "元のパスワード"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "パスワード(確認用)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "アルゴリズム"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "イテレーション"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "ソルト"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "ハッシュ"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "ワークファクター"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "チェックサム"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "名前"
-
-#: models.py:74
-msgid "codename"
-msgstr "コード名"
-
-#: models.py:78
-msgid "permission"
-msgstr "パーミッション"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "パーミッション"
-
-#: models.py:128
-msgid "group"
-msgstr "グループ"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "グループ"
-
-#: models.py:200
-msgid "password"
-msgstr "パスワード"
-
-#: models.py:201
-msgid "last login"
-msgstr "最終ログイン"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "スーパーユーザー権限"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "全ての権限を持っているとみなされます。"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"このユーザーが所属するグループ。ユーザーはグループのそれぞれに付与されている"
-"すべての権限を持ちます。"
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ユーザーパーミッション"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "このユーザーの持つ権限です。"
-
-#: models.py:368
-msgid "username"
-msgstr "ユーザー名"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"この項目は必須です。半角アルファベット、半角数字、次の記号 @/./+/-/_ で30文字"
-"以下にしてください。"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "有効なメールアドレスを入力してください。"
-
-#: models.py:372
-msgid "first name"
-msgstr "名"
-
-#: models.py:373
-msgid "last name"
-msgstr "姓"
-
-#: models.py:374
-msgid "email address"
-msgstr "メールアドレス"
-
-#: models.py:375
-msgid "staff status"
-msgstr "スタッフ権限"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "ユーザーが管理サイトにログイン可能かどうかを示します。"
-
-#: models.py:378
-msgid "active"
-msgstr "有効"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"ユーザーがアクティブかどうかを示します。アカウントを消す代わりに選択を解除し"
-"てください。"
-
-#: models.py:381
-msgid "date joined"
-msgstr "登録日"
-
-#: models.py:389
-msgid "user"
-msgstr "ユーザー"
-
-#: models.py:390
-msgid "users"
-msgstr "ユーザー"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ログアウト"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s のパスワードリセット"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "有効なメールアドレスを入力してください。"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.mo
deleted file mode 100644
index 76f3993..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.po
deleted file mode 100644
index 7005c22..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ka/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# André Bouatchidzé <a@anbz.net>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Georgian (http://www.transifex.com/projects/p/django/language/"
-"ka/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ka\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "პირადი ინფორმაცია"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "უფლებები"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "მნიშვნელოვანი თარიღები"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "პაროლი წარმატებით შეიცვალა."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "შევცვალოთ პაროლი: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "არ არის დაყენებული პაროლი."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "არასწორი პაროლის ფორმატი ან უცნობი ჰეშირების ალგორითმი."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "მომხმარებელი ამ სახელით უკვე არსებობს."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "პაროლის ორი ველი ერთმანეთს არ ემთხვევა."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "მომხმარებელი"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"აუცილებელია. 30-მდე სიმბოლო. მხოლოდ ლათინური ასოები, ციფრები და შემდეგი "
-"სიმბოლოები: @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"დასაშვებია მხოლოდ ლათინური ასოები, ციფრები და შემდეგი სიმბოლოები: @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "პაროლი"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "პაროლის დამოწმება"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "შეიყვანეთ იგივე პაროლი, დამოწმებისათვის."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"დაუმუშავებელი პაროლები არ ინახება, ასე რომ, არ არსებობს ამ მომხმარებლის "
-"პაროლის ნახვის საშუალება, მაგრამ თქვენ შეგიძლიათ შეცვალოთ პაროლი <a href="
-"\"password/\">ამ ფორმის</a> მეშვეობით."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"გთხოვთ, შეიყვანოთ სწორი %(username)s და პაროლი. იქონიეთ მხედველობაში, რომ "
-"ორივე ველი ითვალისწინებს მთავრულს."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "თქვენი ანგარიში არააქტიურია."
-
-#: forms.py:206
-msgid "Email"
-msgstr "ელ. ფოსტა"
-
-#: forms.py:256
-msgid "New password"
-msgstr "ახალი პაროლი"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "ახალი პაროლის დამოწმება"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "თქვენი ძველი პაროლი შეყვანილია არასწორად. გთხოვთ, შეიყვანოთ ხელახლა."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "ძველი პაროლი"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "პაროლი (განმეორებით)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "ალგორითმი"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "იტერაციები"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "მარილი"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "ჰეში"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "სამუშაო ფაქტორი"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "საკონტროლო ჯამი"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "სახელი"
-
-#: models.py:74
-msgid "codename"
-msgstr "კოდური სახელი"
-
-#: models.py:78
-msgid "permission"
-msgstr "უფლება"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "უფლებები"
-
-#: models.py:128
-msgid "group"
-msgstr "ჯგუფი"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ჯგუფები"
-
-#: models.py:200
-msgid "password"
-msgstr "პაროლი"
-
-#: models.py:201
-msgid "last login"
-msgstr "ბოლო შესვლა"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "სუპერმომხმარებლის სტატუსი"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "განსაზღვრავს, რომ ამ მომხმარებელს აქვს ყველა უფლება."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"ჯგუფები, რომლებსაც მიეკუთვნება ეს მომხმარებელი. მომხმარებელს ენიჭება მისი "
-"ყოველი ჯგუფის ყველა უფლება."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "მომხმარებლის უფლებები"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "მომხმარებლის სახელი"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"აუცილებელია. 30-მდე სიმბოლო. მხოლოდ ლათინური ასოები, ციფრები და შემდეგი "
-"სიმბოლოები: @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "შეიყვანეთ სწორი მომხმარებლის სახელი."
-
-#: models.py:372
-msgid "first name"
-msgstr "სახელი"
-
-#: models.py:373
-msgid "last name"
-msgstr "გვარი"
-
-#: models.py:374
-msgid "email address"
-msgstr "ელ. ფოსტის მისამართი"
-
-#: models.py:375
-msgid "staff status"
-msgstr "თანამშრომლობის სტატუსი"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"განსაზღვრავს, აქვს თუ არა მომხმარებელს ადმინისტრირების საიტზე შესვლის უფლება."
-
-#: models.py:378
-msgid "active"
-msgstr "აქტიურია"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"განსაზღვრავს, რომ მომხმარებელი გააქტიურებულია. მომხმარებლის წაშლის მაგივრად "
-"გადანიშნეთ ეს დროშა."
-
-#: models.py:381
-msgid "date joined"
-msgstr "გაწევრიანების თარიღი"
-
-#: models.py:389
-msgid "user"
-msgstr "მომხმარებელი"
-
-#: models.py:390
-msgid "users"
-msgstr "მომხმარებლები"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "გამოსული ხართ"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "პაროლის თავიდან დაყენება %(site_name)s-ზე"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "შეიყვანეთ სწორი მომხმარებლის სახელი."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.mo
deleted file mode 100644
index 54d26f5..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.po
deleted file mode 100644
index d998842..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/kk/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,276 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# yun_man_ger <germanilyin@gmail.com>, 2011
-# Zhazira <zhazira.mt@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Kazakh (http://www.transifex.com/projects/p/django/language/"
-"kk/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: kk\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Жеке мағлұмат"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Рұқсаттар"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Маңызды даталар"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Құпия сөз ойдағыдай өзгертілді."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Құпия сөзді өзгерту: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Осындай атаумен қолданушы бар."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Енгізілген құпия сөздер бірдей емес."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Қолданушы атауы"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Міндетті. 30 немесе одан кем символ. Тек әріптер, цифрлар және @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Бұл мән тек әріптерді, цифрлерді және @/./+/-/_ құрайды."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Құпия сөз"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Құпия сөз құптамасы"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Тексеру үшін құпия сөзді үстіндегідей енгізіңіз."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Бұл тіркелгі белсенді емес."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Жаңа құпия сөз"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Жаңа құпия сөз құптамасы"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Ескі құпия сөз қате енгізілді. Қайтадан енгізіңіз."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Ескі құпия сөз"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Құпия сөз (қайтадан)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "атау"
-
-#: models.py:74
-msgid "codename"
-msgstr "кодтық атау"
-
-#: models.py:78
-msgid "permission"
-msgstr "рұқсат"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "рұқсаттар"
-
-#: models.py:128
-msgid "group"
-msgstr "топ"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "топтар"
-
-#: models.py:200
-msgid "password"
-msgstr "құпия сөз"
-
-#: models.py:201
-msgid "last login"
-msgstr "соңғы кіруі"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "әкімші мәртебесі"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Бұл қолданушының бүкіл рұқсаттарымен тағайындалатындығын білдіреді."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "қолданушы рұқсаттары"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "Қолданушы атауы"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Міндетті. 30 немесе одан кем символ. Тек әріптер, цифрлар және @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "аты"
-
-#: models.py:373
-msgid "last name"
-msgstr "жөні"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "қызметкер мәртебесі"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Қолданушының басқарушы сайтына кіре алатындығын білдіреді."
-
-#: models.py:378
-msgid "active"
-msgstr "белсенді"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Қолданушы белсенді болуын білдіреді. Тіркілгіні өшірмей мынаны алып тастаңыз."
-
-#: models.py:381
-msgid "date joined"
-msgstr "тіркелген күн-айы"
-
-#: models.py:389
-msgid "user"
-msgstr "қолданушы"
-
-#: models.py:390
-msgid "users"
-msgstr "қолданушылар"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Шығу орындалды"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s торапта құпия сөзді өзгерту"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.mo
deleted file mode 100644
index ea5feb0..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.po
deleted file mode 100644
index fc89385..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/km/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,272 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Khmer (http://www.transifex.com/projects/p/django/language/"
-"km/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: km\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ព័ត៌មានផ្ទាល់ខ្លួន"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "ការអនុញ្ញាត"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "កាលបរិច្ឆេទសំខាន់"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "ឈ្មោះជាសមាជិក"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "ពាក្យសំងាត់"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "សូមបំពេញពាក្យសំងាត់ដូចខាងលើ ដើម្បីត្រួតពិនិត្យ។ "
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "ឈ្មោះសមាជិកនេះ​លែងដំណើរការ"
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "ពាក្យសំងាត់ (ម្តងទៀត)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ឈ្មោះ"
-
-#: models.py:74
-msgid "codename"
-msgstr "ឈ្មោះលេខកូត"
-
-#: models.py:78
-msgid "permission"
-msgstr "អនុញ្ញាត"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "អនុញ្ញាត"
-
-#: models.py:128
-msgid "group"
-msgstr "ក្រុម"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ក្រុម"
-
-#: models.py:200
-msgid "password"
-msgstr "ពាក្យសំងាត់"
-
-#: models.py:201
-msgid "last login"
-msgstr "ការពិនិត្យចូលកន្លងមក"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "ស្ថានភាពអ្នកគ្រងគ្រង"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "កំណត់អោយសមាជិកនេះមានសិទ្ធិទាំងអស់។"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ការអនុញ្ញាតអោយសមាជិក"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "ឈ្មោះជាសមាជិក"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "នាម"
-
-#: models.py:373
-msgid "last name"
-msgstr "គោត្តនាម"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "ស្ថានភាពបុគ្គលិក"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "កំណត់អោយសមាជិកអាចចូលមកប្រើប្រាស់ទំព័រគ្រប់គ្រងនេះ។"
-
-#: models.py:378
-msgid "active"
-msgstr "សកម្ម"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "កាលបរិច្ឆេទចូលរួម"
-
-#: models.py:389
-msgid "user"
-msgstr "សមាជិក"
-
-#: models.py:390
-msgid "users"
-msgstr "សមាជិក"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ចាកចេញ"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.mo
deleted file mode 100644
index 01ab47d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.po
deleted file mode 100644
index b9e412e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/kn/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,275 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# karthikbgl <karthikbgl@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Kannada (http://www.transifex.com/projects/p/django/language/"
-"kn/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: kn\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ವೈಯುಕ್ತಿಕ ಮಾಹಿತಿ"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "ಅನುಮತಿಗಳು"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "ಮಹತ್ವದ ದಿನಾಂಕಗಳು"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "ಪಾಸ್ವರ್ಡ್ ಸಫಲವಾಗಿ ಬದಲಾಯಿಸಲಾಯಿತು"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "ಪಾಸ್ವರ್ಡ್ ಬದಲಾಯಿಸಲು: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "ಆ ಬಳಕೆದಾರಹೆಸರು ಒಂದು ಬಳಕೆದಾರ ಈಗಾಗಲೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "ಎರಡು ಪ್ರವೇಶಪದ ಕ್ಷೇತ್ರಗಳ ಹೊಂದಿಕೆಯಾಗುತ್ತಿಲ್ಲ"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "ಬಳಕೆದಾರ-ಹೆಸರು"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "ಪ್ರವೇಶಪದ"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "ಪಾಸ್ವರ್ಡ್ ಖಚಿತತೆ"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "ಖಚಿತಗೊಳಿಸಲು ಮೇಲಿನ ಪ್ರವೇಶಪದವನ್ನು ಇನ್ನೊಮ್ಮೆ ಬರೆಯಿರಿ."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "ಈ ಖಾತೆಯು ನಿಷ್ಕ್ರಿಯವಾಗಿದೆ"
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "ಹೊಸ ಪ್ರವೇಶಪದ"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "ಹೊಸ ಪ್ರವೇಶಪದ ಖಚಿತತೆ"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "ನಿಮ್ಮ ಹಳೆಯ ಪ್ರವೇಶಪದ ತಪ್ಪಾಗಿ ಪ್ರವೇಶಿಸಲಾಗಿದೆ ಮತ್ತೆ ದಯವಿಟ್ಟು ನಮೂದಿಸಿ"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "ಹಳೆಯ ಪ್ರವೇಶಪದ"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "ಪ್ರವೇಶಪದ(ಇನ್ನೊಮ್ಮೆ)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ಹೆಸರು"
-
-#: models.py:74
-msgid "codename"
-msgstr "ಸಾಂಕೇತಿಕ ಹೆಸರು"
-
-#: models.py:78
-msgid "permission"
-msgstr "ಅನುಮತಿ"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "ಅನುಮತಿಗಳು"
-
-#: models.py:128
-msgid "group"
-msgstr "ಗುಂಪು"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ಗುಂಪುಗಳು"
-
-#: models.py:200
-msgid "password"
-msgstr "ಪ್ರವೇಶಪದ"
-
-#: models.py:201
-msgid "last login"
-msgstr "ಕಡೇ ಸಾರಿ ಒಳಬಂದದ್ದು"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "ಮಹಾಬಳಕೆದಾರನ ಸ್ಧಿತಿ"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"ಈ ಸದಸ್ಯರು ಸುವ್ಯಕ್ತವಾಗಿ ನೀಡದಿದ್ದರೂ ಎಲ್ಲಾ ಅನುಮತಿಗಳನ್ನು ಪಡೆದಿರುವರು ಎಂಬುದನ್ನು "
-"ಸೂಚಿಸುತ್ತದೆ."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ಬಳಕೆದಾರ ಅನುಮತಿಗಳು"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "ಬಳಕೆದಾರ-ಹೆಸರು"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "ಮೊದಲ ಹೆಸರು"
-
-#: models.py:373
-msgid "last name"
-msgstr "ಕೊನೆಯ ಹೆಸರು"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "ಸಿಬ್ಬಂದಿ ಸ್ಥಿತಿ"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "ಬಲಕೆದಾರರು ಈ ಆಡಳಿತ ತಾಣಕ್ಕೆ ಪ್ರವೇಶಪಡೆಯಬಹುದೇ ಎಂಬುದನ್ನು ತಿಳಿಸುತ್ತದೆ."
-
-#: models.py:378
-msgid "active"
-msgstr "ಸಕ್ರಿಯ"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "ಸೇರಿದ ದಿನಾಂಕ"
-
-#: models.py:389
-msgid "user"
-msgstr "ಬಳಕೆದಾರ"
-
-#: models.py:390
-msgid "users"
-msgstr "ಬಳಕೆದಾರರು"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ಹೊರಬರಲಾಗಿದೆ"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.mo
deleted file mode 100644
index ad4cd2f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.po
deleted file mode 100644
index cf22ae8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ko/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,276 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Korean (http://www.transifex.com/projects/p/django/language/"
-"ko/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ko\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "개인정보"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "권한"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "중요한 일정"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "비밀번호가 변경되었습니다."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "비밀번호 변경: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "해당 사용자명은 이미 존재합니다."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "비밀번호가 일치하지 않습니다."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "사용자명"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"필수항목입니다. 30자 이내로 입력하세요. (알파벳, 숫자, @/./+/-/_만 가능)"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "알파벳, 숫자 및 @/./+/-/_만 가능합니다."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "비밀번호"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "비밀번호 확인"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "확인을 위해 위와 동일한 비밀번호를 입력하세요. "
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "이 계정은 유효하지 않습니다."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "새 비밀번호:"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "새 비밀번호 확인:"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "기존 비밀번호를 잘못 입력하셨습니다. 다시 입력해 주세요."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "기존 비밀번호:"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "비밀번호 (확인)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "이름"
-
-#: models.py:74
-msgid "codename"
-msgstr "코드명"
-
-#: models.py:78
-msgid "permission"
-msgstr "허가"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "허가"
-
-#: models.py:128
-msgid "group"
-msgstr "그룹"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "그룹"
-
-#: models.py:200
-msgid "password"
-msgstr "비밀번호"
-
-#: models.py:201
-msgid "last login"
-msgstr "마지막 로그인"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "최상위 사용자 권한"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "해당 사용자에게 모든 권한을 허가합니다."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "사용자 권한"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "사용자명"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"필수항목입니다. 30자 이내로 입력하세요. (알파벳, 숫자, @/./+/-/_만 가능)"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "이름"
-
-#: models.py:373
-msgid "last name"
-msgstr "성"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "스태프 권한"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "사용자가 관리사이트에 로그인이 가능한지를 나타냅니다."
-
-#: models.py:378
-msgid "active"
-msgstr "활성"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"사용자가 'Django 관리'에 로그인이 가능한지를 나타냅니다.계정을 삭제하는 대신 "
-"이것을 선택 해제하세요."
-
-#: models.py:381
-msgid "date joined"
-msgstr "등록일"
-
-#: models.py:389
-msgid "user"
-msgstr "사용자"
-
-#: models.py:390
-msgid "users"
-msgstr "사용자(들)"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "로그 아웃"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.mo
deleted file mode 100644
index 8649843..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.po
deleted file mode 100644
index f83cd92..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/lt/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,290 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# lauris <lauris@runbox.com>, 2011
-# naktinis <naktinis@gmail.com>, 2012
-# Nikolajus Krauklis <nikolajus@gmail.com>, 2013
-# Simonas Kazlauskas <simonas@kazlauskas.me>, 2012-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 16:02+0000\n"
-"Last-Translator: Simonas Kazlauskas <simonas@kazlauskas.me>\n"
-"Language-Team: Lithuanian (http://www.transifex.com/projects/p/django/"
-"language/lt/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: lt\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n"
-"%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Asmeninė informacija"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Leidimai"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Svarbios datos"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Slaptažodis pakeistas sėkmingai."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Pakeisti slaptažodį: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Slaptažodis nenustatytas"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Neteisingas slaptažodžio formatas arba nežinomas maišos algoritmas."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Jau egzistuoja vartotojas su tokiu vardu."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Slaptažodžio laukai nesutapo"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Vartotojo vardas"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Privalomas. 30 arba mažiau simbolių. Raidės, skaičiai bei @/./+/-/_ "
-"simboliai."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Ši reikšmė gali turėti tik raides, skaičius ir @/./+/-/_ simbolius."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Slaptažodis"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Slaptažodžio patvirtinimas"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Patikrinimui įvesk tokį patį slaptažodį, kaip viršuje."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Neužkoduoti slaptažodžiai nėra saugomi, todėl galimybės pasižiūrėti šio "
-"vartotojo slaptažodį nėra. Tiesa galite slaptažodį pakeisti naudodamiesi <a "
-"href=\"password/\">šia forma</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Įveskite teisingą %(username)s ir slaptažodį. Abiejuose laukuose didžiosios "
-"mažosios raidės skiriasi."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ši paskyra yra neaktyvi."
-
-#: forms.py:206
-msgid "Email"
-msgstr "El. paštas"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Naujas slaptažodis"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Naujo slaptažodžio patvirtinimas"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Blogai įvestas senas slaptažodis. Bandykite dar kartą."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Senas slaptažodis"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Slaptažodis (dar kartą)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmas"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracijos"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "druska"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "maiša"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "darbo faktorius"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrolinė suma"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "vardas"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodinis vardas"
-
-#: models.py:78
-msgid "permission"
-msgstr "leidimas"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "leidimai"
-
-#: models.py:128
-msgid "group"
-msgstr "grupė"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupės"
-
-#: models.py:200
-msgid "password"
-msgstr "slaptažodis"
-
-#: models.py:201
-msgid "last login"
-msgstr "paskutinį kartą prisijungęs"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "supervartotojo statusas"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Pažymi, kad šis vartotojas turi visas teises be specialių nustatymų."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupės, kurioms šis vartotojas priklauso. Vartotojas gaus visas teises, "
-"kurios yra suteiktos jo grupėms."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "vartotojo leidimai"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Specifiniai šio vartotojo leidimai."
-
-#: models.py:368
-msgid "username"
-msgstr "vartotojo vardas"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Privalomas. 30 arba mažiau simbolių. Raidės, skaičiai bei @/./+/-/_ "
-"simboliai."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Įveskite teisingą vartotojo vardą."
-
-#: models.py:372
-msgid "first name"
-msgstr "vardas"
-
-#: models.py:373
-msgid "last name"
-msgstr "pavardė"
-
-#: models.py:374
-msgid "email address"
-msgstr "El. pašto adresas"
-
-#: models.py:375
-msgid "staff status"
-msgstr "personalo statusas"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Nurodo ar vartotojas gali prisijungti prie administravimo puslapio."
-
-#: models.py:378
-msgid "active"
-msgstr "aktyvus"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Nurodo ar vartotojas yra aktyvuotas. Užuot pašalinę vartotoją, galite nuimti "
-"šią žymę."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data, kada prisijungė"
-
-#: models.py:389
-msgid "user"
-msgstr "vartotojas"
-
-#: models.py:390
-msgid "users"
-msgstr "vartotojai"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Atsijungęs"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Slaptažodis atkurtas ant %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Įveskite teisingą el. pašto adresą."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.mo
deleted file mode 100644
index 2fd3eba..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.po
deleted file mode 100644
index c86bad4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/lv/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,275 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Latvian (http://www.transifex.com/projects/p/django/language/"
-"lv/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: lv\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
-"2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personīgā informācija"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Tiesības"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Svarīgi datumi"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Paroles nomainīta sekmīgi."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Paroles maiņa: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Lietotājs ar šādu lietotāja vārdu jau eksistē."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Paroles lauki nesakrita."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Lietotāja vārds"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Obligāts. 30 vai mazāk zīmes. Tikai burti, cipari un @/./+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Šī vērtība var saturēt tikai burtus, ciparus un @/./+/-/_ simbolus"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Parole"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Paroles apstiprinājums"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Pārbaudei atkārtoti ievadiet to pašu paroli kā augstāk."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Šis konts nav aktīvs."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Jaunā parole"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Jaunās parole vēlreiz"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Jūsu iepriekšējā parole netika ievadīta korekti. Lūdzu ievadiet to atkārtoti."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Vecā parole"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Parole (vēlreiz)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nosaukums"
-
-#: models.py:74
-msgid "codename"
-msgstr "kods"
-
-#: models.py:78
-msgid "permission"
-msgstr "tiesība"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "tiesības"
-
-#: models.py:128
-msgid "group"
-msgstr "grupa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupas"
-
-#: models.py:200
-msgid "password"
-msgstr "parole"
-
-#: models.py:201
-msgid "last login"
-msgstr "pēdējoreiz pieslēdzies"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superlietotāja statuss"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Lietotājam ir visas tiesības arī bez to atsevišķas piešķiršanas."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "lietotāja tiesības"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "lietotāja vārds"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Obligāts. 30 vai mazāk zīmes. Tikai burti, cipari un @/./+/-/_ simboli"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "vārds"
-
-#: models.py:373
-msgid "last name"
-msgstr "uzvārds"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "personāla statuss"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Atzīmējiet, ja vēlaties, lai lietotājs var pieslēgties administrācijas lapā."
-
-#: models.py:378
-msgid "active"
-msgstr "aktīvs"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr "Nosaka, vai lietotājs ir aktīvs. Atceliet šo konta dzēšanas vietā."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datums, kad pievienojies"
-
-#: models.py:389
-msgid "user"
-msgstr "lietotājs"
-
-#: models.py:390
-msgid "users"
-msgstr "lietotāji"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Atslēdzies"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.mo
deleted file mode 100644
index c07b9a8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.po
deleted file mode 100644
index dea4fba..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/mk/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# vvangelovski <vvangelovski@gmail.com>, 2013
-# vvangelovski <vvangelovski@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-12-06 10:54+0000\n"
-"Last-Translator: vvangelovski <vvangelovski@gmail.com>\n"
-"Language-Team: Macedonian (http://www.transifex.com/projects/p/django/"
-"language/mk/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: mk\n"
-"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Лични информации"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Привилегии"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важни датуми"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Успешна промена на лозинката."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Промени лозинка: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Нема зададена лозинка."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Невалиден формат на лозинка или непознат алгоритам за хеширање."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Веќе постои корисник со тоа корисничко име."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Двете полиња со лозинките не се совпаѓаат."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Корисник"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Задолжително. 30 или помалку знаци. Единствено букви, бројки и @/./+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Оваа вредност смее да содржи само букви, бројки и @/./+/-/_ знаци."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Лозинка"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Потврда на лозинка"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Заради верификација внесете ја истата лозинка како и горе."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Лозинките не се чуваат во оригинална форма, така што не постои начин да ја "
-"видите лозинката на овој корисник, но можете да ја смените лозинката со "
-"користење на <a href=\"password/\">оваа форма</a> ."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Ве молиме внесете ја точно %(username)s и лозинка. Имајте на ум дека двете "
-"полиња може да бидат со мали букви."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Оваа сметка е неактивна."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Нова лозинка"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Потврда за нова лозинка"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Не ја внесовте точно вашата стара лозинка. Ве молам внесете ја повторно."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Стара лозинка"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Лозинка (повторно)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритам"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "повторувања"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "случаен клуч"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хеш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "фактор на работа"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "проверка"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "име"
-
-#: models.py:74
-msgid "codename"
-msgstr "кодно име"
-
-#: models.py:78
-msgid "permission"
-msgstr "привилегија"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "привилегии"
-
-#: models.py:128
-msgid "group"
-msgstr "група"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "групи"
-
-#: models.py:200
-msgid "password"
-msgstr "лозинка"
-
-#: models.py:201
-msgid "last login"
-msgstr "последна најава"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "статус на суперкорисник"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Означува дека овој корисник ги има сите привилегии без експлицитно да се "
-"доделуваат сите."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Групите на кои овој корисник припаѓа. Корисникот ќе ги добие сите привилегии "
-"доделени на секоја од неговите / нејзините групи."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "кориснички привилегии"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Конкретни привилегии за овој корисник."
-
-#: models.py:368
-msgid "username"
-msgstr "корисничко име"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Задолжително. 30 или помалку знаци. Букви, бројки и @/./+/-/_ знаци"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Внесете валидно корисничко име."
-
-#: models.py:372
-msgid "first name"
-msgstr "име"
-
-#: models.py:373
-msgid "last name"
-msgstr "презиме"
-
-#: models.py:374
-msgid "email address"
-msgstr "email адреса"
-
-#: models.py:375
-msgid "staff status"
-msgstr "статус на администраторите"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Означува дали корисникот може да се логира во сајтот за администрација."
-
-#: models.py:378
-msgid "active"
-msgstr "активен"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Означува дали корисникот треба да биде активен. Одштиклирајте го ова наместо "
-"да бришете корисници."
-
-#: models.py:381
-msgid "date joined"
-msgstr "датум на зачленување"
-
-#: models.py:389
-msgid "user"
-msgstr "корисник"
-
-#: models.py:390
-msgid "users"
-msgstr "корисници"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Одјавен"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Ресетирање на лозинка за %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Внесете валидна email адреса."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.mo
deleted file mode 100644
index 31fc205..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.po
deleted file mode 100644
index 18343f4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ml/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,283 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# forgoz <david.forgoz@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Rajeesh Nair <rajeeshrnair@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Malayalam (http://www.transifex.com/projects/p/django/"
-"language/ml/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ml\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "വ്യക്തിപരമായ വിവരങ്ങള്‍"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "അനുമതികള്‍"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "പ്രധാന തീയതികള്‍"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "പാസ് വേര്‍ഡ് മാറ്റിയിരിക്കുന്നു."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "പാസ് വേര്‍ഡ് മാറ്റുക: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "രഹസ്യവാക്ക് ക്രമീകരിച്ചിട്ടില്ല"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "ആ പേരുള്ള ഒരു ഉപയോക്താവ് നിലവിലുണ്ട്."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "പാസ്‌വേര്‍ഡ് നല്കിയ കള്ളികള്‍ രണ്ടും തമ്മില്‍ സാമ്യമില്ല."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "യൂസര്‍ നാമം (ഉപയോക്ത്രു നാമം)"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"നിര്‍ബന്ധം. 30 ഓ അതില്‍ കുറവോ ചിഹ്നങ്ങള്‍. അക്ഷരങ്ങള്‍, അക്കങ്ങള്‍, പിന്നെ @/./+/-/_എന്നിവയും "
-"മാത്രം."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "അക്ഷരങ്ങള്‍, അക്കങ്ങള്‍, പിന്നെ @/./+/-/_എന്നിവയും മാത്രം."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "പാസ്‌വേര്‍ഡ്"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "പാസ്‌വേര്‍ഡ് ഉറപ്പാക്കല്‍"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "പാസ്‌വേര്‍ഡ് മുകളിലെ പോലെ തന്നെ നല്കുക. (ഉറപ്പു വരുത്താനാണ്.)"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"പാസ്‌വേര്‍ഡുകള്‍ അതേപടി സൂക്ഷിച്ചു വെക്കാത്തതുകൊണ്ട് ഈ യൂസറുടെ പാസ്‌വേര്‍ഡ് കാണാന്‍ കഴിയില്ല, പകരം <a "
-"href=\"password/\">ഈ ഫോമു</a>പയോഗിച്ച് നിലവിലുള്ള പാസ്‌വേര്‍ഡ് മാറ്റാവുന്നതാണ്."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "ഈ അക്കൗണ്ട് മരവിപ്പിച്ചതാണ്."
-
-#: forms.py:206
-msgid "Email"
-msgstr "ഈമെയിൽ"
-
-#: forms.py:256
-msgid "New password"
-msgstr "പുതിയ പാസ്‌വേര്‍ഡ്"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "പുതിയ പാസ്‌വേര്‍ഡ് ഉറപ്പാക്കല്‍"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "നിങ്ങളുടെ പഴയ പാസ്‌വേര്‍ഡ് തെറ്റായാണ് നല്കിയത്. തിരുത്തുക."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "പഴയ പാസ്‌വേര്‍ഡ്"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "പാസ്‌വേര്‍ഡ് (വീണ്ടും)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "അല്‍ഗോരിതം"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "പുനരാവൃത്തികള്‍"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "സോള്‍ട്ട്"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "ഹാഷ്"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "വര്‍ക്ക് ഫാക്ടര്‍"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "ചെക്‍സം"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "പേര്"
-
-#: models.py:74
-msgid "codename"
-msgstr "കോഡ്-നാമം"
-
-#: models.py:78
-msgid "permission"
-msgstr "അനുമതി"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "അനുമതികള്‍"
-
-#: models.py:128
-msgid "group"
-msgstr "ഗ്രൂപ്പ്"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ഗ്രൂപ്പുകള്‍"
-
-#: models.py:200
-msgid "password"
-msgstr "പാസ്‌വേര്‍ഡ്"
-
-#: models.py:201
-msgid "last login"
-msgstr "അവസാനമായി ലോഗിന്‍ ചെയ്തതു"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "സൂപ്പര്‍-യൂസര്‍ പദവി"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "ഈ ഉപയോക്താവിന് എടുത്തു പറയാതെ തന്നെ എല്ലാ അനുമതികളും ലഭിക്കുന്നതാണെന്ന് വ്യക്തമാക്കുന്നു"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"ഈ യൂസര്‍ ഉള്‍പ്പെടുന്ന ഗ്രൂപ്പുകള്‍. ഒരു യൂസര്‍ക്ക് അയാളുടെ/അവരുടെ ഓരോ ഗ്രൂപ്പിന്റേയും മുഴുവന്‍ അനുമതികളും "
-"ലഭിക്കും."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "യൂസര്‍ (ഉപയോക്താവ്)നുള്ള അനുമതികള്‍"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "യൂസര്‍ നാമം (ഉപയോക്ത്രു നാമം)"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"നിര്‍ബന്ധം. 30 ഓ അതില്‍ കുറവോ ചിഹ്നങ്ങള്‍. അക്ഷരങ്ങള്‍, അക്കങ്ങള്‍, പിന്നെ @/./+/-/_എന്നിവയും "
-"മാത്രം."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "തെറ്റായ ഉപഭോക്തൃ നാമം"
-
-#: models.py:372
-msgid "first name"
-msgstr "പേര് - ആദ്യഭാഗം"
-
-#: models.py:373
-msgid "last name"
-msgstr "പേര് - അന്ത്യഭാഗം"
-
-#: models.py:374
-msgid "email address"
-msgstr "ഈമെയിൽ വിലാസം"
-
-#: models.py:375
-msgid "staff status"
-msgstr "സ്റ്റാഫ് പദവി"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "ഈ യൂസര്‍ക്ക് ഈ അഡ്മിന്‍ സൈറ്റിലേക്ക് പ്രവേശിക്കാമോ എന്നു വ്യക്തമാക്കാന്‍"
-
-#: models.py:378
-msgid "active"
-msgstr "സജീവം"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"ഈ യൂസര്‍ സജീവമാണോയെന്ന് വ്യക്തമാക്കുന്നു. അക്കൗണ്ട് ഡിലീറ്റ് ചെയ്യുന്നതിനു പകരം ഇത് ഒഴിവാക്കുക."
-
-#: models.py:381
-msgid "date joined"
-msgstr "ചേര്‍ന്ന തീയതി"
-
-#: models.py:389
-msgid "user"
-msgstr "യൂസര്‍ (ഉപയോക്താവ്)"
-
-#: models.py:390
-msgid "users"
-msgstr "യൂസേര്‍സ് (ഉപയോക്താക്കള്‍)"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ലോഗ്-ഔട്ട് ചെയ്തു (പുറത്തിറങ്ങി)"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s ലെ പാസ്‌വേര്‍ഡ് മാറ്റിയിരിക്കുന്നു"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.mo
deleted file mode 100644
index 9088663..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.po
deleted file mode 100644
index 6232e29..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/mn/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# delgermurun <pdelgermurun@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# zorig <zorig_ezd@yahoo.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-30 18:29+0000\n"
-"Last-Translator: zorig <zorig_ezd@yahoo.com>\n"
-"Language-Team: Mongolian (http://www.transifex.com/projects/p/django/"
-"language/mn/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: mn\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Хувийн мэдээлэл"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Эрхүүд"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Чухал огноо"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Нууц үг амжилттай өөрчлөгдлөө."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Нууц үг өөрчлөх: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Нууц үг тохируулаагүй."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Нууц үгийн буруу формат эсвэл үл мэдэгдэх хаш алгоритм байна."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ийм хэрэглэгчийн нэртэй хэрэглэгч өмнө нь бүртгүүлсэн байна."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Хоёр нууц үг зөрж байна."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Хэрэглэгчийн нэр"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Заавал. 30 ба түүнээс бага үсэгтэй. Зөвхөн латин үсэг, тоо болон @/./+/-/_ "
-"тэмдэгтүүдийг зөвшөөрнө."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Энэ утга дотор зөвхөн үсэг, тоо болон @/./+/-/_ тэмдэгтүүд байж болно."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Нууц үг "
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Нууц үгийн баталгаа"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Батлахын тулд дээрх нууц үгээ ахин хийнэ үү."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Жинхэн нууц үгүүдийг хадгалдаггүй учраас хэрэглэгчийн нууц үгийг харах "
-"боломжгүй юм. Гэхдээ та нууц үгийг <a href=\"password/\">цонхоор</a> өөрчлөх "
-"боломжтой."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Зөв %(username)s, нууц үг оруулна уу. Том жижиг үсэг ялгаатай болхын "
-"анхаарна уу."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Энэ бүртгэл идэвхгүй байна."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Цахим хаяг"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Шинэ нууц үг"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Шинэ нууц үгийн баталгаа"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Хуучин нууц үгээ буруу оруулсан байна. Ахин оруулна уу."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Хуучин нууц үг"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Нууц үг (ахиад)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "Алгоритм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "давталтууд"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "давс"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хаш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "ажлын байгуулагч"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "нэр"
-
-#: models.py:74
-msgid "codename"
-msgstr "Код"
-
-#: models.py:78
-msgid "permission"
-msgstr "зөвшөөрөл"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "зөвшөөрлүүд"
-
-#: models.py:128
-msgid "group"
-msgstr "бүлэг "
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "бүлгүүд"
-
-#: models.py:200
-msgid "password"
-msgstr "нууц үг"
-
-#: models.py:201
-msgid "last login"
-msgstr "сүүлд нэвтэрсэн"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "Удирдлагын төлөв"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Энэ хэрэглэгчид бүх зөвшөөрөл байгааг ил тод харуулалгүй тодорхойлно. "
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Бүлэгүүд энэ хэрэглэгчийнхээс тусдаа. Хэрэглэгчид нь сонгосон бүлэгт "
-"олгогдсон бүх эрх зөвшөөрөгдөх болно."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "хэрэглэгчийн эрхүүд"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Хэрэглэгчид тодорхойлж өгсөн эрх"
-
-#: models.py:368
-msgid "username"
-msgstr "хэрэглэгчийн нэр"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Заавал. 30 болон түүнээс бага тэмдэгт. Үсэг, тоо болон @/./+/-/_ тэмдэгтүүд "
-"ашиглана уу."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Зөв нэвтрэх нэр оруулна уу."
-
-#: models.py:372
-msgid "first name"
-msgstr "нэр"
-
-#: models.py:373
-msgid "last name"
-msgstr "овог"
-
-#: models.py:374
-msgid "email address"
-msgstr "цахим хаяг"
-
-#: models.py:375
-msgid "staff status"
-msgstr "Хэрэглэгчдийн төлөв"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Уг удирдлагын сайт руу хэрэглэгч нэвтрэх боломжтой эсэхийг тодорхойлно."
-
-#: models.py:378
-msgid "active"
-msgstr "идэвхтэй"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Энэ хэрэглэгчийг идэвхтэй болгох эсэхийг тодорхойлно. Бүртгэлийг нь устгахын "
-"оронд сонгохгүй байхад л хангалттай."
-
-#: models.py:381
-msgid "date joined"
-msgstr "бүртгүүлсэн огноо"
-
-#: models.py:389
-msgid "user"
-msgstr "хэрэглэгч "
-
-#: models.py:390
-msgid "users"
-msgstr "хэрэглэгчид"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Гарсан"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s cайт дээрх нууц үг сэргээлт"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Зөв нэвтрэх нэр оруулна уу."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.mo
deleted file mode 100644
index 05be50a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.po
deleted file mode 100644
index 14b8645..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/my/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,272 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Yhal Htet Aung <jumoun@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Burmese (http://www.transifex.com/projects/p/django/language/"
-"my/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: my\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ကိုယ်ရေးအချက်အလက်"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "ခွင့်ပြုချက်များ"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "အရေးကြီးနေ့စွဲများ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "အသံုးပြုသူနာမည်"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "စကားဝှက်"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr ""
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr "အီးမေးလ်"
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr ""
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "ပံုသေနည်း"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "နာမည်"
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr "အုပ်စု"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "အုပ်စုများ"
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.mo
deleted file mode 100644
index d1ec095..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.po
deleted file mode 100644
index 9e0732c..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nb/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,283 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# jonklo <jonklo@gmail.com>, 2013
-# Sigurd Gartmann <sigurdga-transifex@sigurdga.no>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 09:25+0000\n"
-"Last-Translator: jonklo <jonklo@gmail.com>\n"
-"Language-Team: Norwegian Bokmål (http://www.transifex.com/projects/p/django/"
-"language/nb/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nb\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personlig informasjon"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Rettigheter"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Viktige datoer"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Passordet er endret."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Endre passord: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Passord ikke satt."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Ugyldig passordformat eller ukjent hash-algoritme."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Det eksisterer allerede en bruker med dette brukernavnet."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "De to passordfeltene er ikke like."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Brukernavn"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Påkrevet. 30 tegn eller færre. Kun bokstaver, tall og @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Verdien kan kun inneholde bokstaver, tall og @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Passord"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Passordbekreftelse"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Skriv inn det samme passordet som ovenfor, for verifisering."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Selve passordet lagres ikke, så det finnes ingen måte å se denne brukerens "
-"passord på. Du kan endre passordet med <a href=\"password/\">dette skjemaet</"
-"a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Vennligst oppgi korrekt %(username)s og passord. Merk at det kan være "
-"forskjell på små og store bokstaver."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Denne kontoen er inaktiv."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-post"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nytt passord"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Bekreft nytt passord"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Ditt gamle passord er galt. Vennligst prøv igjen."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Gammelt passord"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Passord (gjenta)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterasjoner"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "arbeidsfaktor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "sjekksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "navn"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodenavn"
-
-#: models.py:78
-msgid "permission"
-msgstr "rettighet"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "rettigheter"
-
-#: models.py:128
-msgid "group"
-msgstr "gruppe"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupper"
-
-#: models.py:200
-msgid "password"
-msgstr "passord"
-
-#: models.py:201
-msgid "last login"
-msgstr "siste innlogging"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superbruker"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Angir at denne brukeren har alle rettigheter uten å eksplisitt sette dem."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Gruppene denne brukeren er tilknyttet. En bruker vil ha alle rettigheter "
-"tilhørende gruppene han/hun er medlem av."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "Brukerrettigheter"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Spesifikke tillatelser for denne brukeren."
-
-#: models.py:368
-msgid "username"
-msgstr "brukernavn"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Påkrevet. 30 tegn eller færre. Bokstaver, tall og @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Oppgi et gyldig brukernavn"
-
-#: models.py:372
-msgid "first name"
-msgstr "fornavn"
-
-#: models.py:373
-msgid "last name"
-msgstr "etternavn"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-postadresse"
-
-#: models.py:375
-msgid "staff status"
-msgstr "administrasjonsstatus"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Angir at brukeren kan logge inn på denne administrasjonssiden."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Angir at denne brukeren er aktiv. Avmerk denne i stedet for å slette kontoen."
-
-#: models.py:381
-msgid "date joined"
-msgstr "registrert"
-
-#: models.py:389
-msgid "user"
-msgstr "bruker"
-
-#: models.py:390
-msgid "users"
-msgstr "brukere"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Logget ut"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Passord-nullstilling på %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Oppgi et gyldig brukernavn"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.mo
deleted file mode 100644
index 9379af4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.po
deleted file mode 100644
index d2ef5e2..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ne/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,274 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Sagar Chalise <chalisesagar@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Nepali (http://www.transifex.com/projects/p/django/language/"
-"ne/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ne\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "व्यक्तिगत विवरण"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "अनुमति"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "महत्वपूर्ण मितिहरु"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "पासवर्ड सफलतापूर्वक फेरिएको छ ।"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "पासवर्ड फेर्नुहोस : %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "पासवर्ड राखिएको छैन ।"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "त्यो प्रयोगकर्ता नाम भएका व्यक्ति पहिले नै छन् ।"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "दुई पासवर्ड मिलेन ।"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "प्रयोगकर्ता नाम "
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "आवश्यक । ३० अक्षर वा कम । अंक, वर्ण र @/./+/-/_ मात्र उपयुक्त ।"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "यो मान अंक, वर्ण र @/./+/-/_ मात्र उपयुक्त छ ।"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "पासवर्ड"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "पासवर्ड पुष्टि"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "प्रमाणिकरणको लागि माथी कै पासवर्ड राख्नुहोस ।"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"पासवर्ड राखिएको हुँदैन, त्यसैले व्यक्तिको पासवर्ड हेर्न मिल्दैन, तर पासवर्ड फेर्न को लागि <a "
-"href=\"password/\">यो फारम</a> भर्नु होस । "
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "कृपया सही %(username)s र पासवर्ड राख्नु होस । "
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "यो खाता सक्रिय छैन । "
-
-#: forms.py:206
-msgid "Email"
-msgstr "ई-मेल"
-
-#: forms.py:256
-msgid "New password"
-msgstr "नयाँ पासवर्ड"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "नयाँ पासवर्ड पुष्टि"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "तपाईको पुरानो पासवर्ड गलत भयो । कृपया पुन: हाल्नुहोस । "
-
-#: forms.py:290
-msgid "Old password"
-msgstr "पुरानो पासवर्ड"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "पासवर्ड (पुन:)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "अल्गोरिदम"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "नाम"
-
-#: models.py:74
-msgid "codename"
-msgstr "कोडनेम"
-
-#: models.py:78
-msgid "permission"
-msgstr "अनुमति"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "अनुमति"
-
-#: models.py:128
-msgid "group"
-msgstr "समुह"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "समुहहरु"
-
-#: models.py:200
-msgid "password"
-msgstr "पासवर्ड"
-
-#: models.py:201
-msgid "last login"
-msgstr "पूर्व लगिन"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "प्रधान प्रयोगकर्ता प्रतिष्ठा "
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "प्रयोग कर्ताका अनुमति "
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "प्रयोगकर्ता नाम"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "आवश्यक । ३० अक्षर वा कम । अंक, वर्ण र @/./+/-/_ मात्र उपयुक्त ।"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "सही प्रयोग कर्ता नाम राख्नु होस ।"
-
-#: models.py:372
-msgid "first name"
-msgstr "नाम"
-
-#: models.py:373
-msgid "last name"
-msgstr "थर"
-
-#: models.py:374
-msgid "email address"
-msgstr "ई-मेल ठेगाना"
-
-#: models.py:375
-msgid "staff status"
-msgstr "स्टाफ प्रतिष्ठा "
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr "सक्रिय "
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "दर्ता भएको मिति"
-
-#: models.py:389
-msgid "user"
-msgstr "प्रयोगकर्ता"
-
-#: models.py:390
-msgid "users"
-msgstr "प्रयोगकर्ता"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "लग आउट "
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s को पासवर्ड पून: राख्नु "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "सही ई-मेल ठेगाना राख्नु होस ।"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.mo
deleted file mode 100644
index 8bfdd41..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.po
deleted file mode 100644
index 1f1c067..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nl/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,293 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Bas Peschier <bas.peschier@gmail.com>, 2013
-# erikr <transifex@solidlinks.nl>, 2013
-# erikr <transifex@solidlinks.nl>, 2013
-# Harro van der Klauw <hvdklauw@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Jeffrey Gelens <jeffrey@noppo.pro>, 2011-2012
-# Tino de Bruijn <tinodb@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 17:29+0000\n"
-"Last-Translator: Bas Peschier <bas.peschier@gmail.com>\n"
-"Language-Team: Dutch (http://www.transifex.com/projects/p/django/language/"
-"nl/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nl\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Persoonlijke informatie"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Rechten"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Belangrijke datums"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Wachtwoord wijzigen is geslaagd."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Wijzig wachtwoord: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Er is geen wachtwoord ingesteld."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Ongeldig wachtwoord formaat of onbekend hashing algoritme."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Een gebruiker met deze gebruikersnaam bestaat al."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "De twee ingevulde wachtwoorden zijn niet gelijk."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Gebruikersnaam"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Vereist. 30 tekens of minder. Alleen letters, cijfers en @/,/+/-/_ tekens "
-"zijn toegestaan."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Dit veld mag alleen letters, cijfers en @/,/+/-/_ tekens bevatten."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Wachtwoord"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Bevestiging wachtwoord"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Vul hetzelfde wachtwoord als hierboven in, ter bevestiging."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Wachtwoorden worden niet als tekst opgeslagen, dus je kunt een gebruikers "
-"wachtwoord niet zien. Je kunt hem aanpassen via <a href=\"password/\">dit "
-"formulier</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Voer een correcte %(username)s en wachtwoord in. Let op dat beide velden "
-"hoofdlettergevoelig zijn."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Dit account is inactief."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nieuw wachtwoord"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Nieuw wachtwoord bevestigen"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Uw oude wachtwoord is niet correct ingevoerd. Voert u het alstublieft "
-"opnieuw in."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Oud wachtwoord"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Wachtwoord (nogmaals)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritme"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteraties"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "arbeidsfactor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "naam"
-
-#: models.py:74
-msgid "codename"
-msgstr "codenaam"
-
-#: models.py:78
-msgid "permission"
-msgstr "recht"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "rechten"
-
-#: models.py:128
-msgid "group"
-msgstr "groep"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "groepen"
-
-#: models.py:200
-msgid "password"
-msgstr "wachtwoord"
-
-#: models.py:201
-msgid "last login"
-msgstr "laatste inlog"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "supergebruikerstatus"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Bepaalt dat deze gebruiker alle rechten heeft, zonder deze expliciet toe te "
-"wijzen."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"De groepen waar deze gebruiker toe behoord. Een gebruiker zal alle rechten "
-"krijgen van zijn/haar groepen."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "gebruikersrechten"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Specifieke rechten voor deze gebruiker"
-
-#: models.py:368
-msgid "username"
-msgstr "gebruikersnaam"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Vereist. 30 tekens of minder. Letters, cijfers en /./+/-/_ tekens."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Vul een geldige gebruikersnaam in."
-
-#: models.py:372
-msgid "first name"
-msgstr "voornaam"
-
-#: models.py:373
-msgid "last name"
-msgstr "achternaam"
-
-#: models.py:374
-msgid "email address"
-msgstr "emailadres"
-
-#: models.py:375
-msgid "staff status"
-msgstr "stafstatus"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Bepaalt of de gebruiker kan inloggen op deze beheersite."
-
-#: models.py:378
-msgid "active"
-msgstr "actief"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Bepaalt of deze gebruiker als actief dient te worden behandeld. U kunt dit "
-"uitvinken in plaats van een gebruiker te verwijderen."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datum toegetreden"
-
-#: models.py:389
-msgid "user"
-msgstr "gebruiker"
-
-#: models.py:390
-msgid "users"
-msgstr "gebruikers"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Afmelden"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Wachtwoord reset voor %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Vul een geldig emailadres in."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.mo
deleted file mode 100644
index 3adc772..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.po
deleted file mode 100644
index d0432c4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/nn/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,273 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Norwegian Nynorsk (http://www.transifex.com/projects/p/django/"
-"language/nn/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nn\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personleg informasjon"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Løyve"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Viktige datoar"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Passordet er endra."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Endre passord: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Det eksisterar allereie ein brukar med dette brukernamnet."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dei to passordfelta er ikkje like."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Brukarnamn"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Nødvendig. 30 teikn eller færre. Berre bokstavar, tall @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Feltet kan berre innehalde bokstavar, nummer og @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Passord"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Stadfesting av passord"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Skriv inn det samme passordet som over, for verifisering."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Denne kontoen er inaktiv."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nytt passord"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Stadfest nytt passord"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Det gamle passordet er feil. Prøv omatt."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Gammalt passord"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Passord (gjenta)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "namn"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodenamn"
-
-#: models.py:78
-msgid "permission"
-msgstr "løyve"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "løyve"
-
-#: models.py:128
-msgid "group"
-msgstr "gruppe"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupper"
-
-#: models.py:200
-msgid "password"
-msgstr "passord"
-
-#: models.py:201
-msgid "last login"
-msgstr "siste innlogging"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superbrukar"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Angir at denne brukaren har alle løyve utan å eksplisitt sette dei."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "Brukerløyve"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "brukarnamn"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Nødvendig. 30 teikn eller færre. Berre bokstavar, tall @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "fornamn"
-
-#: models.py:373
-msgid "last name"
-msgstr "etternamn"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "administrasjonsstatus"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Angir at brukaren kan logge inn på denne administrasjonssida."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Angir at denne brukaren er aktiv. Avmerk denne i staden for å slette kontoen."
-
-#: models.py:381
-msgid "date joined"
-msgstr "registrert"
-
-#: models.py:389
-msgid "user"
-msgstr "brukar"
-
-#: models.py:390
-msgid "users"
-msgstr "brukarar"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Logga ut"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.mo
deleted file mode 100644
index b658968..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.po
deleted file mode 100644
index 7f54bd2..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/os/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,284 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Soslan Khubulov <soslanx@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Ossetic (http://www.transifex.com/projects/p/django/language/"
-"os/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: os\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Персоналон инфо"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Бартӕ"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Ахсджиаг бонтӕ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Пароль ивд ӕрцыд."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Фӕив пароль: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Ницы пароль уыд ӕвӕрд."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Паролы формат раст нӕу, кӕнӕ хӕшты алгоритм бӕрӕг нӕу."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ахӕм фӕсномыгимӕ архайӕг нырид ис."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Дыууӕ паролы ӕмхуызӕн не сты."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Фӕсномыг"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Ӕнӕмӕнг. 30 кӕнӕ цъусдӕр нысаны. Ӕрмӕст дамгъӕтӕ, нымӕцтӕ ӕмӕ @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Ам хъуамӕ уой ӕрмӕст дамгъӕтӕ, нымӕцтӕ ӕмӕ ахӕм нысӕнттӕ: @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Пароль"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Паролы бӕлвырдгӕнӕн"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Уӕлдӕр цы пароль бафыстай, уый бафысс, цӕмӕй бӕлвырд уа."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Хом парольтӕ ӕвӕрд не сты, ӕмӕ уый тыххӕй ницы хуызы ис гӕнӕн фенын ацы "
-"архайӕджы пароль, фӕлӕ дӕ бон у <a href=\"password/\">ацы формӕйы</a> "
-"ӕххуысӕй йӕ фӕивай."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Дӕ хорзӕхӕй, раст %(username)s ӕмӕ пароль бафысс. Дӕ сӕры дар уый, ӕмӕ дыууӕ "
-"дӕр гӕнӕн ис стыр ӕмӕ гыццыл дамгъӕтӕ ӕвзарой."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ацы аккаунт ницы архайы."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Электрон пост"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Ног пароль"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Нӕуӕг паролы бӕлвырдгӕнӕн"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Дӕ зӕронд пароль раст амынд нӕу. Дӕ хорзӕхӕй, нӕуӕгӕй йӕ бафысс."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Зӕронд пароль"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Пароль (ногӕй)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "итерацитӕ"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "цӕхх"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хӕш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "куысты фактор"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "бӕлвырдсуммӕ"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ном"
-
-#: models.py:74
-msgid "codename"
-msgstr "кодном"
-
-#: models.py:78
-msgid "permission"
-msgstr "бар"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "бартӕ"
-
-#: models.py:128
-msgid "group"
-msgstr "къорд"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "къордтӕ"
-
-#: models.py:200
-msgid "password"
-msgstr "пароль"
-
-#: models.py:201
-msgid "last login"
-msgstr "фӕстаг бахызт"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "хистӕр архайӕджы статус"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Ацы архайӕгӕн алы бар дӕр дӕтты, цӕмӕй сӕ хицӕнӕй дӕттын ма хъӕуа."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Ацы архайӕг цы къордты ис. Архайӕг цы къордты ис, уыцы къордты бартӕ йын "
-"лӕвӕрд ӕрцӕудзысты."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "архайӕджы бартӕ"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "фӕсномыг"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Ӕнӕмӕнг. 30 кӕнӕ цъусдӕр нысаны. Ӕрмӕст дамгъӕтӕ, нымӕцтӕ ӕмӕ ахӕм нысӕнттӕ: "
-"@/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Раст фӕсномыг бафысс"
-
-#: models.py:372
-msgid "first name"
-msgstr "ном"
-
-#: models.py:373
-msgid "last name"
-msgstr "мыггаг"
-
-#: models.py:374
-msgid "email address"
-msgstr "электрон посты адрис"
-
-#: models.py:375
-msgid "staff status"
-msgstr "куысты уавӕр"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Бӕрӕг кӕны архайӕгӕн йӕ бон у ацы армдарӕн сайтмӕ хизын, ӕви нӕ."
-
-#: models.py:378
-msgid "active"
-msgstr "активон"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Бӕрӕг кӕны ацы архайӕгы хъӕуы нымайын активоныл, ӕви нӕ. Йӕ нысан ын сис "
-"хафыны бӕсты."
-
-#: models.py:381
-msgid "date joined"
-msgstr "баиуы бон"
-
-#: models.py:389
-msgid "user"
-msgstr "архайӕг"
-
-#: models.py:390
-msgid "users"
-msgstr "архайджытӕ"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Рахизын"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "%(site_name)s-ы нӕуӕг пароль ӕвӕрӕн"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Раст фӕсномыг бафысс"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.mo
deleted file mode 100644
index 13eaf83..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.po
deleted file mode 100644
index 2d0eb7e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pa/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,273 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# A S Alam <apreet.alam@gmail.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Panjabi (Punjabi) (http://www.transifex.com/projects/p/django/"
-"language/pa/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pa\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ਨਿੱਜੀ ਜਾਣਕਾਰੀ"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "ਅਧਿਕਾਰ"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "ਖਾਸ ਮਿਤੀਆਂ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "ਪਾਸਵਰਡ ਠੀਕ ਤਰ੍ਹਾਂ ਬਦਲਿਆ ਗਿਆ ਹੈ।"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "ਪਾਸਵਰਡ ਬਦਲੋ: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "ਕੋਈ ਪਾਸਵਰਡ ਸੈੱਟ ਨਹੀਂ।"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "ਗਲਤ ਪਾਸਵਰਡ ਫਾਰਮੈਟ ਜਾਂ ਅਣਜਾਣ ਹੈਸ਼ ਐਲੋਗਰਿਥਮ ਹੈ।"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "ਉਸ ਯੂਜ਼ਰ ਨਾਂ ਨਾਲ ਯੂਜ਼ਰ ਪਹਿਲਾਂ ਹੀ ਮੌਜੂਦ ਹੈ।"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "ਦੋਵੇਂ ਪਾਸਵਰਡ ਖੇਤਰ ਮਿਲਦੇ ਨਹੀਂ ਹਨ।"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "ਯੂਜ਼ਰ ਨਾਂ"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "ਲਾਜ਼ਮੀ। ੩੦ ਜਾਂ ਘੱਟ ਅੱਖਰ ਚਾਹੀਦੇ ਹਨ। ਅੱਖਰ, ਅੰਕ @/./+/-/_ ਹੀ।"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "ਪਾਸਵਰਡ"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "ਪਾਸਵਰਡ ਪੁਸ਼ਟੀ"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "ਜਾਂਚ ਲਈ, ਉੱਤੇ ਦਿੱਤਾ ਪਾਸਵਰਡ ਹੀ ਦਿਓ।"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "ਇਹ ਅਕਾਊਂਟ ਗ਼ੈਰ-ਸਰਗਰਮ ਹੈ।"
-
-#: forms.py:206
-msgid "Email"
-msgstr "ਈਮੇਲ"
-
-#: forms.py:256
-msgid "New password"
-msgstr "ਨਵਾਂ ਪਾਸਵਰਡ"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "ਨਵਾਂ ਪਾਸਵਰਡ ਪੁਸ਼ਟੀ"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "ਤੁਹਾਡਾ ਪੁਰਾਣਾ ਪਾਸਵਰਡ ਗਲਤ ਦਿੱਤਾ ਗਿਆ ਸੀ। ਇਸ ਨੂੰ ਫੇਰ ਦਿਉ ਜੀ।"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "ਪੁਰਾਣਾ ਪਾਸਵਰਡ"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "ਪਾਸਵਰਡ (ਫੇਰ)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "ਐਲਗੋਰਿਥਮ"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "ਸਾਲਟ"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "ਹੈਸ਼"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "ਵਰਕ ਫੈਕਟਰ"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "ਚੈਕਸਮ"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ਨਾਂ"
-
-#: models.py:74
-msgid "codename"
-msgstr "ਕੋਡ-ਨਾਂ"
-
-#: models.py:78
-msgid "permission"
-msgstr "ਅਧਿਕਾਰ"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "ਅਧਿਕਾਰ"
-
-#: models.py:128
-msgid "group"
-msgstr "ਗਰੁੱਪ"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "ਗਰੁੱਪ"
-
-#: models.py:200
-msgid "password"
-msgstr "ਪਾਸਵਰਡ"
-
-#: models.py:201
-msgid "last login"
-msgstr "ਆਖਰੀ ਲਾਗਇਨ"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "ਸੁਪਰਯੂਜ਼ਰ ਹਾਲਤ"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ਯੂਜ਼ਰ ਅਧਿਕਾਰ"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "ਯੂਜ਼ਰ ਨਾਂ"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "ਲਾਜ਼ਮੀ। ੩੦ ਜਾਂ ਘੱਟ ਅੱਖਰ ਚਾਹੀਦੇ ਹਨ। ਅੱਖਰ, ਅੰਕ @//+/-/_ ਹੀ।"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "ਠੀਕ ਯੂਜ਼ਰ-ਨਾਂ ਦਿਉ।"
-
-#: models.py:372
-msgid "first name"
-msgstr "ਪਹਿਲਾਂ ਨਾਂ"
-
-#: models.py:373
-msgid "last name"
-msgstr "ਆਖਰੀ ਨਾਂ"
-
-#: models.py:374
-msgid "email address"
-msgstr "ਈਮੇਲ ਐਡਰੈਸ"
-
-#: models.py:375
-msgid "staff status"
-msgstr "ਸਟਾਫ ਹਾਲਤ"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr "ਸਰਗਰਮ"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "ਜੁਆਇੰਨ ਕਰਨ ਦੀ ਮਿਤੀ"
-
-#: models.py:389
-msgid "user"
-msgstr "ਯੂਜ਼ਰ"
-
-#: models.py:390
-msgid "users"
-msgstr "ਯੂਜ਼ਰ"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ਲਾਗ ਆਉਟ ਕੀਤਾ"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "ਢੁੱਕਵਾਂ ਈਮੇਲ ਐਡਰੈਸ ਦਿਉ।"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.mo
deleted file mode 100644
index d665513..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.po
deleted file mode 100644
index 941a92f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pl/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# angularcircle, 2011,2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Karol <kfuks2@o2.pl>, 2012
-# Roman Barczyński <rombar@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Polish (http://www.transifex.com/projects/p/django/language/"
-"pl/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pl\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
-"|| n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Dane osobowe"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Uprawnienia"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Ważne daty"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Hasło zostało zmienione pomyślnie."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Zmień hasło: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Hasło nie zostało ustawione."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-"Format hasła jest niewłaściwy, bądź zastosowany została nieznana funkcja "
-"skrótu (hash)."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Użytkownik o tej nazwie już istnieje."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Hasła się nie zgadzają."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nazwa użytkownika"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Wymagane. 30 znaków lub mniej. Tylko litery, cyfry i znaki @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "To pole może zawierać tylko litery, cyfry i znaki @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Hasło"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potwierdzenie hasła"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Podaj powyższe hasło w celu weryfikacji."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Czyste hasła nie są zapisywane, więc nie ma możliwości aby zobaczyć hasło "
-"użytkownika, ale możesz zmienić hasło używając <a href=\"password/\">tego "
-"formularza</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Wprowadź poprawną %(username)s oraz hasło. Uwaga: wielkość liter ma "
-"znaczenie."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "To konto jest nieaktywne."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Adres email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nowe hasło"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Nowe hasło (powtórz)"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Podane stare hasło jest niepoprawne. Proszę podać je jeszcze raz."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Stare hasło"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Hasło (powtórz)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorytm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracje"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "sól"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "work factor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma kontrolna"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nazwa"
-
-#: models.py:74
-msgid "codename"
-msgstr "nazwa kodowa"
-
-#: models.py:78
-msgid "permission"
-msgstr "uprawnienie"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "uprawnienia"
-
-#: models.py:128
-msgid "group"
-msgstr "grupa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupy"
-
-#: models.py:200
-msgid "password"
-msgstr "hasło"
-
-#: models.py:201
-msgid "last login"
-msgstr "ostatnio zalogowany"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status administratora"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Oznacza, że ten użytkownik ma wszystkie uprawnienia bez jawnego "
-"przypisywania ich."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupy do których należy użytkownik. Użytkownik otrzyma wszystkie uprawnienia "
-"przypisane do którejkolwiek z jego/jej grup."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "uprawnienia użytkownika"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "użytkownik"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Wymagane. 30 znaków lub mniej. Tylko litery, cyfry i znaki @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Wprowadź poprawną nazwę użytkownika."
-
-#: models.py:372
-msgid "first name"
-msgstr "imię"
-
-#: models.py:373
-msgid "last name"
-msgstr "nazwisko"
-
-#: models.py:374
-msgid "email address"
-msgstr "adres email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "w zespole"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Oznacza czy użytkownik może zalogować się do panelu admina."
-
-#: models.py:378
-msgid "active"
-msgstr "aktywny"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Oznacza czy użytkownika należy uważać za aktywnego. Odznacz to, zamiast "
-"usuwać konta."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data przyłączenia"
-
-#: models.py:389
-msgid "user"
-msgstr "użytkownik"
-
-#: models.py:390
-msgid "users"
-msgstr "użytkownicy"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Wylogowany"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Reset hasła dla konta na stronie %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Wprowadź poprawną nazwę użytkownika."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.mo
deleted file mode 100644
index abb4f7b..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.po
deleted file mode 100644
index 9f632d9..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pt/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Nuno Mariz <nmariz@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-31 16:34+0000\n"
-"Last-Translator: Nuno Mariz <nmariz@gmail.com>\n"
-"Language-Team: Portuguese (http://www.transifex.com/projects/p/django/"
-"language/pt/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pt\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informação pessoal"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permissões"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Datas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Palavra-passe modificada com sucesso."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Modificar a palavra-passe: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Nenhuma palavra-chave definida."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato de palavra-chave inválido ou função de mistura desconhecida."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Já existe um utilizador com esse nome."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Os dois campos da palavra-passe não coincidem."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Utilizador"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obrigatório. 30 carateres ou menos. Apenas letras, dígitos e @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Este valor apenas deverá conter letras, números e carateres @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Palavra-passe"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmação da palavra-passe"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Introduza a palavra-passe como acima, para verificação."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Não são guardadas palavras-passe sem encriptação, portanto não é possível "
-"visualizar a password deste utilizador, mas poderá modificar a palavra-passe "
-"através <a href=\"password/\">deste formulário</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Por favor introduza o %(username)s e password corretos. Tenha em atenção às "
-"maiúsculas e minúsculas."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta conta não está activa."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova palavra-passe"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmação da nova palavra-passe"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"A sua palavra-passe antiga foi introduzida incorretamente. Por favor tente "
-"novamente."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Palavra-passe antiga"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Palavra-passe (novamente)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterações"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "fator trabalho"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "verificação"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nome"
-
-#: models.py:74
-msgid "codename"
-msgstr "nome de código"
-
-#: models.py:78
-msgid "permission"
-msgstr "permissão"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permissões"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "palavra-passe"
-
-#: models.py:201
-msgid "last login"
-msgstr "última entrada"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "Status de superuser"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Define se este utilizador tem todas as permissões sem explicitamente as "
-"atribuir."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Os grupos este utilizador pertence. Um utilizador terá todas as permissões "
-"concedidas a cada um do seu grupo."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permissões do utilizador"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Permissões específicas para este utilizador."
-
-#: models.py:368
-msgid "username"
-msgstr "utilizador"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obrigatório. 30 carateres ou menos. Apenas letras, números e carateres @/./"
-"+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Introduza um nome de utilizador válido."
-
-#: models.py:372
-msgid "first name"
-msgstr "primeiro nome"
-
-#: models.py:373
-msgid "last name"
-msgstr "último nome"
-
-#: models.py:374
-msgid "email address"
-msgstr "endereço de email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "status de equipa"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Define se o utilizador pode usar a administração do site."
-
-#: models.py:378
-msgid "active"
-msgstr "ativo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Defina se este utilizador deva ser tratado como ativo. Não selecione em vez "
-"de remover as contas."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data de registo"
-
-#: models.py:389
-msgid "user"
-msgstr "utilizador"
-
-#: models.py:390
-msgid "users"
-msgstr "utilizadores"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Saiu"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Redefinição de palavra-passe em %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Introduza um nome de utilizador válido."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.mo
deleted file mode 100644
index 3acb377..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.po
deleted file mode 100644
index 89bf762..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/pt_BR/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,294 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# dudanogueira <dudanogueira@gmail.com>, 2012
-# Eduardo Carvalho <eduardocereto@gmail.com>, 2013
-# Elyézer Rezende <elyezermr@gmail.com>, 2013
-# gsavix <gsavix@gmail.com>, 2013
-# Guilherme Gondim <semente@taurinus.org>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Sandro <sandrossv@hotmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/"
-"django/language/pt_BR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pt_BR\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informações pessoais"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permissões"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Datas importantes"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Senha modificada com sucesso."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Alterar senha: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Nenhuma senha definida."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Formato de senha inválido ou algoritmo de hash desconhecido."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Um usuário com este nome de usuário já existe."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Os dois campos de senha não combinam."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Usuário"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obrigatório. 30 caracteres ou menos. Somente letras, dígitos e @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Este valor deve conter apenas letras, números e os caracteres @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Senha"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmação de senha"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Informe a mesma senha digitada acima, para verificação."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Não são armazenadas senhas no formato plano, por isso não há como visualizar "
-"a senha do usuário, mas você pode alterá-la usando <a href=\"password/"
-"\">este formulário</a> ."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Por favor, entre com um %(username)s e senha corretos. Note que ambos os "
-"campos diferenciam maiúsculas e minúsculas."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Esta conta está inativa."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova senha"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmação da nova senha"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"A senha antiga foi digitada incorretamente. Por favor, informe-a novamente."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Senha antiga"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Senha (novamente)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmo"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterações"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "fator de trabalho"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nome"
-
-#: models.py:74
-msgid "codename"
-msgstr "apelido"
-
-#: models.py:78
-msgid "permission"
-msgstr "permissão"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permissões"
-
-#: models.py:128
-msgid "group"
-msgstr "grupo"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupos"
-
-#: models.py:200
-msgid "password"
-msgstr "senha"
-
-#: models.py:201
-msgid "last login"
-msgstr "último login"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status de superusuário"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Indica que este usuário tem todas as permissões sem atribuí-las "
-"explicitamente."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Os grupos que este usuário pertence. Um usuário terá todas as permissões "
-"concedidas a cada um de seus grupos."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permissões do usuário"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "usuário"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obrigatório. 30 caracteres ou menos. Letras, números e os caracteres @/./+/-/"
-"_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Informe um nome de usuário válido."
-
-#: models.py:372
-msgid "first name"
-msgstr "primeiro nome"
-
-#: models.py:373
-msgid "last name"
-msgstr "último nome"
-
-#: models.py:374
-msgid "email address"
-msgstr "endereço de email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "membro da equipe"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Indica que usuário consegue acessar este site de administração."
-
-#: models.py:378
-msgid "active"
-msgstr "ativo"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Indica que o usuário será tratado como ativo. Ao invés de excluir contas de "
-"usuário, desmarque isso."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data de registro"
-
-#: models.py:389
-msgid "user"
-msgstr "usuário"
-
-#: models.py:390
-msgid "users"
-msgstr "usuários"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Sessão encerrada"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Redefinição de senha em %(site_name)s "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Informe um endereço de email válido."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.mo
deleted file mode 100644
index 424f8b6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.po
deleted file mode 100644
index ce00177..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ro/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,285 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Daniel Ursache-Dogariu <contact@danniel.net>, 2011
-# Denis Darii <sinednx@gmail.com>, 2011
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Romanian (http://www.transifex.com/projects/p/django/language/"
-"ro/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ro\n"
-"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
-"2:1));\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Informații personale"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Permisiuni"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Date importante"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Parolă schimbată cu succes."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Schimbă parola: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Un utilizator cu acest nume de utilizator există deja."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Cele două câmpuri pentru parole nu coincid."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Nume utilizator"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obligatoriu. 30 de caractere sau mai puține. Numai litere, cifre și @/./+/-/"
-"_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Această valoare poate conține numai litere, cifre şi @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Parolă"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Confirmare parolă"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Introduceți aceeași parolă, pentru verificare."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Acest cont este inactiv."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Parolă nouă"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Confirmarea parolă nouă"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Parola veche a fost introdusă greșit. Introduceți-o din nou."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Parolă veche"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Parolă (din nou)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "nume"
-
-#: models.py:74
-msgid "codename"
-msgstr "nume de cod"
-
-#: models.py:78
-msgid "permission"
-msgstr "permisiune"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "permisiuni"
-
-#: models.py:128
-msgid "group"
-msgstr "grup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupuri"
-
-#: models.py:200
-msgid "password"
-msgstr "parolă"
-
-#: models.py:201
-msgid "last login"
-msgstr "ultima autentificare"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "stare superutilizator"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Marchează daca acest utilizator are toate permisiunile, fără a le mai "
-"selecta explicit."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "permisiuni utilizator"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "nume utilizator"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Obligatoriu. 30 de caractere sau mai puține. Numai litere, numere și @/./+/-/"
-"_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "Prenume"
-
-#: models.py:373
-msgid "last name"
-msgstr "Nume"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "stare autorizare"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Marchează dacă utilizatorul se poate autentifica în acest site de "
-"administrare."
-
-#: models.py:378
-msgid "active"
-msgstr "activ"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Marchează dacă acest utilizator trebuie tratat ca activ sau nu. Deselectați "
-"în loc de a șterge conturi."
-
-#: models.py:381
-msgid "date joined"
-msgstr "data înscrierii"
-
-#: models.py:389
-msgid "user"
-msgstr "utilizator"
-
-#: models.py:390
-msgid "users"
-msgstr "utilizatori"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Deautentificat"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.mo
deleted file mode 100644
index cddfbd8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.po
deleted file mode 100644
index 52e832e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ru/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,288 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Алексей Борискин <sun.void@gmail.com>, 2012-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-27 08:36+0000\n"
-"Last-Translator: Алексей Борискин <sun.void@gmail.com>\n"
-"Language-Team: Russian (http://www.transifex.com/projects/p/django/language/"
-"ru/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ru\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Персональная информация"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Права доступа"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важные даты"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Пароль успешно изменен."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Изменить пароль: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Пароль не задан."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Неизвестный формат пароля или алгоритм хеширования."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Пользователь с таким именем уже существует."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Два поля с паролями не совпадают."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Имя пользователя"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Обязательное поле. Не более 30 символов. Только буквы, цифры и символы @/./"
-"+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Это значение может состоять из букв, цифр и знаков @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Пароль"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Подтверждение пароля"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Введите тот же пароль, что и выше, для подтверждения."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Пароли не хранятся в открытом виде, поэтому нет возможности увидеть пароль "
-"этого пользователя. Но вы можете изменить пароль используя <a href="
-"\"password/\">эту форму</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Пожалуйста, введите корректные %(username)s и пароль. Оба поля могут быть "
-"чувствительны к регистру."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Эта учетная запись отключена."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Адрес электронной почты"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Новый пароль"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Подтверждение нового пароля"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Ваш старый пароль введен неправильно. Пожалуйста, введите его снова."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Старый пароль"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Пароль (еще раз)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "итерации"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "соль"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хэш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "рабочий фактор"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "контрольная сумма"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "имя"
-
-#: models.py:74
-msgid "codename"
-msgstr "кодовое название"
-
-#: models.py:78
-msgid "permission"
-msgstr "право"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "права"
-
-#: models.py:128
-msgid "group"
-msgstr "группа"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "группы"
-
-#: models.py:200
-msgid "password"
-msgstr "пароль"
-
-#: models.py:201
-msgid "last login"
-msgstr "последний вход"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "статус суперпользователя"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Указывает, что пользователь имеет все права без явного их назначения."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Группы, к которым принадлежит пользователь. Пользователь будет иметь все "
-"права, указанные в каждой его/её группе."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "права пользователя"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Индивидуальные права данного пользователя."
-
-#: models.py:368
-msgid "username"
-msgstr "имя пользователя"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Обязательное поле. Введите 30 символов или менее. Используйте только буквы, "
-"цифры и знаки из набора @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Введите правильное имя пользователя."
-
-#: models.py:372
-msgid "first name"
-msgstr "имя"
-
-#: models.py:373
-msgid "last name"
-msgstr "фамилия"
-
-#: models.py:374
-msgid "email address"
-msgstr "адрес электронной почты"
-
-#: models.py:375
-msgid "staff status"
-msgstr "статус персонала"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Отметьте, если пользователь может входить в административную часть сайта."
-
-#: models.py:378
-msgid "active"
-msgstr "активный"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Отметьте, если пользователь должен считаться активным. Уберите эту отметку "
-"вместо удаления учётной записи."
-
-#: models.py:381
-msgid "date joined"
-msgstr "дата регистрации"
-
-#: models.py:389
-msgid "user"
-msgstr "пользователь"
-
-#: models.py:390
-msgid "users"
-msgstr "пользователи"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Не авторизован"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Сброс пароля на %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Введите корректное имя пользователя."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.mo
deleted file mode 100644
index 664a9b2..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.po
deleted file mode 100644
index 9d16aaa..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sk/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,284 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Juraj Bubniak <translations@jbub.eu>, 2012-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-30 15:50+0000\n"
-"Last-Translator: Juraj Bubniak <translations@jbub.eu>\n"
-"Language-Team: Slovak (http://www.transifex.com/projects/p/django/language/"
-"sk/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sk\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Osobné údaje"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Práva"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Dôležité dátumy"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Heslo úspešne zmenené."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Zmeniť heslo: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Žiadne heslo."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Neplatný formát hesla alebo neznámy hašovací algoritmus."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Používateľ s takým používateľským menom už existuje."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Heslo a jeho potvrdenie sa nezhodujú."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Používateľské meno"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Povinné. 30 znakov alebo menej. Iba písmená, čísla a @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Táto hodnota môže obsahovať len písmená, číslice a znaky @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Heslo"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potvrdenie hesla"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Kvôli overeniu zadajte rovnaké heslo ako vyššie."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Heslá v pôvodnom tvare nie sú ukladané, takže neexistuje spôsob zobraziť "
-"heslo užívateľa. Môžete ho však zmeniť pomocou <a href=\"password/\">tohoto "
-"formulára</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Zadajte prosím správne %(username)s a heslo. Všimnite si, že obe polia môžu "
-"obsahovať veľké a malé písmená."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Tento účet je neaktívny."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-mail"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nové heslo"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potvrdenie nového hesla"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Nezadali ste správne svoje staré heslo. Napíšte ho znovu, prosím."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Staré heslo"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Heslo (znova)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritmus"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterácie"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "faktor práce"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrolný súčet"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "meno"
-
-#: models.py:74
-msgid "codename"
-msgstr "kódové meno"
-
-#: models.py:78
-msgid "permission"
-msgstr "oprávnenie"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "oprávnenia"
-
-#: models.py:128
-msgid "group"
-msgstr "skupina"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "skupiny"
-
-#: models.py:200
-msgid "password"
-msgstr "heslo"
-
-#: models.py:201
-msgid "last login"
-msgstr "naposledy prihlásený"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status superpoužívateľa"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Určuje, či používateľ získava automaticky všetky práva aj bez priameho "
-"priradenia."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Skupiny do ktorých užívateľ patrí. Užívateľ dostane všetky povolenia do "
-"každej z jeho skupín."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "používateľské oprávnenia"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Konkrétne povolenia pre tohto používateľa."
-
-#: models.py:368
-msgid "username"
-msgstr "používateľské meno"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Povinné. 30 znakov alebo menej. Len písmená, číslice a znaky @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Zadajte platné užívateľské meno."
-
-#: models.py:372
-msgid "first name"
-msgstr "krstné meno"
-
-#: models.py:373
-msgid "last name"
-msgstr "priezvisko"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-mailová adresa"
-
-#: models.py:375
-msgid "staff status"
-msgstr "postavenie zamestnanca"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Určuje, či sa používateľ môže prihlásiť do správy stránok."
-
-#: models.py:378
-msgid "active"
-msgstr "aktívny"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Určuje, či je účet aktívny. Odškrtnite, ak chcete vypnúť používateľský účet."
-
-#: models.py:381
-msgid "date joined"
-msgstr "dátum registrácie"
-
-#: models.py:389
-msgid "user"
-msgstr "používateľ"
-
-#: models.py:390
-msgid "users"
-msgstr "používatelia"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Odhlásený"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Obnovenie hesla pre %(site_name)s "
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Zadajte platné užívateľské meno."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.mo
deleted file mode 100644
index 4d945a8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.po
deleted file mode 100644
index 73b304d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sl/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Jure Cuhalev <gandalf@owca.info>, 2012
-# zejn <zejn@kiberpipa.org>, 2013
-# zejn <zejn@kiberpipa.org>, 2011-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 14:17+0000\n"
-"Last-Translator: zejn <zejn@kiberpipa.org>\n"
-"Language-Team: Slovenian (http://www.transifex.com/projects/p/django/"
-"language/sl/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sl\n"
-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
-"%100==4 ? 2 : 3);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Osebni podatki"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Dovoljenja"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Pomembni datumi"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Geslo je uspešno spremenjeno."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Spremeni geslo: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Geslo ni nastavljeno."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Neveljavna oblika gesla ali neznan algoritem razpršila."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Uporabnik s tem uporabniškim imenom že obstaja."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Gesli se ne ujemata."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Uporabniško ime"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Polje je obvezno. Vpisanih mora biti do 30 znakov, ti pa so lahko črke, "
-"številke in znaki @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Ta vrednost lahko vsebuje le črke, števila in znake @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Geslo"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potrditev gesla"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Ponovno vpišite izbrano geslo za overitev."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Gesla se ne shranjujejo v berljivi obliki, zato gesla tega uporabnika ni "
-"mogoče videti. Geslo lahko spremenite s pomočjo <a href=\"password/\">tega "
-"obrazca</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Vnesite veljavno %(username)s in geslo. Opomba: obe polji upoštevata "
-"velikost črk."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ta uporabniški račun ni dejaven."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Elektronski naslov"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Novo geslo"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potrditev novega gesla"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vaše staro geslo ni vneseno pravilno. Poskusite znova."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Staro geslo"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Geslo (znova)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritem"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "ponovitev"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "naključna vrednost"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "razpršilo"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "faktor obremenitve"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "nadzorna vsota"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ime"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodno ime"
-
-#: models.py:78
-msgid "permission"
-msgstr "dovoljenje"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "dovoljenja"
-
-#: models.py:128
-msgid "group"
-msgstr "skupina"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "skupine"
-
-#: models.py:200
-msgid "password"
-msgstr "geslo"
-
-#: models.py:201
-msgid "last login"
-msgstr "zadnja prijava"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "stanje skrbnika"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Uporabnik bo imel skrbniška dovoljenja."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Skupine, katerih član je ta uporabnik. Uporabnik pridobi vsa dovoljenja, "
-"povezana s to skupino."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "uporabniška dovoljenja"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Dovoljenja specifična za tega uporabnika."
-
-#: models.py:368
-msgid "username"
-msgstr "uporabniško ime"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Polje je obvezno. Vpisanih mora biti do 30 znakov, ti pa so lahko črke, "
-"številke in znaki @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Vnesite veljavno uporabniško ime."
-
-#: models.py:372
-msgid "first name"
-msgstr "ime"
-
-#: models.py:373
-msgid "last name"
-msgstr "priimek"
-
-#: models.py:374
-msgid "email address"
-msgstr "elektronski naslov"
-
-#: models.py:375
-msgid "staff status"
-msgstr "stanje osebja"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Določi, ali se sme uporabnik prijaviti kot skrbnik."
-
-#: models.py:378
-msgid "active"
-msgstr "dejaven"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Določi, ali je uporabnik dejaven. Možnost je priročna in preprečuje brisanje "
-"računov."
-
-#: models.py:381
-msgid "date joined"
-msgstr "vpisan od"
-
-#: models.py:389
-msgid "user"
-msgstr "uporabnik"
-
-#: models.py:390
-msgid "users"
-msgstr "uporabniki"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Odjavljen"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Geslo na %(site_name)s je ponastavljeno."
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Vnesite veljaven e-poštni naslov."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.mo
deleted file mode 100644
index 97e9005..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.po
deleted file mode 100644
index 0275005..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sq/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,287 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Besnik <besnik@programeshqip.org>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Albanian (http://www.transifex.com/projects/p/django/language/"
-"sq/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sq\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Të dhëna personale"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Leje"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Të dhëna të rëndësishme"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Fjalëkalimi u ndryshua me sukses."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Ndryshoni fjalëkalimin: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Nuk ka fjalëkalim të caktuar."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Format i pavlefshëm fjalëkalimi ose algoritëm i panjohur hashi."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Ka tashmë një emër të tillë përdoruesi."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dy fushat për fjalëkalim nuk u përputhën."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Emër përdoruesi"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"E domosdoshme. 30 ose më pak shenja. Vetëm shkronja, shifra dhe shenjat @/./"
-"+/-/_ ."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Kjo vlerë mund të përmbajë vetëm shkronja, numra dhe shenja si @/./+/-/_ ."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Fjalëkalim"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Ripohim fjalëkalimi"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Jepni, për verifikim, të njëjtin fjalëkalim si më sipër."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Fjalëkalimet shqeto nuk depozitohenm ndaj nuk ka ndonjë mënyrë si të shihet "
-"fjalëkalimi i këtij përdoruesi, por mund ta ndryshoni fjalëkalimin duke "
-"përdorur <a href=\"password/\">këtë formular</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Ju lutemi, jepni një %(username)s dhe një fjalëkalim të saktë. Kini parasysh "
-"se që të dyja fushat mund të jenë të ndjeshme ndaj shkrimit me shkronja të "
-"mëdha ose të vogla."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Kjo llogari nuk është aktive."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Fjalëkalim i ri"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Ripohim fjalëkalimi të ri"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Fjalëkalimi juaj i vjetër u dha pasaktësisht. Ju lutem, jepeni sërish."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Fjalëkalim i vjetër"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Fjalëkalim (sërish)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritëm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "përsëritje"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "kripë"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "emër"
-
-#: models.py:74
-msgid "codename"
-msgstr "emër i koduar"
-
-#: models.py:78
-msgid "permission"
-msgstr "leje"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "leje"
-
-#: models.py:128
-msgid "group"
-msgstr "grup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupe"
-
-#: models.py:200
-msgid "password"
-msgstr "fjalëkalim"
-
-#: models.py:201
-msgid "last login"
-msgstr "hyrja e fundit"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "gjendje superpërdoruesi"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Përcakton që ky përdorues ka krejt lejet, pa ia akorduar ato shprehimisht."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupet ku bën pjesë ky përdorues. Një përdorues përfiton krejt lejet e dhëna "
-"për secilin grup të tij/saj."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "leje përdoruesi"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "emër përdoruesi"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"E domosdoshme. 30 ose më pak shenja. Shkronja, numra dhe shenjat @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Jepni emër përdoruesi të vlefshëm."
-
-#: models.py:372
-msgid "first name"
-msgstr "emër"
-
-#: models.py:373
-msgid "last name"
-msgstr "mbiemër"
-
-#: models.py:374
-msgid "email address"
-msgstr "adresë email"
-
-#: models.py:375
-msgid "staff status"
-msgstr "vend në ekip"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Përcakton nëse mund të hyjë ose jo përdoruesi te ky site administrimi."
-
-#: models.py:378
-msgid "active"
-msgstr "veprues"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Përcakton nëse ky përdorues do të duhej trajtuar si aktiv. Çpërzgjidhni "
-"këtë, në vend se të fshihni llogarira."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datë anëtarësimi"
-
-#: models.py:389
-msgid "user"
-msgstr "përdorues"
-
-#: models.py:390
-msgid "users"
-msgstr "përdoruesa"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "I dalë"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Ricaktim fjalëkalimi për te %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Jepni një adresë email të vlefshme."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.mo
deleted file mode 100644
index 36de75d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.po
deleted file mode 100644
index 71edbfd..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sr/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,286 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Janos Guljas <janos@resenje.org>, 2011-2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Serbian (http://www.transifex.com/projects/p/django/language/"
-"sr/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sr\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Лични подаци"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Дозволе"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важни датуми"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Лозинка успешно измењена."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Измени лозинку: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Корисник са тим корисничким именом већ постоји."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Два поља за лозинке се нису поклопила."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Корисник"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Неопходно. Највише 30 словних места. Само алфанумерички знаци (слова, бројке "
-"и @/./+/-/_)."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Ова вредност може садржати само слова, бројке и @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Лозинка"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Потврда лозинке"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Ради провере тачности поново унесите лозинку коју сте унели горе."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Лозинке у изворном облику се не чувају, тако да се не могу видети, али се "
-"могу променити <a href=\"password/\">овде</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Овај налог је неактиван."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Нова лозинка"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Потврда нове лозинке"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Ваша стара лознка није правилно унесена. Унесите је поново."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Стара лозинка"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Лозинка (поновите)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритам"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "итерације"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "зачин"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хеш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "фактор рада"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "сума за проверу"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "име"
-
-#: models.py:74
-msgid "codename"
-msgstr "шифра дозволе"
-
-#: models.py:78
-msgid "permission"
-msgstr "дозвола"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "дозволе"
-
-#: models.py:128
-msgid "group"
-msgstr "група"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "групе"
-
-#: models.py:200
-msgid "password"
-msgstr "лозинка"
-
-#: models.py:201
-msgid "last login"
-msgstr "последња пријава"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "статус администратора"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Означава да ли корисник има све дозволе без додељивања појединачних дозвола."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Групе којима корисник припада. Корисник ће добити све дозволе група у којим "
-"се налази."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "корисничке дозволе"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "корисничко име"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Неопходно. Највише 30 словних места. Само алфанумерички знаци (слова, бројке "
-"и @/./+/-/_)."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "име"
-
-#: models.py:373
-msgid "last name"
-msgstr "презиме"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "статус члана посаде"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Означава да ли корисник може да се пријави на овај сајт за администрацију."
-
-#: models.py:378
-msgid "active"
-msgstr "активан"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Означава да ли се корисник сматра активним. Деселектујте ово уместо да "
-"бришете налог."
-
-#: models.py:381
-msgid "date joined"
-msgstr "датум регистрације"
-
-#: models.py:389
-msgid "user"
-msgstr "корисник"
-
-#: models.py:390
-msgid "users"
-msgstr "корисници"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Одјављен"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Ресетовање лозинке на сајту %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.mo
deleted file mode 100644
index cd977bb..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.po
deleted file mode 100644
index d0721a1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sr_Latn/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,287 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Janos Guljas <janos@resenje.org>, 2011-2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Serbian (Latin) (http://www.transifex.com/projects/p/django/"
-"language/sr@latin/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sr@latin\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Lični podaci"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Dozvole"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Važni datumi"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Lozinka uspešno izmenjena."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Izmeni lozinku: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Korisnik sa tim korisničkim imenom već postoji."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Dva polja za lozinke se nisu poklopila."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Korisnik"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Neophodno. Najviše 30 slovnih mesta. Samo alfanumerički znaci (slova, brojke "
-"i @/./+/-/_)."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Ova vrednost može sadržati samo slova, brojke i @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Lozinka"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Potvrda lozinke"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Radi provere tačnosti ponovo unesite lozinku koju ste uneli gore."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Lozinke u izvornom obliku se ne čuvaju, tako da se ne mogu videti, ali se "
-"mogu promeniti <a href=\"password/\">ovde</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Ovaj nalog je neaktivan."
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nova lozinka"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Potvrda nove lozinke"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Vaša stara loznka nije pravilno unesena. Unesite je ponovo."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Stara lozinka"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Lozinka (ponovite)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritam"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iteracije"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "začin"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "heš"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "faktor rada"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "suma za proveru"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ime"
-
-#: models.py:74
-msgid "codename"
-msgstr "šifra dozvole"
-
-#: models.py:78
-msgid "permission"
-msgstr "dozvola"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "dozvole"
-
-#: models.py:128
-msgid "group"
-msgstr "grupa"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupe"
-
-#: models.py:200
-msgid "password"
-msgstr "lozinka"
-
-#: models.py:201
-msgid "last login"
-msgstr "poslednja prijava"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "status administratora"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Označava da li korisnik ima sve dozvole bez dodeljivanja pojedinačnih "
-"dozvola."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Grupe kojima korisnik pripada. Korisnik će dobiti sve dozvole grupa u kojim "
-"se nalazi."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "korisničke dozvole"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "korisničko ime"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Neophodno. Najviše 30 slovnih mesta. Samo alfanumerički znaci (slova, brojke "
-"i @/./+/-/_)."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "ime"
-
-#: models.py:373
-msgid "last name"
-msgstr "prezime"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "status člana posade"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-"Označava da li korisnik može da se prijavi na ovaj sajt za administraciju."
-
-#: models.py:378
-msgid "active"
-msgstr "aktivan"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Označava da li se korisnik smatra aktivnim. Deselektujte ovo umesto da "
-"brišete nalog."
-
-#: models.py:381
-msgid "date joined"
-msgstr "datum registracije"
-
-#: models.py:389
-msgid "user"
-msgstr "korisnik"
-
-#: models.py:390
-msgid "users"
-msgstr "korisnici"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Odjavljen"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Resetovanje lozinke na sajtu %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.mo
deleted file mode 100644
index 51fc395..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.po
deleted file mode 100644
index 303b8ea..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sv/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,289 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Alex Nordlund <deep.alexander@gmail.com>, 2012
-# Cybjit <cybjit@gmail.com>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Samuel Linde <samuel@linde.im>, 2011
-# biljettshop <thomas@biljettshop.se>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-28 09:04+0000\n"
-"Last-Translator: biljettshop <thomas@biljettshop.se>\n"
-"Language-Team: Swedish (http://www.transifex.com/projects/p/django/language/"
-"sv/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sv\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Personlig information"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Rättigheter"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Viktiga datum"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Lösenordet ändrades."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Ändra lösenord: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Inget lösenord angivet."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Ogiltigt lösenordsformat eller okänd hashalgoritm."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "En användare med det användarnamnet finns redan."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "De två lösenordsfälten stämde inte överens."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Användarnamn"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Obligatoriskt. 30 tecken eller färre. Endast bokstäver, siffror och @/./+/-/"
-"_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Detta värde får endast innehålla bokstäver, siffror och @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Lösenord"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Lösenordsbekräftelse"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Fyll i samma lösenord som ovan för verifiering."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Klartextlösenord lagras inte, så det är inte möjligt att se denna användares "
-"lösenord, men du kan ändra lösenordet med <a href=\"password/\">detta "
-"formulär</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Ange ett korrekt %(username)s och lösenord. Observera att båda fälten är "
-"skiftlägeskänsliga."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Detta konto är inaktivt."
-
-#: forms.py:206
-msgid "Email"
-msgstr "E-postaddress"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nytt lösenord"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Bekräfta nytt lösenord"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Ditt gamla lösenord var felaktigt ifyllt. Var vänlig fyll i det igen."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Gammalt lösenord"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Lösenord (igen)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterationer"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "arbetsfaktor"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kontrollsumma"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "namn"
-
-#: models.py:74
-msgid "codename"
-msgstr "kodnamn"
-
-#: models.py:78
-msgid "permission"
-msgstr "rättighet"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "rättigheter"
-
-#: models.py:128
-msgid "group"
-msgstr "grupp"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "grupper"
-
-#: models.py:200
-msgid "password"
-msgstr "lösenord"
-
-#: models.py:201
-msgid "last login"
-msgstr "senaste inloggning"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "superanvändare"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Anger att denna användare har alla rättigheter utan att uttryckligen "
-"tilldela dem."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"De grupper som användaren är medlem i. En användare får tillgång till alla "
-"rättigheter som hans/hennes grupper har."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "användarättigheter"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Specifika rättigheter för denna användare."
-
-#: models.py:368
-msgid "username"
-msgstr "användarnamn"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Obligatorisk. 30 tecken eller färre. Bokstäver, siffror och @/./+/-/_."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Ange ett giltigt användarnamn."
-
-#: models.py:372
-msgid "first name"
-msgstr "förnamn"
-
-#: models.py:373
-msgid "last name"
-msgstr "efternamn"
-
-#: models.py:374
-msgid "email address"
-msgstr "e-postaddress"
-
-#: models.py:375
-msgid "staff status"
-msgstr "personalstatus"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Avgör om användaren kan logga in på denna adminsida."
-
-#: models.py:378
-msgid "active"
-msgstr "aktiv"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Anger om användaren skall betraktas som aktiv. Avmarkera detta istället för "
-"att ta bort konton."
-
-#: models.py:381
-msgid "date joined"
-msgstr "registreringsdatum"
-
-#: models.py:389
-msgid "user"
-msgstr "användare"
-
-#: models.py:390
-msgid "users"
-msgstr "användare"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Utloggad"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Lösenord återställt på %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Fyll i en giltig e-postadress."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.mo
deleted file mode 100644
index 0fd97ed..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.po
deleted file mode 100644
index c243425..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/sw/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,281 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# machaku <bmachaku@gmail.com>, 2012-2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-12 07:49+0000\n"
-"Last-Translator: machaku <bmachaku@gmail.com>\n"
-"Language-Team: Swahili (http://www.transifex.com/projects/p/django/language/"
-"sw/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sw\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Taarifa binafsi"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Ruhusa"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Tarehe muhimu"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Nenosiri limebadilishwa kwa mafanikio"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Badilisha nenosiri: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Hakuna nenosiri lililowekwa."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Muundo batili wa nenosiri au algorithm ya kuhash isiyojulikana"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Tayari kuna anayetumia hilo jina la mtumiaji."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Sehemu mbili za nenosiri hazikufanana"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Jina la mtumiaji"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Inahitajika. vibambo 30 au pungufu. Herufi, Tarakimu na @/./+/-/_ tu. "
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Thamani hii inaweza kuwa na herufi, tarakimu na vibambo @/./+/-/_ tu"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Nenosiri"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Uthibitisho wa nenosiri"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Ingiza nenosiri linalofanana na la juu, kwa uthibitisho"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Manenosiri ghafi hayahifadhiwi, hivyo hakuna namna ya kuona nenosiri la "
-"mtumiaji huyu, ila unaweza kubadilisha nenosiri kwa kutumia <a href="
-"\"password/\">fomu hii</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Tafadhali sahihisha %(username)s na nenosiri. Kumbuka sehemu zote mbili "
-"zinaweza kuwa zinazingatia herufi kubwa na ndogo."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Akaunti hii si hai."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Barua pepe"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Nenosiri jipya"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Uthibitisho wa nenosiri jipya"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Nenosiri lako la zamani liliingizwa isivyo sahihi. Tafadhali liingize tena."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Nenosiri la zamani"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Nenosiri (tena)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "alogarithimu"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "mizunguko"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "kazi inayohitajika"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "jina"
-
-#: models.py:74
-msgid "codename"
-msgstr "jina la msimbo"
-
-#: models.py:78
-msgid "permission"
-msgstr "ruhusa"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "ruhusa"
-
-#: models.py:128
-msgid "group"
-msgstr "kundi"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "makundi"
-
-#: models.py:200
-msgid "password"
-msgstr "nenosiri"
-
-#: models.py:201
-msgid "last login"
-msgstr "kuingia kwa mara ya mwisho"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "hadhi ya mtumiaji wa juu"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Teua mtumiaji huyu kuwa na ruhusa zote pasipo kuziainisha wazi."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Vikundi ambavyo mtumiaji huyu yupo. Mtumiaji atapata ruhusa zote "
-"zinazotolewa kwa kila mwanakundi hili."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "ruhusa za mtumiaji"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Ruhusa maalum kwa mtumiaji huyu."
-
-#: models.py:368
-msgid "username"
-msgstr "jina la mtumiaji"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Inatakiwa. vibambo 30 au pungufu. Herufi, namba na vibambo @ / / + /-/_ ."
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Ingiza halali Jina la mtumiaji "
-
-#: models.py:372
-msgid "first name"
-msgstr "jina la kwanza"
-
-#: models.py:373
-msgid "last name"
-msgstr "jina la mwisho"
-
-#: models.py:374
-msgid "email address"
-msgstr "anuani ya barua pepe"
-
-#: models.py:375
-msgid "staff status"
-msgstr "hadhi ya utawala"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Teua kama mtumiaji anaweza kuingia katika tovuti ya utawala."
-
-#: models.py:378
-msgid "active"
-msgstr "hai"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr " "
-
-#: models.py:381
-msgid "date joined"
-msgstr "tarehe ya kujiunga"
-
-#: models.py:389
-msgid "user"
-msgstr "mtumiaji"
-
-#: models.py:390
-msgid "users"
-msgstr "watumiaji"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Umetoka"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Kuseti upya nenosiri katika %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "ingiza anuani halali ya barua pepe."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.mo
deleted file mode 100644
index 5a1b30e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.po
deleted file mode 100644
index 31e1f19..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ta/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,272 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Tamil (http://www.transifex.com/projects/p/django/language/"
-"ta/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ta\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "தனிப்பட்ட விவரம்"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "அனுமதிகள்"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "முக்கியமான தேதிகள்"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "பயனர்ப்பெயர்"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "கடவுச்சொல்"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "மேலே அதே கடவுச்சொல்லை உள்ளிடவும், சரிபார்ப்பதற்காக ."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "இந்த கணக்கு செயல்பட துவங்கவில்லை"
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr ""
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr ""
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "கடவுச்சொல்(மறுபடியும்)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "பெயர்"
-
-#: models.py:74
-msgid "codename"
-msgstr "குறிமுறை பெயர்"
-
-#: models.py:78
-msgid "permission"
-msgstr "அனுமதி"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "அனுமதிகள்"
-
-#: models.py:128
-msgid "group"
-msgstr "குழு"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "குழுக்கள்"
-
-#: models.py:200
-msgid "password"
-msgstr "கடவுச்சொல்"
-
-#: models.py:201
-msgid "last login"
-msgstr "கடைசி உள்நுழைவு"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "மேலாளர் இருப்பு நிலை"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "இந்த பயனருக்கு எல்லா அங்கீகாரங்களும் வழங்கப்படவில்லை."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "பயனர் அனுமதிகள்"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "பயனர் பெயர்"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "முதல் பெயர்"
-
-#: models.py:373
-msgid "last name"
-msgstr "கடைசி பெயர்"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "பணியாளர் நிலை"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "பயனர், 'மேலாளலர்' பக்கத்தில் நுழைவதை முடிவு செய்கிறது"
-
-#: models.py:378
-msgid "active"
-msgstr "செயல்படும்"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "சேர்ந்த தேதி"
-
-#: models.py:389
-msgid "user"
-msgstr "பயனர்"
-
-#: models.py:390
-msgid "users"
-msgstr "பயனர்கள்"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "வெளியே வந்துவீட்டீர்"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.mo
deleted file mode 100644
index 705a7f9..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.po
deleted file mode 100644
index 3655eb5..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/te/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,274 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# bhaskar teja yerneni <prudhviy@gmail.com>, 2011
-# Jannis Leidel <jannis@leidel.info>, 2011
-# వీవెన్ వీరపనేని <veeven@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Telugu (http://www.transifex.com/projects/p/django/language/"
-"te/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: te\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "వ్యక్తిగత సమాచారం "
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "అనుమతులు"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "ముఖ్యమైన తేదీలు"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "సంకేతపదాన్ని విజయవంతంగా మార్చారు."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "సంకేతపదాన్ని మార్చుకోండి: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "ఈ నామముతొ ఇంకొ వినియొగదారి ఉన్నరు"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "ఈ రెండు అనుమతి పదాలు అసమానమైనంగ ఉన్నాయి"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "వాడుకరిపేరు"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "సంకేతపదం"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "సంకేపదపు నిర్ధారణ"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "ఇందాక ఇచ్చిన అనుమతిపదం మళ్ళీ ఇవ్వండి పరిశీలన కోసము"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "ఈ ఖాతా అచేతనమైనది"
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "కొత్త సంకేతపదం"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "కొత్త సంకేతపదపు నిర్ధారణ"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr "పాత సంకేతపదం"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "సంకేతపదం (మళ్ళీ)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "పేరు"
-
-#: models.py:74
-msgid "codename"
-msgstr "సంహితనామము"
-
-#: models.py:78
-msgid "permission"
-msgstr "అనుమతి"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "అనుమతులు"
-
-#: models.py:128
-msgid "group"
-msgstr "గుంపు"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "గుంపులు"
-
-#: models.py:200
-msgid "password"
-msgstr "సంకేతపదం"
-
-#: models.py:201
-msgid "last login"
-msgstr "చివరి ప్రవేశం"
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr "వాడుకరి అనుమతులు"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "వాడుకరిపేరు"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "మొదటి పేరు"
-
-#: models.py:373
-msgid "last name"
-msgstr "ఇంటి పేరు"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "ఉద్యోగస్తుల స్థితి"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr "క్రియాశీలం"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "చేరిన తేదీ"
-
-#: models.py:389
-msgid "user"
-msgstr "వాడుకరి"
-
-#: models.py:390
-msgid "users"
-msgstr "వాడుకరులు"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "నిష్క్రమించారు"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.mo
deleted file mode 100644
index 5c9828f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.po
deleted file mode 100644
index 4b8705e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/th/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,275 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Thai (http://www.transifex.com/projects/p/django/language/"
-"th/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: th\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "ข้อมูลส่วนตัว"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "สิทธิ์"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "วันที่ที่สำคัญ"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "เปลี่ยนรหัสผ่านสำเร็จแล้ว"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "เปลี่ยนรหัสผ่าน: %s "
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "ไม่ได้ตั้งค่ารหัสผ่าน"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "รูปแบบรหัสผ่านไม่ถูกต้อง หรือไม่รู้จักแฮชอัลกอริทึมนี้"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "ชื่อผู้ใช้นั้นได้ถูกใช้ไปแล้ว"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "รหัสผ่านไม่ตรงกัน"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "ชื่อผู้ใช้"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"จำเป็น ต้องการไม่เกิน 30 ตัวอักษร ต้องเป็นตัวอักษรตัวเลขและเครื่องหมาย @/./+/-/_ เท่านั้น"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "ค่านี้ต้องเป็นตัวอักษรตัวเลขและเครื่องหมาย @/./+/-/_ เท่านั้น"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "รหัสผ่าน"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "ยืนยันรหัสผ่าน"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "ใส่รหัสผ่านเหมือนด้านบน เพื่อตรวจสอบความถูกต้อง"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"รหัสผ่านที่ดิบจะไม่เก็บไว้ เพื่อไม่ให้มีวิธีการดูรหัสผ่านของผู้ใช้นี้ แต่คุณสามารถเปลี่ยนรหัสผ่านโดยใช้ <a "
-"href=\"password/\">แบบฟอร์มนี้</a> ."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "กรุณาใส่ %(username)s และรหัสผ่านที่ถูกต้อง มีการแยกแยะตัวพิมพ์ใหญ่-เล็ก"
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "บัญชีนี้ไม่ทำงาน"
-
-#: forms.py:206
-msgid "Email"
-msgstr "อีเมล"
-
-#: forms.py:256
-msgid "New password"
-msgstr "รหัสผ่านใหม่"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "ยืนยันการตั้งรหัสผ่านใหม่"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "ใส่รหัสผ่านเก่าผิด กรุณาใส่รหัสผ่านอีกครั้ง"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "รหัสผ่านเก่า"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "รหัสผ่าน (อีกครั้ง)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algorithm"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterations"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "salt"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "ปัจจัยการทำงาน"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "checksum"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ชื่อ"
-
-#: models.py:74
-msgid "codename"
-msgstr "รหัสชื่อ"
-
-#: models.py:78
-msgid "permission"
-msgstr "สิทธิ์"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "สิทธิ์"
-
-#: models.py:128
-msgid "group"
-msgstr "กลุ่ม"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "กลุ่ม"
-
-#: models.py:200
-msgid "password"
-msgstr "รหัสผ่าน"
-
-#: models.py:201
-msgid "last login"
-msgstr "เข้าสู่ระบบครั้งสุดท้าย"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "สถานะผู้ใช้พิเศษ"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "กำหนดสิทธิ์ทุกอย่างให้ผู้ใช้ โดยไม่ต้องการมอบหมายอย่างเป็นทางการ"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr "กลุ่มที่ผู้ใช้อยู่ ผู้ใช้จะได้รับสิทธิ์ทั้งหมดที่กลุ่มของเขาได้รับ"
-
-#: models.py:299
-msgid "user permissions"
-msgstr "สิทธิ์ของผู้ใช้"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "ชื่อผู้ใช้"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "จำเป็น ต้องการไม่เกิน 30 ตัวอักษร ต้องเป็นตัวอักษรตัวเลขและตัวอักษร @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "กรุณาใส่ชื่อผู้ใช้ที่ถูกต้อง"
-
-#: models.py:372
-msgid "first name"
-msgstr "ชื่อ"
-
-#: models.py:373
-msgid "last name"
-msgstr "นามสกุล"
-
-#: models.py:374
-msgid "email address"
-msgstr "ที่อยู่อีเมล"
-
-#: models.py:375
-msgid "staff status"
-msgstr "สถานะของพนักงาน"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "กำหนดผู้ที่จะเข้ามาใช้งานในส่วนของผู้ดูแลระบบ"
-
-#: models.py:378
-msgid "active"
-msgstr "ใช้งานได้"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr "กำหนดให้ผู้ใช้มีสถานะที่สามารถเข้ามาใช้งานได้ เลือกออกแทนที่จะลบชื่อผู้ใช้ทิ้งไป "
-
-#: models.py:381
-msgid "date joined"
-msgstr "วันที่เข้าร่วม"
-
-#: models.py:389
-msgid "user"
-msgstr "ผู้ใช้"
-
-#: models.py:390
-msgid "users"
-msgstr "ผู้ใช้"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "ออกจากระบบ"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "รีเซ็ตรหัสผ่านบน %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "กรุณาใส่ชื่อผู้ใช้ที่ถูกต้อง"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.mo
deleted file mode 100644
index 5a08840..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.po
deleted file mode 100644
index c944510..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/tr/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,293 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Ahmet Emre Aladağ <emre.aladag@isik.edu.tr>, 2013
-# Caner BAŞARAN <basaran.caner@gmail.com>, 2013
-# Gökmen Görgen <gokmen@alageek.com>, 2013
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Metin Amiroff <amiroff@gmail.com>, 2012
-# Murat Çorlu <muratcorlu@gmail.com>, 2012
-# Ozan <uobasar@gmail.com>, 2011
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-23 15:58+0000\n"
-"Last-Translator: Ahmet Emre Aladağ <emre.aladag@isik.edu.tr>\n"
-"Language-Team: Turkish (http://www.transifex.com/projects/p/django/language/"
-"tr/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tr\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Kişisel bilgiler"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "İzinler"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Önemli tarihler"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Şifre başarı ile değiştirildi."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Şifre değiştir: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Şifre tanımlanmadı."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Yanlış şifre formatı veya bilinmeyen şifreleme algoritması."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Bu isimde bir kullanıcı zaten mevcuttur."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "İki şifre alanı uyuşmuyor."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Kullanıcı adı"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Zorunlu alan. 30 karakter ya da az olmalı. Harf, rakam ve @/./+/-/_ "
-"karakterleri kullanılabilir."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Bu değer sadece harf, rakam ve @/./+/-/_ karakterlerini içerebilir."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Şifre"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Şifre onayı"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Onaylamak için, yukarıdaki şifrenin aynısını girin."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Ham şifreler saklanmadığından kullanıcıların şifrelerini görmenin yolu "
-"yoktur, fakat <a href=\"password/\">buradaki form</a> aracılığıyla şifreyi "
-"değiştirebilirsiniz."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Lütfen %(username)s için geçerli parolayı giriniz. Tüm alanlar büyük/küçük "
-"harfe duyarlıdır."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Bu hesap aktif değil."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Eposta"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Yeni şifre"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Yeni şifre tekrarı"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Eski şifreniz hatalı. Lütfen tekrar girin."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Eski şifre"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Şifre (tekrar)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "algoritma"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "iterasyonlar"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "tuz"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "hash"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "iş faktörü"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "sağlama"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "isim"
-
-#: models.py:74
-msgid "codename"
-msgstr "takma ad"
-
-#: models.py:78
-msgid "permission"
-msgstr "izin"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "izinler"
-
-#: models.py:128
-msgid "group"
-msgstr "grup"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "gruplar"
-
-#: models.py:200
-msgid "password"
-msgstr "şifre"
-
-#: models.py:201
-msgid "last login"
-msgstr "son ziyaret"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "süper kullanıcı"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-"Kullanıcıya ayrı ayrı izin atamasına gerek kalmadan tüm hakların verilip "
-"verilmeyeceğini belirler."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Bu kullanıcının bağlı olduğu gruplar. Bir kullanıcı bağlı bulunduğu gruba "
-"atanan tüm yetkilere sahip olur."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "kullanıcı izinleri"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Bu kullanıcı için belirli izinler"
-
-#: models.py:368
-msgid "username"
-msgstr "kullanıcı adı"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-"Zorunlu alan. 30 karakter ya da az olmalı. Harf, rakam ve @/./+/-/_ "
-"karakterleri kullanılabilir"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Geçerli bir kullanıcı adı giriniz."
-
-#: models.py:372
-msgid "first name"
-msgstr "isim"
-
-#: models.py:373
-msgid "last name"
-msgstr "soyisim"
-
-#: models.py:374
-msgid "email address"
-msgstr "eposta adresi"
-
-#: models.py:375
-msgid "staff status"
-msgstr "yönetici"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Kullanıcının yönetim (admin) paneline girip giremeyeceğini belirler."
-
-#: models.py:378
-msgid "active"
-msgstr "aktif"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Kullanıcının aktif olup olmadığını belirler. Kullanıcı hesabını silmek "
-"yerine bu işareti kaldırın."
-
-#: models.py:381
-msgid "date joined"
-msgstr "kayıt tarihi"
-
-#: models.py:389
-msgid "user"
-msgstr "kullanıcı"
-
-#: models.py:390
-msgid "users"
-msgstr "kullanıcılar"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Çıkış yapıldı"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Parola resetlemesi %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Geçerli bir kullanıcı adı giriniz."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.mo
deleted file mode 100644
index aa46cd8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.po
deleted file mode 100644
index d083e90..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/tt/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,271 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Tatar (http://www.transifex.com/projects/p/django/language/"
-"tt/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tt\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Серсүз"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Тикшерү өчен шул ук серсүзне яңадан кертегез."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "Яңа серсүз"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Иске серсүз"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Серсүз (тагын бер тапкыр)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr ""
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.mo
deleted file mode 100644
index 516b49c..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.po
deleted file mode 100644
index 3862b26..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/uk/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,292 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# michael <qotsaman@gmail.com>, 2012
-# Alex Bolotov <oleksandr.bolotov@gmail.com>, 2013
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-11-13 12:16+0000\n"
-"Last-Translator: Alex Bolotov <oleksandr.bolotov@gmail.com>\n"
-"Language-Team: Ukrainian (http://www.transifex.com/projects/p/django/"
-"language/uk/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: uk\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Персональна інформація"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Дозволи"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Важливі дати"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Пароль успішно змінено."
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Змінити пароль: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Пароль не встановлено."
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Невірний формат пароля або невідомий алгоритм хешування."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Користувач з таким ім'ям вже існує."
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Паролі у двох полях не співпадають."
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Користувач"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-"Обов'язкове поле. 30 або менше символів . Тільки букви, цифри, а також "
-"символи: @/./+/-/_"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-"Значення цього поля може складатися лише з літер, цифр, а також з символів: "
-"@/./+/-/_"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Пароль"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Підтвердження паролю"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Повторіть пароль для перевірки."
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Паролі не зберігаються у відкритому вигляді, тому не має можливості "
-"переглянути пароль цього користувача, але ви можете змінити пароль за "
-"допомогою <a href=\"password/\">цієї форми</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Будь-ласка введіть правильні %(username)s та пароль. Зауважте, що обидва "
-"поля чутливі до регістру."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Цей запис користувача не активний."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Новий пароль"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Новий пароль (підтвердження):"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-"Старий пароль було введено неправильно. Будь ласка, введіть його знову."
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Старий пароль"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Пароль (ще раз)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "алгоритм"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "ітерації"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "сіль"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "хеш"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "робочий фактор"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "контрольна сума"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "ім'я"
-
-#: models.py:74
-msgid "codename"
-msgstr "код"
-
-#: models.py:78
-msgid "permission"
-msgstr "дозвіл"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "дозволи"
-
-#: models.py:128
-msgid "group"
-msgstr "група"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "групи"
-
-#: models.py:200
-msgid "password"
-msgstr "пароль"
-
-#: models.py:201
-msgid "last login"
-msgstr "останній вхід"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "статус суперкористувача"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "Визначає, що цей користувач має всі дозволи без їх точного зазначення."
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Групи, до котрих належить користувач. Користувач отримає всі дозволи, що "
-"вказані в кожній з його/її груп."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "дозволи користувача"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr "Специфічні права доступу для цього користувача."
-
-#: models.py:368
-msgid "username"
-msgstr "ім'я користувача"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-" \n"
-"Обов'язкове поле. 30 або менше символів. Тільки букви, цифри, а також "
-"символи: @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "Введіть правильне імя користувача."
-
-#: models.py:372
-msgid "first name"
-msgstr "ім'я"
-
-#: models.py:373
-msgid "last name"
-msgstr "прізвище"
-
-#: models.py:374
-msgid "email address"
-msgstr "email адреса"
-
-#: models.py:375
-msgid "staff status"
-msgstr "статус персоналу"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Визначає, чи може користувач увійти до цього сайту адміністрування."
-
-#: models.py:378
-msgid "active"
-msgstr "активний"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-"Визначає, чи можна цього користувача вважати діючим. Заберіть галочку, "
-"замість відалення запису користувача."
-
-#: models.py:381
-msgid "date joined"
-msgstr "дата приєднання"
-
-#: models.py:389
-msgid "user"
-msgstr "користувач"
-
-#: models.py:390
-msgid "users"
-msgstr "користувачі"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Вихід"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "Скидання пароля на %(site_name)s"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "Введіть правильне імя користувача."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.mo
deleted file mode 100644
index d9f3798..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.po
deleted file mode 100644
index a3418b4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/ur/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,271 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Urdu (http://www.transifex.com/projects/p/django/language/"
-"ur/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ur\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr ""
-
-#: admin.py:42
-msgid "Permissions"
-msgstr ""
-
-#: admin.py:44
-msgid "Important dates"
-msgstr ""
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr ""
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr ""
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr ""
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr ""
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr ""
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr ""
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr ""
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr ""
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr ""
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "لفظ اجازت"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr ""
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "توثیق کے لئے ویسا ہی لفظ اجازت درج کریں جیسا اوپر کیا۔"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr ""
-
-#: forms.py:206
-msgid "Email"
-msgstr ""
-
-#: forms.py:256
-msgid "New password"
-msgstr "نیا لفظ اجازت"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr ""
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr ""
-
-#: forms.py:290
-msgid "Old password"
-msgstr "پرانا لفظ اجازت"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "لفظ اجازت (دوبارہ)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr ""
-
-#: hashers.py:244
-msgid "iterations"
-msgstr ""
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr ""
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr ""
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr ""
-
-#: models.py:74
-msgid "codename"
-msgstr ""
-
-#: models.py:78
-msgid "permission"
-msgstr ""
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr ""
-
-#: models.py:128
-msgid "group"
-msgstr ""
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr ""
-
-#: models.py:200
-msgid "password"
-msgstr ""
-
-#: models.py:201
-msgid "last login"
-msgstr ""
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-
-#: models.py:299
-msgid "user permissions"
-msgstr ""
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr ""
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr ""
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr ""
-
-#: models.py:373
-msgid "last name"
-msgstr ""
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr ""
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr ""
-
-#: models.py:378
-msgid "active"
-msgstr ""
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr ""
-
-#: models.py:389
-msgid "user"
-msgstr ""
-
-#: models.py:390
-msgid "users"
-msgstr ""
-
-#: views.py:89
-msgid "Logged out"
-msgstr ""
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.mo
deleted file mode 100644
index f0f271a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.po
deleted file mode 100644
index 5034ef4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/vi/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,282 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# ppanhh <vietnamesel10n@gmail.com>, 2013
-# Tran <hongdiepkien@gmail.com>, 2011
-# Tran Van <vantxm@yahoo.co.uk>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Vietnamese (http://www.transifex.com/projects/p/django/"
-"language/vi/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: vi\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "Thông tin cá nhân"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "Quyền"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "Những ngày quan trọng"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "Mật khẩu thay đổi thành công"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "Thay đổi mật khẩu: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "Chưa đặt mật khẩu"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "Định dạng của mật khẩu không đúng hoặc thuật toán hash chưa rõ ràng."
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "Tên đăng nhập đã được sử dụng"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "Hai trường mật khẩu không giống nhau"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "Tên đăng nhập"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "Yêu cầu. 30 ký tự hoặc ít hơn. Chỉ là chữ cái, chữ số và @/./+/-/_."
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "Giá trị này có thể chứa chữ cái, số và ký tự @/./+/-/_."
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "Mật khẩu"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "Xác nhận mật khẩu"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "Nhập dãy mật mã trên để xác minh lại"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"Mật khẩu ban đầu sẽ không được lưu giữ, vì không có cách nào để có thể xem "
-"được mật khẩu của người dùng này, nhưng bạn có thể thay đổi mật khẩu bằng "
-"cách truy cập <a href=\"password/\">mẫu đơn này</a>."
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr ""
-"Vui lòng điền vào %(username)s và mật khẩu chính xác. Chú ý rằng cả hai "
-"khung thông tin đều phân biệt chữ hoa và chữ thường."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "Tài khoản này chưa được kích hoạt."
-
-#: forms.py:206
-msgid "Email"
-msgstr "Email"
-
-#: forms.py:256
-msgid "New password"
-msgstr "Mật khẩu mới"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "Xác nhận mật khẩu mới"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "Mật khẩu cũ không chính xác. Hãy nhập lại lần nữa"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "Mật khẩu cũ"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "Nhập lại mật khẩu"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "thuật toán"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "lặp lại"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr ""
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "băm"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr ""
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "kiểm tra"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "Tên"
-
-#: models.py:74
-msgid "codename"
-msgstr "tên mã"
-
-#: models.py:78
-msgid "permission"
-msgstr "cho phép"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "cho phép"
-
-#: models.py:128
-msgid "group"
-msgstr "Nhóm"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "Các nhóm"
-
-#: models.py:200
-msgid "password"
-msgstr "Mật khẩu"
-
-#: models.py:201
-msgid "last login"
-msgstr "Lần cuối đăng nhập"
-
-#: models.py:291
-msgid "superuser status"
-msgstr ""
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr ""
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr ""
-"Các nhóm người dùng này thuộc về. Người dùng sẽ nhận được tất cả các quyền "
-"được cấp cho mỗi nhóm của mình."
-
-#: models.py:299
-msgid "user permissions"
-msgstr "quyền của người sử dụng"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "Tên đăng nhập"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "Yêu cầu. 30 ký tự hoặc ít hơn. Chữ cái, số và ký tự @/./+/-/_"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr ""
-
-#: models.py:372
-msgid "first name"
-msgstr "Tên"
-
-#: models.py:373
-msgid "last name"
-msgstr "Họ"
-
-#: models.py:374
-msgid "email address"
-msgstr ""
-
-#: models.py:375
-msgid "staff status"
-msgstr "tình trạng nhân viên"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "Chỉ định người dùng nào được phép truy cập vào trang admin."
-
-#: models.py:378
-msgid "active"
-msgstr "Kích hoạt"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr ""
-
-#: models.py:381
-msgid "date joined"
-msgstr "Ngày tham gia"
-
-#: models.py:389
-msgid "user"
-msgstr "Người dùng"
-
-#: models.py:390
-msgid "users"
-msgstr "người sử dụng"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "Đã thoát"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr ""
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr ""
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.mo
deleted file mode 100644
index 0a91b43..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.po
deleted file mode 100644
index c2c6a26..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_CN/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,278 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# Jannis Leidel <jannis@leidel.info>, 2011
-# Lele Long <schemacs@gmail.com>, 2011
-# pylemon <leeway1985@gmail.com>, 2012-2013
-# Ziang Song <songziang@gmail.com>, 2011
-# Kevin Shi <leiarix@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Chinese (China) (http://www.transifex.com/projects/p/django/"
-"language/zh_CN/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh_CN\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "个人信息"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "权限"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "重要日期"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "密码修改成功。"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "修改密码:%s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "密码未设置。"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "不可用的密码格式或未知的哈希算法。"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "已存在一位使用该名字的用户。"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "两个密码字段不一致。"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "用户名"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "必填。不多于30个字符。只能用字母、数字和字符 @/./+/-/_ 。"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "该值只能包含字母、数字和字符@/./+/-/_ 。"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "密码"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "密码确认"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "为了校验,输入与上面相同的密码。"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"原始密码不会存储到数据库,因此没有办法看到这个用户的密码,但您可以使用<a "
-"href=\"password/\">这个表单</a>来更改密码。"
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "请输入一个正确的 %(username)s 和密码. 注意他们都是大区分大小写的."
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "该帐号未激活。"
-
-#: forms.py:206
-msgid "Email"
-msgstr "电子邮件"
-
-#: forms.py:256
-msgid "New password"
-msgstr "新密码"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "新密码确认"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "你的旧密码不正确。请重新输入。"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "旧密码"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "密码(重复)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "算法"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "迭代次数"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "盐"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "哈希"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "加密因子"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "校验和"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "名称"
-
-#: models.py:74
-msgid "codename"
-msgstr "代码名称"
-
-#: models.py:78
-msgid "permission"
-msgstr "权限"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "权限"
-
-#: models.py:128
-msgid "group"
-msgstr "组"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "组"
-
-#: models.py:200
-msgid "password"
-msgstr "密码"
-
-#: models.py:201
-msgid "last login"
-msgstr "上次登录"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "超级用户状态"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "指明该用户缺省拥有所有权限。"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr "这个用户所属的组。一个用户将得到他/她所在的每一个组的所有权限。"
-
-#: models.py:299
-msgid "user permissions"
-msgstr "用户权限"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "用户名"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "必填。不多于30个字符。只能用字母、数字和字符 @/./+/-/_ 。"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "输入一个可用的用户名"
-
-#: models.py:372
-msgid "first name"
-msgstr "名字"
-
-#: models.py:373
-msgid "last name"
-msgstr "姓氏"
-
-#: models.py:374
-msgid "email address"
-msgstr "电子邮件地址"
-
-#: models.py:375
-msgid "staff status"
-msgstr "职员状态"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "指明用户是否可以登录到这个管理站点。"
-
-#: models.py:378
-msgid "active"
-msgstr "有效"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr "指明用户是否被认为活跃的。以反选代替删除帐号。"
-
-#: models.py:381
-msgid "date joined"
-msgstr "加入日期"
-
-#: models.py:389
-msgid "user"
-msgstr "用户"
-
-#: models.py:390
-msgid "users"
-msgstr "用户"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "退出登录"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "重置 %(site_name)s 的密码"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "输入一个合法的Email地址."
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.mo b/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.mo
deleted file mode 100644
index ac4afde..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.mo
+++ /dev/null
Binary files differ
diff --git a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.po b/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.po
deleted file mode 100644
index c3f80aa..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/locale/zh_TW/LC_MESSAGES/django.po
+++ /dev/null
@@ -1,278 +0,0 @@
-# This file is distributed under the same license as the Django package.
-#
-# Translators:
-# ilay <ilay@ilay.tw>, 2012
-# Jannis Leidel <jannis@leidel.info>, 2011
-# tcc <tcchou@tcchou.org>, 2011
-# yyc1217 <yyc1217@gmail.com>, 2013
-# yyc1217 <yyc1217@gmail.com>, 2012
-msgid ""
-msgstr ""
-"Project-Id-Version: django-core\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2013-10-09 20:17+0200\n"
-"PO-Revision-Date: 2013-10-10 08:45+0000\n"
-"Last-Translator: Jannis Leidel <jannis@leidel.info>\n"
-"Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/django/"
-"language/zh_TW/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh_TW\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: admin.py:41
-msgid "Personal info"
-msgstr "個人資訊"
-
-#: admin.py:42
-msgid "Permissions"
-msgstr "權限"
-
-#: admin.py:44
-msgid "Important dates"
-msgstr "重要日期"
-
-#: admin.py:132
-msgid "Password changed successfully."
-msgstr "密碼修改成功"
-
-#: admin.py:142
-#, python-format
-msgid "Change password: %s"
-msgstr "修改密碼: %s"
-
-#: forms.py:33 tests/test_forms.py:261 tests/test_forms.py:266
-#: tests/test_forms.py:407
-msgid "No password set."
-msgstr "無設定密碼。"
-
-#: forms.py:39 tests/test_forms.py:271 tests/test_forms.py:277
-msgid "Invalid password format or unknown hashing algorithm."
-msgstr "無效的密碼格式或不知名的雜湊演算法。"
-
-#: forms.py:72
-msgid "A user with that username already exists."
-msgstr "一個相同名稱的使用者已經存在。"
-
-#: forms.py:73 forms.py:254 forms.py:314
-msgid "The two password fields didn't match."
-msgstr "兩個密碼欄位不相符。"
-
-#: forms.py:75 forms.py:120
-msgid "Username"
-msgstr "使用者名稱"
-
-#: forms.py:77 forms.py:121
-msgid "Required. 30 characters or fewer. Letters, digits and @/./+/-/_ only."
-msgstr "必要的。30 個字或更少, 只包含字母、數字和 @/./+/-/_。"
-
-#: forms.py:80 forms.py:124
-msgid "This value may contain only letters, numbers and @/./+/-/_ characters."
-msgstr "這資料值只能包含字母、數字和 @/./+/-/_ 字元。"
-
-#: forms.py:82 forms.py:126 forms.py:153 forms.py:316
-msgid "Password"
-msgstr "密碼"
-
-#: forms.py:84
-msgid "Password confirmation"
-msgstr "密碼確認"
-
-#: forms.py:86
-msgid "Enter the same password as above, for verification."
-msgstr "為檢查用,請輸入與上面相同的密碼。"
-
-#: forms.py:127
-msgid ""
-"Raw passwords are not stored, so there is no way to see this user's "
-"password, but you can change the password using <a href=\"password/\">this "
-"form</a>."
-msgstr ""
-"原始密碼尚未儲存,因此無法存取此帳號的密碼,但你可以透過<a href=\"password/"
-"\">這個表單</a>來變更密碼。"
-
-#: forms.py:156
-#, python-format
-msgid ""
-"Please enter a correct %(username)s and password. Note that both fields may "
-"be case-sensitive."
-msgstr "輸入正確的 %(username)s 和密碼。請注意兩者皆區分大小寫。"
-
-#: forms.py:158
-msgid "This account is inactive."
-msgstr "這個帳戶未啟用"
-
-#: forms.py:206
-msgid "Email"
-msgstr "電子信箱"
-
-#: forms.py:256
-msgid "New password"
-msgstr "新密碼"
-
-#: forms.py:258
-msgid "New password confirmation"
-msgstr "新密碼確認"
-
-#: forms.py:287
-msgid "Your old password was entered incorrectly. Please enter it again."
-msgstr "你的舊密碼不正確。請重新輸入。"
-
-#: forms.py:290
-msgid "Old password"
-msgstr "舊密碼"
-
-#: forms.py:318
-msgid "Password (again)"
-msgstr "密碼(重複)"
-
-#: hashers.py:243 hashers.py:317 hashers.py:365 hashers.py:393 hashers.py:426
-#: hashers.py:459 hashers.py:493
-msgid "algorithm"
-msgstr "演算法"
-
-#: hashers.py:244
-msgid "iterations"
-msgstr "迭代"
-
-#: hashers.py:245 hashers.py:319 hashers.py:366 hashers.py:394 hashers.py:494
-msgid "salt"
-msgstr "隨機值"
-
-#: hashers.py:246 hashers.py:367 hashers.py:395 hashers.py:427 hashers.py:460
-#: hashers.py:495
-msgid "hash"
-msgstr "哈希碼"
-
-#: hashers.py:318
-msgid "work factor"
-msgstr "作用因素"
-
-#: hashers.py:320
-msgid "checksum"
-msgstr "校驗"
-
-#: models.py:72 models.py:121
-msgid "name"
-msgstr "名稱"
-
-#: models.py:74
-msgid "codename"
-msgstr "代碼"
-
-#: models.py:78
-msgid "permission"
-msgstr "權限"
-
-#: models.py:79 models.py:123
-msgid "permissions"
-msgstr "權限"
-
-#: models.py:128
-msgid "group"
-msgstr "群組"
-
-#: models.py:129 models.py:294
-msgid "groups"
-msgstr "群組"
-
-#: models.py:200
-msgid "password"
-msgstr "密碼"
-
-#: models.py:201
-msgid "last login"
-msgstr "上次登入"
-
-#: models.py:291
-msgid "superuser status"
-msgstr "超級使用者狀態"
-
-#: models.py:292
-msgid ""
-"Designates that this user has all permissions without explicitly assigning "
-"them."
-msgstr "指定是否使用者可以登入到這個管理網站"
-
-#: models.py:295
-msgid ""
-"The groups this user belongs to. A user will get all permissions granted to "
-"each of his/her group."
-msgstr "此為帳號可加入的群組。其所屬的群組將授予該帳號對應的權限。"
-
-#: models.py:299
-msgid "user permissions"
-msgstr "使用者權限"
-
-#: models.py:301
-msgid "Specific permissions for this user."
-msgstr ""
-
-#: models.py:368
-msgid "username"
-msgstr "使用者名稱"
-
-#: models.py:367
-msgid ""
-"Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters"
-msgstr "必要的。30 個字或更少, 只包含字母、數字和 @/./+/-/_。"
-
-#: models.py:370
-msgid "Enter a valid username."
-msgstr "輸入有效帳號。"
-
-#: models.py:372
-msgid "first name"
-msgstr "名字"
-
-#: models.py:373
-msgid "last name"
-msgstr "姓氏"
-
-#: models.py:374
-msgid "email address"
-msgstr "電子信箱"
-
-#: models.py:375
-msgid "staff status"
-msgstr "工作人員狀態"
-
-#: models.py:376
-msgid "Designates whether the user can log into this admin site."
-msgstr "指定是否使用者可以登入此管理網站。"
-
-#: models.py:378
-msgid "active"
-msgstr "有效"
-
-#: models.py:379
-msgid ""
-"Designates whether this user should be treated as active. Unselect this "
-"instead of deleting accounts."
-msgstr "指定使用者是否有效。請取消選擇而不是刪除帳號。"
-
-#: models.py:381
-msgid "date joined"
-msgstr "加入日期"
-
-#: models.py:389
-msgid "user"
-msgstr "使用者"
-
-#: models.py:390
-msgid "users"
-msgstr "使用者"
-
-#: views.py:89
-msgid "Logged out"
-msgstr "登出"
-
-#: templates/registration/password_reset_subject.txt:2
-#, python-format
-msgid "Password reset on %(site_name)s"
-msgstr "在 %(site_name)s 進行密碼重置"
-
-#: tests/test_forms.py:325
-msgid "Enter a valid email address."
-msgstr "輸入有效的電子郵件地址。"
diff --git a/lib/python2.7/site-packages/django/contrib/auth/management/__init__.py b/lib/python2.7/site-packages/django/contrib/auth/management/__init__.py
deleted file mode 100644
index 7b0f5ad..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/management/__init__.py
+++ /dev/null
@@ -1,193 +0,0 @@
-"""
-Creates permissions for all installed apps that need permissions.
-"""
-from __future__ import unicode_literals
-
-import getpass
-import unicodedata
-
-from django.contrib.auth import (models as auth_app, get_permission_codename,
- get_user_model)
-from django.core import exceptions
-from django.core.management.base import CommandError
-from django.db import DEFAULT_DB_ALIAS, router
-from django.db.models import get_model, get_models, signals, UnavailableApp
-from django.utils.encoding import DEFAULT_LOCALE_ENCODING
-from django.utils import six
-from django.utils.six.moves import input
-
-
-def _get_all_permissions(opts, ctype):
- """
- Returns (codename, name) for all permissions in the given opts.
- """
- builtin = _get_builtin_permissions(opts)
- custom = list(opts.permissions)
- _check_permission_clashing(custom, builtin, ctype)
- return builtin + custom
-
-
-def _get_builtin_permissions(opts):
- """
- Returns (codename, name) for all autogenerated permissions.
- """
- perms = []
- for action in ('add', 'change', 'delete'):
- perms.append((get_permission_codename(action, opts),
- 'Can %s %s' % (action, opts.verbose_name_raw)))
- return perms
-
-
-def _check_permission_clashing(custom, builtin, ctype):
- """
- Check that permissions for a model do not clash. Raises CommandError if
- there are duplicate permissions.
- """
- pool = set()
- builtin_codenames = set(p[0] for p in builtin)
- for codename, _name in custom:
- if codename in pool:
- raise CommandError(
- "The permission codename '%s' is duplicated for model '%s.%s'." %
- (codename, ctype.app_label, ctype.model_class().__name__))
- elif codename in builtin_codenames:
- raise CommandError(
- "The permission codename '%s' clashes with a builtin permission "
- "for model '%s.%s'." %
- (codename, ctype.app_label, ctype.model_class().__name__))
- pool.add(codename)
-
-
-def create_permissions(app, created_models, verbosity, db=DEFAULT_DB_ALIAS, **kwargs):
- try:
- get_model('auth', 'Permission')
- except UnavailableApp:
- return
-
- if not router.allow_syncdb(db, auth_app.Permission):
- return
-
- from django.contrib.contenttypes.models import ContentType
-
- app_models = get_models(app)
-
- # This will hold the permissions we're looking for as
- # (content_type, (codename, name))
- searched_perms = list()
- # The codenames and ctypes that should exist.
- ctypes = set()
- for klass in app_models:
- # Force looking up the content types in the current database
- # before creating foreign keys to them.
- ctype = ContentType.objects.db_manager(db).get_for_model(klass)
- ctypes.add(ctype)
- for perm in _get_all_permissions(klass._meta, ctype):
- searched_perms.append((ctype, perm))
-
- # Find all the Permissions that have a content_type for a model we're
- # looking for. We don't need to check for codenames since we already have
- # a list of the ones we're going to create.
- all_perms = set(auth_app.Permission.objects.using(db).filter(
- content_type__in=ctypes,
- ).values_list(
- "content_type", "codename"
- ))
-
- perms = [
- auth_app.Permission(codename=codename, name=name, content_type=ctype)
- for ctype, (codename, name) in searched_perms
- if (ctype.pk, codename) not in all_perms
- ]
- auth_app.Permission.objects.using(db).bulk_create(perms)
- if verbosity >= 2:
- for perm in perms:
- print("Adding permission '%s'" % perm)
-
-
-def create_superuser(app, created_models, verbosity, db, **kwargs):
- try:
- get_model('auth', 'Permission')
- UserModel = get_user_model()
- except UnavailableApp:
- return
-
- from django.core.management import call_command
-
- if UserModel in created_models and kwargs.get('interactive', True):
- msg = ("\nYou just installed Django's auth system, which means you "
- "don't have any superusers defined.\nWould you like to create one "
- "now? (yes/no): ")
- confirm = input(msg)
- while 1:
- if confirm not in ('yes', 'no'):
- confirm = input('Please enter either "yes" or "no": ')
- continue
- if confirm == 'yes':
- call_command("createsuperuser", interactive=True, database=db)
- break
-
-
-def get_system_username():
- """
- Try to determine the current system user's username.
-
- :returns: The username as a unicode string, or an empty string if the
- username could not be determined.
- """
- try:
- result = getpass.getuser()
- except (ImportError, KeyError):
- # KeyError will be raised by os.getpwuid() (called by getuser())
- # if there is no corresponding entry in the /etc/passwd file
- # (a very restricted chroot environment, for example).
- return ''
- if six.PY2:
- try:
- result = result.decode(DEFAULT_LOCALE_ENCODING)
- except UnicodeDecodeError:
- # UnicodeDecodeError - preventive treatment for non-latin Windows.
- return ''
- return result
-
-
-def get_default_username(check_db=True):
- """
- Try to determine the current system user's username to use as a default.
-
- :param check_db: If ``True``, requires that the username does not match an
- existing ``auth.User`` (otherwise returns an empty string).
- :returns: The username, or an empty string if no username can be
- determined.
- """
- # If the User model has been swapped out, we can't make any assumptions
- # about the default user name.
- if auth_app.User._meta.swapped:
- return ''
-
- default_username = get_system_username()
- try:
- default_username = unicodedata.normalize('NFKD', default_username)\
- .encode('ascii', 'ignore').decode('ascii').replace(' ', '').lower()
- except UnicodeDecodeError:
- return ''
-
- # Run the username validator
- try:
- auth_app.User._meta.get_field('username').run_validators(default_username)
- except exceptions.ValidationError:
- return ''
-
- # Don't return the default username if it is already taken.
- if check_db and default_username:
- try:
- auth_app.User._default_manager.get(username=default_username)
- except auth_app.User.DoesNotExist:
- pass
- else:
- return ''
- return default_username
-
-signals.post_syncdb.connect(create_permissions,
- dispatch_uid="django.contrib.auth.management.create_permissions")
-signals.post_syncdb.connect(create_superuser,
- sender=auth_app, dispatch_uid="django.contrib.auth.management.create_superuser")
diff --git a/lib/python2.7/site-packages/django/contrib/auth/management/commands/__init__.py b/lib/python2.7/site-packages/django/contrib/auth/management/commands/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/management/commands/__init__.py
+++ /dev/null
diff --git a/lib/python2.7/site-packages/django/contrib/auth/management/commands/changepassword.py b/lib/python2.7/site-packages/django/contrib/auth/management/commands/changepassword.py
deleted file mode 100644
index ad1c784..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/management/commands/changepassword.py
+++ /dev/null
@@ -1,63 +0,0 @@
-from __future__ import unicode_literals
-
-import getpass
-from optparse import make_option
-
-from django.contrib.auth import get_user_model
-from django.core.management.base import BaseCommand, CommandError
-from django.db import DEFAULT_DB_ALIAS
-from django.utils.encoding import force_str
-
-
-class Command(BaseCommand):
- option_list = BaseCommand.option_list + (
- make_option('--database', action='store', dest='database',
- default=DEFAULT_DB_ALIAS, help='Specifies the database to use. Default is "default".'),
- )
- help = "Change a user's password for django.contrib.auth."
-
- requires_model_validation = False
-
- def _get_pass(self, prompt="Password: "):
- p = getpass.getpass(prompt=force_str(prompt))
- if not p:
- raise CommandError("aborted")
- return p
-
- def handle(self, *args, **options):
- if len(args) > 1:
- raise CommandError("need exactly one or zero arguments for username")
-
- if args:
- username, = args
- else:
- username = getpass.getuser()
-
- UserModel = get_user_model()
-
- try:
- u = UserModel._default_manager.using(options.get('database')).get(**{
- UserModel.USERNAME_FIELD: username
- })
- except UserModel.DoesNotExist:
- raise CommandError("user '%s' does not exist" % username)
-
- self.stdout.write("Changing password for user '%s'\n" % u)
-
- MAX_TRIES = 3
- count = 0
- p1, p2 = 1, 2 # To make them initially mismatch.
- while p1 != p2 and count < MAX_TRIES:
- p1 = self._get_pass()
- p2 = self._get_pass("Password (again): ")
- if p1 != p2:
- self.stdout.write("Passwords do not match. Please try again.\n")
- count = count + 1
-
- if count == MAX_TRIES:
- raise CommandError("Aborting password change for user '%s' after %s attempts" % (u, count))
-
- u.set_password(p1)
- u.save()
-
- return "Password changed successfully for user '%s'" % u
diff --git a/lib/python2.7/site-packages/django/contrib/auth/management/commands/createsuperuser.py b/lib/python2.7/site-packages/django/contrib/auth/management/commands/createsuperuser.py
deleted file mode 100644
index ac2835d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/management/commands/createsuperuser.py
+++ /dev/null
@@ -1,143 +0,0 @@
-"""
-Management utility to create superusers.
-"""
-from __future__ import unicode_literals
-
-import getpass
-import sys
-from optparse import make_option
-
-from django.contrib.auth import get_user_model
-from django.contrib.auth.management import get_default_username
-from django.core import exceptions
-from django.core.management.base import BaseCommand, CommandError
-from django.db import DEFAULT_DB_ALIAS
-from django.utils.encoding import force_str
-from django.utils.six.moves import input
-from django.utils.text import capfirst
-
-
-class Command(BaseCommand):
-
- def __init__(self, *args, **kwargs):
- # Options are defined in an __init__ method to support swapping out
- # custom user models in tests.
- super(Command, self).__init__(*args, **kwargs)
- self.UserModel = get_user_model()
- self.username_field = self.UserModel._meta.get_field(self.UserModel.USERNAME_FIELD)
-
- self.option_list = BaseCommand.option_list + (
- make_option('--%s' % self.UserModel.USERNAME_FIELD, dest=self.UserModel.USERNAME_FIELD, default=None,
- help='Specifies the login for the superuser.'),
- make_option('--noinput', action='store_false', dest='interactive', default=True,
- help=('Tells Django to NOT prompt the user for input of any kind. '
- 'You must use --%s with --noinput, along with an option for '
- 'any other required field. Superusers created with --noinput will '
- ' not be able to log in until they\'re given a valid password.' %
- self.UserModel.USERNAME_FIELD)),
- make_option('--database', action='store', dest='database',
- default=DEFAULT_DB_ALIAS, help='Specifies the database to use. Default is "default".'),
- ) + tuple(
- make_option('--%s' % field, dest=field, default=None,
- help='Specifies the %s for the superuser.' % field)
- for field in self.UserModel.REQUIRED_FIELDS
- )
-
- option_list = BaseCommand.option_list
- help = 'Used to create a superuser.'
-
- def handle(self, *args, **options):
- username = options.get(self.UserModel.USERNAME_FIELD, None)
- interactive = options.get('interactive')
- verbosity = int(options.get('verbosity', 1))
- database = options.get('database')
-
- # If not provided, create the user with an unusable password
- password = None
- user_data = {}
-
- # Do quick and dirty validation if --noinput
- if not interactive:
- try:
- if not username:
- raise CommandError("You must use --%s with --noinput." %
- self.UserModel.USERNAME_FIELD)
- username = self.username_field.clean(username, None)
-
- for field_name in self.UserModel.REQUIRED_FIELDS:
- if options.get(field_name):
- field = self.UserModel._meta.get_field(field_name)
- user_data[field_name] = field.clean(options[field_name], None)
- else:
- raise CommandError("You must use --%s with --noinput." % field_name)
- except exceptions.ValidationError as e:
- raise CommandError('; '.join(e.messages))
-
- else:
- # Prompt for username/password, and any other required fields.
- # Enclose this whole thing in a try/except to trap for a
- # keyboard interrupt and exit gracefully.
- default_username = get_default_username()
- try:
-
- # Get a username
- verbose_field_name = self.username_field.verbose_name
- while username is None:
- if not username:
- input_msg = capfirst(verbose_field_name)
- if default_username:
- input_msg = "%s (leave blank to use '%s')" % (
- input_msg, default_username)
- raw_value = input(force_str('%s: ' % input_msg))
-
- if default_username and raw_value == '':
- raw_value = default_username
- try:
- username = self.username_field.clean(raw_value, None)
- except exceptions.ValidationError as e:
- self.stderr.write("Error: %s" % '; '.join(e.messages))
- username = None
- continue
- try:
- self.UserModel._default_manager.db_manager(database).get_by_natural_key(username)
- except self.UserModel.DoesNotExist:
- pass
- else:
- self.stderr.write("Error: That %s is already taken." %
- verbose_field_name)
- username = None
-
- for field_name in self.UserModel.REQUIRED_FIELDS:
- field = self.UserModel._meta.get_field(field_name)
- user_data[field_name] = options.get(field_name)
- while user_data[field_name] is None:
- raw_value = input(force_str('%s: ' % capfirst(field.verbose_name)))
- try:
- user_data[field_name] = field.clean(raw_value, None)
- except exceptions.ValidationError as e:
- self.stderr.write("Error: %s" % '; '.join(e.messages))
- user_data[field_name] = None
-
- # Get a password
- while password is None:
- if not password:
- password = getpass.getpass()
- password2 = getpass.getpass(force_str('Password (again): '))
- if password != password2:
- self.stderr.write("Error: Your passwords didn't match.")
- password = None
- continue
- if password.strip() == '':
- self.stderr.write("Error: Blank passwords aren't allowed.")
- password = None
- continue
-
- except KeyboardInterrupt:
- self.stderr.write("\nOperation cancelled.")
- sys.exit(1)
-
- user_data[self.UserModel.USERNAME_FIELD] = username
- user_data['password'] = password
- self.UserModel._default_manager.db_manager(database).create_superuser(**user_data)
- if verbosity >= 1:
- self.stdout.write("Superuser created successfully.")
diff --git a/lib/python2.7/site-packages/django/contrib/auth/middleware.py b/lib/python2.7/site-packages/django/contrib/auth/middleware.py
deleted file mode 100644
index f38efdd..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/middleware.py
+++ /dev/null
@@ -1,91 +0,0 @@
-from django.contrib import auth
-from django.contrib.auth import load_backend
-from django.contrib.auth.backends import RemoteUserBackend
-from django.core.exceptions import ImproperlyConfigured
-from django.utils.functional import SimpleLazyObject
-
-
-def get_user(request):
- if not hasattr(request, '_cached_user'):
- request._cached_user = auth.get_user(request)
- return request._cached_user
-
-
-class AuthenticationMiddleware(object):
- def process_request(self, request):
- assert hasattr(request, 'session'), "The Django authentication middleware requires session middleware to be installed. Edit your MIDDLEWARE_CLASSES setting to insert 'django.contrib.sessions.middleware.SessionMiddleware'."
-
- request.user = SimpleLazyObject(lambda: get_user(request))
-
-
-class RemoteUserMiddleware(object):
- """
- Middleware for utilizing Web-server-provided authentication.
-
- If request.user is not authenticated, then this middleware attempts to
- authenticate the username passed in the ``REMOTE_USER`` request header.
- If authentication is successful, the user is automatically logged in to
- persist the user in the session.
-
- The header used is configurable and defaults to ``REMOTE_USER``. Subclass
- this class and change the ``header`` attribute if you need to use a
- different header.
- """
-
- # Name of request header to grab username from. This will be the key as
- # used in the request.META dictionary, i.e. the normalization of headers to
- # all uppercase and the addition of "HTTP_" prefix apply.
- header = "REMOTE_USER"
-
- def process_request(self, request):
- # AuthenticationMiddleware is required so that request.user exists.
- if not hasattr(request, 'user'):
- raise ImproperlyConfigured(
- "The Django remote user auth middleware requires the"
- " authentication middleware to be installed. Edit your"
- " MIDDLEWARE_CLASSES setting to insert"
- " 'django.contrib.auth.middleware.AuthenticationMiddleware'"
- " before the RemoteUserMiddleware class.")
- try:
- username = request.META[self.header]
- except KeyError:
- # If specified header doesn't exist then remove any existing
- # authenticated remote-user, or return (leaving request.user set to
- # AnonymousUser by the AuthenticationMiddleware).
- if request.user.is_authenticated():
- try:
- stored_backend = load_backend(request.session.get(
- auth.BACKEND_SESSION_KEY, ''))
- if isinstance(stored_backend, RemoteUserBackend):
- auth.logout(request)
- except ImproperlyConfigured as e:
- # backend failed to load
- auth.logout(request)
- return
- # If the user is already authenticated and that user is the user we are
- # getting passed in the headers, then the correct user is already
- # persisted in the session and we don't need to continue.
- if request.user.is_authenticated():
- if request.user.get_username() == self.clean_username(username, request):
- return
- # We are seeing this user for the first time in this session, attempt
- # to authenticate the user.
- user = auth.authenticate(remote_user=username)
- if user:
- # User is valid. Set request.user and persist user in the session
- # by logging the user in.
- request.user = user
- auth.login(request, user)
-
- def clean_username(self, username, request):
- """
- Allows the backend to clean the username, if the backend defines a
- clean_username method.
- """
- backend_str = request.session[auth.BACKEND_SESSION_KEY]
- backend = auth.load_backend(backend_str)
- try:
- username = backend.clean_username(username)
- except AttributeError: # Backend has no clean_username method.
- pass
- return username
diff --git a/lib/python2.7/site-packages/django/contrib/auth/models.py b/lib/python2.7/site-packages/django/contrib/auth/models.py
deleted file mode 100644
index 5153753..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/models.py
+++ /dev/null
@@ -1,527 +0,0 @@
-from __future__ import unicode_literals
-import re
-import warnings
-
-from django.core.exceptions import ImproperlyConfigured
-from django.core.mail import send_mail
-from django.core import validators
-from django.db import models
-from django.db.models.manager import EmptyManager
-from django.utils.crypto import get_random_string
-from django.utils.http import urlquote
-from django.utils import six
-from django.utils.translation import ugettext_lazy as _
-from django.utils import timezone
-
-from django.contrib import auth
-from django.contrib.auth.hashers import (
- check_password, make_password, is_password_usable)
-from django.contrib.auth.signals import user_logged_in
-from django.contrib.contenttypes.models import ContentType
-from django.utils.encoding import python_2_unicode_compatible
-
-
-def update_last_login(sender, user, **kwargs):
- """
- A signal receiver which updates the last_login date for
- the user logging in.
- """
- user.last_login = timezone.now()
- user.save(update_fields=['last_login'])
-user_logged_in.connect(update_last_login)
-
-
-class SiteProfileNotAvailable(Exception):
- pass
-
-
-class PermissionManager(models.Manager):
- def get_by_natural_key(self, codename, app_label, model):
- return self.get(
- codename=codename,
- content_type=ContentType.objects.get_by_natural_key(app_label,
- model),
- )
-
-
-@python_2_unicode_compatible
-class Permission(models.Model):
- """
- The permissions system provides a way to assign permissions to specific
- users and groups of users.
-
- The permission system is used by the Django admin site, but may also be
- useful in your own code. The Django admin site uses permissions as follows:
-
- - The "add" permission limits the user's ability to view the "add" form
- and add an object.
- - The "change" permission limits a user's ability to view the change
- list, view the "change" form and change an object.
- - The "delete" permission limits the ability to delete an object.
-
- Permissions are set globally per type of object, not per specific object
- instance. It is possible to say "Mary may change news stories," but it's
- not currently possible to say "Mary may change news stories, but only the
- ones she created herself" or "Mary may only change news stories that have a
- certain status or publication date."
-
- Three basic permissions -- add, change and delete -- are automatically
- created for each Django model.
- """
- name = models.CharField(_('name'), max_length=50)
- content_type = models.ForeignKey(ContentType)
- codename = models.CharField(_('codename'), max_length=100)
- objects = PermissionManager()
-
- class Meta:
- verbose_name = _('permission')
- verbose_name_plural = _('permissions')
- unique_together = (('content_type', 'codename'),)
- ordering = ('content_type__app_label', 'content_type__model',
- 'codename')
-
- def __str__(self):
- return "%s | %s | %s" % (
- six.text_type(self.content_type.app_label),
- six.text_type(self.content_type),
- six.text_type(self.name))
-
- def natural_key(self):
- return (self.codename,) + self.content_type.natural_key()
- natural_key.dependencies = ['contenttypes.contenttype']
-
-
-class GroupManager(models.Manager):
- """
- The manager for the auth's Group model.
- """
- def get_by_natural_key(self, name):
- return self.get(name=name)
-
-
-@python_2_unicode_compatible
-class Group(models.Model):
- """
- Groups are a generic way of categorizing users to apply permissions, or
- some other label, to those users. A user can belong to any number of
- groups.
-
- A user in a group automatically has all the permissions granted to that
- group. For example, if the group Site editors has the permission
- can_edit_home_page, any user in that group will have that permission.
-
- Beyond permissions, groups are a convenient way to categorize users to
- apply some label, or extended functionality, to them. For example, you
- could create a group 'Special users', and you could write code that would
- do special things to those users -- such as giving them access to a
- members-only portion of your site, or sending them members-only email
- messages.
- """
- name = models.CharField(_('name'), max_length=80, unique=True)
- permissions = models.ManyToManyField(Permission,
- verbose_name=_('permissions'), blank=True)
-
- objects = GroupManager()
-
- class Meta:
- verbose_name = _('group')
- verbose_name_plural = _('groups')
-
- def __str__(self):
- return self.name
-
- def natural_key(self):
- return (self.name,)
-
-
-class BaseUserManager(models.Manager):
-
- @classmethod
- def normalize_email(cls, email):
- """
- Normalize the address by lowercasing the domain part of the email
- address.
- """
- email = email or ''
- try:
- email_name, domain_part = email.strip().rsplit('@', 1)
- except ValueError:
- pass
- else:
- email = '@'.join([email_name, domain_part.lower()])
- return email
-
- def make_random_password(self, length=10,
- allowed_chars='abcdefghjkmnpqrstuvwxyz'
- 'ABCDEFGHJKLMNPQRSTUVWXYZ'
- '23456789'):
- """
- Generates a random password with the given length and given
- allowed_chars. Note that the default value of allowed_chars does not
- have "I" or "O" or letters and digits that look similar -- just to
- avoid confusion.
- """
- return get_random_string(length, allowed_chars)
-
- def get_by_natural_key(self, username):
- return self.get(**{self.model.USERNAME_FIELD: username})
-
-
-class UserManager(BaseUserManager):
-
- def _create_user(self, username, email, password,
- is_staff, is_superuser, **extra_fields):
- """
- Creates and saves a User with the given username, email and password.
- """
- now = timezone.now()
- if not username:
- raise ValueError('The given username must be set')
- email = self.normalize_email(email)
- user = self.model(username=username, email=email,
- is_staff=is_staff, is_active=True,
- is_superuser=is_superuser, last_login=now,
- date_joined=now, **extra_fields)
- user.set_password(password)
- user.save(using=self._db)
- return user
-
- def create_user(self, username, email=None, password=None, **extra_fields):
- return self._create_user(username, email, password, False, False,
- **extra_fields)
-
- def create_superuser(self, username, email, password, **extra_fields):
- return self._create_user(username, email, password, True, True,
- **extra_fields)
-
-
-@python_2_unicode_compatible
-class AbstractBaseUser(models.Model):
- password = models.CharField(_('password'), max_length=128)
- last_login = models.DateTimeField(_('last login'), default=timezone.now)
-
- is_active = True
-
- REQUIRED_FIELDS = []
-
- class Meta:
- abstract = True
-
- def get_username(self):
- "Return the identifying username for this User"
- return getattr(self, self.USERNAME_FIELD)
-
- def __str__(self):
- return self.get_username()
-
- def natural_key(self):
- return (self.get_username(),)
-
- def is_anonymous(self):
- """
- Always returns False. This is a way of comparing User objects to
- anonymous users.
- """
- return False
-
- def is_authenticated(self):
- """
- Always return True. This is a way to tell if the user has been
- authenticated in templates.
- """
- return True
-
- def set_password(self, raw_password):
- self.password = make_password(raw_password)
-
- def check_password(self, raw_password):
- """
- Returns a boolean of whether the raw_password was correct. Handles
- hashing formats behind the scenes.
- """
- def setter(raw_password):
- self.set_password(raw_password)
- self.save(update_fields=["password"])
- return check_password(raw_password, self.password, setter)
-
- def set_unusable_password(self):
- # Sets a value that will never be a valid hash
- self.password = make_password(None)
-
- def has_usable_password(self):
- return is_password_usable(self.password)
-
- def get_full_name(self):
- raise NotImplementedError()
-
- def get_short_name(self):
- raise NotImplementedError()
-
-
-# A few helper functions for common logic between User and AnonymousUser.
-def _user_get_all_permissions(user, obj):
- permissions = set()
- for backend in auth.get_backends():
- if hasattr(backend, "get_all_permissions"):
- permissions.update(backend.get_all_permissions(user, obj))
- return permissions
-
-
-def _user_has_perm(user, perm, obj):
- for backend in auth.get_backends():
- if hasattr(backend, "has_perm"):
- if backend.has_perm(user, perm, obj):
- return True
- return False
-
-
-def _user_has_module_perms(user, app_label):
- for backend in auth.get_backends():
- if hasattr(backend, "has_module_perms"):
- if backend.has_module_perms(user, app_label):
- return True
- return False
-
-
-class PermissionsMixin(models.Model):
- """
- A mixin class that adds the fields and methods necessary to support
- Django's Group and Permission model using the ModelBackend.
- """
- is_superuser = models.BooleanField(_('superuser status'), default=False,
- help_text=_('Designates that this user has all permissions without '
- 'explicitly assigning them.'))
- groups = models.ManyToManyField(Group, verbose_name=_('groups'),
- blank=True, help_text=_('The groups this user belongs to. A user will '
- 'get all permissions granted to each of '
- 'his/her group.'),
- related_name="user_set", related_query_name="user")
- user_permissions = models.ManyToManyField(Permission,
- verbose_name=_('user permissions'), blank=True,
- help_text=_('Specific permissions for this user.'),
- related_name="user_set", related_query_name="user")
-
- class Meta:
- abstract = True
-
- def get_group_permissions(self, obj=None):
- """
- Returns a list of permission strings that this user has through his/her
- groups. This method queries all available auth backends. If an object
- is passed in, only permissions matching this object are returned.
- """
- permissions = set()
- for backend in auth.get_backends():
- if hasattr(backend, "get_group_permissions"):
- permissions.update(backend.get_group_permissions(self, obj))
- return permissions
-
- def get_all_permissions(self, obj=None):
- return _user_get_all_permissions(self, obj)
-
- def has_perm(self, perm, obj=None):
- """
- Returns True if the user has the specified permission. This method
- queries all available auth backends, but returns immediately if any
- backend returns True. Thus, a user who has permission from a single
- auth backend is assumed to have permission in general. If an object is
- provided, permissions for this specific object are checked.
- """
-
- # Active superusers have all permissions.
- if self.is_active and self.is_superuser:
- return True
-
- # Otherwise we need to check the backends.
- return _user_has_perm(self, perm, obj)
-
- def has_perms(self, perm_list, obj=None):
- """
- Returns True if the user has each of the specified permissions. If
- object is passed, it checks if the user has all required perms for this
- object.
- """
- for perm in perm_list:
- if not self.has_perm(perm, obj):
- return False
- return True
-
- def has_module_perms(self, app_label):
- """
- Returns True if the user has any permissions in the given app label.
- Uses pretty much the same logic as has_perm, above.
- """
- # Active superusers have all permissions.
- if self.is_active and self.is_superuser:
- return True
-
- return _user_has_module_perms(self, app_label)
-
-
-class AbstractUser(AbstractBaseUser, PermissionsMixin):
- """
- An abstract base class implementing a fully featured User model with
- admin-compliant permissions.
-
- Username, password and email are required. Other fields are optional.
- """
- username = models.CharField(_('username'), max_length=30, unique=True,
- help_text=_('Required. 30 characters or fewer. Letters, numbers and '
- '@/./+/-/_ characters'),
- validators=[
- validators.RegexValidator(re.compile('^[\w.@+-]+$'), _('Enter a valid username.'), 'invalid')
- ])
- first_name = models.CharField(_('first name'), max_length=30, blank=True)
- last_name = models.CharField(_('last name'), max_length=30, blank=True)
- email = models.EmailField(_('email address'), blank=True)
- is_staff = models.BooleanField(_('staff status'), default=False,
- help_text=_('Designates whether the user can log into this admin '
- 'site.'))
- is_active = models.BooleanField(_('active'), default=True,
- help_text=_('Designates whether this user should be treated as '
- 'active. Unselect this instead of deleting accounts.'))
- date_joined = models.DateTimeField(_('date joined'), default=timezone.now)
-
- objects = UserManager()
-
- USERNAME_FIELD = 'username'
- REQUIRED_FIELDS = ['email']
-
- class Meta:
- verbose_name = _('user')
- verbose_name_plural = _('users')
- abstract = True
-
- def get_absolute_url(self):
- return "/users/%s/" % urlquote(self.username)
-
- def get_full_name(self):
- """
- Returns the first_name plus the last_name, with a space in between.
- """
- full_name = '%s %s' % (self.first_name, self.last_name)
- return full_name.strip()
-
- def get_short_name(self):
- "Returns the short name for the user."
- return self.first_name
-
- def email_user(self, subject, message, from_email=None):
- """
- Sends an email to this User.
- """
- send_mail(subject, message, from_email, [self.email])
-
- def get_profile(self):
- """
- Returns site-specific profile for this user. Raises
- SiteProfileNotAvailable if this site does not allow profiles.
- """
- warnings.warn("The use of AUTH_PROFILE_MODULE to define user profiles has been deprecated.",
- DeprecationWarning, stacklevel=2)
- if not hasattr(self, '_profile_cache'):
- from django.conf import settings
- if not getattr(settings, 'AUTH_PROFILE_MODULE', False):
- raise SiteProfileNotAvailable(
- 'You need to set AUTH_PROFILE_MODULE in your project '
- 'settings')
- try:
- app_label, model_name = settings.AUTH_PROFILE_MODULE.split('.')
- except ValueError:
- raise SiteProfileNotAvailable(
- 'app_label and model_name should be separated by a dot in '
- 'the AUTH_PROFILE_MODULE setting')
- try:
- model = models.get_model(app_label, model_name)
- if model is None:
- raise SiteProfileNotAvailable(
- 'Unable to load the profile model, check '
- 'AUTH_PROFILE_MODULE in your project settings')
- self._profile_cache = model._default_manager.using(
- self._state.db).get(user__id__exact=self.id)
- self._profile_cache.user = self
- except (ImportError, ImproperlyConfigured):
- raise SiteProfileNotAvailable
- return self._profile_cache
-
-
-class User(AbstractUser):
- """
- Users within the Django authentication system are represented by this
- model.
-
- Username, password and email are required. Other fields are optional.
- """
- class Meta(AbstractUser.Meta):
- swappable = 'AUTH_USER_MODEL'
-
-
-@python_2_unicode_compatible
-class AnonymousUser(object):
- id = None
- pk = None
- username = ''
- is_staff = False
- is_active = False
- is_superuser = False
- _groups = EmptyManager(Group)
- _user_permissions = EmptyManager(Permission)
-
- def __init__(self):
- pass
-
- def __str__(self):
- return 'AnonymousUser'
-
- def __eq__(self, other):
- return isinstance(other, self.__class__)
-
- def __ne__(self, other):
- return not self.__eq__(other)
-
- def __hash__(self):
- return 1 # instances always return the same hash value
-
- def save(self):
- raise NotImplementedError
-
- def delete(self):
- raise NotImplementedError
-
- def set_password(self, raw_password):
- raise NotImplementedError
-
- def check_password(self, raw_password):
- raise NotImplementedError
-
- def _get_groups(self):
- return self._groups
- groups = property(_get_groups)
-
- def _get_user_permissions(self):
- return self._user_permissions
- user_permissions = property(_get_user_permissions)
-
- def get_group_permissions(self, obj=None):
- return set()
-
- def get_all_permissions(self, obj=None):
- return _user_get_all_permissions(self, obj=obj)
-
- def has_perm(self, perm, obj=None):
- return _user_has_perm(self, perm, obj=obj)
-
- def has_perms(self, perm_list, obj=None):
- for perm in perm_list:
- if not self.has_perm(perm, obj):
- return False
- return True
-
- def has_module_perms(self, module):
- return _user_has_module_perms(self, module)
-
- def is_anonymous(self):
- return True
-
- def is_authenticated(self):
- return False
diff --git a/lib/python2.7/site-packages/django/contrib/auth/signals.py b/lib/python2.7/site-packages/django/contrib/auth/signals.py
deleted file mode 100644
index 71ab6a1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/signals.py
+++ /dev/null
@@ -1,5 +0,0 @@
-from django.dispatch import Signal
-
-user_logged_in = Signal(providing_args=['request', 'user'])
-user_login_failed = Signal(providing_args=['credentials'])
-user_logged_out = Signal(providing_args=['request', 'user'])
diff --git a/lib/python2.7/site-packages/django/contrib/auth/templates/registration/password_reset_subject.txt b/lib/python2.7/site-packages/django/contrib/auth/templates/registration/password_reset_subject.txt
deleted file mode 100644
index 45a354b..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/templates/registration/password_reset_subject.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-{% load i18n %}{% autoescape off %}
-{% blocktrans %}Password reset on {{ site_name }}{% endblocktrans %}
-{% endautoescape %} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/__init__.py b/lib/python2.7/site-packages/django/contrib/auth/tests/__init__.py
deleted file mode 100644
index 2c30864..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-# The password for the fixture data users is 'password'
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/custom_user.py b/lib/python2.7/site-packages/django/contrib/auth/tests/custom_user.py
deleted file mode 100644
index 394baa3..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/custom_user.py
+++ /dev/null
@@ -1,200 +0,0 @@
-from django.db import models
-from django.contrib.auth.models import (
- BaseUserManager,
- AbstractBaseUser,
- AbstractUser,
- UserManager,
- PermissionsMixin,
- Group,
- Permission,
-)
-
-
-# The custom User uses email as the unique identifier, and requires
-# that every user provide a date of birth. This lets us test
-# changes in username datatype, and non-text required fields.
-
-class CustomUserManager(BaseUserManager):
- def create_user(self, email, date_of_birth, password=None):
- """
- Creates and saves a User with the given email and password.
- """
- if not email:
- raise ValueError('Users must have an email address')
-
- user = self.model(
- email=self.normalize_email(email),
- date_of_birth=date_of_birth,
- )
-
- user.set_password(password)
- user.save(using=self._db)
- return user
-
- def create_superuser(self, email, password, date_of_birth):
- u = self.create_user(email, password=password, date_of_birth=date_of_birth)
- u.is_admin = True
- u.save(using=self._db)
- return u
-
-
-class CustomUser(AbstractBaseUser):
- email = models.EmailField(verbose_name='email address', max_length=255, unique=True)
- is_active = models.BooleanField(default=True)
- is_admin = models.BooleanField(default=False)
- date_of_birth = models.DateField()
-
- custom_objects = CustomUserManager()
-
- USERNAME_FIELD = 'email'
- REQUIRED_FIELDS = ['date_of_birth']
-
- class Meta:
- app_label = 'auth'
-
- def get_full_name(self):
- return self.email
-
- def get_short_name(self):
- return self.email
-
- def __unicode__(self):
- return self.email
-
- # Maybe required?
- def get_group_permissions(self, obj=None):
- return set()
-
- def get_all_permissions(self, obj=None):
- return set()
-
- def has_perm(self, perm, obj=None):
- return True
-
- def has_perms(self, perm_list, obj=None):
- return True
-
- def has_module_perms(self, app_label):
- return True
-
- # Admin required fields
- @property
- def is_staff(self):
- return self.is_admin
-
-
-# At this point, temporarily remove the groups and user_permissions M2M
-# fields from the AbstractUser class, so they don't clash with the related_name
-# that sets.
-
-old_au_local_m2m = AbstractUser._meta.local_many_to_many
-old_pm_local_m2m = PermissionsMixin._meta.local_many_to_many
-groups = models.ManyToManyField(Group, blank=True)
-groups.contribute_to_class(PermissionsMixin, "groups")
-user_permissions = models.ManyToManyField(Permission, blank=True)
-user_permissions.contribute_to_class(PermissionsMixin, "user_permissions")
-PermissionsMixin._meta.local_many_to_many = [groups, user_permissions]
-AbstractUser._meta.local_many_to_many = [groups, user_permissions]
-
-
-# The extension user is a simple extension of the built-in user class,
-# adding a required date_of_birth field. This allows us to check for
-# any hard references to the name "User" in forms/handlers etc.
-
-class ExtensionUser(AbstractUser):
- date_of_birth = models.DateField()
-
- custom_objects = UserManager()
-
- REQUIRED_FIELDS = AbstractUser.REQUIRED_FIELDS + ['date_of_birth']
-
- class Meta:
- app_label = 'auth'
-
-
-# The CustomPermissionsUser users email as the identifier, but uses the normal
-# Django permissions model. This allows us to check that the PermissionsMixin
-# includes everything that is needed to interact with the ModelBackend.
-
-class CustomPermissionsUserManager(CustomUserManager):
- def create_superuser(self, email, password, date_of_birth):
- u = self.create_user(email, password=password, date_of_birth=date_of_birth)
- u.is_superuser = True
- u.save(using=self._db)
- return u
-
-
-class CustomPermissionsUser(AbstractBaseUser, PermissionsMixin):
- email = models.EmailField(verbose_name='email address', max_length=255, unique=True)
- date_of_birth = models.DateField()
-
- custom_objects = CustomPermissionsUserManager()
-
- USERNAME_FIELD = 'email'
- REQUIRED_FIELDS = ['date_of_birth']
-
- class Meta:
- app_label = 'auth'
-
- def get_full_name(self):
- return self.email
-
- def get_short_name(self):
- return self.email
-
- def __unicode__(self):
- return self.email
-
-
-class IsActiveTestUser1(AbstractBaseUser):
- """
- This test user class and derivatives test the default is_active behavior
- """
- username = models.CharField(max_length=30, unique=True)
-
- custom_objects = BaseUserManager()
-
- USERNAME_FIELD = 'username'
-
- class Meta:
- app_label = 'auth'
-
- # the is_active attr is provided by AbstractBaseUser
-
-
-class CustomUserNonUniqueUsername(AbstractBaseUser):
- "A user with a non-unique username"
- username = models.CharField(max_length=30)
-
- USERNAME_FIELD = 'username'
-
- class Meta:
- app_label = 'auth'
-
-
-class CustomUserNonListRequiredFields(AbstractBaseUser):
- "A user with a non-list REQUIRED_FIELDS"
- username = models.CharField(max_length=30, unique=True)
- date_of_birth = models.DateField()
-
- USERNAME_FIELD = 'username'
- REQUIRED_FIELDS = 'date_of_birth'
-
- class Meta:
- app_label = 'auth'
-
-
-class CustomUserBadRequiredFields(AbstractBaseUser):
- "A user with a non-unique username"
- username = models.CharField(max_length=30, unique=True)
- date_of_birth = models.DateField()
-
- USERNAME_FIELD = 'username'
- REQUIRED_FIELDS = ['username', 'date_of_birth']
-
- class Meta:
- app_label = 'auth'
-
-# Undo swap hack
-AbstractUser._meta.local_many_to_many = old_au_local_m2m
-PermissionsMixin._meta.local_many_to_many = old_pm_local_m2m
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_access.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_access.html
deleted file mode 100644
index b5c65db..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_access.html
+++ /dev/null
@@ -1 +0,0 @@
-{{ user }}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_messages.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_messages.html
deleted file mode 100644
index 7b7e448..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_messages.html
+++ /dev/null
@@ -1 +0,0 @@
-{% for m in messages %}{{ m }}{% endfor %}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_no_access.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_no_access.html
deleted file mode 100644
index 8d1c8b6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_no_access.html
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perm_in_perms.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perm_in_perms.html
deleted file mode 100644
index 3a18cd7..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perm_in_perms.html
+++ /dev/null
@@ -1,4 +0,0 @@
-{% if 'auth' in perms %}Has auth permissions{% endif %}
-{% if 'auth.add_permission' in perms %}Has auth.add_permission permissions{% endif %}
-{% if 'nonexisting' in perms %}nonexisting perm found{% endif %}
-{% if 'auth.nonexisting' in perms %}auth.nonexisting perm found{% endif %}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perms.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perms.html
deleted file mode 100644
index 6f441af..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_perms.html
+++ /dev/null
@@ -1,4 +0,0 @@
-{% if perms.auth %}Has auth permissions{% endif %}
-{% if perms.auth.add_permission %}Has auth.add_permission permissions{% endif %}
-{% if perms.nonexisting %}nonexisting perm found{% endif %}
-{% if perms.auth.nonexisting in perms %}auth.nonexisting perm found{% endif %}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_test_access.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_test_access.html
deleted file mode 100644
index a28ff93..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_test_access.html
+++ /dev/null
@@ -1 +0,0 @@
-{% if session_accessed %}Session accessed{% else %}Session not accessed{% endif %}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_user.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_user.html
deleted file mode 100644
index dc4c6b1..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/context_processors/auth_attrs_user.html
+++ /dev/null
@@ -1,4 +0,0 @@
-unicode: {{ user }}
-id: {{ user.pk }}
-username: {{ user.username }}
-url: {% url 'userpage' user %}
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/logged_out.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/logged_out.html
deleted file mode 100644
index d690653..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/logged_out.html
+++ /dev/null
@@ -1 +0,0 @@
-Logged out \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/login.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/login.html
deleted file mode 100644
index 027da71..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/login.html
+++ /dev/null
@@ -1 +0,0 @@
-{{ form.as_ul }} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_change_form.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_change_form.html
deleted file mode 100644
index d960111..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_change_form.html
+++ /dev/null
@@ -1 +0,0 @@
-{{ form }} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_complete.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_complete.html
deleted file mode 100644
index 3dd79d8..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_complete.html
+++ /dev/null
@@ -1 +0,0 @@
-Password reset successfully \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_confirm.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_confirm.html
deleted file mode 100644
index 8f06c57..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_confirm.html
+++ /dev/null
@@ -1,5 +0,0 @@
-{% if validlink %}
-Please enter your new password: {{ form }}
-{% else %}
-The password reset link was invalid
-{% endif %} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_done.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_done.html
deleted file mode 100644
index c3d1d0c..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_done.html
+++ /dev/null
@@ -1 +0,0 @@
-Email sent \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_email.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_email.html
deleted file mode 100644
index baac2fc..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_email.html
+++ /dev/null
@@ -1 +0,0 @@
-{{ protocol }}://{{ domain }}/reset/{{ uid }}/{{ token }}/
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_form.html b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_form.html
deleted file mode 100644
index d960111..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_form.html
+++ /dev/null
@@ -1 +0,0 @@
-{{ form }} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_subject.txt b/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_subject.txt
deleted file mode 100644
index 904b645..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/templates/registration/password_reset_subject.txt
+++ /dev/null
@@ -1 +0,0 @@
-{% autoescape off %}Custom password reset on {{ site_name }}{% endautoescape %} \ No newline at end of file
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_auth_backends.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_auth_backends.py
deleted file mode 100644
index be53aa6..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_auth_backends.py
+++ /dev/null
@@ -1,506 +0,0 @@
-from __future__ import unicode_literals
-from datetime import date
-
-from django.conf import settings
-from django.contrib.auth.backends import ModelBackend
-from django.contrib.auth.models import User, Group, Permission, AnonymousUser
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.contrib.auth.tests.custom_user import ExtensionUser, CustomPermissionsUser, CustomUser
-from django.contrib.contenttypes.models import ContentType
-from django.core.exceptions import ImproperlyConfigured, PermissionDenied
-from django.contrib.auth import authenticate, get_user
-from django.http import HttpRequest
-from django.test import TestCase
-from django.test.utils import override_settings
-from django.contrib.auth.hashers import MD5PasswordHasher
-
-
-class CountingMD5PasswordHasher(MD5PasswordHasher):
- """Hasher that counts how many times it computes a hash."""
-
- calls = 0
-
- def encode(self, *args, **kwargs):
- type(self).calls += 1
- return super(CountingMD5PasswordHasher, self).encode(*args, **kwargs)
-
-
-class BaseModelBackendTest(object):
- """
- A base class for tests that need to validate the ModelBackend
- with different User models. Subclasses should define a class
- level UserModel attribute, and a create_users() method to
- construct two users for test purposes.
- """
- backend = 'django.contrib.auth.backends.ModelBackend'
-
- def setUp(self):
- self.curr_auth = settings.AUTHENTICATION_BACKENDS
- settings.AUTHENTICATION_BACKENDS = (self.backend,)
- self.create_users()
-
- def tearDown(self):
- settings.AUTHENTICATION_BACKENDS = self.curr_auth
- # The custom_perms test messes with ContentTypes, which will
- # be cached; flush the cache to ensure there are no side effects
- # Refs #14975, #14925
- ContentType.objects.clear_cache()
-
- def test_has_perm(self):
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- self.assertEqual(user.has_perm('auth.test'), False)
- user.is_staff = True
- user.save()
- self.assertEqual(user.has_perm('auth.test'), False)
- user.is_superuser = True
- user.save()
- self.assertEqual(user.has_perm('auth.test'), True)
- user.is_staff = False
- user.is_superuser = False
- user.save()
- self.assertEqual(user.has_perm('auth.test'), False)
- user.is_staff = True
- user.is_superuser = True
- user.is_active = False
- user.save()
- self.assertEqual(user.has_perm('auth.test'), False)
-
- def test_custom_perms(self):
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- content_type = ContentType.objects.get_for_model(Group)
- perm = Permission.objects.create(name='test', content_type=content_type, codename='test')
- user.user_permissions.add(perm)
- user.save()
-
- # reloading user to purge the _perm_cache
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- self.assertEqual(user.get_all_permissions() == set(['auth.test']), True)
- self.assertEqual(user.get_group_permissions(), set([]))
- self.assertEqual(user.has_module_perms('Group'), False)
- self.assertEqual(user.has_module_perms('auth'), True)
- perm = Permission.objects.create(name='test2', content_type=content_type, codename='test2')
- user.user_permissions.add(perm)
- user.save()
- perm = Permission.objects.create(name='test3', content_type=content_type, codename='test3')
- user.user_permissions.add(perm)
- user.save()
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- self.assertEqual(user.get_all_permissions(), set(['auth.test2', 'auth.test', 'auth.test3']))
- self.assertEqual(user.has_perm('test'), False)
- self.assertEqual(user.has_perm('auth.test'), True)
- self.assertEqual(user.has_perms(['auth.test2', 'auth.test3']), True)
- perm = Permission.objects.create(name='test_group', content_type=content_type, codename='test_group')
- group = Group.objects.create(name='test_group')
- group.permissions.add(perm)
- group.save()
- user.groups.add(group)
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- exp = set(['auth.test2', 'auth.test', 'auth.test3', 'auth.test_group'])
- self.assertEqual(user.get_all_permissions(), exp)
- self.assertEqual(user.get_group_permissions(), set(['auth.test_group']))
- self.assertEqual(user.has_perms(['auth.test3', 'auth.test_group']), True)
-
- user = AnonymousUser()
- self.assertEqual(user.has_perm('test'), False)
- self.assertEqual(user.has_perms(['auth.test2', 'auth.test3']), False)
-
- def test_has_no_object_perm(self):
- """Regressiontest for #12462"""
- user = self.UserModel._default_manager.get(pk=self.user.pk)
- content_type = ContentType.objects.get_for_model(Group)
- perm = Permission.objects.create(name='test', content_type=content_type, codename='test')
- user.user_permissions.add(perm)
- user.save()
-
- self.assertEqual(user.has_perm('auth.test', 'object'), False)
- self.assertEqual(user.get_all_permissions('object'), set([]))
- self.assertEqual(user.has_perm('auth.test'), True)
- self.assertEqual(user.get_all_permissions(), set(['auth.test']))
-
- def test_get_all_superuser_permissions(self):
- """A superuser has all permissions. Refs #14795."""
- user = self.UserModel._default_manager.get(pk=self.superuser.pk)
- self.assertEqual(len(user.get_all_permissions()), len(Permission.objects.all()))
-
- @override_settings(PASSWORD_HASHERS=('django.contrib.auth.tests.test_auth_backends.CountingMD5PasswordHasher',))
- def test_authentication_timing(self):
- """Hasher is run once regardless of whether the user exists. Refs #20760."""
- # Re-set the password, because this tests overrides PASSWORD_HASHERS
- self.user.set_password('test')
- self.user.save()
-
- CountingMD5PasswordHasher.calls = 0
- username = getattr(self.user, self.UserModel.USERNAME_FIELD)
- authenticate(username=username, password='test')
- self.assertEqual(CountingMD5PasswordHasher.calls, 1)
-
- CountingMD5PasswordHasher.calls = 0
- authenticate(username='no_such_user', password='test')
- self.assertEqual(CountingMD5PasswordHasher.calls, 1)
-
-
-@skipIfCustomUser
-class ModelBackendTest(BaseModelBackendTest, TestCase):
- """
- Tests for the ModelBackend using the default User model.
- """
- UserModel = User
-
- def create_users(self):
- self.user = User.objects.create_user(
- username='test',
- email='test@example.com',
- password='test',
- )
- self.superuser = User.objects.create_superuser(
- username='test2',
- email='test2@example.com',
- password='test',
- )
-
-
-@override_settings(AUTH_USER_MODEL='auth.ExtensionUser')
-class ExtensionUserModelBackendTest(BaseModelBackendTest, TestCase):
- """
- Tests for the ModelBackend using the custom ExtensionUser model.
-
- This isn't a perfect test, because both the User and ExtensionUser are
- synchronized to the database, which wouldn't ordinary happen in
- production. As a result, it doesn't catch errors caused by the non-
- existence of the User table.
-
- The specific problem is queries on .filter(groups__user) et al, which
- makes an implicit assumption that the user model is called 'User'. In
- production, the auth.User table won't exist, so the requested join
- won't exist either; in testing, the auth.User *does* exist, and
- so does the join. However, the join table won't contain any useful
- data; for testing, we check that the data we expect actually does exist.
- """
-
- UserModel = ExtensionUser
-
- def create_users(self):
- self.user = ExtensionUser._default_manager.create_user(
- username='test',
- email='test@example.com',
- password='test',
- date_of_birth=date(2006, 4, 25)
- )
- self.superuser = ExtensionUser._default_manager.create_superuser(
- username='test2',
- email='test2@example.com',
- password='test',
- date_of_birth=date(1976, 11, 8)
- )
-
-
-@override_settings(AUTH_USER_MODEL='auth.CustomPermissionsUser')
-class CustomPermissionsUserModelBackendTest(BaseModelBackendTest, TestCase):
- """
- Tests for the ModelBackend using the CustomPermissionsUser model.
-
- As with the ExtensionUser test, this isn't a perfect test, because both
- the User and CustomPermissionsUser are synchronized to the database,
- which wouldn't ordinary happen in production.
- """
-
- UserModel = CustomPermissionsUser
-
- def create_users(self):
- self.user = CustomPermissionsUser._default_manager.create_user(
- email='test@example.com',
- password='test',
- date_of_birth=date(2006, 4, 25)
- )
- self.superuser = CustomPermissionsUser._default_manager.create_superuser(
- email='test2@example.com',
- password='test',
- date_of_birth=date(1976, 11, 8)
- )
-
-
-@override_settings(AUTH_USER_MODEL='auth.CustomUser')
-class CustomUserModelBackendAuthenticateTest(TestCase):
- """
- Tests that the model backend can accept a credentials kwarg labeled with
- custom user model's USERNAME_FIELD.
- """
-
- def test_authenticate(self):
- test_user = CustomUser._default_manager.create_user(
- email='test@example.com',
- password='test',
- date_of_birth=date(2006, 4, 25)
- )
- authenticated_user = authenticate(email='test@example.com', password='test')
- self.assertEqual(test_user, authenticated_user)
-
-
-
-class TestObj(object):
- pass
-
-
-class SimpleRowlevelBackend(object):
- def has_perm(self, user, perm, obj=None):
- if not obj:
- return # We only support row level perms
-
- if isinstance(obj, TestObj):
- if user.username == 'test2':
- return True
- elif user.is_anonymous() and perm == 'anon':
- return True
- elif not user.is_active and perm == 'inactive':
- return True
- return False
-
- def has_module_perms(self, user, app_label):
- if not user.is_anonymous() and not user.is_active:
- return False
- return app_label == "app1"
-
- def get_all_permissions(self, user, obj=None):
- if not obj:
- return [] # We only support row level perms
-
- if not isinstance(obj, TestObj):
- return ['none']
-
- if user.is_anonymous():
- return ['anon']
- if user.username == 'test2':
- return ['simple', 'advanced']
- else:
- return ['simple']
-
- def get_group_permissions(self, user, obj=None):
- if not obj:
- return # We only support row level perms
-
- if not isinstance(obj, TestObj):
- return ['none']
-
- if 'test_group' in [group.name for group in user.groups.all()]:
- return ['group_perm']
- else:
- return ['none']
-
-
-@skipIfCustomUser
-class RowlevelBackendTest(TestCase):
- """
- Tests for auth backend that supports object level permissions
- """
- backend = 'django.contrib.auth.tests.test_auth_backends.SimpleRowlevelBackend'
-
- def setUp(self):
- self.curr_auth = settings.AUTHENTICATION_BACKENDS
- settings.AUTHENTICATION_BACKENDS = tuple(self.curr_auth) + (self.backend,)
- self.user1 = User.objects.create_user('test', 'test@example.com', 'test')
- self.user2 = User.objects.create_user('test2', 'test2@example.com', 'test')
- self.user3 = User.objects.create_user('test3', 'test3@example.com', 'test')
-
- def tearDown(self):
- settings.AUTHENTICATION_BACKENDS = self.curr_auth
- # The get_group_permissions test messes with ContentTypes, which will
- # be cached; flush the cache to ensure there are no side effects
- # Refs #14975, #14925
- ContentType.objects.clear_cache()
-
- def test_has_perm(self):
- self.assertEqual(self.user1.has_perm('perm', TestObj()), False)
- self.assertEqual(self.user2.has_perm('perm', TestObj()), True)
- self.assertEqual(self.user2.has_perm('perm'), False)
- self.assertEqual(self.user2.has_perms(['simple', 'advanced'], TestObj()), True)
- self.assertEqual(self.user3.has_perm('perm', TestObj()), False)
- self.assertEqual(self.user3.has_perm('anon', TestObj()), False)
- self.assertEqual(self.user3.has_perms(['simple', 'advanced'], TestObj()), False)
-
- def test_get_all_permissions(self):
- self.assertEqual(self.user1.get_all_permissions(TestObj()), set(['simple']))
- self.assertEqual(self.user2.get_all_permissions(TestObj()), set(['simple', 'advanced']))
- self.assertEqual(self.user2.get_all_permissions(), set([]))
-
- def test_get_group_permissions(self):
- group = Group.objects.create(name='test_group')
- self.user3.groups.add(group)
- self.assertEqual(self.user3.get_group_permissions(TestObj()), set(['group_perm']))
-
-
-class AnonymousUserBackendTest(TestCase):
- """
- Tests for AnonymousUser delegating to backend.
- """
-
- backend = 'django.contrib.auth.tests.test_auth_backends.SimpleRowlevelBackend'
-
- def setUp(self):
- self.curr_auth = settings.AUTHENTICATION_BACKENDS
- settings.AUTHENTICATION_BACKENDS = (self.backend,)
- self.user1 = AnonymousUser()
-
- def tearDown(self):
- settings.AUTHENTICATION_BACKENDS = self.curr_auth
-
- def test_has_perm(self):
- self.assertEqual(self.user1.has_perm('perm', TestObj()), False)
- self.assertEqual(self.user1.has_perm('anon', TestObj()), True)
-
- def test_has_perms(self):
- self.assertEqual(self.user1.has_perms(['anon'], TestObj()), True)
- self.assertEqual(self.user1.has_perms(['anon', 'perm'], TestObj()), False)
-
- def test_has_module_perms(self):
- self.assertEqual(self.user1.has_module_perms("app1"), True)
- self.assertEqual(self.user1.has_module_perms("app2"), False)
-
- def test_get_all_permissions(self):
- self.assertEqual(self.user1.get_all_permissions(TestObj()), set(['anon']))
-
-
-@skipIfCustomUser
-@override_settings(AUTHENTICATION_BACKENDS=[])
-class NoBackendsTest(TestCase):
- """
- Tests that an appropriate error is raised if no auth backends are provided.
- """
- def setUp(self):
- self.user = User.objects.create_user('test', 'test@example.com', 'test')
-
- def test_raises_exception(self):
- self.assertRaises(ImproperlyConfigured, self.user.has_perm, ('perm', TestObj(),))
-
-
-@skipIfCustomUser
-class InActiveUserBackendTest(TestCase):
- """
- Tests for a inactive user
- """
- backend = 'django.contrib.auth.tests.test_auth_backends.SimpleRowlevelBackend'
-
- def setUp(self):
- self.curr_auth = settings.AUTHENTICATION_BACKENDS
- settings.AUTHENTICATION_BACKENDS = (self.backend,)
- self.user1 = User.objects.create_user('test', 'test@example.com', 'test')
- self.user1.is_active = False
- self.user1.save()
-
- def tearDown(self):
- settings.AUTHENTICATION_BACKENDS = self.curr_auth
-
- def test_has_perm(self):
- self.assertEqual(self.user1.has_perm('perm', TestObj()), False)
- self.assertEqual(self.user1.has_perm('inactive', TestObj()), True)
-
- def test_has_module_perms(self):
- self.assertEqual(self.user1.has_module_perms("app1"), False)
- self.assertEqual(self.user1.has_module_perms("app2"), False)
-
-
-class PermissionDeniedBackend(object):
- """
- Always raises PermissionDenied.
- """
- supports_object_permissions = True
- supports_anonymous_user = True
- supports_inactive_user = True
-
- def authenticate(self, username=None, password=None):
- raise PermissionDenied
-
-
-@skipIfCustomUser
-class PermissionDeniedBackendTest(TestCase):
- """
- Tests that other backends are not checked once a backend raises PermissionDenied
- """
- backend = 'django.contrib.auth.tests.test_auth_backends.PermissionDeniedBackend'
-
- def setUp(self):
- self.user1 = User.objects.create_user('test', 'test@example.com', 'test')
- self.user1.save()
-
- @override_settings(AUTHENTICATION_BACKENDS=(backend, ) +
- tuple(settings.AUTHENTICATION_BACKENDS))
- def test_permission_denied(self):
- "user is not authenticated after a backend raises permission denied #2550"
- self.assertEqual(authenticate(username='test', password='test'), None)
-
- @override_settings(AUTHENTICATION_BACKENDS=tuple(
- settings.AUTHENTICATION_BACKENDS) + (backend, ))
- def test_authenticates(self):
- self.assertEqual(authenticate(username='test', password='test'), self.user1)
-
-
-class NewModelBackend(ModelBackend):
- pass
-
-
-@skipIfCustomUser
-class ChangedBackendSettingsTest(TestCase):
- """
- Tests for changes in the settings.AUTHENTICATION_BACKENDS
- """
- backend = 'django.contrib.auth.tests.test_auth_backends.NewModelBackend'
-
- TEST_USERNAME = 'test_user'
- TEST_PASSWORD = 'test_password'
- TEST_EMAIL = 'test@example.com'
-
- def setUp(self):
- User.objects.create_user(self.TEST_USERNAME,
- self.TEST_EMAIL,
- self.TEST_PASSWORD)
-
- @override_settings(AUTHENTICATION_BACKENDS=(backend, ))
- def test_changed_backend_settings(self):
- """
- Tests that removing a backend configured in AUTHENTICATION_BACKENDS
- make already logged-in users disconnect.
- """
-
- # Get a session for the test user
- self.assertTrue(self.client.login(
- username=self.TEST_USERNAME,
- password=self.TEST_PASSWORD)
- )
-
- # Prepare a request object
- request = HttpRequest()
- request.session = self.client.session
-
- # Remove NewModelBackend
- with self.settings(AUTHENTICATION_BACKENDS=(
- 'django.contrib.auth.backends.ModelBackend',)):
- # Get the user from the request
- user = get_user(request)
-
- # Assert that the user retrieval is successful and the user is
- # anonymous as the backend is not longer available.
- self.assertIsNotNone(user)
- self.assertTrue(user.is_anonymous())
-
-
-@skipIfCustomUser
-class ImproperlyConfiguredUserModelTest(TestCase):
- """
- Tests that an exception from within get_user_model is propagated and doesn't
- raise an UnboundLocalError.
-
- Regression test for ticket #21439
- """
- def setUp(self):
- self.user1 = User.objects.create_user('test', 'test@example.com', 'test')
- self.client.login(
- username='test',
- password='test'
- )
-
- @override_settings(AUTH_USER_MODEL='thismodel.doesntexist')
- def test_does_not_shadow_exception(self):
- # Prepare a request object
- request = HttpRequest()
- request.session = self.client.session
-
- self.assertRaises(ImproperlyConfigured, get_user, request)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_basic.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_basic.py
deleted file mode 100644
index 5779083..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_basic.py
+++ /dev/null
@@ -1,257 +0,0 @@
-# -*- encoding: utf-8 -*-
-from __future__ import unicode_literals
-
-import locale
-
-from django.contrib.auth import get_user_model
-from django.contrib.auth.management.commands import createsuperuser
-from django.contrib.auth.models import User, AnonymousUser
-from django.contrib.auth.tests.custom_user import CustomUser
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.core.exceptions import ImproperlyConfigured
-from django.core.management import call_command
-from django.dispatch import receiver
-from django.test import TestCase
-from django.test.signals import setting_changed
-from django.test.utils import override_settings
-from django.utils import translation
-from django.utils.encoding import force_str
-from django.utils.six import binary_type, PY2, StringIO
-
-
-@receiver(setting_changed)
-def user_model_swapped(**kwargs):
- if kwargs['setting'] == 'AUTH_USER_MODEL':
- from django.db.models.manager import ensure_default_manager
- from django.contrib.auth.models import User
- # Reset User manager
- setattr(User, 'objects', User._default_manager)
- ensure_default_manager(User)
-
-
-def mock_inputs(inputs):
- """
- Decorator to temporarily replace input/getpass to allow interactive
- createsuperuser.
- """
- def inner(test_func):
- def wrapped(*args):
- class mock_getpass:
- @staticmethod
- def getpass(prompt=b'Password: ', stream=None):
- if PY2:
- # getpass on Windows only supports prompt as bytestring (#19807)
- assert isinstance(prompt, binary_type)
- return inputs['password']
-
- def mock_input(prompt):
- # prompt should be encoded in Python 2. This line will raise an
- # Exception if prompt contains unencoded non-ascii on Python 2.
- prompt = str(prompt)
- assert str('__proxy__') not in prompt
- response = ''
- for key, val in inputs.items():
- if force_str(key) in prompt.lower():
- response = val
- break
- return response
-
- old_getpass = createsuperuser.getpass
- old_input = createsuperuser.input
- createsuperuser.getpass = mock_getpass
- createsuperuser.input = mock_input
- try:
- test_func(*args)
- finally:
- createsuperuser.getpass = old_getpass
- createsuperuser.input = old_input
- return wrapped
- return inner
-
-
-@skipIfCustomUser
-class BasicTestCase(TestCase):
- def test_user(self):
- "Check that users can be created and can set their password"
- u = User.objects.create_user('testuser', 'test@example.com', 'testpw')
- self.assertTrue(u.has_usable_password())
- self.assertFalse(u.check_password('bad'))
- self.assertTrue(u.check_password('testpw'))
-
- # Check we can manually set an unusable password
- u.set_unusable_password()
- u.save()
- self.assertFalse(u.check_password('testpw'))
- self.assertFalse(u.has_usable_password())
- u.set_password('testpw')
- self.assertTrue(u.check_password('testpw'))
- u.set_password(None)
- self.assertFalse(u.has_usable_password())
-
- # Check authentication/permissions
- self.assertTrue(u.is_authenticated())
- self.assertFalse(u.is_staff)
- self.assertTrue(u.is_active)
- self.assertFalse(u.is_superuser)
-
- # Check API-based user creation with no password
- u2 = User.objects.create_user('testuser2', 'test2@example.com')
- self.assertFalse(u2.has_usable_password())
-
- def test_user_no_email(self):
- "Check that users can be created without an email"
- u = User.objects.create_user('testuser1')
- self.assertEqual(u.email, '')
-
- u2 = User.objects.create_user('testuser2', email='')
- self.assertEqual(u2.email, '')
-
- u3 = User.objects.create_user('testuser3', email=None)
- self.assertEqual(u3.email, '')
-
- def test_anonymous_user(self):
- "Check the properties of the anonymous user"
- a = AnonymousUser()
- self.assertEqual(a.pk, None)
- self.assertFalse(a.is_authenticated())
- self.assertFalse(a.is_staff)
- self.assertFalse(a.is_active)
- self.assertFalse(a.is_superuser)
- self.assertEqual(a.groups.all().count(), 0)
- self.assertEqual(a.user_permissions.all().count(), 0)
-
- def test_superuser(self):
- "Check the creation and properties of a superuser"
- super = User.objects.create_superuser('super', 'super@example.com', 'super')
- self.assertTrue(super.is_superuser)
- self.assertTrue(super.is_active)
- self.assertTrue(super.is_staff)
-
- def test_createsuperuser_management_command(self):
- "Check the operation of the createsuperuser management command"
- # We can use the management command to create a superuser
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- username="joe",
- email="joe@somewhere.org",
- stdout=new_io
- )
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, 'Superuser created successfully.')
- u = User.objects.get(username="joe")
- self.assertEqual(u.email, 'joe@somewhere.org')
-
- # created password should be unusable
- self.assertFalse(u.has_usable_password())
-
- # We can supress output on the management command
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- username="joe2",
- email="joe2@somewhere.org",
- verbosity=0,
- stdout=new_io
- )
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, '')
- u = User.objects.get(username="joe2")
- self.assertEqual(u.email, 'joe2@somewhere.org')
- self.assertFalse(u.has_usable_password())
-
- call_command("createsuperuser",
- interactive=False,
- username="joe+admin@somewhere.org",
- email="joe@somewhere.org",
- verbosity=0
- )
- u = User.objects.get(username="joe+admin@somewhere.org")
- self.assertEqual(u.email, 'joe@somewhere.org')
- self.assertFalse(u.has_usable_password())
-
- @mock_inputs({'password': "nopasswd"})
- def test_createsuperuser_nolocale(self):
- """
- Check that createsuperuser does not break when no locale is set. See
- ticket #16017.
- """
-
- old_getdefaultlocale = locale.getdefaultlocale
- try:
- # Temporarily remove locale information
- locale.getdefaultlocale = lambda: (None, None)
-
- # Call the command in this new environment
- call_command("createsuperuser",
- interactive=True,
- username="nolocale@somewhere.org",
- email="nolocale@somewhere.org",
- verbosity=0
- )
-
- except TypeError:
- self.fail("createsuperuser fails if the OS provides no information about the current locale")
-
- finally:
- # Re-apply locale information
- locale.getdefaultlocale = old_getdefaultlocale
-
- # If we were successful, a user should have been created
- u = User.objects.get(username="nolocale@somewhere.org")
- self.assertEqual(u.email, 'nolocale@somewhere.org')
-
- @mock_inputs({
- 'password': "nopasswd",
- 'uživatel': 'foo', # username (cz)
- 'email': 'nolocale@somewhere.org'})
- def test_createsuperuser_non_ascii_verbose_name(self):
- # Aliased so the string doesn't get extracted
- from django.utils.translation import ugettext_lazy as ulazy
- username_field = User._meta.get_field('username')
- old_verbose_name = username_field.verbose_name
- username_field.verbose_name = ulazy('uživatel')
- new_io = StringIO()
- try:
- call_command("createsuperuser",
- interactive=True,
- stdout=new_io
- )
- finally:
- username_field.verbose_name = old_verbose_name
-
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, 'Superuser created successfully.')
-
- def test_get_user_model(self):
- "The current user model can be retrieved"
- self.assertEqual(get_user_model(), User)
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUser')
- def test_swappable_user(self):
- "The current user model can be swapped out for another"
- self.assertEqual(get_user_model(), CustomUser)
- with self.assertRaises(AttributeError):
- User.objects.all()
-
- @override_settings(AUTH_USER_MODEL='badsetting')
- def test_swappable_user_bad_setting(self):
- "The alternate user setting must point to something in the format app.model"
- with self.assertRaises(ImproperlyConfigured):
- get_user_model()
-
- @override_settings(AUTH_USER_MODEL='thismodel.doesntexist')
- def test_swappable_user_nonexistent_model(self):
- "The current user model must point to an installed model"
- with self.assertRaises(ImproperlyConfigured):
- get_user_model()
-
- @skipIfCustomUser
- def test_user_verbose_names_translatable(self):
- "Default User model verbose names are translatable (#19945)"
- with translation.override('en'):
- self.assertEqual(User._meta.verbose_name, 'user')
- self.assertEqual(User._meta.verbose_name_plural, 'users')
- with translation.override('es'):
- self.assertEqual(User._meta.verbose_name, 'usuario')
- self.assertEqual(User._meta.verbose_name_plural, 'usuarios')
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_context_processors.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_context_processors.py
deleted file mode 100644
index 9e56cfc..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_context_processors.py
+++ /dev/null
@@ -1,170 +0,0 @@
-import os
-
-from django.conf import global_settings
-from django.contrib.auth import authenticate
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.contrib.auth.models import User, Permission
-from django.contrib.contenttypes.models import ContentType
-from django.contrib.auth.context_processors import PermWrapper, PermLookupDict
-from django.db.models import Q
-from django.test import TestCase
-from django.test.utils import override_settings
-from django.utils._os import upath
-
-
-class MockUser(object):
- def has_module_perms(self, perm):
- if perm == 'mockapp':
- return True
- return False
-
- def has_perm(self, perm):
- if perm == 'mockapp.someperm':
- return True
- return False
-
-
-class PermWrapperTests(TestCase):
- """
- Test some details of the PermWrapper implementation.
- """
- class EQLimiterObject(object):
- """
- This object makes sure __eq__ will not be called endlessly.
- """
- def __init__(self):
- self.eq_calls = 0
-
- def __eq__(self, other):
- if self.eq_calls > 0:
- return True
- self.eq_calls += 1
- return False
-
- def test_permwrapper_in(self):
- """
- Test that 'something' in PermWrapper works as expected.
- """
- perms = PermWrapper(MockUser())
- # Works for modules and full permissions.
- self.assertTrue('mockapp' in perms)
- self.assertFalse('nonexisting' in perms)
- self.assertTrue('mockapp.someperm' in perms)
- self.assertFalse('mockapp.nonexisting' in perms)
-
- def test_permlookupdict_in(self):
- """
- No endless loops if accessed with 'in' - refs #18979.
- """
- pldict = PermLookupDict(MockUser(), 'mockapp')
- with self.assertRaises(TypeError):
- self.EQLimiterObject() in pldict
-
-
-@skipIfCustomUser
-@override_settings(
- TEMPLATE_LOADERS=('django.template.loaders.filesystem.Loader',),
- TEMPLATE_DIRS=(
- os.path.join(os.path.dirname(upath(__file__)), 'templates'),
- ),
- USE_TZ=False, # required for loading the fixture
- PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',),
-)
-class AuthContextProcessorTests(TestCase):
- """
- Tests for the ``django.contrib.auth.context_processors.auth`` processor
- """
- urls = 'django.contrib.auth.tests.urls'
- fixtures = ['context-processors-users.xml']
-
- @override_settings(
- MIDDLEWARE_CLASSES=global_settings.MIDDLEWARE_CLASSES,
- TEMPLATE_CONTEXT_PROCESSORS=global_settings.TEMPLATE_CONTEXT_PROCESSORS,
- )
- def test_session_not_accessed(self):
- """
- Tests that the session is not accessed simply by including
- the auth context processor
- """
- response = self.client.get('/auth_processor_no_attr_access/')
- self.assertContains(response, "Session not accessed")
-
- @override_settings(
- MIDDLEWARE_CLASSES=global_settings.MIDDLEWARE_CLASSES,
- TEMPLATE_CONTEXT_PROCESSORS=global_settings.TEMPLATE_CONTEXT_PROCESSORS,
- )
- def test_session_is_accessed(self):
- """
- Tests that the session is accessed if the auth context processor
- is used and relevant attributes accessed.
- """
- response = self.client.get('/auth_processor_attr_access/')
- self.assertContains(response, "Session accessed")
-
- def test_perms_attrs(self):
- u = User.objects.create_user(username='normal', password='secret')
- u.user_permissions.add(
- Permission.objects.get(
- content_type=ContentType.objects.get_for_model(Permission),
- codename='add_permission'))
- self.client.login(username='normal', password='secret')
- response = self.client.get('/auth_processor_perms/')
- self.assertContains(response, "Has auth permissions")
- self.assertContains(response, "Has auth.add_permission permissions")
- self.assertNotContains(response, "nonexisting")
-
- def test_perm_in_perms_attrs(self):
- u = User.objects.create_user(username='normal', password='secret')
- u.user_permissions.add(
- Permission.objects.get(
- content_type=ContentType.objects.get_for_model(Permission),
- codename='add_permission'))
- self.client.login(username='normal', password='secret')
- response = self.client.get('/auth_processor_perm_in_perms/')
- self.assertContains(response, "Has auth permissions")
- self.assertContains(response, "Has auth.add_permission permissions")
- self.assertNotContains(response, "nonexisting")
-
- def test_message_attrs(self):
- self.client.login(username='super', password='secret')
- response = self.client.get('/auth_processor_messages/')
- self.assertContains(response, "Message 1")
-
- def test_user_attrs(self):
- """
- Test that the lazy objects returned behave just like the wrapped objects.
- """
- # These are 'functional' level tests for common use cases. Direct
- # testing of the implementation (SimpleLazyObject) is in the 'utils'
- # tests.
- self.client.login(username='super', password='secret')
- user = authenticate(username='super', password='secret')
- response = self.client.get('/auth_processor_user/')
- self.assertContains(response, "unicode: super")
- self.assertContains(response, "id: 100")
- self.assertContains(response, "username: super")
- # bug #12037 is tested by the {% url %} in the template:
- self.assertContains(response, "url: /userpage/super/")
-
- # See if this object can be used for queries where a Q() comparing
- # a user can be used with another Q() (in an AND or OR fashion).
- # This simulates what a template tag might do with the user from the
- # context. Note that we don't need to execute a query, just build it.
- #
- # The failure case (bug #12049) on Python 2.4 with a LazyObject-wrapped
- # User is a fatal TypeError: "function() takes at least 2 arguments
- # (0 given)" deep inside deepcopy().
- #
- # Python 2.5 and 2.6 succeeded, but logged internally caught exception
- # spew:
- #
- # Exception RuntimeError: 'maximum recursion depth exceeded while
- # calling a Python object' in <type 'exceptions.AttributeError'>
- # ignored"
- query = Q(user=response.context['user']) & Q(someflag=True)
-
- # Tests for user equality. This is hard because User defines
- # equality in a non-duck-typing way
- # See bug #12060
- self.assertEqual(response.context['user'], user)
- self.assertEqual(user, response.context['user'])
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_decorators.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_decorators.py
deleted file mode 100644
index 6d6d335..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_decorators.py
+++ /dev/null
@@ -1,51 +0,0 @@
-from django.conf import settings
-from django.contrib.auth.decorators import login_required
-from django.contrib.auth.tests.test_views import AuthViewsTestCase
-from django.contrib.auth.tests.utils import skipIfCustomUser
-
-
-@skipIfCustomUser
-class LoginRequiredTestCase(AuthViewsTestCase):
- """
- Tests the login_required decorators
- """
- urls = 'django.contrib.auth.tests.urls'
-
- def testCallable(self):
- """
- Check that login_required is assignable to callable objects.
- """
- class CallableView(object):
- def __call__(self, *args, **kwargs):
- pass
- login_required(CallableView())
-
- def testView(self):
- """
- Check that login_required is assignable to normal views.
- """
- def normal_view(request):
- pass
- login_required(normal_view)
-
- def testLoginRequired(self, view_url='/login_required/', login_url=None):
- """
- Check that login_required works on a simple view wrapped in a
- login_required decorator.
- """
- if login_url is None:
- login_url = settings.LOGIN_URL
- response = self.client.get(view_url)
- self.assertEqual(response.status_code, 302)
- self.assertTrue(login_url in response.url)
- self.login()
- response = self.client.get(view_url)
- self.assertEqual(response.status_code, 200)
-
- def testLoginRequiredNextUrl(self):
- """
- Check that login_required works on a simple view wrapped in a
- login_required decorator with a login_url set.
- """
- self.testLoginRequired(view_url='/login_required_login_url/',
- login_url='/somewhere/')
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_forms.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_forms.py
deleted file mode 100644
index ee2c109..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_forms.py
+++ /dev/null
@@ -1,432 +0,0 @@
-from __future__ import unicode_literals
-
-import os
-
-from django.contrib.auth import get_user_model
-from django.contrib.auth.models import User
-from django.contrib.auth.forms import (UserCreationForm, AuthenticationForm,
- PasswordChangeForm, SetPasswordForm, UserChangeForm, PasswordResetForm,
- ReadOnlyPasswordHashField, ReadOnlyPasswordHashWidget)
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.core import mail
-from django.forms.fields import Field, CharField
-from django.test import TestCase
-from django.test.utils import override_settings
-from django.utils.encoding import force_text
-from django.utils._os import upath
-from django.utils import translation
-from django.utils.text import capfirst
-from django.utils.translation import ugettext as _
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class UserCreationFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def test_user_already_exists(self):
- data = {
- 'username': 'testclient',
- 'password1': 'test123',
- 'password2': 'test123',
- }
- form = UserCreationForm(data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["username"].errors,
- [force_text(form.error_messages['duplicate_username'])])
-
- def test_invalid_data(self):
- data = {
- 'username': 'jsmith!',
- 'password1': 'test123',
- 'password2': 'test123',
- }
- form = UserCreationForm(data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["username"].errors,
- [force_text(form.fields['username'].error_messages['invalid'])])
-
- def test_password_verification(self):
- # The verification password is incorrect.
- data = {
- 'username': 'jsmith',
- 'password1': 'test123',
- 'password2': 'test',
- }
- form = UserCreationForm(data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["password2"].errors,
- [force_text(form.error_messages['password_mismatch'])])
-
- def test_both_passwords(self):
- # One (or both) passwords weren't given
- data = {'username': 'jsmith'}
- form = UserCreationForm(data)
- required_error = [force_text(Field.default_error_messages['required'])]
- self.assertFalse(form.is_valid())
- self.assertEqual(form['password1'].errors, required_error)
- self.assertEqual(form['password2'].errors, required_error)
-
- data['password2'] = 'test123'
- form = UserCreationForm(data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form['password1'].errors, required_error)
- self.assertEqual(form['password2'].errors, [])
-
- def test_success(self):
- # The success case.
- data = {
- 'username': 'jsmith@example.com',
- 'password1': 'test123',
- 'password2': 'test123',
- }
- form = UserCreationForm(data)
- self.assertTrue(form.is_valid())
- u = form.save()
- self.assertEqual(repr(u), '<User: jsmith@example.com>')
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class AuthenticationFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def test_invalid_username(self):
- # The user submits an invalid username.
-
- data = {
- 'username': 'jsmith_does_not_exist',
- 'password': 'test123',
- }
- form = AuthenticationForm(None, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form.non_field_errors(),
- [force_text(form.error_messages['invalid_login'] % {
- 'username': User._meta.get_field('username').verbose_name
- })])
-
- def test_inactive_user(self):
- # The user is inactive.
- data = {
- 'username': 'inactive',
- 'password': 'password',
- }
- form = AuthenticationForm(None, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form.non_field_errors(),
- [force_text(form.error_messages['inactive'])])
-
- def test_inactive_user_i18n(self):
- with self.settings(USE_I18N=True):
- with translation.override('pt-br', deactivate=True):
- # The user is inactive.
- data = {
- 'username': 'inactive',
- 'password': 'password',
- }
- form = AuthenticationForm(None, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form.non_field_errors(),
- [force_text(form.error_messages['inactive'])])
-
- def test_success(self):
- # The success case
- data = {
- 'username': 'testclient',
- 'password': 'password',
- }
- form = AuthenticationForm(None, data)
- self.assertTrue(form.is_valid())
- self.assertEqual(form.non_field_errors(), [])
-
- def test_username_field_label(self):
-
- class CustomAuthenticationForm(AuthenticationForm):
- username = CharField(label="Name", max_length=75)
-
- form = CustomAuthenticationForm()
- self.assertEqual(form['username'].label, "Name")
-
- def test_username_field_label_not_set(self):
-
- class CustomAuthenticationForm(AuthenticationForm):
- username = CharField()
-
- form = CustomAuthenticationForm()
- UserModel = get_user_model()
- username_field = UserModel._meta.get_field(UserModel.USERNAME_FIELD)
- self.assertEqual(form.fields['username'].label, capfirst(username_field.verbose_name))
-
- def test_username_field_label_empty_string(self):
-
- class CustomAuthenticationForm(AuthenticationForm):
- username = CharField(label='')
-
- form = CustomAuthenticationForm()
- self.assertEqual(form.fields['username'].label, "")
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class SetPasswordFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def test_password_verification(self):
- # The two new passwords do not match.
- user = User.objects.get(username='testclient')
- data = {
- 'new_password1': 'abc123',
- 'new_password2': 'abc',
- }
- form = SetPasswordForm(user, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["new_password2"].errors,
- [force_text(form.error_messages['password_mismatch'])])
-
- def test_success(self):
- user = User.objects.get(username='testclient')
- data = {
- 'new_password1': 'abc123',
- 'new_password2': 'abc123',
- }
- form = SetPasswordForm(user, data)
- self.assertTrue(form.is_valid())
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class PasswordChangeFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def test_incorrect_password(self):
- user = User.objects.get(username='testclient')
- data = {
- 'old_password': 'test',
- 'new_password1': 'abc123',
- 'new_password2': 'abc123',
- }
- form = PasswordChangeForm(user, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["old_password"].errors,
- [force_text(form.error_messages['password_incorrect'])])
-
- def test_password_verification(self):
- # The two new passwords do not match.
- user = User.objects.get(username='testclient')
- data = {
- 'old_password': 'password',
- 'new_password1': 'abc123',
- 'new_password2': 'abc',
- }
- form = PasswordChangeForm(user, data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form["new_password2"].errors,
- [force_text(form.error_messages['password_mismatch'])])
-
- def test_success(self):
- # The success case.
- user = User.objects.get(username='testclient')
- data = {
- 'old_password': 'password',
- 'new_password1': 'abc123',
- 'new_password2': 'abc123',
- }
- form = PasswordChangeForm(user, data)
- self.assertTrue(form.is_valid())
-
- def test_field_order(self):
- # Regression test - check the order of fields:
- user = User.objects.get(username='testclient')
- self.assertEqual(list(PasswordChangeForm(user, {}).fields),
- ['old_password', 'new_password1', 'new_password2'])
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class UserChangeFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def test_username_validity(self):
- user = User.objects.get(username='testclient')
- data = {'username': 'not valid'}
- form = UserChangeForm(data, instance=user)
- self.assertFalse(form.is_valid())
- self.assertEqual(form['username'].errors,
- [force_text(form.fields['username'].error_messages['invalid'])])
-
- def test_bug_14242(self):
- # A regression test, introduce by adding an optimization for the
- # UserChangeForm.
-
- class MyUserForm(UserChangeForm):
- def __init__(self, *args, **kwargs):
- super(MyUserForm, self).__init__(*args, **kwargs)
- self.fields['groups'].help_text = 'These groups give users different permissions'
-
- class Meta(UserChangeForm.Meta):
- fields = ('groups',)
-
- # Just check we can create it
- form = MyUserForm({})
-
- def test_unsuable_password(self):
- user = User.objects.get(username='empty_password')
- user.set_unusable_password()
- user.save()
- form = UserChangeForm(instance=user)
- self.assertIn(_("No password set."), form.as_table())
-
- def test_bug_17944_empty_password(self):
- user = User.objects.get(username='empty_password')
- form = UserChangeForm(instance=user)
- self.assertIn(_("No password set."), form.as_table())
-
- def test_bug_17944_unmanageable_password(self):
- user = User.objects.get(username='unmanageable_password')
- form = UserChangeForm(instance=user)
- self.assertIn(_("Invalid password format or unknown hashing algorithm."),
- form.as_table())
-
- def test_bug_17944_unknown_password_algorithm(self):
- user = User.objects.get(username='unknown_password')
- form = UserChangeForm(instance=user)
- self.assertIn(_("Invalid password format or unknown hashing algorithm."),
- form.as_table())
-
- def test_bug_19133(self):
- "The change form does not return the password value"
- # Use the form to construct the POST data
- user = User.objects.get(username='testclient')
- form_for_data = UserChangeForm(instance=user)
- post_data = form_for_data.initial
-
- # The password field should be readonly, so anything
- # posted here should be ignored; the form will be
- # valid, and give back the 'initial' value for the
- # password field.
- post_data['password'] = 'new password'
- form = UserChangeForm(instance=user, data=post_data)
-
- self.assertTrue(form.is_valid())
- self.assertEqual(form.cleaned_data['password'], 'sha1$6efc0$f93efe9fd7542f25a7be94871ea45aa95de57161')
-
- def test_bug_19349_bound_password_field(self):
- user = User.objects.get(username='testclient')
- form = UserChangeForm(data={}, instance=user)
- # When rendering the bound password field,
- # ReadOnlyPasswordHashWidget needs the initial
- # value to render correctly
- self.assertEqual(form.initial['password'], form['password'].value())
-
-
-@skipIfCustomUser
-@override_settings(
- PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',),
- TEMPLATE_LOADERS=('django.template.loaders.filesystem.Loader',),
- TEMPLATE_DIRS=(
- os.path.join(os.path.dirname(upath(__file__)), 'templates'),
- ),
- USE_TZ=False,
-)
-class PasswordResetFormTest(TestCase):
-
- fixtures = ['authtestdata.json']
-
- def create_dummy_user(self):
- """
- Create a user and return a tuple (user_object, username, email).
- """
- username = 'jsmith'
- email = 'jsmith@example.com'
- user = User.objects.create_user(username, email, 'test123')
- return (user, username, email)
-
- def test_invalid_email(self):
- data = {'email': 'not valid'}
- form = PasswordResetForm(data)
- self.assertFalse(form.is_valid())
- self.assertEqual(form['email'].errors, [_('Enter a valid email address.')])
-
- def test_nonexistant_email(self):
- """
- Test nonexistant email address. This should not fail because it would
- expose information about registered users.
- """
- data = {'email': 'foo@bar.com'}
- form = PasswordResetForm(data)
- self.assertTrue(form.is_valid())
- self.assertEqual(len(mail.outbox), 0)
-
- def test_cleaned_data(self):
- (user, username, email) = self.create_dummy_user()
- data = {'email': email}
- form = PasswordResetForm(data)
- self.assertTrue(form.is_valid())
- form.save(domain_override='example.com')
- self.assertEqual(form.cleaned_data['email'], email)
- self.assertEqual(len(mail.outbox), 1)
-
- def test_custom_email_subject(self):
- data = {'email': 'testclient@example.com'}
- form = PasswordResetForm(data)
- self.assertTrue(form.is_valid())
- # Since we're not providing a request object, we must provide a
- # domain_override to prevent the save operation from failing in the
- # potential case where contrib.sites is not installed. Refs #16412.
- form.save(domain_override='example.com')
- self.assertEqual(len(mail.outbox), 1)
- self.assertEqual(mail.outbox[0].subject, 'Custom password reset on example.com')
-
- def test_preserve_username_case(self):
- """
- Preserve the case of the user name (before the @ in the email address)
- when creating a user (#5605).
- """
- user = User.objects.create_user('forms_test2', 'tesT@EXAMple.com', 'test')
- self.assertEqual(user.email, 'tesT@example.com')
- user = User.objects.create_user('forms_test3', 'tesT', 'test')
- self.assertEqual(user.email, 'tesT')
-
- def test_inactive_user(self):
- """
- Test that inactive user cannot receive password reset email.
- """
- (user, username, email) = self.create_dummy_user()
- user.is_active = False
- user.save()
- form = PasswordResetForm({'email': email})
- self.assertTrue(form.is_valid())
- form.save()
- self.assertEqual(len(mail.outbox), 0)
-
- def test_unusable_password(self):
- user = User.objects.create_user('testuser', 'test@example.com', 'test')
- data = {"email": "test@example.com"}
- form = PasswordResetForm(data)
- self.assertTrue(form.is_valid())
- user.set_unusable_password()
- user.save()
- form = PasswordResetForm(data)
- # The form itself is valid, but no email is sent
- self.assertTrue(form.is_valid())
- form.save()
- self.assertEqual(len(mail.outbox), 0)
-
-
-class ReadOnlyPasswordHashTest(TestCase):
-
- def test_bug_19349_render_with_none_value(self):
- # Rendering the widget with value set to None
- # mustn't raise an exception.
- widget = ReadOnlyPasswordHashWidget()
- html = widget.render(name='password', value=None, attrs={})
- self.assertIn(_("No password set."), html)
-
- def test_readonly_field_has_changed(self):
- field = ReadOnlyPasswordHashField()
- self.assertFalse(field._has_changed('aaa', 'bbb'))
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_handlers.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_handlers.py
deleted file mode 100644
index b86775f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_handlers.py
+++ /dev/null
@@ -1,79 +0,0 @@
-from __future__ import unicode_literals
-
-from django.contrib.auth.handlers.modwsgi import check_password, groups_for_user
-from django.contrib.auth.models import User, Group
-from django.contrib.auth.tests.custom_user import CustomUser
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.test import TransactionTestCase
-from django.test.utils import override_settings
-
-
-# This must be a TransactionTestCase because the WSGI auth handler performs
-# its own transaction management.
-class ModWsgiHandlerTestCase(TransactionTestCase):
- """
- Tests for the mod_wsgi authentication handler
- """
-
- available_apps = [
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- ]
-
- @skipIfCustomUser
- def test_check_password(self):
- """
- Verify that check_password returns the correct values as per
- http://code.google.com/p/modwsgi/wiki/AccessControlMechanisms#Apache_Authentication_Provider
- """
- User.objects.create_user('test', 'test@example.com', 'test')
-
- # User not in database
- self.assertTrue(check_password({}, 'unknown', '') is None)
-
- # Valid user with correct password
- self.assertTrue(check_password({}, 'test', 'test'))
-
- # correct password, but user is inactive
- User.objects.filter(username='test').update(is_active=False)
- self.assertFalse(check_password({}, 'test', 'test'))
-
- # Valid user with incorrect password
- self.assertFalse(check_password({}, 'test', 'incorrect'))
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUser')
- def test_check_password_custom_user(self):
- """
- Verify that check_password returns the correct values as per
- http://code.google.com/p/modwsgi/wiki/AccessControlMechanisms#Apache_Authentication_Provider
-
- with custom user installed
- """
-
- CustomUser._default_manager.create_user('test@example.com', '1990-01-01', 'test')
-
- # User not in database
- self.assertTrue(check_password({}, 'unknown', '') is None)
-
- # Valid user with correct password'
- self.assertTrue(check_password({}, 'test@example.com', 'test'))
-
- # Valid user with incorrect password
- self.assertFalse(check_password({}, 'test@example.com', 'incorrect'))
-
- @skipIfCustomUser
- def test_groups_for_user(self):
- """
- Check that groups_for_user returns correct values as per
- http://code.google.com/p/modwsgi/wiki/AccessControlMechanisms#Apache_Group_Authorisation
- """
- user1 = User.objects.create_user('test', 'test@example.com', 'test')
- User.objects.create_user('test1', 'test1@example.com', 'test1')
- group = Group.objects.create(name='test_group')
- user1.groups.add(group)
-
- # User not in database
- self.assertEqual(groups_for_user({}, 'unknown'), [])
-
- self.assertEqual(groups_for_user({}, 'test'), [b'test_group'])
- self.assertEqual(groups_for_user({}, 'test1'), [])
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_hashers.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_hashers.py
deleted file mode 100644
index dac655a..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_hashers.py
+++ /dev/null
@@ -1,322 +0,0 @@
-# -*- coding: utf-8 -*-
-from __future__ import unicode_literals
-
-from django.conf.global_settings import PASSWORD_HASHERS as default_hashers
-from django.contrib.auth.hashers import (is_password_usable, BasePasswordHasher,
- check_password, make_password, PBKDF2PasswordHasher, load_hashers, PBKDF2SHA1PasswordHasher,
- get_hasher, identify_hasher, UNUSABLE_PASSWORD_PREFIX, UNUSABLE_PASSWORD_SUFFIX_LENGTH)
-from django.test import SimpleTestCase
-from django.utils import six
-from django.utils import unittest
-from django.utils.unittest import skipUnless
-
-
-try:
- import crypt
-except ImportError:
- crypt = None
-
-try:
- import bcrypt
-except ImportError:
- bcrypt = None
-
-
-class PBKDF2SingleIterationHasher(PBKDF2PasswordHasher):
- iterations = 1
-
-
-class TestUtilsHashPass(SimpleTestCase):
-
- def setUp(self):
- load_hashers(password_hashers=default_hashers)
-
- def test_simple(self):
- encoded = make_password('lètmein')
- self.assertTrue(encoded.startswith('pbkdf2_sha256$'))
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- # Blank passwords
- blank_encoded = make_password('')
- self.assertTrue(blank_encoded.startswith('pbkdf2_sha256$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_pkbdf2(self):
- encoded = make_password('lètmein', 'seasalt', 'pbkdf2_sha256')
- self.assertEqual(encoded,
- 'pbkdf2_sha256$12000$seasalt$Ybw8zsFxqja97tY/o6G+Fy1ksY4U/Hw3DRrGED6Up4s=')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "pbkdf2_sha256")
- # Blank passwords
- blank_encoded = make_password('', 'seasalt', 'pbkdf2_sha256')
- self.assertTrue(blank_encoded.startswith('pbkdf2_sha256$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_sha1(self):
- encoded = make_password('lètmein', 'seasalt', 'sha1')
- self.assertEqual(encoded,
- 'sha1$seasalt$cff36ea83f5706ce9aa7454e63e431fc726b2dc8')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "sha1")
- # Blank passwords
- blank_encoded = make_password('', 'seasalt', 'sha1')
- self.assertTrue(blank_encoded.startswith('sha1$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_md5(self):
- encoded = make_password('lètmein', 'seasalt', 'md5')
- self.assertEqual(encoded,
- 'md5$seasalt$3f86d0d3d465b7b458c231bf3555c0e3')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "md5")
- # Blank passwords
- blank_encoded = make_password('', 'seasalt', 'md5')
- self.assertTrue(blank_encoded.startswith('md5$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_unsalted_md5(self):
- encoded = make_password('lètmein', '', 'unsalted_md5')
- self.assertEqual(encoded, '88a434c88cca4e900f7874cd98123f43')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "unsalted_md5")
- # Alternate unsalted syntax
- alt_encoded = "md5$$%s" % encoded
- self.assertTrue(is_password_usable(alt_encoded))
- self.assertTrue(check_password('lètmein', alt_encoded))
- self.assertFalse(check_password('lètmeinz', alt_encoded))
- # Blank passwords
- blank_encoded = make_password('', '', 'unsalted_md5')
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_unsalted_sha1(self):
- encoded = make_password('lètmein', '', 'unsalted_sha1')
- self.assertEqual(encoded, 'sha1$$6d138ca3ae545631b3abd71a4f076ce759c5700b')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "unsalted_sha1")
- # Raw SHA1 isn't acceptable
- alt_encoded = encoded[6:]
- self.assertFalse(check_password('lètmein', alt_encoded))
- # Blank passwords
- blank_encoded = make_password('', '', 'unsalted_sha1')
- self.assertTrue(blank_encoded.startswith('sha1$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- @skipUnless(crypt, "no crypt module to generate password.")
- def test_crypt(self):
- encoded = make_password('lètmei', 'ab', 'crypt')
- self.assertEqual(encoded, 'crypt$$ab1Hv2Lg7ltQo')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(check_password('lètmei', encoded))
- self.assertFalse(check_password('lètmeiz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "crypt")
- # Blank passwords
- blank_encoded = make_password('', 'ab', 'crypt')
- self.assertTrue(blank_encoded.startswith('crypt$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- @skipUnless(bcrypt, "bcrypt not installed")
- def test_bcrypt_sha256(self):
- encoded = make_password('lètmein', hasher='bcrypt_sha256')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(encoded.startswith('bcrypt_sha256$'))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "bcrypt_sha256")
-
- # Verify that password truncation no longer works
- password = ('VSK0UYV6FFQVZ0KG88DYN9WADAADZO1CTSIVDJUNZSUML6IBX7LN7ZS3R5'
- 'JGB3RGZ7VI7G7DJQ9NI8BQFSRPTG6UWTTVESA5ZPUN')
- encoded = make_password(password, hasher='bcrypt_sha256')
- self.assertTrue(check_password(password, encoded))
- self.assertFalse(check_password(password[:72], encoded))
- # Blank passwords
- blank_encoded = make_password('', hasher='bcrypt_sha256')
- self.assertTrue(blank_encoded.startswith('bcrypt_sha256$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- @skipUnless(bcrypt, "bcrypt not installed")
- def test_bcrypt(self):
- encoded = make_password('lètmein', hasher='bcrypt')
- self.assertTrue(is_password_usable(encoded))
- self.assertTrue(encoded.startswith('bcrypt$'))
- self.assertTrue(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertEqual(identify_hasher(encoded).algorithm, "bcrypt")
- # Blank passwords
- blank_encoded = make_password('', hasher='bcrypt')
- self.assertTrue(blank_encoded.startswith('bcrypt$'))
- self.assertTrue(is_password_usable(blank_encoded))
- self.assertTrue(check_password('', blank_encoded))
- self.assertFalse(check_password(' ', blank_encoded))
-
- def test_unusable(self):
- encoded = make_password(None)
- self.assertEqual(len(encoded), len(UNUSABLE_PASSWORD_PREFIX) + UNUSABLE_PASSWORD_SUFFIX_LENGTH)
- self.assertFalse(is_password_usable(encoded))
- self.assertFalse(check_password(None, encoded))
- self.assertFalse(check_password(encoded, encoded))
- self.assertFalse(check_password(UNUSABLE_PASSWORD_PREFIX, encoded))
- self.assertFalse(check_password('', encoded))
- self.assertFalse(check_password('lètmein', encoded))
- self.assertFalse(check_password('lètmeinz', encoded))
- self.assertRaises(ValueError, identify_hasher, encoded)
- # Assert that the unusable passwords actually contain a random part.
- # This might fail one day due to a hash collision.
- self.assertNotEqual(encoded, make_password(None), "Random password collision?")
-
- def test_unspecified_password(self):
- """
- Makes sure specifying no plain password with a valid encoded password
- returns `False`.
- """
- self.assertFalse(check_password(None, make_password('lètmein')))
-
- def test_bad_algorithm(self):
- with self.assertRaises(ValueError):
- make_password('lètmein', hasher='lolcat')
- self.assertRaises(ValueError, identify_hasher, "lolcat$salt$hash")
-
- def test_bad_encoded(self):
- self.assertFalse(is_password_usable('lètmein_badencoded'))
- self.assertFalse(is_password_usable(''))
-
- def test_low_level_pkbdf2(self):
- hasher = PBKDF2PasswordHasher()
- encoded = hasher.encode('lètmein', 'seasalt2')
- self.assertEqual(encoded,
- 'pbkdf2_sha256$12000$seasalt2$hlDLKsxgkgb1aeOppkM5atCYw5rPzAjCNQZ4NYyUROw=')
- self.assertTrue(hasher.verify('lètmein', encoded))
-
- def test_low_level_pbkdf2_sha1(self):
- hasher = PBKDF2SHA1PasswordHasher()
- encoded = hasher.encode('lètmein', 'seasalt2')
- self.assertEqual(encoded,
- 'pbkdf2_sha1$12000$seasalt2$JeMRVfjjgtWw3/HzlnlfqBnQ6CA=')
- self.assertTrue(hasher.verify('lètmein', encoded))
-
- def test_upgrade(self):
- self.assertEqual('pbkdf2_sha256', get_hasher('default').algorithm)
- for algo in ('sha1', 'md5'):
- encoded = make_password('lètmein', hasher=algo)
- state = {'upgraded': False}
- def setter(password):
- state['upgraded'] = True
- self.assertTrue(check_password('lètmein', encoded, setter))
- self.assertTrue(state['upgraded'])
-
- def test_no_upgrade(self):
- encoded = make_password('lètmein')
- state = {'upgraded': False}
- def setter():
- state['upgraded'] = True
- self.assertFalse(check_password('WRONG', encoded, setter))
- self.assertFalse(state['upgraded'])
-
- def test_no_upgrade_on_incorrect_pass(self):
- self.assertEqual('pbkdf2_sha256', get_hasher('default').algorithm)
- for algo in ('sha1', 'md5'):
- encoded = make_password('lètmein', hasher=algo)
- state = {'upgraded': False}
- def setter():
- state['upgraded'] = True
- self.assertFalse(check_password('WRONG', encoded, setter))
- self.assertFalse(state['upgraded'])
-
- def test_pbkdf2_upgrade(self):
- self.assertEqual('pbkdf2_sha256', get_hasher('default').algorithm)
- hasher = get_hasher('default')
- self.assertNotEqual(hasher.iterations, 1)
-
- old_iterations = hasher.iterations
- try:
- # Generate a password with 1 iteration.
- hasher.iterations = 1
- encoded = make_password('letmein')
- algo, iterations, salt, hash = encoded.split('$', 3)
- self.assertEqual(iterations, '1')
-
- state = {'upgraded': False}
- def setter(password):
- state['upgraded'] = True
-
- # Check that no upgrade is triggerd
- self.assertTrue(check_password('letmein', encoded, setter))
- self.assertFalse(state['upgraded'])
-
- # Revert to the old iteration count and ...
- hasher.iterations = old_iterations
-
- # ... check if the password would get updated to the new iteration count.
- self.assertTrue(check_password('letmein', encoded, setter))
- self.assertTrue(state['upgraded'])
- finally:
- hasher.iterations = old_iterations
-
- def test_pbkdf2_upgrade_new_hasher(self):
- self.assertEqual('pbkdf2_sha256', get_hasher('default').algorithm)
- hasher = get_hasher('default')
- self.assertNotEqual(hasher.iterations, 1)
-
- state = {'upgraded': False}
-
- def setter(password):
- state['upgraded'] = True
-
- with self.settings(PASSWORD_HASHERS=[
- 'django.contrib.auth.tests.test_hashers.PBKDF2SingleIterationHasher']):
- encoded = make_password('letmein')
- algo, iterations, salt, hash = encoded.split('$', 3)
- self.assertEqual(iterations, '1')
-
- # Check that no upgrade is triggerd
- self.assertTrue(check_password('letmein', encoded, setter))
- self.assertFalse(state['upgraded'])
-
- # Revert to the old iteration count and check if the password would get
- # updated to the new iteration count.
- with self.settings(PASSWORD_HASHERS=[
- 'django.contrib.auth.hashers.PBKDF2PasswordHasher',
- 'django.contrib.auth.tests.test_hashers.PBKDF2SingleIterationHasher']):
- self.assertTrue(check_password('letmein', encoded, setter))
- self.assertTrue(state['upgraded'])
-
- def test_load_library_no_algorithm(self):
- with self.assertRaises(ValueError) as e:
- BasePasswordHasher()._load_library()
- self.assertEqual("Hasher 'BasePasswordHasher' doesn't specify a "
- "library attribute", str(e.exception))
-
- def test_load_library_importerror(self):
- PlainHasher = type(str('PlainHasher'), (BasePasswordHasher,),
- {'algorithm': 'plain', 'library': 'plain'})
- # Python 3.3 adds quotes around module name
- with six.assertRaisesRegex(self, ValueError,
- "Couldn't load 'PlainHasher' algorithm library: No module named '?plain'?"):
- PlainHasher()._load_library()
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_management.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_management.py
deleted file mode 100644
index 91a7cab..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_management.py
+++ /dev/null
@@ -1,249 +0,0 @@
-from __future__ import unicode_literals
-from datetime import date
-
-from django.contrib.auth import models, management
-from django.contrib.auth.management import create_permissions
-from django.contrib.auth.management.commands import changepassword
-from django.contrib.auth.models import User
-from django.contrib.auth.tests.custom_user import CustomUser
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.contrib.contenttypes.models import ContentType
-from django.core.management import call_command
-from django.core.management.base import CommandError
-from django.core.management.validation import get_validation_errors
-from django.db.models.loading import get_app
-from django.test import TestCase
-from django.test.utils import override_settings
-from django.utils import six
-from django.utils.six import StringIO
-
-
-@skipIfCustomUser
-class GetDefaultUsernameTestCase(TestCase):
-
- def setUp(self):
- self.old_get_system_username = management.get_system_username
-
- def tearDown(self):
- management.get_system_username = self.old_get_system_username
-
- def test_actual_implementation(self):
- self.assertIsInstance(management.get_system_username(), six.text_type)
-
- def test_simple(self):
- management.get_system_username = lambda: 'joe'
- self.assertEqual(management.get_default_username(), 'joe')
-
- def test_existing(self):
- models.User.objects.create(username='joe')
- management.get_system_username = lambda: 'joe'
- self.assertEqual(management.get_default_username(), '')
- self.assertEqual(
- management.get_default_username(check_db=False), 'joe')
-
- def test_i18n(self):
- # 'Julia' with accented 'u':
- management.get_system_username = lambda: 'J\xfalia'
- self.assertEqual(management.get_default_username(), 'julia')
-
-
-@skipIfCustomUser
-class ChangepasswordManagementCommandTestCase(TestCase):
-
- def setUp(self):
- self.user = models.User.objects.create_user(username='joe', password='qwerty')
- self.stdout = StringIO()
- self.stderr = StringIO()
-
- def tearDown(self):
- self.stdout.close()
- self.stderr.close()
-
- def test_that_changepassword_command_changes_joes_password(self):
- "Executing the changepassword management command should change joe's password"
- self.assertTrue(self.user.check_password('qwerty'))
- command = changepassword.Command()
- command._get_pass = lambda *args: 'not qwerty'
-
- command.execute("joe", stdout=self.stdout)
- command_output = self.stdout.getvalue().strip()
-
- self.assertEqual(command_output, "Changing password for user 'joe'\nPassword changed successfully for user 'joe'")
- self.assertTrue(models.User.objects.get(username="joe").check_password("not qwerty"))
-
- def test_that_max_tries_exits_1(self):
- """
- A CommandError should be thrown by handle() if the user enters in
- mismatched passwords three times.
- """
- command = changepassword.Command()
- command._get_pass = lambda *args: args or 'foo'
-
- with self.assertRaises(CommandError):
- command.execute("joe", stdout=self.stdout, stderr=self.stderr)
-
- def test_that_changepassword_command_works_with_nonascii_output(self):
- """
- #21627 -- Executing the changepassword management command should allow
- non-ASCII characters from the User object representation.
- """
- # 'Julia' with accented 'u':
- models.User.objects.create_user(username='J\xfalia', password='qwerty')
-
- command = changepassword.Command()
- command._get_pass = lambda *args: 'not qwerty'
-
- command.execute("J\xfalia", stdout=self.stdout)
-
-@skipIfCustomUser
-class CreatesuperuserManagementCommandTestCase(TestCase):
-
- def test_createsuperuser(self):
- "Check the operation of the createsuperuser management command"
- # We can use the management command to create a superuser
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- username="joe",
- email="joe@somewhere.org",
- stdout=new_io
- )
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, 'Superuser created successfully.')
- u = User.objects.get(username="joe")
- self.assertEqual(u.email, 'joe@somewhere.org')
-
- # created password should be unusable
- self.assertFalse(u.has_usable_password())
-
- def test_verbosity_zero(self):
- # We can supress output on the management command
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- username="joe2",
- email="joe2@somewhere.org",
- verbosity=0,
- stdout=new_io
- )
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, '')
- u = User.objects.get(username="joe2")
- self.assertEqual(u.email, 'joe2@somewhere.org')
- self.assertFalse(u.has_usable_password())
-
- def test_email_in_username(self):
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- username="joe+admin@somewhere.org",
- email="joe@somewhere.org",
- stdout=new_io
- )
- u = User._default_manager.get(username="joe+admin@somewhere.org")
- self.assertEqual(u.email, 'joe@somewhere.org')
- self.assertFalse(u.has_usable_password())
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUser')
- def test_swappable_user(self):
- "A superuser can be created when a custom User model is in use"
- # We can use the management command to create a superuser
- # We skip validation because the temporary substitution of the
- # swappable User model messes with validation.
- new_io = StringIO()
- call_command("createsuperuser",
- interactive=False,
- email="joe@somewhere.org",
- date_of_birth="1976-04-01",
- stdout=new_io,
- skip_validation=True
- )
- command_output = new_io.getvalue().strip()
- self.assertEqual(command_output, 'Superuser created successfully.')
- u = CustomUser._default_manager.get(email="joe@somewhere.org")
- self.assertEqual(u.date_of_birth, date(1976, 4, 1))
-
- # created password should be unusable
- self.assertFalse(u.has_usable_password())
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUser')
- def test_swappable_user_missing_required_field(self):
- "A Custom superuser won't be created when a required field isn't provided"
- # We can use the management command to create a superuser
- # We skip validation because the temporary substitution of the
- # swappable User model messes with validation.
- new_io = StringIO()
- with self.assertRaises(CommandError):
- call_command("createsuperuser",
- interactive=False,
- username="joe@somewhere.org",
- stdout=new_io,
- stderr=new_io,
- skip_validation=True
- )
-
- self.assertEqual(CustomUser._default_manager.count(), 0)
-
-
-class CustomUserModelValidationTestCase(TestCase):
- @override_settings(AUTH_USER_MODEL='auth.CustomUserNonListRequiredFields')
- def test_required_fields_is_list(self):
- "REQUIRED_FIELDS should be a list."
- new_io = StringIO()
- get_validation_errors(new_io, get_app('auth'))
- self.assertIn("The REQUIRED_FIELDS must be a list or tuple.", new_io.getvalue())
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUserBadRequiredFields')
- def test_username_not_in_required_fields(self):
- "USERNAME_FIELD should not appear in REQUIRED_FIELDS."
- new_io = StringIO()
- get_validation_errors(new_io, get_app('auth'))
- self.assertIn("The field named as the USERNAME_FIELD should not be included in REQUIRED_FIELDS on a swappable User model.", new_io.getvalue())
-
- @override_settings(AUTH_USER_MODEL='auth.CustomUserNonUniqueUsername')
- def test_username_non_unique(self):
- "A non-unique USERNAME_FIELD should raise a model validation error."
- new_io = StringIO()
- get_validation_errors(new_io, get_app('auth'))
- self.assertIn("The USERNAME_FIELD must be unique. Add unique=True to the field parameters.", new_io.getvalue())
-
-
-class PermissionDuplicationTestCase(TestCase):
-
- def setUp(self):
- self._original_permissions = models.Permission._meta.permissions[:]
-
- def tearDown(self):
- models.Permission._meta.permissions = self._original_permissions
- ContentType.objects.clear_cache()
-
- def test_duplicated_permissions(self):
- """
- Test that we show proper error message if we are trying to create
- duplicate permissions.
- """
- # check duplicated default permission
- models.Permission._meta.permissions = [
- ('change_permission', 'Can edit permission (duplicate)')]
- six.assertRaisesRegex(self, CommandError,
- "The permission codename 'change_permission' clashes with a "
- "builtin permission for model 'auth.Permission'.",
- create_permissions, models, [], verbosity=0)
-
- # check duplicated custom permissions
- models.Permission._meta.permissions = [
- ('my_custom_permission', 'Some permission'),
- ('other_one', 'Some other permission'),
- ('my_custom_permission', 'Some permission with duplicate permission code'),
- ]
- six.assertRaisesRegex(self, CommandError,
- "The permission codename 'my_custom_permission' is duplicated for model "
- "'auth.Permission'.",
- create_permissions, models, [], verbosity=0)
-
- # should not raise anything
- models.Permission._meta.permissions = [
- ('my_custom_permission', 'Some permission'),
- ('other_one', 'Some other permission'),
- ]
- create_permissions(models, [], verbosity=0)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_models.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_models.py
deleted file mode 100644
index d5bf91d..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_models.py
+++ /dev/null
@@ -1,168 +0,0 @@
-import warnings
-
-from django.conf import settings
-from django.contrib.auth import get_user_model
-from django.contrib.auth.models import (Group, User, SiteProfileNotAvailable,
- UserManager)
-from django.contrib.auth.tests.custom_user import IsActiveTestUser1
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.db.models.signals import post_save
-from django.test import TestCase
-from django.test.utils import override_settings
-from django.utils import six
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, AUTH_PROFILE_MODULE='')
-class ProfileTestCase(TestCase):
-
- def test_site_profile_not_available(self):
- user = User.objects.create(username='testclient')
-
- # calling get_profile without AUTH_PROFILE_MODULE set
- del settings.AUTH_PROFILE_MODULE
- with warnings.catch_warnings():
- warnings.simplefilter("ignore", DeprecationWarning)
- with six.assertRaisesRegex(self, SiteProfileNotAvailable,
- "You need to set AUTH_PROFILE_MODULE in your project"):
- user.get_profile()
-
- # Bad syntax in AUTH_PROFILE_MODULE:
- settings.AUTH_PROFILE_MODULE = 'foobar'
- with warnings.catch_warnings():
- warnings.simplefilter("ignore", DeprecationWarning)
- with six.assertRaisesRegex(self, SiteProfileNotAvailable,
- "app_label and model_name should be separated by a dot"):
- user.get_profile()
-
- # module that doesn't exist
- settings.AUTH_PROFILE_MODULE = 'foo.bar'
- with warnings.catch_warnings():
- warnings.simplefilter("ignore", DeprecationWarning)
- with six.assertRaisesRegex(self, SiteProfileNotAvailable,
- "Unable to load the profile model"):
- user.get_profile()
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False)
-class NaturalKeysTestCase(TestCase):
- fixtures = ['authtestdata.json']
-
- def test_user_natural_key(self):
- staff_user = User.objects.get(username='staff')
- self.assertEqual(User.objects.get_by_natural_key('staff'), staff_user)
- self.assertEqual(staff_user.natural_key(), ('staff',))
-
- def test_group_natural_key(self):
- users_group = Group.objects.create(name='users')
- self.assertEqual(Group.objects.get_by_natural_key('users'), users_group)
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False)
-class LoadDataWithoutNaturalKeysTestCase(TestCase):
- fixtures = ['regular.json']
-
- def test_user_is_created_and_added_to_group(self):
- user = User.objects.get(username='my_username')
- group = Group.objects.get(name='my_group')
- self.assertEqual(group, user.groups.get())
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False)
-class LoadDataWithNaturalKeysTestCase(TestCase):
- fixtures = ['natural.json']
-
- def test_user_is_created_and_added_to_group(self):
- user = User.objects.get(username='my_username')
- group = Group.objects.get(name='my_group')
- self.assertEqual(group, user.groups.get())
-
-
-@skipIfCustomUser
-class UserManagerTestCase(TestCase):
-
- def test_create_user(self):
- email_lowercase = 'normal@normal.com'
- user = User.objects.create_user('user', email_lowercase)
- self.assertEqual(user.email, email_lowercase)
- self.assertEqual(user.username, 'user')
- self.assertFalse(user.has_usable_password())
-
- def test_create_user_email_domain_normalize_rfc3696(self):
- # According to http://tools.ietf.org/html/rfc3696#section-3
- # the "@" symbol can be part of the local part of an email address
- returned = UserManager.normalize_email(r'Abc\@DEF@EXAMPLE.com')
- self.assertEqual(returned, r'Abc\@DEF@example.com')
-
- def test_create_user_email_domain_normalize(self):
- returned = UserManager.normalize_email('normal@DOMAIN.COM')
- self.assertEqual(returned, 'normal@domain.com')
-
- def test_create_user_email_domain_normalize_with_whitespace(self):
- returned = UserManager.normalize_email('email\ with_whitespace@D.COM')
- self.assertEqual(returned, 'email\ with_whitespace@d.com')
-
- def test_empty_username(self):
- self.assertRaisesMessage(ValueError,
- 'The given username must be set',
- User.objects.create_user, username='')
-
-
-class IsActiveTestCase(TestCase):
- """
- Tests the behavior of the guaranteed is_active attribute
- """
-
- @skipIfCustomUser
- def test_builtin_user_isactive(self):
- user = User.objects.create(username='foo', email='foo@bar.com')
- # is_active is true by default
- self.assertEqual(user.is_active, True)
- user.is_active = False
- user.save()
- user_fetched = User.objects.get(pk=user.pk)
- # the is_active flag is saved
- self.assertFalse(user_fetched.is_active)
-
- @override_settings(AUTH_USER_MODEL='auth.IsActiveTestUser1')
- def test_is_active_field_default(self):
- """
- tests that the default value for is_active is provided
- """
- UserModel = get_user_model()
- user = UserModel(username='foo')
- self.assertEqual(user.is_active, True)
- # you can set the attribute - but it will not save
- user.is_active = False
- # there should be no problem saving - but the attribute is not saved
- user.save()
- user_fetched = UserModel._default_manager.get(pk=user.pk)
- # the attribute is always true for newly retrieved instance
- self.assertEqual(user_fetched.is_active, True)
-
-
-@skipIfCustomUser
-class TestCreateSuperUserSignals(TestCase):
- """
- Simple test case for ticket #20541
- """
- def post_save_listener(self, *args, **kwargs):
- self.signals_count += 1
-
- def setUp(self):
- self.signals_count = 0
- post_save.connect(self.post_save_listener, sender=User)
-
- def tearDown(self):
- post_save.disconnect(self.post_save_listener, sender=User)
-
- def test_create_user(self):
- User.objects.create_user("JohnDoe")
- self.assertEqual(self.signals_count, 1)
-
- def test_create_superuser(self):
- User.objects.create_superuser("JohnDoe", "mail@example.com", "1")
- self.assertEqual(self.signals_count, 1)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_remote_user.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_remote_user.py
deleted file mode 100644
index 5c5024e..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_remote_user.py
+++ /dev/null
@@ -1,198 +0,0 @@
-from datetime import datetime
-
-from django.conf import settings
-from django.contrib.auth import authenticate
-from django.contrib.auth.backends import RemoteUserBackend
-from django.contrib.auth.models import User
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.test import TestCase
-from django.utils import timezone
-
-
-@skipIfCustomUser
-class RemoteUserTest(TestCase):
-
- urls = 'django.contrib.auth.tests.urls'
- middleware = 'django.contrib.auth.middleware.RemoteUserMiddleware'
- backend = 'django.contrib.auth.backends.RemoteUserBackend'
-
- # Usernames to be passed in REMOTE_USER for the test_known_user test case.
- known_user = 'knownuser'
- known_user2 = 'knownuser2'
-
- def setUp(self):
- self.curr_middleware = settings.MIDDLEWARE_CLASSES
- self.curr_auth = settings.AUTHENTICATION_BACKENDS
- settings.MIDDLEWARE_CLASSES += (self.middleware,)
- settings.AUTHENTICATION_BACKENDS += (self.backend,)
-
- def test_no_remote_user(self):
- """
- Tests requests where no remote user is specified and insures that no
- users get created.
- """
- num_users = User.objects.count()
-
- response = self.client.get('/remote_user/')
- self.assertTrue(response.context['user'].is_anonymous())
- self.assertEqual(User.objects.count(), num_users)
-
- response = self.client.get('/remote_user/', REMOTE_USER=None)
- self.assertTrue(response.context['user'].is_anonymous())
- self.assertEqual(User.objects.count(), num_users)
-
- response = self.client.get('/remote_user/', REMOTE_USER='')
- self.assertTrue(response.context['user'].is_anonymous())
- self.assertEqual(User.objects.count(), num_users)
-
- def test_unknown_user(self):
- """
- Tests the case where the username passed in the header does not exist
- as a User.
- """
- num_users = User.objects.count()
- response = self.client.get('/remote_user/', REMOTE_USER='newuser')
- self.assertEqual(response.context['user'].username, 'newuser')
- self.assertEqual(User.objects.count(), num_users + 1)
- User.objects.get(username='newuser')
-
- # Another request with same user should not create any new users.
- response = self.client.get('/remote_user/', REMOTE_USER='newuser')
- self.assertEqual(User.objects.count(), num_users + 1)
-
- def test_known_user(self):
- """
- Tests the case where the username passed in the header is a valid User.
- """
- User.objects.create(username='knownuser')
- User.objects.create(username='knownuser2')
- num_users = User.objects.count()
- response = self.client.get('/remote_user/', REMOTE_USER=self.known_user)
- self.assertEqual(response.context['user'].username, 'knownuser')
- self.assertEqual(User.objects.count(), num_users)
- # Test that a different user passed in the headers causes the new user
- # to be logged in.
- response = self.client.get('/remote_user/', REMOTE_USER=self.known_user2)
- self.assertEqual(response.context['user'].username, 'knownuser2')
- self.assertEqual(User.objects.count(), num_users)
-
- def test_last_login(self):
- """
- Tests that a user's last_login is set the first time they make a
- request but not updated in subsequent requests with the same session.
- """
- user = User.objects.create(username='knownuser')
- # Set last_login to something so we can determine if it changes.
- default_login = datetime(2000, 1, 1)
- if settings.USE_TZ:
- default_login = default_login.replace(tzinfo=timezone.utc)
- user.last_login = default_login
- user.save()
-
- response = self.client.get('/remote_user/', REMOTE_USER=self.known_user)
- self.assertNotEqual(default_login, response.context['user'].last_login)
-
- user = User.objects.get(username='knownuser')
- user.last_login = default_login
- user.save()
- response = self.client.get('/remote_user/', REMOTE_USER=self.known_user)
- self.assertEqual(default_login, response.context['user'].last_login)
-
- def test_header_disappears(self):
- """
- Tests that a logged in user is logged out automatically when
- the REMOTE_USER header disappears during the same browser session.
- """
- User.objects.create(username='knownuser')
- # Known user authenticates
- response = self.client.get('/remote_user/', REMOTE_USER=self.known_user)
- self.assertEqual(response.context['user'].username, 'knownuser')
- # During the session, the REMOTE_USER header disappears. Should trigger logout.
- response = self.client.get('/remote_user/')
- self.assertEqual(response.context['user'].is_anonymous(), True)
- # verify the remoteuser middleware will not remove a user
- # authenticated via another backend
- User.objects.create_user(username='modeluser', password='foo')
- self.client.login(username='modeluser', password='foo')
- authenticate(username='modeluser', password='foo')
- response = self.client.get('/remote_user/')
- self.assertEqual(response.context['user'].username, 'modeluser')
-
- def tearDown(self):
- """Restores settings to avoid breaking other tests."""
- settings.MIDDLEWARE_CLASSES = self.curr_middleware
- settings.AUTHENTICATION_BACKENDS = self.curr_auth
-
-
-class RemoteUserNoCreateBackend(RemoteUserBackend):
- """Backend that doesn't create unknown users."""
- create_unknown_user = False
-
-
-@skipIfCustomUser
-class RemoteUserNoCreateTest(RemoteUserTest):
- """
- Contains the same tests as RemoteUserTest, but using a custom auth backend
- class that doesn't create unknown users.
- """
-
- backend =\
- 'django.contrib.auth.tests.test_remote_user.RemoteUserNoCreateBackend'
-
- def test_unknown_user(self):
- num_users = User.objects.count()
- response = self.client.get('/remote_user/', REMOTE_USER='newuser')
- self.assertTrue(response.context['user'].is_anonymous())
- self.assertEqual(User.objects.count(), num_users)
-
-
-class CustomRemoteUserBackend(RemoteUserBackend):
- """
- Backend that overrides RemoteUserBackend methods.
- """
-
- def clean_username(self, username):
- """
- Grabs username before the @ character.
- """
- return username.split('@')[0]
-
- def configure_user(self, user):
- """
- Sets user's email address.
- """
- user.email = 'user@example.com'
- user.save()
- return user
-
-
-@skipIfCustomUser
-class RemoteUserCustomTest(RemoteUserTest):
- """
- Tests a custom RemoteUserBackend subclass that overrides the clean_username
- and configure_user methods.
- """
-
- backend =\
- 'django.contrib.auth.tests.test_remote_user.CustomRemoteUserBackend'
- # REMOTE_USER strings with email addresses for the custom backend to
- # clean.
- known_user = 'knownuser@example.com'
- known_user2 = 'knownuser2@example.com'
-
- def test_known_user(self):
- """
- The strings passed in REMOTE_USER should be cleaned and the known users
- should not have been configured with an email address.
- """
- super(RemoteUserCustomTest, self).test_known_user()
- self.assertEqual(User.objects.get(username='knownuser').email, '')
- self.assertEqual(User.objects.get(username='knownuser2').email, '')
-
- def test_unknown_user(self):
- """
- The unknown user created should be configured with an email address.
- """
- super(RemoteUserCustomTest, self).test_unknown_user()
- newuser = User.objects.get(username='newuser')
- self.assertEqual(newuser.email, 'user@example.com')
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_signals.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_signals.py
deleted file mode 100644
index 024f44f..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_signals.py
+++ /dev/null
@@ -1,80 +0,0 @@
-from django.contrib.auth import signals
-from django.contrib.auth.models import User
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.test import TestCase
-from django.test.client import RequestFactory
-from django.test.utils import override_settings
-
-
-@skipIfCustomUser
-@override_settings(USE_TZ=False, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',))
-class SignalTestCase(TestCase):
- urls = 'django.contrib.auth.tests.urls'
- fixtures = ['authtestdata.json']
-
- def listener_login(self, user, **kwargs):
- self.logged_in.append(user)
-
- def listener_logout(self, user, **kwargs):
- self.logged_out.append(user)
-
- def listener_login_failed(self, sender, credentials, **kwargs):
- self.login_failed.append(credentials)
-
- def setUp(self):
- """Set up the listeners and reset the logged in/logged out counters"""
- self.logged_in = []
- self.logged_out = []
- self.login_failed = []
- signals.user_logged_in.connect(self.listener_login)
- signals.user_logged_out.connect(self.listener_logout)
- signals.user_login_failed.connect(self.listener_login_failed)
-
- def tearDown(self):
- """Disconnect the listeners"""
- signals.user_logged_in.disconnect(self.listener_login)
- signals.user_logged_out.disconnect(self.listener_logout)
- signals.user_login_failed.disconnect(self.listener_login_failed)
-
- def test_login(self):
- # Only a successful login will trigger the success signal.
- self.client.login(username='testclient', password='bad')
- self.assertEqual(len(self.logged_in), 0)
- self.assertEqual(len(self.login_failed), 1)
- self.assertEqual(self.login_failed[0]['username'], 'testclient')
- # verify the password is cleansed
- self.assertTrue('***' in self.login_failed[0]['password'])
-
- # Like this:
- self.client.login(username='testclient', password='password')
- self.assertEqual(len(self.logged_in), 1)
- self.assertEqual(self.logged_in[0].username, 'testclient')
-
- # Ensure there were no more failures.
- self.assertEqual(len(self.login_failed), 1)
-
- def test_logout_anonymous(self):
- # The log_out function will still trigger the signal for anonymous
- # users.
- self.client.get('/logout/next_page/')
- self.assertEqual(len(self.logged_out), 1)
- self.assertEqual(self.logged_out[0], None)
-
- def test_logout(self):
- self.client.login(username='testclient', password='password')
- self.client.get('/logout/next_page/')
- self.assertEqual(len(self.logged_out), 1)
- self.assertEqual(self.logged_out[0].username, 'testclient')
-
- def test_update_last_login(self):
- """Ensure that only `last_login` is updated in `update_last_login`"""
- user = User.objects.get(pk=3)
- old_last_login = user.last_login
-
- user.username = "This username shouldn't get saved"
- request = RequestFactory().get('/login')
- signals.user_logged_in.send(sender=user.__class__, request=request,
- user=user)
- user = User.objects.get(pk=3)
- self.assertEqual(user.username, 'staff')
- self.assertNotEqual(user.last_login, old_last_login)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_tokens.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_tokens.py
deleted file mode 100644
index e8aeb46..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_tokens.py
+++ /dev/null
@@ -1,69 +0,0 @@
-import sys
-from datetime import date, timedelta
-
-from django.conf import settings
-from django.contrib.auth.models import User
-from django.contrib.auth.tokens import PasswordResetTokenGenerator
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.test import TestCase
-from django.utils import unittest
-
-
-@skipIfCustomUser
-class TokenGeneratorTest(TestCase):
-
- def test_make_token(self):
- """
- Ensure that we can make a token and that it is valid
- """
- user = User.objects.create_user('tokentestuser', 'test2@example.com', 'testpw')
- p0 = PasswordResetTokenGenerator()
- tk1 = p0.make_token(user)
- self.assertTrue(p0.check_token(user, tk1))
-
- def test_10265(self):
- """
- Ensure that the token generated for a user created in the same request
- will work correctly.
- """
- # See ticket #10265
- user = User.objects.create_user('comebackkid', 'test3@example.com', 'testpw')
- p0 = PasswordResetTokenGenerator()
- tk1 = p0.make_token(user)
- reload = User.objects.get(username='comebackkid')
- tk2 = p0.make_token(reload)
- self.assertEqual(tk1, tk2)
-
- def test_timeout(self):
- """
- Ensure we can use the token after n days, but no greater.
- """
- # Uses a mocked version of PasswordResetTokenGenerator so we can change
- # the value of 'today'
- class Mocked(PasswordResetTokenGenerator):
- def __init__(self, today):
- self._today_val = today
- def _today(self):
- return self._today_val
-
- user = User.objects.create_user('tokentestuser', 'test2@example.com', 'testpw')
- p0 = PasswordResetTokenGenerator()
- tk1 = p0.make_token(user)
- p1 = Mocked(date.today() + timedelta(settings.PASSWORD_RESET_TIMEOUT_DAYS))
- self.assertTrue(p1.check_token(user, tk1))
-
- p2 = Mocked(date.today() + timedelta(settings.PASSWORD_RESET_TIMEOUT_DAYS + 1))
- self.assertFalse(p2.check_token(user, tk1))
-
- @unittest.skipIf(sys.version_info[:2] >= (3, 0), "Unnecessary test with Python 3")
- def test_date_length(self):
- """
- Make sure we don't allow overly long dates, causing a potential DoS.
- """
- user = User.objects.create_user('ima1337h4x0r', 'test4@example.com', 'p4ssw0rd')
- p0 = PasswordResetTokenGenerator()
-
- # This will put a 14-digit base36 timestamp into the token, which is too large.
- self.assertRaises(ValueError,
- p0._make_token_with_timestamp,
- user, 175455491841851871349)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/test_views.py b/lib/python2.7/site-packages/django/contrib/auth/tests/test_views.py
deleted file mode 100644
index 118c090..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/test_views.py
+++ /dev/null
@@ -1,780 +0,0 @@
-import itertools
-import os
-import re
-
-from django.conf import global_settings, settings
-from django.contrib.sites.models import Site, RequestSite
-from django.contrib.admin.models import LogEntry
-from django.contrib.auth.models import User
-from django.core import mail
-from django.core.urlresolvers import reverse, NoReverseMatch
-from django.http import QueryDict, HttpRequest
-from django.utils.encoding import force_text
-from django.utils.http import int_to_base36, urlsafe_base64_decode, urlquote
-from django.utils.six.moves.urllib.parse import urlparse, ParseResult
-from django.utils.importlib import import_module
-from django.utils._os import upath
-from django.test import TestCase
-from django.test.utils import override_settings, patch_logger
-from django.middleware.csrf import CsrfViewMiddleware
-from django.contrib.sessions.middleware import SessionMiddleware
-
-from django.contrib.auth import SESSION_KEY, REDIRECT_FIELD_NAME
-from django.contrib.auth.forms import (AuthenticationForm, PasswordChangeForm,
- SetPasswordForm)
-from django.contrib.auth.tests.custom_user import CustomUser
-from django.contrib.auth.tests.utils import skipIfCustomUser
-from django.contrib.auth.views import login as login_view
-
-
-@override_settings(
- LANGUAGES=(
- ('en', 'English'),
- ),
- LANGUAGE_CODE='en',
- TEMPLATE_LOADERS=global_settings.TEMPLATE_LOADERS,
- TEMPLATE_DIRS=(
- os.path.join(os.path.dirname(upath(__file__)), 'templates'),
- ),
- USE_TZ=False,
- PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',),
-)
-class AuthViewsTestCase(TestCase):
- """
- Helper base class for all the follow test cases.
- """
- fixtures = ['authtestdata.json']
- urls = 'django.contrib.auth.tests.urls'
-
- def login(self, password='password'):
- response = self.client.post('/login/', {
- 'username': 'testclient',
- 'password': password,
- })
- self.assertTrue(SESSION_KEY in self.client.session)
- return response
-
- def logout(self):
- response = self.client.get('/admin/logout/')
- self.assertEqual(response.status_code, 200)
- self.assertTrue(SESSION_KEY not in self.client.session)
-
- def assertFormError(self, response, error):
- """Assert that error is found in response.context['form'] errors"""
- form_errors = list(itertools.chain(*response.context['form'].errors.values()))
- self.assertIn(force_text(error), form_errors)
-
- def assertURLEqual(self, url, expected, parse_qs=False):
- """
- Given two URLs, make sure all their components (the ones given by
- urlparse) are equal, only comparing components that are present in both
- URLs.
- If `parse_qs` is True, then the querystrings are parsed with QueryDict.
- This is useful if you don't want the order of parameters to matter.
- Otherwise, the query strings are compared as-is.
- """
- fields = ParseResult._fields
-
- for attr, x, y in zip(fields, urlparse(url), urlparse(expected)):
- if parse_qs and attr == 'query':
- x, y = QueryDict(x), QueryDict(y)
- if x and y and x != y:
- self.fail("%r != %r (%s doesn't match)" % (url, expected, attr))
-
-
-@skipIfCustomUser
-class AuthViewNamedURLTests(AuthViewsTestCase):
- urls = 'django.contrib.auth.urls'
-
- def test_named_urls(self):
- "Named URLs should be reversible"
- expected_named_urls = [
- ('login', [], {}),
- ('logout', [], {}),
- ('password_change', [], {}),
- ('password_change_done', [], {}),
- ('password_reset', [], {}),
- ('password_reset_done', [], {}),
- ('password_reset_confirm', [], {
- 'uidb64': 'aaaaaaa',
- 'token': '1111-aaaaa',
- }),
- ('password_reset_complete', [], {}),
- ]
- for name, args, kwargs in expected_named_urls:
- try:
- reverse(name, args=args, kwargs=kwargs)
- except NoReverseMatch:
- self.fail("Reversal of url named '%s' failed with NoReverseMatch" % name)
-
-
-@skipIfCustomUser
-class PasswordResetTest(AuthViewsTestCase):
-
- def test_email_not_found(self):
- """If the provided email is not registered, don't raise any error but
- also don't send any email."""
- response = self.client.get('/password_reset/')
- self.assertEqual(response.status_code, 200)
- response = self.client.post('/password_reset/', {'email': 'not_a_real_email@email.com'})
- self.assertEqual(response.status_code, 302)
- self.assertEqual(len(mail.outbox), 0)
-
- def test_email_found(self):
- "Email is sent if a valid email address is provided for password reset"
- response = self.client.post('/password_reset/', {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertEqual(len(mail.outbox), 1)
- self.assertTrue("http://" in mail.outbox[0].body)
- self.assertEqual(settings.DEFAULT_FROM_EMAIL, mail.outbox[0].from_email)
-
- def test_email_found_custom_from(self):
- "Email is sent if a valid email address is provided for password reset when a custom from_email is provided."
- response = self.client.post('/password_reset_from_email/', {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertEqual(len(mail.outbox), 1)
- self.assertEqual("staffmember@example.com", mail.outbox[0].from_email)
-
- @override_settings(ALLOWED_HOSTS=['adminsite.com'])
- def test_admin_reset(self):
- "If the reset view is marked as being for admin, the HTTP_HOST header is used for a domain override."
- response = self.client.post('/admin_password_reset/',
- {'email': 'staffmember@example.com'},
- HTTP_HOST='adminsite.com'
- )
- self.assertEqual(response.status_code, 302)
- self.assertEqual(len(mail.outbox), 1)
- self.assertTrue("http://adminsite.com" in mail.outbox[0].body)
- self.assertEqual(settings.DEFAULT_FROM_EMAIL, mail.outbox[0].from_email)
-
- # Skip any 500 handler action (like sending more mail...)
- @override_settings(DEBUG_PROPAGATE_EXCEPTIONS=True)
- def test_poisoned_http_host(self):
- "Poisoned HTTP_HOST headers can't be used for reset emails"
- # This attack is based on the way browsers handle URLs. The colon
- # should be used to separate the port, but if the URL contains an @,
- # the colon is interpreted as part of a username for login purposes,
- # making 'evil.com' the request domain. Since HTTP_HOST is used to
- # produce a meaningful reset URL, we need to be certain that the
- # HTTP_HOST header isn't poisoned. This is done as a check when get_host()
- # is invoked, but we check here as a practical consequence.
- with patch_logger('django.security.DisallowedHost', 'error') as logger_calls:
- response = self.client.post('/password_reset/',
- {'email': 'staffmember@example.com'},
- HTTP_HOST='www.example:dr.frankenstein@evil.tld'
- )
- self.assertEqual(response.status_code, 400)
- self.assertEqual(len(mail.outbox), 0)
- self.assertEqual(len(logger_calls), 1)
-
- # Skip any 500 handler action (like sending more mail...)
- @override_settings(DEBUG_PROPAGATE_EXCEPTIONS=True)
- def test_poisoned_http_host_admin_site(self):
- "Poisoned HTTP_HOST headers can't be used for reset emails on admin views"
- with patch_logger('django.security.DisallowedHost', 'error') as logger_calls:
- response = self.client.post('/admin_password_reset/',
- {'email': 'staffmember@example.com'},
- HTTP_HOST='www.example:dr.frankenstein@evil.tld'
- )
- self.assertEqual(response.status_code, 400)
- self.assertEqual(len(mail.outbox), 0)
- self.assertEqual(len(logger_calls), 1)
-
-
- def _test_confirm_start(self):
- # Start by creating the email
- response = self.client.post('/password_reset/', {'email': 'staffmember@example.com'})
- self.assertEqual(len(mail.outbox), 1)
- return self._read_signup_email(mail.outbox[0])
-
- def _read_signup_email(self, email):
- urlmatch = re.search(r"https?://[^/]*(/.*reset/\S*)", email.body)
- self.assertTrue(urlmatch is not None, "No URL found in sent email")
- return urlmatch.group(), urlmatch.groups()[0]
-
- def test_confirm_valid(self):
- url, path = self._test_confirm_start()
- response = self.client.get(path)
- # redirect to a 'complete' page:
- self.assertContains(response, "Please enter your new password")
-
- def test_confirm_valid_base36(self):
- # Remove in Django 1.7
- url, path = self._test_confirm_start()
- path_parts = path.strip("/").split("/")
- # construct an old style (base36) URL by converting the base64 ID
- path_parts[1] = int_to_base36(int(urlsafe_base64_decode(path_parts[1])))
- response = self.client.get("/%s/%s-%s/" % tuple(path_parts))
- # redirect to a 'complete' page:
- self.assertContains(response, "Please enter your new password")
-
- def test_confirm_invalid(self):
- url, path = self._test_confirm_start()
- # Let's munge the token in the path, but keep the same length,
- # in case the URLconf will reject a different length.
- path = path[:-5] + ("0" * 4) + path[-1]
-
- response = self.client.get(path)
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_invalid_user(self):
- # Ensure that we get a 200 response for a non-existant user, not a 404
- response = self.client.get('/reset/123456/1-1/')
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_invalid_user_base36(self):
- # Remove in Django 1.7
- response = self.client.get('/reset/123456-1-1/')
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_overflow_user(self):
- # Ensure that we get a 200 response for a base36 user id that overflows int
- response = self.client.get('/reset/zzzzzzzzzzzzz/1-1/')
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_overflow_user_base36(self):
- # Remove in Django 1.7
- response = self.client.get('/reset/zzzzzzzzzzzzz-1-1/')
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_invalid_post(self):
- # Same as test_confirm_invalid, but trying
- # to do a POST instead.
- url, path = self._test_confirm_start()
- path = path[:-5] + ("0" * 4) + path[-1]
-
- self.client.post(path, {
- 'new_password1': 'anewpassword',
- 'new_password2': ' anewpassword',
- })
- # Check the password has not been changed
- u = User.objects.get(email='staffmember@example.com')
- self.assertTrue(not u.check_password("anewpassword"))
-
- def test_confirm_complete(self):
- url, path = self._test_confirm_start()
- response = self.client.post(path, {'new_password1': 'anewpassword',
- 'new_password2': 'anewpassword'})
- # Check the password has been changed
- u = User.objects.get(email='staffmember@example.com')
- self.assertTrue(u.check_password("anewpassword"))
-
- # Check we can't use the link again
- response = self.client.get(path)
- self.assertContains(response, "The password reset link was invalid")
-
- def test_confirm_different_passwords(self):
- url, path = self._test_confirm_start()
- response = self.client.post(path, {'new_password1': 'anewpassword',
- 'new_password2': 'x'})
- self.assertFormError(response, SetPasswordForm.error_messages['password_mismatch'])
-
- def test_reset_redirect_default(self):
- response = self.client.post('/password_reset/',
- {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_reset/done/')
-
- def test_reset_custom_redirect(self):
- response = self.client.post('/password_reset/custom_redirect/',
- {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/custom/')
-
- def test_reset_custom_redirect_named(self):
- response = self.client.post('/password_reset/custom_redirect/named/',
- {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_reset/')
-
- def test_confirm_redirect_default(self):
- url, path = self._test_confirm_start()
- response = self.client.post(path, {'new_password1': 'anewpassword',
- 'new_password2': 'anewpassword'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/reset/done/')
-
- def test_confirm_redirect_custom(self):
- url, path = self._test_confirm_start()
- path = path.replace('/reset/', '/reset/custom/')
- response = self.client.post(path, {'new_password1': 'anewpassword',
- 'new_password2': 'anewpassword'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/custom/')
-
- def test_confirm_redirect_custom_named(self):
- url, path = self._test_confirm_start()
- path = path.replace('/reset/', '/reset/custom/named/')
- response = self.client.post(path, {'new_password1': 'anewpassword',
- 'new_password2': 'anewpassword'})
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_reset/')
-
-
-@override_settings(AUTH_USER_MODEL='auth.CustomUser')
-class CustomUserPasswordResetTest(AuthViewsTestCase):
- fixtures = ['custom_user.json']
-
- def _test_confirm_start(self):
- # Start by creating the email
- response = self.client.post('/password_reset/', {'email': 'staffmember@example.com'})
- self.assertEqual(response.status_code, 302)
- self.assertEqual(len(mail.outbox), 1)
- return self._read_signup_email(mail.outbox[0])
-
- def _read_signup_email(self, email):
- urlmatch = re.search(r"https?://[^/]*(/.*reset/\S*)", email.body)
- self.assertTrue(urlmatch is not None, "No URL found in sent email")
- return urlmatch.group(), urlmatch.groups()[0]
-
- def test_confirm_valid_custom_user(self):
- url, path = self._test_confirm_start()
- response = self.client.get(path)
- # redirect to a 'complete' page:
- self.assertContains(response, "Please enter your new password")
-
-
-@skipIfCustomUser
-class ChangePasswordTest(AuthViewsTestCase):
-
- def fail_login(self, password='password'):
- response = self.client.post('/login/', {
- 'username': 'testclient',
- 'password': password,
- })
- self.assertFormError(response, AuthenticationForm.error_messages['invalid_login'] % {
- 'username': User._meta.get_field('username').verbose_name
- })
-
- def logout(self):
- response = self.client.get('/logout/')
-
- def test_password_change_fails_with_invalid_old_password(self):
- self.login()
- response = self.client.post('/password_change/', {
- 'old_password': 'donuts',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.assertFormError(response, PasswordChangeForm.error_messages['password_incorrect'])
-
- def test_password_change_fails_with_mismatched_passwords(self):
- self.login()
- response = self.client.post('/password_change/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'donuts',
- })
- self.assertFormError(response, SetPasswordForm.error_messages['password_mismatch'])
-
- def test_password_change_succeeds(self):
- self.login()
- response = self.client.post('/password_change/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.fail_login()
- self.login(password='password1')
-
- def test_password_change_done_succeeds(self):
- self.login()
- response = self.client.post('/password_change/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_change/done/')
-
- @override_settings(LOGIN_URL='/login/')
- def test_password_change_done_fails(self):
- response = self.client.get('/password_change/done/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/login/?next=/password_change/done/')
-
- def test_password_change_redirect_default(self):
- self.login()
- response = self.client.post('/password_change/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_change/done/')
-
- def test_password_change_redirect_custom(self):
- self.login()
- response = self.client.post('/password_change/custom/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/custom/')
-
- def test_password_change_redirect_custom_named(self):
- self.login()
- response = self.client.post('/password_change/custom/named/', {
- 'old_password': 'password',
- 'new_password1': 'password1',
- 'new_password2': 'password1',
- })
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_reset/')
-
-
-@skipIfCustomUser
-class LoginTest(AuthViewsTestCase):
-
- def test_current_site_in_context_after_login(self):
- response = self.client.get(reverse('login'))
- self.assertEqual(response.status_code, 200)
- if Site._meta.installed:
- site = Site.objects.get_current()
- self.assertEqual(response.context['site'], site)
- self.assertEqual(response.context['site_name'], site.name)
- else:
- self.assertIsInstance(response.context['site'], RequestSite)
- self.assertTrue(isinstance(response.context['form'], AuthenticationForm),
- 'Login form is not an AuthenticationForm')
-
- def test_security_check(self, password='password'):
- login_url = reverse('login')
-
- # Those URLs should not pass the security check
- for bad_url in ('http://example.com',
- 'https://example.com',
- 'ftp://exampel.com',
- '//example.com',
- 'javascript:alert("XSS")'):
-
- nasty_url = '%(url)s?%(next)s=%(bad_url)s' % {
- 'url': login_url,
- 'next': REDIRECT_FIELD_NAME,
- 'bad_url': urlquote(bad_url),
- }
- response = self.client.post(nasty_url, {
- 'username': 'testclient',
- 'password': password,
- })
- self.assertEqual(response.status_code, 302)
- self.assertFalse(bad_url in response.url,
- "%s should be blocked" % bad_url)
-
- # These URLs *should* still pass the security check
- for good_url in ('/view/?param=http://example.com',
- '/view/?param=https://example.com',
- '/view?param=ftp://exampel.com',
- 'view/?param=//example.com',
- 'https:///',
- 'HTTPS:///',
- '//testserver/',
- '/url%20with%20spaces/'): # see ticket #12534
- safe_url = '%(url)s?%(next)s=%(good_url)s' % {
- 'url': login_url,
- 'next': REDIRECT_FIELD_NAME,
- 'good_url': urlquote(good_url),
- }
- response = self.client.post(safe_url, {
- 'username': 'testclient',
- 'password': password,
- })
- self.assertEqual(response.status_code, 302)
- self.assertTrue(good_url in response.url,
- "%s should be allowed" % good_url)
-
- def test_login_form_contains_request(self):
- # 15198
- response = self.client.post('/custom_requestauth_login/', {
- 'username': 'testclient',
- 'password': 'password',
- }, follow=True)
- # the custom authentication form used by this login asserts
- # that a request is passed to the form successfully.
-
- def test_login_csrf_rotate(self, password='password'):
- """
- Makes sure that a login rotates the currently-used CSRF token.
- """
- # Do a GET to establish a CSRF token
- # TestClient isn't used here as we're testing middleware, essentially.
- req = HttpRequest()
- CsrfViewMiddleware().process_view(req, login_view, (), {})
- req.META["CSRF_COOKIE_USED"] = True
- resp = login_view(req)
- resp2 = CsrfViewMiddleware().process_response(req, resp)
- csrf_cookie = resp2.cookies.get(settings.CSRF_COOKIE_NAME, None)
- token1 = csrf_cookie.coded_value
-
- # Prepare the POST request
- req = HttpRequest()
- req.COOKIES[settings.CSRF_COOKIE_NAME] = token1
- req.method = "POST"
- req.POST = {'username': 'testclient', 'password': password, 'csrfmiddlewaretoken': token1}
- req.REQUEST = req.POST
-
- # Use POST request to log in
- SessionMiddleware().process_request(req)
- CsrfViewMiddleware().process_view(req, login_view, (), {})
- req.META["SERVER_NAME"] = "testserver" # Required to have redirect work in login view
- req.META["SERVER_PORT"] = 80
- resp = login_view(req)
- resp2 = CsrfViewMiddleware().process_response(req, resp)
- csrf_cookie = resp2.cookies.get(settings.CSRF_COOKIE_NAME, None)
- token2 = csrf_cookie.coded_value
-
- # Check the CSRF token switched
- self.assertNotEqual(token1, token2)
-
-
-@skipIfCustomUser
-class LoginURLSettings(AuthViewsTestCase):
- """Tests for settings.LOGIN_URL."""
- def assertLoginURLEquals(self, url, parse_qs=False):
- response = self.client.get('/login_required/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, url, parse_qs=parse_qs)
-
- @override_settings(LOGIN_URL='/login/')
- def test_standard_login_url(self):
- self.assertLoginURLEquals('/login/?next=/login_required/')
-
- @override_settings(LOGIN_URL='login')
- def test_named_login_url(self):
- self.assertLoginURLEquals('/login/?next=/login_required/')
-
- @override_settings(LOGIN_URL='http://remote.example.com/login')
- def test_remote_login_url(self):
- quoted_next = urlquote('http://testserver/login_required/')
- expected = 'http://remote.example.com/login?next=%s' % quoted_next
- self.assertLoginURLEquals(expected)
-
- @override_settings(LOGIN_URL='https:///login/')
- def test_https_login_url(self):
- quoted_next = urlquote('http://testserver/login_required/')
- expected = 'https:///login/?next=%s' % quoted_next
- self.assertLoginURLEquals(expected)
-
- @override_settings(LOGIN_URL='/login/?pretty=1')
- def test_login_url_with_querystring(self):
- self.assertLoginURLEquals('/login/?pretty=1&next=/login_required/', parse_qs=True)
-
- @override_settings(LOGIN_URL='http://remote.example.com/login/?next=/default/')
- def test_remote_login_url_with_next_querystring(self):
- quoted_next = urlquote('http://testserver/login_required/')
- expected = 'http://remote.example.com/login/?next=%s' % quoted_next
- self.assertLoginURLEquals(expected)
-
-
-@skipIfCustomUser
-class LoginRedirectUrlTest(AuthViewsTestCase):
- """Tests for settings.LOGIN_REDIRECT_URL."""
- def assertLoginRedirectURLEqual(self, url):
- response = self.login()
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, url)
-
- def test_default(self):
- self.assertLoginRedirectURLEqual('/accounts/profile/')
-
- @override_settings(LOGIN_REDIRECT_URL='/custom/')
- def test_custom(self):
- self.assertLoginRedirectURLEqual('/custom/')
-
- @override_settings(LOGIN_REDIRECT_URL='password_reset')
- def test_named(self):
- self.assertLoginRedirectURLEqual('/password_reset/')
-
- @override_settings(LOGIN_REDIRECT_URL='http://remote.example.com/welcome/')
- def test_remote(self):
- self.assertLoginRedirectURLEqual('http://remote.example.com/welcome/')
-
-
-@skipIfCustomUser
-class LogoutTest(AuthViewsTestCase):
-
- def confirm_logged_out(self):
- self.assertTrue(SESSION_KEY not in self.client.session)
-
- def test_logout_default(self):
- "Logout without next_page option renders the default template"
- self.login()
- response = self.client.get('/logout/')
- self.assertContains(response, 'Logged out')
- self.confirm_logged_out()
-
- def test_14377(self):
- # Bug 14377
- self.login()
- response = self.client.get('/logout/')
- self.assertTrue('site' in response.context)
-
- def test_logout_with_overridden_redirect_url(self):
- # Bug 11223
- self.login()
- response = self.client.get('/logout/next_page/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/somewhere/')
-
- response = self.client.get('/logout/next_page/?next=/login/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/login/')
-
- self.confirm_logged_out()
-
- def test_logout_with_next_page_specified(self):
- "Logout with next_page option given redirects to specified resource"
- self.login()
- response = self.client.get('/logout/next_page/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/somewhere/')
- self.confirm_logged_out()
-
- def test_logout_with_redirect_argument(self):
- "Logout with query string redirects to specified resource"
- self.login()
- response = self.client.get('/logout/?next=/login/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/login/')
- self.confirm_logged_out()
-
- def test_logout_with_custom_redirect_argument(self):
- "Logout with custom query string redirects to specified resource"
- self.login()
- response = self.client.get('/logout/custom_query/?follow=/somewhere/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/somewhere/')
- self.confirm_logged_out()
-
- def test_logout_with_named_redirect(self):
- "Logout resolves names or URLs passed as next_page."
- self.login()
- response = self.client.get('/logout/next_page/named/')
- self.assertEqual(response.status_code, 302)
- self.assertURLEqual(response.url, '/password_reset/')
- self.confirm_logged_out()
-
- def test_security_check(self, password='password'):
- logout_url = reverse('logout')
-
- # Those URLs should not pass the security check
- for bad_url in ('http://example.com',
- 'https://example.com',
- 'ftp://exampel.com',
- '//example.com',
- 'javascript:alert("XSS")'):
- nasty_url = '%(url)s?%(next)s=%(bad_url)s' % {
- 'url': logout_url,
- 'next': REDIRECT_FIELD_NAME,
- 'bad_url': urlquote(bad_url),
- }
- self.login()
- response = self.client.get(nasty_url)
- self.assertEqual(response.status_code, 302)
- self.assertFalse(bad_url in response.url,
- "%s should be blocked" % bad_url)
- self.confirm_logged_out()
-
- # These URLs *should* still pass the security check
- for good_url in ('/view/?param=http://example.com',
- '/view/?param=https://example.com',
- '/view?param=ftp://exampel.com',
- 'view/?param=//example.com',
- 'https:///',
- 'HTTPS:///',
- '//testserver/',
- '/url%20with%20spaces/'): # see ticket #12534
- safe_url = '%(url)s?%(next)s=%(good_url)s' % {
- 'url': logout_url,
- 'next': REDIRECT_FIELD_NAME,
- 'good_url': urlquote(good_url),
- }
- self.login()
- response = self.client.get(safe_url)
- self.assertEqual(response.status_code, 302)
- self.assertTrue(good_url in response.url,
- "%s should be allowed" % good_url)
- self.confirm_logged_out()
-
- def test_logout_preserve_language(self):
- """Check that language stored in session is preserved after logout"""
- # Create a new session with language
- engine = import_module(settings.SESSION_ENGINE)
- session = engine.SessionStore()
- session['django_language'] = 'pl'
- session.save()
- self.client.cookies[settings.SESSION_COOKIE_NAME] = session.session_key
-
- self.client.get('/logout/')
- self.assertEqual(self.client.session['django_language'], 'pl')
-
-
-@skipIfCustomUser
-@override_settings(
- PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',),
-)
-class ChangelistTests(AuthViewsTestCase):
- urls = 'django.contrib.auth.tests.urls_admin'
-
- def setUp(self):
- # Make me a superuser before logging in.
- User.objects.filter(username='testclient').update(is_staff=True, is_superuser=True)
- self.login()
- self.admin = User.objects.get(pk=1)
-
- def get_user_data(self, user):
- return {
- 'username': user.username,
- 'password': user.password,
- 'email': user.email,
- 'is_active': user.is_active,
- 'is_staff': user.is_staff,
- 'is_superuser': user.is_superuser,
- 'last_login_0': user.last_login.strftime('%Y-%m-%d'),
- 'last_login_1': user.last_login.strftime('%H:%M:%S'),
- 'initial-last_login_0': user.last_login.strftime('%Y-%m-%d'),
- 'initial-last_login_1': user.last_login.strftime('%H:%M:%S'),
- 'date_joined_0': user.date_joined.strftime('%Y-%m-%d'),
- 'date_joined_1': user.date_joined.strftime('%H:%M:%S'),
- 'initial-date_joined_0': user.date_joined.strftime('%Y-%m-%d'),
- 'initial-date_joined_1': user.date_joined.strftime('%H:%M:%S'),
- 'first_name': user.first_name,
- 'last_name': user.last_name,
- }
-
- # #20078 - users shouldn't be allowed to guess password hashes via
- # repeated password__startswith queries.
- def test_changelist_disallows_password_lookups(self):
- # A lookup that tries to filter on password isn't OK
- with patch_logger('django.security.DisallowedModelAdminLookup', 'error') as logger_calls:
- response = self.client.get('/admin/auth/user/?password__startswith=sha1$')
- self.assertEqual(response.status_code, 400)
- self.assertEqual(len(logger_calls), 1)
-
- def test_user_change_email(self):
- data = self.get_user_data(self.admin)
- data['email'] = 'new_' + data['email']
- response = self.client.post('/admin/auth/user/%s/' % self.admin.pk, data)
- self.assertRedirects(response, '/admin/auth/user/')
- row = LogEntry.objects.latest('id')
- self.assertEqual(row.change_message, 'Changed email.')
-
- def test_user_not_change(self):
- response = self.client.post('/admin/auth/user/%s/' % self.admin.pk,
- self.get_user_data(self.admin)
- )
- self.assertRedirects(response, '/admin/auth/user/')
- row = LogEntry.objects.latest('id')
- self.assertEqual(row.change_message, 'No fields changed.')
-
- def test_user_change_password(self):
- response = self.client.post('/admin/auth/user/%s/password/' % self.admin.pk, {
- 'password1': 'password1',
- 'password2': 'password1',
- })
- self.assertRedirects(response, '/admin/auth/user/%s/' % self.admin.pk)
- row = LogEntry.objects.latest('id')
- self.assertEqual(row.change_message, 'Changed password.')
- self.logout()
- self.login(password='password1')
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/urls.py b/lib/python2.7/site-packages/django/contrib/auth/tests/urls.py
deleted file mode 100644
index 502fc65..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/urls.py
+++ /dev/null
@@ -1,90 +0,0 @@
-from django.conf.urls import patterns, url
-from django.contrib.auth import context_processors
-from django.contrib.auth.forms import AuthenticationForm
-from django.contrib.auth.urls import urlpatterns
-from django.contrib.auth.views import password_reset, login
-from django.contrib.auth.decorators import login_required
-from django.contrib.messages.api import info
-from django.http import HttpResponse, HttpRequest
-from django.shortcuts import render_to_response
-from django.template import Template, RequestContext
-from django.views.decorators.cache import never_cache
-
-class CustomRequestAuthenticationForm(AuthenticationForm):
- def __init__(self, request, *args, **kwargs):
- assert isinstance(request, HttpRequest)
- super(CustomRequestAuthenticationForm, self).__init__(request, *args, **kwargs)
-
-@never_cache
-def remote_user_auth_view(request):
- "Dummy view for remote user tests"
- t = Template("Username is {{ user }}.")
- c = RequestContext(request, {})
- return HttpResponse(t.render(c))
-
-def auth_processor_no_attr_access(request):
- r1 = render_to_response('context_processors/auth_attrs_no_access.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
- # *After* rendering, we check whether the session was accessed
- return render_to_response('context_processors/auth_attrs_test_access.html',
- {'session_accessed':request.session.accessed})
-
-def auth_processor_attr_access(request):
- r1 = render_to_response('context_processors/auth_attrs_access.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
- return render_to_response('context_processors/auth_attrs_test_access.html',
- {'session_accessed':request.session.accessed})
-
-def auth_processor_user(request):
- return render_to_response('context_processors/auth_attrs_user.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
-
-def auth_processor_perms(request):
- return render_to_response('context_processors/auth_attrs_perms.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
-
-def auth_processor_perm_in_perms(request):
- return render_to_response('context_processors/auth_attrs_perm_in_perms.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
-
-def auth_processor_messages(request):
- info(request, "Message 1")
- return render_to_response('context_processors/auth_attrs_messages.html',
- RequestContext(request, {}, processors=[context_processors.auth]))
-
-def userpage(request):
- pass
-
-def custom_request_auth_login(request):
- return login(request, authentication_form=CustomRequestAuthenticationForm)
-
-# special urls for auth test cases
-urlpatterns = urlpatterns + patterns('',
- (r'^logout/custom_query/$', 'django.contrib.auth.views.logout', dict(redirect_field_name='follow')),
- (r'^logout/next_page/$', 'django.contrib.auth.views.logout', dict(next_page='/somewhere/')),
- (r'^logout/next_page/named/$', 'django.contrib.auth.views.logout', dict(next_page='password_reset')),
- (r'^remote_user/$', remote_user_auth_view),
- (r'^password_reset_from_email/$', 'django.contrib.auth.views.password_reset', dict(from_email='staffmember@example.com')),
- (r'^password_reset/custom_redirect/$', 'django.contrib.auth.views.password_reset', dict(post_reset_redirect='/custom/')),
- (r'^password_reset/custom_redirect/named/$', 'django.contrib.auth.views.password_reset', dict(post_reset_redirect='password_reset')),
- (r'^reset/custom/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
- 'django.contrib.auth.views.password_reset_confirm',
- dict(post_reset_redirect='/custom/')),
- (r'^reset/custom/named/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
- 'django.contrib.auth.views.password_reset_confirm',
- dict(post_reset_redirect='password_reset')),
- (r'^password_change/custom/$', 'django.contrib.auth.views.password_change', dict(post_change_redirect='/custom/')),
- (r'^password_change/custom/named/$', 'django.contrib.auth.views.password_change', dict(post_change_redirect='password_reset')),
- (r'^admin_password_reset/$', 'django.contrib.auth.views.password_reset', dict(is_admin_site=True)),
- (r'^login_required/$', login_required(password_reset)),
- (r'^login_required_login_url/$', login_required(password_reset, login_url='/somewhere/')),
-
- (r'^auth_processor_no_attr_access/$', auth_processor_no_attr_access),
- (r'^auth_processor_attr_access/$', auth_processor_attr_access),
- (r'^auth_processor_user/$', auth_processor_user),
- (r'^auth_processor_perms/$', auth_processor_perms),
- (r'^auth_processor_perm_in_perms/$', auth_processor_perm_in_perms),
- (r'^auth_processor_messages/$', auth_processor_messages),
- (r'^custom_request_auth_login/$', custom_request_auth_login),
- url(r'^userpage/(.+)/$', userpage, name="userpage"),
-)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/urls_admin.py b/lib/python2.7/site-packages/django/contrib/auth/tests/urls_admin.py
deleted file mode 100644
index 14a38e4..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/urls_admin.py
+++ /dev/null
@@ -1,18 +0,0 @@
-"""
-Test URLs for auth admins.
-"""
-
-from django.conf.urls import patterns, include
-from django.contrib import admin
-from django.contrib.auth.admin import UserAdmin, GroupAdmin
-from django.contrib.auth.models import User, Group
-from django.contrib.auth.urls import urlpatterns
-
-# Create a silo'd admin site for just the user/group admins.
-site = admin.AdminSite(name='auth_test_admin')
-site.register(User, UserAdmin)
-site.register(Group, GroupAdmin)
-
-urlpatterns = urlpatterns + patterns('',
- (r'^admin/', include(site.urls)),
-)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tests/utils.py b/lib/python2.7/site-packages/django/contrib/auth/tests/utils.py
deleted file mode 100644
index 6bb3d99..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tests/utils.py
+++ /dev/null
@@ -1,9 +0,0 @@
-from django.conf import settings
-from django.utils.unittest import skipIf
-
-
-def skipIfCustomUser(test_func):
- """
- Skip a test if a custom user model is in use.
- """
- return skipIf(settings.AUTH_USER_MODEL != 'auth.User', 'Custom user model in use')(test_func)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/tokens.py b/lib/python2.7/site-packages/django/contrib/auth/tokens.py
deleted file mode 100644
index 6e5bfe7..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/tokens.py
+++ /dev/null
@@ -1,73 +0,0 @@
-from datetime import date
-from django.conf import settings
-from django.utils.http import int_to_base36, base36_to_int
-from django.utils.crypto import constant_time_compare, salted_hmac
-from django.utils import six
-
-
-class PasswordResetTokenGenerator(object):
- """
- Strategy object used to generate and check tokens for the password
- reset mechanism.
- """
- def make_token(self, user):
- """
- Returns a token that can be used once to do a password reset
- for the given user.
- """
- return self._make_token_with_timestamp(user, self._num_days(self._today()))
-
- def check_token(self, user, token):
- """
- Check that a password reset token is correct for a given user.
- """
- # Parse the token
- try:
- ts_b36, hash = token.split("-")
- except ValueError:
- return False
-
- try:
- ts = base36_to_int(ts_b36)
- except ValueError:
- return False
-
- # Check that the timestamp/uid has not been tampered with
- if not constant_time_compare(self._make_token_with_timestamp(user, ts), token):
- return False
-
- # Check the timestamp is within limit
- if (self._num_days(self._today()) - ts) > settings.PASSWORD_RESET_TIMEOUT_DAYS:
- return False
-
- return True
-
- def _make_token_with_timestamp(self, user, timestamp):
- # timestamp is number of days since 2001-1-1. Converted to
- # base 36, this gives us a 3 digit string until about 2121
- ts_b36 = int_to_base36(timestamp)
-
- # By hashing on the internal state of the user and using state
- # that is sure to change (the password salt will change as soon as
- # the password is set, at least for current Django auth, and
- # last_login will also change), we produce a hash that will be
- # invalid as soon as it is used.
- # We limit the hash to 20 chars to keep URL short
- key_salt = "django.contrib.auth.tokens.PasswordResetTokenGenerator"
-
- # Ensure results are consistent across DB backends
- login_timestamp = user.last_login.replace(microsecond=0, tzinfo=None)
-
- value = (six.text_type(user.pk) + user.password +
- six.text_type(login_timestamp) + six.text_type(timestamp))
- hash = salted_hmac(key_salt, value).hexdigest()[::2]
- return "%s-%s" % (ts_b36, hash)
-
- def _num_days(self, dt):
- return (dt - date(2001, 1, 1)).days
-
- def _today(self):
- # Used for mocking in tests
- return date.today()
-
-default_token_generator = PasswordResetTokenGenerator()
diff --git a/lib/python2.7/site-packages/django/contrib/auth/urls.py b/lib/python2.7/site-packages/django/contrib/auth/urls.py
deleted file mode 100644
index 801d133..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/urls.py
+++ /dev/null
@@ -1,22 +0,0 @@
-# The views used below are normally mapped in django.contrib.admin.urls.py
-# This URLs file is used to provide a reliable view deployment for test purposes.
-# It is also provided as a convenience to those who want to deploy these URLs
-# elsewhere.
-
-from django.conf.urls import patterns, url
-
-urlpatterns = patterns('',
- url(r'^login/$', 'django.contrib.auth.views.login', name='login'),
- url(r'^logout/$', 'django.contrib.auth.views.logout', name='logout'),
- url(r'^password_change/$', 'django.contrib.auth.views.password_change', name='password_change'),
- url(r'^password_change/done/$', 'django.contrib.auth.views.password_change_done', name='password_change_done'),
- url(r'^password_reset/$', 'django.contrib.auth.views.password_reset', name='password_reset'),
- url(r'^password_reset/done/$', 'django.contrib.auth.views.password_reset_done', name='password_reset_done'),
- # Support old style base36 password reset links; remove in Django 1.7
- url(r'^reset/(?P<uidb36>[0-9A-Za-z]{1,13})-(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
- 'django.contrib.auth.views.password_reset_confirm_uidb36'),
- url(r'^reset/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$',
- 'django.contrib.auth.views.password_reset_confirm',
- name='password_reset_confirm'),
- url(r'^reset/done/$', 'django.contrib.auth.views.password_reset_complete', name='password_reset_complete'),
-)
diff --git a/lib/python2.7/site-packages/django/contrib/auth/views.py b/lib/python2.7/site-packages/django/contrib/auth/views.py
deleted file mode 100644
index c55f243..0000000
--- a/lib/python2.7/site-packages/django/contrib/auth/views.py
+++ /dev/null
@@ -1,284 +0,0 @@
-from django.conf import settings
-from django.core.urlresolvers import reverse
-from django.http import HttpResponseRedirect, QueryDict
-from django.template.response import TemplateResponse
-from django.utils.http import base36_to_int, is_safe_url, urlsafe_base64_decode, urlsafe_base64_encode
-from django.utils.translation import ugettext as _
-from django.utils.six.moves.urllib.parse import urlparse, urlunparse
-from django.shortcuts import resolve_url
-from django.utils.encoding import force_bytes, force_text
-from django.views.decorators.debug import sensitive_post_parameters
-from django.views.decorators.cache import never_cache
-from django.views.decorators.csrf import csrf_protect
-
-# Avoid shadowing the login() and logout() views below.
-from django.contrib.auth import REDIRECT_FIELD_NAME, login as auth_login, logout as auth_logout, get_user_model
-from django.contrib.auth.decorators import login_required
-from django.contrib.auth.forms import AuthenticationForm, PasswordResetForm, SetPasswordForm, PasswordChangeForm
-from django.contrib.auth.tokens import default_token_generator
-from django.contrib.sites.models import get_current_site
-
-
-@sensitive_post_parameters()
-@csrf_protect
-@never_cache
-def login(request, template_name='registration/login.html',
- redirect_field_name=REDIRECT_FIELD_NAME,
- authentication_form=AuthenticationForm,
- current_app=None, extra_context=None):
- """
- Displays the login form and handles the login action.
- """
- redirect_to = request.REQUEST.get(redirect_field_name, '')
-
- if request.method == "POST":
- form = authentication_form(request, data=request.POST)
- if form.is_valid():
-
- # Ensure the user-originating redirection url is safe.
- if not is_safe_url(url=redirect_to, host=request.get_host()):
- redirect_to = resolve_url(settings.LOGIN_REDIRECT_URL)
-
- # Okay, security check complete. Log the user in.
- auth_login(request, form.get_user())
-
- return HttpResponseRedirect(redirect_to)
- else:
- form = authentication_form(request)
-
- current_site = get_current_site(request)
-
- context = {
- 'form': form,
- redirect_field_name: redirect_to,
- 'site': current_site,
- 'site_name': current_site.name,
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-def logout(request, next_page=None,
- template_name='registration/logged_out.html',
- redirect_field_name=REDIRECT_FIELD_NAME,
- current_app=None, extra_context=None):
- """
- Logs out the user and displays 'You are logged out' message.
- """
- auth_logout(request)
-
- if next_page is not None:
- next_page = resolve_url(next_page)
-
- if redirect_field_name in request.REQUEST:
- next_page = request.REQUEST[redirect_field_name]
- # Security check -- don't allow redirection to a different host.
- if not is_safe_url(url=next_page, host=request.get_host()):
- next_page = request.path
-
- if next_page:
- # Redirect to this page until the session has been cleared.
- return HttpResponseRedirect(next_page)
-
- current_site = get_current_site(request)
- context = {
- 'site': current_site,
- 'site_name': current_site.name,
- 'title': _('Logged out')
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-def logout_then_login(request, login_url=None, current_app=None, extra_context=None):
- """
- Logs out the user if he is logged in. Then redirects to the log-in page.
- """
- if not login_url:
- login_url = settings.LOGIN_URL
- login_url = resolve_url(login_url)
- return logout(request, login_url, current_app=current_app, extra_context=extra_context)
-
-
-def redirect_to_login(next, login_url=None,
- redirect_field_name=REDIRECT_FIELD_NAME):
- """
- Redirects the user to the login page, passing the given 'next' page
- """
- resolved_url = resolve_url(login_url or settings.LOGIN_URL)
-
- login_url_parts = list(urlparse(resolved_url))
- if redirect_field_name:
- querystring = QueryDict(login_url_parts[4], mutable=True)
- querystring[redirect_field_name] = next
- login_url_parts[4] = querystring.urlencode(safe='/')
-
- return HttpResponseRedirect(urlunparse(login_url_parts))
-
-
-# 4 views for password reset:
-# - password_reset sends the mail
-# - password_reset_done shows a success message for the above
-# - password_reset_confirm checks the link the user clicked and
-# prompts for a new password
-# - password_reset_complete shows a success message for the above
-
-@csrf_protect
-def password_reset(request, is_admin_site=False,
- template_name='registration/password_reset_form.html',
- email_template_name='registration/password_reset_email.html',
- subject_template_name='registration/password_reset_subject.txt',
- password_reset_form=PasswordResetForm,
- token_generator=default_token_generator,
- post_reset_redirect=None,
- from_email=None,
- current_app=None,
- extra_context=None):
- if post_reset_redirect is None:
- post_reset_redirect = reverse('password_reset_done')
- else:
- post_reset_redirect = resolve_url(post_reset_redirect)
- if request.method == "POST":
- form = password_reset_form(request.POST)
- if form.is_valid():
- opts = {
- 'use_https': request.is_secure(),
- 'token_generator': token_generator,
- 'from_email': from_email,
- 'email_template_name': email_template_name,
- 'subject_template_name': subject_template_name,
- 'request': request,
- }
- if is_admin_site:
- opts = dict(opts, domain_override=request.get_host())
- form.save(**opts)
- return HttpResponseRedirect(post_reset_redirect)
- else:
- form = password_reset_form()
- context = {
- 'form': form,
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-def password_reset_done(request,
- template_name='registration/password_reset_done.html',
- current_app=None, extra_context=None):
- context = {}
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-# Doesn't need csrf_protect since no-one can guess the URL
-@sensitive_post_parameters()
-@never_cache
-def password_reset_confirm(request, uidb64=None, token=None,
- template_name='registration/password_reset_confirm.html',
- token_generator=default_token_generator,
- set_password_form=SetPasswordForm,
- post_reset_redirect=None,
- current_app=None, extra_context=None):
- """
- View that checks the hash in a password reset link and presents a
- form for entering a new password.
- """
- UserModel = get_user_model()
- assert uidb64 is not None and token is not None # checked by URLconf
- if post_reset_redirect is None:
- post_reset_redirect = reverse('password_reset_complete')
- else:
- post_reset_redirect = resolve_url(post_reset_redirect)
- try:
- uid = urlsafe_base64_decode(uidb64)
- user = UserModel._default_manager.get(pk=uid)
- except (TypeError, ValueError, OverflowError, UserModel.DoesNotExist):
- user = None
-
- if user is not None and token_generator.check_token(user, token):
- validlink = True
- if request.method == 'POST':
- form = set_password_form(user, request.POST)
- if form.is_valid():
- form.save()
- return HttpResponseRedirect(post_reset_redirect)
- else:
- form = set_password_form(None)
- else:
- validlink = False
- form = None
- context = {
- 'form': form,
- 'validlink': validlink,
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-def password_reset_confirm_uidb36(request, uidb36=None, **kwargs):
- # Support old password reset URLs that used base36 encoded user IDs.
- # Remove in Django 1.7
- try:
- uidb64 = force_text(urlsafe_base64_encode(force_bytes(base36_to_int(uidb36))))
- except ValueError:
- uidb64 = '1' # dummy invalid ID (incorrect padding for base64)
- return password_reset_confirm(request, uidb64=uidb64, **kwargs)
-
-def password_reset_complete(request,
- template_name='registration/password_reset_complete.html',
- current_app=None, extra_context=None):
- context = {
- 'login_url': resolve_url(settings.LOGIN_URL)
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-@sensitive_post_parameters()
-@csrf_protect
-@login_required
-def password_change(request,
- template_name='registration/password_change_form.html',
- post_change_redirect=None,
- password_change_form=PasswordChangeForm,
- current_app=None, extra_context=None):
- if post_change_redirect is None:
- post_change_redirect = reverse('password_change_done')
- else:
- post_change_redirect = resolve_url(post_change_redirect)
- if request.method == "POST":
- form = password_change_form(user=request.user, data=request.POST)
- if form.is_valid():
- form.save()
- return HttpResponseRedirect(post_change_redirect)
- else:
- form = password_change_form(user=request.user)
- context = {
- 'form': form,
- }
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)
-
-
-@login_required
-def password_change_done(request,
- template_name='registration/password_change_done.html',
- current_app=None, extra_context=None):
- context = {}
- if extra_context is not None:
- context.update(extra_context)
- return TemplateResponse(request, template_name, context,
- current_app=current_app)