예제 #1
0
 /**
  * @param int $limit
  * @param string $lastID
  * @return Array|null
  */
 public static function getCategories($limit = 10, $lastID = null)
 {
     try {
         $categories = \plenigo\services\ProductService::getCategoryList($limit, $lastID);
     } catch (Exception $e) {
         self::PIO()->log("getCategories: ", $e->getMessage());
         return null;
     }
     return $categories;
 }
 function extendedCategories($config)
 {
     $this->init();
     // get our categories first
     try {
         $categories = \plenigo\services\ProductService::getCategoryList(20, null);
     } catch (Exception $e) {
         \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($e->getMessage());
         return $config;
     }
     // our "cached" products
     $categoriesFromDB = $this->getPlenigoCategories();
     // create option list
     $optionList = array();
     $optionList[] = array(0 => '', 1 => 'keine Zuordnung');
     // Iterating our products
     if (is_array($categories) && $categories['totalElements']) {
         foreach ($categories['elements'] as $detail) {
             // creating new or missing products
             $category = \plenigo\services\ProductService::getCategoryData($detail->categoryId);
             //                    \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($category);
             if (!$categoriesFromDB[$category->getId()]) {
                 $id = $this->insertCategory($category);
             } else {
                 $id = $categoriesFromDB[$category->getId()]['uid'];
             }
             //                $data[] = array('uid' => $id, 'title' => $category->getTitle(), 'subtitle' => $category->getDescription);
             $optionList[] = array(0 => $category->getTitle() . ": (" . $category->getPrice() . ")", 1 => $id);
         }
         $config['items'] = $optionList;
         //                                \TYPO3\CMS\Extbase\Utility\DebuggerUtility::var_dump($config['items']);
     }
     return $config;
 }