/** * Создает новый Документ. При создании нового Документа добавляется запись в БД. * @param string $file Путь к файлу * @param boolean $copy Если значение параметра Истина, то файл будет скопирован в папку модуля trustednetsiger * @param string $name Пользовательское имя файла * @param string $type Тип файла. По умолчанию DOCUMENT_TYPE_DOCUMENT * @return \Document */ public static function createDocument($file, $copy, $name = null, $type = DOCUMENT_TYPE_FILE) { $sysName = CDirectory::getFileName($file); echo $sysName . PHP_EOL; if ($copy && CDirectory::exists($file) && !is_dir($file)) { print_r("Copy file" . PHP_EOL); print_r(TRUSDET_SIGN_DOCS_ROOT . PHP_EOL); if (!CDirectory::exists(TRUSDET_SIGN_DOCS_ROOT)) { print_r("Create folder" . PHP_EOL); CDirectory::create(TRUSDET_SIGN_DOCS_ROOT); } $new_path = TRUSDET_SIGN_DOCS_ROOT . '/' . $sysName; copy($file, $new_path); //unlink($file); $file = $new_path; } $name = $name ? $name : $sysName; $doc = new Document(); $doc->setPath(str_replace($sysName, urlencode($sysName), $file)); $doc->setName($name); $doc->setSysName($sysName); $doc->setType($type); // $doc->getProperties()->add(new Property($doc->getId(), "STATUS", "NONE")); // $props = $doc->getProperties(); // $props->add(new Property(null, "ORDER", $orderId)); print_r($doc); $doc->save(); return $doc; }