public function indexAction(Request $request)
 {
     $dateRange = new StatsDateRange();
     $dateRange->setFromRequest($request);
     $repositoryBuilder = new VisitorSessionRanTreeVersionRepositoryBuilder();
     $repositoryBuilder->setDateRange($dateRange);
     $doctrine = $this->getDoctrine()->getManager();
     $treeRepo = $doctrine->getRepository('QuestionKeyBundle:VisitorSessionRanTreeVersion');
     $sessions = $treeRepo->findByBuilder($repositoryBuilder);
     return $this->render('QuestionKeyBundle:AdminVisitorSessionRanTreeVersionList:index.html.twig', array('dateRange' => $dateRange, 'sessionRanTreeVersions' => $sessions));
 }
 public function statsSeriesAction($treeId, Request $request)
 {
     $doctrine = $this->getDoctrine()->getManager();
     $tsrtvRepo = $doctrine->getRepository('QuestionKeyBundle:VisitorSessionRanTreeVersion');
     // build
     $this->build($treeId);
     //data
     $statsDateRange = new StatsDateRange();
     $statsDateRange->setFromRequest($request);
     $statsDateRangeListBuilder = new StatsDateRangeListBuilder($statsDateRange, $request->get('interval'));
     $statsDateRangeList = $statsDateRangeListBuilder->build();
     $data = array();
     foreach ($statsDateRangeList as $statsDateRangeSegment) {
         $data[] = array('range' => $statsDateRangeSegment, 'value' => $tsrtvRepo->getStatsCountTimesRanForTree($this->tree, $statsDateRangeSegment));
     }
     return $this->render('QuestionKeyBundle:AdminTree:statsSeries.html.twig', array('tree' => $this->tree, 'dateRange' => $statsDateRange, 'data' => $data));
 }
 public function statsAction($treeId, $versionId, $nodeId, Request $request)
 {
     // build
     $return = $this->build($treeId, $versionId, $nodeId);
     //data
     $statsDateRange = new StatsDateRange();
     $statsDateRange->setFromRequest($request);
     $doctrine = $this->getDoctrine()->getManager();
     $tsrtvRepo = $doctrine->getRepository('QuestionKeyBundle:VisitorSessionRanTreeVersion');
     //view
     return $this->render('QuestionKeyBundle:AdminTreeVersionNode:stats.html.twig', array('tree' => $this->tree, 'treeVersion' => $this->treeVersion, 'node' => $this->node, 'dateRange' => $statsDateRange, 'countTimesRanIncludedNode' => $tsrtvRepo->getStatsCountTimesRanIncludedNode($this->node, $statsDateRange), 'countTimesRanForTree' => $tsrtvRepo->getStatsCountTimesRanForTree($this->tree, $statsDateRange), 'countTimesRanForTreeVersion' => $tsrtvRepo->getStatsCountTimesRanForTreeVersion($this->treeVersion, $statsDateRange)));
 }