Exemplo n.º 1
0
 /**
  * функция транслитерации ЧПУ - формирует поле tId (идентификатор записи с транслитерацией)
  *
  * @param (array) $data - массив данных объявления
  *
  * @return void
  */
 static function chpuTranslit(&$data)
 {
     if (CONF_ENABLE_CHPU && CONF_ENABLE_TRANSLITERATION_CHPU) {
         if (is_array($data) && !empty($data['id'])) {
             if (!empty($data['title'])) {
                 $tId = $data['title'];
             } elseif (!empty($data['name'])) {
                 $tId = $data['name'];
             } elseif (!empty($data['company_name'])) {
                 $tId = $data['company_name'];
             } else {
                 $tId = false;
             }
             if (!empty($tId)) {
                 $data['tId'] = CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END ? strings::str2url($tId) . '-' . $data['id'] : $data['id'] . '-' . strings::str2url($tId);
             } else {
                 $data['tId'] =& $data['id'];
             }
         } elseif (is_object($data) && !empty($data->id)) {
             if (!empty($data->title)) {
                 $tId = $data->title;
             } elseif (!empty($data->name)) {
                 $tId = $data->name;
             } elseif (!empty($data->company_name)) {
                 $tId = $data->company_name;
             } else {
                 $tId = false;
             }
             if (!empty($tId)) {
                 $data->tId = CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END ? strings::str2url($tId) . '-' . $data->id : $data->id . '-' . strings::str2url($tId);
             } else {
                 $data->tId =& $data->id;
             }
         }
     }
 }
Exemplo n.º 2
0
 /**
  * protected функция получает данные объявлений для просмотра в кабинете пользователя
  *
  * @return array or bool
  */
 public function getUserAnnounces(&$token, &$arrLimit)
 {
     if (!empty($_SESSION['sd_user']['job_conf']['id'])) {
         $strWhere = "id_user IN ('" . $_SESSION['sd_user']['job_conf']['id'] . "')";
         $this->getAnnouncesByToken($token, $strWhere, $arrLimit);
         if (!empty($this->annData) && is_array($this->annData)) {
             $arrAnnIds = array_keys($this->annData);
             $storing = new storing();
             $arrData = array('type' => $this->retTableName(), 'arrIds' => $arrAnnIds);
             $storingData = $storing->getStoringData($arrData);
             if (!empty($storingData) && is_array($storingData)) {
                 foreach ($storingData as &$sData) {
                     $idContent =& $sData['id_content'];
                     unset($sData['id'], $sData['id_content']);
                     if (defined('CONF_ENABLE_CHPU') && defined('CONF_ENABLE_TRANSLITERATION_CHPU') && CONF_ENABLE_CHPU && CONF_ENABLE_TRANSLITERATION_CHPU && !empty($sData['company_name'])) {
                         $sData['tId'] = CONF_TRANSLITERATION_CHPU_ID_PUT_TO_END ? strings::str2url($sData['company_name']) . '-' . $sData['id_user'] : $sData['id_user'] . '-' . strings::str2url($sData['company_name']);
                     } else {
                         $sData['tId'] =& $sData['id_user'];
                     }
                     $this->annData[$idContent]['storing'][] =& $sData;
                 }
             }
             foreach ($this->annData as &$aData) {
                 if (!isset($aData['storing'])) {
                     $aData['storing'] = false;
                 }
             }
             return $this->annData;
         } else {
             return false;
         }
     } else {
         return false;
     }
 }