示例#1
0
        public ActionResult AddArticle( Article article, HttpPostedFileBase picture, int categoryId )
        {
            if( ModelState.IsValid )
            {

                if( picture != null )
                {
                    if( picture.ContentType == "image/jpeg" || picture.ContentType == "image/png" )
                    {
                        Image image = Image.FromStream( picture.InputStream );

                        if( image.Height > 200 || image.Width > 200 )
                        {
                            Image small = Class.ImageHelper.ScaleImage( image, 200, 200 );
                            Bitmap b = new Bitmap( small );

                            Guid guid = Guid.NewGuid();
                            string imageName = guid.ToString() + ".jpg";

                            b.Save( Server.MapPath( "~/uploads/aticleImage/" + imageName ), ImageFormat.Jpeg );
                            b.Save( Server.MapPath( "~/uploads/articleImage/" + imageName ), ImageFormat.Jpeg );

                            small.Dispose();
                            b.Dispose();

                            article.ImageName = imageName;
                        }
                        else
                        {
                            picture.SaveAs( Server.MapPath( "~/uploads/Article/" + picture.FileName ) );
                        }
                    }
                }
                ArticleCategoryDao articleCategoryDao = new ArticleCategoryDao();

                ArticleCategory articleCategory = articleCategoryDao.GetById( categoryId );
                article.Category = articleCategory;
                article.PostDate = DateTime.Now;
                article.User = new BlogUserDao().GetByLogin(User.Identity.Name);
                ArticleDao articleDao = new ArticleDao();

                articleDao.Create( article );

                TempData["message-success"] = "Kniha byla pridana";

            }
            else
            {
                return View( "Create", article );
            }

            return RedirectToAction( "Index" );
        }
示例#2
0
        /// <summary>
        /// Enregistre les nouvelles données en bases.
        /// </summary>
        /// <param name="NewBrands">Les marques à enregistrer.</param>
        /// <param name="NewFamilies">Les familles à enregistrer.</param>
        /// <param name="NewSubFamilies">Les sous-familles à enregistrer.</param>
        /// <param name="NewArticles">Les articles à enregistrer.</param>
        /// <param name="ChosenNamesakeStrategy">La stratégie de dédoublonnage choisie.</param>
        /// <returns></returns>
        private async Task SaveImportedData(Dictionary <string, Marques> NewBrands,
                                            Dictionary <string, Family> NewFamilies, Dictionary <string, SubFamily> NewSubFamilies,
                                            Dictionary <string, Pair <Articles, Articles> > NewArticles, NamesakeStrategy ChosenNamesakeStrategy)
        {
            StatusText.Text = "Import des données...";

            ImportProgress.Value   = 0;
            ImportProgress.Maximum = NewBrands.Count;
            foreach (var Marques in NewBrands.Values)
            {
                ImportProgress.Value++;
                StatusText.Text = "Import des marques " + ImportProgress.Value + "/" + ImportProgress.Maximum;
                await Task.Run(() => BrandDao.Save(Marques));
            }

            ImportProgress.Value   = 0;
            ImportProgress.Maximum = NewFamilies.Count;
            foreach (var Familles in NewFamilies.Values)
            {
                ImportProgress.Value++;
                StatusText.Text = "Import des familles " + ImportProgress.Value + "/" + ImportProgress.Maximum;
                await Task.Run(() => FamilyDao.Save(Familles));
            }

            ImportProgress.Value   = 0;
            ImportProgress.Maximum = NewSubFamilies.Count;
            foreach (var SousFamille in NewSubFamilies.Values)
            {
                ImportProgress.Value++;
                StatusText.Text = "Import des sous-familles " + ImportProgress.Value + "/" + ImportProgress.Maximum;
                await Task.Run(() => SubFamilyDao.Save(SousFamille));
            }

            ImportProgress.Value   = 0;
            ImportProgress.Maximum = NewArticles.Count;
            foreach (var ArticlePair in NewArticles)
            {
                ImportProgress.Value++;
                StatusText.Text = "Import des articles " + ImportProgress.Value + "/" + ImportProgress.Maximum;
                //pas de doublons
                if (ArticlePair.Value.Second == null)
                {
                    await Task.Run(() => ArticleDao.Create(ArticlePair.Value.First));
                }
                else
                {
                    if (ChosenNamesakeStrategy == NamesakeStrategy.Replace)
                    {
                        await Task.Run(() => ArticleDao.Update(ArticlePair.Value.First));
                    }
                }
            }
        }
示例#3
0
        public ActionResult Add(Article article)
        {
            if (ModelState.IsValid)
            {
                ArticleDao aDao = new ArticleDao();
                User       user = Membership.GetUser(User.Identity.Name) as User;
                article.AuthorId   = user.Id;
                article.AuthorName = user.FirstName + " " + user.LastName;
                aDao.Create(article);
                TempData["message-success"] = "Příspěvek byl úspěšně publikován";
            }
            else
            {
                return(View("Create", article));
            }

            return(RedirectToAction("Index", "Home"));
        }
        public ActionResult AddArticle(Article article, HttpPostedFileBase picture, int categoryId)
        {
            if (ModelState.IsValid)
            {
                 IList<Article> art = new ArticleDao().GetAll();

                foreach (Article a in art)
                {
                    if (a.Title == article.Title)
                    {
                        TempData["message-unsuccess"] = "Nadpis už existuje";
                        IList<ArticleCategory> categories = new ArticleCategoryDao().GetAll();
                        ViewBag.Category = categories;
                        return View("CreateArticle", article);
                    }

                }

                if (picture != null)
                {
                    if (picture.ContentType == "image/jpeg" || picture.ContentType == "image/png")
                    {
                        Image image = Image.FromStream(picture.InputStream);

                        if (image.Height > 200 || image.Width > 200)
                        {
                            Image small = Helper.ImageHelper.ScaleImage(image, 200, 200);
                            Bitmap b = new Bitmap(small);

                            Guid guid = Guid.NewGuid();
                            string imageName = guid.ToString() + ".jpg";

                            b.Save(Server.MapPath("~/image/aticleImage/" + imageName), ImageFormat.Jpeg);
                            b.Save(Server.MapPath("~/image/articleImage/" + imageName), ImageFormat.Jpeg);

                            small.Dispose();
                            b.Dispose();

                            article.ImageName = imageName;
                        }
                        else
                        {
                            picture.SaveAs(Server.MapPath("~/image/articleImage/" + picture.FileName));
                        }
                    }
                }

                ArticleCategoryDao articleCategoryDao = new ArticleCategoryDao();

                ArticleCategory articleCategory = articleCategoryDao.GetById(categoryId);
                article.Category = articleCategory;
                article.PosteDate = DateTime.Now;
                article.User = new UserDao().GetByLogin(User.Identity.Name);
                ArticleDao articleDao = new ArticleDao();

                articleDao.Create(article);

                TempData["message-success"] = "Článek byl přidán";

            }
            else
            {
                IList<ArticleCategory> categories = new ArticleCategoryDao().GetAll();
                ViewBag.Category = categories;
                return View("CreateArticle", article);
            }

            return RedirectToAction("Index");
        }