Skip to content

Commit

Permalink
pull from upstream
Browse files Browse the repository at this point in the history
  • Loading branch information
katiepru committed Sep 13, 2012
2 parents fe847df + 41b3fe1 commit 3a0adc2
Show file tree
Hide file tree
Showing 125 changed files with 2,857 additions and 1,640 deletions.
57 changes: 43 additions & 14 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,21 +1,32 @@
CHANGELOG Roundcube Webmail
===========================

- Fix so "Edit as new" on draft creates a new message (#1488687)
- Fix invalid error message on deleting mail from read only folder (#1488694)
- Fix error where session wasn't updated after folder rename/delete (#1488692)
- Replace data URIs of images (pasted in HTML editor) with inline attachments (#1488502)
- Fix PLAIN authentication for some IMAP servers (#1488674)
- Fix encoding vCard file when contains PHOTO;ENCODING=b (#1488683)
- Fix focus issue in IE when selecting message row (#1488620)
- Remove (too big) min-width on mail screen
- Add full headers view in message preview window (#1488538)
- Fix message display page issues - unified with message preview (#1488590, #1488642)
- Fix displaying all headers when they contain malformed characters (#1488666)
- Fix decoding of HTML messages with UTF-16 charset specified (#1488654)
- Fix quota capability detection so it can be overwritten by a plugin (#1488655)
- Added template object 'frame'
- Fix identity selection on reply (#1488101)
- Add option to enable HTML editor on forwarding (#1488517)
- Add option to not include original message on reply, rename option top_posting to reply_mode (#1485149)
- Fix Larry's messages list filter in IE (#1488632)
- Fix more IE issues by disabling Compat. mode with X-UA-Compatible meta tag (#1488626)
- Fix setting locales under Solaris - use additional .UTF-8 suffix (#1488628)
- Fix email address validation for addresses with IP address in domain part
- Fix Larry skin issues in IE7 compat. mode (#1488618)
- Fix so subscribed non-existing/non-accessible shared folder can be unsubscribed
- Added session_path config option and unified cookies settings in javascript
- Added "Undeleted" option to messages list filter
- Rewritten test scripts for PHPUnit
- Fix lower-casing email address on replies (#1488598)
- Fix line separator in exported messages (#1488603)
- Fix XSS issue where plain signatures wasn't secured in HTML mode (#1488613)
- Fix XSS issue where href="javascript:" wasn't secured (#1488613)
- Fix impossible to create message with empty plain text part (#1488610)
- Fix stripped apostrophes when replying in plain text to HTML message (#1488606)
- Fix inactive Save search option after advanced search (#1488607)
- Fix Remove from group option is active for contact search result (#1488608)
- Disable autocapitalization in login form on iPad/iPhone (#1488609)
- Fix focus on the list when list row is clicked (#1488600)
- Added separate From and To columns apart from smart From/To column (#1486891)
- Fix fallback to Larry skin when configured skin isn't available (#1488591)
- Fix (workaround) delete operations with some versions of memcache (#1488592)
- Fix (disable) request validation for spell and spell_html actions
- Add new DB abstraction layer based on PHP PDO, supporting SQLite3 (#1488332)
- Removed PEAR::MDB2 package
- Removed users.alias column, added option ('user_aliases')
Expand All @@ -41,6 +52,24 @@ CHANGELOG Roundcube Webmail
Move global functions from main.inc and rcube_shared.inc into classes
Better classes separation

RELEASE 0.8.1
-------------
- Fix bug where domain name was converted to lower-case even with login_lc=false (#1488593)
- Fix lower-casing email address on replies (#1488598)
- Fix line separator in exported messages (#1488603)
- Fix XSS issue where plain signatures wasn't secured in HTML mode (#1488613)
- Fix XSS issue where href="javascript:" wasn't secured (#1488613)
- Fix impossible to create message with empty plain text part (#1488610)
- Fix stripped apostrophes when replying in plain text to HTML message (#1488606)
- Fix inactive Save search option after advanced search (#1488607)
- Fix Remove from group option is active for contact search result (#1488608)
- Disable autocapitalization in login form on iPad/iPhone (#1488609)
- Fix focus on the list when list row is clicked (#1488600)
- Added separate From and To columns apart from smart From/To column (#1486891)
- Fix fallback to Larry skin when configured skin isn't available (#1488591)
- Fix (workaround) delete operations with some versions of memcache (#1488592)
- Fix (disable) request validation for spell and spell_html actions

RELEASE 0.8.0
-------------
- Don't show product version on login screen (can be enabled by config)
Expand Down
27 changes: 17 additions & 10 deletions config/main.inc.php.dist
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ $rcmail_config = array();
// LOGGING/DEBUGGING
// ----------------------------------

// system error reporting: 1 = log; 2 = report (not implemented yet), 4 = show, 8 = trace
// system error reporting, sum of: 1 = log; 4 = show, 8 = trace
$rcmail_config['debug_level'] = 1;

// log driver: 'syslog' or 'file'.
Expand Down Expand Up @@ -78,7 +78,7 @@ $rcmail_config['default_host'] = '';
// TCP port used for IMAP connections
$rcmail_config['default_port'] = 143;

// IMAP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or empty to use
// IMAP AUTH type (DIGEST-MD5, CRAM-MD5, LOGIN, PLAIN or null to use
// best server supported one)
$rcmail_config['imap_auth_type'] = null;

Expand Down Expand Up @@ -224,11 +224,12 @@ $rcmail_config['use_https'] = false;
// 0 - disabled, 1 - username and host only, 2 - username, host, password
$rcmail_config['login_autocomplete'] = 0;

// If users authentication is not case sensitive this must be enabled.
// You can also use it to force conversion of logins to lower case.
// Forces conversion of logins to lower case.
// 0 - disabled, 1 - only domain part, 2 - domain and local part.
// If users authentication is not case-sensitive this must be enabled.
// After enabling it all user records need to be updated, e.g. with query:
// UPDATE users SET username = LOWER(username);
$rcmail_config['login_lc'] = false;
$rcmail_config['login_lc'] = 0;

// Includes should be interpreted as PHP files
$rcmail_config['skin_include_php'] = false;
Expand All @@ -240,12 +241,15 @@ $rcmail_config['display_version'] = false;
// must be greater than 'keep_alive'/60
$rcmail_config['session_lifetime'] = 10;

// session domain: .example.org
// Session domain: .example.org
$rcmail_config['session_domain'] = '';

// session name. Default: 'roundcube_sessid'
// Session name. Default: 'roundcube_sessid'
$rcmail_config['session_name'] = null;

// Session path. Defaults to PHP session.cookie_path setting.
$rcmail_config['session_path'] = null;

// Backend to use for session storage. Can either be 'db' (default) or 'memcache'
// If set to memcache, a list of servers need to be specified in 'memcache_hosts'
// Make sure the Memcache extension (http://pecl.php.net/package/memcache) version >= 2.0.0 is installed
Expand Down Expand Up @@ -721,7 +725,7 @@ $rcmail_config['prefer_html'] = true;
$rcmail_config['show_images'] = 0;

// compose html formatted messages by default
// 0 - never, 1 - always, 2 - on reply to HTML message only
// 0 - never, 1 - always, 2 - on reply to HTML message, 3 - on forward or reply to HTML message
$rcmail_config['htmleditor'] = 0;

// show pretty dates as standard
Expand Down Expand Up @@ -779,8 +783,11 @@ $rcmail_config['display_next'] = true;
// 2 - Expand only threads with unread messages
$rcmail_config['autoexpand_threads'] = 0;

// When replying place cursor above original message (top posting)
$rcmail_config['top_posting'] = false;
// When replying:
// -1 - don't cite the original message
// 0 - place cursor below the original message
// 1 - place cursor above original message (top posting)
$rcmail_config['reply_mode'] = 0;

// When replying strip original signature from message
$rcmail_config['strip_existing_sig'] = true;
Expand Down
11 changes: 6 additions & 5 deletions installer/rcube_install.php
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,14 @@ class rcube_install

var $obsolete_config = array('db_backend', 'double_auth');
var $replaced_config = array(
'skin_path' => 'skin',
'locale_string' => 'language',
'multiple_identities' => 'identities_level',
'skin_path' => 'skin',
'locale_string' => 'language',
'multiple_identities' => 'identities_level',
'addrbook_show_images' => 'show_images',
'imap_root' => 'imap_ns_personal',
'pagesize' => 'mail_pagesize',
'imap_root' => 'imap_ns_personal',
'pagesize' => 'mail_pagesize',
'default_imap_folders' => 'default_folders',
'top_posting' => 'reply_mode',
);

// these config options are required for a working system
Expand Down
3 changes: 1 addition & 2 deletions plugins/acl/acl.php
Original file line number Diff line number Diff line change
Expand Up @@ -233,8 +233,7 @@ function templ_rights($attrib)

// Advanced rights
$attrib['id'] = 'advancedrights';
foreach ($supported as $val) {
$id = "acl$val";
foreach ($supported as $idx => $val) {
$ul .= html::tag('li', null,
$input->show('', array(
'name' => "acl[$val]", 'value' => $val, 'id' => $id))
Expand Down
4 changes: 4 additions & 0 deletions plugins/acl/skins/larry/acl.css
Original file line number Diff line number Diff line change
Expand Up @@ -123,3 +123,7 @@
{
margin-left: 0.5em;
}

ul.toolbarmenu li span.delete {
background-position: 0 -1509px;
}
8 changes: 4 additions & 4 deletions plugins/acl/skins/larry/templates/table.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
<roundcube:object name="acltable" id="acltable" class="records-table" />
</div>
<div id="acllist-footer" class="boxfooter">
<roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="listbutton groupactions"onclick="UI.show_popup('aclmenu');return false" innerClass="inner" content="&#9881;" />
<roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="listbutton groupactions"onclick="UI.show_popup('aclmenu', undefined, {above:1});return false" innerClass="inner" content="&#9881;" />
</div>
</div>

<div id="aclmenu" class="popupmenu">
<ul class="toolbarmenu selectable">
<li><roundcube:button command="acl-edit" label="edit" classAct="active" /></li>
<li><roundcube:button command="acl-delete" label="delete" classAct="active" /></li>
<ul class="toolbarmenu selectable iconized">
<li><roundcube:button command="acl-edit" label="edit" class="icon" classAct="icon active" innerclass="icon edit" /></li>
<li><roundcube:button command="acl-delete" label="delete" class="icon" classAct="icon active" innerclass="icon delete" /></li>
<roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
<li><roundcube:button name="acl-switch" id="acl-switch" label="acl.advanced" onclick="rcmail.command('acl-mode-switch')" class="active" /></li>
<roundcube:endif />
Expand Down
6 changes: 1 addition & 5 deletions plugins/hide_blockquote/hide_blockquote.php
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,7 @@ function init()
&& ($limit = $rcmail->config->get('hide_blockquote_limit'))
) {
// include styles
$skin = $rcmail->config->get('skin');
if (!file_exists($this->home."/skins/$skin/style.css")) {
$skin = 'default';
}
$this->include_stylesheet("skins/$skin/style.css");
$this->include_stylesheet($this->local_skin_path() . "/style.css");

// Script and localization
$this->include_script('hide_blockquote.js');
Expand Down
7 changes: 0 additions & 7 deletions plugins/managesieve/tests/Makefile

This file was deleted.

54 changes: 54 additions & 0 deletions plugins/managesieve/tests/Parser.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
<?php

class Parser extends PHPUnit_Framework_TestCase
{

function setUp()
{
include_once dirname(__FILE__) . '/../lib/rcube_sieve_script.php';
}

/**
* Sieve script parsing
*
* @dataProvider data_parser
*/
function test_parser($input, $output, $message)
{
$script = new rcube_sieve_script($input);
$result = $script->as_text();

$this->assertEquals(trim($result), trim($output), $message);
}

/**
* Data provider for test_parser()
*/
function data_parser()
{
$dir_path = realpath(dirname(__FILE__) . '/src');
$dir = opendir($dir_path);
$result = array();

while ($file = readdir($dir)) {
if (preg_match('/^[a-z0-9_]+$/', $file)) {
$input = file_get_contents($dir_path . '/' . $file);

if (file_exists($dir_path . '/' . $file . '.out')) {
$output = file_get_contents($dir_path . '/' . $file . '.out');
}
else {
$output = $input;
}

$result[] = array(
'input' => $input,
'output' => $output,
'message' => "Error in parsing '$file' file",
);
}
}

return $result;
}
}
33 changes: 33 additions & 0 deletions plugins/managesieve/tests/Tokenizer.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<?php

class Tokenizer extends PHPUnit_Framework_TestCase
{

function setUp()
{
include_once dirname(__FILE__) . '/../lib/rcube_sieve_script.php';
}

function data_tokenizer()
{
return array(
array(1, "text: #test\nThis is test ; message;\nMulti line\n.\n;\n", '"This is test ; message;\nMulti line"'),
array(0, '["test1","test2"]', '[["test1","test2"]]'),
array(1, '["test"]', '["test"]'),
array(1, '"te\\"st"', '"te\\"st"'),
array(0, 'test #comment', '["test"]'),
array(0, "text:\ntest\n.\ntext:\ntest\n.\n", '["test","test"]'),
array(1, '"\\a\\\\\\"a"', '"a\\\\\\"a"'),
);
}

/**
* @dataProvider data_tokenizer
*/
function test_tokenizer($num, $input, $output)
{
$res = json_encode(rcube_sieve_script::tokenize($input, $num));

$this->assertEquals(trim($res), trim($output));
}
}
Loading

0 comments on commit 3a0adc2

Please sign in to comment.