1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
<?php
/**
* File renderer.
*
* @package ElggFile
*/
$full = elgg_extract('full', $vars, FALSE);
$file = elgg_extract('entity', $vars, FALSE);
if (!$file) {
return TRUE;
}
$owner = $file->getOwnerEntity();
$container = $file->getContainerEntity();
$categories = elgg_view('output/categories', $vars);
$excerpt = elgg_get_excerpt($file->description);
$mime = $file->mimetype;
$base_type = substr($mime, 0, strpos($mime,'/'));
$body = elgg_view('output/longtext', array('value' => $file->description));
$owner_link = elgg_view('output/url', array(
'href' => "file/owner/$owner->username",
'text' => $owner->name,
));
$author_text = elgg_echo('byline', array($owner_link));
$file_icon = elgg_view_entity_icon($file, 'small');
$tags = elgg_view('output/tags', array('tags' => $file->tags));
$date = elgg_view_friendly_time($file->time_created);
$comments_count = $file->countComments();
//only display if there are commments
if ($comments_count != 0) {
$text = elgg_echo("comments") . " ($comments_count)";
$comments_link = elgg_view('output/url', array(
'href' => $file->getURL() . '#file-comments',
'text' => $text,
));
} else {
$comments_link = '';
}
$metadata = elgg_view_menu('entity', array(
'entity' => $vars['entity'],
'handler' => 'file',
'sort_by' => 'priority',
'class' => 'elgg-menu-hz',
));
$subtitle = "$author_text $date $categories $comments_link";
// do not show the metadata and controls in widget view
if (elgg_in_context('widgets')) {
$metadata = '';
}
if ($full && !elgg_in_context('gallery')) {
$extra = '';
if (elgg_view_exists("file/specialcontent/$mime")) {
$extra = elgg_view("file/specialcontent/$mime", $vars);
} else if (elgg_view_exists("file/specialcontent/$base_type/default")) {
$extra = elgg_view("file/specialcontent/$base_type/default", $vars);
}
$download = elgg_view('output/url', array(
'href' => "mod/file/download.php?file_guid=$file->guid",
'text' => elgg_echo("file:download"),
'class' => 'elgg-button elgg-button-action',
));
$header = elgg_view_title($file->title);
$params = array(
'entity' => $file,
'title' => false,
'metadata' => $metadata,
'subtitle' => $subtitle,
'tags' => $tags,
);
$list_body = elgg_view('page/components/list/body', $params);
$file_info = elgg_view_image_block($file_icon, $list_body);
echo <<<HTML
$header
$file_info
<div class="file elgg-content">
$body
$extra
<p>$download</p>
</div>
HTML;
} elseif (elgg_in_context('gallery')) {
echo '<div class="file-gallery-item">';
echo "<h3>" . $file->title . "</h3>";
echo elgg_view_entity_icon($file, 'medium');
echo "<p class='subtitle'>$owner_link $date</p>";
echo '</div>';
} else {
// brief view
$params = array(
'entity' => $file,
'metadata' => $metadata,
'subtitle' => $subtitle,
'tags' => $tags,
'content' => $excerpt,
);
$list_body = elgg_view('page/components/list/body', $params);
echo elgg_view_image_block($file_icon, $list_body);
}
|