public string GetComments(TransitImage image) { if (image.CommentsCount == 0) return string.Empty; return string.Format("{0} Comment{1}", image.CommentsCount, image.CommentsCount != 1 ? "s" : string.Empty); }
public string GetCounter(TransitImage image) { if (!SessionManager.CountersEnabled) return string.Empty; if (image.Counter.Count == 0) return string.Empty; return string.Format("[{0}]", image.Counter.Count); }
public void save_Click(object sender, EventArgs e) { try { Post.Title = CheckInput("Title", inputTitle.Text); List<TransitTopic> topics = new List<TransitTopic>(); foreach (ListItem topic in inputTopic.Items) { if (topic.Selected) { TransitTopic t_topic = new TransitTopic(); t_topic.Name = topic.Text; t_topic.Id = int.Parse(topic.Value); topics.Add(t_topic); } } Post.Topics = topics.ToArray(); Post.Body = inputBody.Content; Post.Publish = inputPublish.Checked; Post.Display = inputDisplay.Checked; Post.Sticky = inputSticky.Checked; Post.Export = inputExport.Checked; Post.Created = SessionManager.ToUTC(inputCreatedDate.SelectedDate.Add( inputCreatedTime.SelectedTime)); Post.Id = PostId = SessionManager.BlogService.CreateOrUpdatePost( SessionManager.Ticket, Post); if (!string.IsNullOrEmpty(inputServerPath.Text)) { string fullpath = Path.Combine( SessionManager.GetSetting("Images", string.Empty), inputServerPath.Text); ArrayList filenames = new ArrayList(); filenames.AddRange(Directory.GetFiles(fullpath, "*.jpg")); filenames.AddRange(Directory.GetFiles(fullpath, "*.gif")); List<TransitPostImage> deleted = SessionManager.GetCachedCollection<TransitPostImage>( "GetPostImages", SessionManager.Ticket, new TransitPostImageQueryOptions(Post.Id)); List<TransitPostImage> updated = new List<TransitPostImage>(); foreach (string filename in filenames) { TransitImage image = new TransitImage(); image.Name = Path.GetFileName(filename); image.Path = inputServerPath.Text; for (int i = 0; i < deleted.Count; i++) { if (deleted[i].Image.Name == image.Name) { image = deleted[i].Image; deleted.RemoveAt(i); break; } } ThumbnailBitmap bitmap = new ThumbnailBitmap(filename); image.Thumbnail = bitmap.Thumbnail; SessionManager.BlogService.CreateOrUpdatePostImage( SessionManager.Ticket, PostId, image); } foreach (TransitPostImage dimage in deleted) { SessionManager.BlogService.DeletePostImage( SessionManager.Ticket, dimage.Id); } SessionManager.Invalidate<TransitPostImage>(); images.Visible = true; GetDataImages(sender, e); } if (! string.IsNullOrEmpty(inputLogin.Text)) { loginAdd_Click(sender, e); } SessionManager.Invalidate<TransitPost>(); ReportInfo("Post Saved"); } catch (Exception ex) { ReportException(ex); } }
public void inputImages_FilesPosted(object sender, DBlog.Tools.WebControls.FilesPostedEventArgs e) { if (PostId > 0) { foreach (HttpPostedFile file in e.PostedFiles) { TransitImage image = new TransitImage(); image.Data = new BinaryReader(file.InputStream).ReadBytes(file.ContentLength); image.Name = Path.GetFileName(file.FileName); SessionManager.BlogService.CreateOrUpdatePostImage(SessionManager.Ticket, PostId, image); } if (e.PostedFiles.Count > 0) { SessionManager.Invalidate<TransitPostImage>(); SessionManager.Invalidate<TransitPost>(); images.Visible = true; GetDataImages(sender, e); } } }
private AtomEntry GetImage(TransitImage image) { AtomEntry atomEntry = new AtomEntry(); atomEntry.Id = new AtomId(new Uri(string.Format("{0}Image/{1}", SessionManager.WebsiteUrl, image.Id))); atomEntry.Title = new AtomTextConstruct(image.Name); atomEntry.UpdatedOn = DateTime.UtcNow; atomEntry.Summary = new AtomTextConstruct(); atomEntry.Content = new AtomContent("", "image/jpg"); atomEntry.Content.Source = new Uri(string.Format("{0}ShowPicture.aspx?id={1}&ShowThumbnail=false", SessionManager.WebsiteUrl, image.Id)); atomEntry.Links.Add(new AtomLink(new Uri(string.Format("{0}AtomImage.aspx?id={1}", SessionManager.WebsiteUrl, image.Id)), "edit")); AtomLink atomEntryUri = new AtomLink(new Uri(string.Format("{0}ShowPicture.aspx?id={1}&ShowThumbnail=false", SessionManager.WebsiteUrl, image.Id)), "edit-media"); atomEntryUri.ContentType = "image/jpg"; atomEntry.Links.Add(atomEntryUri); return atomEntry; }
public TransitImageComment(ISession session, DBlog.Data.ImageComment o, string ticket) : this(session, o, TransitImage.HasAccess(session, o.Image, ticket)) { AssociatedType = "Image"; }
public TransitPostImage(ISession session, DBlog.Data.PostImage o, string ticket) : base(o.Id) { Post = new TransitPost(session, o.Post, ticket); Image = new TransitImage(session, o.Image, ticket); }
public int CreateOrUpdatePostImage(string ticket, int post_id, TransitImage t_image) { using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; CheckAdministrator(session, ticket); Post post = (Post)session.Load(typeof(Post), post_id); Image image = t_image.GetImage(session); image.Modified = DateTime.UtcNow; session.SaveOrUpdate(image); PostImage post_image = session.CreateCriteria(typeof(PostImage)) .Add(Expression.Eq("Post.Id", post_id)) .Add(Expression.Eq("Image.Id", t_image.Id)) .UniqueResult<PostImage>(); if (post_image == null) { post_image = new PostImage(); post_image.Post = post; post_image.Image = image; session.SaveOrUpdate(post_image); } session.Flush(); return image.Id; } }
public int CreateOrUpdateImageAttributes(string ticket, TransitImage t_image) { using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; CheckAdministrator(session, ticket); Image image = t_image.GetImage(session, false); session.SaveOrUpdate(image); session.Flush(); return image.Id; } }
public TransitImage GetImageWithThumbnailByIdIfModifiedSince(string ticket, int id, DateTime ifModifiedSince) { // todo: check permissions with ticket using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; DBlog.Data.Image image = (DBlog.Data.Image)session.Load(typeof(DBlog.Data.Image), id); TransitImage img = new TransitImage(session, image, ticket); if (img.Modified <= ifModifiedSince) { return null; } return new TransitImage(session, image, true, false, ticket); } }
public EXIFMetaData GetImageEXIFMetaDataById(string ticket, int id) { using (DBlog.Data.Hibernate.Session.OpenConnection(GetNewConnection())) { ISession session = DBlog.Data.Hibernate.Session.Current; DBlog.Data.Image image = (DBlog.Data.Image)session.Load(typeof(DBlog.Data.Image), id); TransitImage t_image = new TransitImage(session, image, false, true, ticket); EXIFMetaData exif_metadata = (t_image.Data != null) ? new EXIFMetaData( new System.Drawing.Bitmap(new MemoryStream(t_image.Data)).PropertyItems) : null; return exif_metadata; } }