Index: /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser.py
===================================================================
--- /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser.py	(revision 16545)
+++ /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser.py	(revision 16546)
@@ -414,24 +414,24 @@
 
 class ResultStatement(AdditionalFile):
-    grok.name('res_stat.pdf')
+    grok.name('res_stat')
 
 class JAMBResult(AdditionalFile):
-    grok.name('jamb.pdf')
+    grok.name('jamb')
 
 class FirstSitting(AdditionalFile):
-    grok.name('fst_sit_scan.pdf')
+    grok.name('fst_sit_scan')
 
 class SecondSitting(AdditionalFile):
-    grok.name('scd_sit_scan.pdf')
+    grok.name('scd_sit_scan')
 
 class HighQual(AdditionalFile):
-    grok.name('hq_scan.pdf')
+    grok.name('hq_scan')
 
 class AdvancedLevelResult(AdditionalFile):
-    grok.name('alr_scan.pdf')
+    grok.name('alr_scan')
 
 class NYSCCertificate(AdditionalFile):
-    grok.name('nysc.pdf')
+    grok.name('nysc')
 
 class PaymentReceipts(AdditionalFile):
-    grok.name('rmp.pdf')
+    grok.name('rmp')
Index: /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser_templates/applicanteditpage.pt
===================================================================
--- /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser_templates/applicanteditpage.pt	(revision 16545)
+++ /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/browser_templates/applicanteditpage.pt	(revision 16546)
@@ -112,5 +112,5 @@
               <p tal:condition="python:view.file_exists(filename[1])">
                 <a tal:attributes="href python:filename[1]"i18n:translate="">
-                  Download pdf file
+                  Download file
                 </a>
               </p>
@@ -125,5 +125,5 @@
               </div>
               <span i18n:translate="">
-                PDF files only. Max. file size:
+                JPG or PDF files only. Max. file size:
               </span>
               <span tal:replace="view/max_file_upload_size">10 KB</span>
Index: /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/tests/test_browser.py
===================================================================
--- /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/tests/test_browser.py	(revision 16545)
+++ /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/tests/test_browser.py	(revision 16546)
@@ -41,4 +41,6 @@
 from kofacustom.iuokada.applicants.export import CustomApplicantExporter
 from kofacustom.iuokada.applicants.batching import CustomApplicantProcessor
+
+SAMPLE_IMAGE = os.path.join(os.path.dirname(__file__), 'test_image.jpg')
 
 class CustomApplicantUITests(ApplicantsFullSetup):
@@ -159,18 +161,19 @@
         self.browser.open(self.transapplicant_manage_path)
         # Create a pseudo file with acceptable size
-        pdf_content = 'A' * 1024 * 300  # A string of 300 KB size
-        pseudo_pdf = StringIO(pdf_content)
-        ctrl = self.browser.getControl(name='res_stat.pdf')
+        #pdf_content = 'A' * 1024 * 300  # A string of 300 KB size
+        #pseudo_pdf = StringIO(pdf_content)
+        image = open(SAMPLE_IMAGE, 'rb')
+        ctrl = self.browser.getControl(name='res_stat')
         file_ctrl = ctrl.mech_control
-        file_ctrl.add_file(pseudo_pdf, filename='myform.pdf')
+        file_ctrl.add_file(image, filename='my_scan.jpg')
         self.browser.getControl("Save").click() # submit form
         # Even though the form could not be saved ...
         self.assertTrue('Required input is missing' in self.browser.contents)
         # ... the file has been successfully uploaded
-        pdf_url = self.transapplicant_manage_path.replace('manage', 'res_stat.pdf')
-        self.browser.open(pdf_url)
+        image_url = self.transapplicant_manage_path.replace('manage', 'res_stat')
+        self.browser.open(image_url)
         self.assertEqual(
-            self.browser.headers['content-type'], 'application/pdf')
-        self.assertEqual(len(self.browser.contents), 307200)
+            self.browser.headers['content-type'], 'image/jpeg')
+        self.assertEqual(len(self.browser.contents), 2787)
         # There is really a file stored for the applicant
         storage = getUtility(IExtFileStore)
@@ -180,11 +183,11 @@
         fd = storage.getFile(file_id)
         file_len = len(fd.read())
-        self.assertEqual(file_len, 307200)
+        self.assertEqual(file_len, 2787)
         # A file link is displayed on the edit view ...
         self.browser.open(self.transapplicant_manage_path)
-        self.assertTrue('<a href="res_stat.pdf">' in self.browser.contents)
+        self.assertTrue('<a href="res_stat">' in self.browser.contents)
         # ... and on the dislay view
         self.browser.open(self.transapplicant_view_path)
-        self.assertTrue('res_stat.pdf">Statement of Result</a>'
+        self.assertTrue('res_stat">Statement of Result</a>'
             in self.browser.contents)
         # Adding file is properly logged
@@ -194,5 +197,5 @@
         self.assertTrue(
             'zope.mgr - kofacustom.iuokada.applicants.browser.CustomApplicantManageFormPage'
-            ' - %s - saved: res_stat.pdf'
+            ' - %s - saved: res_stat'
             % (self.transapplicant.applicant_id)
             in logcontent)
Index: /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/utils.py
===================================================================
--- /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/utils.py	(revision 16545)
+++ /main/kofacustom.iuokada/trunk/src/kofacustom/iuokada/applicants/utils.py	(revision 16546)
@@ -35,12 +35,12 @@
 
     ADDITIONAL_FILES = (
-                 ('First Sitting Result (WAEC/NECO)','fst_sit_scan.pdf'),
-                 ('Second Sitting Result (WAEC/NECO)','scd_sit_scan.pdf'),
-                 ('Higher Qualification Result','hq_scan.pdf'),
-                 ('Advanced Level Result','alr_scan.pdf'),
-                 ('JAMB Result','jamb.pdf'),
-                 ('Statement of Result','res_stat.pdf'),
-                 ('NYSC Certificate','nysc.pdf'),
-                 ('Receipts for Manual Payments','rmp.pdf'),
+                 ('First Sitting Result (WAEC/NECO)','fst_sit_scan'),
+                 ('Second Sitting Result (WAEC/NECO)','scd_sit_scan'),
+                 ('Higher Qualification Result','hq_scan'),
+                 ('Advanced Level Result','alr_scan'),
+                 ('JAMB Result','jamb'),
+                 ('Statement of Result','res_stat'),
+                 ('NYSC Certificate','nysc'),
+                 ('Receipts for Manual Payments','rmp'),
                  )
 
