Exemplo n.º 1
0
 public void Create(QuestionVM model)
 {
     _unitOfWork.Questions.Create(new Question {
         Text = model.Text, Score = model.Score, TestId = model.TestId
     });
     _unitOfWork.Save();
 }
Exemplo n.º 2
0
 public void Update(QuestionVM model)
 {
     _unitOfWork.Questions.Update(new Question {
         QuestionId = model.QuestionId, Text = model.Text, Score = model.Score, TestId = model.TestId
     });
     _unitOfWork.Save();
 }
Exemplo n.º 3
0
        public ActionResult Edit([Bind(Include = "Id,QuestionTypeId,Name,MultipleAnswer")] QuestionVM questionVM)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    QuestionDTO questionDTO = Mapper.Map <QuestionDTO>(questionVM);
                    QuestionService.Update(questionDTO);
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ModelState.AddModelError(null, "Что-то пошло не так. Не удалось сохранить изменения.");
                }

                ViewBag.QuestionTypeId = GetQuestionTypeIdSelectList(questionVM.QuestionTypeId);

                return(View(questionVM));
            }
            catch (UniqueConstraintException ex)
            {
                return(Json(new
                {
                    hasError = true,
                    data = ex.Message
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 4
0
        public ActionResult Create([Bind(Include = "QuestionTypeId,Name,MultipleAnswer")] QuestionVM questionVM)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    QuestionDTO questionDTO = Mapper.Map <QuestionDTO>(questionVM);
                    //int questionId = QuestionService.AddAndGetId(questionDTO);
                    QuestionService.Add(questionDTO);
                    return(RedirectToAction("Index"));
                }

                ViewBag.QuestionTypeId = GetQuestionTypeIdSelectList(questionVM.QuestionTypeId);

                return(View(questionVM));
            }
            catch (UniqueConstraintException ex)
            {
                return(Json(new
                {
                    hasError = true,
                    data = ex.Message
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 5
0
        public static DataTemplate SelectTemplate(QuestionVM question)
        {
            string typeCode     = question != null ? question.ResponseTypeCode : null;
            string resourceName = GetResponseResourceName(typeCode);

            return((DataTemplate)Application.Current.Resources[resourceName]);
        }
Exemplo n.º 6
0
        /// <summary>
        /// Creates a GDS compliant Question with label, help text and error messages
        /// </summary>
        /// <param name="helper">The HTML Class</param>
        /// <param name="question">The QuestionVM class</param>
        /// <param name="htmlAttributes">Any additional attributes to apply to the questions.</param>
        /// <returns>Returns the HTML for GDS compliant questions</returns>
        public static IHtmlContent GdsQuestion(this IHtmlHelper helper, QuestionVM question, object htmlAttributes = null)
        {
            IHtmlContent content;

            switch (question.InputType)
            {
            case "textbox":
                content = BuildTextBox(question);
                break;

            case "textarea":
                content = BuildTextArea(question);
                break;

            case "optionlist":
                content = BuildOptionList(question);
                break;

            case "selectlist":
                content = BuildSelectList(question);
                break;

            case "checkboxlist":
                content = BuildCheckboxList(question);
                break;

            default:
                content = BuildInfoPage(question);
                break;
            }

            return(new HtmlString(content.ToString()));
        }
Exemplo n.º 7
0
        public QuestionVM Get(int id)
        {
            QuestionVM  QuestionVM = new QuestionVM();
            QuestionDTO QuestionDTO;

            using (ApplicationDbContext db = new ApplicationDbContext())
            {
                QuestionDTO = db.Questions.Find(id);
                if (QuestionDTO == null)
                {
                    return(null);
                }
                int             qId = QuestionDTO.Id;
                List <AnswerVM> ans = db.Answers.Where(x => x.QuestionId == qId)
                                      .ToArray().Select(y => new AnswerVM(y)).ToList();
                foreach (AnswerVM temp in ans)
                {
                    string          ansuserId = temp.userId;
                    ApplicationUser ansUser   = db.Users.FirstOrDefault(x => x.Id == ansuserId);
                    temp.username = ansUser.UserName;
                }
                QuestionVM = new QuestionVM(QuestionDTO);
                string          userId      = QuestionDTO.starterId;
                ApplicationUser currentUser = db.Users.FirstOrDefault(x => x.Id == userId);

                QuestionVM.username    = currentUser.UserName;
                QuestionVM.answers     = ans;
                QuestionVM.answarcount = ans.Count();
            }
            return(QuestionVM);
        }
        // PUT api/<controller>/5
        public IHttpActionResult Put(QuestionVM questionVM)
        {
            using (var ctx = new MyContext())
            {
                var existing = ctx.Questions.Where(s => s.QuestionID == questionVM.QuestionID)
                               .FirstOrDefault <Question>();

                if (existing != null)
                {
                    existing.Text       = questionVM.Text;
                    existing.IDQuiz     = questionVM.IDQuiz;
                    existing.CorrectOpt = questionVM.CorrectOpt;
                    existing.Opt1       = questionVM.Opt1;
                    existing.Opt2       = questionVM.Opt2;
                    existing.Opt3       = questionVM.Opt3;
                    existing.Opt4       = questionVM.Opt4;
                    ctx.SaveChanges();
                }
                else
                {
                    return(NotFound());
                }
            }
            return(Ok());
        }
Exemplo n.º 9
0
        public List <QuestionVM> Get()
        {
            List <QuestionVM>  QuestionVMList = new List <QuestionVM>();
            List <QuestionDTO> QuestionDTOList;

            using (ApplicationDbContext db = new ApplicationDbContext())
            {
                QuestionDTOList = db.Questions
                                  .ToArray()
                                  .ToList();
                for (int i = 0; i < QuestionDTOList.Count; i++)
                {
                    int qId      = QuestionDTOList[i].Id;
                    int anscount = db.Answers.Where(x => x.QuestionId == qId)
                                   .ToArray().Count();

                    QuestionVM      temp        = new QuestionVM(QuestionDTOList[i]);
                    string          userId      = QuestionDTOList[i].starterId;
                    ApplicationUser currentUser = (new ApplicationDbContext()).Users.FirstOrDefault(x => x.Id == userId);

                    temp.username    = currentUser.UserName;
                    temp.answarcount = anscount;
                    //temp.answers=ans;
                    QuestionVMList.Add(temp);
                }
            }
            return(QuestionVMList);
        }
Exemplo n.º 10
0
        public IActionResult Create(QuestionVM vm)
        {
            if (ModelState.IsValid)
            {
                Question q = new Question
                {
                    QuestionName  = vm.QuestionName,
                    AnswerA       = vm.AnswerA,
                    AnswerB       = vm.AnswerB,
                    AnswerD       = vm.AnswerD,
                    AsnwerC       = vm.AnswerC,
                    CorrectAnswer = vm.CorrectVariant,
                    Point         = vm.Point
                };
                context.Questions.Add(q);

                var isSave = context.SaveChanges();
                if (isSave > 0)
                {
                    return(RedirectToAction("Index", "Home"));
                }
                throw new Exception("Database ex");
            }

            return(View());
        }
Exemplo n.º 11
0
        public bool suggestQuestion(QuestionVM newQuestion)
        {
            int    categoryid = newQuestion.categoryId;
            string category   = Entity.db.Categories.FirstOrDefault(c => c.categoryId == categoryid).ToString();
            string htmlText   = @"
                    <head> 
                        <style> 
                            body{background-color:cadetblue;direction:rtl;text-align:center;}
                            h1,h3,p{font-size:20px; text-align:center;color:blue;}
                        </style>
                    </head>
                    <body>";

            htmlText += "<h1>מנהל המאגר היקר  </h1><p>" + "הרי לפניך הצעת שאלה חדשה למאגר השאלות </p>" + "<h3>נושא השאלה :</h3>" + category + "<br/>" + "<h3>" + newQuestion.questionDescription + "</h3><br>";
            List <Answer> answers = Entity.db.Answers.Where(a => a.questionId == newQuestion.questionId).ToList();
            int           num     = 0;

            foreach (var item in answers)
            {
                htmlText += "<h4>תשובה   <p>" + ++num + item.answerDescription + " </p></h4>";
            }

            //htmlText += " <img src='cid:G:/ל סיון/C#IDEAL/GUI/UploadFile/.JPG'></body>";
            Class1.SendEmail(htmlText, "הצעת שאלה חדשה  ");

            return(true);
        }
Exemplo n.º 12
0
        public IHttpActionResult addNewQuestion(QuestionVM question)
        {
            var prinicpal = (ClaimsPrincipal)Thread.CurrentPrincipal;
            var userId    = int.Parse(prinicpal.Claims.Where(c => c.Type == "UserId").Select(c => c.Value).SingleOrDefault().ToString());

            return(Ok(QuestionModule.CreateQuestion(question, userId)));
        }
Exemplo n.º 13
0
        // GET: Questions/Delete/5
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var question = await _context.Questions
                           .FirstOrDefaultAsync(m => m.Id == id);

            if (question == null)
            {
                return(NotFound());
            }

            QuestionVM qViewModel = new QuestionVM();

            qViewModel.QuestionId    = question.Id;
            qViewModel.Question      = question.Text;
            qViewModel.CorrectAnswer = question.CorrectAnswer;
            qViewModel.Subject       = question.Subject.Name;

            Alternative[] alternatives = question.Alternatives.ToArray();
            qViewModel.AlternativeA = alternatives[0].Text;
            qViewModel.AlternativeB = alternatives[1].Text;
            qViewModel.AlternativeC = alternatives[2].Text;
            qViewModel.AlternativeD = alternatives[3].Text;
            qViewModel.AlternativeE = alternatives[4].Text;

            ViewBag.Subjects = _context.Subjects.Select(s => new SelectListItem()
            {
                Selected = (s.Id == question.Subject.Id), Text = s.Name, Value = s.Name
            }).ToList();
            return(View(qViewModel));
        }
Exemplo n.º 14
0
        public ActionResult QuizzView()
        {
            int selectedMode = (int)Session["SelectedMode"];

            Random     rand     = new Random();
            int        toSkip   = rand.Next(0, dbContext.Questions.Count());
            var        tmpQ     = dbContext.Questions.OrderBy(x => x.QuestionID).Skip(toSkip).Take(1).First();
            QuestionVM question = new QuestionVM()
            {
                QuestionID   = tmpQ.QuestionID,
                QuestionText = tmpQ.QuestionText,
                Anwser       = tmpQ.Answer,
                Choices      = new List <ChoiceVM>()
            };

            foreach (var c in tmpQ.Choices)
            {
                question.Choices.Add(new ChoiceVM()
                {
                    ChoiceID = c.ChoiceID, ChoiceText = c.ChoiceText
                });
            }

            return(View(question));
        }
Exemplo n.º 15
0
        // GET: Question/Edit/5
        public async Task <ActionResult> Edit(int questionId)
        {
            try
            {
                Question q = await ws.GetProductAsyncByPath(path + questionId);

                QuestionVM b = new QuestionVM();

                b.questionId  = q.questionId;
                b.question    = q.question;
                b.prop1       = q.prop1;
                b.prop2       = q.prop2;
                b.prop3       = q.prop3;
                b.prop4       = q.prop4;
                b.response    = q.response;
                b.description = q.description;

                //Question u = await ws.UpdateProductAsync(b);
                return(View(b));
            }
            catch
            {
                return(View());
            }
        }
Exemplo n.º 16
0
 public void OnRemoveQuestion(QuestionVM question)
 {
     foreach (QuestionGroupVM questionGroup in QuestionGroups)
     {
         questionGroup.Questions.Remove(question);
     }
 }
Exemplo n.º 17
0
 //processing when a question is deleted
 public void OnRemoveQuestion(QuestionVM question)
 {
     foreach (ControlConstructSchemeVM controlConstructScheme in controlConstructSchemes)
     {
         controlConstructScheme.RemoveQuestion(question);
     }
 }
        public IActionResult QuestionRealtime_Codebehind(string quidAndUserType, LanguagePreference languagePreference)
        {
            if (HttpContext.Session.GetString("ControlNumber") == null)
            {
                return(RedirectToAction("Login", "ShareholderVoting"));
            }

            var builder = new ConfigurationBuilder()
                          .SetBasePath(Directory.GetCurrentDirectory())
                          .AddJsonFile("appsettings.json");

            IConfigurationRoot Configuration = builder.Build();

            string quid     = quidAndUserType.Split('|')[0].ToString();
            string UserType = quidAndUserType.Split('|')[1].ToString();

            List <Question> questions  = _blockchainContext.questions;
            var             question   = questions.FirstOrDefault(q => q.quid == quid);
            QuestionVM      questionVM = new QuestionVM();

            questionVM.quid = quid;
            questionVM.text = question.text;
            questionVM.blockchainExplorerUrl = Configuration["blockchainExplorerUrl"].ToString();
            questionVM.smartContractAddress  = _blockchainContext.ContractAddress;

            ViewBag.UserType = UserType;

            return(View(questionVM));
        }
Exemplo n.º 19
0
        public ActionResult DeleteQuestionConfirmed(int id)
        {
            QuestionVM question = questionService.GetQuestion(id);

            questionService.RemoveQuestion(id);
            return(RedirectToAction("Index"));
        }
Exemplo n.º 20
0
        public ActionResult EditQuestion(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            QuestionVM question = questionService.GetQuestion(id);

            if (question == null)
            {
                return(HttpNotFound());
            }

            EditQuestionVM questionToEdit = new EditQuestionVM();

            questionToEdit.question = question;

            var categories = questionService.GetAllCategories();
            var qTypes     = questionService.GetAllQuestionTypes();

            questionToEdit.Categories = categories.Select(d => new SelectListItem
            {
                Value = d.categoryID.ToString(),
                Text  = d.categoryName
            });

            questionToEdit.questionTypes = qTypes.Select(d => new SelectListItem
            {
                Value = d.questionTypeID.ToString(),
                Text  = d.typeName
            });

            return(View(questionToEdit));
        }
Exemplo n.º 21
0
        public ActionResult LoadQuestionForm(int questionId)
        {
            IQuestionFacade questionFacade = FacadeFactory.Instance.Create <IQuestionFacade>();

            QuestionVM questionVM = null;

            if (questionId != -1)
            {
                var questionDTOResult = questionFacade.GetQuestionById(questionId);

                if (questionDTOResult.IsValid())
                {
                    questionVM                 = new QuestionVM();
                    questionVM.QuestionId      = questionDTOResult.Data.QuestionId;
                    questionVM.Text            = questionDTOResult.Data.Text;
                    questionVM.Marks           = questionDTOResult.Data.Marks;
                    questionVM.QuestionPaperNo = questionDTOResult.Data.QuestionPaperNo;
                }
                else
                {
                    return(new RedirectResult("Error/"));
                }
            }
            else
            {
                questionVM                 = new QuestionVM();
                questionVM.QuestionId      = -1;
                questionVM.Text            = "";
                questionVM.Marks           = 1;
                questionVM.QuestionPaperNo = 1;
            }


            return(PartialView(questionVM));
        }
Exemplo n.º 22
0
        private Table CreateFreeResponseOfTextbox(QuestionVM question)
        {
            ResponseVM   response   = question.Response;
            FreeLayoutVM freeLayout = (FreeLayoutVM)response.Layout;

            //Create table with border
            int realRowCount    = GetRealRowCount(freeLayout.RowCount);
            int realColumnCount = GetRealColumnCount(freeLayout.ColumnCount);

            Table table = CreateDefaultTable();

            TableRow tableRow = new TableRow();

            table.Append(tableRow);

            //Create one cell
            int       cellWidth = CalcBoxCellWidth(realColumnCount);
            TableCell tableCell = CreateBorderCell(cellWidth);

            tableRow.Append(tableCell);
            for (int r = 0; r < realRowCount - 1; r++) //reduce one row because of the one that has been added
            {
                //The paragraph in the number of the number of lines in it
                tableCell.Append(CreateEmptyParagraph());
            }
            return(table);
        }
Exemplo n.º 23
0
        public static StatisticsInfo CreateDummyChoicesMultiAnswerStatisticsInfo(CodebookVariable codebookVariable)
        {
            Debug.Assert(codebookVariable.IsTypeChoicesMultipleAnswer);
            Debug.Assert(codebookVariable.Question != null);

            QuestionVM question = codebookVariable.Question;
            ObservableCollection <CodeVM> codes     = question.Response.Codes;
            List <VariableVM>             variables = codebookVariable.Variables;

            List <CategoryInfo> categoryInfos = new List <CategoryInfo>();

            for (int i = 0; i < variables.Count; i++)
            {
                if (i >= codes.Count)
                {
                    break;
                }
                VariableVM variable = variables[i];
                CodeVM     code     = codes[i];

                CategoryInfo categoryInfo = new CategoryInfo();
                categoryInfo.VariableTitle = variable.Title;
                categoryInfo.CodeValue     = code.Value;
                categoryInfo.CategoryTitle = code.Label;
                categoryInfos.Add(categoryInfo);
            }

            StatisticsInfo statisticsInfo = new StatisticsInfo();

            statisticsInfo.QuestionId     = question.Id;
            statisticsInfo.StatisticsType = StatisticsTypes.ChoicesMultipleAnswer;
            statisticsInfo.CategoryInfos  = categoryInfos;
            return(statisticsInfo);
        }
Exemplo n.º 24
0
        // GET: Questions/Details/5
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var question = await _context.Questions
                           .FirstOrDefaultAsync(m => m.Id == id);

            if (question == null)
            {
                return(NotFound());
            }

            Alternative[] alternatives = question.Alternatives.ToArray();

            QuestionVM qViewModel = new QuestionVM();

            qViewModel.QuestionId    = question.Id;
            qViewModel.Question      = question.Text;
            qViewModel.CorrectAnswer = question.CorrectAnswer;
            qViewModel.Subject       = question.Subject.Name;
            qViewModel.AlternativeA  = alternatives[0].Text;
            qViewModel.AlternativeB  = alternatives[1].Text;
            qViewModel.AlternativeC  = alternatives[2].Text;
            qViewModel.AlternativeD  = alternatives[3].Text;
            qViewModel.AlternativeE  = alternatives[4].Text;

            return(View(qViewModel));
        }
Exemplo n.º 25
0
        public ActionResult Details(int id)
        {
            IPaperFacade paperFacade = FacadeFactory.Instance.Create <IPaperFacade>();

            PaperDetailsVM paperDetails = null;

            var questionsOfPaper = paperFacade.GetQuestionsOfPaper(id);
            var paper            = paperFacade.GetPaperById(id);

            if (paper.IsValid() && questionsOfPaper.IsValid())
            {
                paperDetails             = new PaperDetailsVM();
                paperDetails.PaperId     = id;
                paperDetails.Name        = paper.Data.Name;
                paperDetails.Description = paper.Data.Description;
                paperDetails.Duration    = paper.Data.Duration;
                paperDetails.Questions   = new List <QuestionVM>();
                foreach (var question in questionsOfPaper.Data)
                {
                    QuestionVM questionVM = new QuestionVM();
                    questionVM.QuestionId      = question.QuestionId;
                    questionVM.Text            = question.Text;
                    questionVM.Marks           = question.Marks;
                    questionVM.QuestionPaperNo = id;

                    paperDetails.Questions.Add(questionVM);
                }
            }
            return(View(paperDetails));
        }
Exemplo n.º 26
0
        public static QuestionVM ToVM(IQuestion iThis)
        {
            var rVM = new QuestionVM();

            Mapper.Map(iThis, rVM);
            return(rVM);
        }
Exemplo n.º 27
0
        private void CreateVariableInfos()
        {
            variableInfos.Clear();
            ObservableCollection <VariableVM> variables = StudyUnit.Variables;

            foreach (VariableVM variable in variables)
            {
                VariableInfoVM variableInfo = new VariableInfoVM(variable.Variable);
                variableInfos.Add(variableInfo);
                ConceptVM concept = StudyUnit.FindConcept(variable.ConceptId);
                if (concept != null)
                {
                    variableInfo.ConceptTitle = concept.Title;
                }
                QuestionVM question = StudyUnit.FindQuestion(variable.QuestionId);
                if (question != null)
                {
                    variableInfo.QuestionTitle = question.Content;
                }
                UniverseVM universe = StudyUnit.FindUniverse(variable.UniverseId);
                if (universe != null)
                {
                    variableInfo.UniverseTitle = universe.Title;
                }
                variableInfo.VariableType = Options.FindResponseTypeLabel(variable.ResponseTypeCode);
            }
            selectedVariableInfoItem = null;
        }
Exemplo n.º 28
0
        public ActionResult Add(QuestionVM model)
        {
            if (ModelState.IsValid)
            {
                Question question;
                if (model.Id > 0)
                {
                    question = quesRepo.GetByIDs(model.Id);
                }
                else
                {
                    question = new Question();
                }
                question.CreatedDate = DateTime.UtcNow;
                question.TrainerID   = (int)Session["UserID"];
                question.A           = model.A;
                question.B           = model.B;
                question.C           = model.C;
                question.D           = model.D;
                question.E           = model.E;
                question.RightAnswer = model.RightAnswer;
                //question.Type = model.Type;
                question.SubjectID = model.SubjectID;
                question.Content   = model.Content;
                //question.UserID = Convert.ToInt32(Session["UserID"]);
                question.Deleted = false;

                if (model.IsUpdate)
                {
                    if (quesRepo.Edit(question))
                    {
                        ViewBag.Update  = true;
                        ViewBag.Message = true;
                    }
                    else
                    {
                        ViewBag.Message = false;
                    }
                }
                else
                {
                    if (quesRepo.Add(question))
                    {
                        ViewBag.Update  = false;
                        ViewBag.Message = true;
                    }
                    else
                    {
                        ViewBag.Message = false;
                    }
                }
            }
            else
            {
                return(Add(0));
            }
            model = null;
            return(Add(0));
        }
Exemplo n.º 29
0
        public void Init()
        {
            List <string> ids = controlConstructScheme.Sequence.ControlConstructIds;

            foreach (string id in ids)
            {
                QuestionConstruct questionConstructModel = controlConstructScheme.FindQuestionConstruct(id);
                if (questionConstructModel != null)
                {
                    QuestionVM question = StudyUnit.FindQuestion(questionConstructModel.QuestionId);
                    Debug.Assert(question != null, "Question not found id=" + questionConstructModel.QuestionId);
                    QuestionConstructVM questionConstruct = new QuestionConstructVM(questionConstructModel, question);
                    InitConstruct(questionConstruct);
                    constructModels.Add(questionConstructModel);
                    constructs.Add(questionConstruct);
                    continue;
                }
                QuestionGroupConstruct questionGroupConstructModel = controlConstructScheme.FindQuestionGroupConstruct(id);
                if (questionGroupConstructModel != null)
                {
                    QuestionGroupVM          questionGroup          = StudyUnit.FindQuestionGroup(questionGroupConstructModel.QuestionGroupId);
                    QuestionGroupConstructVM questionGroupConstruct = new QuestionGroupConstructVM(questionGroupConstructModel, questionGroup);
                    InitConstruct(questionGroupConstruct);
                    constructModels.Add(questionGroupConstructModel);
                    constructs.Add(questionGroupConstruct);
                    continue;
                }
                Statement statementModel = controlConstructScheme.FindStatement(id);
                if (statementModel != null)
                {
                    StatementVM statement = new StatementVM(statementModel);
                    InitConstruct(statement);
                    constructModels.Add(statementModel);
                    constructs.Add(statement);
                    continue;
                }
                IfThenElse ifThenElseModel = controlConstructScheme.FindIfThenElse(id);
                if (ifThenElseModel != null)
                {
                    IfThenElseVM ifThenElse = new IfThenElseVM(ifThenElseModel);
                    InitConstruct(ifThenElse);
                    constructModels.Add(ifThenElseModel);
                    constructs.Add(ifThenElse);
                }
            }

            List <QuestionConstructVM> questionConstructs = QuestionConstructs;

            foreach (ConstructVM construct in constructs)
            {
                if (construct is IfThenElseVM)
                {
                    IfThenElseVM ifThenElse = (IfThenElseVM)construct;
                    ifThenElse.ThenConstructs = ThenConstructs;
                }
            }
            modelSyncher = new ModelSyncher <ConstructVM, IConstruct>(this, constructs, constructModels);
            InitTitle();
        }
Exemplo n.º 30
0
 public void OnRemoveQuestion(QuestionVM question)
 {
     //Memorize should not be called in the method below, because it will be called after this process.
     variableForm.OnRemoveQuestion(question);
     sequenceForm.OnRemoveQuestion(question);
     bookForm.OnRemoveQuestion(question);
     questionGroupForm.OnRemoveQuestion(question);
 }
 private void ConvertBiteArrayToImage(QuestionVM qvm, int i)
 {
     if (qvm.Images[i].Image.Length != 0)
     {
         var image = new BitmapImage();
         using (var mem = new MemoryStream(qvm.Images[i].Image))
         {
             mem.Position = 0;
             image.BeginInit();
             image.CreateOptions = BitmapCreateOptions.PreservePixelFormat;
             image.CacheOption = BitmapCacheOption.OnLoad;
             image.UriSource = null;
             image.StreamSource = mem;
             image.EndInit();
         }
         image.Freeze();
         AddImageToEditPanel(null, image);
     }
 }
        private QuestionVM ConvertModelToVM(QuestionModel Question)
        {
            if (Question == null) return null;

            QuestionVM qvm = new QuestionVM();
            qvm.QID = Question.QID;
            qvm.QBody = Question.QBody;
            if (qvm.QBody.Length > 40)
            {
                qvm.QHeader = qvm.QBody.Substring(0, 40) + "...";
            }
            else qvm.QHeader = qvm.QBody;

            qvm.HasImages = Question.HasImages;
            qvm.Answers = new ObservableCollection<AnswersVM>();
            for (int j = 0; j < Question.Answers.Count; j++)
            {
                AnswersVM a = new AnswersVM();
                a.AID = Question.Answers[j].AID;
                a.QID = Question.Answers[j].QID;
                a.AnswerBody = Question.Answers[j].AnswerBody;
                a.IsCorrectAnswer = Question.Answers[j].IsCorrectAnswer;
                qvm.Answers.Add(a);
            }
            qvm.Images = new ObservableCollection<ImageModel>();
            for (int j = 0; j < Question.Images.Count; j++)
            {
                qvm.Images.Add(Question.Images[j]);
            }

            return qvm;
        }