Esempio n. 1
0
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     if ($context === 'task') {
         $queryBuilder = $this->factory->getDatabase()->createQueryBuilder();
         $queryBuilder->from('tasks', 't')->leftJoin('t', 'users', 'u', 'u.id = t.assign_user_id');
         $event->addLeadLeftJoin($queryBuilder, 't');
         $event->setQueryBuilder($queryBuilder);
     }
     if ($context === 'opportunity') {
         $queryBuilder = $this->factory->getDatabase()->createQueryBuilder();
         $queryBuilder->from('opportunities', 'op')->leftJoin('op', 'users', 'u', 'u.id = op.owner_user_id');
         $event->addLeadLeftJoin($queryBuilder, 'op');
         $event->setQueryBuilder($queryBuilder);
     }
 }
Esempio n. 2
0
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     $queryBuilder = $event->getQueryBuilder();
     if ($context == 'assets') {
         $queryBuilder->from(MAUTIC_TABLE_PREFIX . 'assets', 'a');
         $event->addCategoryLeftJoin($queryBuilder, 'a');
     } elseif ($context == 'asset.downloads') {
         $event->applyDateFilters($queryBuilder, 'date_download', 'ad');
         $queryBuilder->from(MAUTIC_TABLE_PREFIX . 'asset_downloads', 'ad')->leftJoin('ad', MAUTIC_TABLE_PREFIX . 'assets', 'a', 'a.id = ad.asset_id');
         $event->addCategoryLeftJoin($queryBuilder, 'a');
         $event->addLeadLeftJoin($queryBuilder, 'ad');
         $event->addIpAddressLeftJoin($queryBuilder, 'ad');
     }
     $event->setQueryBuilder($queryBuilder);
 }
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     if ($context == 'emails') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'emails', 'e')->leftJoin('e', MAUTIC_TABLE_PREFIX . 'emails', 'vp', 'vp.id = e.variant_parent_id');
         $event->addCategoryLeftJoin($qb, 'e');
         $event->setQueryBuilder($qb);
     } elseif ($context == 'email.stats') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'email_stats', 'es')->leftJoin('es', MAUTIC_TABLE_PREFIX . 'emails', 'e', 'e.id = es.email_id')->leftJoin('e', MAUTIC_TABLE_PREFIX . 'emails', 'vp', 'vp.id = e.variant_parent_id');
         $event->addCategoryLeftJoin($qb, 'e');
         $event->addLeadLeftJoin($qb, 'es');
         $event->addIpAddressLeftJoin($qb, 'es');
         $event->setQueryBuilder($qb);
     }
 }
Esempio n. 4
0
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     if ($context == 'forms') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'forms', 'f');
         $event->addCategoryLeftJoin($qb, 'f');
         $event->setQueryBuilder($qb);
     } elseif ($context == 'form.submissions') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'form_submissions', 'fs')->leftJoin('fs', MAUTIC_TABLE_PREFIX . 'forms', 'f', 'f.id = fs.form_id')->leftJoin('fs', MAUTIC_TABLE_PREFIX . 'pages', 'p', 'p.id = fs.page_id');
         $event->addCategoryLeftJoin($qb, 'f');
         $event->addLeadLeftJoin($qb, 'fs');
         $event->addIpAddressLeftJoin($qb, 'fs');
         $event->setQueryBuilder($qb);
     }
 }
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     if ($context == 'assets') {
         $queryBuilder = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $queryBuilder->from(MAUTIC_TABLE_PREFIX . 'assets', 'a');
         $event->addCategoryLeftJoin($queryBuilder, 'a');
         $event->setQueryBuilder($queryBuilder);
     } elseif ($context == 'asset.downloads') {
         $queryBuilder = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $queryBuilder->from(MAUTIC_TABLE_PREFIX . 'asset_downloads', 'ad')->leftJoin('ad', MAUTIC_TABLE_PREFIX . 'assets', 'a', 'a.id = ad.asset_id');
         $event->addCategoryLeftJoin($queryBuilder, 'a');
         $event->addLeadLeftJoin($queryBuilder, 'ad');
         $event->addIpAddressLeftJoin($queryBuilder, 'ad');
         $event->setQueryBuilder($queryBuilder);
     }
 }
