aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.HtmlBrowser/Plugin.cs
blob: 1599881d0b0d14eaa8dd952c594be7a9e8bbf00e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;
using System.Reactive.Linq;
using MediaBrowser.Common.Net.Handlers;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Controller;
using MediaBrowser.HtmlBrowser.Handlers;

namespace MediaBrowser.HtmlBrowser
{
    public class Plugin : BasePlugin<BasePluginConfiguration>
    {
        protected override void InitInternal()
        {
            var httpServer = Kernel.Instance.HttpServer;

            httpServer.Where(ctx => ctx.LocalPath.IndexOf("/browser/", StringComparison.OrdinalIgnoreCase) != -1).Subscribe(ctx =>
            {
                string localPath = ctx.LocalPath;
                string srch = "/browser/";

                int index = localPath.IndexOf(srch, StringComparison.OrdinalIgnoreCase);

                string resource = localPath.Substring(index + srch.Length);

                ctx.Respond(new EmbeddedResourceHandler(ctx, resource));

            });
        }
    }
}