function addAkas(array $akas) { $itemName = Lms_Item::getItemName($this); $itemAkaName = $itemName . 'Aka'; $akas = array_unique($akas); //Для избежания дублирования ака foreach ($akas as $aka) { $akaObj = Lms_Item::create($itemAkaName); $akaObj->setName($aka); $this->add($akaObj); } }
private function _getFileEncoding($file) { $tmp = array(); foreach ($this->config as $key => $value) { $keyt = $key; $keyt = Lms_Text::replace("\\", '/', $key); if ($keyt[strlen($keyt) - 1] == '/') { $keyt = substr($keyt, 0, strlen($keyt) - 1); } if (Lms_Text::pos($file, $keyt) === 0) { $tmp[$keyt] = $value; if ($keyt == $file) { return $value; } } } $path = explode('/', $file); $i = count($path); while ($i > 0) { $f = ''; for ($j = 0; $j < $i; $j++) { $f = $f . $path[$j] . "/"; } foreach ($tmp as $key => $value) { if ($key == $f || Lms_Text::substring($keyt, 0, Lms_Item::length($f) - 1) == $key) { return $value; } } $i--; } return 'UTF-8'; }
public static function getTableName($itemName) { $className = Lms_Item::getClassName($itemName); return call_user_func(array($className, 'getTableName')); }
public static function rowToItem($row, $itemName = null) { if (!$row) { return null; } if (!$itemName) { $itemName = Lms_Item::getCallingItemName(); } Lms_Item::initStructure(Lms_Item::getClassName($itemName)); $simplePk = Lms_Item::getSimplePk($itemName); $tableName = Lms_Item::getTableName($itemName); Lms_Item_Store::setValues($tableName, $row[$simplePk], $row, true); return Lms_Item::create($itemName, $row[$simplePk]); }
private static function _exec($itemName, $fields, $keyField, $ids, $foreignKey = null) { if (!count($ids)) { return array(); } if (count($fields)) { $escapedFields = array(); foreach ($fields as $fieldName) { $escapedFields[] = self::$_db->escape($fieldName, true); } $sqlFields = implode(',', $escapedFields); } else { $sqlFields = '*'; } $tableName = Lms_Item::getTableName($itemName); $query = "SELECT {$sqlFields} FROM {$tableName} WHERE ?# IN (?a)"; $rows = self::$_db->select($query, $keyField, $ids); return self::_fillData($tableName, $rows, $foreignKey); }