Esempio n. 1
0
 /// <summary>
 /// Constructeur avec passage des paramètres Id et Libellé (titre) des rubriques
 /// </summary>
 /// <param name="rubric"></param>
 /// <param name="cdDAL"></param>
 internal ViewModelRubric(Rubric rubric, ConsumeWSRest cdDAL)
 {
     _idCategorie          = rubric.Id;
     _Libelle              = rubric.Libelle;
     _cdDAL                = cdDAL;
     _colViewModelSubjects = new ObservableCollection <ViewModelSubject>();
 }
        public RubricWindow(Rubric rubric, User userWhoWatches)
        {
            _storage = Factory.Instance.GetStorage();

            _rubric         = rubric;
            _userWhoWatches = userWhoWatches;

            if (_rubric.Id != -1)
            {
                _picture     = _rubric.Picture ?? new Picture();
                _pictureDark = _rubric.PictureDark ?? new Picture();
            }

            _unselectedDocument = new Document
            {
                Id   = -1,
                Name = defaultDocument
            };

            InitializeComponent();

            FormingTheEdittingData();

            WindowState = WindowState.Maximized;
        }
Esempio n. 3
0
        public async Task <IActionResult> Edit(string id, [Bind("Id,Name,File")] Rubric rubric)
        {
            if (id != rubric.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rubric);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RubricExists(rubric.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(rubric));
        }
Esempio n. 4
0
        private void ucRubric_RubricSelect(object sender, RubricViewSelectEventArgs e)
        {
            Rubric rub = e.SelectedRubric;

            if (rub.EvalID >= 0)
            {
                Evaluation eval = new Evaluations(Globals.CurrentIdentity).GetInfo(rub.EvalID);
                if (eval.ResultType == Result.AUTO_TYPE)
                {
                    BindAuto(rub);
                }
                else if (eval.ResultType == Result.SUBJ_TYPE)
                {
                    BindSubj(rub);
                }
            }
            else if (!new Rubrics(Globals.CurrentIdentity).IsHeading(rub))
            {
                BindSubj(rub);
            }
            else
            {
                if (!IsStudent())
                {
                    mpViews.SelectedIndex = 4;
                }
                else
                {
                    mpViews.SelectedIndex = 1;
                }
            }
        }
 public Rubric AddRubric(Rubric rubric)
 {
     var query = Ninject.Get<InsertRubricQuery>();
     query.Rubric = rubric;
     query.Execute();
     return rubric;
 }
Esempio n. 6
0
        private void BindAuto(Rubric rub)
        {
            Rubrics rubda = new Rubrics(Globals.CurrentIdentity);

            Result.ResultList ress = rubda.GetResults(rub.ID, GetSubID());

            lblEvalID.Text = rub.EvalID.ToString();
            if (ress.Count == 0)
            {
                if (!IsStudent())
                {
                    mpViews.SelectedIndex = 2;
                }
                else
                {
                    mpViews.SelectedIndex = 5;
                }
            }
            else
            {
                AutoResult res = ress[0] as AutoResult;

                XmlWizard xmlwiz = new XmlWizard();
                xmlwiz.DisplayDivXslt(res.XmlResult, Path.Combine(Globals.WWWDirectory, "Xml/reshtml.xslt"), divAuto);

                mpViews.SelectedIndex = 3;
            }
        }
Esempio n. 7
0
 public ActionResult Edit(Rubric model)
 {
     // Если модель валидна
     if (ModelState.IsValid)
     {
         // Получаем запись раздела из БД
         Rubric rubric = db.Rubrics.FirstOrDefault(p => p.Id == model.Id);
         // Если такая запись есть
         if (rubric != null)
         {
             // изменяем ее и сохраняем в БД
             rubric.Name            = model.Name;
             db.Entry(rubric).State = EntityState.Modified;
             db.SaveChanges();
             // редирект к списку разделов
             return(RedirectToAction("Index"));
         }
         // иначе добавляем сообщение об ошибке
         else
         {
             ModelState.AddModelError("", "Ошибка при сохранении");
         }
     }
     return(View(model));
 }
Esempio n. 8
0
        public void TestGetRubricByID()
        {
            string expectedString = "Entraide.com";
            Rubric rubric         = Outil.GetRubricByID(1);

            Assert.AreEqual(rubric.Libelle, expectedString);
        }
