I've found that CAS server does not manage service urls with keywords
properly. Here is a simple fix. I also email the patch file to
massimo:

--- /home/ubuntu/Desktop/cas.web2py.app/controllers/cas.py      2008-06-17
01:29:17.000000000 +0200
+++ /media/MisDatos/servidor/desarrollo/web2py/applications/cas/
controllers/cas.py      2008-10-12 20:15:20.000000000 +0200
@@ -35,11 +35,16 @@
     db.ticket.insert(code=session.ticket,cas_user=session.user_id,
                      url=session.service,ctime=now)

+def nexus(url):
+       import urllib
+       if '?' in urllib.unquote(url) : return '&'
+       else: return '?'
+
 def login():
     response.menu=menu_out
     if request.vars.service and session.ticket and session.ctime>now-
DT:
         insert_ticket(session)
-        redirect(session.service+"?ticket="+session.ticket)
+        redirect(request.vars.service+nexus(request.vars.service)
+"ticket="+session.ticket)
 
form=FORM(TABLE(TR("Email:",INPUT(_name="email",requires=IS_NOT_EMPTY())),
 
TR("Password:",INPUT(_name="password",_type='password',
 
requires=[IS_NOT_EMPTY(),CRYPT()])),
@@ -57,7 +62,7 @@
             session.ctime=now
             session.flash='User logged in'
             insert_ticket(session)
-            redirect(session.service+"?ticket="+session.ticket)
+            redirect(request.vars.service+nexus(request.vars.service)
+"ticket="+session.ticket)
         else:
             time.sleep(2)
             response.flash='Invalid login'

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"web2py Web Framework" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to