with gmail widget..
This commit is contained in:
parent
a298cbd5f6
commit
64be61d61b
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
class DesktopController< ApplicationController
|
class DesktopController< ApplicationController
|
||||||
layout 'desktop'
|
layout 'desktop'
|
||||||
before_filter :authenticate_user!
|
before_filter :authenticate_user!
|
||||||
|
@ -22,6 +23,7 @@ class DesktopController< ApplicationController
|
||||||
def sections
|
def sections
|
||||||
render :layout => false
|
render :layout => false
|
||||||
end
|
end
|
||||||
|
|
||||||
def settings
|
def settings
|
||||||
render :layout => false
|
render :layout => false
|
||||||
end
|
end
|
||||||
|
@ -181,4 +183,10 @@ class DesktopController< ApplicationController
|
||||||
render :json=>b.to_json
|
render :json=>b.to_json
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def forgmail
|
||||||
|
|
||||||
|
feed = Net::HTTP.get_response(URI.parse("https://mail.google.com/mail/feed/atom")).body
|
||||||
|
render :xml=>feed
|
||||||
|
end
|
||||||
|
|
||||||
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="content">
|
||||||
<div id="header" class="hh3">
|
<div id="header" class="hh3">
|
||||||
<div class="dtitle w2 hh3 hp">
|
<div class="dtitle w2 hh3 hp">
|
||||||
<span class="thmtxth">Journal Pages</span>
|
<span class="thmtxth">Journal Papers</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id="holder">
|
<div id="holder">
|
||||||
|
|
|
@ -117,6 +117,7 @@ Orbit::Application.routes.draw do
|
||||||
match '/desktop/journal_p/'=>'desktop#journal_p'
|
match '/desktop/journal_p/'=>'desktop#journal_p'
|
||||||
match '/desktop/journal_p_list/'=>'desktop#journal_p_list'
|
match '/desktop/journal_p_list/'=>'desktop#journal_p_list'
|
||||||
match '/desktop/journal_p_add/'=>'desktop#journal_p_add'
|
match '/desktop/journal_p_add/'=>'desktop#journal_p_add'
|
||||||
|
match '/desktop/forgmail/'=>'useless#forgmail'
|
||||||
match '/desktop/temp_func/'=>'desktop#temp_func'
|
match '/desktop/temp_func/'=>'desktop#temp_func'
|
||||||
|
|
||||||
match '/panel/:app_name/front_end/:app_action/:id' => 'pages#show_from_link', :constraints => lambda { |request|
|
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