Esempio n. 9
0
        /// <summary>
        /// Update a rubric entry
        /// </summary>
        public bool Update(Rubric rub)
        {
            //check permission
            Assignment asst = new Assignments(m_ident).GetInfo(rub.AsstID);

            Authorize(asst.CourseID, "updaterubric", asst.ID, null);

            //Rename zone on entry rename
            if (rub.EvalID >= 0)
            {
                FileSystem fs     = new FileSystem(m_ident);
                int        zoneID =
                    (new Evaluations(m_ident).GetInfo(rub.EvalID) as AutoEvaluation).ZoneID;
                CFile zdir = fs.GetFile(zoneID);
                zdir.Alias = rub.Name;
                fs.UpdateFileInfo(zdir, false);
            }

            //Update entry
            m_dp.UpdateRubricEntry(rub);

            //Retally points and update root entry
            Rubric root = new Assignments(m_ident).GetRubric(rub.AsstID);

            root.Points = RetallyPoints(root);
            m_dp.UpdateRubricEntry(root);

            //Log
            Log("Updated rubric entry: " + rub.Name, rub.AsstID);

            return(true);
        }
Esempio n. 10
0
 public TopicViewModel(Rubric rubric)
 {
     MyRubric = rubric;
     MyRubric.GetListTopicsByRubric();
     _Topics = new ObservableCollection <Topic>();
     InitializeList();
 }
Esempio n. 11
0
        private void BindAuto(Rubric rub)
        {
            Result.ResultList ress =
                new Rubrics(Globals.CurrentIdentity).GetResults(rub.ID, GetCurrentSub());

            if (ress.Count == 0)
            {
                divAuto.InnerHtml = "<i>There are no results for this evaluation item</i>";
                return;
            }

            AutoResult   res    = ress[0] as AutoResult;
            MemoryStream xmlstr = new MemoryStream(Encoding.ASCII.GetBytes(res.XmlResult));

            XslTransform xslt = new XslTransform();

            XPathDocument  xpathdoc = new XPathDocument(xmlstr);
            XPathNavigator nav      = xpathdoc.CreateNavigator();

            XPathDocument xsldoc = new XPathDocument(
                Path.Combine(Globals.WWWDirectory, "Xml/reshtml.xslt"));

            StringBuilder strb = new StringBuilder();

            xslt.Load(xsldoc, null, null);
            xslt.Transform(xpathdoc, null, new XmlTextWriter(new StringWriter(strb)), (XmlResolver)null);

            divAuto.InnerHtml = strb.ToString();
        }
        public IEnumerable <Book> GetBooks(Rubric rubric = null, Publisher publisher = null, Author author = null, string search = "")
        {
            var books = Ninject.Get <GetBooksQuery>().Execute();

            if (rubric != null)
            {
                var rubrics    = GetRubrics();
                var dictionary = rubrics.ToDictionary(r => r.Id);
                if (dictionary.ContainsKey(rubric.Id))
                {
                    rubric = dictionary[rubric.Id];
                    books  = from b in books
                             where b.Rubric.Id == rubric.Id || dictionary.ContainsKey(b.Rubric.Id) && Rubric.IsChildOf(rubrics, dictionary[b.Rubric.Id], rubric)
                             select b;
                }
            }
            if (author != null)
            {
                var query = Ninject.Get <GetAuthorBooksQuery>();
                query.Author = author;
                var authorBooks = query.Execute();
                books = from b in books
                        join ab in authorBooks on b.Id equals ab.Id
                        select b;
            }
            books                 = publisher.Return(p => books.Where(b => b.Publisher.Id == p.Id), books);
            books                 = string.IsNullOrEmpty(search) ? books : from b in books
                            let s = search.ToLower()
                                    where b.Name.ToLower().Contains(s) || (b.Annotation ?? string.Empty).ToLower().Contains(s)
                                    select b;

            return(books.ToArray());
        }
        public IEnumerable <Rubric> GetRubricsHierarchy()
        {
            var rubrics = Rubric.FormTree(Ninject.Get <GetRubricsQuery>().Execute()).ToArray();

            ClearTree(rubrics);
            return(rubrics);
        }
