/** * Handle form action */ protected function formAction() { switch ($this->s->action) { case 'create': $spot = $this->vars['idspot'] != 0 ? PokerSpot::getInstance($this->vars['idspot']) : FALSE; $table = new PokerTable($this->vars['title'], $this->vars['seats'], $this->vars['blind'], $spot); if ($table->save()) { Error::addMessage('Der Pokertisch wurde erfolgreich angelegt!'); $this->form['reload'] = array('poker' => array('poker_table' => 'tables')); return true; } //*/ break; case 'update': $table = PokerTable::getInstance($this->s->element); $table->title = $this->vars['title']; $table->seats = $this->vars['seats']; if ($this->vars['idspot'] != 0) { $table->spot = PokerSpot::getInstance($this->vars['idspot']); } $table->blinds = array('big' => 2 * $this->vars['blind'], 'small' => $this->vars['blind']); if ($table->save()) { Error::addMessage('Die Änderungen wurden erfolgreich gespeichert!'); $this->form['reload'] = array('poker' => array('poker_table' => 'tables')); return true; } break; case 'delete': $table = PokerTable::getInstance($this->s->element); if (is_object($table->game)) { Error::addError('Der Tisch kann nicht gelöscht werden (Spiel ist noch aktiv)!'); return false; } if ($table->delete()) { Error::addMessage('Der Pokertisch wurde erfolgreich gelöscht!'); $this->form['reload'] = array('poker' => array('poker_table' => 'tables')); return true; } break; case 'reload': echo $this->listTables(); break; } return false; }