Skip to content

Commit

Permalink
- Отказ от кривого конфига
Browse files Browse the repository at this point in the history
- Подгрузка хостов для применения обходов
  • Loading branch information
cot.nyashniy@yandex.ru committed Oct 11, 2024
1 parent 8359018 commit 3c20a7c
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 98 deletions.
42 changes: 0 additions & 42 deletions LazyDisYTUnloker/App.config

This file was deleted.

36 changes: 8 additions & 28 deletions LazyDisYTUnloker/FilesAndDirectories.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,31 +8,24 @@ internal static class FilesAndDirectories
{
internal static MainForm Form { get; set; } = null!;

internal const string MainZapretDirectory = "zapret-win-bundle-master";
internal const string WinwsDirectory = "zapret-winws";
private const string _discordDomainsListFile = "list-discord.txt";
private const string _youtubeDomainsListFile = "list-youtube.txt";

private static List<string> _discordDomains = new List<string>(ConfigurationManager.AppSettings["discordDomains"].Split('\n'));
private static List<string> _youtubeDomains = new List<string>(ConfigurationManager.AppSettings["youtubeDomains"].Split('\n'));
internal const string _mainZapretDirectory = "zapret-win-bundle-master";
internal const string _winwsDirectory = "zapret-winws";

internal static void SetupDirectory()
{
Directory.CreateDirectory(MainZapretDirectory);
Directory.CreateDirectory(_mainZapretDirectory);
}

internal static bool IsZapretBundleDirectoriesLoaded()
{
Form.ChangeDiscordDomainsCountLabel(_discordDomains.Count);
Form.ChangeYouTubeDomainsCountLabel(_youtubeDomains.Count);
if (Directory.Exists(MainZapretDirectory) && Directory.GetDirectories(MainZapretDirectory).Count() == 5)
if (Directory.Exists(_mainZapretDirectory) && Directory.GetDirectories(_mainZapretDirectory).Count() == 5)
{
Form.ChangeZapretBundleStatus("готов к работе");
return true;
}
Form.ChangeZapretBundleStatus("не загружен и не готов к работе");
if (Directory.Exists(MainZapretDirectory))
Directory.Delete(MainZapretDirectory, true);
if (Directory.Exists(_mainZapretDirectory))
Directory.Delete(_mainZapretDirectory, true);
return false;
}

Expand All @@ -47,28 +40,15 @@ internal static async Task<bool> DownloadUnpackAndSetupZapret()
using (MemoryStream ms = new MemoryStream(data))
using (ZipArchive archive = new ZipArchive(ms, ZipArchiveMode.Read))
archive.ExtractToDirectory(Directory.GetCurrentDirectory());
if (!File.Exists($"{MainZapretDirectory}\\{WinwsDirectory}\\{_discordDomainsListFile}"))
CreateDiscordDomainsFile();
if (!File.Exists($"{MainZapretDirectory}\\{WinwsDirectory}\\{_youtubeDomainsListFile}"))
CreateYouTubeDomainsFile();
return true;
}
catch
{
Form.ChangeZapretBundleStatus("не получилось загрузить или распаковать :(");
Form.ChangeZapretBundleStatus("не получилось загрузить или распаковать Zapret :(");
return false;
}

}

private static void CreateDiscordDomainsFile()
{
File.WriteAllLines($"{MainZapretDirectory}\\{WinwsDirectory}\\{_discordDomainsListFile}", _discordDomains);
}

private static void CreateYouTubeDomainsFile()
{
File.WriteAllLines($"{MainZapretDirectory}\\{WinwsDirectory}\\{_youtubeDomainsListFile}", _youtubeDomains);
}
internal static string GetWinwsPath => $"{_mainZapretDirectory}\\{_winwsDirectory}";
}
}
6 changes: 0 additions & 6 deletions LazyDisYTUnloker/LazyDisYTUnloker.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,4 @@
<Content Include="lock.ico" />
</ItemGroup>

<ItemGroup>
<None Update="App.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>

</Project>
12 changes: 6 additions & 6 deletions LazyDisYTUnloker/MainForm.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions LazyDisYTUnloker/MainForm.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ private async Task CheckFilesAndSetup()

