Index: main/waeup.sirp/trunk/src/waeup/sirp/students/utils.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/students/utils.py	(revision 7705)
+++ main/waeup.sirp/trunk/src/waeup/sirp/students/utils.py	(revision 7714)
@@ -21,4 +21,6 @@
 from random import SystemRandom as r
 from datetime import datetime
+from zope.i18n import translate
+from zope.component import getUtility
 from reportlab.pdfgen import canvas
 from reportlab.lib import colors
@@ -33,5 +35,6 @@
 from zope.component import getUtility
 from zope.formlib.form import setUpEditWidgets
-from waeup.sirp.interfaces import IExtFileStore
+from waeup.sirp.interfaces import IExtFileStore, ISIRPUtils
+from waeup.sirp.interfaces import MessageFactory as _
 from waeup.sirp.students.interfaces import IStudentsUtils
 
@@ -106,10 +109,13 @@
     data_left.append([doc_img])
     #data.append([Spacer(1, 12)])
+    portal_language = getUtility(ISIRPUtils).PORTAL_LANGUAGE
     for widget in studentview.widgets:
         if widget.name == 'form.adm_code':
             continue
-        f_label = formatted_label() % widget.label.strip()
+        f_label = formatted_label(size=12) % translate(
+            widget.label.strip(), 'waeup.sirp',
+            target_language=portal_language)
         f_label = Paragraph(f_label, style["Normal"])
-        f_text = formatted_text(widget())
+        f_text = formatted_text(widget(), size=12)
         f_text = Paragraph(f_text, style["Normal"])
         data_right.append([f_label,f_text])
@@ -154,6 +160,8 @@
       story = []
       frame_footer = Frame(1*cm,0,width-(2*cm),1*cm)
-      right_text = '<font size=10>%s Page %s of %s</font>' % (
-          text, pdf.getPageNumber(), number_of_pages)
+      portal_language = getUtility(ISIRPUtils).PORTAL_LANGUAGE
+      right_text = translate(_('<font size=10>${a} Page ${b} of ${c}</font>',
+          mapping = {'a':text, 'b':pdf.getPageNumber(), 'c':number_of_pages}),
+          'waeup.sirp', target_language=portal_language)
       story.append(Paragraph(right_text, style["Right"]))
       frame_footer.addFromList(story,pdf)
@@ -247,5 +255,5 @@
         width, height = A4
         footer_text = view.label
-        if student is not None:
+        if getattr(student, 'student_id', None) is not None:
             footer_text = "%s - %s - " % (student.student_id, footer_text)
         style = getSampleStyleSheet()
@@ -263,7 +271,10 @@
         frame_body = Frame(1*cm,1*cm,width-(2*cm),height-(3.5*cm))
         story.append(Paragraph(view.label, style["Heading2"]))
+        portal_language = getUtility(ISIRPUtils).PORTAL_LANGUAGE
         if student is not None:
             #story.append(Spacer(1, 12))
-            story.append(Paragraph('Student Base Data', style["Heading3"]))
+            bd_translation = translate(_('Base Data'),
+                'waeup.sirp', target_language=portal_language)
+            story.append(Paragraph(bd_translation, style["Heading3"]))
             studenttable = render_student_data(studentview)
             story.append(studenttable)
@@ -273,8 +284,11 @@
         set_up_widgets(view)
         data = []
+        portal_language = getUtility(ISIRPUtils).PORTAL_LANGUAGE
         for widget in view.widgets:
-            f_label = formatted_label() % widget.label.strip()
+            f_label = '<font size=12>%s</font>:' % translate(
+                widget.label.strip(), 'waeup.sirp',
+                target_language=portal_language)
             f_label = Paragraph(f_label, style["Normal"])
-            f_text = formatted_text(widget())
+            f_text = formatted_text(widget(), size=12)
             f_text = Paragraph(f_text, style["Normal"])
             data.append([f_label,f_text])
@@ -294,5 +308,5 @@
             # Insert list of scanned documents
             for viewlet in fm.viewlets:
-                f_label = formatted_label() % viewlet.label
+                f_label = formatted_label(size=12) % viewlet.label
                 f_label = Paragraph(f_label, style["Normal"])
                 if viewlet.template.__grok_name__ == 'imagedisplay':
@@ -306,5 +320,5 @@
                     data.append([f_label,doc_img])
                 else:
-                    f_text = formatted_text(viewlet.title)
+                    f_text = formatted_text(viewlet.title, size=12)
                     f_text = Paragraph(f_text, style["Normal"])
                     data.append([f_label,f_text])
