Index: WAeUP_SRP/trunk/skins/waeup_statistics/getNewStudentStatistics.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_statistics/getNewStudentStatistics.py	(revision 3709)
+++ WAeUP_SRP/trunk/skins/waeup_statistics/getNewStudentStatistics.py	(revision 3774)
@@ -38,4 +38,5 @@
 full_time =       ('ume_ft','de_ft','ug_ft','pg_ft')
 part_time =       (         'de_pt','ug_pt','pg_pt')
+diploma   =       ('dp_ft','dp_pt')
 
 faculties = context.portal_catalog(portal_type="Faculty")
@@ -55,4 +56,7 @@
 res_pt = context.students_catalog(entry_session = entry_sessions,  mode = part_time, review_state = new_states)
 dict['total_pt'] = len(res_pt)
+
+res_dp = context.students_catalog(entry_session = entry_sessions,  mode = diploma, review_state = new_states)
+dict['total_dp'] = len(res_dp)
 
 for state in new_states:
@@ -76,4 +80,14 @@
     else:
         dict[statepercent] = 0
+        
+    # diploma
+    res_dp = context.students_catalog(entry_session = entry_sessions, review_state = state,  mode = diploma)
+    state_dp = state + '_dp'
+    dict[state_dp] = len(res_dp)
+    statepercent = state+'_dp_percent'
+    if dict['total_dp'] > 0:
+        dict[statepercent] = "%.0f" % round(dict[state_dp]*100.0/dict['total_dp'])
+    else:
+        dict[statepercent] = 0        
 
 l.append(dict)
@@ -88,4 +102,6 @@
     res_pt = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, mode = part_time)
     dict['total_pt'] = len(res_pt)
+    res_dp = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, mode = diploma)
+    dict['total_dp'] = len(res_dp)    
     for state in new_states:
         # full_time
@@ -108,4 +124,14 @@
         else:
             dict[statepercent] = 0
+            
+        # diploma
+        res_dp = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, review_state = state, mode = diploma)
+        state_dp = state + '_dp'
+        dict[state_dp] = len(res_dp)
+        statepercent = state+'_dp_percent'
+        if dict['total_dp'] > 0:
+            dict[statepercent] = "%.0f" % round(dict[state_dp]*100.0/dict['total_dp'])
+        else:
+            dict[statepercent] = 0            
 
     l.append(dict)
Index: WAeUP_SRP/trunk/skins/waeup_statistics/getRetStudentStatistics.py
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_statistics/getRetStudentStatistics.py	(revision 3709)
+++ WAeUP_SRP/trunk/skins/waeup_statistics/getRetStudentStatistics.py	(revision 3774)
@@ -20,7 +20,14 @@
     return 'Not allowed'
 
-entry_sessions = ('','-1','94','95','96','97','98','99','00','01','02','03','04','05','06','0','1','2','3','4','5','6')
+current_session = context.getSessionId()[0]
 
-current_session = context.getSessionId()[0]
+
+
+range1 = range(94,100,1)
+range2 = range(0,int(current_session),1)
+missing_values = ['','-1']
+entry_sessions = missing_values + [str(k) for k in range1+range2] + ['0'+str(k) for k in range2]
+
+#entry_sessions = ('','-1','94','95','96','97','98','99','00','01','02','03','04','05','06','07','0','1','2','3','4','5','6','7')
 
 ret_states =      ('returning',
@@ -31,4 +38,5 @@
 full_time =       ('ume_ft','de_ft','ug_ft','pg_ft')
 part_time =       (         'de_pt','ug_pt','pg_pt')
+diploma   =       ('dp_ft','dp_pt')
 
 faculties = context.portal_catalog(portal_type="Faculty")
@@ -48,4 +56,7 @@
 res_pt = context.students_catalog(entry_session = entry_sessions,  mode = part_time, review_state = ret_states)
 dict['total_pt'] = len(res_pt)
+
+res_dp = context.students_catalog(entry_session = entry_sessions,  mode = diploma, review_state = ret_states)
+dict['total_dp'] = len(res_dp)
 
 for state in ret_states:
@@ -69,4 +80,14 @@
     else:
         dict[statepercent] = 0
+        
+    # diploma
+    res_dp = context.students_catalog(entry_session = entry_sessions, review_state = state,  mode = diploma, session = current_session)
+    state_dp = state + '_dp'
+    dict[state_dp] = len(res_dp)
+    statepercent = state+'_dp_percent'
+    if dict['total_dp'] > 0:
+        dict[statepercent] = "%.0f" % round(dict[state_dp]*100.0/dict['total_dp'])
+    else:
+        dict[statepercent] = 0        
 
 l.append(dict)
@@ -81,4 +102,6 @@
     res_pt = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, mode = part_time)
     dict['total_pt'] = len(res_pt)
