Index: trunk/grails-app/controllers/AppCoreController.groovy
===================================================================
--- trunk/grails-app/controllers/AppCoreController.groovy	(revision 125)
+++ trunk/grails-app/controllers/AppCoreController.groovy	(revision 127)
@@ -10,4 +10,13 @@
     //def allowedMethods = [delete:'POST', save:'POST', update:'POST']
 
+    def welcome = {
+        def personInstance = Person.get(authenticateService.userDomain().id)
+        flash.message = "Welcome, ${personInstance.firstName} ${personInstance.lastName}."
+
+        def sess = getSession()
+        sess.setMaxInactiveInterval(personInstance.sessionTimeout)
+        redirect(action:home)
+    }
+
     def home = {
     }
@@ -15,4 +24,25 @@
     def options = {
     }
+
+    def changeSessionTimeout = {
+        if (request.method == 'GET') {
+            def personInstance = Person.get(authenticateService.userDomain().id)
+            return [ personInstance : personInstance ]       
+        }
+        if (request.method == 'POST') {
+            def personInstance = Person.get(authenticateService.userDomain().id)
+//             personInstance.sessionTimeout = params.sessionTimeout.toInteger()
+                personInstance.properties = params
+                if (!personInstance.hasErrors() && personInstance.save()) {
+                    def sess = getSession()
+                    sess.setMaxInactiveInterval(personInstance.sessionTimeout)
+                    flash.message = "Session timeout changed."
+                    redirect(action:options)
+                }
+                else {
+                    render(view:'changeSessionTimeout',model:[personInstance:personInstance])
+                }
+        }
+    }         
 
     def changePassword = {
