protected void ProtectToggle(object sender, EventArgs e) { using (var eds = new Data.WikipediaEntities()) { string stringid = Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { var article = eds.Articles.Where(art => art.Id == id).First(); if (article.UserName == User.Identity.Name || User.IsInRole("Editor")) { if (article.IsProtected) { article.IsProtected = false; ProtectLink.Text = "Protect"; } else { article.IsProtected = true; ProtectLink.Text = "UnProtect"; } } eds.SaveChanges(); } } }
protected void SubmitClick(object sender, EventArgs e) { using (var eds = new Data.WikipediaEntities()) { string stringid = Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { /* create article */ Data.Article art = new Data.Article(); art.DomainId = id; art.CreateDate = DateTime.Now; if (Request.IsAuthenticated) art.UserName = User.Identity.Name; eds.Articles.AddObject(art); eds.SaveChanges(); /* create article version */ Data.Version ver = new Data.Version(); ver.ArticleId = art.Id; ver.Name = ArticleName.Text; ver.Content = ArticleContent.Text; ver.CreateDate = DateTime.Now; eds.Versions.AddObject(ver); eds.SaveChanges(); /* redirect to new article */ Response.Redirect("~/Article.aspx?id=" + art.Id); } } }
protected void Page_Load(object sender, EventArgs e) { using (var eds = new Data.WikipediaEntities()) { string stringid = Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { var article = eds.Articles.Where(art => art.Id == id).First(); ArticleName.Text = article.Name; ArticleContent.Text = Textile.TextileFormatter.FormatString(article.Content); if (!article.IsProtected || Request.IsAuthenticated) { EditAction.Visible = true; EditLink.HRef = "~/ArticleEdit.aspx?id=" + article.Id; } if (article.UserName == User.Identity.Name || User.IsInRole("Editor")) { ProtectAction.Visible = true; if (article.IsProtected) { ProtectLink.Text = "UnProtect"; } } if (User.IsInRole("Editor")) { VersionAction.Visible = true; VersionsLinks.HRef = "~/ArticleVersions.aspx?id=" + article.Id; } } else { Response.Redirect("~"); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (var eds = new Data.WikipediaEntities()) { string stringid = Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { var article = eds.Articles.Where(art => art.Id == id).First(); ViewState["article"] = article; if (article.IsProtected && !Request.IsAuthenticated) { Response.Redirect("~/Article.aspx?id=" + article.Id); } ArticleName.Text = article.Name; ArticleContent.Text = article.Content; } else { Response.Redirect("~"); } } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (var eds = new Data.WikipediaEntities()) { string stringid = Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { NewAction.Visible = true; NewLink.HRef = "ArticleNew.aspx?id=" + id; var domain = eds.Domains.Where(dom => dom.Id == id).FirstOrDefault(); if (domain != null) { Page.Title = "Wikipedia:" + domain.Name; DomainName.InnerText = domain.Name; DomainName.Visible = true; } var articles = eds.Articles.Where(art => art.DomainId == id); DataTable table = new DataTable(); table.Columns.Add("Id"); table.Columns.Add("Name"); table.Columns.Add("UserName"); table.Columns.Add("IsProtected"); table.Columns.Add("CreateDate"); table.Columns["Id"].DataType = System.Type.GetType("System.Int32"); table.Columns["Name"].DataType = System.Type.GetType("System.String"); table.Columns["UserName"].DataType = System.Type.GetType("System.String"); table.Columns["IsProtected"].DataType = System.Type.GetType("System.Boolean"); table.Columns["CreateDate"].DataType = System.Type.GetType("System.DateTime"); foreach (var art in articles) { DataRow row = table.NewRow(); row["Id"] = art.Id; row["Name"] = art.Name; row["UserName"] = art.UserName; row["IsProtected"] = art.IsProtected; row["CreateDate"] = art.CreateDate; table.Rows.Add(row); } ViewState["articles"] = table; DataView view = new DataView(table); view.Sort = "Name ASC"; ArticlesGridView.DataSource = view; ArticlesGridView.DataBind(); } } } }
public void VersionDeleted(object sender, EntityDataSourceChangedEventArgs e) { using (var eds = new Data.WikipediaEntities()) { Data.Version ver = e.Entity as Data.Version; var art = eds.Articles.Where(article => article.Id == ver.ArticleId).First(); if (art.Versions.Count == 0) { eds.Articles.DeleteObject(art); eds.SaveChanges(); } } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { using (var eds = new Data.WikipediaEntities()) { var articles = eds.Articles; DataTable table = new DataTable(); table.Columns.Add("Id"); table.Columns.Add("Name"); table.Columns.Add("UserName"); table.Columns.Add("Domain"); table.Columns.Add("IsProtected"); table.Columns.Add("CreateDate"); table.Columns["Id"].DataType = System.Type.GetType("System.Int32"); table.Columns["Name"].DataType = System.Type.GetType("System.String"); table.Columns["UserName"].DataType = System.Type.GetType("System.String"); table.Columns["Domain"].DataType = System.Type.GetType("System.String"); table.Columns["IsProtected"].DataType = System.Type.GetType("System.Boolean"); table.Columns["CreateDate"].DataType = System.Type.GetType("System.DateTime"); foreach (var art in articles) { DataRow row = table.NewRow(); row["Id"] = art.Id; row["Name"] = art.Name; row["UserName"] = art.UserName; row["Domain"] = art.Domain.Name; row["IsProtected"] = art.IsProtected; row["CreateDate"] = art.CreateDate; table.Rows.Add(row); } ViewState["articles"] = table; } } string searchtext = Request.QueryString["q"]; var view = new DataView (ViewState["articles"] as DataTable); view.RowFilter = String.Format("Name LIKE '%{0}%'", searchtext); view.Sort = "Name ASC"; ArticlesGridView.DataSource = view; ArticlesGridView.DataBind(); }
public void ProcessRequest(HttpContext context) { using (var eds = new Data.WikipediaEntities()) { string stringid = context.Request.QueryString["id"]; int id; if (int.TryParse(stringid, out id)) { var image = eds.Images.Where(img => img.Id == id).First(); context.Response.ContentType = image.ContentType; context.Response.OutputStream.Write(image.Content, 0, image.ContentLength); } } }
protected void UploadClick(object sender, EventArgs e) { if (File.HasFile) { byte[] buffer = new byte[File.PostedFile.ContentLength]; File.PostedFile.InputStream.Read(buffer, 0, File.PostedFile.ContentLength); using (var eds = new Data.WikipediaEntities()) { var img = new Data.Image(); img.Content = buffer; img.ContentType = File.PostedFile.ContentType; img.ContentLength = File.PostedFile.ContentLength; eds.Images.AddObject(img); eds.SaveChanges(); Response.Redirect("~/Image.ashx?id=" + img.Id); } } }
protected void SubmitClick(object sender, EventArgs e) { using (var eds = new Data.WikipediaEntities()) { Data.Article art = ViewState["article"] as Data.Article; if ((ArticleName.Text != art.Name || ArticleContent.Text != art.Content) && (!art.IsProtected || Request.IsAuthenticated)) { Data.Version ver = new Data.Version(); ver.ArticleId = art.Id; ver.Name = ArticleName.Text; ver.Content = ArticleContent.Text; ver.CreateDate = DateTime.Now; eds.Versions.AddObject(ver); eds.SaveChanges(); } Response.Redirect("~/Article.aspx?id=" + art.Id); } }