countAnnotations() публичный Метод

Count annotations.
public countAnnotations ( string $name = "" ) : integer
$name string The type of annotation.
Результат integer
Пример #1
0
/**
 * Count how many people have liked an entity.
 *
 * @param  ElggEntity $entity
 *
 * @return int Number of likes
 */
function likes_count($entity)
{
    $type = $entity->getType();
    $params = array('entity' => $entity);
    $number = elgg_trigger_plugin_hook('likes:count', $type, $params, false);
    if ($number) {
        return $number;
    } else {
        return $entity->countAnnotations('likes');
    }
}
Пример #2
0
 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')));
 }