Example #1
0
 public function extendDataSingle($item)
 {
     $prefLocale = osc_current_user_locale();
     $descriptions = $this->conn->osc_dbFetchResults('SELECT * FROM %st_item_description WHERE fk_i_item_id = %d', DB_TABLE_PREFIX, $item['pk_i_id']);
     $item['locale'] = array();
     foreach ($descriptions as $desc) {
         if ($desc['s_title'] != "" || $desc['s_description'] != "") {
             $item['locale'][$desc['fk_c_locale_code']] = $desc;
         }
     }
     $is_itemLanguageAvailable = !empty($item['locale'][$prefLocale]['s_title']) && !empty($item['locale'][$prefLocale]['s_description']);
     if (isset($item['locale'][$prefLocale]) && $is_itemLanguageAvailable) {
         $item['s_title'] = $item['locale'][$prefLocale]['s_title'];
         $item['s_description'] = $item['locale'][$prefLocale]['s_description'];
     } else {
         $mCategories = new Category();
         $aCategory = $mCategories->findByPrimaryKey($item['fk_i_category_id']);
         $title = sprintf(__('%s in'), $aCategory['s_name']);
         if (isset($item['s_city'])) {
             $title .= ' ' . $item['s_city'];
         } else {
             if (isset($item['s_region'])) {
                 $title .= ' ' . $item['s_region'];
             } else {
                 if (isset($item['s_country'])) {
                     $title .= ' ' . $item['s_country'];
                 }
             }
         }
         $item['s_title'] = $title;
         $item['s_description'] = __('There\'s no description available in your language');
         unset($data);
     }
     return $item;
 }