public function buildForm(FormBuilderInterface $builder, array $options)
    {
    	$cities=new AdsmanagerCities();
    	
        $builder
        	->add('location','choice', array(
        		'choices' =>$cities->getCities($GLOBALS['kernel']->getContainer()->get('doctrine.orm.entity_manager')),
        		'multiple' => false,'empty_value' => 'Choose an option','label' => 'form.location', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
        				'class'   => 'js-select','id' =>'categories','data-placeholder'=>'Seleccione Ciudad','style'=>'width: 13rem;')
        		))
            ->add('username', null, array('label' => 'form.username', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
                'class'   => 'userForm')))
            ->add('firstname', null, array('label' => 'form.firstname', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
                		'class'   => 'userForm')))
            ->add('lastname', null, array('label' => 'form.lastname', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
                				'class'   => 'userForm')))
            ->add('email', 'email', array('label' => 'form.email', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
                'class'   => 'userForm')))
			->add('birthday', 'date', array(
					'years' => range(1950,2010),
					'format' => 'MM/dd/yyyy',
					'label' => 'form.birthday', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
							'class'   => 'userForm')
			))
                
            ->add('plainPassword', 'repeated', array(
                'type' => 'password',
                'options' => array('translation_domain' => 'FOSUserBundle','attr'=>  array(
							'class'   => 'userForm')),
                'first_options' => array('label' => 'form.password'),
                'second_options' => array('label' => 'form.password_confirmation'),
                'invalid_message' => 'fos_user.password.mismatch',
            ))
        ;
    }
    public function appCityAction($city)
    {
    	 
    	if(!$this->container->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') ){
    		return $this->redirectToRoute('fos_user_security_login');
    	}
    	 
    	$categories=$this->getDoctrine()
    	->getRepository("AdsmanagerBundle:AdsmanagerCategories");
    	$query = $categories->createQueryBuilder('a')
    	->addOrderBy('a.ordering', 'ASC')
    	->getQuery();
    
    	$categories = $query->getResult();
	 
		$cities=new AdsmanagerCities();
		
		$adCities=$cities->getAllCities($this->getDoctrine()->getEntityManager());
		$locationCity=$cities->setAdCity($this->getDoctrine()->getEntityManager(),$city);
    	 
    	$em = $this->getDoctrine()->getManager();
    	$query = $em->createQuery(
    			'SELECT a
				    FROM AdsmanagerBundle:AdsmanagerAds a
				    WHERE a.published = 1
    				AND a.expirationDate >= :date
    			    AND a.adLocation = :location'
   
    	)->setParameter('date',new DateTime())->setParameter('location',$locationCity->getTitle());
    	 
    	$ads = $query->getResult();
    
    	return $this->render('AdsmanagerBundle:Map:ads.html.twig',array("categories"=>$categories,"ads"=>$ads,"location"=>$locationCity,"cities"=>$adCities));
    }
Ejemplo n.º 3
0
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     if (class_exists('Symfony\Component\Security\Core\Validator\Constraints\UserPassword')) {
         $constraint = new UserPassword();
     } else {
         // Symfony 2.1 support with the old constraint class
         $constraint = new OldUserPassword();
     }
     $cities=new AdsmanagerCities();
     $this->buildUserForm($builder, $options);
     $builder
     ->add('location','choice', array(
     		'choices' =>$cities->getCities($GLOBALS['kernel']->getContainer()->get('doctrine.orm.entity_manager')),
     		'multiple' => false,'empty_value' => 'Choose an option','label' => 'form.location', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     				'class'   => 'js-select','id' =>'categories','data-placeholder'=>'Seleccione Ciudad','style'=>'width: 13rem;')
     ))
     ->add('username', null, array('label' => 'form.username', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     		'class'   => 'userForm')))
     ->add('firstname', null, array('label' => 'form.firstname', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     				'class'   => 'userForm')))
     ->add('lastname', null, array('label' => 'form.lastname', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     						'class'   => 'userForm')))
     ->add('email', 'email', array('label' => 'form.email', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     								'class'   => 'userForm')))
     ->add('birthday', 'date', array(
     		'years' => range(1950,2010),
     		'format' => 'MM/dd/yyyy',
     		'label' => 'form.birthday', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
     		'class'   => 'userForm')
     	));
     
   /*  ->add('current_password', 'password', array(
         'label' => 'form.current_password','attr'=>  array(
     		'class'   => 'userForm'),
         'translation_domain' => 'FOSUserBundle',
         'mapped' => false,
         'constraints' => $constraint,
     ));*/
 }
