Author: olamy
Date: Fri Dec 21 16:26:14 2012
New Revision: 1425003

URL: http://svn.apache.org/viewvc?rev=1425003&view=rev
Log:
fix secure option usage for cookie

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js?rev=1425003&r1=1425002&r2=1425003&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/archiva/main.js
 Fri Dec 21 16:26:14 2012
@@ -28,34 +28,56 @@ function(jquery,ui,sammy,tmpl,i18n,jquer
    * @param user see user.js
    */
   reccordLoginCookie=function(user) {
-    var path = 
window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.timeout");
+
+    var path = 
window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.path");
     path = path ? path : "/";
 
     var domain = 
window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.domain");
     var secure = 
window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.secure");
 
-    $.cookie('archiva_login', ko.toJSON(user),
-             {
-               expires: 
Number(window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.timeout")),
-               path: path,
-               domain: domain,
-               secure: secure
-             }
-    );
+    var expires= 
Number(window.redbackRuntimeConfiguration.findPropertyValue("security.rememberme.timeout"));
+
+    var userJson=ko.toJSON(user);
+
+    
$.log("reccordLoginCookie:expires:"+expires+",path:"+path+",domain:"+domain+",secure:"+secure+",user:"+userJson);
+
+    var options = null;
+    if (secure == 'true'){
+      options = {
+        expires: expires,
+        path: path,
+        domain: domain,
+        secure: secure
+      }
+    }else {
+      options = {
+        expires: expires,
+        path: path,
+        domain: domain
+      }
+    }
+
+    $.cookie('archiva_login', userJson,options);
   };
 
   getUserFromLoginCookie=function(){
     var cookieContent=$.cookie('archiva_login');
     $.log("archiva_login cookie content:"+cookieContent);
-    return $.parseJSON(cookieContent);
-  };
+    var user = $.parseJSON(cookieContent);
+    if(!user){
+      return null;
+    }
+    var kUser = new User(user.username, user.password, 
user.confirmPassword,user.fullName,user.email,user.permanent,user.validated,
+                    
user.timestampAccountCreation,user.timestampLastLogin,user.timestampLastPasswordChange,user.locked,
+                    
user.passwordChangeRequired,null,user.readOnly,user.userManagerId)
 
-  deleteLoginCookie=function(){
-    $.cookie('archiva_login', null,{ expires: 7, path: '/' });
+    kUser.rememberme(user.rememberme);
+    return kUser;
   };
 
+
+
   logout=function(doScreenChange){
-    //deleteLoginCookie();
     var user = getUserFromLoginCookie();
     if(user){
       user.logged=false;
@@ -719,7 +741,7 @@ function(jquery,ui,sammy,tmpl,i18n,jquer
   };
 
   userLoggedCallbackFn=function(user){
-    $.log("userLoggedCallbackFn:"+ (user?user.username:null));
+    $.log("userLoggedCallbackFn:"+ (user?user.username():null));
     var loginLink=$("#login-link");
     var registerLink=$("#register-link");
     var changePasswordLink=$("#change-password-link");

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js?rev=1425003&r1=1425002&r2=1425003&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-js/src/main/webapp/js/redback/user.js
 Fri Dec 21 16:26:14 2012
@@ -82,7 +82,7 @@ function(jquery,utils,i18n,jqueryValidat
 
     this.userManagerId=userManagerId;
 
-    this.rememberme=false;
+    this.rememberme=ko.observable(false);
 
     this.logged=false;
 
@@ -356,10 +356,10 @@ function(jquery,utils,i18n,jqueryValidat
 
     var user=getUserFromLoginCookie();
     if(user){
-      $.log("found user in cookie rememberme:"+(user.rememberme));
-      if(user.rememberme){
-        $("#user-login-form-username" ).val(user.username);
-        $("#user-login-form-password" ).val(user.password);
+      $.log("found user in cookie rememberme:"+(user.rememberme()));
+      if(user.rememberme()){
+        $("#user-login-form-username" ).val(user.username());
+        $("#user-login-form-password" ).val(user.password());
         $("#user-login-form-rememberme" ).attr("checked","true");
       }
     } else {
@@ -429,11 +429,11 @@ function(jquery,utils,i18n,jqueryValidat
       }
 
       // FIXME check validated
-      user.rememberme=window.redbackModel.rememberme;
-      if(user.rememberme){
+      user.rememberme(window.redbackModel.rememberme);
+      if(user.rememberme()){
         user.password(window.redbackModel.password);
       }
-      $.log("user.rememberme:"+(user.rememberme));
+      $.log("user.rememberme:"+(user.rememberme()));
       reccordLoginCookie(user);
       window.user=user;
       $("#login-link").hide();


Reply via email to