private static void FirstContact()
{
#if !DEBUG && !INSTASTATS
if (Program.AWB.NumberOfEdits == 0) return;
#endif
NameValueCollection postvars = new NameValueCollection
{
{"Action", "Hello"},
{"Version", Program.VersionString}
};
// Greetings and AWB version:
// Site/project name:
// TODO: Here or in PHP: tl.wikipedia.org CUS: Translate to site name/lang code any Wikimedia site set up as custom
if (Variables.IsCustomProject || Variables.IsWikia)
postvars.Add("Wiki", Variables.Host);
else
postvars.Add("Wiki", Variables.Project.ToString());
// This returns a short string such as "wikipedia"; may want to convert to int and then to string so we store less in the db
// Language code:
if (Variables.IsWikia)
{
postvars.Add("Language", "WIK");
}
else if (Variables.IsCustomProject || Variables.IsWikimediaMonolingualProject)
{
postvars.Add("Language", "CUS");
}
else
{
postvars.Add("Language", Variables.LangCode);
}
// UI culture:
postvars.Add("Culture", System.Threading.Thread.CurrentThread.CurrentCulture.ToString());
// Username:
ProcessUsername(postvars);
// Other details:
postvars.Add("Saves", Program.AWB.NumberOfEdits.ToString());
postvars.Add("OS", Environment.OSVersion.VersionString);
#if DEBUG
postvars.Add("Debug", "Y");
#else
postvars.Add("Debug", "N");
#endif
EnumeratePlugins(postvars,
Plugins.Plugin.AWBPlugins.Values,
Plugins.Plugin.AWBBasePlugins.Values,
Plugins.Plugin.ListMakerPlugins.Values);
ReadXML(PostData(postvars));
}