Skip to content

Commit 4dfc954

Browse files
committed
Update
1 parent 0e09c07 commit 4dfc954

4 files changed

Lines changed: 70 additions & 81 deletions

File tree

Source/NETworkManager.Documentation/DocumentationInfo.cs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,11 @@ public class DocumentationInfo
77
{
88
public DocumentationIdentifier Identifier { get; set; }
99
public string Path { get; set; }
10-
public List<LocalizationInfo> Localizations { get; set; }
1110

12-
public DocumentationInfo(DocumentationIdentifier identifier, string path, List<LocalizationInfo> localizations)
11+
public DocumentationInfo(DocumentationIdentifier identifier, string path)
1312
{
1413
Identifier = identifier;
1514
Path = path;
16-
Localizations = localizations;
1715
}
1816
}
1917
}

Source/NETworkManager.Documentation/DocumentationManager.cs

Lines changed: 58 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
using NETworkManager.Localization;
2-
using NETworkManager.Models;
1+
using NETworkManager.Models;
32
using NETworkManager.Utilities;
43
using System.Collections.Generic;
54
using System.Diagnostics;
@@ -10,60 +9,52 @@ namespace NETworkManager.Documentation
109
{
1110
public static class DocumentationManager
1211
{
13-
public const string DocumentationBaseUrl = @"https://github.com/BornToBeRoot/NETworkManager/tree/master/Documentation/";
14-
15-
public static string DocumentationUrl => $"{DocumentationBaseUrl}{LocalizationManager.GetInstance().Current.Code}/README.md";
12+
public const string DocumentationBaseUrl = @"https://borntoberoot.github.io/NETworkManager/Documentation/";
1613

1714
public static List<DocumentationInfo> List => new List<DocumentationInfo>
1815
{
19-
new DocumentationInfo(DocumentationIdentifier.ApplicationDashboard, @"/Application/Dashboard.md", GetLocalizationInfoList("en-US", "de-DE")),
20-
new DocumentationInfo(DocumentationIdentifier.ApplicationNetworkInterface, @"/Application/NetworkInterface.md", GetLocalizationInfoList("en-US", "de-DE")),
21-
new DocumentationInfo(DocumentationIdentifier.ApplicationWiFi, @"/Application/WiFi.md", GetLocalizationInfoList("en-US", "de-DE")),
22-
new DocumentationInfo(DocumentationIdentifier.ApplicationIPScanner, @"/Application/IPScanner.md", GetLocalizationInfoList("en-US", "de-DE")),
23-
new DocumentationInfo(DocumentationIdentifier.ApplicationPortScanner, @"/Application/PortScanner.md", GetLocalizationInfoList("en-US", "de-DE")),
24-
new DocumentationInfo(DocumentationIdentifier.ApplicationPing, @"/Application/Ping.md", GetLocalizationInfoList("en-US", "de-DE")),
25-
new DocumentationInfo(DocumentationIdentifier.ApplicationPingMonitor, @"/Application/PingMonitor.md", GetLocalizationInfoList("en-US", "de-DE")),
26-
new DocumentationInfo(DocumentationIdentifier.ApplicationTraceroute, @"/Application/Traceroute.md", GetLocalizationInfoList("en-US", "de-DE")),
27-
new DocumentationInfo(DocumentationIdentifier.ApplicationDnsLookup, @"/Application/DNSLookup.md", GetLocalizationInfoList("en-US", "de-DE")),
28-
new DocumentationInfo(DocumentationIdentifier.ApplicationRemoteDesktop, @"/Application/RemoteDesktop.md", GetLocalizationInfoList("en-US", "de-DE")),
29-
new DocumentationInfo(DocumentationIdentifier.ApplicationPowerShell, @"/Application/PowerShell.md", GetLocalizationInfoList("en-US", "de-DE")),
30-
new DocumentationInfo(DocumentationIdentifier.ApplicationPutty, @"/Application/PuTTY.md", GetLocalizationInfoList("en-US", "de-DE")),
31-
new DocumentationInfo(DocumentationIdentifier.ApplicationTigerVNC, @"/Application/TigerVNC.md", GetLocalizationInfoList("en-US", "de-DE")),
32-
new DocumentationInfo(DocumentationIdentifier.ApplicationWebConsole, @"/Application/WebConsole.md", GetLocalizationInfoList("en-US", "de-DE")),
33-
new DocumentationInfo(DocumentationIdentifier.ApplicationSnmp, @"/Application/SNMP.md", GetLocalizationInfoList("en-US", "de-DE")),
34-
new DocumentationInfo(DocumentationIdentifier.ApplicationDiscoveryProtocol, @"/Application/DiscoveryProtocol.md", GetLocalizationInfoList("en-US", "de-DE")),
35-
new DocumentationInfo(DocumentationIdentifier.ApplicationWakeOnLan, @"/Application/WakeOnLAN.md", GetLocalizationInfoList("en-US", "de-DE")),
36-
new DocumentationInfo(DocumentationIdentifier.ApplicationHttpHeaders, @"/Application/HTTPHeaders.md", GetLocalizationInfoList("en-US", "de-DE")),
37-
new DocumentationInfo(DocumentationIdentifier.ApplicationWhois, @"/Application/Whois.md", GetLocalizationInfoList("en-US", "de-DE")),
38-
new DocumentationInfo(DocumentationIdentifier.ApplicationSubnetCalculator, @"/Application/SubnetCalculator.md", GetLocalizationInfoList("en-US", "de-DE")),
39-
new DocumentationInfo(DocumentationIdentifier.ApplicationLookup, @"/Application/Lookup.md", GetLocalizationInfoList("en-US", "de-DE")),
40-
new DocumentationInfo(DocumentationIdentifier.ApplicationConnections, @"/Application/Connections.md", GetLocalizationInfoList("en-US", "de-DE")),
41-
new DocumentationInfo(DocumentationIdentifier.ApplicationListeners, @"/Application/Listeners.md", GetLocalizationInfoList("en-US", "de-DE")),
42-
new DocumentationInfo(DocumentationIdentifier.ApplicationArpTable, @"/Application/ARPTable.md", GetLocalizationInfoList("en-US", "de-DE")),
16+
new DocumentationInfo(DocumentationIdentifier.ApplicationDashboard, @"Application/Dashboard.html"),
17+
new DocumentationInfo(DocumentationIdentifier.ApplicationNetworkInterface, @"Application/NetworkInterface.html"),
18+
new DocumentationInfo(DocumentationIdentifier.ApplicationWiFi, @"Application/WiFi.html"),
19+
new DocumentationInfo(DocumentationIdentifier.ApplicationIPScanner, @"Application/IPScanner.html"),
20+
new DocumentationInfo(DocumentationIdentifier.ApplicationPortScanner, @"Application/PortScanner.html"),
21+
new DocumentationInfo(DocumentationIdentifier.ApplicationPing, @"Application/Ping.html"),
22+
new DocumentationInfo(DocumentationIdentifier.ApplicationPingMonitor, @"Application/PingMonitor.html"),
23+
new DocumentationInfo(DocumentationIdentifier.ApplicationTraceroute, @"Application/Traceroute.html"),
24+
new DocumentationInfo(DocumentationIdentifier.ApplicationDnsLookup, @"Application/DNSLookup.html"),
25+
new DocumentationInfo(DocumentationIdentifier.ApplicationRemoteDesktop, @"Application/RemoteDesktop.html"),
26+
new DocumentationInfo(DocumentationIdentifier.ApplicationPowerShell, @"Application/PowerShell.html"),
27+
new DocumentationInfo(DocumentationIdentifier.ApplicationPutty, @"Application/PuTTY.html"),
28+
new DocumentationInfo(DocumentationIdentifier.ApplicationTigerVNC, @"Application/TigerVNC.html"),
29+
new DocumentationInfo(DocumentationIdentifier.ApplicationWebConsole, @"Application/WebConsole.html"),
30+
new DocumentationInfo(DocumentationIdentifier.ApplicationSnmp, @"Application/SNMP.html"),
31+
new DocumentationInfo(DocumentationIdentifier.ApplicationDiscoveryProtocol, @"Application/DiscoveryProtocol.html"),
32+
new DocumentationInfo(DocumentationIdentifier.ApplicationWakeOnLan, @"Application/WakeOnLAN.html"),
33+
new DocumentationInfo(DocumentationIdentifier.ApplicationHttpHeaders, @"Application/HTTPHeaders.html"),
34+
new DocumentationInfo(DocumentationIdentifier.ApplicationWhois, @"Application/Whois.html"),
35+
new DocumentationInfo(DocumentationIdentifier.ApplicationSubnetCalculator, @"Application/SubnetCalculator.html"),
36+
new DocumentationInfo(DocumentationIdentifier.ApplicationLookup, @"Application/Lookup.html"),
37+
new DocumentationInfo(DocumentationIdentifier.ApplicationConnections, @"Application/Connections.html"),
38+
new DocumentationInfo(DocumentationIdentifier.ApplicationListeners, @"Application/Listeners.html"),
39+
new DocumentationInfo(DocumentationIdentifier.ApplicationArpTable, @"Application/ARPTable.html"),
4340
};
44-
41+
4542
// Get localized documentation url (if available), else return the english page
46-
public static string GetLocalizedUrlByIdentifier(DocumentationIdentifier documentationIdentifier)
43+
public static string CreateUrl(DocumentationIdentifier documentationIdentifier)
4744
{
4845
var info = List.FirstOrDefault(x => x.Identifier == documentationIdentifier);
4946

50-
// Return start page
51-
if (info == null)
52-
return DocumentationBaseUrl;
47+
var url = DocumentationBaseUrl;
5348

54-
// Try get localized help, fallback is english
55-
return info.Localizations.FirstOrDefault(x => x.Code == LocalizationManager.GetInstance().Current.Code) != null ? $"{DocumentationBaseUrl}{LocalizationManager.GetInstance().Current.Code}{info.Path}" : $"{DocumentationBaseUrl}en-US{info.Path}";
56-
}
49+
if (info != null)
50+
url += info.Path;
5751

58-
// Generate a list with culture codes
59-
private static List<LocalizationInfo> GetLocalizationInfoList(params string[] codes)
60-
{
61-
return codes.Select(code => new LocalizationInfo(code)).ToList();
52+
return url;
6253
}
6354

6455
public static void OpenDocumentation(DocumentationIdentifier documentationIdentifier)
65-
{
66-
Process.Start(documentationIdentifier == DocumentationIdentifier.Default ? DocumentationUrl : GetLocalizedUrlByIdentifier(documentationIdentifier));
56+
{
57+
Process.Start(CreateUrl(documentationIdentifier));
6758
}
6859

6960
#region ICommands & Actions
@@ -72,59 +63,59 @@ public static void OpenDocumentation(DocumentationIdentifier documentationIdenti
7263
private static void OpenDocumentationAction(object documentationIdentifier)
7364
{
7465
if (documentationIdentifier != null)
75-
OpenDocumentation((DocumentationIdentifier) documentationIdentifier);
66+
OpenDocumentation((DocumentationIdentifier)documentationIdentifier);
7667
}
7768

7869
public static DocumentationIdentifier GetIdentifierByAppliactionName(ApplicationName name)
7970
{
8071
switch (name)
8172
{
8273
case ApplicationName.Dashboard:
83-
return DocumentationIdentifier.ApplicationDashboard;
74+
return DocumentationIdentifier.ApplicationDashboard;
8475
case ApplicationName.NetworkInterface:
85-
return DocumentationIdentifier.ApplicationNetworkInterface;
76+
return DocumentationIdentifier.ApplicationNetworkInterface;
8677
case ApplicationName.WiFi:
87-
return DocumentationIdentifier.ApplicationWiFi;
78+
return DocumentationIdentifier.ApplicationWiFi;
8879
case ApplicationName.IPScanner:
89-
return DocumentationIdentifier.ApplicationIPScanner;
80+
return DocumentationIdentifier.ApplicationIPScanner;
9081
case ApplicationName.PortScanner:
91-
return DocumentationIdentifier.ApplicationPortScanner;
82+
return DocumentationIdentifier.ApplicationPortScanner;
9283
case ApplicationName.Ping:
93-
return DocumentationIdentifier.ApplicationPing;
84+
return DocumentationIdentifier.ApplicationPing;
9485
case ApplicationName.Traceroute:
95-
return DocumentationIdentifier.ApplicationTraceroute;
86+
return DocumentationIdentifier.ApplicationTraceroute;
9687
case ApplicationName.DNSLookup:
97-
return DocumentationIdentifier.ApplicationDnsLookup;
88+
return DocumentationIdentifier.ApplicationDnsLookup;
9889
case ApplicationName.RemoteDesktop:
99-
return DocumentationIdentifier.ApplicationRemoteDesktop;
90+
return DocumentationIdentifier.ApplicationRemoteDesktop;
10091
case ApplicationName.PowerShell:
101-
return DocumentationIdentifier.ApplicationPowerShell;
92+
return DocumentationIdentifier.ApplicationPowerShell;
10293
case ApplicationName.PuTTY:
103-
return DocumentationIdentifier.ApplicationPutty;
94+
return DocumentationIdentifier.ApplicationPutty;
10495
case ApplicationName.TigerVNC:
105-
return DocumentationIdentifier.ApplicationTigerVNC;
96+
return DocumentationIdentifier.ApplicationTigerVNC;
10697
case ApplicationName.SNMP:
107-
return DocumentationIdentifier.ApplicationSnmp;
98+
return DocumentationIdentifier.ApplicationSnmp;
10899
case ApplicationName.WakeOnLAN:
109-
return DocumentationIdentifier.ApplicationWakeOnLan;
100+
return DocumentationIdentifier.ApplicationWakeOnLan;
110101
case ApplicationName.HTTPHeaders:
111-
return DocumentationIdentifier.ApplicationHttpHeaders;
102+
return DocumentationIdentifier.ApplicationHttpHeaders;
112103
case ApplicationName.Whois:
113-
return DocumentationIdentifier.ApplicationWhois;
104+
return DocumentationIdentifier.ApplicationWhois;
114105
case ApplicationName.SubnetCalculator:
115-
return DocumentationIdentifier.ApplicationSubnetCalculator;
106+
return DocumentationIdentifier.ApplicationSubnetCalculator;
116107
case ApplicationName.Lookup:
117-
return DocumentationIdentifier.ApplicationLookup;
108+
return DocumentationIdentifier.ApplicationLookup;
118109
case ApplicationName.Connections:
119-
return DocumentationIdentifier.ApplicationConnections;
110+
return DocumentationIdentifier.ApplicationConnections;
120111
case ApplicationName.Listeners:
121-
return DocumentationIdentifier.ApplicationListeners;
112+
return DocumentationIdentifier.ApplicationListeners;
122113
case ApplicationName.ARPTable:
123-
return DocumentationIdentifier.ApplicationArpTable;
114+
return DocumentationIdentifier.ApplicationArpTable;
124115
case ApplicationName.None:
125-
return DocumentationIdentifier.Default;
116+
return DocumentationIdentifier.Default;
126117
default:
127-
return DocumentationIdentifier.Default;
118+
return DocumentationIdentifier.Default;
128119
}
129120
}
130121
#endregion

Source/NETworkManager/MainWindow.xaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -95,25 +95,25 @@
9595
</Rectangle.OpacityMask>
9696
</Rectangle>
9797
</StackPanel>
98-
</Button>
99-
<Button Command="{Binding OpenDocumentationCommand}" ToolTip="{x:Static localization:Strings.OpenDocumentation}" Cursor="Hand">
98+
</Button>
99+
<Button Command="{Binding OpenWebsiteCommand}" ToolTip="{x:Static localization:Strings.ReportAnIssueOrCreateAFeatureRequest}" CommandParameter="{x:Static resources:Resources.NETworkManager_NewIssueUrl}" Cursor="Hand">
100100
<StackPanel Orientation="Horizontal">
101101
<Rectangle Width="20" Height="20" Fill="{Binding RelativeSource={RelativeSource AncestorType=Button}, Path=Foreground}">
102102
<Rectangle.OpacityMask>
103-
<VisualBrush Stretch="Uniform" Visual="{iconPacks:Modern Kind=BookPerspectiveHelp}" />
103+
<VisualBrush Stretch="Uniform" Visual="{iconPacks:JamIcons Kind=BugF}" />
104104
</Rectangle.OpacityMask>
105105
</Rectangle>
106106
</StackPanel>
107107
</Button>
108-
<Button Command="{Binding OpenWebsiteCommand}" ToolTip="{x:Static localization:Strings.ReportAnIssueOrCreateAFeatureRequest}" CommandParameter="{x:Static resources:Resources.NETworkManager_NewIssueUrl}" Cursor="Hand">
108+
<Button Command="{Binding OpenDocumentationCommand}" ToolTip="{x:Static localization:Strings.OpenDocumentation}" Cursor="Hand">
109109
<StackPanel Orientation="Horizontal">
110110
<Rectangle Width="20" Height="20" Fill="{Binding RelativeSource={RelativeSource AncestorType=Button}, Path=Foreground}">
111111
<Rectangle.OpacityMask>
112-
<VisualBrush Stretch="Uniform" Visual="{iconPacks:JamIcons Kind=BugF}" />
112+
<VisualBrush Stretch="Uniform" Visual="{iconPacks:Modern Kind=BookPerspectiveHelp}" />
113113
</Rectangle.OpacityMask>
114114
</Rectangle>
115115
</StackPanel>
116-
</Button>
116+
</Button>
117117
</StackPanel>
118118
</mahAppsControls:WindowCommands>
119119
</mahAppsControls:MetroWindow.RightWindowCommands>

Source/NETworkManager/Views/AboutView.xaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,11 @@
7070
</Style>
7171
</Rectangle.Style>
7272
</Rectangle>
73-
</Button>
74-
<Button ToolTip="{x:Static localization:Strings.ToolTip_GithubDocumentationUrl}" Command="{Binding OpenDocumentationCommand}" Margin="10,0,0,0">
73+
</Button>
74+
<Button ToolTip="{x:Static localization:Strings.ToolTip_GithubNewIssueUrl}" Command="{Binding OpenWebsiteCommand}" CommandParameter="{x:Static resources:Resources.NETworkManager_NewIssueUrl}" Margin="10,0,0,0">
7575
<Rectangle Width="24" Height="24" >
7676
<Rectangle.OpacityMask>
77-
<VisualBrush Stretch="Uniform" Visual="{iconPacks:Modern Kind=BookPerspectiveHelp}" />
77+
<VisualBrush Stretch="Uniform" Visual="{iconPacks:JamIcons Kind=BugF}" />
7878
</Rectangle.OpacityMask>
7979
<Rectangle.Style>
8080
<Style TargetType="{x:Type Rectangle}">
@@ -88,10 +88,10 @@
8888
</Rectangle.Style>
8989
</Rectangle>
9090
</Button>
91-
<Button ToolTip="{x:Static localization:Strings.ToolTip_GithubNewIssueUrl}" Command="{Binding OpenWebsiteCommand}" CommandParameter="{x:Static resources:Resources.NETworkManager_NewIssueUrl}" Margin="10,0,0,0">
91+
<Button ToolTip="{x:Static localization:Strings.ToolTip_GithubDocumentationUrl}" Command="{Binding OpenDocumentationCommand}" Margin="10,0,0,0">
9292
<Rectangle Width="24" Height="24" >
9393
<Rectangle.OpacityMask>
94-
<VisualBrush Stretch="Uniform" Visual="{iconPacks:JamIcons Kind=BugF}" />
94+
<VisualBrush Stretch="Uniform" Visual="{iconPacks:Modern Kind=BookPerspectiveHelp}" />
9595
</Rectangle.OpacityMask>
9696
<Rectangle.Style>
9797
<Style TargetType="{x:Type Rectangle}">

0 commit comments

Comments
 (0)