Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicant.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicant.py	(revision 7104)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicant.py	(revision 7105)
@@ -146,5 +146,5 @@
         return name == self.chooseName()
 
-    def chooseName(self, name=None, attr=None, ext=None):
+    def chooseName(self, name=None, attr=None):
         """Get a valid file id for applicant context.
 
Index: main/waeup.sirp/trunk/src/waeup/sirp/imagestorage.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/imagestorage.py	(revision 7104)
+++ main/waeup.sirp/trunk/src/waeup/sirp/imagestorage.py	(revision 7105)
@@ -223,5 +223,5 @@
         return False
 
-    def chooseName(self, name, attr=None, ext=None):
+    def chooseName(self, name, attr=None):
         """Choose a unique valid file id for the object.
 
@@ -233,6 +233,6 @@
 
         For this default name chooser we return the given name if it
-        is valid or ``unknown_file`` else. The `attr` and the `ext` params
-        are not taken into account here.
+        is valid or ``unknown_file`` else. The `attr` param is not
+        taken into account here.
         """
         if self.checkName(name):
@@ -344,5 +344,5 @@
         return fd
 
-    def getFileByContext(self, context, attr=None, ext=None):
+    def getFileByContext(self, context, attr=None):
         """Get a file for given context.
 
@@ -355,5 +355,5 @@
         id for the context and `attr` given.
 
-        `context`, `attr` and `ext` are used to find (`context`)
+        Both, `context` and `attr` are used to find (`context`)
         and feed (`attr`) an appropriate file name chooser.
 
@@ -364,5 +364,5 @@
                      :class:`DefaultFileStoreHandler`.
         """
-        file_id = IFileStoreNameChooser(context).chooseName(attr=attr, ext=ext)
+        file_id = IFileStoreNameChooser(context).chooseName(attr=attr)
         return self.getFile(file_id)
 
@@ -378,5 +378,5 @@
         return
 
-    def deleteFileByContext(self, context, attr=None, ext=None):
+    def deleteFileByContext(self, context, attr=None):
         """Remove file identified by `context` and `attr` if it exists.
 
@@ -385,5 +385,5 @@
         id for the context and `attr` given.
 
-        `context`, `attr` and `ext` are used to find (`context`)
+        Both, `context` and `attr` are used to find (`context`)
         and feed (`attr`) an appropriate file name chooser.
 
@@ -395,5 +395,5 @@
 
         """
-        file_id = IFileStoreNameChooser(context).chooseName(attr=attr, ext=ext)
+        file_id = IFileStoreNameChooser(context).chooseName(attr=attr)
         return self.deleteFile(file_id)
 
Index: main/waeup.sirp/trunk/src/waeup/sirp/students/student.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/students/student.py	(revision 7104)
+++ main/waeup.sirp/trunk/src/waeup/sirp/students/student.py	(revision 7105)
@@ -177,12 +177,11 @@
         return name == self.chooseName()
 
-    def chooseName(self, name=None, attr=None, ext=u''):
+    def chooseName(self, name=None, attr=None):
         """Get a valid file id for student context.
 
         *Example:*
 
-        For a student with student id ``'A123456'``,
-        with attr ``'nice_image'`` and an uploaded file named
-        `'anybasename.JPG'`` to be stored in
+        For a student with student id ``'A123456'`` and
+        with attr ``'nice_image'`` stored in
         the students container this chooser would create:
 
@@ -195,10 +194,7 @@
 
         """
-        if name and name.count('.') == 1:
-            basename, ext = os.path.splitext(name)
-            ext.lower()
         stud_id = self.context.student_id
-        marked_filename = '__%s__%s/%s/%s_%s%s' % (
-            STUDENT_FILE_STORE_NAME, stud_id[0], stud_id, attr, stud_id, ext)
+        marked_filename = '__%s__%s/%s/%s_%s.jpg' % (
+            STUDENT_FILE_STORE_NAME, stud_id[0], stud_id, attr, stud_id)
         return marked_filename
 
Index: main/waeup.sirp/trunk/src/waeup/sirp/students/viewlets.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/students/viewlets.py	(revision 7104)
+++ main/waeup.sirp/trunk/src/waeup/sirp/students/viewlets.py	(revision 7105)
@@ -198,5 +198,5 @@
         return self.view.application_url() + rel_link
 
-def handle_file_upload(upload, context, view, max_size, attr=None):
+def handle_img_upload(upload, context, view, max_size, attr=None):
     """Handle upload of applicant image.
 
@@ -212,6 +212,5 @@
     upload.seek(0) # file pointer moved when determining size
     store = getUtility(IExtFileStore)
-    file_id = IFileStoreNameChooser(
-        context).chooseName(attr=attr, name=upload.filename)
+    file_id = IFileStoreNameChooser(context).chooseName(attr=attr)
     store.createFile(file_id, upload)
     return True
@@ -253,5 +252,5 @@
         if upload:
             # We got a fresh upload
-            file_changed = handle_file_upload(
+            file_changed = handle_img_upload(
                 upload, self.context, self.view, self.mus, self.attr)
             if file_changed is False:  # False is not None!
@@ -288,5 +287,4 @@
     grok.baseclass()
     attr = None
-    ext = u'.jpg'
 
     def render(self):
@@ -294,5 +292,5 @@
         # for file storage.
         image = getUtility(IExtFileStore).getFileByContext(
-            self.context, attr=self.attr, ext=self.ext)
+            self.context, attr=self.attr)
         self.response.setHeader(
             'Content-Type', 'image/jpeg')
@@ -307,3 +305,2 @@
     grok.name('birth_certificate.jpg')
     attr = u'birth_certificate'
-    ext = u'.jpg'
Index: main/waeup.sirp/trunk/src/waeup/sirp/tests/test_imagestorage.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/tests/test_imagestorage.py	(revision 7104)
+++ main/waeup.sirp/trunk/src/waeup/sirp/tests/test_imagestorage.py	(revision 7105)
@@ -158,5 +158,5 @@
         self.context = context
 
-    def chooseName(self, name=None, attr=None, ext=None):
+    def chooseName(self, name=None, attr=None):
         # this name chooser returns different file ids depending on
         # the `attr` parameter, a simple string.
