private static void ProcessBossAsync(object state) { var nextContactKey = (string)state; BossContact contact; if (!AppVars.BossContacts.TryGetValue(nextContactKey, out contact)) { return; } var nick = contact.Name; var html = NeverInfo.GetPInfo(nick); if (!AppVars.BossContacts.TryGetValue(nextContactKey, out contact)) { return; } contact.Process(html); }
public static bool Exists(string userNick) { var result = UserList.ContainsKey(userNick.ToLower()); if (result) { return(true); } var html = NeverInfo.GetPInfo(userNick); if (string.IsNullOrEmpty(html)) { return(false); } // 2/11/2017 - params -> parameters // var params0 = HelperStrings.SubString(html, "var params = [[", "],"); var params0 = HelperStrings.SubString(html, "var parameters = [[", "],"); if (string.IsNullOrEmpty(params0)) { return(false); } var spar0 = HelperStrings.ParseArguments(params0); if (spar0.Length < 9) { return(false); } var nick = spar0[0].Trim(); var sign = spar0[2]; var level = spar0[3]; var status = spar0[8] + ", " + spar0[9]; var user = new ChatUser(nick, level, sign, status); UserList.Add(nick.ToLower(), user); return(true); }
private static string HtmlPercEntry(string nick) { var html = NeverInfo.GetPInfo(nick); if (string.IsNullOrEmpty(html)) { return("Аноним"); } var params0 = HelperStrings.SubString(html, "var params = [[", "],"); if (string.IsNullOrEmpty(params0)) { return("Аноним"); } var hpmp = HelperStrings.SubString(html, "var hpmp = [", "]"); if (string.IsNullOrEmpty(hpmp)) { return("Аноним"); } var spar1 = HelperStrings.ParseArguments(hpmp); if (spar1.Length < 5) { return("Аноним"); } var spar0 = HelperStrings.ParseArguments(params0); if (spar0.Length < 9) { return("Аноним"); } nick = spar0[0].Trim(); var nnhtmlSec = nick; { nnhtmlSec = nnhtmlSec.Replace("+", "%2B"); } var colorNick = nick; switch (ContactsManager.GetClassIdOfContact(nick)) { case -1: case 0: colorNick = @"<font color=""#000000"">" + colorNick + "</font>"; break; case 1: colorNick = @"<font color=""#8A0808"">" + colorNick + "</font>"; break; case 2: colorNick = @"<font color=""#0B610B"">" + colorNick + "</font>"; break; } var align = spar0[1]; var sign = spar0[2]; var level = spar0[3]; var clan = spar0[8]; // var effects = [[1,'Боевая травма (x9) (еще 23:06:17)'],[2,'Тяжелая травма (x2) (еще 07:01:22)'],[17,'Молчанка (еще 00:00:05)']]; var effects = HelperStrings.SubString(html, "var effects = [", "];"); var sbeff = new StringBuilder(); if (!string.IsNullOrEmpty(effects)) { var seffects = effects.Split(new[] { "],[" }, StringSplitOptions.RemoveEmptyEntries); for (var k = 0; k < seffects.Length; k++) { var effk = seffects[k].Trim(new[] { '[', ']' }); var seffk = effk.Split(','); if (seffk.Length <= 1) { continue; } var effcode = seffk[0]; var effname = seffk[1].Replace("<b>", string.Empty).Replace("</b>", string.Empty); sbeff.AppendFormat( @" <img src=http://image.neverlands.ru/pinfo/eff_{0}.gif width=15 height=15 align=absmiddle title=""{1}"">", effcode, effname); } } var sleeps = string.Empty /*sbeff.ToString()*/; var ali1 = string.Empty; var ali2 = string.Empty; switch (align) { case "0": ali1 = string.Empty; ali2 = string.Empty; break; case "1": ali1 = "darks.gif"; ali2 = "Дети Тьмы"; break; case "2": ali1 = "lights.gif"; ali2 = "Дети Света"; break; case "3": ali1 = "sumers.gif"; ali2 = "Дети Сумерек"; break; case "4": ali1 = "chaoss.gif"; ali2 = "Дети Хаоса"; break; case "5": ali1 = "light.gif"; ali2 = "Истинный Свет"; break; case "6": ali1 = "dark.gif"; ali2 = "Истинная Тьма"; break; case "7": ali1 = "sumer.gif"; ali2 = "Нейтральные Сумерки"; break; case "8": ali1 = "chaos.gif"; ali2 = "Абсолютный Хаос"; break; case "9": ali1 = "angel.gif"; ali2 = "Ангел"; break; } align = string.IsNullOrEmpty(ali1)? string.Empty : "<img src=http://image.neverlands.ru/signs/" + ali1 + @" width=15 height=12 align=absmiddle border=0 title=""" + ali2 + @"""> "; var ss = string.Empty; if (!string.IsNullOrEmpty(clan)) { ss = "<img src=http://image.neverlands.ru/signs/" + sign + @" width=15 height=12 align=absmiddle title=""" + clan + @"""> "; } var result = @"<a href=""#"" onclick=""top.say_private('" + nick + @"');""><img src=http://image.neverlands.ru/chat/private.gif width=11 height=12 border=0 align=absmiddle></a> " + align + ss + @"<a class=""activenick"" href=""#"" onclick=""top.say_to('" + nick + @"');""><font class=nickname><b>" + colorNick + "</b></a>[" + level + @"]</font><a href=""http://www.neverlands.ru/pinfo.cgi?" + nnhtmlSec + @""" onclick=""window.open(this.href);""><img src=http://image.neverlands.ru/chat/info.gif width=11 height=12 border=0 align=absmiddle></a>" + sleeps; return(result); }