FilesAndDirectories.SetupDirectory();
ChangeStatus("ïðîâåðÿþ ôàéëû è îáíîâëÿþ ñòðàòåãèè...");
if (await FilesAndDirectories.DownloadUnpackAndSetupZapret() && FilesAndDirectories.IsZapretBundleDirectoriesLoaded() && await Strategies.UpdateStrategies(true))
if (await FilesAndDirectories.DownloadUnpackAndSetupZapret() && FilesAndDirectories.IsZapretBundleDirectoriesLoaded() && await Strategies.GetStrategies(true))
{
ChangeZapretBundleStatus("ãîòîâ ê ðàáîòå");
BeginInvoke(() =>
Expand All @@ -49,7 +49,7 @@ private async Task CheckFilesAndSetup()
}
else
{
if (await Strategies.UpdateStrategies(false))
if (await Strategies.GetStrategies(false))
{
BeginInvoke(() =>
{
Expand Down Expand Up @@ -133,7 +133,7 @@ private async void UpdateStrategiesButton_Click(object sender, EventArgs e)
MainButton.Enabled = false;
UpdateStrategiesButton.Enabled = false;
});
if (await Strategies.UpdateStrategies(true))
if (await Strategies.GetStrategies(true))
{
BeginInvoke(() =>
{
Expand Down
4 changes: 2 additions & 2 deletions LazyDisYTUnloker/ProcessManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ internal static bool RunStrategies()
{
try
{
_discordUnlockProcess = Process.Start(new ProcessStartInfo() { FileName = $"{FilesAndDirectories.MainZapretDirectory}\\{FilesAndDirectories.WinwsDirectory}\\winws.exe", Arguments = Strategies.DiscordStrategy.Replace("[winwsdir]", $"{FilesAndDirectories.MainZapretDirectory}\\{FilesAndDirectories.WinwsDirectory}"), CreateNoWindow = true, UseShellExecute = false });
_youtubeUnlockProcess = Process.Start(new ProcessStartInfo() { FileName = $"{FilesAndDirectories.MainZapretDirectory}\\{FilesAndDirectories.WinwsDirectory}\\winws.exe", Arguments = Strategies.YouTubeStrategy.Replace("[winwsdir]", $"{FilesAndDirectories.MainZapretDirectory}\\{FilesAndDirectories.WinwsDirectory}"), CreateNoWindow = true, UseShellExecute = false });
_discordUnlockProcess = Process.Start(new ProcessStartInfo() { FileName = $"{FilesAndDirectories._mainZapretDirectory}\\{FilesAndDirectories._winwsDirectory}\\winws.exe", Arguments = Strategies.DiscordStrategy.Replace("[winwsdir]", $"{FilesAndDirectories._mainZapretDirectory}\\{FilesAndDirectories._winwsDirectory}"), CreateNoWindow = true, UseShellExecute = false });
_youtubeUnlockProcess = Process.Start(new ProcessStartInfo() { FileName = $"{FilesAndDirectories._mainZapretDirectory}\\{FilesAndDirectories._winwsDirectory}\\winws.exe", Arguments = Strategies.YouTubeStrategy.Replace("[winwsdir]", $"{FilesAndDirectories._mainZapretDirectory}\\{FilesAndDirectories._winwsDirectory}"), CreateNoWindow = true, UseShellExecute = false });
return true;
}
catch (Exception ex)
Expand Down
25 changes: 14 additions & 11 deletions LazyDisYTUnloker/Strategies.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,28 +5,36 @@ internal static class Strategies
internal static string DiscordStrategy { get; private set; } = null!;
internal static string YouTubeStrategy { get; private set; } = null!;

internal static async Task<bool> UpdateStrategies(bool update)
internal static async Task<bool> GetStrategies(bool update)
{
try
{
if (!update)
{
if (File.Exists("dsstrat.txt") && File.Exists("ytstrat.txt"))
if (File.Exists("dsstrat.txt") && File.Exists("ytstrat.txt") && File.Exists($"{FilesAndDirectories.GetWinwsPath}\\list-youtube.txt") && File.Exists($"{FilesAndDirectories.GetWinwsPath}\\list-discord.txt"))
{
DiscordStrategy = File.ReadAllText("dsstrat.txt");
YouTubeStrategy = File.ReadAllText("ytstrat.txt");
FilesAndDirectories.Form.ChangeLastStrategiesUpdateDate(new FileInfo("dsstrat.txt").LastWriteTime);
FilesAndDirectories.Form.ChangeDiscordDomainsCountLabel(File.ReadAllLines($"{FilesAndDirectories.GetWinwsPath}\\list-discord.txt").Count());
FilesAndDirectories.Form.ChangeYouTubeDomainsCountLabel(File.ReadAllLines($"{FilesAndDirectories.GetWinwsPath}\\list-youtube.txt").Count());
return true;
}
return await UpdateStrategies(true);
return await GetStrategies(true);
}
using (HttpClient client = new HttpClient())
{
DiscordStrategy = await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/Dscord%20Zapret%20strategy.txt");
YouTubeStrategy = await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/YouTube%20Zapret%20strategy.txt");
DiscordStrategy = await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/Strategies/Dscord%20Zapret%20strategy.txt");
YouTubeStrategy = await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/Strategies/YouTube%20Zapret%20strategy.txt");
File.WriteAllText($"{FilesAndDirectories.GetWinwsPath}\\list-discord.txt", await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/Hosts/DiscordHosts.txt")); //TODO: Допилить парс хостов
File.WriteAllText($"{FilesAndDirectories.GetWinwsPath}\\list-youtube.txt", await client.GetStringAsync("https://raw.githubusercontent.com/WutADude/LazyDiscordAndYouTubeUnlocker/refs/heads/master/Hosts/YouTubeHosts.txt"));
File.WriteAllText("dsstrat.txt", DiscordStrategy);
File.WriteAllText("ytstrat.txt", YouTubeStrategy);

}

FilesAndDirectories.Form.ChangeLastStrategiesUpdateDate(new FileInfo("dsstrat.txt").LastWriteTime);
FilesAndDirectories.Form.ChangeDiscordDomainsCountLabel(File.ReadAllLines($"{FilesAndDirectories.GetWinwsPath}\\list-discord.txt").Count());
FilesAndDirectories.Form.ChangeYouTubeDomainsCountLabel(File.ReadAllLines($"{FilesAndDirectories.GetWinwsPath}\\list-youtube.txt").Count());
return true;
}
catch (Exception ex)
Expand All @@ -36,11 +44,6 @@ internal static async Task<bool> UpdateStrategies(bool update)
$"{ex.Message}", "Ошибка при получении/обновлении стратегий", MessageBoxButtons.OK, MessageBoxIcon.Error);
return false;
}
finally
{
if (File.Exists("dsstrat.txt"))
FilesAndDirectories.Form.ChangeLastStrategiesUpdateDate(new FileInfo("dsstrat.txt").LastWriteTime);
}
}
}
}

0 comments on commit 3c20a7c

Please sign in to comment.