public ActionResult _EditAlbum(string spaceKey, long albumId = 0, string callBack = null) { IUser user = userService.GetUser(spaceKey); Album album = null; if (user == null) { return(HttpNotFound()); } if (albumId == 0) { if (!authorizer.Album_Create()) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = "没有创建相册的权限", Title = "没有权限", StatusMessageType = StatusMessageType.Hint }))); } album = Album.New(); album.PrivacyStatus = PrivacyStatus.Public; } else { album = photoService.GetAlbum(albumId); if (album == null) { return(HttpNotFound()); } if (!authorizer.Album_Edit(album)) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = "没有编辑相册的权限", Title = "没有权限", StatusMessageType = StatusMessageType.Hint }))); } Dictionary <int, IEnumerable <ContentPrivacySpecifyObject> > privacySpecifyObjects = contentPrivacyService.GetPrivacySpecifyObjects(TenantTypeIds.Instance().Album(), album.AlbumId); if (privacySpecifyObjects.ContainsKey(SpecifyObjectTypeIds.Instance().User())) { IEnumerable <ContentPrivacySpecifyObject> userPrivacySpecifyObjects = privacySpecifyObjects[SpecifyObjectTypeIds.Instance().User()]; ViewData["userPrivacySpecifyObjects"] = string.Join(",", userPrivacySpecifyObjects.Select(n => n.SpecifyObjectId)); } if (privacySpecifyObjects.ContainsKey(SpecifyObjectTypeIds.Instance().UserGroup())) { IEnumerable <ContentPrivacySpecifyObject> userGroupPrivacySpecifyObjects = privacySpecifyObjects[SpecifyObjectTypeIds.Instance().UserGroup()]; ViewData["userGroupPrivacySpecifyObjects"] = string.Join(",", userGroupPrivacySpecifyObjects.Select(n => n.SpecifyObjectId)); } } AlbumEditModel albumEditModel = album.AsEditModel(); return(View(albumEditModel)); }
public ActionResult _EditAlbum(string spaceKey, AlbumEditModel albumEditModel) { IUser user = userService.GetUser(spaceKey); if (user == null) { return(Json(new StatusMessageData(StatusMessageType.Error, "当前空间主人不存在!"))); } IUser currentUser = UserContext.CurrentUser; if (currentUser == null) { return(Json(new StatusMessageData(StatusMessageType.Hint, "您尚未登录!"))); } StatusMessageData message = null; Album album = albumEditModel.AsAlbum(); if (albumEditModel.AlbumId == 0)//创建 { if (!authorizer.Album_Create()) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = "没有创建或编辑相册的权限", Title = "没有权限", StatusMessageType = StatusMessageType.Hint }))); } bool result = photoService.CreateAlbum(album); if (result) { //message = new StatusMessageData(StatusMessageType.Success, album.AlbumId.ToString() + "&" + album.AlbumName); //设置隐私状态 UpdatePrivacySettings(album, albumEditModel.PrivacyStatus1, albumEditModel.PrivacyStatus2); return(Json(new { MessageType = StatusMessageType.Success, MessageContent = "创建相册成功!", AlbumId = album.AlbumId, AlbumName = album.AlbumName })); } else { message = new StatusMessageData(StatusMessageType.Error, "创建相册失败!"); } } else//编辑 { if (!authorizer.Album_Edit(album)) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = "没有编辑相册的权限", Title = "没有权限", StatusMessageType = StatusMessageType.Hint }))); } photoService.UpdateAlbum(album, currentUser.UserId); message = new StatusMessageData(StatusMessageType.Success, "编辑相册成功!"); } //设置隐私状态 UpdatePrivacySettings(album, albumEditModel.PrivacyStatus1, albumEditModel.PrivacyStatus2); return(Json(message)); }