Exemplo n.º 1
0
 private function _postProcess()
 {
     if (Tools::isSubmit('submitPsblog')) {
         $pref = $_POST['pref'];
         $old_values = self::getPreferences();
         $checkboxes = array('category_active', 'product_active', 'comment_active', 'comment_moderate', 'comment_guest', 'list_display_date', 'view_display_date', 'related_active', 'view_display_popin', 'rewrite_active', 'product_page_related', 'rss_active', 'share_active');
         foreach ($checkboxes as $input) {
             if (!isset($pref[$input])) {
                 $pref[$input] = 0;
             }
         }
         $new_values = array_merge(self::$default_values, $pref);
         Configuration::updateValue('PSBLOG_CONF', base64_encode(serialize($new_values)));
         if ($new_values['product_page_related'] != $old_values['product_page_related']) {
             if ($new_values['product_page_related'] == 1) {
                 $this->registerHook('productTab');
                 $this->registerHook('productTabContent');
             } else {
                 $this->unregisterHook(Hook::getIdByName('productTab'));
                 $this->unregisterHook(Hook::getIdByName('productTabContent'));
             }
         }
         $this->_html .= '<div class="conf confirm">' . $this->l('Settings updated') . '</div>';
     } elseif (Tools::isSubmit('submitGenerateImg')) {
         include_once _PS_MODULE_DIR_ . "psblog/classes/BlogPost.php";
         $images = BlogPost::getAllImages();
         $save_path = _PS_ROOT_DIR_ . '/' . rtrim(self::$pref['img_save_path'], '/') . "/";
         foreach ($images as $img) {
             @unlink($save_path . 'thumb/' . $img['img_name']);
             @unlink($save_path . 'list/' . $img['img_name']);
             BlogPost::generateImageThumbs($img['id_blog_image']);
         }
         $this->_html .= '<div class="conf confirm">' . $this->l('Images regenerated') . '</div>';
     } elseif (Tools::isSubmit('submitGenerateSitemap')) {
         include_once _PS_MODULE_DIR_ . "psblog/classes/BlogShop.php";
         BlogShop::generateSitemap();
         $this->_html .= '<div class="conf confirm">' . $this->l('Google sitemap regenerated') . '</div>';
     }
 }
Exemplo n.º 2
0
 public function processSave()
 {
     $object = parent::processSave();
     if ($object) {
         if (empty($this->errors)) {
             $save_path = rtrim($this->conf['img_save_path'], '/') . "/";
             $groupList = Tools::getValue('groupBox');
             $object->cleanCategories();
             if (is_array($groupList) and sizeof($groupList) > 0) {
                 $object->addCategories($groupList);
             }
             $object->cleanProducts();
             if (Tools::getValue('inputAccessories')) {
                 $productArray = explode('-', Tools::getValue('inputAccessories'), -1);
                 $object->addProducts($productArray);
             }
             $groupRelated = Tools::getValue('groupRelated');
             $object->cleanRelated();
             if (is_array($groupRelated) and sizeof($groupRelated) > 0) {
                 $object->addRelated($groupRelated);
             }
             $images_position = Tools::getValue('img_pos');
             if (is_array($images_position) && count($images_position)) {
                 $object->setImagesPosition($images_position);
             }
             if (isset($_FILES['blog_img']) && !empty($_FILES['blog_img']['tmp_name'][0])) {
                 $j = 0;
                 foreach ($_FILES['blog_img']['name'] as $key => $val) {
                     if (empty($val)) {
                         continue;
                     }
                     $id_img = null;
                     try {
                         $file['name'] = $val;
                         $file['type'] = $_FILES['blog_img']['type'][$key];
                         $file['error'] = $_FILES['blog_img']['error'][$key];
                         $file['size'] = $_FILES['blog_img']['size'][$key];
                         $file['tmp_name'] = $_FILES['blog_img']['tmp_name'][$key];
                         //img name
                         $curr_time = time() + $j;
                         $ext = substr(strrchr($file['name'], '.'), 1);
                         $img_name = $curr_time . '.' . $ext;
                         $dest = _PS_ROOT_DIR_ . '/' . $save_path;
                         $this->checkFile($file, $dest);
                         $id_img = $object->addImage($img_name, 0);
                         $this->uploadFile($file, $dest . $img_name);
                         $object->generateImageThumbs($id_img);
                     } catch (Exception $e) {
                         $this->_errors[] = Tools::displayError($e->getMessage());
                         if (!is_null($id_img)) {
                             $object->removeImage($id_img);
                         }
                     }
                     $j++;
                 }
             }
             BlogShop::generateSitemap();
             if (Tools::getValue('blog_img_default')) {
                 $idImg = Tools::getValue('blog_img_default');
                 $object->setImageDefault($idImg);
             } elseif ($object->getImages(true) > 0) {
                 $object->setImageDefault(0);
             }
         }
     }
     return $object;
 }