mod_register_apps/mod_register_apps.lua
author Matthew Wild <mwild1@gmail.com>
Sat, 12 Sep 2020 10:42:37 +0100
changeset 4117 c85af57e82e0
parent 4115 ae2699f1cba9
child 4118 4656a64e59be
permissions -rw-r--r--
mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4095
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     1
module:depends("http");
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     2
local http_files = module:depends("http_files");
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     3
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     4
local app_config = module:get_option("site_apps", {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     5
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     6
		name = "Conversations";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     7
		text = [[Conversations is a Jabber/XMPP client for Android 4.0+ smartphones that has been optimized to provide a unique mobile experience.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     8
		image = "assets/logos/conversations.svg";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
     9
		link = "https://play.google.com/store/apps/details?id=eu.siacs.conversations";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    10
		platforms = { "Android" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    11
		supports_preauth_uri = true;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    12
		magic_link_format = "{app.link!}&referrer={invite.uri}";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    13
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    14
			buttons = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    15
				{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    16
					image = "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    17
					url = "https://play.google.com/store/apps/details?id=eu.siacs.conversations";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    18
				};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    19
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    20
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    21
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    22
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    23
		name  = "yaxim";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    24
		text  = [[A lean Jabber/XMPP client for Android. It aims at usability, low overhead and security, and works on low-end Android devices starting with Android 4.0.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    25
		image = "assets/logos/yaxim.svg";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    26
		link  = "https://play.google.com/store/apps/details?id=org.yaxim.androidclient";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    27
		platforms = { "Android" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    28
		supports_preauth_uri = true;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    29
		magic_link_format = "{app.link!}&referrer={invite.uri}";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    30
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    31
			buttons = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    32
				{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    33
					image = "https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    34
					url = "https://play.google.com/store/apps/details?id=org.yaxim.androidclient";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    35
				};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    36
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    37
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    38
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    39
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    40
		name  = "Siskin IM";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    41
		text  = [[A lightweight and powerful XMPP client for iPhone and iPad. It provides an easy way to talk and share moments with your friends.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    42
		image = "assets/logos/siskin-im.png";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    43
		link  = "https://apps.apple.com/us/app/siskin-im/id1153516838";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    44
		platforms = { "iOS" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    45
		supports_preauth_uri = true;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    46
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    47
			buttons = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    48
				{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    49
					image = "https://linkmaker.itunes.apple.com/en-us/badge-lrg.svg?releaseDate=2017-05-31&kind=iossoftware&bubble=ios_apps";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    50
					url = "https://apps.apple.com/us/app/siskin-im/id1153516838";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    51
					target = "_blank";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    52
				};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    53
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    54
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    55
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    56
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    57
		name  = "Beagle IM";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    58
		text  = [[Beagle IM by Tigase, Inc. is a lightweight and powerful XMPP client for macOS.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    59
		image = "assets/logos/beagle-im.png";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    60
		link  = "https://apps.apple.com/us/app/beagle-im/id1445349494";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    61
		platforms = { "macOS" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    62
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    63
			buttons = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    64
				{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    65
					text = "Download from Mac App Store";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    66
					url = "https://apps.apple.com/us/app/beagle-im/id1445349494";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    67
					target = "_blank";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    68
				};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    69
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    70
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    71
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    72
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    73
		name  = "Dino";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    74
		text  = [[A modern open-source chat client for the desktop. It focuses on providing a clean and reliable Jabber/XMPP experience while having your privacy in mind.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    75
		image = "assets/logos/dino.svg";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    76
		link  = "https://dino.im/";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    77
		platforms = { "Linux" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    78
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    79
			text = "Click the button to open the Dino website where you can download and install it on your PC.";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    80
			buttons = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    81
				{ text = "Download Dino for Linux", url = "https://dino.im/#download", target="_blank" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    82
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    83
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    84
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    85
	{
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    86
		name  = "Gajim";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    87
		text  = [[A fully-featured desktop chat client for Windows and Linux.]];
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    88
		image = "assets/logos/gajim.svg";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    89
		link  = "https://gajim.org/";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    90
		platforms = { "Windows", "Linux" };
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    91
		download = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    92
			buttons = {
4115
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
    93
				{
4095
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    94
					text = "Download Gajim";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    95
					url = "https://gajim.org/download/";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    96
					target = "_blank";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    97
				};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    98
			};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
    99
		};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   100
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   101
});
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   102
4117
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   103
local show_apps = module:get_option_set("site_apps_show");
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   104
local hide_apps = module:get_option_set("site_apps_hide");
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   105
4095
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   106
local base_url = module.http_url and module:http_url();
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   107
local function relurl(s)
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   108
	if s:match("^%w+://") then
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   109
		return s;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   110
	end
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   111
	return base_url.."/"..s;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   112
end
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   113
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   114
local site_apps = module:shared("apps");
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   115
4115
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   116
for k, v in pairs(site_apps) do
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   117
	if v._source == module.name then
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   118
		site_apps[k] = nil;
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   119
	end
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   120
end
ae2699f1cba9 mod_register_apps: Don't duplicate client entries on module reload
Matthew Wild <mwild1@gmail.com>
parents: 4095
diff changeset
   121
4095
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   122
for _, app_info in ipairs(app_config) do
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   123
	local app_id = app_info.id or app_info.name:gsub("%W+", "-"):lower();
4117
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   124
	if (not show_apps or show_apps:contains(app_id))
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   125
	and not hide_apps:contains(app_id) then
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   126
		app_info.id = app_id;
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   127
		app_info.image = relurl(app_info.image);
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   128
		site_apps[app_id] = app_info;
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   129
		app_info._source = module.name;
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   130
		table.insert(site_apps, app_info);
c85af57e82e0 mod_register_apps: Add site_apps_show and site_apps_hide options (thanks meaz)
Matthew Wild <mwild1@gmail.com>
parents: 4115
diff changeset
   131
	end
4095
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   132
end
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   133
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   134
local mime_map = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   135
	png = "image/png";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   136
	svg = "image/svg+xml";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   137
};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   138
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   139
module:provides("http", {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   140
	route = {
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   141
		["GET /assets/*"] = http_files and http_files.serve({
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   142
			path = module:get_directory().."/assets";
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   143
			mime_map = mime_map;
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   144
		});
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   145
	};
354dc1e7977a mod_register_apps: Provides a configurable list of XMPP apps
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
   146
});