/// <summary>
        /// Обновляет фотоальбом
        /// </summary>
        /// <param name="album"></param>
        /// <returns></returns>
        public bool UpdatePhotoAlbum(PhotoAlbumModel album)
        {
            using (var db = new CMSdb(_context))
            {
                using (var tr = db.BeginTransaction())
                {
                    var log = new LogModel
                    {
                        PageId   = album.Id,
                        PageName = album.Title,
                        Section  = LogModule.PhotoAlbums,
                        Action   = LogAction.update
                    };
                    InsertLog(log);

                    bool result = db.core_photo_albums
                                  .Where(w => w.id == album.Id)
                                  .Set(s => s.c_title, album.Title)
                                  .Set(s => s.c_preview, album.Preview)
                                  .Set(s => s.c_text, album.Text)
                                  .Set(s => s.d_date, album.Date)
                                  .Set(s => s.b_disabled, album.Disabled)
                                  .Update() > 0;

                    tr.Commit();
                    return(result);
                }
            }
        }
        /// <summary>
        /// Добавляет фотоальбом
        /// </summary>
        /// <param name="album"></param>
        /// <returns></returns>
        public bool InsertPhotoAlbum(PhotoAlbumModel album)
        {
            using (var db = new CMSdb(_context))
            {
                using (var tr = db.BeginTransaction())
                {
                    var log = new LogModel
                    {
                        PageId   = album.Id,
                        PageName = album.Title,
                        Section  = LogModule.PhotoAlbums,
                        Action   = LogAction.insert
                    };
                    InsertLog(log);

                    bool result = db.core_photo_albums.Insert(() => new core_photo_albums
                    {
                        id         = album.Id,
                        c_title    = album.Title,
                        c_preview  = album.Preview,
                        c_text     = album.Text,
                        d_date     = album.Date,
                        b_disabled = album.Disabled,
                        f_site     = _siteId
                    }) > 0;

                    tr.Commit();
                    return(result);
                }
            }
        }
        public IActionResult GetAlbums()
        {
            int userId = int.Parse(HttpContext.User.Claims.FirstOrDefault(c => c.Type == claimTypes.Id.ToString()).Value);

            var albums = db.GetPhotoAlbums(userId);

            List <PhotoAlbumModel> albumsvm = new List <PhotoAlbumModel>();

            foreach (var album in albums)
            {
                var model = new PhotoAlbumModel();
                model.AlbumId     = album.AlbumId;
                model.Created     = album.Created;
                model.Description = album.Description;
                model.Name        = album.Name;
                model.PhotoCount  = album.Photos.Count;
                if (album.CoverPhotoId is null)
                {
                    var photoName = db.GetLastAlbumPhotoName(album.AlbumId, userId);
                    if (photoName != null)
                    {
                        model.CoverPhotoName = photoName;
                    }
                }
                else
                {
                    model.CoverPhotoName = db.GetPhotoName(userId, (int)album.CoverPhotoId);
                };
                albumsvm.Add(model);
            }

            return(Ok(new { response = albumsvm }));
        }
        public bool CreateGroup(string Name)
        {
            if (IsExsits(Name))
            {
                return(false);
            }
            var photoAlbum = new PhotoAlbumModel(Name, opt.CreateNewPath());

            return(true);
        }
Beispiel #5
0
        public IHttpActionResult Create(PhotoAlbumModel photo)
        {
            var currentUserId = this.userIdProvider.GetUserId();

            if (!this.ModelState.IsValid)
            {
                return(this.BadRequest(this.ModelState));
            }

            var newAlbum = new PhotoAlbum()
            {
                Name   = photo.Name,
                UserId = currentUserId
            };

            this.Data.PhotoAlbums.Add(newAlbum);
            this.Data.SaveChanges();

            return(this.Ok(newAlbum));
        }
        public IActionResult GetAlbum(int albumId)
        {
            int userId = int.Parse(HttpContext.User.Claims.FirstOrDefault(c => c.Type == claimTypes.Id.ToString()).Value);

            var album = db.GetPhotoAlbum(albumId, userId);

            if (album is null)
            {
                return(NotFound(new { error = 404 }));
            }

            string coverPhotoName = null;

            if (album.CoverPhotoId is null)
            {
                var photoName = db.GetLastAlbumPhotoName(album.AlbumId, userId);
                if (photoName != null)
                {
                    coverPhotoName = photoName;
                }
            }
            else
            {
                coverPhotoName = db.GetPhotoName(userId, (int)album.CoverPhotoId);
            };

            PhotoAlbumModel albumView = new PhotoAlbumModel()
            {
                AlbumId        = album.AlbumId,
                CoverPhotoName = coverPhotoName,
                Created        = album.Created,
                PhotoCount     = album.Photos.Count,
                Description    = album.Description,
                Name           = album.Name
            };

            return(Ok(new { response = albumView }));
        }