Esempio n. 14
0
        // Create new Cohort, new Courses and Populate both plus CohortCourse
        //public static void CreateCohortCourse()
        //{
        //    var cohort = new Cohort() { Name = "4.2", Capacity = 20, ModeOfTeaching = "Online", StartDate = new DateTime(2020, 11, 20), EndDate = new DateTime(2021, 03, 16), City = "Edmonton" };
        //    var course1 = new Course() { Name = "React 101", Description = "React Fundamentals", DurationHrs = 10, InstructorId = 2 };
        //    var course2 = new Course() { Name = "Redux 101", Description = "Redux Fundamentals", DurationHrs = 10, InstructorId = 2 };

        //    var cohortCourse1 = new CohortCourse()
        //    {
        //        Cohort = cohort,
        //        Course = course1,
        //        StartDate = new DateTime(2021, 03, 16),
        //        EndDate = new DateTime(2021, 03, 18)
        //    };
        //    var cohortCourse2 = new CohortCourse()
        //    {
        //        Cohort = cohort,
        //        Course = course2,
        //        StartDate = new DateTime(2021, 03, 16),
        //        EndDate = new DateTime(2021, 03, 18)
        //    };
        //    using var context = new AppDbContext();
        //    context.CohortCourses.Add(cohortCourse1); // will also add member1 and comment1
        //    context.CohortCourses.Add(cohortCourse2); // will also add comment2

        //    context.SaveChanges();

        //}
        //Create Rubric, Existing User and populating the grades
        public static void CreateGradeNewUser()
        {
            var student = new User()
            {
                Name = "Student A", PasswordHash = "myPassword", Email = "*****@*****.**", IsInstructor = false
            };
            var rubric1 = new Rubric()
            {
                IsChallenge = false, Criteria = "Use CSS", Weight = 1, HomeworkId = 1
            };
            var rubric2 = new Rubric()
            {
                IsChallenge = false, Criteria = "Use HTML", Weight = 2, HomeworkId = 1
            };


            var grade1 = new Grade()
            {
                Mark    = 0,
                Rubric  = rubric1,
                Student = student
            };
            var grade2 = new Grade()
            {
                Mark    = 1,
                Rubric  = rubric2,
                Student = student
            };

            using var context = new AppDbContext();
            context.Grades.Add(grade1); // will also add member1 and comment1
            context.Grades.Add(grade2); // will also add comment2

            context.SaveChanges();
        }
Esempio n. 15
0
        public async Task <IHttpActionResult> PutRubric(int id, Rubric rubric)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != rubric.RubricId)
            {
                return(BadRequest());
            }

            db.Entry(rubric).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RubricExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Esempio n. 16
0
        /// <summary>
        /// Gets the rubric for a course and parses the rubric json.
        /// </summary>
        /// <param name="courseId">The course to get the rubric.</param>
        /// <returns>Returns a rubric for the given course id.</returns>
        public Rubric getRubricByCourseId(int courseId)
        {
            var rubric = new Rubric();

            using (var dbConnection = DbConnection.DatabaseConnection())
            {
                dbConnection.Open();

                var query = "SELECT id, rubric " +
                            "FROM courses " +
                            "WHERE " +
                            "id = @courseID";
                using (var cmd = new MySqlCommand(query, dbConnection))
                {
                    cmd.Parameters.AddWithValue("courseID", courseId);

                    using (var reader = cmd.ExecuteReader())
                    {
                        var idOrdinal     = reader.GetOrdinal("id");
                        var rubricOrdinal = reader.GetOrdinal("rubric");

                        var success = reader.Read();
                        if (success)
                        {
                            rubric.CourseID     = reader[idOrdinal] == DBNull.Value ? throw new Exception("Failed to find a course") : reader.GetInt32(idOrdinal);
                            rubric.RubricValues = JsonUtility.TryParseJson(reader.GetString(rubricOrdinal));
                        }
                    }
                }
            }
            return(rubric);
        }
Esempio n. 17
0
        public async Task <IActionResult> CreateRubric(RubricCreateModel rubricCreateModel)
        {
            var currentUser = await _userManager.GetUserAsync(User);

            var rubric = new Rubric
            {
                ApplicationUserId = currentUser.Id,
                DateCreated       = DateTime.Now,
                Title             = rubricCreateModel.Title,
                Description       = rubricCreateModel.Description,
                GradeId           = rubricCreateModel.Grade,
                SubjectId         = rubricCreateModel.Subject,
                IsPrivate         = rubricCreateModel.IsPrivate,
                TotalRating       = 0
            };
            var newRow = new Row {
                RubricId = rubric.Id
            };
            Cell cell = new Cell {
                RowId = newRow.Id, Text = "First Cell!"
            };

            newRow.Cells.Add(cell);
            rubric.Rows.Add(newRow);

            _applicationDbContext.Cells.Add(cell);
            _applicationDbContext.Rows.Add(newRow);
            _applicationDbContext.Rubrics.Add(rubric);
            await _applicationDbContext.SaveChangesAsync();

            return(RedirectToAction("Index", "Rubric"));
        }
 public Rubric DeleteRubric(Rubric rubric)
 {
     var query = Ninject.Get<DeleteRubricQuery>();
     query.Rubric = rubric;
     query.Execute();
     return rubric;
 }
