public ActionResult ChangeFileManagerGridOrderingOrState(List <OrderingItem> values, String checkbox = "")
        {
            try
            {
                foreach (OrderingItem item in values)
                {
                    var content = FileManagerRepository.GetSingle(item.Id);
                    if (String.IsNullOrEmpty(checkbox))
                    {
                        content.Ordering = item.Ordering;
                    }
                    else if (checkbox.Equals("state", StringComparison.InvariantCultureIgnoreCase))
                    {
                        content.State = item.State;
                    }
                    else if (checkbox.Equals("Carousel", StringComparison.InvariantCultureIgnoreCase))
                    {
                        content.IsCarousel = item.State;
                    }

                    FileManagerRepository.Edit(content);
                }
                FileManagerRepository.Save();
            }
            catch (Exception exception)
            {
                Logger.Error(exception, "ChangeFileManagerGridOrderingOrState :" + exception.StackTrace, String.Join(",", values));
            }
            return(Json(new { values, checkbox }, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Reference this in HTML as <img src="/Photo/WatermarkedImage/{ID}" />
        /// Simplistic example supporting only jpeg images.
        /// </summary>
        /// <param name="ID">Photo ID</param>
        public ActionResult WatermarkedImage(int id)
        {
            // Attempt to fetch the photo record from the database using Entity Framework 4.2.
            var file = FileManagerRepository.GetSingle(id);

            if (file != null) // Found the indicated photo record.
            {
                var dic = new Dictionary <String, String>();
                // Create WebImage from photo data.
                // Should have 'using System.Web.Helpers' but just to make it clear...
                String url       = String.Format("https://docs.google.com/uc?id={0}", file.GoogleImageId);
                byte[] imageData = GeneralHelper.GetImageFromUrlFromCache(url, dic);
                var    wi        = new System.Web.Helpers.WebImage(imageData);

                // Apply the watermark.
                wi.AddTextWatermark("EMIN YUCE");

                // Extract byte array.
                var image = wi.GetBytes("image/jpeg");

                // Return byte array as jpeg.
                return(File(image, "image/jpeg"));
            }
            else // Did not find a record with passed ID.
            {
                return(null); // 'Missing image' icon will display on browser.
            }
        }
        public ActionResult DeleteFileManagerGridItem(List <String> values)
        {
            try
            {
                List <String> googleIdList = new List <string>();
                List <int>    idList       = new List <int>();
                foreach (var value in values)
                {
                    String googleId = value.Split("-".ToCharArray())[0];
                    String id       = value.Split("-".ToCharArray())[1];

                    googleIdList.Add(googleId);
                    idList.Add(id.ToInt());
                }
                var item = FileManagerRepository.GetSingle(idList.FirstOrDefault());
                ConnectToStoreGoogleDrive(item.StoreId);

                foreach (String v in values)
                {
                    string googledriveFileId = v;
                    Task.Run(() => DeleteFile(googledriveFileId));
                    Thread.Sleep(50);
                }
            }
            catch (DbEntityValidationException ex)
            {
                var message = GetDbEntityValidationExceptionDetail(ex);
                Logger.Error(ex, "DbEntityValidationException:" + message);
            }
            catch (Exception exception)
            {
                Logger.Error(exception, "DeleteFileManagerGridItem :" + exception.StackTrace, String.Join(",", values));
            }
            return(Json(values, JsonRequestBehavior.AllowGet));
        }
        private void DeleteFile(string id)
        {
            var f = new FileManager();

            if (id.ToInt() > 0)
            {
                f = FileManagerRepository.GetSingle(id.ToInt());
            }
            else
            {
                f = FileManagerRepository.GetFilesByGoogleImageId(id);
            }


            var filename = f.Title;

            try
            {
                ConnectToStoreGoogleDrive(SessionStoreId);
                this.UploadHelper.deleteFile(f.GoogleImageId);
            }
            catch (Exception ewx)
            {
                Logger.Error(ewx, "Exception is occured." + ewx.StackTrace);
            }

            FileManagerRepository.Delete(f);
            FileManagerRepository.Save();
        }
        private void DeleteFile(string googledriveFileId)
        {
            String id = "";

            try
            {
                String googleId = googledriveFileId.Split("-".ToCharArray())[0];
                id = googledriveFileId.Split("-".ToCharArray())[1];

                if (!String.IsNullOrEmpty(googleId))
                {
                    try
                    {
                        UploadHelper.deleteFile(googleId);
                    }
                    catch (Exception ex)
                    {
                        Logger.Error(ex, String.Format("GoogleId={0} file could not deleted from google drive", googledriveFileId) + " " + ex.StackTrace, googledriveFileId);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex, String.Format("GoogleId={0} could not deleted from DB.", googledriveFileId) + " " + ex.StackTrace, googledriveFileId);
            }

            try
            {
                var item = FileManagerRepository.GetSingle(id.ToInt());
                FileManagerRepository.Delete(item);
                FileManagerRepository.Save();
            }
            catch (DbEntityValidationException ex)
            {
                var message = GetDbEntityValidationExceptionDetail(ex);
                Logger.Error(ex, "DbEntityValidationException:" + message);
            }
            catch (Exception ex)
            {
                Logger.Error(ex, String.Format("GoogleId={0} could not deleted from DB.", googledriveFileId) + ex.StackTrace, googledriveFileId);
            }
        }
        public ActionResult ChangeIsCarouselState(int fileId = 0, bool isCarousel = false)
        {
            try
            {
                var s = FileManagerRepository.GetSingle(fileId);
                s.IsCarousel = isCarousel;
                FileManagerRepository.Edit(s);
                FileManagerRepository.Save();
            }
            catch (DbEntityValidationException ex)
            {
                var message = GetDbEntityValidationExceptionDetail(ex);
                Logger.Error(ex, "DbEntityValidationException:" + message);
            }
            catch (Exception exception)
            {
                Logger.Error(exception, "ChangeIsCarouselState  fileId" + fileId + " isCarousel:" + isCarousel + " " + exception.StackTrace, fileId, isCarousel);
            }

            return(Json(new { fileId, isCarousel }, JsonRequestBehavior.AllowGet));
        }
Beispiel #7
0
 public FileManager GetFilesById(int id)
 {
     return(FileManagerRepository.GetSingle(id));
 }