/** * @Route("/admin/organization_", name = "admin_organization_add") * @Template("LearningMainBundle:Admin:organization_.html.twig") */ public function addAction() { $request = $this->getRequest(); $organization = new Organization(); if ($request->isMethod('POST')) { $em = $this->getDoctrine()->getManager(); $organization->setTitle($request->request->get('title')); #$organization->setUrl($request->request->get('url')); #$organization->setKeywords($request->request->get('metaKey')); #$organization->setDescription($request->request->get('metaDesc')); $organization->setEnabled($request->request->get('enabled')); $organization->setBody($request->request->get('text')); $organization->setEmail($request->request->get('email')); $organization->setContact($request->request->get('contact')); $em->persist($organization); $em->flush(); $em->refresh($organization); $organization->setUrl($organization->getId()); $em->flush(); $file = $request->files->get('fileImg'); if ($file != NULL) { $origName = $file->getClientOriginalName(); $format = substr($origName, strlen($origName) - 4); $name = substr($origName, 0, strlen($origName) - 4); //Извлекаем формат (бывает только PDF и FLV) $name .= '_' . time() . $format; if ($format != '.png' && $format != '.jpg') { $error = 'Ошибка сохранения: необходимо загрузить картинку формата png или jpg'; return array('organization' => $organization, 'error' => $error); } $file->move('upload/company', $name); $organization->setImageFile($name); } $this->get('session')->getFlashBag()->add('popup', 'Добавлена'); return $this->redirect($this->generateUrl('admin_organization_lists')); } else { return array(); } }
/** * @route("/organization-register", name="organization_register" ) * @Template("LearningMainBundle:Auth:organization_register.html.twig") */ public function organizationRegisterAction() { if ($this->get('security.context')->isGranted('ROLE_ORGANIZATION') && $this->getUser()->getOrganization() == null) { return $this->redirect($this->generateUrl('_index')); } $request = $this->getRequest(); $organization = new Organization(); if ($request->isMethod('POST')) { $em = $this->getDoctrine()->getManager(); $organization->setTitle($request->request->get('title')); $organization->setEnabled($request->request->get('enabled')); $organization->setBody($request->request->get('text')); $organization->setEmail($request->request->get('email')); $organization->setContact($request->request->get('contact')); $em->persist($organization); $em->flush(); $em->refresh($organization); $organization->setUrl($organization->getId()); $em->flush(); $file = $request->files->get('fileImg'); if ($file != NULL) { $origName = $file->getClientOriginalName(); $format = substr($origName, strlen($origName) - 4); $name = substr($origName, 0, strlen($origName) - 4); //Извлекаем формат (бывает только PDF и FLV) $name .= '_' . time() . $format; if ($format != '.png' && $format != '.jpg') { $error = 'Ошибка сохранения: необходимо загрузить картинку формата png или jpg'; return array('organization' => $organization, 'error' => $error); } $file->move('upload/company', $name); $organization->setImageFile($name); } # Присоединяем человека к организации $this->getUser()->setOrganization($organization); $em->flush($this->getUser()); # уведомление администраторов о регистрации организации $this->get('email.service')->send($this->container->getParameter('manager_emails'), array('LearningMainBundle:Email:registration_organization_notice.html.twig', array('user' => $this->getUser(), 'organization' => $organization)), 'Регистрация новой организации'); return $this->redirect($this->generateUrl('_index')); } else { return array(); } }