/**
  * Action method shows and processes form used for new gallery creation
  * 
  * @before _secured, _admin
  */
 public function add()
 {
     $view = $this->getActionView();
     $view->set('submstoken', $this->mutliSubmissionProtectionToken());
     if (RequestMethods::post('submitAddGallery')) {
         if ($this->checkCSRFToken() !== true && $this->checkMutliSubmissionProtectionToken(RequestMethods::post('submstoken')) !== true) {
             self::redirect('/admin/gallery/');
         }
         $errors = array();
         $urlKey = $this->_createUrlKey(RequestMethods::post('title'));
         if (!$this->_checkUrlKey($urlKey)) {
             $errors['title'] = array('Galerie s tímto názvem již existuje');
         }
         $gallery = new App_Model_Gallery(array('title' => RequestMethods::post('title'), 'avatarPhotoId' => 0, 'isPublic' => RequestMethods::post('public', 1), 'showDate' => RequestMethods::post('showdate', date('Y-m-d')), 'urlKey' => $urlKey, 'description' => RequestMethods::post('description', '')));
         if (empty($errors) && $gallery->validate()) {
             $id = $gallery->save();
             Event::fire('admin.log', array('success', 'Gallery id: ' . $id));
             $view->successMessage('Galerie' . self::SUCCESS_MESSAGE_1);
             self::redirect('/admin/gallery/');
         } else {
             Event::fire('admin.log', array('fail'));
             $view->set('gallery', $gallery)->set('submstoken', $this->revalidateMutliSubmissionProtectionToken())->set('errors', $errors + $gallery->getErrors());
         }
     }
 }