From 95e1efb4bf8cfb786dfb7eaba57cfb7fa18df4a5 Mon Sep 17 00:00:00 2001 From: Ingo Schommer Date: Fri, 15 Oct 2010 02:48:51 +0000 Subject: [PATCH] BUGFIX: get_title_sql has string concat hardcoded as ||, fixed for MSSQL which uses +, fix for #5613 (from r105337) git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112497 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- security/Member.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/security/Member.php b/security/Member.php index 8582b91e3..8c259d32e 100755 --- a/security/Member.php +++ b/security/Member.php @@ -782,16 +782,18 @@ class Member extends DataObject { * @return String SQL */ static function get_title_sql($tableName = 'Member') { - + // This should be abstracted to SSDatabase concatOperator or similar. + $op = (DB::getConn() instanceof MSSQLDatabase) ? " + " : " || "; + if (self::$title_format) { $columnsWithTablename = array(); foreach(self::$title_format['columns'] as $column) { $columnsWithTablename[] = "\"$tableName\".\"$column\""; } - return "(".join(" || '".self::$title_format['sep']."' || ", $columnsWithTablename).")"; + return "(".join(" $op '".self::$title_format['sep']."' $op ", $columnsWithTablename).")"; } else { - return "(\"$tableName\".\"Surname\" || ' ' || \"$tableName\".\"FirstName\")"; + return "(\"$tableName\".\"Surname\" $op ' ' $op \"$tableName\".\"FirstName\")"; } }