+    res_dp = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, mode = diploma)
+    dict['total_dp'] = len(res_dp)    
     for state in ret_states:
         # full_time
@@ -101,4 +124,15 @@
         else:
             dict[statepercent] = 0
+            
+        # diploma
+        res_dp = context.students_catalog(entry_session = entry_sessions, faculty = f.getId, review_state = state, mode = diploma, session = current_session)
+        state_dp = state + '_dp'
+        dict[state_dp] = len(res_dp)
+        statepercent = state+'_dp_percent'
+        if dict['total_dp'] > 0:
+            dict[statepercent] = "%.0f" % round(dict[state_dp]*100.0/dict['total_dp'])
+        else:
+            dict[statepercent] = 0
+            
 
     l.append(dict)
Index: WAeUP_SRP/trunk/skins/waeup_statistics/statistics_new_view.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_statistics/statistics_new_view.pt	(revision 3709)
+++ WAeUP_SRP/trunk/skins/waeup_statistics/statistics_new_view.pt	(revision 3774)
@@ -140,4 +140,62 @@
         </table>
 
+      <h3>Diploma Students (full-time and part-time)</h3>
+      <br />      
+
+        <table>
+          <tr class="odd ajaxtd">
+            <th >Faculty</th>
+            <th align="right">Total New</th>
+            <th align="right">AD</th>
+            <th align="right">OR</th>
+            <th align="right">CPE</th>
+            <th align="right">CR</th>
+            <th align="right">VC</th>
+            <th align="right">SFP</th>
+            <th align="right">CLR</th>
+            <th align="right">CLV</th>
+
+          </tr>
+          <tr tal:repeat="d faculties"
+              tal:attributes="class python:test(repeat['d'].even(), 'even ajaxtd', 'odd ajaxtd')">
+              <td width="80px"> <span tal:content="d/id" /> </td>
+              <td width="80px" align="right">
+                <span tal:content="d/total_dp" />
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/admitted_dp" />
+                (<span tal:content="d/admitted_dp_percent" />%)
+              </td>              
+              <td width="80px" align="right"> 
+                <span tal:content="d/objection_raised_dp" />
+                (<span tal:content="d/objection_raised_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/clearance_pin_entered_dp" />
+                (<span tal:content="d/clearance_pin_entered_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/clearance_requested_dp" />
+                (<span tal:content="d/clearance_requested_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/cleared_and_validated_dp" />
+                (<span tal:content="d/cleared_and_validated_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/school_fee_paid_dp" />
+                (<span tal:content="d/school_fee_paid_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/courses_registered_dp" />
+                (<span tal:content="d/courses_registered_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/courses_validated_dp" />
+                (<span tal:content="d/courses_validated_dp_percent" />%)
+              </td>                                          
+
+          </tr>
+        </table>
 
 
Index: WAeUP_SRP/trunk/skins/waeup_statistics/statistics_ret_view.pt
===================================================================
--- WAeUP_SRP/trunk/skins/waeup_statistics/statistics_ret_view.pt	(revision 3709)
+++ WAeUP_SRP/trunk/skins/waeup_statistics/statistics_ret_view.pt	(revision 3774)
@@ -101,4 +101,44 @@
           </tr>
         </table>
+        
+      <h3>Diploma Students (full-time and part-time)</h3>
+      <br />           
+
+        <table>
+          <tr class="odd ajaxtd">
+            <th >Faculty</th>
+            <th align="right">Total</th>
+
+            <th align="right">SFP</th>
+            <th align="right">CLR</th>
+            <th align="right">CLV</th>
+            <th align="right">RET</th>            
+
+          </tr>
+          <tr tal:repeat="d faculties"
+              tal:attributes="class python:test(repeat['d'].even(), 'even ajaxtd', 'odd ajaxtd')">
+              <td width="80px"> <span tal:content="d/id" /> </td>
+              <td width="80px" align="right">
+                <span tal:content="d/total_dp" />
+              </td>        
+              <td width="80px" align="right"> 
+                <span tal:content="d/school_fee_paid_dp" />
+                (<span tal:content="d/school_fee_paid_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/courses_registered_dp" />
+                (<span tal:content="d/courses_registered_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/courses_validated_dp" />
+                (<span tal:content="d/courses_validated_dp_percent" />%)
+              </td>
+              <td width="80px" align="right"> 
+                <span tal:content="d/returning_dp" />
+                (<span tal:content="d/returning_dp_percent" />%)
+              </td>                                                              
+
+          </tr>
+        </table>        
 
         
