public function addAction()
 {
     //echo getcwd()."/public/_gallery";
     //echo $this->getEvent()->getRouteMatch()->getParam('type');
     if ($this->getEvent()->getRouteMatch()->getParam('type') == "gallery") {
         $form = new GalleryForm();
         $form->add(array('name' => 'id_section', 'attributes' => array('type' => 'hidden', 'value' => $this->getEvent()->getRouteMatch()->getParam('id'))));
     } elseif ($this->getEvent()->getRouteMatch()->getParam('type') == "item") {
         $form = new ItemForm();
         $form->add(array('name' => 'id_gallery', 'attributes' => array('type' => 'hidden', 'value' => $this->getEvent()->getRouteMatch()->getParam('id'))));
         //echo $this->getEvent()->getRouteMatch()->getParam('id');
     } else {
         $form = new SectionForm();
     }
     //return array('form' => $form);
     $viewModel = new ViewModel();
     $viewModel->setVariables(array('form' => $form));
     $request = $this->getRequest();
     if ($request->isPost()) {
         //echo $form->getName();
         if ($form->getName() == "Item") {
             /******/
             $nonFile = $request->getPost()->toArray();
             $File = $this->params()->fromFiles('fileupload');
             $data = array_merge($nonFile, array('fileupload' => $File['name']));
             //set data post and file ...
             $form->setData($data);
             $size = new Size(array('max' => 2000000));
             $adapter = new \Zend\File\Transfer\Adapter\Http();
             //validator can be more than one...
             $adapter->setValidators(array($size), $File['name']);
             if (!$adapter->isValid()) {
                 $dataError = $adapter->getMessages();
                 $error = array();
                 foreach ($dataError as $key => $row) {
                     $error[] = $row;
                 }
                 //set formElementErrors
                 $form->setMessages(array('fileupload' => $error));
             } else {
                 $g = $this->getEntityManager()->getRepository('Backend\\Entity\\Gallery')->findOneBy(array('id' => $this->getEvent()->getRouteMatch()->getParam('id')));
                 echo getcwd() . $g->getPath() . " * " . getcwd() . $g->getPath() . "/thumbs" . "<br/>";
                 $adapter->setDestination(getcwd() . $g->getPath());
                 @chmod(getcwd() . $g->getPath() . $File['name'], 0777);
                 /*if (!copy(getcwd() . $g->getPath()."/".$File['name'], getcwd() . $g->getPath()."/thumbs"."/".$File['name'])) {
                 			echo "Error al copiar ".getcwd() . $g->getPath()."/".$File['name']."...\n";
                 		}*/
                 $path = substr($g->getPath(), 7) . "/" . $File['name'];
                 $path_thumb = substr($g->getPath(), 7) . "/thumbs/" . $File['name'];
                 $i = new Item();
                 $i->setDescripcion($request->getPost("description"));
                 $i->setComment($request->getPost("comentario"));
                 $i->setId_gallery($this->getEvent()->getRouteMatch()->getParam('id'));
                 $i->setPath($path);
                 $i->setPath_thumb($path_thumb);
                 $i->setDeleted(0);
                 $i->setVisible(1);
                 $this->getEntityManager()->persist($i);
                 $this->getEntityManager()->flush();
                 echo "<pre>";
                 //echo $this->getEvent()->getRouteMatch()->getParam('type');
                 //echo $this->getEvent()->getRouteMatch()->getParam('id');
                 echo $File['name'];
                 var_dump($request->getPost("description"));
                 var_dump($request->getPost("comentario"));
                 echo "</pre>";
                 if ($adapter->receive($File['name'])) {
                     //	$profile->exchangeArray($form->getData());
                     //	echo 'Profile Name '.$profile->profilename.' upload '.$profile->fileupload;
                 }
                 $this->createThumbs(getcwd() . $g->getPath(), getcwd() . $g->getPath() . "/thumbs", 100);
             }
             /******/
         } elseif ($form->getName() == "Gallery") {
             //echo $File['name'];
             $gal = $this->getEntityManager()->getRepository('Backend\\Entity\\Gallery')->findOneBy(array('slug' => $request->getPost("slug"), 'id_section' => $this->getEvent()->getRouteMatch()->getParam('id')));
             //var_dump($gal);
             if (!empty($gal)) {
                 echo "<pre>";
                 print "Identificador repetido";
                 echo "</pre>";
             } else {
                 $s = $this->getEntityManager()->getRepository('Backend\\Entity\\Section')->findOneBy(array('id' => $this->getEvent()->getRouteMatch()->getParam('id')));
                 //echo $s->getUrl();
                 $new_url = $s->getUrl() . "/" . $request->getPost("slug");
                 $new_path = $s->getPath() . "/" . $request->getPost("slug");
                 //echo getcwd()."$new_path";
                 $g = new Gallery();
                 $g->setDescripcion($request->getPost("description"));
                 $g->setComment($request->getPost("comentario"));
                 $g->setSlug($request->getPost("slug"));
                 $g->setId_section($this->getEvent()->getRouteMatch()->getParam('id'));
                 $g->setPath($new_path);
                 $g->setUrl($new_url);
                 $g->setDeleted(0);
                 $g->setVisible(1);
                 $this->getEntityManager()->persist($g);
                 $this->getEntityManager()->flush();
                 mkdir(getcwd() . "{$new_path}", 0777, true);
                 mkdir(getcwd() . "{$new_path}" . "/thumbs", 0777, true);
                 echo "<pre>";
                 print 'Se creo nueva galeria "' . $request->getPost("description") . '" en la seccion "' . $s->getDescripcion() . '"';
                 echo "</pre>";
                 /*echo "<pre>";
                 		var_dump ($this->getEvent()->getRouteMatch()->getParam('type'));
                 		var_dump ($this->getEvent()->getRouteMatch()->getParam('id'));
                 		//
                 		var_dump($request->getPost("description"));
                 		var_dump($request->getPost("slug"));
                 		var_dump($request->getPost("comentario"));
                 		echo "</pre>";
                 		*/
             }
         }
         //good
         return $this->redirect()->toRoute('backend');
     }
     //$viewModel->setTemplate ( "backend/index/index" );
     return $viewModel;
 }