Reposi3 v15.07-1a : non-working alpha. missing packages. 1 depiction

This commit is contained in:
Raymond Velasquez
2015-07-09 16:48:10 +08:00
parent 09791ddc39
commit 7ef38ab288
15 changed files with 792 additions and 0 deletions

BIN
CydiaIcon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
CydiaIcon.xcf Normal file

Binary file not shown.

12
Packages Normal file
View File

@@ -0,0 +1,12 @@
Package: com.supermamon.oldpackage
Version: 1.0.0-1
Section: Tweaks
Maintainer: Reposi3 <at.supermamon@gmail.com>
Author: Reposi3 <at.supermamon@gmail.com>
Architecture: iphoneos-arm
Filename: ./debs/com.reposi3.oldpackage-1.0.0-1.deb
Size: 754
MD5sum: eb9ac8cd0ccaf483f1a960f2165bc1a8
Description: This is an old package. Requires iOS 7 and below.
Name: Old Package
Depiction: https://supermamon.github.io/reposi3/depictions/?p=com.supermamon.oldpackage

8
Release Normal file
View File

@@ -0,0 +1,8 @@
Origin: Reposi3
Label: Reposi3
Suite: stable
Version: 1.0
Codename: ios
Architectures: iphoneos-arm
Components: main
Description: Reposi3 - a cydia repo template

Binary file not shown.

120
depictions/changelog.html Normal file
View File

