with gmail widget..
This commit is contained in:
		
							parent
							
								
									a298cbd5f6
								
							
						
					
					
						commit
						64be61d61b
					
				| 
						 | 
				
			
			@ -1,3 +1,4 @@
 | 
			
		|||
 | 
			
		||||
class DesktopController< ApplicationController
 | 
			
		||||
  layout 'desktop'
 | 
			
		||||
  before_filter :authenticate_user!
 | 
			
		||||
| 
						 | 
				
			
			@ -22,6 +23,7 @@ class DesktopController< ApplicationController
 | 
			
		|||
  def sections
 | 
			
		||||
    render :layout => false
 | 
			
		||||
  end
 | 
			
		||||
  
 | 
			
		||||
  def settings
 | 
			
		||||
    render :layout => false
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			@ -181,4 +183,10 @@ class DesktopController< ApplicationController
 | 
			
		|||
    render :json=>b.to_json
 | 
			
		||||
  end
 | 
			
		||||
  
 | 
			
		||||
  def forgmail
 | 
			
		||||
   
 | 
			
		||||
    feed = Net::HTTP.get_response(URI.parse("https://mail.google.com/mail/feed/atom")).body
 | 
			
		||||
    render :xml=>feed
 | 
			
		||||
  end
 | 
			
		||||
  
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,21 @@
 | 
			
		|||
class UselessController< ApplicationController
 | 
			
		||||
  require 'open-uri'
 | 
			
		||||
  require 'rexml/document'
 | 
			
		||||
  require 'net/http' 
 | 
			
		||||
  require 'net/https'
 | 
			
		||||
  include REXML
 | 
			
		||||
 | 
			
		||||
  def forgmail
 | 
			
		||||
    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.content_type = 'text/xml'
 | 
			
		||||
 | 
			
		||||
    http = Net::HTTP.new(url.host, url.port)
 | 
			
		||||
    http.use_ssl = true
 | 
			
		||||
    response = http.start { |http| http.request(req) }
 | 
			
		||||
 | 
			
		||||
    root = Document.new(response.read_body).root
 | 
			
		||||
    render :text=>root
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -3,7 +3,7 @@
 | 
			
		|||
	<div id="content">
 | 
			
		||||
		<div id="header" class="hh3">
 | 
			
		||||
			<div class="dtitle w2 hh3 hp">
 | 
			
		||||
				<span class="thmtxth">Journal Pages</span>
 | 
			
		||||
				<span class="thmtxth">Journal Papers</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		</div>
 | 
			
		||||
		<div id="holder">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -117,6 +117,7 @@ Orbit::Application.routes.draw do
 | 
			
		|||
  match '/desktop/journal_p/'=>'desktop#journal_p'
 | 
			
		||||
  match '/desktop/journal_p_list/'=>'desktop#journal_p_list'
 | 
			
		||||
  match '/desktop/journal_p_add/'=>'desktop#journal_p_add'
 | 
			
		||||
  match '/desktop/forgmail/'=>'useless#forgmail'
 | 
			
		||||
  match '/desktop/temp_func/'=>'desktop#temp_func'
 | 
			
		||||
  
 | 
			
		||||
  match '/panel/:app_name/front_end/:app_action/:id' => 'pages#show_from_link', :constraints => lambda { |request|
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,45 @@
 | 
			
		|||
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();
 | 
			
		||||
						$("#gmail #content #msgbody").text("No new mails");
 | 
			
		||||
					}else{
 | 
			
		||||
						var msg;
 | 
			
		||||
						if($(data).find("fullcount").text()=="1")
 | 
			
		||||
							msg = $(data).find("fullcount").text()+" new message in your inbox."
 | 
			
		||||
						else
 | 
			
		||||
							msg = $(data).find("fullcount").text()+" new messages in your inbox."
 | 
			
		||||
						o.notify(msg,"alert",2);
 | 
			
		||||
						$(data).find("entry").each(function(i,val){
 | 
			
		||||
							if(i==0){
 | 
			
		||||
								$("#gmail #forerror").hide();
 | 
			
		||||
								var atag = $("<a href='"+$(this).find("link").attr("href")+"'>"+$(this).find("title").text()+"</a>");
 | 
			
		||||
								$("#gmail #content #subject").html($(this).find("title").text());
 | 
			
		||||
								$("#gmail #content #date").text($(this).find("issued").text());
 | 
			
		||||
								$("#gmail #content #msgbody").text($(this).find("summary").text());
 | 
			
		||||
							}
 | 
			
		||||
						})
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
				$("#gmail #loading").hide();
 | 
			
		||||
				$("#gmail #content").show();
 | 
			
		||||
			}
 | 
			
		||||
		});
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,25 @@
 | 
			
		|||
<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="content" style="display:none;"background-color:#000;height:200px;"" >
 | 
			
		||||
		<div id="subject" ></div>
 | 
			
		||||
		<div id="date" class='thmtxt'></div>
 | 
			
		||||
		<div id="msgbody" class='thmtxt'></div>
 | 
			
		||||
	</div>
 | 
			
		||||
</div>
 | 
			
		||||
<script>
 | 
			
		||||
$(document).ready(function(){
 | 
			
		||||
//	gmail();
 | 
			
		||||
})
 | 
			
		||||
</script>
 | 
			
		||||
		Loading…
	
		Reference in New Issue