private void LoadQuestionFromXml(string FileName)
        {
            resultQuestions      = null;
            groupBox1.GroupTitle = FileName;
            if (Utility.IsAdmin())
            {
                FileName = Application.StartupPath + Utility.FolderType() + @"QuestionBank\" + FileName + ".txt";
            }
            else
            {
                FileName = Application.StartupPath + Utility.FolderType() + @"QuestionPaper\" + FileName + ".txt";
            }


            if (File.Exists(FileName))
            {
                resultQuestions = ObjectXMLSerializer <QuestionDetailData> .Load(FileName);

                resultQuestions.objQuestionDetail = (from QuestionDetailData in resultQuestions.objQuestionDetail
                                                     where (QuestionDetailData.ModuleName == Utility.MOD_ALL || QuestionDetailData.ModuleName == Utility.MOD_MOCK_TST)
                                                     select QuestionDetailData).ToList();

                resultQuestionsFltr = ObjectXMLSerializer <QuestionDetailData> .Load(FileName);

                resultQuestionsFltr.objQuestionDetail = (from QuestionDetailData in resultQuestionsFltr.objQuestionDetail
                                                         where (QuestionDetailData.ModuleName == Utility.MOD_ALL || QuestionDetailData.ModuleName == Utility.MOD_MOCK_TST)
                                                         select QuestionDetailData).ToList();
            }
            //Apply Filter
            if (resultQuestionsFltr != null && resultQuestionsFltr.objQuestionDetail.Count() > 0)
            {
                //QUestion Type
                // resultQuestionsFltr = resultQuestions;
                //   if (comboBox1.Text == "" && comboBox2.Text == "")
                //   resultQuestionsFltr.objQuestionDetail.Clear();

                if (comboBox1.Text != "ALL")
                {
                    resultQuestionsFltr.objQuestionDetail =
                        (from QuestionDetail in resultQuestionsFltr.objQuestionDetail
                         where QuestionDetail.AnswerType == comboBox1.Text
                         select QuestionDetail).ToList();
                }

                //Question Complexity
                if (comboBox2.Text != "ALL")
                {
                    resultQuestionsFltr.objQuestionDetail =
                        (from QuestionDetail in resultQuestionsFltr.objQuestionDetail
                         where QuestionDetail.Complexity.ToLower() == comboBox2.Text.ToLower()
                         select QuestionDetail).ToList();
                }
            }
            Utility.XML_FILE_NAME = FileName;

            //resultQuestions = ObjectXMLSerializer<QuestionDetailData>.Load(XML_FILE_NAME);
        }
示例#2
0
        void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex == 6)
            {
                if (DialogResult.Yes == MessageBox.Show("Are you sure to delete from list?", "Delete", MessageBoxButtons.YesNo))
                {
                    File.Delete(objQuestionManagementColl.objQuestionManagement[e.RowIndex].FileName);
                    objQuestionManagementColl.objQuestionManagement.RemoveAt(e.RowIndex);
                    ObjectXMLSerializer <QuestionManagementColl> .Save(objQuestionManagementColl, Application.StartupPath + Utility.FolderType() + @"QuestionPaper\QuestionInfo.txt");

                    LoadTextData();
                }
            }
            else if (e.ColumnIndex > 1 && (e.ColumnIndex < 6))
            {
                QuestionDetailData objQuestions = ObjectXMLSerializer <QuestionDetailData> .Load(objQuestionManagementColl.objQuestionManagement[e.RowIndex].FileName);

                FrmQuestionsDisplay obj = new FrmQuestionsDisplay();
                //obj.resultQuestions.objQuestionDetail.Clear();
                obj.resultQuestions.objQuestionDetail = objQuestions.objQuestionDetail;
                obj.strSubject    = objQuestionManagementColl.objQuestionManagement[e.RowIndex].Subject;
                obj.strQuestTopic = objQuestionManagementColl.objQuestionManagement[e.RowIndex].QuestionTopic;
                if (e.ColumnIndex == 2)
                {
                    obj.printAnswer   = false;
                    obj.printQuestion = true;
                }
                else if (e.ColumnIndex == 3)
                {
                    obj.printAnswer   = true;
                    obj.printQuestion = true;
                }
                else if (e.ColumnIndex == 4)
                {
                    obj.printAnswer   = true;
                    obj.printQuestion = false;
                }
                else if (e.ColumnIndex == 5)
                {
                    obj.printAnswer   = false;
                    obj.printQuestion = false;
                }
                obj.ShowDialog();
            }
        }
