public void HandleWiki(IRCMessage sIRCMessage)
{
var sSendMessage = sIrcBase.Networks[sIRCMessage.ServerName].sSendMessage;
var text = sLManager.GetCommandTexts("wiki", sIRCMessage.Channel, sIRCMessage.ServerName);
if(text.Length < 5)
{
sSendMessage.SendChatMessage(sIRCMessage, sLConsole.Translations("NoFound2", sLManager.GetChannelLocalization(sIRCMessage.Channel, sIRCMessage.ServerName)));
return;
}
if(sIRCMessage.Info.Length < 5)
{
sSendMessage.SendChatMessage(sIRCMessage, sLManager.GetWarningText("NoGoogleText", sIRCMessage.Channel, sIRCMessage.ServerName));
return;
}
string url = sUtilities.GetUrl("http://" + sLManager.GetChannelLocalization(sIRCMessage.Channel, sIRCMessage.ServerName).Substring(0, 2).ToLower()
+ ".wikipedia.org/w/api.php?action=opensearch&format=xml&search=", sIRCMessage.Info.SplitToString(4, SchumixBase.Space));
if(url.Contains("<Text xml:space=\"preserve\">"))
{
url = url.Replace(""", "\"");
url = url.Remove(0, url.IndexOf("<Text xml:space=\"preserve\">") + "<Text xml:space=\"preserve\">".Length);
string _text = url.Substring(0, url.IndexOf("</Text>"));
url = url.Remove(0, url.IndexOf("<Description xml:space=\"preserve\">") + "<Description xml:space=\"preserve\">".Length);
string _des = url.Substring(0, url.IndexOf("</Description>"));
url = url.Remove(0, url.IndexOf("<Url xml:space=\"preserve\">") + "<Url xml:space=\"preserve\">".Length);
string _url = url.Substring(0, url.IndexOf("</Url>"));
sSendMessage.SendChatMessage(sIRCMessage, text[0], _text);
sSendMessage.SendChatMessage(sIRCMessage, text[1], _url);
if(_des.Length <= 200)
sSendMessage.SendChatMessage(sIRCMessage, text[2], _des);
else
sSendMessage.SendChatMessage(sIRCMessage, text[3], _des.Substring(0, 200));
}
else
sSendMessage.SendChatMessage(sIRCMessage, text[4]);
}