Files
modoboa/extensions/webmail/templates/index.html
T
tonio 809be7c017 Against : webmail navigation improvement...
It's now possible to write and send text emails.
2010-01-22 18:55:36 +01:00

147 lines
3.7 KiB
HTML

{% extends "common/email_listing.html" %}
{% load i18n %}
{% block css %}
#leftcol {
float: left;
width: 150px;
}
.box h3 {
font-size: small;
margin: 2px 0px 2px 0px;
text-align: center;
}
.box ul {
list-style: none;
padding: 5px 5px;
margin: 0;
}
.box li {
clear: both;
margin-bottom: 4px;
}
.box li.selected {
background: #ffffcc;
}
.box a:link, .box a:visited {
background: transparent;
color: black;
font-weight: bold;
text-decoration: none;
}
.box a:hover {
color: #6AB0C5;
text-decoration: none;
}
.box img {
float: left;
margin-right: 2px;
border: 0;
}
{% endblock %}
{% block js %}
updatelisting = function(resp, overflow) {
if ($defined(resp.menu)) {
$("menubar").set("html", resp.menu);
}
$("listing").set("html", resp.listing);
$("listing").setStyle("overflow", overflow);
if ($defined(resp.navbar)) {
$("navbar").set("html", resp.navbar);
$("navbar").getChildren("a").addEvent("click", navbarcallback);
}
$$("a[name=compose]").addEvent("click", loadCompose);
}
{% url extensions.webmail.main.folder as view_url %}
loadMail = function(event) {
event.stop();
if (event.target.parentNode.id) {
var url = "{{ view_url }}" + event.target.parentNode.id;
event.target.parentNode.setStyle("background", "#ffffcc");
new Request.JSON({url: url, onSuccess: function(resp) {
updatelisting(resp, "hidden");
$$("a[name=back]").addEvent("click", loadFolder);
setDivHeight("mailcontent", $("table-container").getSize().y, 0);
}}).get();
}
}
loadCompose = function(event) {
event.stop();
new Request.JSON({url: event.target, onSuccess: function(resp) {
updatelisting(resp, "hidden");
$$("a[name=back]").addEvent("click", loadFolder);
$$("a[name=sendmail]").addEvent("click", function(evt) {
evt.stop();
$("composemail").set("send", {
onSuccess: function(res) {
updatelisting(JSON.decode(res));
$$("tr").addEvent("click", loadMail);
}
});
$("composemail").send();
});
setDivHeight("id_body", $("mailheader").getSize().y + 20, 0);
}}).get();
}
loadFolder = function(event, obj) {
obj = typeof(obj) != "undefined" ? obj : event.target;
event.stop();
new Request.JSON({url: obj.get("href"), onSuccess: function(resp) {
updatelisting(resp, "auto");
$$("tr").addEvent("click", loadMail);
}}).get({"mode" : "ajax"});
}
navbarcallback = function(event) {
loadFolder(event, event.target.getParent());
}
select = function(obj) {
$$("a[name=loadfolder]").each(function(item) {
item.getParent().setStyle("background", "white");
});
obj.getParent().setStyle("background", "#FFFFCC");
}
foldercallback = function(event) {
select(event.target);
loadFolder(event, event.target);
}
$$("a[name=loadfolder]").addEvent("click", foldercallback);
$("navbar").getChildren("a").addEvent("click", navbarcallback);
$$("tr").addEvent("click", loadMail);
$$("a[name=compose]").addEvent("click", loadCompose);
{% endblock %}
{% block middletitle %}{% trans "Webmail" %}{% endblock %}
{% block menu %}
{% load webextras %}
{% listing_menu "" perms %}
{% endblock %}
{% block leftcol %}
<div id="leftcol" class="box">
<h3>{% trans "Folders" %}</h3>
<ul>
{% for fd in folders %}
{% url extensions.webmail.main.folder fd.name as fdurl %}
<a href="{{ fdurl }}" name="loadfolder">
<li {% ifequal selection fd.name %}class="selected"{% endifequal %}>
{% if fd.icon %}<img src="/static/pics/{{ fd.icon }}" />
{% else %}<img src="/static/pics/folder.png" />
{% endif %}
{{ fd.name }}</li>
</a>
{% endfor %}
</ul>
</div>
{% endblock %}