示例#3
0
        private void button2_Click_1(object sender, EventArgs e)
        {
            if (isTreeSecondLevel())
            {
                bool isRecFnd = false;
                int  i        = 0;

                //Question append

                int noOfQuesUsed = Convert.ToInt16(KnowledgeMatrix.Properties.Settings.Default.eTutorQuestions);

                QuestionDetailData objQuestionDetailData = ObjectXMLSerializer <QuestionDetailData> .Load(Application.StartupPath + Utility.FolderType() + @"QuestionBank\" + treeView1.SelectedNode.Parent.Parent.Text + ".txt");

                objQuestionDetailData.objQuestionDetail = (from QuestionDetailData in objQuestionDetailData.objQuestionDetail
                                                           where QuestionDetailData.QuesNo == Convert.ToInt32(treeView1.SelectedNode.Tag)
                                                           select QuestionDetailData).ToList();

                QuestionPaper obj = new QuestionPaper();
                List <int>    questionConsidered = obj.GetListUses(noOfQuesUsed, objQuestionDetailData.objQuestionDetail.Count());

                QuestionDetailData objQuestionDetailData1 = new QuestionDetailData();
                for (int l = 0; l < questionConsidered.Count; l++)
                {
                    objQuestionDetailData1.objQuestionDetail.Add(objQuestionDetailData.objQuestionDetail[questionConsidered[l]]);
                }



                if (objeTutorCollData != null)
                {
                    // objeTutorCollData = new eTutorCollData();
                    //ObjectXMLSerializer<eTutorCollData>.Save(objeTutorCollData, treeView1.SelectedNode.Parent.Parent.Text + ".txt");

                    for (i = 0; i < objeTutorCollData.eTutorlst.Count(); i++)
                    {
                        if (objeTutorCollData.eTutorlst[i].QuesNo == Convert.ToInt32(treeView1.SelectedNode.Tag))
                        {
                            isRecFnd = true;
                            objeTutorCollData.eTutorlst[i].Summary            = exRichTextBox1.Rtf;
                            objeTutorCollData.eTutorlst[i].Description        = exRichTextBox2.Rtf;
                            objeTutorCollData.eTutorlst[i].QuestionDetailData = objQuestionDetailData1;
                        }
                    }
                }
                if (!isRecFnd)
                {
                    objeTutorCollData = ObjectXMLSerializer <eTutorCollData> .Load(Application.StartupPath + Utility.FolderType() + @"eTutor\" + treeView1.SelectedNode.Parent.Parent.Text + ".txt");

                    eTutorMast objeTutorMast = new eTutorMast();
                    objeTutorMast.Summary            = exRichTextBox1.Rtf;
                    objeTutorMast.Description        = exRichTextBox2.Rtf;
                    objeTutorMast.QuesNo             = Convert.ToInt32(treeView1.SelectedNode.Tag);
                    objeTutorMast.QuestionDetailData = objQuestionDetailData1;
                    objeTutorCollData.eTutorlst.Add(objeTutorMast);
                }



                ObjectXMLSerializer <eTutorCollData> .Save(objeTutorCollData, Application.StartupPath + Utility.FolderType() + @"eTutor\" + treeView1.SelectedNode.Parent.Parent.Text + ".txt");

                MessageBox.Show("Data Saved!!!");
                treeView1_AfterSelect(null, null);
            }
        }
        private void button3_Click(object sender, EventArgs e)
        {
            // MessageBox.Show(getParent[RowIndex].Name);
            string FileName = Application.StartupPath + @"\" + getParent[RowIndex].Name + ".txt";


            /*List<QuestionDetail> navQuestions;
             * navQuestions = new List<QuestionDetail>();
             * resultQuestions = ObjectXMLSerializer<QuestionDetailData>.Load(XML_QUESTION_NAME);
             * getFirstChild =
             *   (from QuestionMast in result.objQuestionMas
             *    where QuestionMast.ParentQuestionNo == Convert.ToInt16(getParent[RowIndex].QuesNo)
             *    select QuestionMast).ToList();
             * for (int childCnt = 0; childCnt < getFirstChild.Count; childCnt++)
             * {
             *     strindex = (getFirstChild[childCnt].QuesNo);
             *     obj = (from QuestionDetail in resultQuestions.objQuestionDetail
             *            where QuestionDetail.QuesNo == strindex
             *            select QuestionDetail).ToList();
             *     //MessageBox.Show(node.Tag.ToString());
             *     foreach (QuestionDetail objj in obj)
             *         navQuestions.Add(objj);
             *
             *     //TreeNode childtreeNode = new TreeNode(getFirstChild[childCnt].Name);
             *     //childtreeNode.Tag = getFirstChild[childCnt].QuesNo.ToString();
             *     //childtreeNode.ImageIndex = selectedCustomerImageIndex;
             *     //childtreeNode.SelectedImageIndex = 3;
             *
             *     //treeNode.Nodes.Add(childtreeNode);
             *
             *     //Add the Subchild
             *     getSecondChild =
             * (from QuestionMast in result.objQuestionMas
             * where QuestionMast.ParentQuestionNo == getFirstChild[childCnt].QuesNo
             * select QuestionMast).ToList();
             *     for (int childSecondCnt = 0; childSecondCnt < getSecondChild.Count; childSecondCnt++)
             *     {
             *         strindex = (getSecondChild[childSecondCnt].QuesNo);
             *         obj = (from QuestionDetail in resultQuestions.objQuestionDetail
             *                where QuestionDetail.QuesNo == strindex
             *                select QuestionDetail).ToList();
             *         //MessageBox.Show(node.Tag.ToString());
             *         foreach (QuestionDetail objj in obj)
             *             navQuestions.Add(objj);
             *     }
             * }
             */
            // QuestionDetailData resultQuestions=ObjectXMLSerializer<QuestionDetailData>.Load( FileName);
            QuestionDetailData obj1 = ObjectXMLSerializer <QuestionDetailData> .Load(FileName);

            //  obj1.objQuestionDetail = resultQuestions;


            ObjectXMLSerializer <QuestionDetailData> .Save(obj1, "NewDoc.txt");

            string text = System.IO.File.ReadAllText(@"NewDoc.txt");

            System.IO.File.Delete(@"NewDoc.txt");
            FileCryptography.entropy = null;

            folderBrowserDialog1.Description = @"Select the folder to Export file";
            DialogResult re = folderBrowserDialog1.ShowDialog();

            if (DialogResult.OK == re)
            {
                if (File.Exists(folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + @"QB.txt"))
                {
                    System.IO.File.Delete(folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + @"_QB.txt");
                }


                FileCryptography.DoEncrypt(text, folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + @"_QB.txt", textBox1.Text);
                //FileCryptography.entropy = null;
                //FileCryptography.DoDecrypt("NewDocEnc.xml", null);
                //string decryptedData = FileCryptography.decryptedData;
                AuditPurchase(getParent[RowIndex].Name, "Question Bank");
                MessageBox.Show("Data Exported to " + folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + @"_QB.txt");
            }
        }
        void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            RowIndex = e.RowIndex;
            #region admin related
            if (e.ColumnIndex > 0 && Utility.IsAdmin())
            {
                if (string.IsNullOrWhiteSpace(textBox1.Text))
                {
                    MessageBox.Show("Please choose Client before to proceed");
                    return;
                }
                folderBrowserDialog1.Description = @"Select the folder to Export file";
                DialogResult re = new DialogResult();
                if (Utility.isStandard())
                {
                    re = folderBrowserDialog1.ShowDialog();
                }

                //eTutor
                //   if (e.ColumnIndex == 1)
                //{
                //    string FileName = Application.StartupPath + @"\" + getParent[RowIndex].Name + ".txt";

                //}

                //Admin with Question Bank and Question Paper
                if (e.ColumnIndex == 2 || e.ColumnIndex == 3 || e.ColumnIndex == 1)
                {
                    string FileName;
                    string text;
                    if (e.ColumnIndex == 1)
                    {
                        FileName = Application.StartupPath + Utility.FolderType() + @"eTutor\" + getParent[RowIndex].Name + ".txt";
                        text     = System.IO.File.ReadAllText(FileName);
                    }
                    else
                    {
                        FileName = Application.StartupPath + Utility.FolderType() + @"QuestionBank\" + getParent[RowIndex].Name + ".txt";

                        QuestionDetailData obj1 = ObjectXMLSerializer <QuestionDetailData> .Load(FileName);

                        // ObjectXMLSerializer<QuestionDetailData>.Save(obj1, "NewDoc111.txt");
                        if (e.ColumnIndex == 2)
                        {
                            obj1.objQuestionDetail = (from QuestionDetailData in obj1.objQuestionDetail
                                                      where (QuestionDetailData.ModuleName == Utility.MOD_ALL || QuestionDetailData.ModuleName == Utility.MOD_QUEST_BANK)
                                                      select QuestionDetailData).ToList();
                            obj1.QuestionType = "QUESTION BANK";
                        }
                        else
                        {
                            obj1.QuestionType = "QUESTION PAPER";
                        }


                        ObjectXMLSerializer <QuestionDetailData> .Save(obj1, "NewDoc.txt");

                        text = System.IO.File.ReadAllText(@"NewDoc.txt");
                        System.IO.File.Delete(@"NewDoc.txt");
                    }
                    FileCryptography.entropy = null;


                    string extn = "";;
                    if (e.ColumnIndex == 2)
                    {
                        extn = @"_QB.txt";
                    }
                    else if (e.ColumnIndex == 3)
                    {
                        extn = @"_QP.txt";
                    }
                    else if (e.ColumnIndex == 1)
                    {
                        extn = @"_eTutor.txt";
                    }

                    if (!Utility.isStandard() || DialogResult.OK == re)
                    {
                        string strDestFile = null;
                        if (Utility.isStandard())
                        {
                            strDestFile = folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + "_" + textBox1.Text + extn;
                        }
                        else
                        {
                            if (e.ColumnIndex == 2)
                            {
                                strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\QuestionBank\" + getParent[RowIndex].Name + "_" + textBox1.Text + extn;
                            }
                            else if (e.ColumnIndex == 3)
                            {
                                strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\QuestionPaper\" + getParent[RowIndex].Name + "_" + textBox1.Text + extn;
                            }
                            else if (e.ColumnIndex == 1)
                            {
                                strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\eTutor\" + getParent[RowIndex].Name + "_" + textBox1.Text + extn;
                            }
                        }

                        if (File.Exists(folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + extn))
                        {
                            System.IO.File.Delete(folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + extn);
                        }


                        //FileCryptography.DoEncrypt(text, strDestFile, textBox1.Text);
                        FileCryptography.DoEncrypt(text, strDestFile, textBox1.Tag.ToString());
                        if (e.ColumnIndex == 2)
                        {
                            AuditPurchase(getParent[RowIndex].Name, "Km- Knowledge Base");
                        }
                        else if (e.ColumnIndex == 3)
                        {
                            AuditPurchase(getParent[RowIndex].Name, "Km-Knowledge Assessment");
                        }
                        else if (e.ColumnIndex == 1)
                        {
                            AuditPurchase(getParent[RowIndex].Name, "Km-Knowledge eTutor");
                        }
                        MessageBox.Show("Data Exported to " + strDestFile);
                    }
                }
                else if (e.ColumnIndex == 4)
                {
                    //Mock Test
                    QuestionManagementColl         objQuestionManagementColl = null;
                    QuestionDetailData             resultQuestions;
                    QuestionManagementWithQuesColl objQuestionManagementWithQuesColl;
                    objQuestionManagementWithQuesColl = new QuestionManagementWithQuesColl();
                    if (File.Exists(Application.StartupPath + Utility.FolderType() + @"MockTest\MockTestList.txt"))
                    {
                        objQuestionManagementColl = ObjectXMLSerializer <QuestionManagementColl> .Load(Application.StartupPath + Utility.FolderType() + @"MockTest\MockTestList.txt");
                    }

                    if (objQuestionManagementColl != null)
                    {
                        for (int i = 0; i < objQuestionManagementColl.objQuestionManagement.Count; i++)
                        {
                            if (objQuestionManagementColl.objQuestionManagement[i].QuestionTopic == getParent[RowIndex].Name)
                            {
                                QuestionManagementWithQues objQuestionManagement = new QuestionManagementWithQues();
                                objQuestionManagement.ExamName = objQuestionManagementColl.objQuestionManagement[i].ExamName;
                                objQuestionManagement.ExamPasPercentageScore = objQuestionManagementColl.objQuestionManagement[i].ExamPasPercentageScore;
                                objQuestionManagement.ExamMode           = objQuestionManagementColl.objQuestionManagement[i].ExamMode;
                                objQuestionManagement.QuestionComplexity = objQuestionManagementColl.objQuestionManagement[i].QuestionComplexity;
                                objQuestionManagement.QuestionType       = objQuestionManagementColl.objQuestionManagement[i].QuestionType;
                                objQuestionManagement.TotalQuestions     = objQuestionManagementColl.objQuestionManagement[i].TotalQuestions;
                                objQuestionManagement.FileName           = objQuestionManagementColl.objQuestionManagement[i].FileName;
                                objQuestionManagement.QuestionTopic      = objQuestionManagementColl.objQuestionManagement[i].QuestionTopic;
                                objQuestionManagement.Subject            = objQuestionManagementColl.objQuestionManagement[i].Subject;
                                objQuestionManagement.TestStatus         = objQuestionManagementColl.objQuestionManagement[i].TestStatus;
                                objQuestionManagement.TestResult         = objQuestionManagementColl.objQuestionManagement[i].TestResult;
                                objQuestionManagement.TestTime           = objQuestionManagementColl.objQuestionManagement[i].TestTime;
                                if (File.Exists(objQuestionManagementColl.objQuestionManagement[i].FileName))
                                {
                                    resultQuestions = ObjectXMLSerializer <QuestionDetailData> .Load(objQuestionManagementColl.objQuestionManagement[i].FileName);

                                    objQuestionManagement.objQuestionDetail = new List <QuestionDetail>();
                                    objQuestionManagement.objQuestionDetail.AddRange(resultQuestions.objQuestionDetail);
                                }
                                objQuestionManagementWithQuesColl.objQuestionManagement.Add(objQuestionManagement);
                            }
                            //objQuestionManagementWithQuesColl.objQuestionManagement[].objQuestionDetail.Add(
                        }
                        if (!Utility.isStandard() || DialogResult.OK == re)
                        {
                            ObjectXMLSerializer <QuestionManagementWithQuesColl> .Save(objQuestionManagementWithQuesColl, "NewDoc.txt");

                            string text = System.IO.File.ReadAllText(@"NewDoc.txt");
                            System.IO.File.Delete(@"NewDoc.txt");
                            FileCryptography.entropy = null;

                            string strMockFileName = null;
                            if (Utility.isStandard())
                            {
                                strMockFileName = folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + "_" + textBox1.Text + "_Mock.txt";
                            }
                            else
                            {
                                strMockFileName = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\" + @"MockTest\" + getParent[RowIndex].Name + "_" + textBox1.Text + "_Mock.txt";
                            }
                            if (File.Exists(strMockFileName))
                            {
                                System.IO.File.Delete(strMockFileName);
                            }

                            // FileCryptography.DoEncrypt(text, strMockFileName, textBox1.Text);
                            FileCryptography.DoEncrypt(text, strMockFileName, textBox1.Tag.ToString());
                            AuditPurchase(getParent[RowIndex].Name, "Km-Knowledge Evaluator");
                            MessageBox.Show("Data Exported to " + strMockFileName);

                            // ObjectXMLSerializer<QuestionManagementWithQuesColl>.Save(objQuestionManagementWithQuesColl, folderBrowserDialog1.SelectedPath + @"\" + getParent[RowIndex].Name + "_Mock.txt");
                        }
                    }

                    // FileName = Application.StartupPath + @"\" + FileName + ".txt";
                }
            }

            #endregion
            else if (e.ColumnIndex > 0)
            {
                // MessageBox.Show(dataGridView1.Columns[e.ColumnIndex].Name);
                if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank" || dataGridView1.Columns[e.ColumnIndex].Name == "QuestionPaper" || dataGridView1.Columns[e.ColumnIndex].Name == "eTutor")
                {
                    string strDestFile = null;



                    DataGridViewDisableButtonCell buttonCell;
                    if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank")
                    {
                        buttonCell =
                            (DataGridViewDisableButtonCell)dataGridView1.
                            Rows[e.RowIndex].Cells["QuestionBank"];
                        if (!Utility.isStandard())
                        {
                            strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\QuestionBank\" + getParent[RowIndex].Name + "_" + EntropyGenerator.GetIPForMachine() + @"_QB.txt";
                        }
                    }
                    else if (dataGridView1.Columns[e.ColumnIndex].Name == "eTutor")
                    {
                        buttonCell =
                            (DataGridViewDisableButtonCell)dataGridView1.
                            Rows[e.RowIndex].Cells["eTutor"];
                        if (!Utility.isStandard())
                        {
                            strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\eTutor\" + getParent[RowIndex].Name + "_" + EntropyGenerator.GetIPForMachine() + @"_eTutor.txt";
                        }
                    }
                    else
                    {
                        buttonCell =
                            (DataGridViewDisableButtonCell)dataGridView1.
                            Rows[e.RowIndex].Cells["QuestionPaper"];
                        if (!Utility.isStandard())
                        {
                            strDestFile = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\QuestionPaper\" + getParent[RowIndex].Name + "_" + EntropyGenerator.GetIPForMachine() + @"_QP.txt";
                        }
                    }


                    //if (dataGridView1.Rows[e.RowIndex].Cells["QuestionBank"].Value.ToString() == "Purchase")
                    if (buttonCell.Value.ToString() == "Purchase")
                    {
                        //DataGridViewDisableButtonCell buttonCell =
                        //    (DataGridViewDisableButtonCell)dataGridView1.
                        //    Rows[e.RowIndex].Cells["QuestionBank"];

                        //Check whether we can open the file
                        //OpenFileDialog objFile = new OpenFileDialog();

                        //DialogResult resultdia = objFile.ShowDialog(); // Show the dialog.
                        //if (resultdia == DialogResult.OK) // Test result.
                        //{
                        //    string file = objFile.FileName;
                        //    FileCryptography.DoDecrypt(file, null);
                        //    string decryptedData = FileCryptography.decryptedData;
                        //    if (string.IsNullOrEmpty(decryptedData))
                        //    {
                        //        MessageBox.Show("File is invalid");
                        //    }
                        //    else
                        string decryptedData = ValidateImport(strDestFile);
                        if (decryptedData != null)
                        {
                            QuestionDetailData result1   = new QuestionDetailData();
                            eTutorCollData     objetutor = new eTutorCollData();
                            try
                            {
                                string FileName = null;
                                if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank")
                                {
                                    FileName = Application.StartupPath + Utility.FolderType() + @"QuestionBank\" + getParent[e.RowIndex].Name + ".txt";
                                }
                                else if (dataGridView1.Columns[e.ColumnIndex].Name == "eTutor")
                                {
                                    FileName = Application.StartupPath + Utility.FolderType() + @"eTutor\" + getParent[e.RowIndex].Name + ".txt";
                                }
                                else
                                {
                                    FileName = Application.StartupPath + Utility.FolderType() + @"QuestionPaper\" + getParent[e.RowIndex].Name + ".txt";
                                }

                                if (File.Exists(FileName))
                                {
                                    File.Delete(FileName);
                                }

                                FileCryptography.encryptedData = decryptedData;
                                FileCryptography.FileName      = FileName;
                                FileCryptography.entropy       = UnicodeEncoding.ASCII.GetBytes(KnowledgeMatrix.Properties.Settings.Default.ProductKey);
                                FileCryptography.DoEncrypt();

                                if (dataGridView1.Columns[e.ColumnIndex].Name == "eTutor")
                                {
                                    objetutor = ObjectXMLSerializer <eTutorCollData> .Load(FileName);

                                    if (objetutor == null && objetutor.eTutorlst.Count() == 0)
                                    {
                                        MessageBox.Show("No data available to import. Please contact Sales team");
                                        return;
                                    }
                                }
                                else if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank" || dataGridView1.Columns[e.ColumnIndex].Name == "QuestionPaper")
                                {
                                    result1 = ObjectXMLSerializer <QuestionDetailData> .Load(FileName);

                                    bool isValid = true;

                                    if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank" && result1.QuestionType != "QUESTION BANK")
                                    {
                                        isValid = false;
                                    }
                                    else if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionPaper" && result1.QuestionType != "QUESTION PAPER")
                                    {
                                        isValid = false;
                                    }

                                    else if (result1 == null && result1.objQuestionDetail.Count() == 0)
                                    {
                                        isValid = false;
                                    }
                                    if (!isValid)
                                    {
                                        File.Delete(FileName);
                                        MessageBox.Show("No data available to import. Please contact Sales team");
                                        return;
                                    }
                                }

                                {
                                    //ObjectXMLSerializer<QuestionDetailData>.Save(result1, FileName);

                                    MessageBox.Show("Data imported Successfully");
                                    buttonCell.Value = "Purchased";


                                    buttonCell.Enabled = false;

                                    //Update the Product Catalog
                                    int idx = result.objQuestionMas.FindIndex(
                                        delegate(QuestionMast bk)
                                    {
                                        return(bk.QuesNo == getParent[e.RowIndex].QuesNo);
                                    }
                                        );
                                    if (dataGridView1.Columns[e.ColumnIndex].Name == "QuestionBank")
                                    {
                                        result.objQuestionMas[idx].QuesBank = "Purchased";
                                    }
                                    else if (dataGridView1.Columns[e.ColumnIndex].Name == "eTutor")
                                    {
                                        result.objQuestionMas[idx].eTutor = "Purchased";
                                    }
                                    else
                                    {
                                        result.objQuestionMas[idx].QuesBankGen = "Purchased";
                                    }
                                    result.objQuestionMas[idx].QuesBankDate = System.DateTime.Now.ToString();

                                    ObjectXMLSerializer <QuestionsData> .Save(result, KnowledgeMatrix.Framework.Utility.XML_QUESTION_NAME);

                                    //  FileCryptography.encryptedData = File.ReadAllText(XML_FILE_NAME1);
                                    // FileCryptography.FileName = KnowledgeMatrix.Framework.Utility.XML_QUESTION_NAME;
                                    //FileCryptography.DoEncrypt();
                                    //File.Delete(XML_FILE_NAME1);
                                    //Update the Product Catalog
                                }
                            }
                            catch (Exception ex)
                            {
                                LogEntry.WriteLog(ex, "Thread Exception");
                                MessageBox.Show("File incorrect. Please contact Sales team");
                            }
                        }

                        //}
                    }
                    else if (dataGridView1.Rows[e.RowIndex].Cells["QuestionBank"].Value.ToString() == "Purchased" || dataGridView1.Rows[e.RowIndex].Cells["QuestionPaper"].Value.ToString() == "Purchased")
                    {
                        LicenseDetail obj = new LicenseDetail();
                        int           idx = result.objQuestionMas.FindIndex(
                            delegate(QuestionMast bk)
                        {
                            return(bk.QuesNo == getParent[e.RowIndex].QuesNo);
                        }
                            );


                        obj.objLicenseDetail.ProductName    = result.objQuestionMas[idx].Name;
                        obj.objLicenseDetail.ProductType    = dataGridView1.Columns[e.ColumnIndex].HeaderText;
                        obj.objLicenseDetail.DateOfPurchase = result.objQuestionMas[idx].QuesBankDate;
                        obj.objLicenseDetail.DateOfExpiry   = Convert.ToDateTime(result.objQuestionMas[idx].QuesBankDate).AddDays(365).ToString();
                        obj.ShowDialog();
                    }
                }
                else if (dataGridView1.Columns[e.ColumnIndex].Name == "MockTest")
                {
                    DataGridViewDisableButtonCell buttonCell = (DataGridViewDisableButtonCell)dataGridView1.Rows[e.RowIndex].Cells["MockTest"];
                    //NEW REQ
                    if (buttonCell.Value.ToString() != "Purchases")
                    {
                        string strMockFileName = null;
                        if (!Utility.isStandard())
                        {
                            strMockFileName = KnowledgeMatrix.Properties.Settings.Default.SharePath + @"\" + @"MockTest\" + getParent[RowIndex].Name + "_" + EntropyGenerator.GetIPForMachine() + "_Mock.txt";
                        }


                        string decryptedData = ValidateImport(strMockFileName);
                        if (decryptedData != null)
                        {
                            string FileName = Application.StartupPath + Utility.FolderType() + @"MockTest\MockList" + ".txt";
                            if (File.Exists(FileName))
                            {
                                File.Delete(FileName);
                            }

                            FileCryptography.encryptedData = decryptedData;
                            FileCryptography.FileName      = FileName;
                            FileCryptography.entropy       = UnicodeEncoding.ASCII.GetBytes(KnowledgeMatrix.Properties.Settings.Default.ProductKey);
                            FileCryptography.DoEncrypt();
                            QuestionManagementWithQuesColl result1 = ObjectXMLSerializer <QuestionManagementWithQuesColl> .Load(FileName);

                            if (result1 == null || result1.objQuestionManagement.Count() == 0)
                            {
                                File.Delete(FileName);
                                MessageBox.Show("No data available to import. Please contact Sales team");
                            }
                            else
                            {
                                FileName = Application.StartupPath + Utility.FolderType() + @"MockTest\MockTestList.txt";

                                QuestionManagementColl objQuestionManagementColl;
                                if (File.Exists(FileName))
                                {
                                    objQuestionManagementColl = ObjectXMLSerializer <QuestionManagementColl> .Load(FileName);
                                }
                                else
                                {
                                    objQuestionManagementColl = new QuestionManagementColl();
                                    objQuestionManagementColl.objQuestionManagement = new List <QuestionManagement>();
                                }
                                for (int ik = 0; ik < result1.objQuestionManagement.Count(); ik++)
                                {
                                    int i = (from QuestionManagement in objQuestionManagementColl.objQuestionManagement
                                             where QuestionManagement.ExamName == result1.objQuestionManagement[ik].ExamName
                                             select QuestionManagement).ToList().Count();

                                    if (i == 0)
                                    {
                                        QuestionManagement objQuestionManagement = new QuestionManagement();// =(QuestionManagement) result1.objQuestionManagement[ik];
                                        objQuestionManagement.ExamName = result1.objQuestionManagement[ik].ExamName;
                                        objQuestionManagement.ExamPasPercentageScore = result1.objQuestionManagement[ik].ExamPasPercentageScore;
                                        objQuestionManagement.TestTime           = result1.objQuestionManagement[ik].TestTime;
                                        objQuestionManagement.ExamMode           = result1.objQuestionManagement[ik].ExamMode;
                                        objQuestionManagement.QuestionComplexity = result1.objQuestionManagement[ik].QuestionComplexity;
                                        objQuestionManagement.QuestionType       = result1.objQuestionManagement[ik].QuestionType;
                                        objQuestionManagement.TotalQuestions     = result1.objQuestionManagement[ik].TotalQuestions;
                                        objQuestionManagement.TestTime           = result1.objQuestionManagement[ik].TestTime;

                                        QuestionDetailData objQuestions = new QuestionDetailData();
                                        objQuestions.objQuestionDetail = new List <QuestionDetail>();
                                        objQuestions.objQuestionDetail.AddRange(result1.objQuestionManagement[ik].objQuestionDetail);
                                        if (File.Exists(XML_FILE_NAME1))
                                        {
                                            File.Delete(XML_FILE_NAME1);
                                        }

                                        ObjectXMLSerializer <QuestionDetailData> .Save(objQuestions, Application.StartupPath + Utility.FolderType() + @"MockTest\" + result1.objQuestionManagement[ik].ExamName + ".txt");

                                        //FileCryptography.encryptedData = File.ReadAllText(XML_FILE_NAME1);
                                        //FileCryptography.FileName = Application.StartupPath + @"\QuestionPaper\" + result1.objQuestionManagement[ik].ExamName + ".txt";
                                        //FileCryptography.DoEncrypt();
                                        //File.Delete(XML_FILE_NAME1);

                                        //ObjectXMLSerializer<QuestionDetailData>.Save(objQuestions, Application.StartupPath + @"\QuestionPaper\" + result1.objQuestionManagement[ik].ExamName + ".txt");

                                        objQuestionManagement.FileName      = Application.StartupPath + Utility.FolderType() + @"MockTest\" + result1.objQuestionManagement[ik].ExamName + ".txt";
                                        objQuestionManagement.QuestionTopic = result1.objQuestionManagement[ik].QuestionTopic;
                                        objQuestionManagement.Subject       = result1.objQuestionManagement[ik].Subject;
                                        objQuestionManagement.TestStatus    = result1.objQuestionManagement[ik].TestStatus;
                                        objQuestionManagement.TestResult    = result1.objQuestionManagement[ik].TestResult;
                                        objQuestionManagement.MockTestDate  = System.DateTime.Now.ToString();
                                        objQuestionManagementColl.objQuestionManagement.Add(objQuestionManagement);
                                    }
                                }

                                if (File.Exists(FileName))
                                {
                                    File.Delete(FileName);
                                }

                                ObjectXMLSerializer <QuestionManagementColl> .Save(objQuestionManagementColl, FileName);

                                buttonCell.Value = "Purchased";


                                buttonCell.Enabled = false;

                                //Update the Product Catalog
                                int idx = result.objQuestionMas.FindIndex(
                                    delegate(QuestionMast bk)
                                {
                                    return(bk.QuesNo == getParent[e.RowIndex].QuesNo);
                                }
                                    );

                                result.objQuestionMas[idx].MockTest     = "Purchased";
                                result.objQuestionMas[idx].QuesBankDate = System.DateTime.Now.ToString();

                                ObjectXMLSerializer <QuestionsData> .Save(result, KnowledgeMatrix.Framework.Utility.XML_QUESTION_NAME);


                                //FileCryptography.encryptedData = File.ReadAllText(XML_FILE_NAME1);
                                //FileCryptography.FileName = FileName;
                                //FileCryptography.DoEncrypt();
                                //File.Delete(XML_FILE_NAME1);

                                //ObjectXMLSerializer<QuestionManagementColl>.Save(objQuestionManagementColl, FileName);

                                MessageBox.Show("Data imported Successfully");
                            }
                        }
                    }
                    else
                    {
                        LicenseDetail obj = new LicenseDetail();
                        int           idx = result.objQuestionMas.FindIndex(
                            delegate(QuestionMast bk)
                        {
                            return(bk.QuesNo == getParent[e.RowIndex].QuesNo);
                        }
                            );


                        obj.objLicenseDetail.ProductName    = result.objQuestionMas[idx].Name;
                        obj.objLicenseDetail.ProductType    = dataGridView1.Columns[e.ColumnIndex].HeaderText;
                        obj.objLicenseDetail.DateOfPurchase = result.objQuestionMas[idx].QuesBankDate;
                        obj.objLicenseDetail.DateOfExpiry   = Convert.ToDateTime(result.objQuestionMas[idx].QuesBankDate).AddDays(365).ToString();
                        obj.ShowDialog();
                    }
                }
            }
        }