Changeset 1525 in subversion


Ignore:
Timestamp:
Jun 13, 2008 8:57:52 AM (5 years ago)
Author:
alec
Message:
  • Added option to display images in messages from known senders (#1484601)
Location:
trunk/roundcubemail
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • trunk/roundcubemail/CHANGELOG

    r1516 r1525  
    11CHANGELOG RoundCube Webmail 
    22--------------------------- 
     3 
     42008/06/13 (alec) 
     5---------- 
     6- Added option to display images in messages from known senders (#1484601) 
    37 
    482008/06/12 (alec) 
  • trunk/roundcubemail/config/main.inc.php.dist

    r1493 r1525  
    313313$rcmail_config['prefer_html'] = TRUE; 
    314314 
     315// display images in mail from known senders 
     316$rcmail_config['addrbook_show_images'] = FALSE; 
     317 
    315318// compose html formatted messages by default 
    316319$rcmail_config['htmleditor'] = FALSE; 
  • trunk/roundcubemail/program/include/rcube_message.php

    r1468 r1525  
    8787  } 
    8888   
     89  /** 
     90   * Set is_safe var and session data 
     91   * 
     92   * @param bool enable/disable 
     93   */ 
     94  public function set_safe($safe = true) 
     95  { 
     96    $this->is_safe = $safe; 
     97    $_SESSION['safe_messages'][$this->uid] = $this->is_safe; 
     98  } 
    8999   
    90100  /** 
  • trunk/roundcubemail/program/js/app.js

    r1508 r1525  
    34003400 
    34013401 
     3402  this.toggle_prefer_html = function(checkbox) 
     3403    { 
     3404    var addrbook_show_images; 
     3405    if (addrbook_show_images = document.getElementById('rcmfd_addrbook_show_images')) 
     3406      addrbook_show_images.disabled = !checkbox.checked; 
     3407    } 
     3408 
     3409 
    34023410 
    34033411  /********************************************************/ 
  • trunk/roundcubemail/program/localization/en_US/labels.inc

    r1403 r1525  
    6767$labels['preferhtml'] = 'Display HTML'; 
    6868$labels['htmlmessage'] = 'HTML Message'; 
     69$labels['showknownimages'] = 'Show images from known senders'; 
    6970$labels['prettydate'] = 'Pretty dates'; 
    7071 
  • trunk/roundcubemail/program/localization/nl_NL/labels.inc

    r1524 r1525  
    5353$labels['preferhtml'] = 'Toon HTML'; 
    5454$labels['htmlmessage'] = 'HTML Bericht'; 
     55$labels['showknownimages'] = 'Toon afbeeldingen van bekende afzenders'; 
    5556$labels['prettydate'] = 'Opgemaakte datums'; 
    5657$labels['addtoaddressbook'] = 'Toevoegen aan adresboek'; 
  • trunk/roundcubemail/program/localization/pl_PL/labels.inc

    r1451 r1525  
    5959$labels['preferhtml'] = 'Domyślny HTML'; 
    6060$labels['htmlmessage'] = 'Wiadomość HTML'; 
     61$labels['showknownimages'] = 'Wyświetlaj obrazki od znanych nadawców'; 
    6162$labels['prettydate'] = 'Ładne daty'; 
    6263$labels['addtoaddressbook'] = 'Dodaj do ksiÄ 
  • trunk/roundcubemail/program/steps/mail/show.inc

    r1400 r1525  
    4545  // calculate Etag for this request 
    4646  $etag = md5($MESSAGE->uid.$mbox_name.session_id().intval($MESSAGE->headers->mdn_sent).intval($MESSAGE->is_safe).intval($PRINT_MODE)); 
     47 
     48  // check known senders to display images 
     49  if (!$MESSAGE->is_safe  
     50        && !$_SESSION['safe_messages'][$MESSAGE->uid] 
     51        && !isset($_GET['_safe'])  
     52        && $RCMAIL->config->get('addrbook_show_images') 
     53        && $MESSAGE->has_html_part()) 
     54    { 
     55      $CONTACTS = new rcube_contacts($DB, $_SESSION['user_id']); 
     56      $senders = $IMAP->decode_address_list($MESSAGE->headers->from); 
     57 
     58      foreach ($senders as $sender) 
     59        if ($sender['mailto'] && $CONTACTS->search('email', $sender['mailto'], true, false)->count) 
     60          { 
     61          $MESSAGE->set_safe(); 
     62          break; 
     63          } 
     64    } 
    4765 
    4866  // allow caching, unless remote images are present 
  • trunk/roundcubemail/program/steps/settings/func.inc

    r1448 r1525  
    151151    { 
    152152    $field_id = 'rcmfd_htmlmsg'; 
    153     $input_pagesize = new html_checkbox(array('name' => '_prefer_html', 'id' => $field_id, 'value' => 1)); 
     153    $input_preferhtml = new html_checkbox(array('name' => '_prefer_html', 'id' => $field_id, 'value' => 1, 
     154        'onchange' => JS_OBJECT_NAME.'.toggle_prefer_html(this)')); 
    154155 
    155156    $out .= sprintf("<tr><td class=\"title\"><label for=\"%s\">%s</label></td><td>%s</td></tr>\n", 
    156157                    $field_id, 
    157158                    Q(rcube_label('preferhtml')), 
    158                     $input_pagesize->show($config['prefer_html']?1:0)); 
     159                    $input_preferhtml->show($config['prefer_html']?1:0)); 
     160    } 
     161 
     162  // show checkbox for displaying images from people in the addressbook 
     163  if (!isset($no_override['addrbook_show_images'])) 
     164    { 
     165    $field_id = 'rcmfd_addrbook_show_images'; 
     166    $input_addrbook_show_images = new html_checkbox(array('name' => '_addrbook_show_images', 'id' => $field_id,  
     167        'value' => 1, 'disabled' => $config['prefer_html']?0:1)); 
     168 
     169    $out .= sprintf("<tr><td class=\"title\"><label for=\"%s\">%s</label></td><td>%s</td></tr>\n", 
     170                    $field_id, 
     171                    Q(rcube_label('showknownimages')), 
     172                    $input_addrbook_show_images->show($config['addrbook_show_images']?1:0)); 
    159173    } 
    160174 
  • trunk/roundcubemail/program/steps/settings/save_prefs.inc

    r1403 r1525  
    2626  'prettydate'   => isset($_POST['_pretty_date']) ? TRUE : FALSE, 
    2727  'prefer_html'  => isset($_POST['_prefer_html']) ? TRUE : FALSE, 
     28  'addrbook_show_images' => isset($_POST['_addrbook_show_images']) ? TRUE : FALSE, 
    2829  'htmleditor'   => isset($_POST['_htmleditor']) ? TRUE : FALSE, 
    2930  'preview_pane' => isset($_POST['_preview_pane']) ? TRUE : FALSE, 
Note: See TracChangeset for help on using the changeset viewer.