Index: trunk/grails-app/controllers/AppCoreController.groovy
===================================================================
--- trunk/grails-app/controllers/AppCoreController.groovy	(revision 182)
+++ trunk/grails-app/controllers/AppCoreController.groovy	(revision 185)
@@ -3,5 +3,5 @@
 class AppCoreController extends BaseController {
 
-    def authenticateService
+    def personService
     def createDataService
 
@@ -17,5 +17,5 @@
     */
     def welcome = {
-        def personInstance = Person.get(authenticateService.userDomain().id)
+        def personInstance = personService.currentUser()
         flash.message = "Welcome, ${personInstance.firstName} ${personInstance.lastName}."
 
@@ -30,9 +30,9 @@
     def changeSessionTimeout = {
         if (request.method == 'GET') {
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
             return [ personInstance : personInstance ]       
         }
         if (request.method == 'POST') {
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
                 personInstance.properties = params
                 if (!personInstance.hasErrors() && personInstance.save(flush: true)) {
@@ -53,10 +53,10 @@
 
         if (request.method == 'GET') {
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
             return [ personInstance : personInstance ]       
         }
 
         if (request.method == 'POST') {
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
 
             if(params.confirmPass == params.pass) {
Index: trunk/grails-app/controllers/EntryDetailedController.groovy
===================================================================
--- trunk/grails-app/controllers/EntryDetailedController.groovy	(revision 182)
+++ trunk/grails-app/controllers/EntryDetailedController.groovy	(revision 185)
@@ -3,5 +3,5 @@
 class EntryDetailedController extends BaseController {
 
-    def authenticateService
+    def personService
 
     def index = { redirect(action:list,params:params) }
@@ -28,8 +28,9 @@
         def entryInstance = Entry.get( params.id )
         if(entryInstance) {
-            if(entryInstance.enteredBy.loginName == authenticateService.userDomain().loginName) {
-                entryInstance.delete()
+            if(entryInstance.enteredBy.loginName == personService.currentUser().loginName) {
+                def taskID = entryInstance.task.id
+                entryInstance.delete(flush:true)
                 flash.message = "Entry ${params.id} deleted"
-                redirect(action:list)
+                redirect(controller: 'taskDetailed', action: 'show', id: taskID)
             }
             else {
@@ -53,5 +54,5 @@
         else {
 
-            if(entryInstance.enteredBy.loginName == authenticateService.userDomain().loginName) {
+            if(entryInstance.enteredBy.loginName == personService.currentUser().loginName) {
                 return [ entryInstance : entryInstance ]
             }
@@ -67,11 +68,18 @@
         def entryInstance = Entry.get( params.id )
         if(entryInstance) {
-            entryInstance.properties = params
-            if(!entryInstance.hasErrors() && entryInstance.save(flush: true)) {
-                flash.message = "Entry ${params.id} updated"
-                redirect(action:show,id:entryInstance.id)
+            // The update method only accepts post requests, so this is just in case.
+            if(entryInstance.enteredBy.loginName == personService.currentUser().loginName) {
+                entryInstance.properties = params
+                if(!entryInstance.hasErrors() && entryInstance.save(flush: true)) {
+                    flash.message = "Entry ${params.id} updated"
+                    redirect(action:show,id:entryInstance.id)
+                }
+                else {
+                    render(view:'edit',model:[entryInstance:entryInstance])
+                }
             }
             else {
-                render(view:'edit',model:[entryInstance:entryInstance])
+                flash.message = "You may only edit your own entries."
+                redirect(action:show,id:entryInstance.id)
             }
         }
@@ -98,5 +106,5 @@
         def entryInstance = new Entry(params)
 
-        entryInstance.enteredBy = Person.get(authenticateService.userDomain().id)
+        entryInstance.enteredBy = personService.currentUser()
         if(!entryInstance.hasErrors() && entryInstance.save(flush: true)) {
             flash.message = "Entry ${entryInstance.id} created"
Index: trunk/grails-app/controllers/TaskDetailedController.groovy
===================================================================
--- trunk/grails-app/controllers/TaskDetailedController.groovy	(revision 182)
+++ trunk/grails-app/controllers/TaskDetailedController.groovy	(revision 185)
@@ -4,5 +4,5 @@
 class TaskDetailedController extends BaseController {
 
-    def authenticateService
+    def personService
     def dateUtilService
     def taskService
@@ -29,5 +29,5 @@
         {
             def taskInstanceList = []
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
 
             if(params.quickSearch == "searchMyTodays") {
@@ -39,10 +39,10 @@
                 taskInstanceList = taskSearchService.getInTheLastWeek(params)
                 if(taskInstanceList.totalCount > 0) { params.message = "Tasks with Target Start Date in the last week." }
-                else { params.message = "No tasks found for today." }
+                else { params.message = "No tasks found for the last week." }
             }
             else if(params.quickSearch == "searchMyInTheLastWeek") {
                 taskInstanceList = taskSearchService.getMyInTheLastWeek(params)
                 if(taskInstanceList.totalCount > 0) { params.message = "Tasks with Target Start Date in the last week for ${personInstance.firstName} ${personInstance.lastName}." }
-                else { params.message = "No tasks found for today." }
+                else { params.message = "No tasks found for the last week." }
             }
             else {
@@ -70,5 +70,5 @@
         {
             def taskInstanceList = []
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
 
             if(params.quickSearch == "searchMyTodays") {
@@ -81,5 +81,5 @@
                 taskInstanceList = taskSearchService.getInTheLastWeek(params)
                 if(taskInstanceList.totalCount > 0) { params.message = "Tasks with Target Start Date in the last week." }
-                else { params.message = "No tasks found for today." }
+                else { params.message = "No tasks found for the last week." }
                 if(taskInstanceList.totalCount > params.max) { params.message = "Too many results, only the first ${params.max} shown" }
             }
@@ -87,5 +87,5 @@
                 taskInstanceList = taskSearchService.getMyInTheLastWeek(params)
                 if(taskInstanceList.totalCount > 0) { params.message = "Tasks with Target Start Date in the last week for ${personInstance.firstName} ${personInstance.lastName}." }
-                else { params.message = "No tasks found for today." }
+                else { params.message = "No tasks found for the last week." }
                 if(taskInstanceList.totalCount > params.max) { params.message = "Too many results, only the first ${params.max} shown" }
             }
@@ -117,5 +117,5 @@
         {
             def taskInstanceList = []
-            def personInstance = Person.get(authenticateService.userDomain().id)
+            def personInstance = personService.currentUser()
 
             if(params.quickSearch == "budgetUnplanned") {
@@ -456,5 +456,5 @@
         def taskInstance = new Task()
         // Default leadPerson to current user.
-        taskInstance.leadPerson = Person.get(authenticateService.userDomain().id)
+        taskInstance.leadPerson = personService.currentUser()
         taskInstance.properties = params
         return ['taskInstance':taskInstance]
