config/config.ini.sample lib/Kolab

Thomas Brüderli bruederli at kolabsys.com
Thu Apr 25 09:07:58 CEST 2013


 config/config.ini.sample         |    1 +
 lib/Kolab/FreeBusy/Directory.php |   17 ++++++++++++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)

New commits:
commit d2440636d44761095b55d89e89d866a259115938
Author: Thomas Bruederli <bruederli at kolabsys.com>
Date:   Thu Apr 25 09:04:24 2013 +0200

    Convert certain attributes to lower-case as defined by config (#1777)

diff --git a/config/config.ini.sample b/config/config.ini.sample
index fbcbdfa..62437d3 100644
--- a/config/config.ini.sample
+++ b/config/config.ini.sample
@@ -48,6 +48,7 @@ bind_pw = "<service-bind-pw>"
 base_dn = "dc=yourdomain,dc=com"
 filter = "(&(objectClass=kolabInetOrgPerson)(|(uid=%s)(mail=%s)(alias=%s)))"
 attributes[] = mail
+lc_attributes[] = mail
 fbsource = file:/www/kolab-freebusy/data/%mail.ifb
 loglevel = 100  ; Debug
 
diff --git a/lib/Kolab/FreeBusy/Directory.php b/lib/Kolab/FreeBusy/Directory.php
index 97fee75..dba6014 100644
--- a/lib/Kolab/FreeBusy/Directory.php
+++ b/lib/Kolab/FreeBusy/Directory.php
@@ -53,7 +53,7 @@ abstract class Directory
 			$fbsource = $this->config['fbsource'];
 			if ($source = Source::Factory($fbsource)) {
 				// forward request to Source instance
-				if ($data = $source->getFreeBusyData($user, $extended)) {
+				if ($data = $source->getFreeBusyData($this->postprocessAttrib($user), $extended)) {
 					// send data through the according format converter
 					$converter = Format::factory($this->config['format']);
 					$data = $converter->toVCalendar($data);
@@ -66,4 +66,19 @@ abstract class Directory
 		return false;
 	}
 
+	/**
+	 * Modify attribute values according to config
+	 */
+	protected function postprocessAttrib($attrib)
+	{
+		if (!empty($this->config['lc_attributes'])) {
+			foreach ((array)$this->config['lc_attributes'] as $key) {
+				if (!empty($attrib[$key]))
+					$attrib[$key] = strtolower($attrib[$key]);
+			}
+		}
+
+		return $attrib;
+	}
+
 }
\ No newline at end of file





More information about the commits mailing list