public List <string> GetAnswers(FAQsModel fAQsModel, FAQsHandler faqsHandler, string categoria)
        {
            linesFaqs   = faqsHandler.FileInformation(1, fAQsModel);
            linesNumCat = faqsHandler.FileInformation(2, fAQsModel);
            List <string> answers = new List <string>();
            int           i       = 0;
            int           iNumCat = 0;

            if (linesFaqs.Count() > 0)
            {
                while (i < linesFaqs.Count() && iNumCat < linesNumCat.Count() && iNumCat < linesNumCat.Count())
                {
                    if (i >= Int32.Parse(linesNumCat[iNumCat]))
                    {
                        iNumCat++;
                    }
                    if (linesFaqs[i] == categoria && iNumCat < linesNumCat.Count())
                    {
                        i = i + 2;
                        while (i < Int32.Parse(linesNumCat[iNumCat]))
                        {
                            answers.Add(linesFaqs[i]);
                            i = i + 2;
                        }
                    }
                    else
                    {
                        i++;
                    }
                }
            }
            return(answers);
        }
        public List <string> GetCategories(FAQsModel fAQsModel, FAQsHandler faqsHandler)
        {
            linesFaqs   = faqsHandler.FileInformation(1, fAQsModel);
            linesNumCat = faqsHandler.FileInformation(2, fAQsModel);
            List <string> categories = new List <string>();
            int           i          = 0;
            int           iCat       = 0;

            foreach (string line in linesFaqs)
            {
                if (i == 0)
                {
                    categories.Add(line);
                }
                else
                {
                    if (i == Int32.Parse(linesNumCat[iCat]))
                    {
                        categories.Add(line);
                        iCat++;
                    }
                    else
                    {
                    }
                }
                i++;
            }
            return(categories);
        }
        public int Agregar(FAQsModel faqsModel, FAQsHandler faqsHandler, string categoria, string pregunta, string respuesta)
        {
            int error = 0;

            linesFaqs   = faqsHandler.FileInformation(1, faqsModel);
            linesNumCat = faqsHandler.FileInformation(2, faqsModel);
            //El miembro debe de haber llenado todos los campos para modificar FAQs
            if ((categoria != "" && pregunta != "" && respuesta != "") && (categoria != null && pregunta != null && respuesta != null))
            {
                error = RevisarPreguntaRepetida(categoria, pregunta, respuesta);
                if (error != 2)
                {
                    //Se busca si la categoria existía previamente(1)
                    int categoryFound = SearchCategory(linesFaqs, categoria);
                    allLines = linesFaqs.Count();
                    //Se le da a newLinesFaqs un tamaño adecuado para poder aguantar la introducción de las nuevas líneas
                    newLinesFaqs = new String[allLines + 3];
                    // contador de la catidad de nuevas líneas que va a tener el archivo Faqs.txt actualizado
                    int totNewLines = 0;
                    totNewLines = UpdateNewLines(categoryFound, totNewLines, pregunta, respuesta);
                    //Se actualiza NumCat.txt

                    if (linesNumCat.Count() != 0)
                    {
                        faqsHandler.WriteAllLines(2, linesNumCat, faqsModel);
                    }
                    //Se revisa si hay que agregar una nueva categoría junto con la pregunta y respuesta
                    AddNewCategory(totNewLines, categoryFound, faqsModel, faqsHandler, categoria, pregunta, respuesta);
                    if (linesNumCat.Count() != 0)
                    {
                        //Se actualiza FAQs.txt

                        faqsHandler.WriteAllLines(1, newLinesFaqs, faqsModel);
                    }
                }
            }
            else
            {
                error = 1;
            }
            return(error);
        }
        public int Borrar(FAQsModel faqsModel, FAQsHandler faqsHandler, string categoria, string pregunta, string respuesta)
        {
            int error = 0;

            linesFaqs   = faqsHandler.FileInformation(1, faqsModel);
            linesNumCat = faqsHandler.FileInformation(2, faqsModel);
            //El miembro debe de haber llenado todos los campos para modificar FAQs
            if ((categoria != "" && pregunta != "" && respuesta != "") && (categoria != null && pregunta != null && respuesta != null))
            {
                if (RevisarPreguntaRepetida(categoria, pregunta, respuesta) == 0)
                {
                    error = 3;
                }

                if (error != 3)
                {
                    //Se busca si la categoria existía previamente(1)
                    //int categoryFound = SearchCategory(linesFaqs,categoria);
                    allLines = linesFaqs.Count();
                    //Se le da a newLinesFaqs un tamaño adecuado para poder aguantar la introducción de las nuevas líneas
                    newLinesFaqs = new String[allLines];

                    newLinesNumCat    = new String[linesNumCat.Count()];
                    newLinesNumCat[0] = "";
                    // contador de la catidad de nuevas líneas que va a tener el archivo Faqs.txt actualizado
                    BorrarQYA(faqsModel, faqsHandler, categoria, pregunta, respuesta);
                    //Se actualiza NumCat.txt
                    faqsHandler.WriteAllLines(2, newLinesNumCat, faqsModel);
                    //Se actualiza FAQs.txt
                    faqsHandler.WriteAllLines(1, newLinesFaqs, faqsModel);
                }
            }
            else
            {
                error = 1;
            }
            return(error);
        }