/** * create new temp file * * @param string $_path * @param string $_name * @param string $_type * @param double $_size * @param integer $_error * @return Tinebase_Model_TempFile */ public function createTempFile($_path, $_name = 'tempfile.tmp', $_type = 'unknown', $_size = 0, $_error = 0) { // sanitize filename (convert to utf8) $filename = Tinebase_Helper::mbConvertTo($_name); $id = Tinebase_Model_TempFile::generateUID(); $tempFile = new Tinebase_Model_TempFile(array('id' => $id, 'session_id' => Tinebase_Core::getSessionId(false), 'time' => Tinebase_DateTime::now()->get(Tinebase_Record_Abstract::ISO8601LONG), 'path' => $_path, 'name' => $filename, 'type' => !empty($_type) ? $_type : 'unknown', 'error' => !empty($_error) ? $_error : 0, 'size' => !empty($_size) ? (double) $_size : (double) filesize($_path))); if (Tinebase_Core::isLogLevel(Zend_Log::TRACE)) { Tinebase_Core::getLogger()->trace(__METHOD__ . '::' . __LINE__ . " tempfile data: " . print_r($tempFile->toArray(), TRUE)); } $this->create($tempFile); return $tempFile; }