@@ -0,0 +1,120 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Changelog</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.querystring.js"></script>
<script type="text/javascript" src="js/data-loader-engine.js"></script>
<script type="text/javascript" src="js/ios_version_check.js"></script>
<style>
@media (max-width: 767px) {
body{background:#efeff4!important;margin:0;padding:0;border:0;outline:0;box-sizing:border-box}
}
</style>
<script type="text/javascript">
bundleid = $.QueryString['p'];
var contentBlocks = {
"#changeLogList" :
{"type":"articles"
,"source" :"changelog"
,"titleSource" :"version"
,"paragraphSource" :"change"
,"titleElement" : "<h5>"
,"paragraphContainer": "<ul class='list-group'>"
,"paragraphElement" : "<li class='list-group-item'>"
}
}
$( document ).ready(function() {
$.ajax({
type : "GET",
dataType: "xml",
url : (bundleid+"/changelog.xml"),
success : function(xml){
data_loader_engine(contentBlocks,xml)
},
cache : false,
error: function() {
$("#packageError").show();
$("#packageInformation").hide();
}
}); //ajax
}); // ready
</script>
</head>
<body>
<br />
<div id="packageInformation">
<div class="container" id="changeLogList">
</div>
</div>
<div id="packageError" style="display:none">
<div class="container">
<div class="alert alert-danger">
<strong>Oh snap!</strong> The package you are tying to view is not hosted on this repository.
</div>
</div>
</div>
<!-- REPO FOOTER ----------------------------------------------------------- -->
<script type="text/javascript">
var repoContents = {
"#repoFooterLinks" :
{"type":"custom"
,"source":"repo>footerlinks>link"
,"render":function(element,source) {
$.each(source, function(index,data) {
var p = $("<li class='list-group-item'>");
var a = $("<a class='btn btn-link'>");
a.attr("href",$(data).find('url').text());
if ($(data).find('iconclass')) {
var i = $("<span>")
i.attr("class",$(data).find('iconclass').text());
console.log(i);
$(a).append(i);
}
$(a).append(' '+$(data).find('name').text());
$(p).append(a)
$(element).append(p);
}); //each
} //render
}
}
$( document ).ready(function() {
$.ajax({type: "GET", dataType: "xml",url : ("../repo.xml"),cache: false,
success : function(xml){
data_loader_engine(repoContents,xml);
if (navigator.userAgent.search(/Cydia/) != -1) {
$("a").each(function() {
console.log($(this).text());
$(this).attr("target","_blank");
});
}
},
error: function() {$("#contactInfo").hide()}
}); //ajax
}); // ready
</script>
<div id="contactInfo">
<div class="container">
<h5>CONTACT</h5>
<ul class="list-group" id="repoFooterLinks">
</ul>
</div>
</div>
<!-- REPO FOOTER ENDS ------------------------------------------------------ -->
</body>
</html>

View File

@@ -0,0 +1,6 @@
<changelog>
<changes>
<version>1.0.0-1</version>
<change>Initial release</change>
</changes>
</changelog>

View File

@@ -0,0 +1,24 @@
<package>
<id>com.reposi3.oldpackage</id>
<name>Old Package</name>
<version>1.0.0-1</version>
<compatibility>
<firmware>
<miniOS>5.0</miniOS>
<maxiOS>7.0</maxiOS>
<otherVersions>unsupported</otherVersions>
<!--
for otherVersions, you can put either unsupported or unconfirmed
-->
</firmware>
</compatibility>
<dependencies></dependencies>
<descriptionlist>
<description>This is an old package. Requires iOS 7 and below..</description>
</descriptionlist>
<screenshots></screenshots>
<changelog>
<change>Initial release</change>
</changelog>
<links></links>
</package>

243
depictions/index.html Normal file
View File

@@ -0,0 +1,243 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>/supermamon/</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.querystring.js"></script>
<script type="text/javascript" src="js/data-loader-engine.js"></script>
<script type="text/javascript" src="js/ios_version_check.js"></script>
<style>
@media (max-width: 767px) {
body{background:#efeff4!important;margin:0;padding:0;border:0;outline:0;box-sizing:border-box}
}
.jumbotron-bg {
background: green
}
</style>
<script type="text/javascript">
bundleid = $.QueryString['p'];
var contentBlocks = {
"#packageName" :
{"type":"text","source":"package>name"}
,"#packageHeader" :
{"type":"custom"
,"source":"package>name"
,"render":function(element,source){
if (navigator.userAgent.search(/Cydia/) != -1) {
$(element).hide();
}
}
}
,"#packageVersion" :
{"type":"text","source":"package>version"}
,"#compatibilityCheck" :
{"type":"custom"
,"source":"package>compatibility>firmware"
,"render":function(element,source){
var res = ios_version_check(
$(source).find("miniOS").text(),
$(source).find("maxiOS").text(),
$(source).find("otherVersions").text(),
function(message,isBad) {
$(element).html(message)
.addClass( (isBad?'alert-danger':'alert-success'));
}
);
if(res==0) {$(element).hide()}
}
}
,"#descriptionList" :
{"type":"list"
,"source" :"package>descriptionlist>description"
,"paragraphElement" : "<li class='list-group-item'>"
,"emptyListCallback":function(e){$("#descriptionPanel").hide()}
}
,"#screenshotsLink" :
{"type":"custom"
,"source" :"package>screenshots>screenshot"
,"render":function(element, source){
$("#screenshotsLink").remove();
if ($(source).size() == 0) {
return
}
// create screenshots link
$("#descriptionList").append(
$("<li class='list-group-item'>").append(
$("<a>")
.attr("href","screenshots.html?p="+bundleid)
.text("Screenshots")
)
);
}
}
,"#versionBadge" : {"type":"text","source":"package>version"}
,"#changesList" :
{"type":"list"
,"source" :"package>changelog>change"
,"reverseRender" : true
,"paragraphElement" : "<li class='list-group-item'>"
,"emptyListCallback":function(e){$("#changesList").hide()}
}
,"#changelogLink" :
{"type":"link"
,"text":"Full Changelog"
,"url":"changelog.html"
,"params":[
['p',bundleid]
]
}
,"#dependencyList" :
{"type":"list"
,"source" :"package>dependencies>package"
,"paragraphElement" : "<li class='list-group-item'>"
,"emptyListCallback":function(e){$("#dependenciesContainer").remove()}
}
,"#externalLinksList" :
{"type":"custom"
,"source" :"package>links>link"
,"paragraphElement" : "<li class='list-group-item'>"
,"render":function(element,source){
if ($(source).size()==0){
$('#externalLinksContainer').remove()
}
$.each(source, function(index,data){
var p = $("<li class='list-group-item'>");
$(p).append(
$("<a>")
.attr("href",$(data).find('url').text())
.text($(data).find('name').text())
);
$(element).append(p);
});
}
}
}
$( document ).ready(function() {
$.ajax({
type : "GET",
dataType: "xml",
url : (bundleid+"/info.xml"),
success : function(xml){
document.title = $(xml).find("package>name").text();
data_loader_engine(contentBlocks,xml)
},
cache : false,
error: function() {
$("#packageError").show();
$("#packageInformation").hide();
}
}); //ajax
}); // ready
</script>
</head>
<body>
<br />
<div id="packageInformation">
<div id="packageHeader" class="container">
<div class="jumbotron">
<h1 id="packageName"></h1>
<p>brought to you by Reposi3</p>
</div>
</div>
<div class="container">
<div id="compatibilityCheck" class="alert"></div>
</div>
<div class="container">
<h5>DESCRIPTION</h5>
<ul id="descriptionList" class="list-group">
<li id="screenshotsLink" />
</ul>
</div>
<div class="container">
<h5>IN THIS VERSION <span id="versionBadge" class="badge" /></h5>
<ul id="changesList" class="list-group">
<li id="changelogLink" class="list-group-item" />
</ul>
</div>
<div class="container" id="dependenciesContainer">
<h5>DEPENDENCIES</h5>
<ul id="dependencyList" class="list-group">
</ul>
</div>
<div class="container" id="externalLinksContainer">
<h5>LINKS</h5>
<ul id="externalLinksList" class="list-group">
</ul>
</div>
</div>
<div id="packageError" style="display:none">
<div class="container">
<div class="alert alert-danger">
<strong>Oh snap!</strong> The package you are tying to view is not hosted on this repository.
</div>
</div>
</div>
<script type="text/javascript">
var repoContents = {
"#repoFooterLinks" :
{"type":"custom"
,"source":"repo>footerlinks>link"
,"render":function(element,source) {
$.each(source, function(index,data) {
var p = $("<li class='list-group-item'>");
var a = $("<a class='btn btn-link'>");
a.attr("href",$(data).find('url').text());
if ($(data).find('iconclass')) {
var i = $("<span>")
i.attr("class",$(data).find('iconclass').text());
console.log(i);
$(a).append(i);
}
$(a).append(' '+$(data).find('name').text());
$(p).append(a)
$(element).append(p);
}); //each
} //render
}
}
$( document ).ready(function() {
$.ajax({type: "GET", dataType: "xml",url : ("../repo.xml"),cache: false,
success : function(xml){
data_loader_engine(repoContents,xml);
if (navigator.userAgent.search(/Cydia/) != -1) {
$("a").each(function() {
console.log($(this).text());
$(this).attr("target","_blank");
});
}
},
error: function() {$("#contactInfo").hide()}
}); //ajax
}); // ready
</script>
<div id="contactInfo">
<div class="container">
<h5>CONTACT</h5>
<ul class="list-group" id="repoFooterLinks">
</ul>
</div>
</div>
</body>
</html>

View File

@@ -0,0 +1,78 @@
function data_loader_engine(contentBlocks,xml) {
/* Loop through each if the contentBlocks */
$.each(contentBlocks, function (key,contentInfo){
console.log('Processing '+key);
console.log(' type= '+contentInfo.type);
// go out if key element does not exits
if (!($(key).length)) {return}
switch(contentInfo.type) {
case "text":
var content = $(xml).find(contentInfo.source).text();
$(key).html(content)
break;
case "link":
console.log(' url= '+contentInfo.url);
console.log(' text= '+contentInfo.text);
var url = contentInfo.url;
var params = [];
if (contentInfo.params) {
$.each(contentInfo.params, function(){
this[1] = escape(this[1]);
params[params.length] = this.join('=');
});
}
url = url+'?'+params.join('&');
$(key).append( $("<a></a>")
.attr("href",url)
.text(contentInfo.text)
);
break;
case "list":
var list = $(xml).find(contentInfo.source);
if (list.size()==0) {
if (contentInfo.emptyListCallback) {
contentInfo.emptyListCallback($(key))
}
} else {
if (!!contentInfo.reverseRender) {
list = $(list).get().reverse();
}
$.each(list, function(index,value){
var item = $(value).text()
if (!!contentInfo.reverseRender) {
$(key).prepend( $(contentInfo.paragraphElement).html("<p>"+item+"</p>") )
} else {
$(key).append( $(contentInfo.paragraphElement).html("<p>"+item+"</p>") )
}
});
}
break;
case "articles":
var articles = $(xml).find(contentInfo.source).children();
var titleID = 0;
$.each(articles,function(index,article){
var articleTitle = $(article).find(contentInfo.titleSource).text()
$(key).append( $(contentInfo.titleElement).html(articleTitle));
var container = $(contentInfo.paragraphContainer).attr("id",++titleID);
$(key).append($(container));
$.each( $(article).find(contentInfo.paragraphSource), function(index,paragraph){
$(container).append( $(contentInfo.paragraphElement).html("<p>"+$(paragraph).text()+"</p>") )
}) //paragraph
}) //article
break;
case "custom":
if (!key) {return}
contentInfo.render( $(key), $(xml).find(contentInfo.source) )
break;
}//switch
}); //each
}

View File

@@ -0,0 +1,76 @@
/*
I saw some parts of this code on the internet. I forgot where. If it's yours
let me know and I'll credit you.
*/
const VERSION_CHECK_SUPPORTED = "Your iOS version is supported! &#x1f60a;";
const VERSION_CHECK_NEEDS_UPGRADE = "Requires at least iOS %s &#x1f615;";
const VERSION_CHECK_UNCONFIRMED = "Not yet tested on iOS %s &#x1f601;";
const VERSION_CHECK_UNSUPPORTED = "Only compatible with iOS %s to %s &#x1f61e;";
function ios_version_check(minIOS,maxIOS,otherIOS,callBack) {
"use strict";
function parseVersionString(version) {
var bits = version.split(".");
return [ bits[0], bits[1] ? bits[1] : 0, bits[2] ? bits[2] : 0 ];
}
function compareVersions(one, two) {
// https://gist.github.com/TheDistantSea/8021359
for (var i = 0; i < one.length; ++i) {
if (two.length == i) {
return 1;
}
if (one[i] == two[i]) {
continue;
} else if (one[i] > two[i]) {
return 1;
} else {
return -1;
}
}
if (one.length != two.length) {
return -1;
}
return 0;
}
var version = navigator.appVersion.match(/CPU( iPhone)? OS (\d+)_(\d+)(_(\d+))? like/i);
if (!version) {
return 0;
}
var osVersion = [ version[2], version[3], version[4] ? version[5] : 0 ],
osString = osVersion[0] + "." + osVersion[1] + (osVersion[2] && osVersion[2] != 0 ? "." + osVersion[2] : ""),
minString = minIOS,
maxString = maxIOS,
minVersion = parseVersionString(minString),
maxVersion = maxString ? parseVersionString(maxString) : null,
message = VERSION_CHECK_SUPPORTED,
isBad = false;
if (compareVersions(minVersion, osVersion) == 1) {
message = VERSION_CHECK_NEEDS_UPGRADE.replace("%s", minString);
isBad = true;
} else if (maxVersion && compareVersions(maxVersion, osVersion) == -1) {
if ("unsupported" == otherIOS) {
message = VERSION_CHECK_UNSUPPORTED.replace("%s", minString).replace("%s", maxString);
} else {
message = VERSION_CHECK_UNCONFIRMED.replace("%s", osString);
}
isBad = true;
}
callBack(message,isBad);
return (isBad?-1:1);
}

View File

@@ -0,0 +1,13 @@
(function($) {
$.QueryString = (function(a) {
if (a == "") return {};
var b = {};
for (var i = 0; i < a.length; ++i)
{
var p=a[i].split('=');
if (p.length != 2) continue;
b[p[0]] = decodeURIComponent(p[1].replace(/\+/g, " "));
}
return b;
})(window.location.search.substr(1).split('&'))
})(jQuery);

135
depictions/screenshots.html Normal file
View File

@@ -0,0 +1,135 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Screenshots</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script type="text/javascript" src="js/jquery.querystring.js"></script>
<script type="text/javascript" src="js/data-loader-engine.js"></script>
<script type="text/javascript" src="js/ios_version_check.js"></script>
<style>
@media (max-width: 767px) {
body{background:#efeff4!important;margin:0;padding:0;border:0;outline:0;box-sizing:border-box}
}
</style>
<script type="text/javascript">
bundleid = $.QueryString['p'];
var contentBlocks = {
"#screenshotsList" :
{"type":"custom"
,"source" :"package>screenshots>screenshot"
,"render" : function(element,source){
console.log($(source).size());
if ($(source).size()==0) {
$(element).append( $("<div class='alert alert-danger'>The aren't any screenshots for this package</div>") );
return;
}
$.each(source, function(index,data) {
var th = $("<div class='thumbnail'>");
th.append($("<p>")
.text($(data).find('description').text())
)
th.append($("<img>")
.attr("src",bundleid+'/screenshots/'+$(data).find('image').text())
)
$(element).append(th);
});
}
}
}
$( document ).ready(function() {
$.ajax({
type : "GET",
dataType: "xml",
url : (bundleid+"/info.xml"),
success : function(xml){
document.title = $(xml).find("package>name").text();
data_loader_engine(contentBlocks,xml)
},
cache : false,
error: function() {
$("#packageError").show();
$("#packageInformation").hide();
}
}); //ajax
}); // ready
</script>
</head>
<body>
<br />
<div id="packageInformation">
<div class="container">
<h5>SCREENSHOTS</h5>
<ul id="screenshotsList" class="list-group">
</ul>
</div>
</div>
<div id="packageError" style="display:none">
<div class="container">
<div class="alert alert-danger">
<strong>Oh snap!</strong> The package you are tying to view is not hosted on this repository.
</div>
</div>
</div>
<!-- REPO FOOTER ----------------------------------------------------------- -->
<script type="text/javascript">
var repoContents = {
"#repoFooterLinks" :
{"type":"custom"
,"source":"repo>footerlinks>link"
,"render":function(element,source) {
$.each(source, function(index,data) {
var p = $("<li class='list-group-item'>");
var a = $("<a class='btn btn-link'>");
a.attr("href",$(data).find('url').text());
if ($(data).find('iconclass')) {
var i = $("<span>")
i.attr("class",$(data).find('iconclass').text());
console.log(i);
$(a).append(i);
}
$(a).append(' '+$(data).find('name').text());
$(p).append(a)
$(element).append(p);
}); //each
} //render
}
}
$( document ).ready(function() {
$.ajax({type: "GET", dataType: "xml",url : ("../repo.xml"),cache: false,
success : function(xml){
data_loader_engine(repoContents,xml);
if (navigator.userAgent.search(/Cydia/) != -1) {
$("a").each(function() {
console.log($(this).text());
$(this).attr("target","_blank");
});
}
},
error: function() {$("#contactInfo").hide()}
}); //ajax
}); // ready
</script>
<div id="contactInfo">
<div class="container">
<h5>CONTACT</h5>
<ul class="list-group" id="repoFooterLinks">
</ul>
</div>
</div>
<!-- REPO FOOTER ENDS ------------------------------------------------------ -->
</body>
</html>

63
index.html Normal file
View File

@@ -0,0 +1,63 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>Reposi3</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="/util/js/getRandomQuote.js"></script>
<script type="text/javascript">
$(document).ready(function(){
/* random quote */
getRandomQuote(function(quote,author){
var footer = $("<footer></footer")
.attr('id','randomQuoteFooter')
.html(author);
$('#randomQuoteText')
.html(quote)
.append(footer);
});
})
</script>
</head>
<body>
<div class="container">
<h1><img src="CydiaIcon.png"> Reposi3</h1>
</div>
<div class="container">
<div class="well">
<p><span class="text-primary"><b>Reposi3</span></b> is a Cydia repository template.</p>
<a class="btn btn-sm btn-default" href="cydia://url/https://cydia.saurik.com/api/share#?source=https://my-repo-url.com/repo/">Add to Cydia</a>
</div>
</div>
<div class="container">
<h3 id="wells" class="page-header">Hosted Packages</h3>
</div>
<div class="container">
<div class="panel panel-default">
<div class="panel-heading">Old Package</div>
<div class="panel-body">
This is a sample package with minimal information.
It also simulates an old package that's incompatible with iOS greater than 7.0.<br /><br />
<a class="btn btn-xs btn-default" href="depictions/?p=com.reposi3.oldpackage">More info</a>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">Full Package</div>
<div class="panel-body">
This is a sample package with lots of information.<br /><br />
<a class="btn btn-xs btn-default" href="depictions/?p=com.reposi3.fullpackage">More info</a>
</div>
</div>
</div>
</body>
</html>

14
repo.xml Normal file
View File

@@ -0,0 +1,14 @@
<repo>
<footerlinks>
<link>
<name>Follow me on Twitter</name>
<url>https://twitter.com/reposi3</url>
<iconclass>glyphicon glyphicon-user</iconclass>
</link>
<link>
<name>I want this depiction template</name>
<url>https://github.com/supermamon/reposi3</url>
<iconclass>glyphicon glyphicon-thumbs-up</iconclass>
</link>
</footerlinks>
</repo>