/** * <p>Метод возвращает параметры местоположения с кодом ID, включая параметры страны и города. Параметры, зависящие от языка, возвращаются для языка strLang. Метод динамичный.</p> * * * @param int $ID Код местоположения. </h * * @param string $strLang = LANGUAGE_ID Язык параметров, зависящих от языка. По умолчанию равен текущему * языку. * * @return array <p>Возвращает ассоциативный массив с ключами:</p> <table class="tnormal" * width="100%"> <tr> <th width="15%">Ключ</th> <th>Описание</th> <th>С версии</th> </tr> <tr> * <td>ID</td> <td>Код местоположения.</td> <td></td> </tr> <tr> <td>COUNTRY_ID</td> <td>Код * страны.</td> <td></td> </tr> <tr> <td>CITY_ID</td> <td>Код города.</td> <td></td> </tr> <tr> * <td>SORT</td> <td>Индекс сортировки.</td> <td></td> </tr> <tr> <td>COUNTRY_NAME_ORIG</td> * <td>Языконезависимое название страны.</td> <td></td> </tr> <tr> * <td>COUNTRY_SHORT_NAME</td> <td>Языконезависимое сокращенное название * страны.</td> <td></td> </tr> <tr> <td>COUNTRY_NAME_LANG</td> <td>Языкозависимое название * страны.</td> <td></td> </tr> <tr> <td>CITY_NAME_ORIG</td> <td>Языконезависимое название * города.</td> <td></td> </tr> <tr> <td>CITY_SHORT_NAME</td> <td>Языконезависимое * сокращенное название города.</td> <td></td> </tr> <tr> <td>CITY_NAME_LANG</td> * <td>Языкозависимое название города.</td> <td></td> </tr> <tr> <td>REGION_ID</td> <td>Код * региона.</td> <td></td> </tr> <tr> <td>REGION_NAME_ORIG</td> <td>Языконезависимое * название региона.</td> <td>12.5 </td> </tr> <tr> <td>REGION_SHORT_NAME</td> * <td>Языконезависимое сокращенное название региона.</td> <td>12.5 </td> </tr> * <tr> <td>REGION_NAME_LANG</td> <td>Языкозависимое название региона.</td> <td>12.5 </td> * </tr> <tr> <td>COUNTRY_NAME</td> <td>Языкозависимое название страны, если оно * есть. Иначе - языконезависимое название страны.</td> <td></td> </tr> <tr> * <td>CITY_NAME</td> <td>Языкозависимое название города, если оно есть. Иначе * - языконезависимое название города.</td> <td></td> </tr> <tr> <td>REGION_NAME</td> * <td>Языкозависимое название региона, если оно есть. Иначе - * языконезависимое название региона.</td> <td>12.5 </td> </tr> </table> <p> </p<a * name="examples"></a> * * <h4>Example</h4> * <pre> * <? * $arLocs = CSaleLocation::GetByID(22, LANGUAGE_ID); * echo $arLocs["COUNTRY_NAME"]." - ".$arLocs["CITY_NAME"];<br>?> * </pre> * * * @static * @link http://dev.1c-bitrix.ru/api_help/sale/classes/csalelocation/csalelocation__getbyid.bbc61011.php * @author Bitrix */ public static function GetByID($ID, $strLang = LANGUAGE_ID) { if (self::isLocationProMigrated()) { return parent::GetByID($ID, $strLang); } global $DB; $ID = IntVal($ID); /*$strSql = "SELECT L.ID, L.COUNTRY_ID, L.CITY_ID, L.SORT, ". " LC.NAME as COUNTRY_NAME_ORIG, LC.SHORT_NAME as COUNTRY_SHORT_NAME, LCL.NAME as COUNTRY_NAME_LANG, ". " LG.NAME as CITY_NAME_ORIG, LG.SHORT_NAME as CITY_SHORT_NAME, LGL.NAME as CITY_NAME_LANG, ". " IF(LCL.ID IS NULL, LC.NAME, LCL.NAME) as COUNTRY_NAME, ". " IF(LGL.ID IS NULL, LG.NAME, LGL.NAME) as CITY_NAME ". "FROM b_sale_location L ". " LEFT JOIN b_sale_location_country LC ON (L.COUNTRY_ID = LC.ID) ". " LEFT JOIN b_sale_location_city LG ON (L.CITY_ID = LG.ID) ". " LEFT JOIN b_sale_location_country_lang LCL ON (LC.ID = LCL.COUNTRY_ID AND LCL.LID = '".$DB->ForSql($strLang, 2)."') ". " LEFT JOIN b_sale_location_city_lang LGL ON (LG.ID = LGL.CITY_ID AND LGL.LID = '".$DB->ForSql($strLang, 2)."') ". "WHERE L.ID = ".$ID." ";*/ $strSql = "\n\t\tSELECT L.ID, L.COUNTRY_ID, L.CITY_ID, L.SORT, LC.NAME as COUNTRY_NAME_ORIG, LC.SHORT_NAME as COUNTRY_SHORT_NAME, LCL.NAME as COUNTRY_NAME_LANG,\n\t\tLG.NAME as CITY_NAME_ORIG, LG.SHORT_NAME as CITY_SHORT_NAME, LGL.NAME as CITY_NAME_LANG,\n\t\tL.REGION_ID, LR.NAME as REGION_NAME_ORIG, LR.SHORT_NAME as REGION_SHORT_NAME, LRL.NAME as REGION_NAME_LANG,\n\t\tIF(LCL.ID IS NULL, LC.NAME, LCL.NAME) as COUNTRY_NAME,\n\t\tIF(LGL.ID IS NULL, LG.NAME, LGL.NAME) as CITY_NAME,\n\t\tIF(LRL.ID IS NULL, LR.NAME, LRL.NAME) as REGION_NAME\n\t\tFROM b_sale_location L\n\t\t\tLEFT JOIN b_sale_location_country LC ON (L.COUNTRY_ID = LC.ID)\n\t\t\tLEFT JOIN b_sale_location_city LG ON (L.CITY_ID = LG.ID)\n\t\t\tLEFT JOIN b_sale_location_country_lang LCL ON (LC.ID = LCL.COUNTRY_ID AND LCL.LID = '" . $DB->ForSql($strLang, 2) . "')\n\t\t\tLEFT JOIN b_sale_location_city_lang LGL ON (LG.ID = LGL.CITY_ID AND LGL.LID = '" . $DB->ForSql($strLang, 2) . "')\n\t\t\tLEFT JOIN b_sale_location_region LR ON (L.REGION_ID = LR.ID)\n\t\t\tLEFT JOIN b_sale_location_region_lang LRL ON (LR.ID = LRL.REGION_ID AND LRL.LID = '" . $DB->ForSql($strLang, 2) . "')\n\t\tWHERE L.ID = " . $ID . " "; $db_res = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__); if ($res = $db_res->Fetch()) { return $res; } return False; }