本文整理汇总了PHP中ElggEntity::annotate方法的典型用法代码示例。如果您正苦于以下问题:PHP ElggEntity::annotate方法的具体用法?PHP ElggEntity::annotate怎么用?PHP ElggEntity::annotate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ElggEntity
的用法示例。
在下文中一共展示了ElggEntity::annotate方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testCanEdit
public function testCanEdit()
{
$user = new \ElggUser();
$user->save();
$id = $this->entity->annotate('test', 'foo', ACCESS_LOGGED_IN, elgg_get_logged_in_user_guid());
$a = elgg_get_annotation_from_id($id);
$this->assertTrue($a->canEdit());
$this->assertFalse($a->canEdit($user->guid));
$id = $this->entity->annotate('test', 'foo2', ACCESS_LOGGED_IN, $user->guid);
$a = elgg_get_annotation_from_id($id);
$this->assertTrue($a->canEdit());
$this->assertTrue($a->canEdit($user->guid));
$user->delete();
}
示例2: oddmetadata_to_elggextender
/**
* Utility function used by import_extender_plugin_hook() to process
* an ODDMetaData and add it to an entity. This function does not
* hit ->save() on the entity (this lets you construct in memory)
*
* @param ElggEntity $entity The entity to add the data to.
* @param ODDMetaData $element The OpenDD element
*
* @return bool
* @access private
*/
function oddmetadata_to_elggextender(ElggEntity $entity, ODDMetaData $element)
{
// Get the type of extender (metadata, type, attribute etc)
$type = $element->getAttribute('type');
$attr_name = $element->getAttribute('name');
$attr_val = $element->getBody();
switch ($type) {
// Ignore volatile items
case 'volatile':
break;
case 'annotation':
$entity->annotate($attr_name, $attr_val);
break;
case 'metadata':
$entity->setMetaData($attr_name, $attr_val, "", true);
break;
default:
// Anything else assume attribute
$entity->set($attr_name, $attr_val);
}
// Set time if appropriate
$attr_time = $element->getAttribute('published');
if ($attr_time) {
$entity->set('time_updated', $attr_time);
}
return true;
}
示例3: testElggEnityGetAndSetAnnotations
public function testElggEnityGetAndSetAnnotations()
{
$this->assertIdentical($this->entity->getAnnotations(array('annotation_name' => 'non_existent')), array());
// save entity and check for annotation
$this->entity->annotate('non_existent', 'foo');
$annotations = $this->entity->getAnnotations(array('annotation_name' => 'non_existent'));
$this->assertIsA($annotations[0], '\\ElggAnnotation');
$this->assertIdentical($annotations[0]->name, 'non_existent');
$this->assertEqual($this->entity->countAnnotations('non_existent'), 1);
// @todo belongs in Annotations API test class
$this->assertIdentical($annotations, elgg_get_annotations(array('guid' => $this->entity->getGUID())));
$this->assertIdentical($annotations, elgg_get_annotations(array('guid' => $this->entity->getGUID(), 'type' => 'object')));
$this->assertIdentical(false, elgg_get_annotations(array('guid' => $this->entity->getGUID(), 'type' => 'object', 'subtype' => 'fail')));
// clear annotation
$this->assertTrue($this->entity->deleteAnnotations());
$this->assertEqual($this->entity->countAnnotations('non_existent'), 0);
// @todo belongs in Annotations API test class
$this->assertIdentical(array(), elgg_get_annotations(array('guid' => $this->entity->getGUID())));
$this->assertIdentical(array(), elgg_get_annotations(array('guid' => $this->entity->getGUID(), 'type' => 'object')));
}