]>
git.saurik.com Git - cydia.git/blob - Cydia.app/package.js
2 "name": "MobileTerminal",
5 "name": "Allen Porter",
6 "address": "allen.porter@gmail.com"
8 //"depiction": "http://planet-iphones.com/repository/info/chromium1.3.php",
9 "depiction": "http://cydia.saurik.com/terminal.html",
10 "longDescription": "this is a sample description",
11 "homepage": "http://cydia.saurik.com/terminal.html",
12 "installed": "286u-4",
13 "id": "mobileterminal",
14 "section": "Terminal Support",
17 "name": "Jay Freeman",
18 "address": "saurik@saurik.com"
21 "name": "Telesphoreo Tangelo",
22 "description": "Distribution of Unix Software for the iPhone"
26 function space(selector
, html
, max
) {
27 var node
= $(selector
);
29 var width
= node
.width();
31 var spacing
= (max
- node
.width()) / (html
.length
- 1) + "px";
32 node
.css("letter-spacing", spacing
);
37 return url
.replace('://', '://ne.edgecastcdn.net/8003A4/');
40 var swap_
, swap = function (on
, off
, time
) {
41 setTimeout(swap_(on
, off
, time
), time
);
44 swap_ = function (on
, off
, time
) {
46 on
.className
= 'fade-out';
47 off
.className
= 'fade-in';
52 var special_ = function () {
57 var idc
= encodeURIComponent(id
);
58 var name
= package.name
;
59 var icon
= 'cydia://package-icon/' + idc
;
60 var api
= 'http://cydia.saurik.com/api/';
62 var support
= package.support
;
64 var regarding = function (type
) {
65 return encodeURIComponent("Cydia/APT(" + type
+ "): " + name
);
68 $("#icon").css("background-image", 'url("' + icon
+ '")');
69 //$("#reflection").src("cydia://package-icon/" + idc);
71 $("#name").html(name
);
72 space("#latest", package.latest
, 96);
74 $.xhr(cache(api
+ 'package/' + idc
), 'GET', {}, null, {
75 success: function (value
) {
78 if (typeof value
.rating
== "undefined")
79 $(".rating").addClass("deleted");
81 $("#rating-load").addClass("deleted");
82 $("#rating-href").href(value
.reviews
);
84 var none
= $("#rating-none");
85 var done
= $("#rating-done");
87 if (value
.rating
== null) {
88 none
.css("display", "block");
90 done
.css("display", "block");
92 $("#rating-value").css('width', 16 * value
.rating
);
96 if (typeof value
.icon
!= "undefined" && value
.icon
!= null) {
97 var icon
= $("#icon");
98 var thumb
= $("#thumb");
100 icon
[0].className
= 'flip-180';
101 thumb
[0].className
= 'flip-360';
103 thumb
.css("background-image", 'url("' + value
.icon
+ '")');
105 setTimeout(function () {
106 icon
.addClass("deleted");
107 thumb
[0].className
= 'flip-0';
112 failure: function (status
) {
113 $(".rating").addClass("deleted");
117 $("#settings").href("cydia://package-settings/" + idc
);
119 var mode
= package.mode
;
121 $(".mode").addClass("deleted");
123 $("#mode").html(cydia
.localize(mode
));
124 $("#mode-src").src("Modes/" + mode
+ ".png");
127 var warnings
= package.warnings
;
128 var length
= warnings
== null ? 0 : warnings
.length
;
130 $(".warnings").addClass("deleted");
132 var parent
= $("#warnings");
133 var child
= $("#warning");
135 for (var i
= 0; i
!= length
; ++i
) {
136 var clone
= child
.clone(true);
137 clone
.addClass("inserted");
138 parent
.append(clone
);
139 clone
.xpath("./div/label").html($.xml(warnings
[i
]));
142 child
.addClass("deleted");
145 var applications
= package.applications
;
146 var length
= applications
== null ? 0 : applications
.length
;
148 var child
= $("#application");
151 var parent = $("#actions");
153 for (var i = 0; i != length; ++i) {
154 var application = applications[i];
155 var clone = child.clone(true);
156 parent.append(clone);
157 clone.href("cydia://launch/" + application[0]);
158 clone.xpath("label").html("Run " + $.xml(application[1]));
159 clone.xpath("img").src(application[2]);
163 child
.addClass("deleted");
165 var commercial
= package.hasTag('cydia::commercial');
167 $(".commercial").addClass("deleted");
169 var _console
= package.hasTag('purpose::console');
171 $(".console").addClass("deleted");
173 var author
= package.author
;
175 $(".author").addClass("deleted");
177 space("#author", author
.name
, 160);
178 if (author
.address
== null)
179 $("#author-icon").addClass("deleted");
180 else if (support
== null)
181 $("#author-href").href("mailto:" + author
.address
+ "?subject=" + regarding("A"));
183 $("#author-href").href(support
);
186 //$("#notice-src").src("http://saurik.cachefly.net/notice/" + idc + ".html");
188 /*var store = commercial;
190 $(".activation").addClass("deleted");
192 var activation = api + 'activation/' + idc;
193 $("#activation-src").src(activation);
196 var depiction
= package.depiction
;
197 if (depiction
== null)
198 $(".depiction").addClass("deleted");
200 $(".description").addClass("deleted");
201 $("#depiction-src").src(depiction
);
204 var description
= package.longDescription
;
205 if (description
== null)
206 description
= package.shortDescription
;
208 description
= description
.replace(/\n/g, "<br/>");
209 $("#description").html(description
);
211 var homepage
= package.homepage
;
212 if (homepage
== null)
213 $(".homepage").addClass("deleted");
215 $("#homepage-href").href(homepage
);
217 var installed
= package.installed
;
218 if (installed
== null)
219 $(".installed").addClass("deleted");
221 $("#installed").html(installed
);
222 $("#files-href").href("cydia://files/" + idc
);
225 space("#id", id
, 220);
227 var section
= package.longSection
;
229 $(".section").addClass("deleted");
231 $("#section-src").src("cydia://section-icon/" + encodeURIComponent(section
));
232 $("#section").html(section
);
235 var size
= package.size
;
237 $(".size").addClass("deleted");
239 $("#size").html(size
/ 1024 + " kB");
241 var maintainer
= package.maintainer
;
242 if (maintainer
== null)
243 $(".maintainer").addClass("deleted");
245 space("#maintainer", maintainer
.name
, 153);
246 if (maintainer
.address
== null)
247 $("#maintainer-icon").addClass("deleted");
248 else if (support
== null)
249 $("#maintainer-href").href("mailto:" + maintainer
.address
+ "?subject=" + regarding("M"));
251 $("#maintainer-href").href(support
);
254 var sponsor
= package.sponsor
;
256 $(".sponsor").addClass("deleted");
258 space("#sponsor", sponsor
.name
, 152);
259 $("#sponsor-href").href(sponsor
.address
);
262 var source
= package.source
;
263 if (source
== null) {
264 $(".source").addClass("deleted");
265 $(".trusted").addClass("deleted");
267 var host
= source
.host
;
269 $("#source-src").src("cydia://source-icon/" + encodeURIComponent(host
));
270 $("#source-name").html(source
.name
);
273 $("#trusted").href("cydia://package-signature/" + idc
);
275 $(".trusted").addClass("deleted");
277 var description
= source
.description
;
278 if (description
== null)
279 $(".source-description").addClass("deleted");
281 $("#source-description").html(description
);
287 var special = function () {
288 $(".deleted").removeClass("deleted");
289 $(".inserted").remove();
291 $("#icon")[0].className
= 'flip-0';
292 $("#thumb")[0].className
= 'flip-180';
294 /* XXX: this could be better */
295 $("#rating-href").href(null);
296 $("#rating-none").css("display", "none");
297 $("#rating-done").css("display", "none");
299 var depiction
= $("#depiction-src");
301 depiction
[0].outerHTML
= '<iframe' +
302 ' class="depiction"' +
303 ' id="depiction-src"' +
308 ' onload_="loaded()"' +
314 cydia
.setSpecial(special
);