Skip to content

Latest commit

 

History

History
96 lines (86 loc) · 3.88 KB

apps.md

File metadata and controls

96 lines (86 loc) · 3.88 KB

#Official apps

Official apps Apps in progress Apps wishlist

View all
<script type="text/template" id="app-template">

Description: {app_description}

Last update (UTC): {app_update}

Level: {app_level}

Maintainer: {app_maintainer} ({app_mail})

Git repository: {app_git} ({app_branch})

Documentation
</script>
All official applications are under free licenses.
<script> function timeConverter(UNIX_timestamp) { var a = new Date(UNIX_timestamp*1000); var months = ['January','February','March','April','May','June','July','August','September','October','November','December']; var year = a.getFullYear(); var month = months[a.getMonth()]; var date = a.getDate(); var hour = a.getHours(); var min = a.getMinutes(); if (hour < 10) { hour = '0' + hour; } if (min < 10) { min = '0' + min; } var time = date+' '+month+' '+year+' at '+hour+':'+min; return time; } $(document).ready(function () { $.getJSON('https://app.yunohost.org/official.json', function(app_list) { // Cast as array var app_list = $.map(app_list, function(el) { return el; }); // Sort alpha app_list.sort(function(a, b){ if (a.manifest.id > b.manifest.id) {return 1;} else if (a.manifest.id < b.manifest.id) {return -1;} return 0; }); $.each(app_list, function(k, infos) { app_id = infos.manifest.id; html = $('#app-template').html() .replace(/{app_id}/g, app_id) .replace(/{app_name}/g, infos.manifest.name) .replace('{app_description}', infos.manifest.description.en) .replace(/{app_git}/g, infos.git.url) .replace('{app_branch}', infos.git.branch) .replace('{app_level}', infos.level) .replace('{app_update}', timeConverter(infos.lastUpdate)); if (infos.manifest.developer) { html = html .replace('{app_maintainer}', infos.manifest.developer.name) .replace('{app_mail}', infos.manifest.developer.email); } if (infos.manifest.maintainer) { html = html .replace('{app_maintainer}', infos.manifest.maintainer.name) .replace('{app_mail}', infos.manifest.maintainer.email); } $('#app-accordion').append(html); $('.app_'+ app_id).attr('id', 'app_'+ app_id); }); }); }); </script>