From 306f15db84b254fe23c2c1bc4a93536e7df24a26 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Wed, 16 Jun 2010 02:29:47 -0400
Subject: [PATCH] - Fix base64 regexp (#1486800)

---
 program/steps/addressbook/mailto.inc |    2 +-
 program/steps/addressbook/delete.inc |    8 +++-----
 program/steps/addressbook/copy.inc   |    2 +-
 3 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/program/steps/addressbook/copy.inc b/program/steps/addressbook/copy.inc
index 80dee49..525f927 100644
--- a/program/steps/addressbook/copy.inc
+++ b/program/steps/addressbook/copy.inc
@@ -27,7 +27,7 @@
 $target = get_input_value('_to', RCUBE_INPUT_POST);
 $target_group = get_input_value('_togid', RCUBE_INPUT_POST);
 
-if ($cid && preg_match('/^[a-z0-9\-_=]+(,[a-z0-9\-_=]+)*$/i', $cid) && strlen($target) && $target !== $source)
+if ($cid && preg_match('/^[a-zA-Z0-9\+\/=_-]+(,[a-zA-Z0-9\+\/=_-]+)*$/', $cid) && strlen($target) && $target !== $source)
 {
   $success = 0;
   $TARGET = $RCMAIL->get_address_book($target);
diff --git a/program/steps/addressbook/delete.inc b/program/steps/addressbook/delete.inc
index 1611ae1..da83757 100644
--- a/program/steps/addressbook/delete.inc
+++ b/program/steps/addressbook/delete.inc
@@ -21,12 +21,10 @@
 
 if ($OUTPUT->ajax_call &&
     ($cid = get_input_value('_cid', RCUBE_INPUT_POST)) &&
-    (preg_match('/^[0-9]+(,[0-9]+)*$/', $cid) ||
-     preg_match('/^[a-zA-Z0-9=]+(,[a-zA-Z0-9=]+)*$/', $cid))
-   )
-  {
+    preg_match('/^[a-zA-Z0-9\+\/=_-]+(,[a-zA-Z0-9\+\/=_-]+)*$/', $cid)
+) {
   $plugin = $RCMAIL->plugins->exec_hook('delete_contact', array('id' => $cid, 'source' => get_input_value('_source', RCUBE_INPUT_GPC)));
-  
+
   $deleted = !$plugin['abort'] ? $CONTACTS->delete($cid) : false;
   if (!$deleted)
     {
diff --git a/program/steps/addressbook/mailto.inc b/program/steps/addressbook/mailto.inc
index 6813958..002c4e8 100644
--- a/program/steps/addressbook/mailto.inc
+++ b/program/steps/addressbook/mailto.inc
@@ -23,7 +23,7 @@
 $recipients = null;
 $mailto = array();
 
-if ($cid && preg_match('/^[a-z0-9\-\+\/_=]+(,[a-z0-9\-\+\/_=]+)*$/i', $cid) && $CONTACTS->ready)
+if ($cid && preg_match('/^[a-z0-9\+\/=_-]+(,[a-z0-9\+\/=_-]+)*$/i', $cid) && $CONTACTS->ready)
 {
   $CONTACTS->set_page(1);
   $CONTACTS->set_pagesize(100);

--
Gitblit v1.9.1