public static bool IsMediaImage(this ImageIndexs imageIndex)
 {
     if (imageIndex == ImageIndexs.MediaImage_autoXauto)
     {
         return(true);
     }
     else if (imageIndex.ToString().IndexOf("MediaImage_") >= 0)
     {
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 2
0
        public async Task <IViewComponentResult> InvokeAsync(string path, ImageIndexs fileIndex, string mimeType = Image.Jpeg, string imageOnly = "false", string animated = "false", string background = "false")
        {
            var viewName  = "Default";
            var fileName  = fileIndex.ToString().Split('_')[0].ToLower();
            var staticImg = new StaticImageDto()
            {
                Path       = path,
                FileIndex  = fileIndex,
                FileName   = fileName,
                MimeType   = mimeType,
                ImageOnly  = bool.Parse(imageOnly),
                Animated   = bool.Parse(animated),
                Background = bool.Parse(background),
            };
            var extension = mimeType.Split('/')[1];
            var filePath  = Path.Combine(Directory.GetCurrentDirectory(), Path.Combine(path, fileName)) + ".";
            var fileExist = File.Exists(filePath + extension);

            if (fileExist)
            {
                filePath = filePath + extension;
            }
            else
            {
                extension = "jpg";
                fileExist = File.Exists(filePath + extension);
                if (fileExist)
                {
                    filePath = filePath + extension;
                }
                else
                {
                    mimeType  = Image.Gif;
                    extension = mimeType.Split('/')[1];
                    fileExist = File.Exists(filePath + extension);
                    if (fileExist)
                    {
                        filePath = filePath + extension;
                    }
                    else
                    {
                        mimeType  = Image.Tiff;
                        extension = mimeType.Split('/')[1];
                        fileExist = File.Exists(filePath + extension);
                        if (fileExist)
                        {
                            filePath = filePath + extension;
                        }
                        else
                        {
                            extension = "png";
                            fileExist = File.Exists(filePath + extension);
                            if (fileExist)
                            {
                                filePath = filePath + extension;
                            }
                            else
                            {
                                extension = "svg";
                                fileExist = File.Exists(filePath + extension);
                                if (fileExist)
                                {
                                    filePath = filePath + extension;
                                }
                            }
                        }
                    }
                }
            }
            if (fileExist)
            {
                viewName = "StaticImage";
                FileInfo fileInfo = new FileInfo(filePath);
                staticImg.FileInfo = fileInfo;
                staticImg.Url      = filePath.Substring(filePath.IndexOf("wwwroot") + 7); // faster, as of different C# researchers
                // staticImg.Url = fileInfo.DirectoryName.Substring(fileInfo.DirectoryName.IndexOf("wwwroot") + 7) + fileInfo.Name;
                staticImg.MimeType   = mimeType;
                staticImg.Path       = filePath;
                staticImg.UploadDate = File.GetLastWriteTime(filePath);
            }
            return(View(viewName, staticImg));
        }