using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Configuration;
using System.Text;
namespace AeroNet
{
///
///Описание : Cчетчик
///Дата : 27.05.2004
///
public class Counter : Common
{
string userID;
string referer = null;
string s = null;
string d = null;
string j = null;
bool JavaEnabled = false;
int locationID = 1;
public int LocationID
{
get{return locationID;}
set{locationID =value;}
}
public string UserID
{
get
{
return userID;
}
set
{
userID = value;
}
}
///
/// Занесение данных в базу данный
///
/// Имя хоста
/// IP - адрес хоста
/// Идент. посетителя
/// Идент. сессии
/// Тип клиента (броузер)
/// Идент. сайта
/// Страница которую посетил пользователь
/// Ссылка
/// Включена ли Java
/// Размер экрана
/// Кол. цветов
/// Версия JavaScript
public void InsertData(string HostName,string HostIP,string UserID,string SessionID,string UserAgent,int LocationID,string Location,string Referer,bool Java,string ScreenDimension,string ColorDepth,string JS)
{
SqlConnection conn = new SqlConnection(connString);
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "sp_InsertStat";
cmd.Parameters.Add("@HostName",SqlDbType.VarChar,100).Value = HostName;
cmd.Parameters.Add("@HostIP",SqlDbType.VarChar,20).Value = HostIP;
cmd.Parameters.Add("@UserID",SqlDbType.VarChar,100).Value = UserID;
cmd.Parameters.Add("@SessionID",SqlDbType.VarChar,100).Value = SessionID;
cmd.Parameters.Add("@UserAgent",SqlDbType.VarChar,100).Value = UserAgent;
cmd.Parameters.Add("@LocationID",SqlDbType.Int,4).Value = LocationID.ToString();
cmd.Parameters.Add("@Location",SqlDbType.VarChar,500).Value = Location;
cmd.Parameters.Add("@Referer",SqlDbType.VarChar,500).Value = Referer;
cmd.Parameters.Add("@Java",SqlDbType.Bit,1).Value = Java;
cmd.Parameters.Add("@ScreenDimension",SqlDbType.VarChar,10).Value = ScreenDimension;
cmd.Parameters.Add("@ColorDepth",SqlDbType.VarChar,10).Value = ColorDepth;
cmd.Parameters.Add("@JS",SqlDbType.VarChar,5).Value = JS;
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
}
private void Page_Load(object sender, System.EventArgs e)
{
System.Collections.Specialized.NameValueCollection c = Request.ServerVariables;
if (Request.QueryString["r"] !="")
{
referer = HttpUtility.UrlDecode(Request.QueryString["r"],System.Text.Encoding.GetEncoding(1251));
}
if (Request.QueryString["j"] != "")
{
JavaEnabled = true;
}
if (Request.QueryString["s"] !="")
{
s = Request.QueryString["s"];
}
if (Request.QueryString["d"] !="")
{
d = Request.QueryString["d"];
}
if (Request.QueryString["js"] !="")
{
j = Request.QueryString["js"];
}
if (Request.QueryString["id"] !="")
{
LocationID = Convert.ToInt32(Request.QueryString["id"]);
}
InsertData(c.Get("REMOTE_HOST"),c.Get("REMOTE_ADDR"),UserID,Session.SessionID,c.Get("HTTP_USER_AGENT"),LocationID,c.Get("HTTP_REFERER"),referer,JavaEnabled,s,d,j);
Response.Redirect("transperent.gif");
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
///
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
///
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}