<% 'Include Common Files @1-16366741 %> <% 'End Include Common Files 'Initialize Page @1-00D03C68 ' Variables Dim PathToRoot, ScriptPath Dim FileName Dim Redirect Dim Tpl, HTMLTemplate Dim TemplateFileName Dim ComponentName Dim PathToCurrentPage ' Events Dim CCSEvents Dim CCSEventResult ' Connections Dim DBConnection1 ' Page controls Dim Header Dim forum_messages1 Dim ImageLink1 Dim forum_messages Redirect = "" TemplateFileName = "ViewThread.html" Set CCSEvents = CreateObject("Scripting.Dictionary") PathToCurrentPage = "./" FileName = "ViewThread.asp" PathToRoot = "./" ScriptPath = Left(Request.ServerVariables("PATH_TRANSLATED"), Len(Request.ServerVariables("PATH_TRANSLATED")) - Len(FileName)) 'End Initialize Page 'Initialize Objects @1-1F9D573C Set DBConnection1 = New clsDBConnection1 DBConnection1.Open ' Controls Set Header = New clsHeader Header.initIncludes("") Header.BindEvents Header.Initialize Set forum_messages1 = New clsGridforum_messages1 Set ImageLink1 = CCCreateControl(ccsImageLink, "ImageLink1", "ImageLink1", ccsText, Empty, CCGetRequestParam("ImageLink1", ccsGet)) Set forum_messages = New clsGridforum_messages ImageLink1.Value = "images/reply.gif" ImageLink1.Link = "" ImageLink1.Parameters = CCAddParam(ImageLink1.Parameters, "message_id", CCGetRequestParam("message_id", ccsGET)) ImageLink1.Page = "Reply.asp" forum_messages1.Initialize DBConnection1 forum_messages.Initialize DBConnection1 ' Events %> <% BindEvents CCSEventResult = CCRaiseEvent(CCSEvents, "AfterInitialize", Nothing) 'End Initialize Objects 'Execute Components @1-D491FF66 Header.Operations 'End Execute Components 'Go to destination page @1-6D35F4FD If NOT ( Redirect = "" ) Then UnloadPage Response.Redirect Redirect End If 'End Go to destination page 'Initialize HTML Template @1-0155E1BE CCSEventResult = CCRaiseEvent(CCSEvents, "OnInitializeView", Nothing) Set HTMLTemplate = new clsTemplate Set HTMLTemplate.Cache = TemplatesRepository HTMLTemplate.LoadTemplate ScriptPath & TemplateFileName Set Tpl = HTMLTemplate.Block("main") CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Nothing) 'End Initialize HTML Template 'Show Page @1-4A88E042 Header.Show Tpl, "Header" forum_messages1.Show Tpl ImageLink1.Show Tpl forum_messages.Show Tpl HTMLTemplate.PParse "main", False 'End Show Page 'Unload Page @1-CB210C62 UnloadPage Set Tpl = Nothing Set HTMLTemplate = Nothing 'End Unload Page 'UnloadPage Sub @1-AEC48FE9 Sub UnloadPage() CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeUnload", Nothing) If DBConnection1.State = adStateOpen Then _ DBConnection1.Close Set DBConnection1 = Nothing Set Header = Nothing Set forum_messages1 = Nothing Set forum_messages = Nothing End Sub 'End UnloadPage Sub Class clsGridforum_messages1 'forum_messages1 Class @13-16083CFD 'forum_messages1 Variables @13-6FBD5F3C ' Private variables Private VarPageSize ' Public variables Public ComponentName, CCSEvents Public Visible, Errors Public DataSource Public PageNumber Public Command Public TemplateBlock Public Recordset Private CCSEventResult ' Grid Controls Public StaticControls, RowControls Dim smile_id Dim message_title Dim author Dim date_add Dim message_desc 'End forum_messages1 Variables 'forum_messages1 Class_Initialize Event @13-8DF36B31 Private Sub Class_Initialize() ComponentName = "forum_messages1" Visible = True Set CCSEvents = CreateObject("Scripting.Dictionary") Set Errors = New clsErrors Set DataSource = New clsforum_messages1DataSource Set Command = New clsCommand PageSize = CCGetParam(ComponentName & "PageSize", Empty) If IsNumeric(PageSize) And Len(PageSize) > 0 Then If PageSize <= 0 Then Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageSizeError", Empty)) If PageSize > 100 Then PageSize = 100 End If If NOT IsNumeric(PageSize) OR IsEmpty(PageSize) Then _ PageSize = 10 _ Else _ PageSize = CInt(PageSize) PageNumber = CCGetParam(ComponentName & "Page", 1) If Not IsNumeric(PageNumber) And Len(PageNumber) > 0 Then Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageNumberError", Empty)) PageNumber = 1 ElseIf Len(PageNumber) > 0 Then If PageNumber > 0 Then PageNumber = CInt(PageNumber) Else Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageNumberError", Empty)) PageNumber = 1 End If Else PageNumber = 1 End If Set smile_id = CCCreateControl(ccsLabel, "smile_id", "smile_id", ccsText, Empty, CCGetRequestParam("smile_id", ccsGet)) smile_id.HTML = True Set message_title = CCCreateControl(ccsLabel, "message_title", "message_title", ccsText, Empty, CCGetRequestParam("message_title", ccsGet)) Set author = CCCreateControl(ccsLabel, "author", "author", ccsText, Empty, CCGetRequestParam("author", ccsGet)) Set date_add = CCCreateControl(ccsLabel, "date_add", "date_add", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), CCGetRequestParam("date_add", ccsGet)) Set message_desc = CCCreateControl(ccsLabel, "message_desc", "message_desc", ccsMemo, Empty, CCGetRequestParam("message_desc", ccsGet)) End Sub 'End forum_messages1 Class_Initialize Event 'forum_messages1 Initialize Method @13-57CE6952 Sub Initialize(objConnection) If NOT Visible Then Exit Sub Set DataSource.Connection = objConnection DataSource.PageSize = PageSize DataSource.AbsolutePage = PageNumber End Sub 'End forum_messages1 Initialize Method 'forum_messages1 Class_Terminate Event @13-E1528F98 Private Sub Class_Terminate() Set DataSource = Nothing Set Command = Nothing Set Errors = Nothing End Sub 'End forum_messages1 Class_Terminate Event 'forum_messages1 Show Method @13-E1432C13 Sub Show(Tpl) If NOT Visible Then Exit Sub Dim RecordCounter, ShownRecords Dim RowBlock With DataSource .Parameters("urlmessage_id") = CCGetRequestParam("message_id", ccsGET) End With CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeSelect", Me) Set Recordset = DataSource.Open(Command) Set TemplateBlock = Tpl.Block("Grid " & ComponentName) Set RowBlock = TemplateBlock.Block("Row") Set RowControls = CCCreateCollection(RowBlock, Null, ccsParseAccumulate, _ Array(smile_id, message_title, author, date_add, message_desc)) CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If NOT Visible Then Exit Sub Errors.AddErrors DataSource.Errors If Errors.Count > 0 Then TemplateBlock.HTML = CCFormatError("Grid forum_messages1", Errors) Else ' Show NoRecords block if no records are found If Recordset.EOF Then TemplateBlock.Block("NoRecords").Parse ccsParseOverwrite End If While NOT Recordset.EOF AND ShownRecords < PageSize smile_id.Value = Recordset.Fields("smile_id") message_title.Value = Recordset.Fields("message_title") author.Value = Recordset.Fields("author") date_add.Value = Recordset.Fields("date_add") message_desc.Value = Recordset.Fields("message_desc") CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShowRow", Me) RowControls.Show Recordset.MoveNext ShownRecords = ShownRecords + 1 Wend TemplateBlock.Parse ccsParseOverwrite End If End Sub 'End forum_messages1 Show Method 'forum_messages1 PageSize Property Let @13-54E46DD6 Public Property Let PageSize(NewValue) VarPageSize = NewValue DataSource.PageSize = NewValue End Property 'End forum_messages1 PageSize Property Let 'forum_messages1 PageSize Property Get @13-9AA1D1E9 Public Property Get PageSize() PageSize = VarPageSize End Property 'End forum_messages1 PageSize Property Get End Class 'End forum_messages1 Class @13-A61BA892 Class clsforum_messages1DataSource 'forum_messages1DataSource Class @13-F564EEF5 'DataSource Variables @13-6EADED63 Public Errors, Connection, Parameters, CCSEvents Public Recordset Public SQL, CountSQL, Order, Where, Orders Public PageSize Public PageCount Public AbsolutePage Public Fields Dim WhereParameters Public AllParamsSet Public CmdExecution Private CurrentOperation Private CCSEventResult ' Datasource fields Public smile_id Public message_title Public author Public date_add Public message_desc 'End DataSource Variables 'DataSource Class_Initialize Event @13-7FB6EC5F Private Sub Class_Initialize() Set CCSEvents = CreateObject("Scripting.Dictionary") Set Fields = New clsFields Set Recordset = New clsDataSource Set Recordset.DataSource = Me Set Errors = New clsErrors AllParamsSet = True Set smile_id = CCCreateField("smile_id", "smile_url", ccsText, Empty, Recordset) Set message_title = CCCreateField("message_title", "message_title", ccsText, Empty, Recordset) Set author = CCCreateField("author", "author", ccsText, Empty, Recordset) Set date_add = CCCreateField("date_add", "date_add", ccsDate, Array("yyyy", "-", "mm", "-", "dd", " ", "HH", ":", "nn", ":", "ss"), Recordset) Set message_desc = CCCreateField("message_desc", "message_desc", ccsMemo, Empty, Recordset) Fields.AddFields Array(smile_id, message_title, author, date_add, message_desc) Set Parameters = Server.CreateObject("Scripting.Dictionary") Set WhereParameters = Nothing SQL = "SELECT TOP {SqlParam_endRecord} * " & _ "FROM forum_messages LEFT JOIN smiles ON " & _ "forum_messages.smile_id = smiles.smile_id" CountSQL = "SELECT COUNT(*) " & _ "FROM forum_messages LEFT JOIN smiles ON " & _ "forum_messages.smile_id = smiles.smile_id" Where = "" Order = "" End Sub 'End DataSource Class_Initialize Event 'BuildTableWhere Method @13-E8FDF03D Public Sub BuildTableWhere() Dim WhereParams If Not WhereParameters Is Nothing Then _ Exit Sub Set WhereParameters = new clsSQLParameters With WhereParameters Set .Connection = Connection Set .ParameterSources = Parameters Set .DataSource = Me .AddParameter 1, "urlmessage_id", ccsInteger, Empty, Empty, Empty, False .Criterion(1) = .Operation(opEqual, False, "message_id", .getParamByID(1)) .AssembledWhere = .Criterion(1) WhereParams = .AssembledWhere If Len(Where) > 0 Then If Len(WhereParams) > 0 Then _ Where = Where & " AND " & WhereParams Else If Len(WhereParams) > 0 Then _ Where = WhereParams End If End With End Sub 'End BuildTableWhere Method 'Open Method @13-192E38F9 Function Open(Cmd) Errors.Clear Set Cmd.Connection = Connection Cmd.CommandOperation = cmdOpen Cmd.PageSize = PageSize Cmd.ActivePage = AbsolutePage Cmd.CommandType = dsTable CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeBuildSelect", Me) Cmd.SQL = SQL Cmd.CountSQL = CountSQL BuildTableWhere Cmd.Where = Where Cmd.OrderBy = Order Cmd.Options("TOP") = True CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeExecuteSelect", Me) If Errors.Count = 0 And CCSEventResult Then _ Set Recordset = Cmd.Exec(Errors) CCSEventResult = CCRaiseEvent(CCSEvents, "AfterExecuteSelect", Me) Set Recordset.FieldsCollection = Fields Set Open = Recordset End Function 'End Open Method 'DataSource Class_Terminate Event @13-41B4B08D Private Sub Class_Terminate() If Recordset.State = adStateOpen Then _ Recordset.Close Set Recordset = Nothing Set Parameters = Nothing Set Errors = Nothing End Sub 'End DataSource Class_Terminate Event End Class 'End forum_messages1DataSource Class @13-A61BA892 Class clsGridforum_messages 'forum_messages Class @4-6B99C8C8 'forum_messages Variables @4-48CB2EFA ' Private variables Private VarPageSize ' Public variables Public ComponentName, CCSEvents Public Visible, Errors Public DataSource Public PageNumber Public Command Public TemplateBlock Public Recordset Private CCSEventResult ' Grid Controls Public StaticControls, RowControls Dim smile_id Dim message_title Dim author Dim date_add Dim message_desc Dim Navigator 'End forum_messages Variables 'forum_messages Class_Initialize Event @4-C37C1106 Private Sub Class_Initialize() ComponentName = "forum_messages" Visible = True Set CCSEvents = CreateObject("Scripting.Dictionary") Set Errors = New clsErrors Set DataSource = New clsforum_messagesDataSource Set Command = New clsCommand PageSize = CCGetParam(ComponentName & "PageSize", Empty) If IsNumeric(PageSize) And Len(PageSize) > 0 Then If PageSize <= 0 Then Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageSizeError", Empty)) If PageSize > 100 Then PageSize = 100 End If If NOT IsNumeric(PageSize) OR IsEmpty(PageSize) Then _ PageSize = 15 _ Else _ PageSize = CInt(PageSize) PageNumber = CCGetParam(ComponentName & "Page", 1) If Not IsNumeric(PageNumber) And Len(PageNumber) > 0 Then Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageNumberError", Empty)) PageNumber = 1 ElseIf Len(PageNumber) > 0 Then If PageNumber > 0 Then PageNumber = CInt(PageNumber) Else Errors.AddError(CCSRunTimeMessages.GetMessage("GridPageNumberError", Empty)) PageNumber = 1 End If Else PageNumber = 1 End If Set smile_id = CCCreateControl(ccsLabel, "smile_id", "smile_id", ccsText, Empty, CCGetRequestParam("smile_id", ccsGet)) smile_id.HTML = True Set message_title = CCCreateControl(ccsLabel, "message_title", "message_title", ccsText, Empty, CCGetRequestParam("message_title", ccsGet)) Set author = CCCreateControl(ccsLabel, "author", "author", ccsText, Empty, CCGetRequestParam("author", ccsGet)) Set date_add = CCCreateControl(ccsLabel, "date_add", "date_add", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), CCGetRequestParam("date_add", ccsGet)) Set message_desc = CCCreateControl(ccsLabel, "message_desc", "message_desc", ccsMemo, Empty, CCGetRequestParam("message_desc", ccsGet)) message_desc.HTML = True Set Navigator = CCCreateNavigator(ComponentName, "Navigator", FileName, 10, tpSimple) End Sub 'End forum_messages Class_Initialize Event 'forum_messages Initialize Method @4-57CE6952 Sub Initialize(objConnection) If NOT Visible Then Exit Sub Set DataSource.Connection = objConnection DataSource.PageSize = PageSize DataSource.AbsolutePage = PageNumber End Sub 'End forum_messages Initialize Method 'forum_messages Class_Terminate Event @4-E1528F98 Private Sub Class_Terminate() Set DataSource = Nothing Set Command = Nothing Set Errors = Nothing End Sub 'End forum_messages Class_Terminate Event 'forum_messages Show Method @4-6CEAFD07 Sub Show(Tpl) If NOT Visible Then Exit Sub Dim RecordCounter, ShownRecords Dim RowBlock With DataSource .Parameters("urlmessage_id") = CCGetRequestParam("message_id", ccsGET) End With CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeSelect", Me) Set Recordset = DataSource.Open(Command) Set TemplateBlock = Tpl.Block("Grid " & ComponentName) Set RowBlock = TemplateBlock.Block("Row") Set StaticControls = CCCreateCollection(TemplateBlock, Null, ccsParseOverwrite, _ Array(Navigator)) Set RowControls = CCCreateCollection(RowBlock, Null, ccsParseAccumulate, _ Array(smile_id, message_title, author, date_add, message_desc)) CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If NOT Visible Then Exit Sub Errors.AddErrors DataSource.Errors If Errors.Count > 0 Then TemplateBlock.HTML = CCFormatError("Grid forum_messages", Errors) Else ' Show NoRecords block if no records are found If Recordset.EOF Then TemplateBlock.Block("NoRecords").Parse ccsParseOverwrite End If While NOT Recordset.EOF AND ShownRecords < PageSize smile_id.Value = Recordset.Fields("smile_id") message_title.Value = Recordset.Fields("message_title") author.Value = Recordset.Fields("author") date_add.Value = Recordset.Fields("date_add") message_desc.Value = Recordset.Fields("message_desc") CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShowRow", Me) RowControls.Show Recordset.MoveNext ShownRecords = ShownRecords + 1 Wend Navigator.SetDataSource Recordset StaticControls.Show End If End Sub 'End forum_messages Show Method 'forum_messages PageSize Property Let @4-54E46DD6 Public Property Let PageSize(NewValue) VarPageSize = NewValue DataSource.PageSize = NewValue End Property 'End forum_messages PageSize Property Let 'forum_messages PageSize Property Get @4-9AA1D1E9 Public Property Get PageSize() PageSize = VarPageSize End Property 'End forum_messages PageSize Property Get End Class 'End forum_messages Class @4-A61BA892 Class clsforum_messagesDataSource 'forum_messagesDataSource Class @4-10C90378 'DataSource Variables @4-6EADED63 Public Errors, Connection, Parameters, CCSEvents Public Recordset Public SQL, CountSQL, Order, Where, Orders Public PageSize Public PageCount Public AbsolutePage Public Fields Dim WhereParameters Public AllParamsSet Public CmdExecution Private CurrentOperation Private CCSEventResult ' Datasource fields Public smile_id Public message_title Public author Public date_add Public message_desc 'End DataSource Variables 'DataSource Class_Initialize Event @4-BA1AC26B Private Sub Class_Initialize() Set CCSEvents = CreateObject("Scripting.Dictionary") Set Fields = New clsFields Set Recordset = New clsDataSource Set Recordset.DataSource = Me Set Errors = New clsErrors AllParamsSet = True Set smile_id = CCCreateField("smile_id", "smile_url", ccsText, Empty, Recordset) Set message_title = CCCreateField("message_title", "message_title", ccsText, Empty, Recordset) Set author = CCCreateField("author", "author", ccsText, Empty, Recordset) Set date_add = CCCreateField("date_add", "date_add", ccsDate, Array("yyyy", "-", "mm", "-", "dd", " ", "HH", ":", "nn", ":", "ss"), Recordset) Set message_desc = CCCreateField("message_desc", "message_desc", ccsMemo, Empty, Recordset) Fields.AddFields Array(smile_id, message_title, author, date_add, message_desc) Set Parameters = Server.CreateObject("Scripting.Dictionary") Set WhereParameters = Nothing SQL = "SELECT TOP {SqlParam_endRecord} * " & _ "FROM forum_messages LEFT JOIN smiles ON " & _ "forum_messages.smile_id = smiles.smile_id" CountSQL = "SELECT COUNT(*) " & _ "FROM forum_messages LEFT JOIN smiles ON " & _ "forum_messages.smile_id = smiles.smile_id" Where = "" Order = "date_add" End Sub 'End DataSource Class_Initialize Event 'BuildTableWhere Method @4-ABD014D4 Public Sub BuildTableWhere() Dim WhereParams If Not WhereParameters Is Nothing Then _ Exit Sub Set WhereParameters = new clsSQLParameters With WhereParameters Set .Connection = Connection Set .ParameterSources = Parameters Set .DataSource = Me .AddParameter 1, "urlmessage_id", ccsInteger, Empty, Empty, Empty, False .Criterion(1) = .Operation(opEqual, False, "message_id_parent", .getParamByID(1)) .AssembledWhere = .Criterion(1) WhereParams = .AssembledWhere If Len(Where) > 0 Then If Len(WhereParams) > 0 Then _ Where = Where & " AND " & WhereParams Else If Len(WhereParams) > 0 Then _ Where = WhereParams End If End With End Sub 'End BuildTableWhere Method 'Open Method @4-192E38F9 Function Open(Cmd) Errors.Clear Set Cmd.Connection = Connection Cmd.CommandOperation = cmdOpen Cmd.PageSize = PageSize Cmd.ActivePage = AbsolutePage Cmd.CommandType = dsTable CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeBuildSelect", Me) Cmd.SQL = SQL Cmd.CountSQL = CountSQL BuildTableWhere Cmd.Where = Where Cmd.OrderBy = Order Cmd.Options("TOP") = True CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeExecuteSelect", Me) If Errors.Count = 0 And CCSEventResult Then _ Set Recordset = Cmd.Exec(Errors) CCSEventResult = CCRaiseEvent(CCSEvents, "AfterExecuteSelect", Me) Set Recordset.FieldsCollection = Fields Set Open = Recordset End Function 'End Open Method 'DataSource Class_Terminate Event @4-41B4B08D Private Sub Class_Terminate() If Recordset.State = adStateOpen Then _ Recordset.Close Set Recordset = Nothing Set Parameters = Nothing Set Errors = Nothing End Sub 'End DataSource Class_Terminate Event End Class 'End forum_messagesDataSource Class @4-A61BA892 'Include Page Implementation @2-58B2864F %> <% 'End Include Page Implementation %>