Exemplo n.º 1
0
        private void RenderByPage(HtmlTextWriter output)
        {
            int totalPages = 0;
            foreach(FamiliaCompetencias fam in modelo.Familias.Values)
            {
                totalPages += fam.Competencias.Count;
            }

            //a percentagem concluída é:
            double percent = (((float)currPage) / totalPages) * 100.0;

            // render the page
            horizBar bar = new horizBar();
            bar.Valor = (float)percent;
            bar.Text = percent.ToString("#") + "%";
            bar.Comprimento = Comprimento;
            bar.imgUrlDone = imgUrlDone;
            bar.imgUrlTodo = imgUrlTodo;
            bar.RenderControl(output);
        }
Exemplo n.º 2
0
        protected override void RenderContents(HtmlTextWriter output)
        {
            if (ContagemPaginas == 1)
                RenderByPage(output);
            else
            {

                int perguntasFeitas;
                int NumPerg = 0;
                if (modelo == null)
                    output.Write("Object out of Context!");

                String[] temp;
                String[] parValor;
                ModeloCompetencias mod;
                perguntasFeitas = 0;
                bool count = false;
                if (NumPerguntas <= 0)
                {
                    NumPerguntas = 0;
                    count = true;
                }

                foreach (Ticket t in ticketList)
                {
                    if (count)
                    {

                        if (HttpContext.Current.Session["FO_Model"] != null)
                            mod = HttpContext.Current.Session["FO_Model"] as ModeloCompetencias;
                        else
                        {
                            mod = ModeloCompetencias.getDBModelo(t.Projecto.owner, t.ModeloID);

                        }
                        if (!mod.FullLoad) mod.loadFull(t.Projecto.owner, t);
                        NumPerg = mod.getNumPaginas("Pergunta");
                        if (t.AA)
                        {
                            if (mod.ModelType.ToUpper().Trim() != "360_FLAT")
                            {
                                foreach (FamiliaCompetencias fam in mod.Familias.Values)
                                {
                                    foreach(Competencia comp in fam.Competencias.Values)
                                        if(comp.Criticalidade)
                                            NumPerg --;
                                }
                            }
                            // retirar a criticalidade
                        }
                        NumPerguntas += NumPerg;
                    }

                    temp = t.Resposta.Split(';');
                    foreach (String s in temp)
                    {
                        parValor = s.Split('=');
                        if (parValor[0].StartsWith("P") || parValor[0].StartsWith("C") || parValor[0].StartsWith("T"))
                            if (parValor[1] != "-1") perguntasFeitas++;
                    }
                }

                //a percentagem concluída é:
                double percent = (((float)perguntasFeitas) / NumPerguntas) * 100.0;

                if (percent > 100) percent = 100;
                // render the page
                horizBar bar = new horizBar();
                bar.Valor = (float)percent;
                bar.Text = percent.ToString("#") + "%";
                bar.Comprimento = Comprimento;
                bar.imgUrlDone = imgUrlDone;
                bar.imgUrlTodo = imgUrlTodo;
                bar.RenderControl(output);
            }
        }