Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicants.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicants.py	(revision 6197)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/applicants.py	(revision 6198)
@@ -59,5 +59,4 @@
     access_code = index.Field(attribute='access_code')
 
-
 class ApplicantTraverser(grok.Traverser):
     """Get image of the context applicant.
Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/browser.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/browser.py	(revision 6197)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/browser.py	(revision 6198)
@@ -89,5 +89,5 @@
     grok.context(IApplicantsRoot)
     grok.view(ApplicantsRootPage)
-    grok.require('waeup.manageUniversity')
+    grok.require('waeup.manageApplications')
     text = 'Manage application section'
 
@@ -99,5 +99,5 @@
     label = 'Manage application section'
     pnav = 3
-    grok.require('waeup.manageUniversity')
+    grok.require('waeup.manageApplications')
     taboneactions = ['Add applicants container', 'Remove selected','Cancel']
     tabtwoactions1 = ['Remove selected local roles']
@@ -164,5 +164,5 @@
 class ApplicantsContainerAddFormPage(WAeUPAddFormPage):
     grok.context(IApplicantsRoot)
-    grok.require('waeup.manageUniversity')
+    grok.require('waeup.manageApplications')
     grok.name('add')
     grok.template('applicantscontaineraddpage')
@@ -236,5 +236,5 @@
     grok.context(IWAeUPObject)
     grok.order(3)
-    grok.require('waeup.manageUniversity')
+    grok.require('waeup.manageApplications')
     grok.template('primarynavtab')
 
@@ -271,4 +271,5 @@
     grok.context(IApplicantsContainer)
     grok.view(ApplicantsContainerPage)
+    grok.require('waeup.manageApplications')
     text = 'Manage applicants container'
 
@@ -286,5 +287,5 @@
     form_fields['startdate'].custom_widget = FriendlyDateWidget('le')
     form_fields['enddate'].custom_widget = FriendlyDateWidget('le')
-    grok.require('waeup.manageUniversity')
+    grok.require('waeup.manageApplications')
 
     @property
@@ -426,5 +427,5 @@
             applicant_object = get_applicant_data(access_code)
             url = absoluteURL(applicant_object, self.request)
-            return u'<div class="portlet"><a href="%s">%s</a></div>' % (
+            return u'<div class="portlet"><a href="%s/edit">%s</a></div>' % (
                 url,access_code)
         return ''
@@ -433,5 +434,5 @@
     grok.context(IApplicant)
     grok.name('index')
-    grok.require('waeup.viewApplication')
+    grok.require('waeup.handleApplication')
     form_fields = grok.AutoFields(IApplicant).omit('locked')
     #form_fields['fst_sit_results'].custom_widget = list_results_display_widget
@@ -450,4 +451,11 @@
         return '%s Application Record' % container_title
 
+class ApplicantsManageActionButton(ManageActionButton):
+    grok.context(IApplicant)
+    grok.view(DisplayApplicant)
+    grok.require('waeup.manageApplications')
+    text = 'Edit application record'
+    target = 'edit_full'
+
 class EditApplicantFull(WAeUPEditFormPage):
     """A full edit view for applicant data.
@@ -455,5 +463,5 @@
     grok.context(IApplicant)
     grok.name('edit_full')
-    grok.require('waeup.editFullApplication')
+    grok.require('waeup.manageApplications')
     form_fields = grok.AutoFields(IApplicant)   #.omit('locked')
     form_fields['passport'].custom_widget = EncodingImageFileWidget
@@ -488,5 +496,5 @@
     grok.context(IApplicantEdit)
     grok.name('edit')
-    grok.require('waeup.editApplication')
+    grok.require('waeup.handleApplication')
     form_fields = grok.AutoFields(IApplicantEdit).omit('locked')
     form_fields['passport'].custom_widget = EncodingImageFileWidget
@@ -501,5 +509,5 @@
     def update(self):
         if self.context.locked:
-            self.emitLockMessage()
+            self.redirect(self.url(self.context))
             return
         datepicker.need() # Enable jQuery datepicker in date fields.
Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/container.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/container.py	(revision 6197)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/container.py	(revision 6198)
@@ -52,5 +52,5 @@
     @property
     def local_roles(cls):
-        return ['waeup.local.ApplicationsOfficer']
+        return ['waeup.ApplicationsOfficer']
 
     def archive(self, app_ids=None):
Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/permissions.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/permissions.py	(revision 6197)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/permissions.py	(revision 6198)
@@ -26,24 +26,20 @@
 
 # Application permissions
-class ViewApplication(grok.Permission):
-    grok.name('waeup.viewApplication')
 
-class ViewFullApplication(grok.Permission):
-    grok.name('waeup.viewFullApplication')
+class HandleApplication(grok.Permission):
+    grok.name('waeup.handleApplication')
 
-class EditApplication(grok.Permission):
-    grok.name('waeup.editApplication')
+class ManageApplications(grok.Permission):
+    grok.name('waeup.manageApplications')
 
-class EditFullApplication(grok.Permission):
-    grok.name('waeup.editFullApplication')
-
-# Local roles
+# Local role
 class ApplicationOwner(grok.Role):
     grok.name('waeup.local.ApplicationOwner')
     grok.title(u'Application Owner')
-    grok.permissions('waeup.viewApplication', 'waeup.editApplication')
+    grok.permissions('waeup.handleApplication')
 
+# Global role
 class ApplicationsOfficer(grok.Role):
-    grok.name('waeup.local.ApplicationsOfficer')
+    grok.name('waeup.ApplicationsOfficer')
     grok.title(u'Applications Officer')
-    grok.permissions('waeup.viewFullApplication', 'waeup.editFullApplication')
+    grok.permissions('waeup.manageApplications', 'waeup.handleApplication')
Index: main/waeup.sirp/trunk/src/waeup/sirp/applicants/root.py
===================================================================
--- main/waeup.sirp/trunk/src/waeup/sirp/applicants/root.py	(revision 6197)
+++ main/waeup.sirp/trunk/src/waeup/sirp/applicants/root.py	(revision 6198)
@@ -39,5 +39,5 @@
     @property
     def local_roles(cls):
-        return ['waeup.local.ApplicationsOfficer']
+        return ['waeup.ApplicationsOfficer']
 
 class ApplicantsPlugin(grok.GlobalUtility):