Esempio n. 19
0
        public void TestCreationRubric()
        {
            string expectedString = "Test de Rubrique";
            Rubric rubric         = new Rubric(2, "Test de Rubrique");

            Assert.AreEqual(rubric.Libelle, expectedString);
        }
Esempio n. 20
0
        private void ucRubric_RubricSelect(object sender, RubricViewSelectEventArgs args)
        {
            Rubrics rubda = new Rubrics(Globals.CurrentIdentity);
            Rubric  rub   = args.SelectedRubric;

            ddlType.Items.Clear();
            ddlComments.Items.Clear();
            txtLines.Text = ""; txtCustom.Text = ""; txtPoints.Text = "";
            if (rubda.IsHeading(rub))
            {
                cmdCreate.Enabled = false;
            }
            else
            {
                CannedResponse.CannedResponseList cans = rubda.GetCannedResponses(rub.ID);
                foreach (CannedResponse can in cans)
                {
                    string canstr = can.Comment.Substring(0, Math.Min(80, can.Comment.Length));
                    if (canstr.Length == 80)
                    {
                        canstr += " ...";
                    }
                    ListItem item = new ListItem(canstr, can.ID.ToString());
                    ddlComments.Items.Add(item);
                }
                ddlComments.Items.Add(new ListItem("Custom", "-1"));
                cmdCreate.Enabled = true;

                ddlType.Items.Add(new ListItem("Error", Rubric.ERROR.ToString()));
                ddlType.Items.Add(new ListItem("Warning", Rubric.WARNING.ToString()));
                ddlType.Items.Add(new ListItem("Good", Rubric.GOOD.ToString()));
            }

            BindData(GetWindow());
        }
Esempio n. 21
0
        public void SynchronizePoints()
        {
            Courses     courseda = new Courses(m_ident);
            Assignments asstda   = new Assignments(m_ident);
            int         total    = 0;

            Course.CourseList courses = courseda.GetAll();
            foreach (Course course in courses)
            {
                Assignment.AssignmentList assts = courseda.GetAssignments(course.ID);
                foreach (Assignment asst in assts)
                {
                    Rubric            arub = asstda.GetRubric(asst.ID);
                    Rubric.RubricList rubs = Flatten(arub);
                    Components.Submission.SubmissionList subs = asstda.GetSubmissions(asst.ID);
                    foreach (Rubric rub in rubs)
                    {
                        foreach (Components.Submission sub in subs)
                        {
                            m_dp.UpdateRubricSubPoints(rub.ID, sub.ID);
                            total++;
                        }
                    }
                }
            }

            System.Diagnostics.Trace.WriteLine(total);
        }
Esempio n. 22
0
        //Create Rubric, Existing User and populating the grades
        public static void CreateGradeExistingUser()
        {
            using var context = new AppDbContext();
            var studentBId = context.Users.SingleOrDefault(key => key.Name == "Student B").UserId;
            var rubric1    = new Rubric()
            {
                IsChallenge = false, Criteria = "Use CSS", Weight = 1, HomeworkId = 1
            };
            var rubric2 = new Rubric()
            {
                IsChallenge = false, Criteria = "Use HTML", Weight = 2, HomeworkId = 1
            };


            var grade1 = new Grade()
            {
                Mark      = 0,
                Rubric    = rubric1,
                StudentId = studentBId
            };
            var grade2 = new Grade()
            {
                Mark      = 1,
                Rubric    = rubric2,
                StudentId = studentBId
            };

            context.Grades.Add(grade1); // will also add member1 and comment1
            context.Grades.Add(grade2); // will also add comment2

            context.SaveChanges();
        }
