public async Task <IActionResult> ImageUpload(DashItemUpload newItem, List <IFormFile> files)
        {
            if (!ModelState.IsValid)
            {
                return(View(newItem));
            }

            if (files.Count != 0) // only need to upload photos if the user uploaded any
            {
                newItem.ImageURI = UploadImage(files, newItem.Title);
            }

            DbAccessor accessor = new DbAccessor();

            if (newItem.DashboardItemID == 0) // creating new item
            {
                accessor.InsertDashItem(newItem);
            }
            else // editing pre-existing item
            {
                accessor.UpdateDashItem((DashboardItem)newItem);
            }

            return(Redirect("/AdminTools/DashManager"));
        }
        public async Task <IActionResult> ImageUpload(string DashboardId)
        {
            string id = TempData["EditID"]?.ToString();

            if (DashboardId == null & id == null)
            {
                return(Redirect("/AdminTools/DashManager"));
            }
            if (id == null)                        // we are going to create something
            {
                int Id = Int32.Parse(DashboardId); // todo use tryparse to check if we can actually
                return(View(new DashItemUpload {
                    DashboardID = Id
                }));
            }

            // we are editing
            DbAccessor     accessor   = new DbAccessor();
            DashItemUpload ItemToEdit = (DashItemUpload)accessor.GetDashItem(id); // get item to fill model with

            return(View(ItemToEdit));
        }
Beispiel #3
0
        // InsertDashItem can handle multiple types
        public void InsertDashItem(DashItemUpload newItem)
        {
            try
            {
                SqlCommand cmd = new SqlCommand("dbo.InsertDashItemUpload", _conn);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@DashboardID", SqlDbType.Int).Value        = newItem.DashboardID;
                cmd.Parameters.Add("@Title", SqlDbType.VarChar).Value          = newItem.Title;
                cmd.Parameters.Add("@StartDateTime", SqlDbType.DateTime).Value = newItem.StartDateTime;
                cmd.Parameters.Add("@EndDateTime", SqlDbType.DateTime).Value   = newItem.EndDateTime;
                cmd.Parameters.Add("@SortOrder", SqlDbType.Int).Value          = newItem.SortOrder;

                cmd.Parameters.Add("@ImageURI", SqlDbType.VarChar).Value = newItem.ImageURI;
                _conn.Open();
                cmd.ExecuteNonQuery();
                _conn.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Data);
            }
        }