Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

Commit

Permalink
Merge pull request #94 from InfinityGhost/release-controller
Browse files Browse the repository at this point in the history
Move release download logic to separate controller
  • Loading branch information
InfinityGhost authored Jun 8, 2022
2 parents ba92645 + 4ca8db6 commit c28beea
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 26 deletions.
28 changes: 28 additions & 0 deletions OpenTabletDriver.Web/Controllers/ReleaseController.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using OpenTabletDriver.Web.Core.Services;

#nullable enable

namespace OpenTabletDriver.Web.Controllers
{
public class ReleaseController : Controller
{
private readonly IReleaseService _releaseService;

public ReleaseController(IReleaseService releaseService)
{
_releaseService = releaseService;
}

[Route("{Release}/{Download}/{file}")]
public async Task<IActionResult> Download(string file)
{
var release = await _releaseService.GetLatestRelease();
var assets = await release.GetReleaseAssets();
var asset = assets.First(a => a.FileName == file);
return Redirect(asset.Url);
}
}
}
12 changes: 3 additions & 9 deletions OpenTabletDriver.Web/Views/Wiki/Install/Linux.cshtml
Original file line number Diff line number Diff line change
@@ -1,20 +1,14 @@
@using OpenTabletDriver.Web.Core.Services

@inject IReleaseService releaseService

@{
ViewBag.Title = "Linux Installation Guide";
var release = await releaseService.GetLatestRelease();
var assets = await release.GetReleaseAssets();
var deb = assets.FirstOrDefault(a => a.FileName == "OpenTabletDriver.deb")!;
}

<h3 class="wiki-nav-item" id="debian">
Ubuntu / Debian
</h3>
<ol>
<li>
Download the <a href="@deb.Url">latest release</a>
Download the
<a href="/Release/Download/OpenTabletDriver.deb">latest release</a>
<small class="text-muted">(OpenTabletDriver.deb)</small>
</li>
<li>
Expand Down Expand Up @@ -73,7 +67,7 @@
<p>
Alternatively, you can install <code>opentabletdriver</code> without an AUR helper.
</p>
<li>
<li>
Run the following commands in a terminal to install and enable the OpenTabletDriver service.
<codeblock class="mt-2" language="bash">
# Downloads the pkgbuild from the AUR.
Expand Down
11 changes: 3 additions & 8 deletions OpenTabletDriver.Web/Views/Wiki/Install/MacOS.cshtml
Original file line number Diff line number Diff line change
@@ -1,19 +1,14 @@
@using OpenTabletDriver.Web.Core.Services
@inject IReleaseService releaseService

@{
ViewBag.Title = "macOS Installation Guide";
var release = await releaseService.GetLatestRelease();
var assets = await release.GetReleaseAssets();
var asset = assets.First(a => a.FileName.Contains("osx-x64"));
}

<h3 class="wiki-nav-item" id="app">
App
</h3>
<ol>
<li>
Download the <a href="@asset.Url">latest release</a>
Download the
<a href="/Release/Download/OpenTabletDriver.osx-x64.tar.gz">latest release</a>
<small class="text-muted">(OpenTabletDriver-osx-x64.tar.gz)</small>
</li>
<li>
Expand All @@ -22,4 +17,4 @@
<li>
Run the OpenTabletDriver app.
</li>
</ol>
</ol>
14 changes: 5 additions & 9 deletions OpenTabletDriver.Web/Views/Wiki/Install/Windows.cshtml
Original file line number Diff line number Diff line change
@@ -1,12 +1,5 @@
@using OpenTabletDriver.Web.Core.Services

@inject IReleaseService releaseService

@{
ViewBag.Title = "Windows Installation Guide";
var release = await releaseService.GetLatestRelease();
var assets = await release.GetReleaseAssets();
var winzip = assets.FirstOrDefault(a => a.FileName == "OpenTabletDriver.win-x64.zip")!;
}

<h3 class="wiki-nav-item" id="dependencies">
Expand Down Expand Up @@ -39,7 +32,7 @@
<ol>
<li>
Download the
<a href="@(winzip.Url)">latest release</a>
<a href="/Release/Download/OpenTabletDriver.win-x64.zip">latest release</a>
<small class="text-muted">(OpenTabletDriver-win-x64.zip)</small>
</li>
<li>
Expand Down Expand Up @@ -72,7 +65,10 @@
requires WinUSB, and if it does, what interface. Check the <a href="/Tablets">supported list of tablets here</a>.
</p>
<ol>
<li>If your tablet <b>does</b> require WinUSB download it from <a href="https://github.com/pbatard/libwdi/releases/download/b755/zadig-2.6.exe">here</a>.</li>
<li>
If your tablet <b>does</b> require WinUSB download it from
<a href="https://github.com/pbatard/libwdi/releases/download/b755/zadig-2.6.exe">here</a>.
</li>
<li>Start Zadig.</li>
<li>Go to <code>Options > show all devices</code></li>
<li>Find your tablet on the device list and the interface.</li>
Expand Down

0 comments on commit c28beea

Please sign in to comment.