Esempio n. 23
0
        /// <summary>
        /// Returns a list of all courses in the database.
        /// </summary>
        /// <returns>The list of all courses in the database.</returns>
        public List <Course> getAllCourses()
        {
            var courses = new List <Course>();

            using (var dbConnection = DbConnection.DatabaseConnection())
            {
                dbConnection.Open();

                var query = "SELECT * " +
                            "FROM courses";
                using (var cmd = new MySqlCommand(query, dbConnection))
                {
                    using (var reader = cmd.ExecuteReader())
                    {
                        var idOrdinal              = reader.GetOrdinal("id");
                        var nameOrdinal            = reader.GetOrdinal("name");
                        var rubricOridnal          = reader.GetOrdinal("rubric");
                        var maxSeatsOrdianal       = reader.GetOrdinal("max_seats");
                        var remainingSeatsOrdianal = reader.GetOrdinal("remaining_seats");

                        var startTimeOrdinal  = reader.GetOrdinal("start_time");
                        var endTimeOrdinal    = reader.GetOrdinal("end_time");
                        var semesterIDOrdinal = reader.GetOrdinal("semester_id");
                        var locationOrdinal   = reader.GetOrdinal("location");
                        var roomNumberOrdinal = reader.GetOrdinal("room_number");
                        var daysOfWeekOrdinal = reader.GetOrdinal("day_of_week");

                        while (reader.Read())
                        {
                            var courseID = reader[idOrdinal] == DBNull.Value ? throw new Exception("Could not find course id.") : reader.GetInt32(idOrdinal);

                            Course course = new Course
                            {
                                ID   = courseID,
                                Name = reader[nameOrdinal] == DBNull.Value ? throw new Exception("Could not find course name.") : reader.GetString(nameOrdinal),
                                             Rubric         = new Rubric(JsonUtility.TryParseJson(reader.GetString(rubricOridnal))),
                                             RemainingSeats = reader[remainingSeatsOrdianal] == DBNull.Value ? throw new Exception("Could not get seats remaining.") : reader.GetInt32(remainingSeatsOrdianal),
                                                                    MaxSeats = reader[maxSeatsOrdianal] == DBNull.Value ? throw new Exception("Could not get max seats.") : reader.GetInt32(maxSeatsOrdianal),
                                                                                     StartTime = reader[startTimeOrdinal] == DBNull.Value ? throw new Exception("Could not get start time.") : reader.GetString(startTimeOrdinal),
                                                                                                       EndTime = reader[endTimeOrdinal] == DBNull.Value ? throw new Exception("Could not get end time.") : reader.GetString(endTimeOrdinal),
                                                                                                                       Location = reader[locationOrdinal] == DBNull.Value ? throw new Exception("Could not get location") : reader.GetString(locationOrdinal),
                                                                                                                                        RoomNumber = reader[roomNumberOrdinal] == DBNull.Value ? throw new Exception("Could not get room number.") : reader.GetInt32(roomNumberOrdinal),
                                                                                                                                                           SemesterID = reader[semesterIDOrdinal] == DBNull.Value ? throw new Exception("Could not get semester id") : reader.GetInt32(semesterIDOrdinal),
                                                                                                                                                                              DaysOfWeek = reader[daysOfWeekOrdinal] == DBNull.Value ? throw new Exception("Could not get days of week") : reader.GetString(daysOfWeekOrdinal)
                            };

                            courses.Add(course);
                        }
                    }
                }

                foreach (var course in courses)
                {
                    course.Prerequisites = this.getPrerequisites(course.ID, dbConnection);
                }
            }

            return(courses);
        }
        private void PictureImage_Initialized(object sender, EventArgs e)
        {
            Image PictureImage = sender as Image;

            Rubric rubric = PictureImage.DataContext as Rubric;

            InitializingTheImageSource((rubric.PictureDark ?? new Picture()).ImageSource, defaultDarkImageSource, imageFolder, PictureImage);
        }
        public Rubric AddRubric(Rubric rubric)
        {
            var query = Ninject.Get <InsertRubricQuery>();

            query.Rubric = rubric;
            query.Execute();
            return(rubric);
        }
        public Rubric DeleteRubric(Rubric rubric)
        {
            var query = Ninject.Get <DeleteRubricQuery>();

            query.Rubric = rubric;
            query.Execute();
            return(rubric);
        }
Esempio n. 27
0
        private void BindSubj(Rubric rub)
        {
            Result.ResultList ress =
                new Rubrics(Globals.CurrentIdentity).GetResults(rub.ID, GetCurrentSub());

            dgSubj.DataSource = ress;
            dgSubj.DataBind();
        }