Ejemplo n.º 4
0
    public function showMapAction($idAd,$idCity,Request $request)
    {
    	if(!$this->container->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') ){
    		return $this->redirectToRoute('fos_user_security_login');
    	}
    
    	$city=$this->getDoctrine()
    	->getRepository("AdsmanagerBundle:AdsmanagerCities")->findOneById($idCity);
    
    	$em = $this->getDoctrine()->getManager();
    	$query = $em->createQuery(
    			'SELECT a
				    FROM AdsmanagerBundle:AdsmanagerAds a
				    INNER JOIN a.catid c
				    INNER JOIN AdsmanagerBundle:AdsmanagerCategories b
				    WHERE a.published = 1
    				AND a.expirationDate >= :date
    			    AND a.adLocation = :location
				    AND a.id =:id
				    AND b.id = c.id
				    ORDER BY a.adHeadline ASC
				 '
    
    	)->setParameter('date',new DateTime())->setParameter('location',$city->getTitle())
    	->setParameter('id',$idAd);
    
    	$ads = $query->getResult();
    
    	$cities=new AdsmanagerCities();
    		
    	$adCities=$cities->getAllCities($this->getDoctrine()->getEntityManager());
    
    	$locationCity=$cities->getAdCity($this->getDoctrine()->getEntityManager(),$city->getTitle(),$this);
    
    	$categories=$this->getDoctrine()
    	->getRepository("AdsmanagerBundle:AdsmanagerCategories");
    	$query = $categories->createQueryBuilder('a')
    	->addOrderBy('a.ordering', 'ASC')
    	->getQuery();
    
    	$categories = $query->getResult();
    
    	if(!$ads){
    		return $this->render('AdsmanagerBundle:Ads:dontExits.html.twig',array("categories"=>$categories,"cities"=>$adCities,"location"=>$locationCity,"latitude"=>0,"longitude"=>0));
    	}
    
    	return $this->render('AdsmanagerBundle:Map:ads.html.twig',array("categories"=>$categories,"ads"=>$ads,"location"=>$locationCity,"cities"=>$adCities));
    
    }
    public function searchCategoryAction($idCategory,$idCity,$range,Request $request)
    {
        if(!$this->container->get('security.context')->isGranted('IS_AUTHENTICATED_FULLY') ){
            return $this->redirectToRoute('fos_user_security_login');
        }

        $category=$this->getDoctrine()
        ->getRepository("AdsmanagerBundle:AdsmanagerCategories")->findOneById($idCategory);
        
        if($category->getParent() == '0'){
           return $this->forward('AdsmanagerBundle:AdsCategories:show',array('idCategory' => $idCategory, 'idCity' => $idCity, 'range' => $range));
        }
        $city=$this->getDoctrine()
        ->getRepository("AdsmanagerBundle:AdsmanagerCities")->findOneById($idCity);
        
        $ads = $this->getAdsCategory ($city,$idCategory,$range);

        $cities=new AdsmanagerCities();
         
        $adCities=$cities->getAllCities($this->getDoctrine()->getEntityManager());

        $locationCity=$cities->getAdCity($this->getDoctrine()->getEntityManager(),$city->getTitle(),$this);
        
        $categories=$this->getDoctrine()
        ->getRepository("AdsmanagerBundle:AdsmanagerCategories");
        $query = $categories->createQueryBuilder('a')
        ->addOrderBy('a.ordering', 'ASC')
        ->getQuery();
        
        $categories = $query->getResult();
        
        if(!$ads){
            return $this->render('AdsmanagerBundle:Categories:dontExits.html.twig',array("categories"=>$categories,"cities"=>$adCities,"location"=>$locationCity));
        }
        $adsFullData = array();
        foreach ($ads as $ad){
            array_push($ad,$this->getRatedAds($ad['0']));
            array_push($adsFullData,$ad);
        }

        return $this->render('AdsmanagerBundle:Categories:show.html.twig',
                array("categories"=>$categories,"cities"=>$adCities,"location"=>$locationCity,"ads"=>$adsFullData,"category"=>$category,"city"=>$city,"range"=>$range));

    }
 public function setAdCity(EntityManager $em,$cityId) {
 
 
 	$city=new AdsmanagerCities();
 
 	$adCity=$em
 	->getRepository("AdsmanagerBundle:AdsmanagerCities")
 	->findBy(array('id' => $cityId),
 			array('alias' => 'asc'));
 
 	foreach ($adCity as $cities){
 		$city->setId($cities->getId());
 		$city->setTitle($cities->getTitle());
 		$city->setAlias(strtoupper($cities->getAlias()));
 		$city->setLatitude($cities->getLatitude());
 		$city->setLongitude($cities->getLongitude());
 	}
 
 	if(!$adCity){
 		$city->setId($GLOBALS['kernel']->getContainer()->getParameter('locationId'));
 		$city->setTitle($GLOBALS['kernel']->getContainer()->getParameter('location'));
 		$city->setAlias(strtoupper($GLOBALS['kernel']->getContainer()->getParameter('alias')));
 		$city->setLatitude($GLOBALS['kernel']->getContainer()->getParameter('latitude'));
 		$city->setLongitude($GLOBALS['kernel']->getContainer()->getParameter('longitude'));
 	}
 
 	return $city;
 }
    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
    	$cities=new AdsmanagerCities();
        $builder
            ->add('catid')
            ->add('adLocation','choice', array(
                  'choices' =>$cities->getCities($this->em),
                  'multiple' => false,'empty_value' => 'Choose an option','label' => 'form.location', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'js-select','id' =>'categories','data-placeholder'=>'Seleccione Ciudad','style'=>'width: 13rem;')
              ))
            ->add('adHeadline','text',array(
			 'label' => 'form.adHeadline', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm')
              ))
            ->add('adKeywords','textarea',array(
			 'label' => 'form.adKeywords', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm')
              ))
            ->add('adText','textarea',array(
			 'label' => 'form.adText', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm')
              ))
            ->add('adPhone','text',array(
			 'label' => 'form.adPhone', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm')
              ))
            ->add('adAddress','text',array(
			 'label' => 'form.adAddress', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm')
              ))
            ->add('adAttentionHoursInit','choice', array(
                  'choices' =>$this->getHours(),
                  'multiple' => false,'label' => 'form.adAttentionHoursInit', 'translation_domain' => 'FOSUserBundle')
              )
             ->add('adAttentionHoursFinish','choice', array(
              		'choices' =>$this->getHours(),
              		 'multiple' => false,'label' => 'form.adAttentionHoursFinish', 'translation_domain' => 'FOSUserBundle')
             )
             ->add('adAttentiondaysInit','choice', array(
              		'choices' =>$this->getDays(),
 					'multiple' => false,'label' => 'form.adAttentiondaysInit', 'translation_domain' => 'FOSUserBundle')
              
              )
             ->add('adAttentiondaysFinish','choice', array(
              		'choices' =>$this->getDays(),
 					'multiple' => false,'label' => 'form.adAttentiondaysFinish', 'translation_domain' => 'FOSUserBundle')
                )
            ->add('adLatitude','text',array(
			 'label' => 'form.adLatitude', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm','readonly'   => '','required'=>'')
              ))
            ->add('adLongitude','text',array(
			 'label' => 'form.adLongitude', 'translation_domain' => 'FOSUserBundle','attr'=>  array(
              		'class'   => 'userForm','readonly'   => '')
              ))
              ->add('Guardar','submit',array(
			 'attr'=>  array(
              		'class'   => 'button success')
              ))
              ;
        ;
    }