浏览代码

#1199 Properly handle the icon of attachments without any extension.

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@4208 a333f486-631f-4898-b8df-5754b55c2be0
dflaven 9 年之前
父节点
当前提交
a80de7bf8f
共有 1 个文件被更改,包括 73 次插入65 次删除
  1. 73 65
      datamodels/2.x/itop-attachments/main.attachments.php

+ 73 - 65
datamodels/2.x/itop-attachments/main.attachments.php

@@ -533,73 +533,81 @@ EOF
 	public static function GetFileIcon($sFileName)
 	public static function GetFileIcon($sFileName)
 	{
 	{
 		$aPathParts = pathinfo($sFileName);
 		$aPathParts = pathinfo($sFileName);
-		switch($aPathParts['extension'])
+		if (!array_key_exists('extension', $aPathParts))
 		{
 		{
-			case 'doc':
-			case 'docx':
-			$sIcon = 'doc.png';
-			break;
-			
-			case 'xls':
-			case 'xlsx':
-			$sIcon = 'xls.png';
-			break;
-			
-			case 'ppt':
-			case 'pptx':
-			$sIcon = 'ppt.png';
-			break;
-			
-			case 'pdf':
-			$sIcon = 'pdf.png';
-			break;
-			
-			case 'txt':
-			case 'text':
-			$sIcon = 'txt.png';
-			break;
-			
-			case 'rtf':
-			$sIcon = 'rtf.png';
-			break;
-			
-			case 'odt':
-			$sIcon = 'odt.png';
-			break;
-			
-			case 'ods':
-			$sIcon = 'ods.png';
-			break;
-			
-			case 'odp':
-			$sIcon = 'odp.png';
-			break;
-			
-			case 'html':
-			case 'htm':
-			$sIcon = 'html.png';
-			break;
-			
-			case 'png':
-			case 'gif':
-			case 'jpg':
-			case 'jpeg':
-			case 'tiff':
-			case 'tif':
-			case 'bmp':
-			$sIcon = 'image.png';
-			
-			break;
-			case 'zip':
-			case 'gz':
-			case 'tgz':
-			case 'rar':
-			$sIcon = 'zip.png';
-			break;
-
-			default:
+			// No extension: use the default icon
 			$sIcon = 'document.png';
 			$sIcon = 'document.png';
-			break;
+		}
+		else 
+		{
+			switch($aPathParts['extension'])
+			{
+				case 'doc':
+				case 'docx':
+				$sIcon = 'doc.png';
+				break;
+				
+				case 'xls':
+				case 'xlsx':
+				$sIcon = 'xls.png';
+				break;
+				
+				case 'ppt':
+				case 'pptx':
+				$sIcon = 'ppt.png';
+				break;
+				
+				case 'pdf':
+				$sIcon = 'pdf.png';
+				break;
+				
+				case 'txt':
+				case 'text':
+				$sIcon = 'txt.png';
+				break;
+				
+				case 'rtf':
+				$sIcon = 'rtf.png';
+				break;
+				
+				case 'odt':
+				$sIcon = 'odt.png';
+				break;
+				
+				case 'ods':
+				$sIcon = 'ods.png';
+				break;
+				
+				case 'odp':
+				$sIcon = 'odp.png';
+				break;
+				
+				case 'html':
+				case 'htm':
+				$sIcon = 'html.png';
+				break;
+				
+				case 'png':
+				case 'gif':
+				case 'jpg':
+				case 'jpeg':
+				case 'tiff':
+				case 'tif':
+				case 'bmp':
+				$sIcon = 'image.png';
+				
+				break;
+				case 'zip':
+				case 'gz':
+				case 'tgz':
+				case 'rar':
+				$sIcon = 'zip.png';
+				break;
+	
+				default:
+				$sIcon = 'document.png';
+				break;
+			}
 		}
 		}
 		
 		
 		return 'env-'.utils::GetCurrentEnvironment()."/itop-attachments/icons/$sIcon";
 		return 'env-'.utils::GetCurrentEnvironment()."/itop-attachments/icons/$sIcon";