Esempio n. 28
0
        private void BindSubj(Rubric rub)
        {
            Rubrics rubda = new Rubrics(Globals.CurrentIdentity);

            Result.ResultList ress = rubda.GetResults(rub.ID, GetSubID());

            //Update the rubric
            ucRubric.UpdateRubric();

            //Reset to 0 if page index greater than numpages
            if (dgResults.CurrentPageIndex >= dgResults.PageCount)
            {
                dgResults.CurrentPageIndex = 0;
            }

            dgResults.DataSource = ress;
            dgResults.DataBind();

            if (!IsStudent())
            {
                ddlCanned.Visible            = true;
                lnkCreate.Visible            = true;
                dgResults.Columns[0].Visible = true;
                dgResults.Columns[6].Visible = true;

                dgResults.Style["TOP"] = "58px";

                CannedResponse.CannedResponseList cans = rubda.GetCannedResponses(rub.ID);
                ddlCanned.Items.Clear();

                foreach (CannedResponse can in cans)
                {
                    string canstr = can.Comment.Substring(0, Math.Min(80, can.Comment.Length));
                    if (canstr.Length == 80)
                    {
                        canstr += " ...";
                    }
                    ListItem item = new ListItem(canstr, can.ID.ToString());

                    ddlCanned.Items.Add(item);
                }
                ddlCanned.Items.Add(new ListItem("Custom", "-1"));
            }
            else
            {
                ddlCanned.Visible            = false;
                lnkCreate.Visible            = false;
                dgResults.Columns[0].Visible = false;
                dgResults.Columns[6].Visible = false;

                lnkRefresh.Style["TOP"] = "0px";
                imgRefresh.Style["TOP"] = "0px";
                dgResults.Style["TOP"]  = "20px";
            }

            lblRubID.Text         = rub.ID.ToString();
            mpViews.SelectedIndex = 0;
        }
Esempio n. 29
0
 public RubricViewModel()
 {
     Rubric             = new Rubric();
     _MergedEvaluations = new List <RubricEvaluation>();
     Evaluation         = new RubricEvaluation();
     SelectedSection    = 0;
     Completed          = false;
     isMerged           = false;
 }
Esempio n. 30
0
        private void lstRubric_ItemClick(object sender, ItemClickEventArgs e)
        {
            prRubric.IsActive   = true;
            prRubric.Visibility = Visibility.Visible;
            Rubric         output  = e.ClickedItem as Rubric;
            TopicViewModel topicVM = new TopicViewModel(output);

            Frame.Navigate(typeof(TopicPage), topicVM);
        }
Esempio n. 31
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Rubric rubric = await db.Rubrics.FindAsync(id);

            db.Rubrics.Remove(rubric);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
 /// <summary>
 /// Constructeur d'un nouveau sujet
 /// </summary>
 /// <param name="id">Identifiant du sujet</param>
 /// <param name="title">Titre du sujet</param>
 /// <param name="description">Description du sujet</param>
 /// <param name="rubric">Identifiant de la rubrique</param>
 public ModelWSRSubject(int id, string title, string description, Rubric rubric)
 {
     this.Id     = id;
     this.Titre  = title;
     this.Desc   = description;
     this.Rubric = rubric;
     this.Posts  = new List <Post>();
     this.Date   = DateTime.Now;
 }
Esempio n. 33
0
        public void Update(Rubric rubric)
        {
            var rubricToUpdate = this.GetById(rubric.Id);

            rubricToUpdate.Name = rubric.Name;
            rubricToUpdate.Alias = rubric.Alias;
            rubricToUpdate.Title = rubric.Title;
            rubricToUpdate.Description = rubric.Description;
            rubricToUpdate.ParentId = rubric.ParentId;

            this.rubrics.Save();
        }
Esempio n. 34
0
        public IEnumerable<ReportBook> GetBooks(Rubric rubric = null, Publisher publisher = null, string search = "")
        {
            var books = Ninject.Get<GetReportBooksQuery>().Execute();

            if (rubric != null) {
                var rubrics = GetRubrics();
                var dictionary = rubrics.ToDictionary(r => r.Id);
                if (dictionary.ContainsKey(rubric.Id)) {
                    rubric = dictionary[rubric.Id];
                    books = from b in books
                            where b.Rubric.Id == rubric.Id || dictionary.ContainsKey(b.Rubric.Id) && Rubric.IsChildOf(rubrics, dictionary[b.Rubric.Id], rubric)
                            select b;
                }
            }
            books = publisher.Return(p => books.Where(b => b.Publisher.Id == p.Id), books);
            books = string.IsNullOrEmpty(search) ? books : from b in books
                                                           let s = search.ToLower()
                                                           where b.Name.ToLower().Contains(s) || (b.Annotation ?? string.Empty).ToLower().Contains(s)
                                                           select b;
            return books.ToArray();
        }
