本文整理汇总了PHP中ElggFile::setMetaData方法的典型用法代码示例。如果您正苦于以下问题:PHP ElggFile::setMetaData方法的具体用法?PHP ElggFile::setMetaData怎么用?PHP ElggFile::setMetaData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ElggFile
的用法示例。
在下文中一共展示了ElggFile::setMetaData方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: pleio_api_save_file
function pleio_api_save_file($data = "", $file_name = "", $title = "", $description = "", $tags = "", $file_id = null, $folder_id = 0, $group_id = 0, $access_id = "", $wiki_id = "", $mimetype = "")
{
$file_id = $file_id ? $file_id : null;
$user = elgg_get_logged_in_user_entity();
$user_id = $user !== false ? $user->guid : 0;
if (!$data && !$file_id) {
return new ErrorResult(elgg_echo("file:uploadfailed"));
}
$swordfish_group = $group_id ? pleio_api_swordfish_group($group_id) : false;
if ($swordfish_group) {
$group = get_entity($group_id);
$url = pleio_api_swordfish_baseurl($group->site_guid) . "post-file";
$swordfish_name = pleio_api_swordfish_username($user->username);
$params = array("data" => $data, "title" => $title);
if ($file_id) {
$params["fileId"] = $file_id;
} elseif ($folder_id) {
$params["folderId"] = $folder_id;
} elseif ($group_id) {
$params["groupId"] = $swordfish_group;
} else {
return new ErrorResult("Vul minimaal een bestand, folder of groep in");
}
if ($wiki_id) {
$params["wikiId"] = $wiki_id;
}
if ($access_id != ACCESS_PRIVATE) {
$params["visibility"] = "internally_published";
} else {
$params["visibility"] = "private";
}
$params["filename"] = $file_name;
$result = pleio_api_call_swordfish_api($swordfish_name, $url, "POST", $params);
if ($result->ok) {
if (strpos($result->headers["CONTENT-TYPE"], "json")) {
$response = json_decode($result->response);
return new SaveSuccessResult(elgg_echo("file:saved"), $response->id);
} else {
return new ErrorResult($result->headers["BOBO-EXCEPTION-VALUE"]);
}
} else {
return new ErrorResult($result->headers["BOBO-EXCEPTION-VALUE"]);
}
} else {
if ($file_id) {
$file = get_entity($file_id);
}
if (!$file) {
$file = new ElggFile();
$file->owner_guid = $user_id;
}
if ($title) {
$file->title = $title;
}
if ($description) {
$file->setDescription($description);
}
if ($tags) {
$file->setMetaData("tags", $tags);
}
if ($group_id) {
$file->setContainerGUID($group_id);
}
if ($access_id) {
$file->access_id = $access_id;
}
if ($data) {
$file->setFilename(basename($file_name));
$data = base64_decode($data);
$fh = $file->open("write");
if ($fh) {
$file->write($data);
$file->close();
}
if (!$mimetype) {
$mimetype = $file->detectMimeType($file->getFilenameOnFilestore());
}
$file->setMimeType($mimetype);
$file->simpletype = file_get_simple_type($mimetype);
}
if (!$file->save()) {
return new ErrorResult(elgg_echo("file:uploadfailed"));
}
if ($folder_id) {
remove_entity_relationships($file->guid, "folder_of", 1);
add_entity_relationship($folder_id, "folder_of", $file->guid);
}
if (!$file_id) {
add_to_river('river/object/file/create', 'create', $user_id, $file->guid);
}
return new SaveSuccessResult(elgg_echo("file:saved"), $file->guid);
}
return new ErrorResult(elgg_echo("file:uploadfailed"));
}