[evolvis-commits] r18025: messer-suche pending merges:↵ messer 2012-01-17 - Advanced Search is now case INsensitive (Only for like operator!). [#2383]↵ messer 2012-01-17 - Added Detailed Description to Advanced Search. [#2372]

mirabilos at evolvis.org mirabilos at evolvis.org
Wed Jan 18 17:17:54 CET 2012


Author: mirabilos
Date: 2012-01-18 17:17:53 +0100 (Wed, 18 Jan 2012)
New Revision: 18025

Modified:
   trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/ASFusionForgeParser.class.php
   trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/FusionForgeDFIProvider.class.php
   trunk/gforge_base/evolvisforge-5.1/src/debian/changelog
Log:
messer-suche pending merges:
  messer 2012-01-17 - Advanced Search is now case INsensitive (Only for like operator!). [#2383]
    messer 2012-01-17 - Added Detailed Description to Advanced Search. [#2372]


Modified: trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/ASFusionForgeParser.class.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/ASFusionForgeParser.class.php	2012-01-18 16:17:49 UTC (rev 18024)
+++ trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/ASFusionForgeParser.class.php	2012-01-18 16:17:53 UTC (rev 18025)
@@ -75,6 +75,7 @@
 
 				if ($dfiName == 'ID'          ||
 				    $dfiName == 'Summary'     ||
+				    $dfiName == 'Detailed Description' ||
 				    $dfiName == 'Open Date'   ||
 				    $dfiName == 'Close Date'  ||
 				    $dfiName == 'Assigned to' ||
@@ -160,7 +161,7 @@
 							$curToken = $this->tokens[$curTokenPointer];
 							$curType  = $curToken->getType();
 
-							$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data LIKE $'.$paramcount++;
+							$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data ILIKE $'.$paramcount++;
 							$params[] = $curToken->getData();
 						} else {
 							return "Invalid Syntax";
@@ -255,7 +256,7 @@
 							$curType  = $curToken->getType();
 
 							if(strtoupper($curToken->getData()) == 'NONE') {
-								$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data LIKE $'.$paramcount++;
+								$wheresql .= ' AND aefd'.$extraFieldCounter.'.field_data ILIKE $'.$paramcount++;
 								$params[] = '100';
 							} else {
 								// Get the ids. Consider that we have to check more then one field.
@@ -395,17 +396,19 @@
 			$field_alias = 'status_name';
 		} else if ($fieldName == 'Summary') {
 			$field_alias = 'summary';
+		} else if ($fieldName == 'Detailed Description') {
+			$field_alias = 'details';
 		}
 
-		if($curType === EASToken::AS_OP_EQUALS) {
-			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+		if ($curType === EASToken::AS_OP_EQUALS) {
+			// Get the next token. This has to be the data!
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
 			if ($is_date) {
 				$curToken->setData($curToken->getData().'%');
-				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') LIKE $' . $paramcount++;
+				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
 				$wheresql .= '( '.$field_alias.' = $' . $paramcount++ .' OR '.$field_alias2.' = $'.$paramcount++.' )';
@@ -417,7 +420,7 @@
 			}
 		} else if ($curType === EASToken::AS_OP_NOT) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
@@ -426,7 +429,7 @@
 				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') NOT LIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
-				$wheresql .= '( '.$field_alias.' NOT LIKE $' . $paramcount++ .' AND '.$field_alias2.' NOT LIKE $'.$paramcount++.' )';
+				$wheresql .= '( '.$field_alias.' NOT ILIKE $' . $paramcount++ .' AND '.$field_alias2.' NOT ILIKE $'.$paramcount++.' )';
 				$params[] = $curToken->getData();
 				$params[] = $curToken->getData();
 			} else {
@@ -436,11 +439,11 @@
 
 		} else if ($curType === EASToken::AS_OP_GREATER) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
-			$wheresql .= ' '.$field_alias.' > $' . $paramcount ++;
+			$wheresql .= ' '.$field_alias.' > $' . $paramcount++;
 
 			if ($is_date) {
 				// Check if the user included a time format
@@ -454,11 +457,11 @@
 			}
 		} else if ($curType === EASToken::AS_OP_LESS) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
-			$wheresql .= ' '.$field_alias.' < $' . $paramcount ++;
+			$wheresql .= ' '.$field_alias.' < $' . $paramcount++;
 
 			if($is_date) {
 				$params[] = strtotime($curToken->getData());
@@ -467,20 +470,20 @@
 			}
 		} else if ($curType === EASToken::AS_OP_LIKE) {
 			//Get the next token. This has to be the data!
-			$curTokenPointer ++;
+			$curTokenPointer++;
 			$curToken = $this->tokens[$curTokenPointer];
 			$curType = $curToken->getType();
 
 			if($is_date) {
 				//Convert unix timestamp to postgres date and then to string.
-				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') LIKE $' . $paramcount ++;
+				$wheresql .= ' to_char((SELECT TIMESTAMP \'epoch\' + '.$field_alias.' * INTERVAL \'1 second\'), \'YYYY-MM-DD HH24:MI\') ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			} else if ($is_name) {
-				$wheresql .= '( '.$field_alias.' LIKE $' . $paramcount++ .' OR '.$field_alias2.' LIKE $'.$paramcount++.' )';
+				$wheresql .= '( '.$field_alias.' ILIKE $' . $paramcount++ .' OR '.$field_alias2.' ILIKE $'.$paramcount++.' )';
 				$params[] = $curToken->getData();
 				$params[] = $curToken->getData();
 			} else {
-				$wheresql .= ' '.$field_alias.' LIKE $' . $paramcount ++;
+				$wheresql .= ' '.$field_alias.' ILIKE $' . $paramcount++;
 				$params[] = $curToken->getData();
 			}
 

Modified: trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/FusionForgeDFIProvider.class.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/FusionForgeDFIProvider.class.php	2012-01-18 16:17:49 UTC (rev 18024)
+++ trunk/gforge_base/evolvisforge-5.1/src/common/advanced_search/FusionForgeDFIProvider.class.php	2012-01-18 16:17:53 UTC (rev 18025)
@@ -49,6 +49,7 @@
 		$result	 = array(
 			array('ID', 'artifact_id'),
 			array('Summary', 'summary'),
+			array('Detailed Description', 'details'),
 			array('Open Date', 'open_date'),
 			array('Close Date', 'close_date'),
 			array('Assigned to', 'assigned_to'),
@@ -77,6 +78,7 @@
 		$result	 = array();
 		$result	 = array('ID',
 			    'Summary',
+			    'Detailed Description',
 			    'Open Date',
 			    'Close Date',
 			    'Assigned to',

Modified: trunk/gforge_base/evolvisforge-5.1/src/debian/changelog
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/src/debian/changelog	2012-01-18 16:17:49 UTC (rev 18024)
+++ trunk/gforge_base/evolvisforge-5.1/src/debian/changelog	2012-01-18 16:17:53 UTC (rev 18025)
@@ -2,8 +2,10 @@
 
   [ Mike Esser ]
   * [#2376] Fix: only group admins can change the summary page’s layout
+  * [#2372] Advanced Search: Add Detailed Description
+  * [#2383] Advanced Search: “like” operator is now case-insensitive
 
- -- Thorsten Glaser <t.glaser at tarent.de>  Tue, 17 Jan 2012 17:40:32 +0100
+ -- Thorsten Glaser <t.glaser at tarent.de>  Tue, 17 Jan 2012 17:43:57 +0100
 
 fusionforge (5.1.1+evolvis7.1) unstable; urgency=low
 



More information about the evolvis-commits mailing list