Esempio n. 35
0
        private bool IncorrectRubric(Rubric rubric)
        {
            bool isParentRubricExist = false;

            if (rubric.ParentId != null)
            {
                isParentRubricExist = !this.rubricService.GetAll().Any(x => x.Id != rubric.Id && x.Id == rubric.ParentId);
            }

            bool isParentRubricIdIsMyId = rubric.Id == rubric.ParentId;

            return isParentRubricExist || isParentRubricIdIsMyId;
        }
		//public string AppClient()
		//{
		//    if (Request.Url.Authority == "localhost")
		//        return Thinkgate.Base.Classes.AppSettings.FullyQualifiedLocalhostAppPath;
		//    else
		//        return Thinkgate.Base.Classes.AppSettings.FullyQualifiedAppPath;
		//}

        protected bool LoadRubric()
        {
            string sRubricID = Request.QueryString["xID"];
            if (sRubricID == null)
            {
                SessionObject.RedirectMessage = "No entity ID provided in URL.";
                Response.Redirect("~/PortalSelection.aspx", true);
                return false;
            }
            else
            {
                int _iRubricID = GetDecryptedEntityId(X_ID);
                _rubric = Base.Classes.Rubric.GetRubricByID(_iRubricID);

                if (_rubric == null)
                    return false;

                //RubricTitle.Text = _rubric.Name ?? string.Empty;

                txtName.Text = _rubric.Name;
                txtKeywords.Text = _rubric.Keywords;
                gradeDropdown.Text = _rubric.Grade;
                subjectDropdown.Text = _rubric.Subject;
                courseDropdown.Text = _rubric.Course;
                lblAuthor.Text = _rubric.CreatedByName;
                lblDistrict.Text = _rubric.SourceName;
                txtSource.Text = _rubric.Source;
                txtCredit.Text = _rubric.Credit;
                lblExpirationDate.Text = _rubric.CopyRightExpiryDate == null ? "No Expiration" : _rubric.CopyRightExpiryDate + " (mm/dd/yyyy)";
                lblDateCreated.Text = _rubric.DateCreated;
                lblDateUpdated.Text = _rubric.DateUpdated;
                if (_rubric.Copyright == "Yes")
                {
                    rbCopyRightYes.Checked = true;
                }
                else
                {
                    rbCopyRightNo.Checked = true;
                    trCredit.Style.Add("display", "none");
                    trSource.Style.Add("display", "none");
                    trExpiryDate.Style.Add("display", "none");
                }

                DistrictParms parms = DistrictParms.LoadDistrictParms();
                if (!parms.AllowCopyRightEditOnContentEditor)
                {
                    rbCopyRightNo.Enabled = false;
                    rbCopyRightYes.Enabled = false;
                }

                RubricItem.InnerHtml = Standpoint.Core.Classes.Encryption.EncryptString(_iRubricID.ToString());
                lblNamePreview.Text = _rubric.Name;
                lblTypePreview.Text = _rubric.TypeDesc;
                lblScoringPreview.Text = _rubric.Scoring;

                lblNameEdit.Text = _rubric.Name;

                lblTypeEdit.Text = _rubric.TypeDesc;
                lblScoringEdit.Text = _rubric.Scoring;

                if (_rubric.TypeDesc == "Analytical")
                {
                    IdentificationPanel_Scoring.Style["display"] = "none";
                    lblTypeEdit.Text += " " + _rubric.CriteriaCount.ToString() + " x " + _rubric.MaxPoints.ToString();

					PreviewPanel_Scoring.Style["display"] = "none";
					lblTypePreview.Text = lblTypeEdit.Text;
                }
                else
                {
                    IdentificationPanel_Scoring.Style["display"] = "inline";
					PreviewPanel_Scoring.Style["display"] = "inline";
                }

                txtPoints.Text = _rubric.MaxPoints.ToString();
                txtCriteria.Text = _rubric.CriteriaCount.ToString();

                lblCkEditorRubricDirections.Text = _rubric.Directions;
            	ContentEditor_Rubric_hdnRubricID.Value = _iRubricID.ToString();


                if (_rubric.Type == "A")
                {
                    trRubricScoring.Style.Add("display", "none");
                    trAnalyticalCriteriaPointsSelection.Style.Add("display", "");
                }

                var serializer = new JavaScriptSerializer();
                serializer.RegisterConverters(new JavaScriptConverter[] { new ToStringSerializer() });
                string renderItemsScript = "var RubricItemArray = []; RubricItemArray[0] = " + serializer.Serialize(_rubric.RubricItemsList) + ";";

                renderItemsScript += "renderData(RubricItemArray[0],'" + _rubric.Type + "');";

                ScriptManager.RegisterStartupScript(this, typeof(string), "RubricItemsScript", renderItemsScript, true);
                ScriptManager.RegisterStartupScript(this, typeof(string), "appClient", "var appClient = '" + AppClient() + "';", true);

                if (Request.QueryString["NewAndReturnType"] != null)
                {
                    string newAndReturnType = Request.QueryString["NewAndReturnType"].ToString();
                    if (newAndReturnType.Length > 0)
                    {
                        FinishAndReturn.Style.Add("display", "");
                        string sOnclick = "SendResultsToWindow();";
                        FinishAndReturn.Attributes.Add("onclick", sOnclick);
                    }
                }
                return true;
            }
        }
        private void AddRubric()
        {
            var newRubric = new Rubric {Name = NewRubricName};

            //mvm.dc.Entry(newRubric);
            //mvm.dc.SaveChanges();

            this.Rubrics.Add(newRubric);
        }
