auto login encryption done…
This commit is contained in:
		
							parent
							
								
									c158375d02
								
							
						
					
					
						commit
						aacd9da9fb
					
				
							
								
								
									
										1
									
								
								Gemfile
								
								
								
								
							
							
						
						
									
										1
									
								
								Gemfile
								
								
								
								
							|  | @ -25,6 +25,7 @@ gem 'sinatra' | |||
| gem 'sprockets' | ||||
| gem 'tinymce-rails' | ||||
| gem 'therubyracer' if RUBY_PLATFORM.downcase.include?("linux") | ||||
| gem 'mongoid-encryptor', :require => 'mongoid/encryptor' | ||||
| 
 | ||||
| # Gems used only for assets and not required | ||||
| # in production environments by default. | ||||
|  |  | |||
|  | @ -77,6 +77,7 @@ GEM | |||
|       orm_adapter (~> 0.0.3) | ||||
|       warden (~> 1.1) | ||||
|     diff-lcs (1.1.3) | ||||
|     encrypted_strings (0.3.3) | ||||
|     erubis (2.7.0) | ||||
|     exception_notification (2.5.2) | ||||
|       actionmailer (>= 3.0.4) | ||||
|  | @ -115,6 +116,10 @@ GEM | |||
|       activemodel (~> 3.1) | ||||
|       mongo (~> 1.3) | ||||
|       tzinfo (~> 0.3.22) | ||||
|     mongoid-encryptor (0.0.5) | ||||
|       activesupport (~> 3.0) | ||||
|       encrypted_strings (~> 0.3.3) | ||||
|       mongoid (~> 2) | ||||
|     multi_json (1.1.0) | ||||
|     nokogiri (1.5.2) | ||||
|     nokogiri (1.5.2-x86-mingw32) | ||||
|  | @ -255,6 +260,7 @@ DEPENDENCIES | |||
|   mini_magick | ||||
|   mongo_session_store-rails3 | ||||
|   mongoid | ||||
|   mongoid-encryptor | ||||
|   nokogiri | ||||
|   radius | ||||
|   rails (>= 3.1.0, < 3.2.0) | ||||
|  |  | |||
|  | @ -141,7 +141,7 @@ var orbitDesktop = function(dom){ | |||
| 		var bindHandlers = function(){ // this function will bind all the handlers in the desktop
 | ||||
| 				var groupWrapperWidth = 0; | ||||
| 				var groupWrapperHeight = 0; | ||||
| 				$('div#desktop div.group').width(528); | ||||
| 				$('div#desktop div.group').width(800); | ||||
| 			$("div#desktop .element").mousedown(function(){ | ||||
| 				currentElement = $(this); | ||||
| 				elementParent = $(this).parent(); | ||||
|  |  | |||
|  | @ -9,13 +9,19 @@ class OtheraccountsController< ApplicationController | |||
|     @email = params['email'] | ||||
|     @password = params['password'] | ||||
|     @account = params['account'] | ||||
|     OtherAccount.new(email: @email, encrypted_password: @password, type: @account) | ||||
|     OtherAccount.create(user_id: current_user.id, email: @email, encrypted_password: @password, type: @account) | ||||
|     a = Array.new | ||||
|     a << {"success"=>"true"} | ||||
|     render :json=>a.to_json | ||||
|   end | ||||
| 
 | ||||
|   def gmail | ||||
|     @gmailaccount = OtherAccount.where(:type.all => ["gmail"],:user_id.all => [current_user.id]) | ||||
|     @decrypted_password = @gmailaccount.first.encrypted_password.decrypt  | ||||
|     @email = @gmailaccount.first.email | ||||
|     url = URI.parse("https://mail.google.com/mail/feed/atom") | ||||
|     req = Net::HTTP::Get.new(url.path) | ||||
|     req.basic_auth params['username'], params['password'] | ||||
|     req.basic_auth @email, @decrypted_password | ||||
|     req.content_type = 'text/xml' | ||||
| 
 | ||||
|     http = Net::HTTP.new(url.host, url.port) | ||||
|  |  | |||
|  | @ -1,15 +1,15 @@ | |||
| class OtherAccount | ||||
|   include Mongoid::Document | ||||
|   include Mongoid::Timestamps | ||||
|   include Mongoid::Encryptor | ||||
|    | ||||
|   field :user_id | ||||
|   field :type | ||||
|   field :email | ||||
|   field :encrypted_password | ||||
|    | ||||
|   attr_encrypted :encrypted_password, :key => 'rulingorbit.com', :encode => true | ||||
|   encrypts :encrypted_password, :mode => :symmetric, :password => 'rulingcom' | ||||
|    | ||||
|   belongs_to :user | ||||
|    | ||||
|    | ||||
|    | ||||
| end | ||||
|  | @ -17,7 +17,7 @@ class User | |||
|    | ||||
|   has_many :managing_apps,:class_name => "AppManager" | ||||
|   has_one :desktop, :autosave => true, :dependent => :destroy | ||||
|   has_many :otheraccount, :autosave => true, :dependent => :destroy | ||||
|   has_many :other_accounts, :autosave => true, :dependent => :destroy | ||||
|   belongs_to :role | ||||
|   has_and_belongs_to_many :sub_roles | ||||
|   accepts_nested_attributes_for :attribute_values, :allow_destroy => true | ||||
|  |  | |||
|  | @ -10,7 +10,8 @@ | |||
| 					<td valign="top"><label for="s_name1">Username</label><input type="text" /></td> | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td><label for="s_name1">Password</label><input type="password" /></td> | ||||
| 					<td width="400"><label for="s_name1">Password</label><input type="password" /></td> | ||||
| 					<td><a href="" id="connection_save_btn" class="setting_btn thmc1 thmtxt w1 hh2 hp" onclick='return false;' style='float:left;'>Connect</a></td> | ||||
| 				</tr> | ||||
| 				<tr> | ||||
| 					<td rowspan="2"><img src="assets/facebook.png" alt=""></td> | ||||
|  |  | |||
|  | @ -1,20 +1,10 @@ | |||
| var gmail = function(){ | ||||
| 	var usernm = $("#gmail input[type=text]").val(); | ||||
| 	var pwd = $("#gmail input[type=password]").val(); | ||||
| //	usernm = "hr@rulingcom.com";
 | ||||
| //	pwd = "hr08973"
 | ||||
| 	if(usernm!="" && pwd!=""){ | ||||
| 		$("#gmail a#gmail_button").text("Check again"); | ||||
| 		$("#gmail #loading").show(); | ||||
| 		$("#gmail table#form").hide(); | ||||
| 		$.ajax({ | ||||
| 	   		url: "/desktop/forgmail", | ||||
| 			dataType : "xml", | ||||
| 			data : {username:usernm,password:pwd}, | ||||
| 			success:function(data){ | ||||
| 				if($(data).find("HEAD").find("TITLE").text()=="Unauthorized"){ | ||||
| 					$("#gmail #forerror").text($(data).find("HEAD").find("TITLE").text()).show(); | ||||
| 					$("#gmail table#form").show(); | ||||
| 				}else{ | ||||
| 					if($(data).find("fullcount").text()=="0"){ | ||||
| 						$("#gmail #forerror").hide(); | ||||
|  | @ -22,9 +12,9 @@ var gmail = function(){ | |||
| 					}else{ | ||||
| 						var msg; | ||||
| 						if($(data).find("fullcount").text()=="1") | ||||
| 							msg = $(data).find("fullcount").text()+" unread message in your inbox." | ||||
| 							msg = $(data).find("fullcount").text()+" unread message in your inbox."; | ||||
| 						else | ||||
| 							msg = $(data).find("fullcount").text()+" unread messages in your inbox." | ||||
| 							msg = $(data).find("fullcount").text()+" unread messages in your inbox."; | ||||
| 						o.notify(msg,"alert",2); | ||||
| 						$(data).find("entry").each(function(i,val){ | ||||
| 							if(i==0){ | ||||
|  | @ -41,15 +31,14 @@ var gmail = function(){ | |||
| 				$("#gmail #content").show(); | ||||
| 			} | ||||
| 		}); | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| var saveaccount = function(){ | ||||
| 		var usernm = $("#gmail input[type=text]").val(); | ||||
| 		var pwd = $("#gmail input[type=password]").val(); | ||||
| 		usernm = "hr@rulingcom.com"; | ||||
| 		usernm = "harry@rulingcom.com"; | ||||
| 		pwd = "hr08973"; | ||||
| 		if(usernm!="" && pwd!=""){ | ||||
| 			$.post("/desktop/save_account_info",{email:usernm,password:pwd,account:"gmail"}) | ||||
| 			$.post("/desktop/save_account_info",{email:usernm,password:pwd,account:"yahoo"}) | ||||
| 		} | ||||
| } | ||||
|  | @ -1,17 +1,6 @@ | |||
| <div id="gmail"> | ||||
| 	<div id="forerror" style="color:red;display:none;"></div> | ||||
| 	<table id="form"> | ||||
| 		<tr> | ||||
| 			<td><label class="thmtxt" style="width:75px;">Username:</label></td><td><input type="text" style="width:150px;" /></td> | ||||
| 		</tr> | ||||
| 		<tr> | ||||
| 			<td><label class="thmtxt" style="width:75px;">Password:</label></td><td><input type="password" style="width:150px;" /></td> | ||||
| 		</tr> | ||||
| 		<tr> | ||||
| 			<td colspan="2" align='center'><a href="" onclick="gmail();return false;" class='thmtxt' id="gmail_button">Check for new mail</button></td> | ||||
| 		</tr> | ||||
| 	</table> | ||||
| 	<div id="loading" style="display:none" class="thmtxt">Retrieving new emails...</div> | ||||
| 	<div id="loading" class="thmtxt">Retrieving new emails...</div> | ||||
| 	<div id="content" style="display:none;"background-color:#000;height:200px;"" > | ||||
| 		<div id="subject" ></div> | ||||
| 		<div id="date" class='thmtxt'></div> | ||||
|  | @ -20,6 +9,6 @@ | |||
| </div> | ||||
| <script> | ||||
| $(document).ready(function(){ | ||||
| 
 | ||||
| 	gmail(); | ||||
| }) | ||||
| </script> | ||||
		Loading…
	
		Reference in New Issue