Esempio n. 6
0
 /**
  * Initialize the QueryBuilder object to generate reports from.
  *
  * @param ReportGeneratorEvent $event
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     $qb = $event->getQueryBuilder();
     switch ($context) {
         case 'forms':
             $qb->from(MAUTIC_TABLE_PREFIX . 'forms', 'f');
             $event->addCategoryLeftJoin($qb, 'f');
             break;
         case 'form.submissions':
             $event->applyDateFilters($qb, 'date_submitted', 'fs');
             $qb->from(MAUTIC_TABLE_PREFIX . 'form_submissions', 'fs')->leftJoin('fs', MAUTIC_TABLE_PREFIX . 'forms', 'f', 'f.id = fs.form_id')->leftJoin('fs', MAUTIC_TABLE_PREFIX . 'pages', 'p', 'p.id = fs.page_id');
             $event->addCategoryLeftJoin($qb, 'f');
             $event->addLeadLeftJoin($qb, 'fs');
             $event->addIpAddressLeftJoin($qb, 'fs');
             break;
     }
     $event->setQueryBuilder($qb);
 }
Esempio n. 7
0
 /**
  * Initialize the QueryBuilder object to generate reports from.
  *
  * @param ReportGeneratorEvent $event
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     $qb = $event->getQueryBuilder();
     switch ($context) {
         case 'emails':
             $qb->from(MAUTIC_TABLE_PREFIX . 'emails', 'e')->leftJoin('e', MAUTIC_TABLE_PREFIX . 'emails', 'vp', 'vp.id = e.variant_parent_id');
             $event->addCategoryLeftJoin($qb, 'e');
             break;
         case 'email.stats':
             $event->applyDateFilters($qb, 'date_sent', 'es');
             $qb->from(MAUTIC_TABLE_PREFIX . 'email_stats', 'es')->leftJoin('es', MAUTIC_TABLE_PREFIX . 'emails', 'e', 'e.id = es.email_id')->leftJoin('e', MAUTIC_TABLE_PREFIX . 'emails', 'vp', 'vp.id = e.variant_parent_id');
             $event->addCategoryLeftJoin($qb, 'e');
             $event->addLeadLeftJoin($qb, 'es');
             $event->addIpAddressLeftJoin($qb, 'es');
             break;
     }
     $event->setQueryBuilder($qb);
 }
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     if ($context == 'pages') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'pages', 'p')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'tp', 'p.id = tp.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'vp', 'p.id = vp.id');
         $event->addCategoryLeftJoin($qb, 'p');
         $event->setQueryBuilder($qb);
     } elseif ($context == 'page.hits') {
         $qb = $this->factory->getEntityManager()->getConnection()->createQueryBuilder();
         $qb->from(MAUTIC_TABLE_PREFIX . 'page_hits', 'ph')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'pages', 'p', 'ph.page_id = p.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'tp', 'p.id = tp.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'vp', 'p.id = vp.id')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'emails', 'e', 'e.id = ph.email_id')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'page_redirects', 'r', 'r.id = ph.redirect_id');
         $event->addIpAddressLeftJoin($qb, 'ph');
         $event->addCategoryLeftJoin($qb, 'p');
         $event->addLeadLeftJoin($qb, 'ph');
         $event->setQueryBuilder($qb);
     }
 }
Esempio n. 9
0
 /**
  * Initialize the QueryBuilder object to generate reports from
  *
  * @param ReportGeneratorEvent $event
  *
  * @return void
  */
 public function onReportGenerate(ReportGeneratorEvent $event)
 {
     $context = $event->getContext();
     $qb = $event->getQueryBuilder();
     switch ($context) {
         case 'pages':
             $qb->from(MAUTIC_TABLE_PREFIX . 'pages', 'p')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'tp', 'p.id = tp.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'vp', 'p.id = vp.id');
             $event->addCategoryLeftJoin($qb, 'p');
             break;
         case 'page.hits':
             $event->applyDateFilters($qb, 'date_hit', 'ph');
             $qb->from(MAUTIC_TABLE_PREFIX . 'page_hits', 'ph')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'pages', 'p', 'ph.page_id = p.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'tp', 'p.id = tp.id')->leftJoin('p', MAUTIC_TABLE_PREFIX . 'pages', 'vp', 'p.id = vp.id')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'page_redirects', 'r', 'r.id = ph.redirect_id')->leftJoin('ph', MAUTIC_TABLE_PREFIX . 'lead_devices', 'ds', 'ds.id = ph.device_id');
             $event->addIpAddressLeftJoin($qb, 'ph');
             $event->addCategoryLeftJoin($qb, 'p');
             $event->addLeadLeftJoin($qb, 'ph');
             break;
     }
     $event->setQueryBuilder($qb);
 }