Esempio n. 38
0
        /// <summary>
        /// Import old DB data for Rubrics to new data structure for Rubrics
        /// </summary>
        /// <param name="file">file path</param>
        /// <returns>Collection of Rubric models ready for submit in DB</returns>
        public List<Rubric> ReadRubricsFromFile(string file)
        {
            var rubrics = new List<Rubric>();

            using (var input = new StreamReader(file))
            {
                string line = input.ReadLine();

                for (int i = 1; i <= 7; i++)
                {
                    var rubric = new Rubric();

                    if (line == null)
                    {
                        break;
                    }

                    var currentWords = line.Split(new[] { '@' }, StringSplitOptions.RemoveEmptyEntries);
                    var isBlank = currentWords[0] != i.ToString();

                    if (isBlank)
                    {
                        rubric.Name = EmptyDbRecord + i;
                        rubric.Alias = EmptyDbRecord + i;
                        rubric.IsDeleted = true;
                        rubric.DeletedOn = DateTime.Now;
                    }
                    else
                    {
                        rubric.Name = currentWords[1];
                        rubric.Alias = currentWords[4];
                        rubric.Title = currentWords[5];
                        rubric.Description = currentWords[6];

                        line = input.ReadLine();
                    }

                    rubrics.Add(rubric);
                }
            }

            return rubrics;
        }
        private void LoadRubric()
        {
            if (IsQueryStringMissingParameter(X_ID))
            {
                RedirectToPortalSelectionScreen();
            }
            else
            {
                _rubricId = GetDecryptedEntityId(X_ID);
                _rubricIdEncrypted = EntityIdEncrypted;

                if (!RecordExistsInCache(Key))
                {
                    _selectedRubric = Rubric.GetRubricByID(_rubricId);
                    if (_selectedRubric != null)
                        Base.Classes.Cache.Insert(Key, _selectedRubric);
                    else
                    {
                        SessionObject.RedirectMessage = "Could not find the Rubric.";
                        Response.Redirect("~/PortalSelection.aspx", true);
                    }
                }
                else _selectedRubric = (Rubric)Cache[Key];

                // Set the page title text.
                _rubricTitle = _selectedRubric.Name ?? string.Empty;

            }
        }
Esempio n. 40
0
 public void Add(Rubric rubric)
 {
     this.rubrics.Add(rubric);
     this.rubrics.Save();
 }
        public Rubric UpdateRubric(Rubric rubric)
        {
            var rubrics = GetRubrics();
            if (Rubric.IsChildOf(rubrics, rubric, rubric)) {
                throw new Exception("Обнаружена циклическая зависимость рубрик. Обновление рубрики невозможно");
            }

            var query = Ninject.Get<UpdateRubricQuery>();
            query.Rubric = rubric;
            query.Execute();
            return rubric;
        }
Esempio n. 42
0
 public void Delete(Rubric rubric)
 {
     this.rubrics.Delete(rubric);
     this.rubrics.Save();
 }