';
old_divStatusBar.style.display = 'none';
msg_div.style.display = '';
// Nao ponha var na frente!! jakjr
handle_write_msg = function(){
try{
if(!old_msg)
clean_msg();
else
write_msg(old_msg, true);
}
catch(e){}
}
if(notimeout)
old_msg = msg;
else
setTimeout_write_msg = setTimeout("handle_write_msg();", 5000);
}
// Funcao usada para apagar mensagem sem timeout
function clean_msg(){
old_msg = false;
var msg_div = Element('em_div_write_msg');
var old_divStatusBar = Element("divStatusBar");
if(msg_div)
msg_div.style.display = 'none';
old_divStatusBar.style.display = '';
}
function make_body_reply(body, to, date_day, date_hour){
to = to.replace("<","<");
to = to.replace(">",">");
block_quoted_body ='';
block_quoted_body += get_lang('At %1, %2 hours, %3 wrote:', date_day, date_hour, to) + '
';
block_quoted_body += "";
block_quoted_body += body;
block_quoted_body += " ";
return block_quoted_body;
}
function make_forward_body(body, from, date, subject, to, cc){
from = from.replace(//g,">");
to = to.replace(//g,">");
var forward_body = '---------- ' + get_lang('Forwarded message') + ' ----------
';
forward_body += get_lang('From') + ': ' + from + '
';
forward_body += get_lang('Date') + ': ' + date + '
';
forward_body += get_lang('Subject') + ': ' + subject + '
';
forward_body += get_lang('To') + ': ' + to+ '
';
if(cc != undefined){
cc = cc.replace(//g,">");
forward_body += get_lang('CC') + ': ' + cc+ '
<
';
}
forward_body += body;
return forward_body;
}
function emMessageSearch(e,value){
var e = is_ie ? window.event : e;
if(e.keyCode == 13) {
search_emails(value);
}
}
function validateEmail(email){
if (typeof(email) != 'string')
return false;
var validName = /^[a-z0-9][a-z-_0-9\.]*/i;
emailParts = email.split('@');
return (validName.test(emailParts[0]) && validateDomain(emailParts[1]));
}
function validateDomain(domain){
var domainReg = /^(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/i;
return (domainReg.test(domain));
}
function validateUrl(url){
var urlReg = /([A-Za-z]{2,7}:\/\/)(.*)/i;
urlParts = url.split(urlReg);
return (urlParts[1].length > 4 && validateDomain(urlParts[2]));
}
function performQuickSearch(keyword){
if (preferences.quick_search_default=='1')
emQuickSearch(keyword, 'null', 'null', 'expressoMail');
else
search_emails(keyword);
}
function emQuickSearch(emailList, field, ID, Type){
var quickSearchKeyBegin;
var quickSearchKeyEnd;
if(expresso_offline) {
alert(get_lang('Not allowed in offline mode'));
return;
}
if ((field != 'null') && (ID != 'null'))
{
connector.loadScript("QuickCatalogSearch");
if (typeof(QuickCatalogSearch) == 'undefined'){
setTimeout('emQuickSearch("'+emailList+'", "'+field+'", "'+ID+'", "'+Type+'")',500);
return false;
}
}
else
{
connector.loadScript("QuickSearchUser");
if (typeof(QuickSearchUser) == 'undefined'){
setTimeout('emQuickSearch("'+emailList+'", "'+field+'", "'+ID+'", "'+Type+'")',500);
return false;
}
}
var handler_emQuickSearch = function(data)
{
if ((!data.status) && (data.error == "many results")){
alert(get_lang('More than %1 results. Please, try to refine your search.',data.maxResult));
return false;
}
if (data.length > 0){
if ((field != 'null') && (ID != 'null'))
{
QuickCatalogSearch.showList(data, quickSearchKeyBegin, quickSearchKeyEnd, ID, field);
}
else
{
QuickSearchUser.showList(data);
}
}
else
alert(get_lang('None result was found.'));
return true;
}
if ((field != 'null') && (ID != 'null'))
{
Element(field +'_'+ ID).focus(); //It requires for IE.
var i = getPosition(Element(field +'_'+ ID)); //inputBox.selectionStart;
var j = --i;
// Acha o inicio
while ((j >= 0) && (emailList.charAt(j) != ',')){j--};
quickSearchKeyBegin = ++j;
// Acha o final
while ((i <= emailList.length) && (emailList.charAt(i) != ',')){i++};
quickSearchKeyEnd = i;
// A Chave da Pesquisa
var search_for = trim(emailList.substring(quickSearchKeyBegin, quickSearchKeyEnd));
}
else
var search_for = emailList;
if (search_for.length < preferences.search_characters_number){
alert(get_lang('Your search argument must be longer than %1 characters.', preferences.search_characters_number));
return false;
}
if(Type == undefined)
cExecute ("$this.ldap_functions.quicksearchcontact&search_for="+search_for+"&field="+field+"&ID="+ID, handler_emQuickSearch);
else
cExecute ("$this.ldap_functions.quicksearchcontact&search_for="+search_for+"&field="+field+"&ID="+ID+"&Type="+Type, handler_emQuickSearch);
}
function folderbox(){
connector.loadScript("TreeS");
if (typeof(ttree) == 'undefined'){
setTimeout('folderbox()',500);
return false;
}
ttree.make_Window();
}
function filterbox(){
connector.loadScript("filter");
connector.loadScript("filters");
if (typeof(filters) == 'undefined')
{
setTimeout('filterbox()',500);
return false;
}
filters.Forms();
}
function sharebox(){
var handler_imap_getacl = function(data)
{
var options = '';
for (var x in data)
{
options += ""+data[x].cn+" ";
}
connector.loadScript("finder", "../services/");
connector.loadScript("sharemailbox");
if (typeof(sharemailbox) == 'undefined')
{
setTimeout('sharebox()',500);
return false;
}
sharemailbox.makeWindow(options);
}
cExecute ("$this.imap_functions.getacl", handler_imap_getacl);
}
function open_rss(param){
connector.loadScript("news_edit");
if (typeof(news_edit) == 'undefined')
{
setTimeout('open_rss(\''+param+'\')',500);
return false;
}
news_edit.read_rss(param);
return true;
}
function editrss(){
connector.loadScript("news_edit");
if (typeof(news_edit) == 'undefined')
{
setTimeout('editrss()',500);
return false;
}
news_edit.makeWindow();
}
function preferences_mail(){
location.href="../preferences/preferences.php?appname=expressoMail1_2";
}
function search_emails(value){
var resize = false;
resize = resize_borders();
if (!resize){
var str_continue = '';
var bolContinue = true;
str_continue = '\n' + get_lang('You must manually close one of your tabs before opening a new one');
if (preferences.auto_close_first_tab == 1){
var children = Element('border_tr').childNodes;
var bolDelete = true;
for (var i=0; i obj.value.length)
{
return -1;
}
return rb;
}
}
function trim(inputString) {
if (typeof inputString != "string")
return inputString;
var retValue = inputString;
var ch = retValue.substring(0, 1);
while (ch == " ") {
retValue = retValue.substring(1, retValue.length);
ch = retValue.substring(0, 1);
}
ch = retValue.substring(retValue.length-1, retValue.length);
while (ch == " ") {
retValue = retValue.substring(0, retValue.length-1);
ch = retValue.substring(retValue.length-1, retValue.length);
}
while (retValue.indexOf(" ") != -1) {
retValue = retValue.substring(0, retValue.indexOf(" ")) + retValue.substring(retValue.indexOf(" ")+1, retValue.length);
}
return retValue;
}
function increment_folder_unseen(){
var folder_id = get_current_folder();
var folder_unseen = Element('dftree_'+folder_id+'_unseen');
var abas_unseen = Element('new_m').innerHTML;
abas_unseen = abas_unseen.match(/(){0,1} *([0-9]+) *(<\/font>){0,1}/)[2];
if (folder_unseen)
folder_unseen.innerHTML = (parseInt(folder_unseen.innerHTML) + 1);
else
{
tree_folders.getNodeById(folder_id).alter({caption: tree_folders.getNodeById(current_folder).caption + ' ( 1 ) '});
tree_folders.getNodeById(folder_id)._refresh();
}
if( abas_unseen == NaN || abas_unseen == undefined )
abas_unseen = 1;
else
abas_unseen = parseInt(abas_unseen) + 1;
Element('new_m').innerHTML = '' + abas_unseen + ' ';
if ( current_folder.indexOf( 'INBOX' ) !== 0 && current_folder.indexOf( 'local_' ) !== 0 )
{
var display_unseen_in_shared_folders = Element('dftree_user_unseen');
if ( display_unseen_in_shared_folders )
tree_folders.getNodeById( 'user' ).alter({caption:'[ ' + ( parseInt( display_unseen_in_shared_folders.innerHTML) + 1 ) + ' ] ' + get_lang("Shared folders")});
else
tree_folders.getNodeById( 'user' ).alter({caption:'[ 1 ] ' + get_lang("Shared folders")});
tree_folders.getNodeById( 'user' )._refresh();
}
var display_unseen_in_mailbox = Element('dftree_root_unseen');
if(!expresso_offline)
var node_to_refresh = 'root';
else
var node_to_refresh = 'local_root';
tree_folders.getNodeById( node_to_refresh )._refresh();
}
function decrement_folder_unseen(){
var folder_id = get_current_folder();
var folder_unseen = Element('dftree_'+folder_id+'_unseen');
var abas_unseen = Element('new_m').innerHTML;
abas_unseen = abas_unseen.match( /(){0,1} *([0-9]+) *(<\/font>){0,1}/)[2];
if(!folder_unseen || !abas_unseen)
return;
if ((folder_unseen) && (parseInt(folder_unseen.innerHTML) > 1))
{
folder_unseen.innerHTML = (parseInt(folder_unseen.innerHTML) - 1);
}
else if (parseInt(folder_unseen.innerHTML) <= 1)
{
var tmp_folder_name = tree_folders.getNodeById(folder_id).caption.split('<');
var folder_name = tmp_folder_name[0];
tree_folders.getNodeById(folder_id).alter({caption: folder_name});
tree_folders.getNodeById(folder_id)._refresh();
}
if (parseInt(abas_unseen) > 1) {
Element('new_m').innerHTML = '' + (parseInt(abas_unseen) - 1) + ' ';
} else {
Element('new_m').innerHTML = '0';
}
if ( current_folder.indexOf( 'INBOX' ) !== 0 )
{
var display_unseen_in_shared_folders = Element('dftree_user_unseen');
if ( display_unseen_in_shared_folders )
{
var unseen_in_shared_folders = parseInt( display_unseen_in_shared_folders.innerHTML );
unseen_in_shared_folders--;
if ( unseen_in_shared_folders > 0 )
tree_folders.getNodeById( 'user' ).alter({caption:'[ ' + unseen_in_shared_folders + ' ] ' + get_lang("My Folders")});
else
tree_folders.getNodeById( 'user' ).alter({caption:get_lang("Shared folders")});
tree_folders.getNodeById( 'user' )._refresh();
}
}
var display_unseen_in_mailbox = Element('dftree_root_unseen');
if ( display_unseen_in_mailbox )
{
var unseen_in_mailbox = parseInt( display_unseen_in_mailbox.innerHTML );
unseen_in_mailbox--;
//if ( unseen_in_mailbox > 0 )
// tree_folders.getNodeById( 'root' ).alter({caption:'[ ' + unseen_in_mailbox + ' ] ' + get_lang("My Folders")});
//else
if(!expresso_offline)
var node_to_refresh = 'root';
else
var node_to_refresh = 'local_root';
tree_folders.getNodeById( node_to_refresh ).alter({caption:get_lang("My Folders")});
tree_folders.getNodeById( node_to_refresh )._refresh();
}
}
function LTrim(value){
var w_space = String.fromCharCode(32);
var strTemp = "";
var iTemp = 0;
var v_length = value ? value.length : 0;
if(v_length < 1)
return "";
while(iTemp < v_length){
if(value && value.charAt(iTemp) != w_space){
strTemp = value.substring(iTemp,v_length);
break;
}
iTemp++;
}
return strTemp;
}
//changes MENU background color.
function set_menu_bg(menu)
{
menu.style.backgroundColor = 'white';
menu.style.border = '1px solid black';
menu.style.padding = '0px 0px';
}
//changes MENU background color.
function unset_menu_bg(menu)
{
menu.style.backgroundColor = '';
menu.style.border = '0px';
menu.style.padding = '1px 0px';
}
function array_search(needle, haystack) {
var n = haystack.length;
for (var i=0; i 100)
return (size/mbyte).toFixed(0) + ' MB';
else
return (size/mbyte).toFixed(1) + ' MB';
else
return (size/gbyte).toFixed(1) + ' GB';
}
//valida se a primeira data é menor que a segunda data
function validate_date_order(dateStart, dateEnd){
if ( parseInt( dateEnd.split( "/" )[2].toString() + dateEnd.split( "/" )[1].toString() + dateEnd.split( "/" )[0].toString() ) >= parseInt( dateStart.split( "/" )[2].toString() + dateStart.split( "/" )[1].toString() + dateStart.split( "/" )[0].toString() ) ){
return true;
}else{
return false;
}
}
function validate_date(date){
if (date.match(/^[0-3][0-9]\/[0-1][0-9]\/\d{4,4}$/))
{
tmp = date.split('/');
day = new Number(tmp[0]);
month = new Number(tmp[1]);
year = new Number(tmp[2]);
if (month >= 1 && month <= 12 && day >= 1 && day <= 31)
{
if (month == 02 && day <= 29)
{
return true;
}
return true;
}
else
{
return false;
}
}
else
{
return false;
}
}
function dateMask(inputData, e){
if(document.all) // Internet Explorer
var tecla = event.keyCode;
else //Outros Browsers
var tecla = e.which;
if(tecla >= 47 && tecla < 58){ // numeros de 0 a 9 e "/"
var data = inputData.value;
if (data.length == 2 || data.length == 5){
data += '/';
inputData.value = data;
}
} else {
if(tecla == 8 || tecla == 0) // Backspace, Delete e setas direcionais(para mover o cursor, apenas para FF)
return true;
else
return false;
}
}
function translateFolder(folderName){
for (var i = 0; i < folders.length; i++)
{
if (folders[i].folder_parent == 'user'
&& folderName == folders[i].folder_id.split(cyrus_delimiter).pop())
{
if (folders[i].folder_id.split(cyrus_delimiter).pop() != folders[i].folder_name)
{
return folders[i].folder_name;
}
}
}
return folderName;
}