alecpl
2010-06-23 5c024015f02ed5b0b772f8fff5bfe8aa6dab1d93
program/js/app.js
@@ -203,7 +203,7 @@
          'open', 'mark', 'edit', 'viewsource', 'download', 'print', 'load-attachment', 'load-headers'];
        if (this.env.action=='show' || this.env.action=='preview') {
          this.enable_command(this.env.message_commands, true);
          this.enable_command(this.env.message_commands, this.env.uid);
          if (this.env.next_uid) {
            this.enable_command('nextmessage', 'lastmessage', true);
@@ -243,7 +243,7 @@
          this.init_messageform();
        }
        // show printing dialog
        else if (this.env.action == 'print')
        else if (this.env.action == 'print' && this.env.uid)
          window.print();
        // get unread count for each mailbox
@@ -1302,7 +1302,7 @@
          this.env.folder_coords[k].on = 0;
        }
      }
      if (layerclass != oldclass && this.contact_list && this.contact_list.draglayer)
        this.contact_list.draglayer.attr('class', layerclass);
    }
@@ -1495,13 +1495,13 @@
    if (this.env.messages[row.uid])
      this.env.messages[row.uid].expanded = row.expanded;
  };
  this.msglist_set_coltypes = function(list)
  {
    var i, found, name, cols = list.list.tHead.rows[0].cells;
    this.env.coltypes = [];
    for (i=0; i<cols.length; i++)
      if (cols[i].id && cols[i].id.match(/^rcm/)) {
        name = cols[i].id.replace(/^rcm/, '');
@@ -1520,7 +1520,7 @@
  this.check_droptarget = function(id)
  {
    var allow = false, copy = false;
    if (this.task == 'mail')
      allow = (this.env.mailboxes[id] && this.env.mailboxes[id].id != this.env.mailbox && !this.env.mailboxes[id].virtual);
    else if (this.task == 'settings')
@@ -1538,7 +1538,7 @@
        }
      }
    }
    return allow ? (copy ? 2 : 1) : 0;
  };
@@ -1594,7 +1594,9 @@
      depth: flags.depth?flags.depth:0,
      unread_children: flags.unread_children?flags.unread_children:0,
      parent_uid: flags.parent_uid?flags.parent_uid:0,
      selected: this.select_all_mode || this.message_list.in_selection(uid)
      selected: this.select_all_mode || this.message_list.in_selection(uid),
      // flags from plugins
      flags: flags.extra_flags
    });
    var c, tree = expando = '',
@@ -1894,6 +1896,7 @@
      this.env.current_page = page;
      this.select_all_mode = false;
      this.show_contentframe(false);
      this.env.messages = {};
    }
    if (mbox != this.env.mailbox || (mbox == this.env.mailbox && !page && !sort))
@@ -2258,8 +2261,6 @@
      rows[uid].forwarded = status;
    else if (flag == 'flagged')
      rows[uid].flagged = status;
//    this.env.messages[uid] = rows[uid];
  };
  // set message row status, class and icon
@@ -3476,7 +3477,7 @@
      for (i=0; i < a_results.length; i++) {
        text = typeof a_results[i] == 'object' ? a_results[i].name : a_results[i];
        li = document.createElement('LI');
        li.innerHTML = text.replace(new RegExp('('+s_val+')', 'ig'), '##$1%%').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/##([^%]+)%%/g, '<b>$1</b>');
        li.innerHTML = text.replace(new RegExp('('+RegExp.escape(s_val)+')', 'ig'), '##$1%%').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/##([^%]+)%%/g, '<b>$1</b>');
        li.onmouseover = function(){ ref.ksearch_select(this); };
        li.onmouseup = function(){ ref.ksearch_click(this) };
        li._rcm_id = i;
@@ -4673,7 +4674,7 @@
  this.set_quota = function(content)
  {
    if (content && this.gui_objects.quotadisplay) {
      if (typeof(content) == 'object')
      if (typeof(content) == 'object' && content.type == 'image')
        this.percent_indicator(this.gui_objects.quotadisplay, content);
      else
        $(this.gui_objects.quotadisplay).html(content);
@@ -4824,6 +4825,9 @@
      quota_width = parseInt(quota / 100 * width),
      pos = $(obj).position();
    // Opera bug?
    pos.top = Math.max(0, pos.top);
    this.env.indicator_width = width;
    this.env.indicator_height = height;
@@ -4832,6 +4836,9 @@
      quota_width = width;
      quota = 100; 
    }
    if (data.title)
      data.title = this.get_label('quota') + ': ' +  data.title;
    // main div
    var main = $('<div>');
@@ -4863,6 +4870,8 @@
    // replace quota image
    $(obj).html('').append(bar1).append(bar2).append(main);
    // update #quotaimg title
    $('#quotaimg').attr('title', data.title);
  };
  /********************************************************/
@@ -4927,7 +4936,7 @@
    querystring += (querystring ? '&' : '') + '_remote=1';
    var url = this.env.comm_path + '&_action=' + action + '&' + querystring;
    // send request
    console.log('HTTP GET: ' + url);
    $.get(url, { _unlock:(lock?1:0) }, function(data){ ref.http_response(data); }, 'json');
@@ -5022,7 +5031,8 @@
            this.enable_command(this.env.message_commands, 'purge', 'expunge',
              'select-all', 'select-none', 'sort', 'expand-all', 'expand-unread', 'collapse-all', false);
          }
          this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount });
          if (this.message_list)
            this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount });
        }
        break;
@@ -5076,9 +5086,9 @@
    if (this._int)
      clearInterval(this._int);
    if (this.env.keep_alive && !this.env.framed && this.task=='mail' && this.gui_objects.mailboxlist)
    if (this.env.keep_alive && !this.env.framed && this.task == 'mail' && this.gui_objects.mailboxlist)
      this._int = setInterval(function(){ ref.check_for_recent(false); }, this.env.keep_alive * 1000);
    else if (this.env.keep_alive && !this.env.framed && this.task!='login')
    else if (this.env.keep_alive && !this.env.framed && this.task != 'login' && this.env.action != 'print')
      this._int = setInterval(function(){ ref.send_keep_alive(); }, this.env.keep_alive * 1000);
  };