コード例 #1
0
 public function load(ObjectManager $em)
 {
     $files = Finder::create()->name('*.*')->in(__DIR__ . '/../data/files');
     $manager = $this->container->get('sonata.media.manager.media');
     $medias = [];
     foreach ($files as $pos => $file) {
         $media = new Media();
         $media->setBinaryContent($file);
         $media->setEnabled(true);
         $manager->save($media, 'gallery', 'sonata.media.provider.image');
         $medias[] = $media;
     }
     for ($i = 1; $i < 2; $i++) {
         $post = new Photo();
         $post->setCategory($em->merge($this->getReference("PhotoCategory-1")));
         $post->setTitle("testowe " . $i);
         $post->setImage($medias[0]);
         $post2 = new Photo();
         $post2->setCategory($em->merge($this->getReference("PhotoCategory-" . rand(1, 6))));
         $post2->setTitle("testowe " . $i);
         $post2->setImage($medias[1]);
         $em->persist($post2);
         $em->persist($post);
         $em->flush();
         $this->addReference('Photo-' . $i, $post);
         $this->addReference('Photo-' . ($i - 1), $post2);
     }
 }
コード例 #2
0
 public function load(ObjectManager $em)
 {
     $files = Finder::create()->name('*.JPG')->in(__DIR__ . '/../data/files');
     $manager = $this->container->get('sonata.media.manager.media');
     foreach ($files as $pos => $file) {
         $media = new Media();
         $media->setBinaryContent($file);
         $media->setEnabled(true);
         $manager->save($media, 'portfolio', 'sonata.media.provider.image');
     }
     $pro = new Project();
     $pro->setTechnology($em->merge($this->getReference("Technology-web")));
     $pro->setName("Symfony2 Portfolio");
     $pro->setMedia($media);
     $pro->setDescription('aaa');
     $pro->setRawContent("\n\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
     $pro->setContent("\n\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
     $pro->setUrl("no");
     $pro->setDate(new \DateTime());
     $pro2 = new Project();
     $pro2->setTechnology($em->merge($this->getReference("Technology-asm")));
     $pro2->setName("Symfony2 Portfolio test");
     $pro2->setMedia($media);
     $pro2->setDescription('asfasfasf');
     $pro2->setRawContent("\nsdf\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
     $pro2->setContent("\nsdf\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
     $pro2->setUrl("no");
     $pro2->setDate(new \DateTime());
     $em->persist($pro2);
     $em->persist($pro);
     $em->flush();
 }
コード例 #3
0
ファイル: LoadData.php プロジェクト: 0TshELn1ck/CheTheatre
 public function getMedia($name, $context = 'default')
 {
     $media = new Media();
     $media->setBinaryContent(__DIR__ . '/../data/' . $name);
     $media->setContext($context);
     $media->setProviderName('sonata.media.provider.image');
     $this->container->get('sonata.media.manager.media')->save($media, $andFlush = true);
     return $media;
 }
コード例 #4
0
 public function load(ObjectManager $em)
 {
     $files = Finder::create()->name('*.*')->in(__DIR__ . '/../data/files');
     $manager = $this->container->get('sonata.media.manager.media');
     $medias = [];
     foreach ($files as $pos => $file) {
         $media = new Media();
         $media->setBinaryContent($file);
         $media->setEnabled(true);
         $manager->save($media, 'gallery', 'sonata.media.provider.image');
         $medias[] = $media;
     }
     $design = new PhotoCategory();
     $design->setName('Grafika');
     $design->setSlug(Inftech::slugify('Grafika'));
     $design->setImage($medias[0]);
     $design->setGallery($em->merge($this->getReference('Gallery-1')));
     $design2 = new PhotoCategory();
     $design2->setName('Grafika2');
     $design2->setSlug(Inftech::slugify('Grafika2'));
     $design2->setImage($medias[1]);
     $design2->setGallery($em->merge($this->getReference('Gallery-1')));
     $design3 = new PhotoCategory();
     $design3->setName('Grafika4');
     $design3->setSlug(Inftech::slugify('Grafika4'));
     $design3->setImage($medias[3]);
     $design3->setGallery($em->merge($this->getReference('Gallery-1')));
     $design4 = new PhotoCategory();
     $design4->setName('Grafika3');
     $design4->setSlug(Inftech::slugify('Grafika3'));
     $design4->setImage($medias[2]);
     $design4->setGallery($em->merge($this->getReference('Gallery-1')));
     $programming = new PhotoCategory();
     $programming->setName('Programowanie');
     $programming->setSlug(Inftech::slugify('Programowanie'));
     $programming->setImage($medias[4]);
     $programming->setGallery($em->merge($this->getReference('Gallery-2')));
     $linux = new PhotoCategory();
     $linux->setName('Linux');
     $linux->setSlug(Inftech::slugify('Linux'));
     $linux->setImage($medias[5]);
     $linux->setGallery($em->merge($this->getReference('Gallery-2')));
     $em->persist($design);
     $em->persist($programming);
     $em->persist($linux);
     $em->persist($design2);
     $em->persist($design3);
     $em->persist($design4);
     $em->flush();
     $this->addReference('PhotoCategory-1', $design);
     $this->addReference('PhotoCategory-4', $design2);
     $this->addReference('PhotoCategory-6', $design3);
     $this->addReference('PhotoCategory-5', $design4);
     $this->addReference('PhotoCategory-2', $programming);
     $this->addReference('PhotoCategory-3', $linux);
 }
コード例 #5
0
 /**
  * @param UploadedFile $uploadedFile
  * @param string $context
  * @return Image
  */
 private function saveImage(UploadedFile $uploadedFile, $context)
 {
     $media = new Media();
     $media->setBinaryContent($uploadedFile);
     $media->setContext($context);
     $media->setProviderName('sonata.media.provider.image');
     $this->mediaManager->save($media);
     $image = new Image();
     $image->setFile($media);
     $this->imageManager->save($image);
     return $image;
 }
コード例 #6
0
ファイル: LotsController.php プロジェクト: madspy0/lands
 /**
  * Creates a new Lots entity.
  *
  */
 public function createAction(Request $request)
 {
     $entity = new Lots();
     $form = $this->createCreateForm($entity);
     $form->handleRequest($request);
     if ($form->isValid()) {
         $em = $this->getDoctrine()->getManager();
         $user = $this->container->get('security.context')->getToken()->getUser();
         $entity->setUser($user);
         $uploadedFiles = $request->files->get('myfile');
         $numUploadedFiles = count($uploadedFiles);
         if ($numUploadedFiles > 0) {
             $tmp_gallery = new Gallery();
             $mediaManager = $this->container->get('sonata.media.manager.media');
             $uploadedFiles = $request->files->get('myfile');
             $tmp_gallery->setName($entity->getTitle());
             $tmp_gallery->setContext('default');
             $tmp_gallery->setDefaultFormat('default_small');
             $tmp_gallery->setEnabled(true);
             //            $em->persist($tmp_gallery);
             //            $em->refresh($tmp_gallery);
             for ($i = 0; $i < $numUploadedFiles; $i++) {
                 $tmp_media = new Media();
                 $tmp_galleryHasMedia = new GalleryHasMedia();
                 $tmp_media->setBinaryContent($uploadedFiles[$i]->getRealPath());
                 $tmp_media->setContext('default');
                 $tmp_media->setName($uploadedFiles[$i]->getClientOriginalName());
                 $mediaManager->save($tmp_media, 'default', 'sonata.media.provider.image');
                 $tmp_galleryHasMedia->setMedia($tmp_media);
                 $tmp_galleryHasMedia->setEnabled(true);
                 $tmp_galleryHasMedia->setGallery($tmp_gallery);
                 $em->persist($tmp_galleryHasMedia);
             }
             $em->persist($tmp_gallery);
             $em->flush();
             $em->refresh($tmp_gallery);
             $entity->setGallery($tmp_gallery);
         }
         $offer = new Offer();
         $em->persist($offer);
         $entity->setOffer($offer);
         $em->persist($entity);
         $em->flush();
         return $this->redirect($this->generateUrl('lots_show', array('id' => $entity->getId())));
     }
     return $this->render('AESlandsBundle:Lots:new.html.twig', array('entity' => $entity, 'form' => $form->createView()));
 }
コード例 #7
0
ファイル: UploaderListener.php プロジェクト: Kilo3/easyprod
 public function preUpload(PreUploadEvent $event)
 {
     //echo "preUpload";die();
     /*$response = $event->getResponse();
       $msg = "test";
       $response->setSuccess(false);
       $response->setError($msg);*/
     $galleryId = $event->getRequest()->get('galleryId');
     $file = $event->getFile();
     $media = new Media();
     //$media->setName($file->getBasename());
     $media->setName($file->getClientOriginalName());
     $media->setBinaryContent($file);
     $media->setEnabled(true);
     $media->setContext('default');
     $media->setProviderName('sonata.media.provider.image');
     $this->em = $this->doctrine[0]->getEntityManager();
     $gallery = $this->em->getRepository('ApplicationSonataMediaBundle:Gallery')->find($galleryId);
     $galleryHasMedia = new GalleryHasMedia();
     $galleryHasMedia->setMedia($media);
     $galleryHasMedia->setEnabled(true);
     $gallery->addGalleryHasMedias($galleryHasMedia);
     $this->em->persist($galleryHasMedia);
     $this->em->persist($media);
     $this->em->flush();
     die;
 }
コード例 #8
0
ファイル: MediaHandler.php プロジェクト: bakicdj/EDBlogBundle
 public function generateMediaFromFile($file)
 {
     $media = new Media();
     $media->setBinaryContent(new File($file));
     $media->setContext('default');
     $media->setProviderName('sonata.media.provider.image');
     $media->setName($this->getFileName($file));
     $media->setEnabled(true);
     return $media;
 }
コード例 #9
0
 public function testExecuteCommand()
 {
     $kernel = $this->createKernel();
     $kernel->boot();
     $application = new Application($kernel);
     $application->add(new RemoveBrokenMediaObjectsCommand());
     $command = $application->find('app:remove-image');
     $commandTester = new CommandTester($command);
     $commandTester->execute([]);
     $this->assertContains("Deleted media without reference object was successful", $commandTester->getDisplay());
     $commandTester->execute([]);
     $this->assertNotContains("Remove media with", $commandTester->getDisplay());
     $media = new Media();
     $media->setBinaryContent(__DIR__ . '/../../DataFixtures/data/avatars/anna-bobrova.jpg');
     $media->setContext('employee');
     $media->setProviderName('sonata.media.provider.image');
     $this->getContainer()->get('sonata.media.manager.media')->save($media, $andFlush = true);
     $this->getEm()->persist($media);
     $this->getEm()->flush();
     $commandTester->execute([]);
     $this->assertContains("Removed media with id", $commandTester->getDisplay());
 }
コード例 #10
0
 /**
  * @Route("/media/edit-info/{id}", name="ed_blog_admin_media_edit_info")
  * @ParamConverter("media", class="ApplicationSonataMediaBundle:Media")
  */
 public function editInfoAction(Request $request, Media $media)
 {
     $user = $this->getBlogUser();
     $form = $this->createForm(new MediaInfoType(), array("description" => $media->getDescription()));
     if ($request->isMethod('POST')) {
         $form->handleRequest($request);
         if ($form->isValid()) {
             $media->setDescription($form['description']->getData());
             $em = $this->getDoctrine()->getManager();
             $em->persist($media);
             $em->flush();
         }
         if ($request->isXmlHttpRequest()) {
             return new JsonResponse(array('success' => true));
         } else {
             $this->get('session')->getFlashBag()->add('success', 'Photo details updated successfully.');
             return $this->redirectToRoute('ed_blog_admin_media_list');
         }
     }
     return $this->render("EDBlogBundle:Media:editInfoForm.html.twig", array("id" => $media->getId(), "form" => $form->createView()));
 }
コード例 #11
0
 /**
  * @param Media $media
  * @return VidequeProvider
  */
 private function getProvider(Media $media)
 {
     return $this->getContainer()->get($media->getProviderName());
 }
 /**
  * {@inheritDoc}
  */
 public function isStatusErroneous(\Symfony\Component\Validator\ExecutionContextInterface $context)
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'isStatusErroneous', array($context));
     return parent::isStatusErroneous($context);
 }
コード例 #13
0
ファイル: ArticleController.php プロジェクト: NegMozzie/tapha
 /**
  * @Route("/upload", name="ed_blog_admin_article_upload")
  */
 public function uploadAction(Request $request)
 {
     $user = $this->getBlogUser();
     $mediaManager = $this->container->get('sonata.media.manager.media');
     if (!$request->get('excerpt', false)) {
         $form = $this->createForm(new ArticlePhotoType());
     } else {
         $form = $this->createForm(new ArticleExcerptType());
     }
     if ($request->getMethod() == 'POST') {
         $form->handleRequest($request);
         $dispatcher = $this->get('event_dispatcher');
         $attachment = $form['media']->getData();
         //to support single file upload (multiple=false)
         if (!is_array($attachment)) {
             $attachment = array($attachment);
         }
         $mediaArray = new ArrayCollection();
         $errorArray = array();
         foreach ($attachment as $attached) {
             if (in_array($attached->getMimeType(), array('image/pjpeg', 'image/jpeg', 'image/png', 'image/x-png', 'image/gif'))) {
                 try {
                     $media = new Media();
                     $media->setBinaryContent($attached);
                     $media->setContext('default');
                     $media->setProviderName('sonata.media.provider.image');
                     $media->setName($attached->getClientOriginalName());
                     $media->setEnabled(true);
                     $mediaManager->save($media);
                     $mediaArray->add($media);
                 } catch (\Exception $e) {
                     $errorArray[] = array("name" => $attached->getClientOriginalName(), "message" => $e->getMessage());
                 }
             } else {
                 $errorArray[] = array("name" => $attached->getClientOriginalName(), "message" => "The file is unsupported");
             }
         }
         $dispatcher->dispatch(EDBlogEvents::ED_BLOG_MEDIA_LIBRARY_MEDIA_UPLOADED, new MediaArrayEvent($mediaArray));
     }
     $paginator = $this->get('blog.paginator');
     $response = $this->getPaginated($paginator, array('errors' => $errorArray));
     return $response;
 }
コード例 #14
0
ファイル: User.php プロジェクト: rotanov/fefu-social-network
 /**
  * Remove avatar
  *
  * @param MediaInterface $avatar
  */
 public function removeAvatar(MediaInterface $avatar)
 {
     $this->avatar->removeElement($avatar);
 }
コード例 #15
0
ファイル: MediaTest.php プロジェクト: alexandre-t/pokeme
 /**
  * Test that Id is null at the beginning.
  */
 public function testGetId()
 {
     $this->assertNull($this->media->getId());
 }
コード例 #16
0
ファイル: MediaFixtures.php プロジェクト: elom5000/BardisCMS
 public function load(ObjectManager $manager)
 {
     $introImage1 = new Media();
     $introImage1->setName('sample_thumb.jpeg');
     $introImage1->setEnabled(0);
     $introImage1->setProviderName('sonata.media.provider.image');
     $introImage1->setProviderStatus(1);
     $introImage1->setProviderReference('sample_thumb.jpeg');
     $introImage1->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage1->setWidth(622);
     $introImage1->setHeight(415);
     $introImage1->setContentType('image/jpeg');
     $introImage1->setSize(8043);
     $introImage1->setCategory($manager->merge($this->getReference('category2')));
     $introImage1->setContext('intro');
     $introImage1->setCreatedAt(new \DateTime());
     $introImage1->setUpdatedAt(new \DateTime());
     $manager->persist($introImage1);
     $introImage2 = new Media();
     $introImage2->setName('sample_thumb.jpeg');
     $introImage2->setEnabled(0);
     $introImage2->setProviderName('sonata.media.provider.image');
     $introImage2->setProviderStatus(1);
     $introImage2->setProviderReference('sample_thumb.jpeg');
     $introImage2->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage2->setWidth(622);
     $introImage2->setHeight(415);
     $introImage2->setContentType('image/jpeg');
     $introImage2->setSize(8043);
     $introImage2->setCategory($manager->merge($this->getReference('category2')));
     $introImage2->setContext('intro');
     $introImage2->setCreatedAt(new \DateTime());
     $introImage2->setUpdatedAt(new \DateTime());
     $manager->persist($introImage2);
     $introImage3 = new Media();
     $introImage3->setName('sample_thumb.jpeg');
     $introImage3->setEnabled(0);
     $introImage3->setProviderName('sonata.media.provider.image');
     $introImage3->setProviderStatus(1);
     $introImage3->setProviderReference('sample_thumb.jpeg');
     $introImage3->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage3->setWidth(622);
     $introImage3->setHeight(415);
     $introImage3->setContentType('image/jpeg');
     $introImage3->setSize(8043);
     $introImage3->setCategory($manager->merge($this->getReference('category2')));
     $introImage3->setContext('intro');
     $introImage3->setCreatedAt(new \DateTime());
     $introImage3->setUpdatedAt(new \DateTime());
     $manager->persist($introImage3);
     $introImage4 = new Media();
     $introImage4->setName('sample_thumb.jpeg');
     $introImage4->setEnabled(0);
     $introImage4->setProviderName('sonata.media.provider.image');
     $introImage4->setProviderStatus(1);
     $introImage4->setProviderReference('sample_thumb.jpeg');
     $introImage4->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage4->setWidth(622);
     $introImage4->setHeight(415);
     $introImage4->setContentType('image/jpeg');
     $introImage4->setSize(8043);
     $introImage4->setCategory($manager->merge($this->getReference('category2')));
     $introImage4->setContext('intro');
     $introImage4->setCreatedAt(new \DateTime());
     $introImage4->setUpdatedAt(new \DateTime());
     $manager->persist($introImage4);
     $introImage5 = new Media();
     $introImage5->setName('sample_thumb.jpeg');
     $introImage5->setEnabled(0);
     $introImage5->setProviderName('sonata.media.provider.image');
     $introImage5->setProviderStatus(1);
     $introImage5->setProviderReference('sample_thumb.jpeg');
     $introImage5->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage5->setWidth(622);
     $introImage5->setHeight(415);
     $introImage5->setContentType('image/jpeg');
     $introImage5->setSize(8043);
     $introImage5->setCategory($manager->merge($this->getReference('category2')));
     $introImage5->setContext('intro');
     $introImage5->setCreatedAt(new \DateTime());
     $introImage5->setUpdatedAt(new \DateTime());
     $manager->persist($introImage5);
     $introImage6 = new Media();
     $introImage6->setName('sample_thumb.jpeg');
     $introImage6->setEnabled(0);
     $introImage6->setProviderName('sonata.media.provider.image');
     $introImage6->setProviderStatus(1);
     $introImage6->setProviderReference('sample_thumb.jpeg');
     $introImage6->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage6->setWidth(622);
     $introImage6->setHeight(415);
     $introImage6->setContentType('image/jpeg');
     $introImage6->setSize(8043);
     $introImage6->setCategory($manager->merge($this->getReference('category2')));
     $introImage6->setContext('intro');
     $introImage6->setCreatedAt(new \DateTime());
     $introImage6->setUpdatedAt(new \DateTime());
     $manager->persist($introImage6);
     $introImage7 = new Media();
     $introImage7->setName('sample_thumb.jpeg');
     $introImage7->setEnabled(0);
     $introImage7->setProviderName('sonata.media.provider.image');
     $introImage7->setProviderStatus(1);
     $introImage7->setProviderReference('sample_thumb.jpeg');
     $introImage7->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage7->setWidth(622);
     $introImage7->setHeight(415);
     $introImage7->setContentType('image/jpeg');
     $introImage7->setSize(8043);
     $introImage7->setCategory($manager->merge($this->getReference('category2')));
     $introImage7->setContext('intro');
     $introImage7->setCreatedAt(new \DateTime());
     $introImage7->setUpdatedAt(new \DateTime());
     $manager->persist($introImage7);
     $introImage8 = new Media();
     $introImage8->setName('sample_thumb.jpeg');
     $introImage8->setEnabled(0);
     $introImage8->setProviderName('sonata.media.provider.image');
     $introImage8->setProviderStatus(1);
     $introImage8->setProviderReference('sample_thumb.jpeg');
     $introImage8->setMetadataValue('filename', 'sample_thumb.jpeg');
     $introImage8->setWidth(622);
     $introImage8->setHeight(415);
     $introImage8->setContentType('image/jpeg');
     $introImage8->setSize(8043);
     $introImage8->setCategory($manager->merge($this->getReference('category2')));
     $introImage8->setContext('intro');
     $introImage8->setCreatedAt(new \DateTime());
     $introImage8->setUpdatedAt(new \DateTime());
     $manager->persist($introImage8);
     $homeBanner1 = new Media();
     $homeBanner1->setName('sample_thumb.jpeg');
     $homeBanner1->setEnabled(0);
     $homeBanner1->setProviderName('sonata.media.provider.image');
     $homeBanner1->setProviderStatus(1);
     $homeBanner1->setProviderReference('sample_thumb.jpeg');
     $homeBanner1->setMetadataValue('filename', 'sample_thumb.jpeg');
     $homeBanner1->setWidth(622);
     $homeBanner1->setHeight(415);
     $homeBanner1->setContentType('image/jpeg');
     $homeBanner1->setSize(8043);
     $homeBanner1->setCategory($manager->merge($this->getReference('category3')));
     $homeBanner1->setContext('bgimage');
     $homeBanner1->setCreatedAt(new \DateTime());
     $homeBanner1->setUpdatedAt(new \DateTime());
     $manager->persist($homeBanner1);
     $homeBanner2 = new Media();
     $homeBanner2->setName('sample_thumb.jpeg');
     $homeBanner2->setEnabled(0);
     $homeBanner2->setProviderName('sonata.media.provider.image');
     $homeBanner2->setProviderStatus(1);
     $homeBanner2->setProviderReference('sample_thumb.jpeg');
     $homeBanner2->setMetadataValue('filename', 'sample_thumb.jpeg');
     $homeBanner2->setWidth(622);
     $homeBanner2->setHeight(415);
     $homeBanner2->setContentType('image/jpeg');
     $homeBanner2->setSize(8043);
     $homeBanner2->setCategory($manager->merge($this->getReference('category3')));
     $homeBanner2->setContext('bgimage');
     $homeBanner2->setCreatedAt(new \DateTime());
     $homeBanner2->setUpdatedAt(new \DateTime());
     $manager->persist($homeBanner2);
     $manager->flush();
     $this->addReference('introImage1', $introImage1);
     $this->addReference('introImage2', $introImage2);
     $this->addReference('introImage3', $introImage3);
     $this->addReference('introImage4', $introImage4);
     $this->addReference('introImage5', $introImage5);
     $this->addReference('introImage6', $introImage6);
     $this->addReference('introImage7', $introImage7);
     $this->addReference('introImage8', $introImage8);
     $this->addReference('homeBanner1', $homeBanner1);
     $this->addReference('homeBanner2', $homeBanner2);
 }
コード例 #17
0
ファイル: Slider.php プロジェクト: Kilo3/pandora
 /**
  * Remove media
  *
  * @param \Application\Sonata\MediaBundle\Entity\Media $media
  */
 public function removeMedia(\Application\Sonata\MediaBundle\Entity\Media $media)
 {
     $this->media->removeElement($media);
 }
コード例 #18
0
ファイル: LoadPostData.php プロジェクト: Aldor007/mkaciuba.pl
 public function load(ObjectManager $em)
 {
     $files = Finder::create()->name('*.JPG')->in(__DIR__ . '/../data/files');
     $manager = $this->container->get('sonata.media.manager.media');
     foreach ($files as $pos => $file) {
         $media = new Media();
         $media->setBinaryContent($file);
         $media->setEnabled(true);
         $manager->save($media, 'blog', 'sonata.media.provider.image');
     }
     for ($i = 0; $i < 52; $i = $i + 3) {
         $post = new Post();
         $post->setCategory($em->merge($this->getReference("PostCategory-design")));
         $post->setCommentCount(0);
         $post->setTitle("o autorze" . $i);
         $post->setContent("\n\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
         $post->setRawContent("\n\n          Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cursus id felis. Sed lorem quam, vehicula in consequat\n          id, auctor eget odio. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. ");
         $post->setUser($em->merge($this->getReference("User-aldor")));
         $post->setDescription("Krotki wstep. bardzo");
         $post->setDate(new \DateTime());
         $post->setModified(new \DateTime());
         $post->setPublicationDateStart(new \DateTime());
         $post->setStatus("public");
         $post->setCommentStatus("open");
         $post->setUrl($post->getCategorySlug() . $post->getDateSlug() . $post->getTitleSlug());
         $post->setMedia($media);
         $post2 = new Post();
         $post2->setCategory($em->merge($this->getReference("PostCategory-cubie")));
         $post2->setCommentCount(0);
         $post2->setTitle("Drugi Testowy tytuł dokumentu" . $i);
         $post2->setDescription("Krotki wstep. bardzo");
         $post2->setContent("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cur ");
         $post2->setRawContent("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cur ");
         $post2->setUser($em->merge($this->getReference("User-aldor")));
         $post2->setStatus("public");
         $post2->setCommentStatus("close");
         $post2->setDate(new \DateTime());
         $post2->setModified(new \DateTime());
         $post2->setPublicationDateStart(new \DateTime());
         $post2->setUrl($post2->getCategorySlug() . $post2->getDateSlug() . $post2->getTitleSlug());
         $post2->setMedia($media);
         $post3 = new Post();
         $post3->setCategory($em->merge($this->getReference("PostCategory-cubie")));
         $post3->setCommentCount(0);
         $post3->setTitle("trzeci gi Testowy tytuł dokumentu" . $i);
         $post3->setContent("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cur");
         $post3->setRawContent("Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque ullamcorper varius urna,\n          in ultrices arcu auctor sed. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n          Etiam dolor tellus, posuere at tincidunt at, consequat et mi. Curabitur accumsan aliquet interdum. Nullam lacus velit, varius non dictum in,\n          interdum vel tortor. Maecenas eget quam lorem, vel aliquet tellus. Fusce vel diam diam, at vehicula lorem. Nunc consequat dolor vel ante\n          accumsan auctor. Aenean euismod, quam sit amet mattis tincidunt, odio massa iaculis lectus, in consectetur quam sapien in lorem. Suspendisse blandi\n          t feugiat ipsum vitae gravida. Maecenas et turpis odio. Vivamus nec velit ac purus vestibulum ullamcorper. Aliquam nisi tortor, viverra ut ullamcorper nec, cur");
         $post3->setDescription("Lorem ipsum jakis teskt ala asf ");
         $post3->setDescription("Lorem ipsum jakis teskt ala asf ");
         $post3->setUser($em->merge($this->getReference("User-aldor")));
         $post3->setUrl("slug");
         $post3->setStatus("public");
         $post3->setCommentStatus("close");
         $post3->setDate(new \DateTime());
         $post3->setModified(new \DateTime());
         $post3->setPublicationDateStart(new \DateTime());
         $post3->setMedia($media);
         $post3->setUrl($post3->getCategorySlug() . $post3->getDateSlug() . $post3->getTitleSlug());
         $em->persist($post2);
         $em->persist($post);
         $em->persist($post3);
         $em->flush();
         $this->addReference('Post-' . ($i - 2), $post);
         $this->addReference('Post-' . ($i - 1), $post2);
         $this->addReference('Post-' . $i, $post3);
     }
 }
コード例 #19
0
 protected function addPhotosToCategory($message)
 {
     $categoryName = $message->getValue('categoryName');
     $filePath = $message->getValue('filePath');
     $category = $this->enityManager->getRepository('AldorGalleryBundle:PhotoCategory')->findOneByName($categoryName);
     $zip = new ExtractZip($filePath);
     $files = $zip->extract();
     $counter = 0;
     $maxSequence = $this->enityManager->getRepository('AldorGalleryBundle:Photo')->getMaxSequenceByCategory($category->getId());
     foreach ($files as $pos => $file) {
         $title = explode('/', $pos);
         $fileName = $title[count($title) - 1];
         $fileName = str_replace('DSC_', '', $fileName);
         $title = $categoryName . '-' . explode('.', $fileName)[0];
         $photo = new Photo();
         $photo->setTitle($title);
         $media = new Media();
         $media->setBinaryContent($file);
         $media->setEnabled(true);
         $media->setContext('gallery');
         $media->setName($categoryName . '-' . $fileName);
         $photo->setImage($media);
         $photo->addCategory($category);
         $photo->setSequence($maxSequence++);
         $this->enityManager->persist($photo);
     }
     $this->enityManager->flush();
     $zip->clean();
 }