Beispiel #1
0
 public function newAction()
 {
     $this->assetsPackage('spinner');
     $this->loadInlineActionJs();
     if ($this->request->isPost()) {
         if ($this->token->check()) {
             $name = $this->request->getPost('listName', 'string');
             $clone = $this->request->getPost('listClone', 'int');
             $empty = $this->request->getPost('listEmpty') == 'on' ? true : false;
             $listino = new Listini();
             $listino->nome = $name;
             $listino->attivo = 1;
             try {
                 if ($listino->save() == false) {
                     foreach ($listino->getMessages() as $message) {
                         $this->flash->error($message);
                     }
                 } else {
                     if ($clone > 0) {
                         $response = $this->clonePriceList($clone, $listino->id);
                         if ($response == false) {
                             $this->flash->error(_('Impossibile clonare il listino'));
                         } else {
                             $this->flash->success($response);
                         }
                     } else {
                         // FIRST VERSION
                         $versione = new ListiniVersioni();
                         $versione->pr_listini_id = $listino->id;
                         $versione->setAsFirstVersion();
                         if ($versione->save() == false) {
                             $this->flash->error(_('Impossibile creare la prima versione'));
                         } else {
                             if (!$empty) {
                                 $this->fillPriceList($listino->id);
                             }
                             $this->flash->success(_('Il listino e stato creato correttamente'));
                         }
                     }
                 }
             } catch (\Exception $e) {
                 $this->flash->error($e->getMessage());
             }
         }
     }
 }