Esempio n. 1
0
        private async Task <string> CreateNewCourse(CanvasCourseDetailModel courseDetail)
        {
            if (courseDetail != null)
            {
                Courses.Add Add = new Courses.Add()
                {
                    CourseDescription = courseDetail.CourseDescription
                    ,
                    CourseName = courseDetail.CourseName
                    ,
                    EndDate = courseDetail.EndDate
                    ,
                    StartDate = courseDetail.StartDate
                };
                string oResponse = await base.canvasManager.CreateCourse(Add) as string;

                if (!string.IsNullOrEmpty(oResponse))
                {
                    CanvasCourseModel newCourse = oResponse.FromJson <CanvasCourseModel>();
                    if (newCourse != null)
                    {
                        Guid  courseId = Guid.NewGuid();
                        Cours c        = new Cours()
                        {
                            CanvasId            = newCourse.id
                            , CourseCreateDate  = DateTime.Now
                            , CourseDescription = courseDetail.CourseDescription
                            , CourseName        = courseDetail.CourseName
                            , CourseId          = courseId
                        };


                        try
                        {
                            base.db.Courses.Add(c);
                            db.SaveChanges();
                            SaveCourseSchedule(courseDetail);
                            SaveCourseProviders(courseDetail);
                            SaveCourseUniversities(courseDetail);
                        }
                        catch (Exception ex)
                        {
                            return(base.serializer.Serialize(new { Success = false, Message = ex.Message }));
                        }

                        return(base.serializer.Serialize(new { Success = true, Message = string.Empty }));
                    }
                }
            }
            return(base.serializer.Serialize(new { Success = false, Message = "Error" }));
        }
Esempio n. 2
0
        public ActionResult Create(Guid?Id)
        {
            Cours cours = db.Courses.Find(Id);
            var   Add   = new Courses.Add();

            if (cours != null)
            {
                Add.CourseDescription = cours.CourseDescription;
                Add.CourseId          = cours.CourseId;
                Add.CourseName        = cours.CourseName;
                UpdateViewBag(Add.CourseId);
                UpdateViewBagProvder(Add.ProviderId, Add.CourseId);
                UpdateViewBagUniversity(Add.UniversityId, Add.CourseId);
            }
            ViewBags();
            return(View(Add));
        }
Esempio n. 3
0
        public async Task <object> UpdateCourse(Courses.Add Update, int iCourseId)
        {
            if (Update != null)
            {
                List <KeyValuePair <string, string> > lstCommands = new List <KeyValuePair <string, string> >();
                lstCommands.Add(new KeyValuePair <string, string>("course[name]", Update.CourseName));
                lstCommands.Add(new KeyValuePair <string, string>("course[public_description]", Update.CourseDescription));
                if (Update.StartDate != null)
                {
                    lstCommands.Add(new KeyValuePair <string, string>("course[start_at]", Update.StartDate.Value.ToString("o")));
                }
                if (Update.EndDate != null)
                {
                    lstCommands.Add(new KeyValuePair <string, string>("course[end_at]", Update.EndDate.Value.ToString("o")));
                }
                lstCommands.Add(new KeyValuePair <string, string>("enroll_me", true.ToString().ToLower()));
                lstCommands.Add(new KeyValuePair <string, string>("course[is_public]", true.ToString().ToLower()));
                lstCommands.Add(new KeyValuePair <string, string>("course[self_enrollment]", true.ToString().ToLower()));

                this.CommandToExecute = CanvasCommand.UPDATE_COURSE;
                string sUrl = await CommandUrl();

                sUrl = string.Format(sUrl, iCourseId);
                if (lstCommands != null && lstCommands.Count > 0)
                {
                    if (sUrl.EndsWith("/"))
                    {
                        sUrl = sUrl.Substring(0, sUrl.Length - 1);
                    }
                    sUrl = string.Concat(sUrl, "?1=1");
                    foreach (KeyValuePair <string, string> aCommand in lstCommands)
                    {
                        string sParamName  = aCommand.Key;
                        string sParamValue = aCommand.Value;
                        if ((!string.IsNullOrEmpty(sParamName) && (!string.IsNullOrEmpty(sParamValue))))
                        {
                            sUrl = string.Concat(sUrl, "&", sParamName, "=", sParamValue);
                        }
                    }
                }
                return(await Execute(sUrl));
            }

            return(null);
        }
