Fix empty messages list when register_globals is enabled (#1489157)

pull/73/merge
Aleksander Machniak 12 years ago
parent d7604c8c59
commit a5b79b15a8

@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail CHANGELOG Roundcube Webmail
=========================== ===========================
- Fix empty messages list when register_globals is enabled (#1489157)
- Improved/unified attachment preview screen, added print button - Improved/unified attachment preview screen, added print button
- Fix lack of space between searchfiler and quicksearchbar in Larry skin (#1489158) - Fix lack of space between searchfiler and quicksearchbar in Larry skin (#1489158)
- Fix so valid and set date.timezone is not required by installer checks (#1489180) - Fix so valid and set date.timezone is not required by installer checks (#1489180)

@ -48,6 +48,7 @@ $optional_checks = array(
// required for utils/modcss.inc, should we require this? // required for utils/modcss.inc, should we require this?
'allow_url_fopen' => 1, 'allow_url_fopen' => 1,
'date.timezone' => '-VALID-', 'date.timezone' => '-VALID-',
'register_globals' => 0, // #1489157
); );
$source_urls = array( $source_urls = array(

@ -19,10 +19,10 @@
+-----------------------------------------------------------------------+ +-----------------------------------------------------------------------+
*/ */
$afields = $RCMAIL->config->get('contactlist_fields'); $afields = $RCMAIL->config->get('contactlist_fields');
$sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name'); $addr_sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name');
$page_size = $RCMAIL->config->get('addressbook_pagesize', $RCMAIL->config->get('pagesize', 50)); $page_size = $RCMAIL->config->get('addressbook_pagesize', $RCMAIL->config->get('pagesize', 50));
$page = max(1, intval($_GET['_page'])); $list_page = max(1, intval($_GET['_page']));
// Use search result // Use search result
if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']])) { if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']])) {
@ -42,7 +42,7 @@ if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search
while ($row = $result->next()) { while ($row = $result->next()) {
$row['sourceid'] = $s; $row['sourceid'] = $s;
$key = rcube_addressbook::compose_contact_key($row, $sort_col); $key = rcube_addressbook::compose_contact_key($row, $addr_sort_col);
$records[$key] = $row; $records[$key] = $row;
} }
unset($result); unset($result);
@ -53,7 +53,7 @@ if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search
// create resultset object // create resultset object
$count = count($records); $count = count($records);
$first = ($page-1) * $page_size; $first = ($list_page-1) * $page_size;
$result = new rcube_result_set($count, $first); $result = new rcube_result_set($count, $first);
// we need only records for current page // we need only records for current page
@ -71,7 +71,7 @@ else {
if ($CONTACTS && $CONTACTS->ready) { if ($CONTACTS && $CONTACTS->ready) {
// set list properties // set list properties
$CONTACTS->set_pagesize($page_size); $CONTACTS->set_pagesize($page_size);
$CONTACTS->set_page($page); $CONTACTS->set_page($list_page);
if ($group_id = get_input_value('_gid', RCUBE_INPUT_GPC)) { if ($group_id = get_input_value('_gid', RCUBE_INPUT_GPC)) {
$CONTACTS->set_group($group_id); $CONTACTS->set_group($group_id);

@ -19,16 +19,15 @@
+-----------------------------------------------------------------------+ +-----------------------------------------------------------------------+
*/ */
$search = get_input_value('_q', RCUBE_INPUT_GPC, true); $search = get_input_value('_q', RCUBE_INPUT_GPC, true);
$sources = $RCMAIL->get_address_sources(); $sources = $RCMAIL->get_address_sources();
$search_mode = (int) $RCMAIL->config->get('addressbook_search_mode'); $search_mode = (int) $RCMAIL->config->get('addressbook_search_mode');
$sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name'); $addr_sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name');
$afields = $RCMAIL->config->get('contactlist_fields'); $afields = $RCMAIL->config->get('contactlist_fields');
$page_size = $RCMAIL->config->get('addressbook_pagesize', $RCMAIL->config->get('pagesize', 50));
$records = array();
$search_set = array();
$page = 1;
$page_size = $RCMAIL->config->get('addressbook_pagesize', $RCMAIL->config->get('pagesize', 50));
$records = $search_set = array();
foreach ($sources as $s) { foreach ($sources as $s) {
$source = $RCMAIL->get_address_book($s['id']); $source = $RCMAIL->get_address_book($s['id']);
$source->set_page(1); $source->set_page(1);
@ -46,7 +45,7 @@ foreach ($sources as $s) {
while ($row = $result->next()) { while ($row = $result->next()) {
$row['sourceid'] = $s['id']; $row['sourceid'] = $s['id'];
$key = rcube_addressbook::compose_contact_key($row, $sort_col); $key = rcube_addressbook::compose_contact_key($row, $addr_sort_col);
$records[$key] = $row; $records[$key] = $row;
} }

Loading…
Cancel
Save