Пример #1
0
        public FolderDetailModel GetFullFolderInfo(int folderId)
        {
            var folderDetailModel = new FolderDetailModel();

            try
            {
                string repoDomain = ConfigurationManager.AppSettings["ImageRepository"];
                using (var db = new OggleBoobleMySqlContext())
                {
                    var    dbFolder     = db.CategoryFolders.Where(f => f.Id == folderId).First();
                    string fullPathName = "";
                    if (dbFolder.FolderImage != null)
                    {
                        var dbImageFile = db.ImageFiles.Where(i => i.Id == dbFolder.FolderImage).FirstOrDefault();
                        if (dbImageFile != null)
                        {
                            var imgFolderPath = db.CategoryFolders.Where(f => f.Id == dbImageFile.FolderId).First().FolderPath;
                            //string fileName = dbImageFile.FileName;
                            bool nw = (imgFolderPath == dbFolder.FolderPath);
                            fullPathName = repoDomain + "/" + imgFolderPath + "/" + dbImageFile.FileName;
                        }
                    }

                    folderDetailModel.FolderId      = folderId;
                    folderDetailModel.FolderType    = dbFolder.FolderType;
                    folderDetailModel.FolderName    = dbFolder.FolderName;
                    folderDetailModel.RootFolder    = dbFolder.RootFolder;
                    folderDetailModel.FolderImage   = fullPathName;
                    folderDetailModel.InternalLinks = (from l in db.CategoryImageLinks
                                                       join f in db.CategoryFolders on l.ImageCategoryId equals f.Id
                                                       where l.ImageCategoryId == folderId && l.ImageCategoryId != folderId
                                                       select new { folderId = f.Id, folderName = f.FolderName })
                                                      .ToDictionary(i => i.folderId, i => i.folderName);
                    FolderDetail FolderDetails = db.FolderDetails.Where(d => d.FolderId == folderId).FirstOrDefault();
                    if (FolderDetails != null)
                    {
                        folderDetailModel.HomeCountry    = FolderDetails.HomeCountry;
                        folderDetailModel.HomeTown       = FolderDetails.HomeTown;
                        folderDetailModel.FolderComments = FolderDetails.FolderComments;
                        folderDetailModel.Birthday       = FolderDetails.Birthday;
                        folderDetailModel.Measurements   = FolderDetails.Measurements;
                        folderDetailModel.FakeBoobs      = FolderDetails.FakeBoobs;
                    }
                    folderDetailModel.Success = "ok";
                }
            }
            catch (Exception ex)
            {
                folderDetailModel.Success = Helpers.ErrorDetails(ex);
            }
            return(folderDetailModel);
        }
        private FolderDetailModel GetFolderDetailModel(Parameters parameters)
        {
            var _user   = HttpContext.Session.GetSession <User>("User");
            var _folder = _folderManager.GetFolderInfo(parameters.ID, _user?.ID);

            if (_folder != null)
            {
                FolderDetailModel model = new FolderDetailModel();
                model.Folder = _folder;

                return(model);
            }

            return(null);
        }
Пример #3
0
        public string AddUpdate(FolderDetailModel model)
        {
            string success = "";

            try
            {
                using (var db = new OggleBoobleMySqlContext())
                {
                    CategoryFolder categoryFolder = db.CategoryFolders.Where(f => f.Id == model.FolderId).First();
                    if (categoryFolder.FolderName != model.FolderName)
                    {
                        categoryFolder.FolderName = model.FolderName;
                    }

                    FolderDetail dbFolderDetail = db.FolderDetails.Where(d => d.FolderId == model.FolderId).FirstOrDefault();
                    if (dbFolderDetail == null)
                    {
                        dbFolderDetail = new FolderDetail {
                            FolderId = model.FolderId
                        };
                        db.FolderDetails.Add(dbFolderDetail);
                        db.SaveChanges();
                        dbFolderDetail = db.FolderDetails.Where(d => d.FolderId == model.FolderId).First();
                    }
                    dbFolderDetail.Birthday       = model.Birthday;
                    dbFolderDetail.FakeBoobs      = model.FakeBoobs;
                    dbFolderDetail.HomeCountry    = model.HomeCountry;
                    dbFolderDetail.HomeTown       = model.HomeTown;
                    dbFolderDetail.FolderComments = model.FolderComments;
                    dbFolderDetail.Measurements   = model.Measurements;
                    //dbFolderDetail.LinkStatus = model.LinkStatus;
                    db.SaveChanges();
                    success = "ok";
                }
            }
            catch (Exception ex) { success = Helpers.ErrorDetails(ex); }
            return(success);
        }
Пример #4
0
        public ActionResult Detail(string folder)
        {
            ActionResult result;

            try
            {
                CheckAuthentication();

                if (string.IsNullOrEmpty(folder))
                {
                    folder = Session[SessionLastFolder] == null ? Repository.ReportsFolder : Session[SessionLastFolder] as string;
                }

                SecurityFolder securityFolder = WebUser.FindSecurityFolder(folder);
                if (securityFolder != null && !string.IsNullOrEmpty(securityFolder.DescriptionFile))
                {
                    string descFile       = Path.Combine(folder, securityFolder.DescriptionFile);
                    string descFileCSHTML = Path.Combine(folder, Path.GetFileNameWithoutExtension(securityFolder.DescriptionFile) + ".cshtml");
                    Session[SessionLastFolder] = folder;
                    if (System.IO.File.Exists(descFileCSHTML))
                    {
                        //Assume that it is a view...try to copy it in the Views\Home folder
                        string destFile = Path.Combine(Path.Combine(Request.PhysicalApplicationPath, "Views\\Home"), Path.GetFileName(descFileCSHTML));
                        try
                        {
                            if (!System.IO.File.Exists(destFile))
                            {
                                System.IO.File.Copy(descFileCSHTML, destFile, false);
                            }
                        }
                        catch { }
                        return(View(Path.GetFileNameWithoutExtension(destFile), (object)folder));
                    }
                    else if (System.IO.File.Exists(descFile))
                    {
                        return(new FilePathResult(descFile, "text/html"));
                    }
                }

                FolderDetailModel model = new FolderDetailModel()
                {
                    FolderPath = folder, Repository = Repository, User = WebUser
                };
                if (folder == "*")
                {
                    model.IsRecursive = true;
                    model.FolderPath  = Repository.ReportsFolder;
                }
                else
                {
                    Session[SessionLastFolder] = folder;
                }
                result = View(model);
            }
            catch (Exception ex)
            {
                return(HandleException(ex));
            }

            return(result);
        }