Esempio n. 4
0
        public async Task <object> CreateCourse(Courses.Add Add)
        {
            if (Add != null)
            {
                List <KeyValuePair <string, string> > lstCommands = new List <KeyValuePair <string, string> >();
                lstCommands.Add(new KeyValuePair <string, string>("course[name]", Add.CourseName));
                lstCommands.Add(new KeyValuePair <string, string>("course[public_description]", Add.CourseDescription));
                if (Add.StartDate != null)
                {
                    lstCommands.Add(new KeyValuePair <string, string>("course[start_at]", Add.StartDate.Value.ToString("o")));
                }
                if (Add.EndDate != null)
                {
                    lstCommands.Add(new KeyValuePair <string, string>("course[end_at]", Add.EndDate.Value.ToString("o")));
                }
                lstCommands.Add(new KeyValuePair <string, string>("enroll_me", true.ToString().ToLower()));
                lstCommands.Add(new KeyValuePair <string, string>("course[is_public]", true.ToString().ToLower()));
                lstCommands.Add(new KeyValuePair <string, string>("course[self_enrollment]", true.ToString().ToLower()));
                return(await Execute(CanvasCommand.CREATE_COURSE, lstCommands));
            }

            return(null);
        }
Esempio n. 5
0
        public ActionResult Create(Courses.Add Add)
        {
            if (ModelState.IsValid)
            {
                var   courceID = Guid.NewGuid();
                Cours c        = new Cours();
                if (Add.CourseId != new Guid() && Add.CourseId != null)
                {
                    c = db.Courses.FirstOrDefault(e => e.CourseId == Add.CourseId);
                }
                if (c == null || c.CourseId == new Guid())
                {
                    c                   = new Cours();
                    c.CourseId          = courceID;
                    c.CourseCreateDate  = DateTime.Now;
                    c.CourseDescription = Add.CourseDescription;
                    c.CourseName        = Add.CourseName;
                    db.Courses.Add(c);
                }
                else
                {
                    courceID            = c.CourseId;
                    c.CourseDescription = Add.CourseDescription;
                    c.CourseName        = Add.CourseName;
                }

                var schedule = db.CourseSchedules.FirstOrDefault(ee => ee.CourseId == Add.CourseId);
                if (schedule != null)
                {
                    db.CourseSchedules.Remove(schedule);
                }

                schedule            = new CourseSchedule();
                schedule.CourseId   = courceID;
                schedule.EndDate    = Add.EndDate;
                schedule.ScheduleId = Guid.NewGuid();
                schedule.StartDate  = Add.StartDate;
                db.CourseSchedules.Add(schedule);

                var courceProvider = db.CourseProviders.Where(ee => ee.CourseId == courceID).ToList();
                if (courceProvider != null && courceProvider.Any())
                {
                    db.CourseProviders.RemoveRange(courceProvider);
                }

                if (Add.ProviderId != null && Add.ProviderId.Any())
                {
                    foreach (var item in Add.ProviderId)
                    {
                        db.CourseProviders.Add(new CourseProvider()
                        {
                            CourseId   = courceID,
                            Id         = Guid.NewGuid(),
                            ProviderId = item
                        });
                    }
                }

                var CourceUniversity = db.CourseUniversities.Where(ee => ee.CourseId == courceID).ToList();
                if (CourceUniversity != null && CourceUniversity.Any())
                {
                    db.CourseUniversities.RemoveRange(CourceUniversity);
                }

                if (Add.UniversityId != null && Add.UniversityId.Any())
                {
                    foreach (var item in Add.UniversityId)
                    {
                        db.CourseUniversities.Add(new CourseUniversity()
                        {
                            CourseId     = courceID,
                            Id           = Guid.NewGuid(),
                            UniversityId = item
                        });
                    }
                }


                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBags();
            return(View(Add));
        }
Esempio n. 6
0
        public async Task <ActionResult> Create(Courses.Add Add)
        {
            if (ModelState.IsValid)
            {
                string oResponse = await base.canvasManager.CreateCourse(Add) as string;

                int iCanvasCourseId = 0;
                if (!string.IsNullOrEmpty(oResponse))
                {
                    CanvasCourseModel newCourse = oResponse.FromJson <CanvasCourseModel>();
                    iCanvasCourseId = newCourse.id;
                }

                var   courceID = Guid.NewGuid();
                Cours c        = new Cours();
                if (Add.CourseId != new Guid() && Add.CourseId != null)
                {
                    c = db.Courses.FirstOrDefault(e => e.CourseId == Add.CourseId);
                }
                if (c == null || c.CourseId == new Guid())
                {
                    c                   = new Cours();
                    c.CourseId          = courceID;
                    c.CourseCreateDate  = DateTime.Now;
                    c.CourseDescription = Add.CourseDescription;
                    c.CourseName        = Add.CourseName;
                    c.CanvasId          = iCanvasCourseId;
                    db.Courses.Add(c);
                }
                else
                {
                    courceID            = c.CourseId;
                    c.CourseDescription = Add.CourseDescription;
                    c.CourseName        = Add.CourseName;
                }

                var schedule = db.CourseSchedules.FirstOrDefault(ee => ee.CourseId == Add.CourseId);
                if (schedule != null)
                {
                    db.CourseSchedules.Remove(schedule);
                }

                schedule            = new CourseSchedule();
                schedule.CourseId   = courceID;
                schedule.EndDate    = Add.EndDate;
                schedule.ScheduleId = Guid.NewGuid();
                schedule.StartDate  = Add.StartDate;
                db.CourseSchedules.Add(schedule);

                var courceProvider = db.CourseProviders.Where(ee => ee.CourseId == courceID).ToList();
                if (courceProvider != null && courceProvider.Any())
                {
                    db.CourseProviders.RemoveRange(courceProvider);
                }

                if (Add.ProviderId != null && Add.ProviderId.Any())
                {
                    foreach (var item in Add.ProviderId)
                    {
                        db.CourseProviders.Add(new CourseProvider()
                        {
                            CourseId   = courceID,
                            Id         = Guid.NewGuid(),
                            ProviderId = item
                        });
                    }
                }

                var CourceUniversity = db.CourseUniversities.Where(ee => ee.CourseId == courceID).ToList();
                if (CourceUniversity != null && CourceUniversity.Any())
                {
                    db.CourseUniversities.RemoveRange(CourceUniversity);
                }

                if (Add.UniversityId != null && Add.UniversityId.Any())
                {
                    foreach (var item in Add.UniversityId)
                    {
                        db.CourseUniversities.Add(new CourseUniversity()
                        {
                            CourseId     = courceID,
                            Id           = Guid.NewGuid(),
                            UniversityId = item
                        });
                    }
                }


                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBags();
            return(View(Add));
        }
Esempio n. 7
0
        private async Task <string> UpdateCourse(CanvasCourseDetailModel courseDetail)
        {
            if (courseDetail != null)
            {
                int?iCanvasId = (from c in base.db.Courses
                                 where c.CourseId == courseDetail.CourseId
                                 select c.CanvasId
                                 ).FirstOrDefault();
                if (iCanvasId != null)
                {
                    Courses.Add Add = new Courses.Add()
                    {
                        CourseDescription = courseDetail.CourseDescription
                        ,
                        CourseName = courseDetail.CourseName
                        ,
                        EndDate = courseDetail.EndDate
                        ,
                        StartDate = courseDetail.StartDate
                    };
                    string oResponse = await base.canvasManager.UpdateCourse(Add, iCanvasId.Value) as string;

                    if (!string.IsNullOrEmpty(oResponse))
                    {
                        try
                        {
                            CanvasCourseModel updateCourse = oResponse.FromJson <CanvasCourseModel>();
                            Cours             c            = (from co in base.db.Courses
                                                              where (co.CourseId == courseDetail.CourseId)
                                                              select co)
                                                             .FirstOrDefault();
                            if (c != null)
                            {
                                c.CourseName           = courseDetail.CourseName;
                                c.CourseDescription    = courseDetail.CourseDescription;
                                base.db.Entry(c).State = System.Data.Entity.EntityState.Modified;
                                base.db.SaveChanges();
                                SaveCourseSchedule(courseDetail);
                                SaveCourseProviders(courseDetail);
                                SaveCourseUniversities(courseDetail);
                            }
                            //Cours c = new Cours()
                            //{
                            //    CanvasId = updateCourse.id
                            //    ,
                            //    CourseCreateDate = DateTime.Now
                            //    ,
                            //    CourseDescription = courseDetail.CourseDescription
                            //    ,
                            //    CourseName = courseDetail.CourseName
                            //    ,
                            //    CourseId = Add.CourseId
                            //};
                        }
                        catch (Exception ex)
                        {
                            return(base.serializer.Serialize(new { Success = false, Message = ex.Message }));
                        }
                        return(base.serializer.Serialize(new { Success = true, Message = string.Empty }));
                    }
                }
            }
            return(base.serializer.Serialize(new { Success = false, Message = "Error" }));
        }