Example #1
0
 /**
  * Validate the form
  */
 private function validateForm()
 {
     if ($this->frm->isSubmitted()) {
         $this->frm->cleanupFields();
         // validate fields
         $this->frm->getField('title')->isFilled(BL::err('TitleIsRequired'));
         if ($this->frm->getField('image')->isFilled()) {
             $this->frm->getField('image')->isAllowedExtension(array('jpg', 'png', 'gif', 'jpeg'), BL::err('JPGGIFAndPNGOnly'));
             $this->frm->getField('image')->isAllowedMimeType(array('image/jpg', 'image/png', 'image/gif', 'image/jpeg'), BL::err('JPGGIFAndPNGOnly'));
         }
         $this->meta->validate();
         if ($this->frm->isCorrect()) {
             // build item
             $item['title'] = $this->frm->getField('title')->getValue();
             $item['meta_id'] = $this->meta->save();
             $item['sequence'] = BackendCatalogModel::getMaximumCategorySequence() + 1;
             $item['language'] = Language::getWorkingLanguage();
             // the image path
             $imagePath = FRONTEND_FILES_PATH . '/catalog/brands';
             // create folders if needed
             $fs = new Filesystem();
             if (!$fs->exists($imagePath . '/source')) {
                 $fs->mkdir($imagePath . '/source');
             }
             if (!$fs->exists($imagePath . '/150x150')) {
                 $fs->mkdir($imagePath . '/150x150');
             }
             // is there an image provided?
             if ($this->frm->getField('image')->isFilled()) {
                 // build the image name
                 $item['image'] = $this->meta->getUrl() . '.' . $this->frm->getField('image')->getExtension();
                 // upload the image & generate thumbnails
                 $this->frm->getField('image')->generateThumbnails($imagePath, $item['image']);
             }
             // save the data
             $item['id'] = BackendCatalogModel::insertBrand($item);
             // trigger event
             BackendModel::triggerEvent($this->getModule(), 'after_add_brand', array('item' => $item));
             // everything is saved, so redirect to the overview
             $this->redirect(BackendModel::createURLForAction('brands') . '&report=added-brand&var=' . urlencode($item['title']) . '&highlight=row-' . $item['id']);
         }
     }
 }
Example #2
0
 /**
  * Validate the form
  */
 private function validateForm()
 {
     if ($this->frm->isSubmitted()) {
         $this->frm->cleanupFields();
         // validate fields
         if ($this->frm->getField('image')->isFilled()) {
             $this->frm->getField('image')->isAllowedExtension(array('jpg', 'png', 'gif', 'jpeg'), BL::err('JPGGIFAndPNGOnly'));
             $this->frm->getField('image')->isAllowedMimeType(array('image/jpg', 'image/png', 'image/gif', 'image/jpeg'), BL::err('JPGGIFAndPNGOnly'));
         }
         $this->meta->validate();
         if ($this->frm->isCorrect()) {
             // build item
             $item['language'] = BL::getWorkingLanguage();
             $item['title'] = $this->frm->getField('title_nl')->getValue();
             $item['meta_id'] = $this->meta->save();
             $item['sequence'] = BackendCatalogModel::getMaximumCategorySequence() + 1;
             $item['ballcolor'] = $this->frm->getField('ballcolor')->getValue();
             if ($this->frm->getField('parent_id')->getValue() != 'no_category') {
                 $item['parent_id'] = $this->frm->getField('parent_id')->getValue();
             }
             // the image path
             $imagePath = FRONTEND_FILES_PATH . '/' . $this->getModule() . '/categories';
             // create folders if needed
             $fs = new Filesystem();
             if (!$fs->exists($imagePath . '/source')) {
                 $fs->mkdir($imagePath . '/source');
             }
             if (!$fs->exists($imagePath . '/150x150')) {
                 $fs->mkdir($imagePath . '/150x150');
             }
             if (!$fs->exists($imagePath . '/800x')) {
                 $fs->mkdir($imagePath . '/800x');
             }
             if (!$fs->exists($imagePath . '/400x480')) {
                 $fs->mkdir($imagePath . '/400x480');
             }
             // is there an image provided?
             if ($this->frm->getField('image')->isFilled()) {
                 // build the image name
                 $item['image'] = $this->meta->getUrl() . $this->frm->getField('image')->getExtension();
                 // upload the image & generate thumbnails
                 $this->frm->getField('image')->generateThumbnails($imagePath, $item['image']);
             }
             // save the data
             $item['id'] = BackendCatalogModel::insertCategory($item);
             //--Add the languages
             foreach ((array) BackendModel::get('fork.settings')->get('Core', 'languages') as $key => $language) {
                 $itemLanguage = array();
                 $itemLanguage['id'] = $item['id'];
                 $itemLanguage['language'] = $language;
                 //                    $itemLanguage['meta_id'] = $this->meta[$language]['meta']->save();
                 $itemLanguage['title'] = $this->frm->getField('title_' . $language)->getValue();
                 $itemLanguage['description'] = $this->frm->getField('description_' . $language)->getValue();
                 $itemLanguage['summary'] = $this->frm->getField('summary_' . $language)->getValue();
                 $itemLanguage['url'] = BackendCatalogModel::getURLForCategoryLanguage($this->frm->getField('title_' . $language)->getValue(), null, $language);
                 $itemLanguage['balltext'] = $this->frm->getField('balltext_' . $language)->getValue();
                 BackendCatalogModel::insertCategoryLanguage($itemLanguage);
             }
             // trigger event
             BackendModel::triggerEvent($this->getModule(), 'after_add_category', array('item' => $item));
             // everything is saved, so redirect to the overview
             $this->redirect(BackendModel::createURLForAction('categories') . '&report=added-category&var=' . urlencode($this->frm->getField('title_nl')->getValue()) . '&highlight=row-' . $item['id']);
         }
     }
 }