namespace Dottext.Web.UI.Controls
{
using System;
using System.Configuration;
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 Dottext.Framework.Data;
using Dottext.Framework.Configuration;
using Dottext.Framework.Components;
/// <summary>
/// Summary description for Last10Module.
/// </summary>
public class Last10Module : BaseControl
{
protected System.Web.UI.WebControls.Repeater LastEntries;
protected override void OnLoad(EventArgs e)
{
base.OnLoad (e);
string sql = "blog_Last10Items";
string conn = Dottext.Framework.Providers.DbProvider.Instance().ConnectionString;
ArrayList myLastItems = new ArrayList();
int BlogID = CurrentBlog.BlogID; //current blog id is here -- finally found it
//PostType = 1 is the entries
SqlParameter[] p =
{
SqlHelper.MakeInParam("@PostType",SqlDbType.Int,4,1),
SqlHelper.MakeInParam("@BlogID",SqlDbType.Int,4,BlogID)
};
DataTable dt = SqlHelper.ExecuteDataTable(conn,CommandType.StoredProcedure,sql,p);
int count = dt.Rows.Count;
for(int i = 0; i<count; i++)
{
DataRow dr = dt.Rows[i];
string title = (string) dr["Title"];
//This is also in CurrentBlog.Application
string application = (string) dr["Application"];
DateTime dateAdded =(DateTime) dr["DateAdded"];
string id = dr["id"].ToString();
string myURL = URLFormat(application, dateAdded,id);
myLastItems.Add(new PositionItems(title,myURL));
}
LastEntries.DataSource = myLastItems;
LastEntries.DataBind();
}
public string URLFormat(string dbApplication, DateTime dbDateAdded, string dbEntryID)
{
string myURL = ConfigurationSettings.AppSettings["AggregateURL"];
myURL = myURL + "/" + dbApplication + "/";
string myYear = dbDateAdded.Year.ToString();
string myMonth = dbDateAdded.Month.ToString();
string myDay = dbDateAdded.Day.ToString();
int Month = int.Parse(myMonth);
int Day = int.Parse(myDay);
if (Month<10)
{
myMonth = String.Concat("0",myMonth);
}
if (Day<10)
{
myDay = String.Concat("0",myDay);
}
myURL = myURL +"archive" + "/" + myYear + "/" +
myMonth + "/" + myDay + "/" + dbEntryID + ".aspx";
return myURL;
}
}
public class PositionItems
{
private string title;
private string URL;
public PositionItems(string title, string URL)
{
this.title = title;
this.URL = URL;
}
public string Title
{
get
{
return title;
}
}
public string url
{
get
{
return URL;
}
}
}
}