예제 #1
0
 public function upload(Campaign $campaign, $randomize = true)
 {
     $file = $campaign->getImg();
     if (!$file instanceof UploadedFile) {
         return;
     } else {
         $fileName = $this->generateFilename($file, $randomize);
         $fs = new Filesystem();
         try {
             $fs->mkdir($this->directory, 0777);
         } catch (IOExceptionInterface $e) {
             echo "An error occurred while creating your directory at " . $e->getPath();
         }
         $file->move($this->directory, $fileName);
         $campaign->setPath($fileName);
     }
 }
예제 #2
0
 protected function sendMatching(Campaign $campaign)
 {
     // Apres la persistance/update d'une campagne
     $idBases = array();
     // On recupere l'ensemble des bases actives
     $em = $this->getConfigurationPool()->getContainer()->get('doctrine');
     $bases = $em->getRepository('ApplicationSonataUserBundle:Base')->findConsumerBases();
     if (null == $bases) {
         return;
     } else {
         // Pour chaque base on recupere son id
         foreach ($bases as $base) {
             $id = $base['id'];
             array_push($idBases, $id);
         }
         // On récupère le service qui va envoyer le match
         $sendMatching = $this->getConfigurationPool()->getContainer()->get('match_exchange_sender');
         $sendMatching->sendDB($campaign->getId(), $idBases, 'base');
     }
 }