fix clear array && explode fio
This commit is contained in:
parent
8c90db7d2c
commit
325ddbb697
@ -1310,12 +1310,8 @@ class ICrmOrderActions
|
|||||||
$resOrder['site'] = $arFields['LID'];
|
$resOrder['site'] = $arFields['LID'];
|
||||||
|
|
||||||
// parse fio
|
// parse fio
|
||||||
if(count($contactNameArr) == 1) {
|
if(count($contactNameArr) > 0) {
|
||||||
$resOrder['firstName'] = $contactNameArr[0];
|
$resOrder = array_merge($resOrder, $contactNameArr);
|
||||||
} else {
|
|
||||||
$resOrder['lastName'] = $contactNameArr[0];
|
|
||||||
$resOrder['firstName'] = $contactNameArr[1];
|
|
||||||
$resOrder['patronymic'] = $contactNameArr[2];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// custom orderType function
|
// custom orderType function
|
||||||
@ -1396,18 +1392,19 @@ class ICrmOrderActions
|
|||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public static function clearArr($arr) {
|
public static function clearArr($arr) {
|
||||||
if(!$arr || !is_array($arr))
|
if (is_array($arr) === false) {
|
||||||
return false;
|
return $arr;
|
||||||
|
|
||||||
foreach($arr as $key => $value) {
|
|
||||||
if((!($value) && $value !== 0) || (is_array($value) && empty($value)))
|
|
||||||
unset($arr[$key]);
|
|
||||||
|
|
||||||
if(is_array($value) && !empty($value))
|
|
||||||
$arr[$key] = self::clearArr($value);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $arr;
|
$result = array();
|
||||||
|
foreach ($arr as $index => $node ) {
|
||||||
|
$result[ $index ] = is_array($node) === true ? self::clearArr($node) : trim($node);
|
||||||
|
if ($result[ $index ] == '' || $result[ $index ] === null || count($result[ $index ]) < 1) {
|
||||||
|
unset($result[ $index ]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -1434,21 +1431,33 @@ class ICrmOrderActions
|
|||||||
return $APPLICATION->ConvertCharset($str, 'utf-8', SITE_CHARSET);
|
return $APPLICATION->ConvertCharset($str, 'utf-8', SITE_CHARSET);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function explodeFIO($str) {
|
public static function explodeFIO($fio) {
|
||||||
if(!$str)
|
$newFio = empty($fio) ? false : explode(" ", self::toJSON($fio), 3);
|
||||||
return array();
|
$result = array();
|
||||||
|
switch (count($newFio)) {
|
||||||
$array = explode(" ", self::toJSON($str), 3);
|
default:
|
||||||
$newArray = array();
|
case 0:
|
||||||
|
$result['firstName'] = $fio;
|
||||||
foreach($array as $ar) {
|
break;
|
||||||
if(!$ar)
|
case 1:
|
||||||
continue;
|
$result['firstName'] = $newFio[0];
|
||||||
|
break;
|
||||||
$newArray[] = $ar;
|
case 2:
|
||||||
|
$result = array(
|
||||||
|
'lastName' => $newFio[1],
|
||||||
|
'firstName' => $newFio[0]
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
$result = array(
|
||||||
|
'lastName' => $newFio[1],
|
||||||
|
'firstName' => $newFio[0],
|
||||||
|
'patronymic' => $newFio[2]
|
||||||
|
);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $newArray;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function addOrderProperty($code, $value, $order) {
|
public static function addOrderProperty($code, $value, $order) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user