?? gmail.js
字號:
App.Modules.Gmail = function(obj){
var data = obj.dataObj.data;
var localData = new Object();
var el = obj.elm_moduleContent;
this.edit = function() {
var editContent = obj.elm_editContent;
var form = document.createElement("form");
form.onsubmit = ajaxCall;
function ajaxCall() {
obj.dataObj.title = App.Loc.defaultGmail_title;
obj.elm_title.innerHTML = App.Loc.defaultGmail_title + " : " + App.Loc.loading;
var param = "url="+escape("https://"+encodeURIComponent(input1.value)+":"+encodeURIComponent(input2.value)+"@mail.google.com/mail/feed/atom");
Request.sendPOST('securePassProxy.php.xml', param, displayEmailsCheck);
return false;
}
var content = '<table cellpadding="0" cellspacing="0">'+
'<tr>'+
'<td><span class="formLabel">Login :</span></td>'+
'<td><input type="text" class="inputClean" accesskey="t" maxlength="150" value="'+((data.login) ? data.login : '')+'" style="width:75px"/></td>'+
'<td></td>'+
'</tr>'+
'<tr>'+
'<td><span class="formLabel">Password :</span></td>'+
'<td><input type="password" class="inputClean" accesskey="t" maxlength="150" style="width:75px"/></td>'+
'<td><input type="submit" value="'+App.Loc.editSave+'" class="buttonClean"/></td>'+
'</tr>'+
'</table>';
form.innerHTML = content;
editContent.appendChild(form);
var tr1 = form.firstChild.firstChild.childNodes[0];
var tr2 = form.firstChild.firstChild.childNodes[1];
var input1 = tr1.childNodes[1].firstChild;
var input2 = tr2.childNodes[1].firstChild;
function displayEmailsCheck(response) {
if (response.responseText != "") {
data.login = input1.value;
data.pass = input2.value;
obj.save();
}
displayEmails(response);
}
}
function displayItems(sum) {
var listNode = el.firstChild.nextSibling;
var content = '<div style="font-family:Tahoma;padding:3px;">';
for (var z=0; z<data.nbTitles; z++) {
var title = localData.items[z].getElementsByTagName("title")[0];
var link = localData.items[z].getElementsByTagName("link")[0].getAttribute("href");
var name = localData.items[z].getElementsByTagName("name")[0];
var summary = localData.items[z].getElementsByTagName("summary")[0];
title = (title.firstChild) ? title.firstChild.nodeValue : '';
content += '<div class="emailEntry">'+
'<div class="emailEntryTop">'+
'<a href="'+link+'" target="_blank">'+name.firstChild.nodeValue+' - <span class="emailTitle">'+title+'</span></a>'+
((sum) ? ('<div class="emailSummary">'+summary.firstChild.nodeValue+'</div>') : '')+
'</div>'+
'</div>';
}
content += '</div>';
listNode.innerHTML = content;
}
function displayEmails(response) {
obj.elm_title.innerHTML = App.Loc.defaultGmail_title;
if (response.responseText == "") {
el.innerHTML = '<table cellpadding="0" cellspacing="0" width="100%"><tr><td width="20"><img src="modules/gmail/img/gmail.gif" width="20" height="15"/></td><td style="padding-left:5px">'+App.Loc.Gmail_badAccount+'</td></tr></table>';
} else {
localData.items = response.responseXML.getElementsByTagName("entry");
var fullcount = response.responseXML.getElementsByTagName("fullcount")[0].firstChild.nodeValue;
if (localData.items.length>0) {
data.nbTitles=6;
data.nbTitles = (localData.items.length>data.nbTitles) ? data.nbTitles : localData.items.length;
var titleName = response.responseXML.getElementsByTagName("title")[0].firstChild.nodeValue;
titleName = titleName.substring(7, titleName.length);
var headerContent = '<table cellpadding="0" cellspacing="0" class="emailHeader" style="margin:2px 0 5px 6px;"><tr>'+
'<td width="20"><img src="modules/gmail/img/gmail.gif" width="20" height="15"/></td>'+
'<td style="font-weight:bold;padding-left:5px">'+titleName + '<span style="color:#36C"> ('+fullcount+')</span></td>'+
'<td class="emailCheckbox"><input type="checkbox"/></td>'+
'</tr></table><div></div>';
el.innerHTML = headerContent;
var isSum = (data.sum==0 || !data.sum) ? false : true;
displayItems(isSum);
var checkInput = el.firstChild.firstChild.firstChild.childNodes[2].firstChild;
checkInput.checked = isSum;
checkInput.onclick = function() {
data.sum = ((this.checked) ? 1 : 0);
obj.save();
displayItems(this.checked);
}
} else {
el.innerHTML = '<table cellpadding="0" cellspacing="0" width="100%"><tr><td width="20"><img src="modules/gmail/img/gmail.gif" width="20" height="15"/></td><td style="padding-left:5px">'+App.Loc.Gmail_noUnread+'</td></tr></table>';
}
}
obj.onLoadModule();
}
function displayDefault() {
el.innerHTML = '<table cellpadding="0" cellspacing="0" width="100%"><tr><td width="20"><img src="modules/gmail/img/gmail.gif" width="20" height="15"/></td><td style="padding-left:5px">'+App.Loc.Gmail_notConfigured+'</td></tr></table>';
obj.onLoadModule();
}
if (data.login==null) {
displayDefault();
} else {
var param = "getPass=1&login="+data.login+"&moduleId="+obj.dataObj.id;
Request.sendPOST('securePassProxy.php', param, displayEmails);
/*
pour gérer les labels, ajouter son nom à la fin de l'url :
https://login:password@mail.google.com/mail/feed/atom/label
URL pour aller directement dans le compte gmail : marche en get mais à tester en POST
https://www.google.com/accounts/ServiceLoginAuth?Email=login&Passwd=password&service=mail&rm=false&continue=http://mail.google.com/mail/?ui=html&zy=l
*/
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -