Example #1
0
        public ActionResult Index(FormCollection form)
        {
            string caption  = Request.Form["Title"];
            bool   isPublic = false;

            if (Request.Form["IsPublic"] == "on")
            {
                isPublic = true;
            }

            try
            {
                PhotoManager.ZAddAlbum(caption, isPublic);
                return(RedirectToAction("Index"));
            }
            catch
            {
                var a = new Z.Album()
                {
                    Caption = caption, IsPublic = isPublic
                };
                foreach (var e in a.GetRuleViolations())
                {
                    ModelState.AddModelError(e.TagName, e.ErrorMessage);
                    //e.PropertyName, is the name of the relevant Html input tag
                }
                if (!a.IsValid)
                {
                    //ModelState.AddModelError("_FORM", "Generic Form Error");
                }

                var albums = PhotoManager.GetAlbums();
                return(View(albums));
            }
        }
Example #2
0
    public static void ZAddAlbum(string _Caption, bool _IsPublic)
    {
        var photosDB = new Z.PhotoDataContext();
        var a        = new Z.Album()
        {
            Caption = _Caption, IsPublic = _IsPublic
        };

        photosDB.Albums.InsertOnSubmit(a);
        photosDB.SubmitChanges();
    }
Example #3
0
    public static List <Z.Album> ZGetAlbums()
    {
        Z.PhotoDataContext photoDB = new Z.PhotoDataContext();
        bool filter = !((HttpContext.Current.User.IsInRole("Friends") ||
                         HttpContext.Current.User.IsInRole("Administrators")));

        var qAlbums =
            photoDB
            .Albums
            .Where(a => a.IsPublic == filter || a.IsPublic == true)
            .Select(a => new { AlbumID = a.AlbumID, Caption = a.Caption, IsPublic = a.IsPublic, Count = a.Photos.Count() });

        List <Z.Album> albums = new List <Z.Album>();

        foreach (var x in qAlbums)
        {
            var a = new Z.Album()
            {
                AlbumID = x.AlbumID, Caption = x.Caption, IsPublic = x.IsPublic, Count = x.Count
            };
            albums.Add(a);
        }
        return(albums);
    }