Lines Matching +full:check +full:- +full:attr
16 $this->extension = $extension;
23 $classes = $this->getClasses();
25 $html = "<section class=\"$classes\" data-ext=\"{$this->extension->getId()}\">";
28 $html .= $this->thumbnail();
29 $html .= '<span class="id" title="' . hsc($this->extension->getBase()) . '">' .
30 hsc($this->extension->getBase()) . '</span>';
31 $html .= $this->popularity();
35 $html .= $this->main();
39 $html .= $this->notices();
43 $html .= $this->details();
48 if ($this->extension->isUpdateAvailable()) {
49 $html .= ' <div class="available">' . $this->getLang('available_version') . ' ' .
50 '<span class="version">' . hsc($this->extension->getLastUpdate()) . '</span></div>';
53 $html .= $this->actions();
71 $screen = $this->extension->getScreenshotURL();
72 $thumb = $this->extension->getThumbnailURL();
88 'title' => sprintf($this->getLang('screenshot'), $this->extension->getDisplayName())
93 } elseif ($this->extension->isTemplate()) {
117 …$html .= sprintf($this->getLang('extensionby'), hsc($this->extension->getDisplayName()), $this->au…
121 if ($this->extension->isBundled()) {
122 $html .= hsc('<' . $this->getLang('status_bundled') . '>');
123 } elseif ($this->extension->getInstalledVersion()) {
124 $html .= hsc($this->extension->getInstalledVersion());
129 $html .= '<p>' . hsc($this->extension->getDescription()) . '</p>';
130 $html .= $this->mainLinks();
142 $notices = Notice::list($this->extension);
172 $homepage = $this->extension->getURL();
174 $params = $this->prepareLinkAttributes($homepage, 'homepage');
175 … $html .= ' <a ' . buildAttributes($params, true) . '>' . $this->getLang('homepage_link') . '</a>';
178 $bugtracker = $this->extension->getBugtrackerURL();
180 $params = $this->prepareLinkAttributes($bugtracker, 'bugs');
181 … $html .= ' <a ' . buildAttributes($params, true) . '>' . $this->getLang('bugs_features') . '</a>';
184 if ($this->extension->getDonationURL()) {
185 $params = $this->prepareLinkAttributes($this->extension->getDonationURL(), 'donate');
186 … $html .= ' <a ' . buildAttributes($params, true) . '>' . $this->getLang('donate_action') . '</a>';
203 $html .= '<summary>' . $this->getLang('details') . '</summary>';
206 $default = $this->getLang('unknown');
209 if (!$this->extension->isBundled()) {
210 … $list['downloadurl'] = $this->shortlink($this->extension->getDownloadURL(), 'download', $default);
211 … $list['repository'] = $this->shortlink($this->extension->getSourcerepoURL(), 'repo', $default);
214 if ($this->extension->isInstalled()) {
215 if ($this->extension->isBundled()) {
216 $list['installed_version'] = $this->getLang('status_bundled');
218 if ($this->extension->getInstalledVersion()) {
219 $list['installed_version'] = hsc($this->extension->getInstalledVersion());
221 if (!$this->extension->isBundled()) {
222 $installDate = $this->extension->getManager()->getInstallDate();
223 … $list['installed'] = $installDate ? dformat($installDate->getTimestamp()) : $default;
225 $updateDate = $this->extension->getManager()->getLastUpdate();
226 … $list['install_date'] = $updateDate ? dformat($updateDate->getTimestamp()) : $default;
231 if (!$this->extension->isInstalled() || $this->extension->isUpdateAvailable()) {
232 $list['available_version'] = $this->extension->getLastUpdate()
233 ? hsc($this->extension->getLastUpdate())
238 if (!$this->extension->isBundled() && $this->extension->getCompatibleVersions()) {
241 array_keys($this->extension->getCompatibleVersions()),
242 array_values($this->extension->getCompatibleVersions())
246 $list['provides'] = implode(', ', array_map('hsc', $this->extension->getComponentTypes()));
248 $tags = $this->extension->getTags();
251 $url = $this->tabURL('search', ['q' => 'tag:' . $tag]);
256 if ($this->extension->getDependencyList()) {
257 $list['depends'] = $this->linkExtensions($this->extension->getDependencyList());
260 if ($this->extension->getSimilarList()) {
261 $list['similar'] = $this->linkExtensions($this->extension->getSimilarList());
264 if ($this->extension->getConflictList()) {
265 $list['conflicts'] = $this->linkExtensions($this->extension->getConflictList());
270 $html .= '<dt>' . rtrim($this->getLang($key), ':') . '</dt>';
286 if (!$this->extension->getAuthor()) {
287 return '<em class="author">' . $this->getLang('unknown_author') . '</em>';
290 $names = explode(',', $this->extension->getAuthor());
298 $mailid = $this->extension->getEmailID();
300 $url = $this->tabURL('search', ['q' => 'authorid:' . $mailid]);
301 … $html = '<a href="' . $url . '" class="author" title="' . $this->getLang('author_hint') . '" >' .
306 $html = '<span class="author">' . hsc($this->extension->getAuthor()) . '</span>';
318 $popularity = $this->extension->getPopularity();
320 if ($this->extension->isBundled()) return '';
325 $title = $this->getLang('popularity_high');
328 $title = $this->getLang('popularity_medium');
331 $title = $this->getLang('popularity_low');
351 // check permissions
353 Installer::ensurePermissions($this->extension);
359 if ($this->extension->isInstalled()) {
360 if (!$this->extension->isProtected()) $actions[] = 'uninstall';
361 if ($this->extension->getDownloadURL()) {
362 $actions[] = $this->extension->isUpdateAvailable() ? 'update' : 'reinstall';
365 if (!$this->extension->isProtected() && !$this->extension->isTemplate()) {
366 $actions[] = $this->extension->isEnabled() ? 'disable' : 'enable';
368 } elseif ($this->extension->getDownloadURL()) {
374 $attr = [
377 'name' => 'fn[' . $action . '][' . $this->extension->getID() . ']',
379 …$html .= '<button ' . buildAttributes($attr) . '>' . $this->getLang('btn_' . $action) . '</button>…
396 $classes = ['extension', $this->extension->getType()];
397 if ($this->extension->isInstalled()) $classes[] = 'installed';
398 if ($this->extension->isUpdateAvailable()) $classes[] = 'update';
399 $classes[] = $this->extension->isEnabled() ? 'enabled' : 'disabled';
460 $params = $this->prepareLinkAttributes($url, $class);
478 $this->tabURL('search', ['q' => 'ext:' . $link]) . '">' .