예제 #1
0
 /**
  * Add forms to available page tokens.
  *
  * @param PageBuilderEvent $event
  */
 public function onPageBuild(PageBuilderEvent $event)
 {
     $tokenHelper = new BuilderTokenHelper($this->factory, 'focus', $this->model->getPermissionBase(), 'MauticFocusBundle', 'mautic.focus');
     if ($event->tokenSectionsRequested()) {
         $event->addTokenSection('mautic.focustokens', 'mautic.focus.focus_items', $tokenHelper->getTokenContent());
     }
     if ($event->tokensRequested($this->regex)) {
         $event->addTokensFromHelper($tokenHelper, $this->regex, 'name', 'id', true);
     }
 }
 /**
  * @param int $page
  *
  * @return JsonResponse
  */
 public function indexAction($page = 1)
 {
     $tokenHelper = new BuilderTokenHelper($this->factory, $this->getModelName(), $this->getViewPermissionBase(), $this->getBundleName(), $this->getLangVar());
     if ($permissionSet = $this->getPermissionSet()) {
         $tokenHelper->setPermissionSet($permissionSet);
     }
     $arguments = $this->getEntityArguments();
     $dataArray = array('newContent' => $tokenHelper->getTokenContent($page, $arguments), 'mauticContent' => 'builder');
     $response = new JsonResponse($dataArray);
     return $response;
 }
예제 #3
0
 /**
  * @param EmailBuilderEvent $event
  */
 public function onEmailBuild(EmailBuilderEvent $event)
 {
     $tokenHelper = new BuilderTokenHelper($this->factory, 'lead.field', 'lead:fields', 'MauticLeadBundle');
     $tokenHelper->setPermissionSet(array('lead:fields:full'));
     if ($event->tokenSectionsRequested()) {
         //add email tokens
         $event->addTokenSection('lead.emailtokens', 'mautic.lead.email.header.index', $tokenHelper->getTokenContent(array('filter' => array('force' => array(array('column' => 'f.isPublished', 'expr' => 'eq', 'value' => true))), 'orderBy' => 'f.label', 'orderByDir' => 'ASC', 'hydration_mode' => 'HYDRATE_ARRAY')), 255);
     }
     if ($event->tokensRequested(self::$leadFieldRegex)) {
         $event->addTokensFromHelper($tokenHelper, self::$leadFieldRegex, 'label', 'alias', true);
     }
 }
예제 #4
0
 /**
  * Add forms to available page tokens
  *
  * @param PageBuilderEvent $event
  */
 public function onPageBuild(PageBuilderEvent $event)
 {
     $tokenHelper = new BuilderTokenHelper($this->factory, 'form');
     if ($event->tokenSectionsRequested()) {
         $event->addTokenSection('form.pagetokens', 'mautic.form.forms', $tokenHelper->getTokenContent());
     }
     if ($event->abTestWinnerCriteriaRequested()) {
         //add AB Test Winner Criteria
         $formSubmissions = array('group' => 'mautic.form.abtest.criteria', 'label' => 'mautic.form.abtest.criteria.submissions', 'callback' => '\\Mautic\\FormBundle\\Helper\\AbTestHelper::determineSubmissionWinner');
         $event->addAbTestWinnerCriteria('form.submissions', $formSubmissions);
     }
     if ($event->tokensRequested($this->formRegex)) {
         $event->addTokensFromHelper($tokenHelper, $this->formRegex, 'name', 'id', true);
     }
 }
예제 #5
0
 /**
  * @param EmailBuilderEvent $event
  *
  * @return void
  */
 public function onEmailBuild(EmailBuilderEvent $event)
 {
     $tokenHelper = new BuilderTokenHelper($this->factory, 'page');
     if ($event->tokenSectionsRequested()) {
         $event->addTokenSection('page.emailtokens', 'mautic.page.pages', $tokenHelper->getTokenContent(array('filter' => array('force' => array(array('column' => 'p.variantParent', 'expr' => 'isNull'))))), -254);
     }
     if ($event->tokensRequested(array($this->pageTokenRegex))) {
         $event->addTokensFromHelper($tokenHelper, $this->pageTokenRegex, 'title', 'id', false, true);
     }
 }
예제 #6
0
 /**
  * @param $event
  */
 private function addTokenSections($event)
 {
     //add email tokens
     $tokenHelper = new BuilderTokenHelper($this->factory, 'asset');
     $event->addTokenSection('asset.emailtokens', 'mautic.asset.assets', $tokenHelper->getTokenContent(), -255);
 }