Add a little app to list apps.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@3712 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
parent
263a59f6c5
commit
f676cd937f
1
apps/cory/apps.json
Normal file
1
apps/cory/apps.json
Normal file
@ -0,0 +1 @@
|
||||
{"type":"tildefriends-app","files":{"app.js":"&8DbkWJq+bDlPNGZGVWrlVyMzo+weV5GBfcleQSjIPjI=.sha256"}}
|
24
apps/cory/apps/app.js
Normal file
24
apps/cory/apps/app.js
Normal file
@ -0,0 +1,24 @@
|
||||
async function main() {
|
||||
var apps = await core.apps();
|
||||
var doc = `<!DOCTYPE html>
|
||||
<html>
|
||||
<body style="background: #888">
|
||||
<h1>Apps</h1>
|
||||
<ul id="apps"></ul>
|
||||
</body>
|
||||
<script>
|
||||
var apps = ${JSON.stringify(apps)};
|
||||
for (let app of Object.keys(apps)) {
|
||||
var li = document.getElementById('apps').appendChild(document.createElement('li'));
|
||||
var a = document.createElement('a');
|
||||
a.innerText = app;
|
||||
a.href = '../' + app;
|
||||
a.target = '_top';
|
||||
li.appendChild(a);
|
||||
}
|
||||
</script>
|
||||
</html>`
|
||||
app.setDocument(doc);
|
||||
}
|
||||
|
||||
main();
|
@ -273,6 +273,7 @@ static int _tf_command_export(const char* file, int argc, char* argv[])
|
||||
else
|
||||
{
|
||||
const char* k_export[] = {
|
||||
"/~cory/apps",
|
||||
"/~cory/index",
|
||||
"/~cory/docs",
|
||||
};
|
||||
|
@ -22,6 +22,14 @@ static void _write_file(const char* path, void* blob, size_t size)
|
||||
}
|
||||
}
|
||||
|
||||
static void _make_dir(const char* path)
|
||||
{
|
||||
if (mkdir(path, 0755) && errno != EEXIST)
|
||||
{
|
||||
printf("Failed to create directory %s: %s.\n", path, strerror(errno));
|
||||
}
|
||||
}
|
||||
|
||||
void tf_ssb_export(tf_ssb_t* ssb, const char* key)
|
||||
{
|
||||
char user[256] = { 0 };
|
||||
@ -66,6 +74,11 @@ void tf_ssb_export(tf_ssb_t* ssb, const char* key)
|
||||
return;
|
||||
}
|
||||
char file_path[1024];
|
||||
_make_dir("apps/");
|
||||
snprintf(file_path, sizeof(file_path), "apps/%s", user);
|
||||
_make_dir(file_path);
|
||||
snprintf(file_path, sizeof(file_path), "apps/%s/%s", user, path);
|
||||
_make_dir(file_path);
|
||||
snprintf(file_path, sizeof(file_path), "apps/%s/%s.json", user, path);
|
||||
_write_file(file_path, blob, size);
|
||||
JSContext* context = tf_ssb_get_context(ssb);
|
||||
|
Loading…
Reference in New Issue
Block a user