c1994a87717eba62a0e262bf22fffae7321e3397
[pharext/pharext.org] / app / views / github / repo.phtml
1 <?php $this->layout("layout", ["title" => "Github: {$repo->name}"]) ?>
2
3 <div class="page-header">
4 <h1>
5 <?php if (isset($repo)) : ?>
6 <?php if ($repo->fork) : ?>
7 <span title="fork" class="mega-octicon octicon-repo-forked" aria-hidden="true"></span>
8 <?php elseif ($repo->private) : ?>
9 <span title="fork" class="mega-octicon octicon-key" aria-hidden="true"></span>
10 <?php else : ?>
11 <span title="repo" class="mega-octicon octicon-repo" aria-hidden="true"></span>
12 <?php endif; ?>
13 <?= $this->e($repo->name) ?>
14 <?php elseif (isset($name)) : ?>
15 <?= $this->e($name) ?>
16 <?php else : ?>
17 Unknown Repository
18 <?php endif; ?>
19 - <small>Github</small>
20 </h1>
21 </div>
22
23 <div class="row">
24 <div class="col-md-6">
25 <div class="well">
26 <p><?= $this->e($repo->description) ?></p>
27 </div>
28 </div>
29 <div class="col-md-6">
30 <div class="row text-center">
31 <div class="col-md-4">
32 <span title="Number of watchers" class="mega-octicon octicon-eye" aria-hidden="true"></span>
33 <br>
34 <span class="label label-success">
35 <?= $repo->watchers_count ?> Watchers
36 </span>
37 </div>
38 <div class="col-md-4">
39 <span title="Number of stars" class="mega-octicon octicon-star" aria-hidden="true"></span>
40 <br>
41 <span class="label label-primary">
42 <?= $repo->stargazers_count ?> Stars
43 </span>
44 </div>
45 <div class="col-md-4">
46 <span title="Number of forks" class="mega-octicon octicon-repo-forked" aria-hidden="true"></span>
47 <br>
48 <span class="label label-default">
49 <?= $repo->forks_count ?> Forks
50 </span>
51 </div>
52 </div>
53 </div>
54 </div>
55
56 <div class="row">
57 <div class="col-md-6">
58 <div class="row">
59 <div class="col-md-8">
60 <p>Has a <code>config*.m4</code> file?</p>
61 </div>
62 <div class="col-md-4 text-center">
63 <p>
64 <?php if (!empty($repo->config_m4)) : ?>
65 <span class="label label-info">YES</span>
66 <?php else : ?>
67 <span class="label label-warning">NO</span>
68 <?php endif; ?>
69 </p>
70 </div>
71 </div>
72
73 <div class="row">
74 <div class="col-md-8">
75 <p>Has a <code>package*.xml</code> file?</p>
76 </div>
77 <div class="col-md-4 text-center">
78 <p>
79 <?php if (!empty($repo->package_xml)) : ?>
80 <span class="label label-info">YES</span>
81 <?php else : ?>
82 <span class="label label-warning">NO</span>
83 <?php endif; ?>
84 </p>
85 </div>
86 </div>
87
88 <div class="row">
89 <div class="col-md-8">
90 <p>Has a <code>pharext_package.php</code> file?</p>
91 </div>
92 <div class="col-md-4 text-center">
93 <p>
94 <?php if (!empty($repo->pharext_package_php)) : ?>
95 <span class="label label-info">YES</span>
96 <?php else : ?>
97 <span class="label label-warning">NO</span>
98 <?php endif; ?>
99 </p>
100 </div>
101 </div>
102
103 <div class="row">
104 <div class="col-md-8">
105 <p>Is the <code>pharext</code> hook enabled?</p>
106 </div>
107 <div class="col-md-4 text-center">
108 <?php if (!empty($hook)) : ?>
109 <span class="label label-info">YES</span>
110 <?php else : ?>
111 <span class="label label-warning">NO</span>
112 <?php endif; ?>
113 </div>
114 </div>
115 </div>
116
117 <div class="col-md-6">
118 <div class="row">
119 <form method="post" action="<?= $baseUrl->mod("./github/repo/". $repo->full_name ."/hook/" . (!empty($hook) ? "upd" : "add")) ?>">
120 <div class="col-md-6">
121 <h4>PHARext Options:</h4>
122 <div class="checkbox">
123 <label for="hook-zend">
124 <input id="hook-zend" type="checkbox" name="zend" value="1" <?= (!empty($hook) && !empty($hook->config->zend)) ? "checked":""?>>
125 Mark as a ZendExtension.
126 </label>
127 </div>
128 <div class="checkbox <?= empty($repo->package_xml) ? "disabled text-muted":"" ?>">
129 <label for="hook-pecl">
130 <input id="hook-pecl" type="checkbox" name="pecl" value="1" <?= (!empty($hook) && !empty($hook->config->pecl)) ? "checked":""?> <?= empty($repo->package_xml) ? "disabled":"" ?>>
131 Use PECL package XML file.
132 </label>
133 </div>
134 </div>
135 <div class="col-md-6">
136 <h4>Hook Options:</h4>
137 <div class="checkbox">
138 <label for="hook-tag">
139 <input id="hook-tag" type="checkbox" name="tag" value="1" <?= (empty($hook) || in_array("create", $hook->events)) ? "checked":"" ?>>
140 Automatically create a release when I push a tag.
141 </label>
142 </div>
143 <div class="checkbox">
144 <label for="hook-release">
145 <input id="hook-release" type="checkbox" name="release" value="1" <?= (empty($hook) || in_array("release", $hook->events)) ? "checked":"" ?>>
146 Automatically upload a PHARext package as an asset to a release.
147 </label>
148 </div>
149 </div>
150 <?php if ($this->check($repo)) : ?>
151 <div class="col-md-6">
152 <button type="submit" class="btn btn-lg btn-block btn-info">
153 <span class="glyphicon glyphicon-ok-circle"></span>
154 Update Hook
155 </button>
156 </div>
157 <?php else : ?>
158 <div class="col-md-6 col-md-offset-6">
159 <button type="submit" class="btn btn-lg btn-block btn-success">
160 <span class="octicon octicon-plug"></span>
161 Enable Hook
162 </button>
163 </div>
164 <?php endif; ?>
165 </form>
166 <!-- column wrapping! -->
167 <?php if ($this->check($repo)) : ?>
168 <div class="col-md-6">
169 <form method="post" action="<?= $baseUrl->mod("./github/repo/". $repo->full_name ."/hook/del") ?>">
170 <button class="btn btn-lg btn-block btn-danger">
171 <span class="glyphicon glyphicon-remove-circle"></span>
172 Remove Hook
173 </button>
174 </form>
175 </div>
176 <?php endif; ?>
177 </div>
178 </div>
179 </div>
180
181 <h2>Release History</h2>
182 <?php if (empty($repo->tags) || !count((array) $repo->tags)) : ?>
183 <div class="alert alert-warning" role="alert">
184 <p class="text-danger">No releases or tags found.</p>
185 </div>
186 <?php endif; ?>
187
188 <?php foreach ($repo->tags as $name => $v) : ?>
189 <div class="panel panel-<?= empty($v->release) ? "info": "primary" ?>">
190 <div class="panel-heading">
191 <h3 class="panel-title">
192 <?php if (empty($v->release)) : ?>
193 <?= $this->e($v->tag->name) ?>
194 <span class="label label-default pull-right">Tag</span>
195 <?php else : ?>
196 <?= $this->e($v->release->name ?: $v->tag->name) ?>
197 <span class="label label-info pull-right">Release</span>
198 <?php endif; ?>
199 </h3>
200 </div>
201 <div class="panel-body">
202 <div class="row">
203 <div class="col-md-8">
204 <?php if (!empty($v->release)) : ?>
205 <p><?= $this->md($v->release->body) ?></p>
206 <?php endif; ?>
207 <ul class="list-inline">
208 <li>
209 <span class="octicon octicon-tag" title="Tag"></span>
210 <span class="label label-default"><?= $this->e($v->tag->name) ?></span>
211 </li>
212
213 <?php if (!empty($v->release)) : ?>
214 <li>
215 <span class="octicon octicon-git-branch" title="Branch"></span>
216 <span class="label label-default"><?= $this->e($v->release->target_commitish) ?></span>
217 </li>
218 <li>
219 <span class="octicon octicon-clock" title="Date"></span>
220 <span class="label label-default">
221 <time datetime="<?= $v->release->published_at ?>">
222 <?= $this->utc($v->release->published_at)->format("Y-m-d H:i T") ?>
223 </time>
224 </span>
225 <?php endif; ?>
226 </ul>
227 </div>
228 <div class="col-md-4">
229 <?php if (!empty($v->release->assets)) : ?>
230 <ul class="list-inline pull-right">
231 <?php foreach ($v->release->assets as $asset) : ?>
232 <?php if (fnmatch("*.ext.phar", $asset->name)) : ?>
233 <li>
234 <a class="btn btn-success" href="<?= $this->e($asset->browser_download_url) ?>">
235 <span class="octicon octicon-package"></span>
236 <?= $this->e($asset->name) ?>
237 </a>
238 </li>
239 <?php endif; ?>
240 <?php endforeach; ?>
241 </ul>
242 <?php endif; ?>
243 </div>
244 </div>
245 </div>
246 </div>
247 <?php endforeach; ?>
248