<% 'Include Common Files @1-16366741 %> <% 'End Include Common Files 'Initialize Page @1-D9AAF905 ' 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 contactsSearch Dim contacts Dim contacts1 Redirect = "" TemplateFileName = "Mary_Contacts.html" Set CCSEvents = CreateObject("Scripting.Dictionary") PathToCurrentPage = "./" FileName = "Mary_Contacts.asp" PathToRoot = "./" ScriptPath = Left(Request.ServerVariables("PATH_TRANSLATED"), Len(Request.ServerVariables("PATH_TRANSLATED")) - Len(FileName)) 'End Initialize Page 'Initialize Objects @1-8589828C Set DBConnection1 = New clsDBConnection1 DBConnection1.Open ' Controls Set Header = New clsHeader Header.initIncludes("") Header.BindEvents Header.Initialize Set contactsSearch = new clsRecordcontactsSearch Set contacts = New clsGridcontacts Set contacts1 = new clsRecordcontacts1 contacts.Initialize DBConnection1 contacts1.Initialize DBConnection1 ' Events %> <% BindEvents CCSEventResult = CCRaiseEvent(CCSEvents, "AfterInitialize", Nothing) 'End Initialize Objects 'Execute Components @1-F32DCF20 Header.Operations contactsSearch.Operation contacts1.Operation '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-49354658 Header.Show Tpl, "Header" contactsSearch.Show Tpl contacts.Show Tpl contacts1.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-F1329037 Sub UnloadPage() CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeUnload", Nothing) If DBConnection1.State = adStateOpen Then _ DBConnection1.Close Set DBConnection1 = Nothing Set Header = Nothing Set contactsSearch = Nothing Set contacts = Nothing Set contacts1 = Nothing End Sub 'End UnloadPage Sub Class clsRecordcontactsSearch 'contactsSearch Class @4-7AD62E9B 'contactsSearch Variables @4-10E42BE5 ' Public variables Public ComponentName Public HTMLFormAction Public PressedButton Public Errors Public FormSubmitted Public EditMode Public Visible Public Recordset Public TemplateBlock Public CCSEvents Private CCSEventResult Public InsertAllowed Public UpdateAllowed Public DeleteAllowed Public ReadAllowed Public DataSource Public Command Public ValidatingControls Public Controls ' Class variables Dim s_First_Name Dim s_Last_Name Dim s_Mary_Notes Dim s_Mary_replied Dim s_Date_added Dim DatePicker_s_Date_added Dim contactsOrder Dim contactsOrderDataSource Dim contactsDir Dim contactsDirDataSource Dim contactsPageSize Dim contactsPageSizeDataSource Dim Button_DoSearch 'End contactsSearch Variables 'contactsSearch Class_Initialize Event @4-65601C3B Private Sub Class_Initialize() Visible = True Set Errors = New clsErrors Set CCSEvents = CreateObject("Scripting.Dictionary") InsertAllowed = False UpdateAllowed = False DeleteAllowed = False ReadAllowed = True Dim Method Dim OperationMode OperationMode = Split(CCGetFromGet("ccsForm", Empty), ":") If UBound(OperationMode) > -1 Then FormSubmitted = (OperationMode(0) = "contactsSearch") End If If UBound(OperationMode) > 0 Then EditMode = (OperationMode(1) = "Edit") End If ComponentName = "contactsSearch" Method = IIf(FormSubmitted, ccsPost, ccsGet) Set s_First_Name = CCCreateControl(ccsTextBox, "s_First_Name", "s_First_Name", ccsText, Empty, CCGetRequestParam("s_First_Name", Method)) Set s_Last_Name = CCCreateControl(ccsTextBox, "s_Last_Name", "s_Last_Name", ccsText, Empty, CCGetRequestParam("s_Last_Name", Method)) Set s_Mary_Notes = CCCreateControl(ccsTextBox, "s_Mary_Notes", "s_Mary_Notes", ccsMemo, Empty, CCGetRequestParam("s_Mary_Notes", Method)) Set s_Mary_replied = CCCreateControl(ccsCheckBox, "s_Mary_replied", "s_Mary_replied", ccsBoolean, Empty, CCGetRequestParam("s_Mary_replied", Method)) s_Mary_replied.CheckedValue = True s_Mary_replied.UncheckedValue = False Set s_Date_added = CCCreateControl(ccsTextBox, "s_Date_added", "s_Date_added", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), CCGetRequestParam("s_Date_added", Method)) Set DatePicker_s_Date_added = CCCreateDatePicker("DatePicker_s_Date_added", "contactsSearch", "s_Date_added") Set contactsOrderDataSource = CCCreateDataSource(dsListOfValues, Empty, Array( _ Array("", "Sorter_ID", "Sorter_First_Name", "Sorter_Last_Name", "Sorter_Email", "Sorter_Telephone", "Sorter_question_comments", "Sorter_Mary_Notes", "Sorter_Mary_replied", "Sorter_Date_added"), _ Array("Select Field", "ID", "First Name", "Last Name", "Email", "Telephone", "Question Comments", "Mary Notes", "Mary Replied", "Date Added"))) Set contactsOrder = CCCreateList(ccsListBox, "contactsOrder", "contactsOrder", ccsText, CCGetRequestParam("contactsOrder", Method), contactsOrderDataSource) Set contactsDirDataSource = CCCreateDataSource(dsListOfValues, Empty, Array( _ Array("", "ASC", "DESC"), _ Array("Select Order", "Ascending", "Descending"))) Set contactsDir = CCCreateList(ccsListBox, "contactsDir", "contactsDir", ccsText, CCGetRequestParam("contactsDir", Method), contactsDirDataSource) Set contactsPageSizeDataSource = CCCreateDataSource(dsListOfValues, Empty, Array( _ Array("", "5", "10", "25", "100"), _ Array("Select Value", "5", "10", "25", "100"))) Set contactsPageSize = CCCreateList(ccsListBox, "contactsPageSize", "contactsPageSize", ccsText, CCGetRequestParam("contactsPageSize", Method), contactsPageSizeDataSource) Set Button_DoSearch = CCCreateButton("Button_DoSearch") Set ValidatingControls = new clsControls ValidatingControls.addControls Array(s_First_Name, s_Last_Name, s_Mary_Notes, s_Mary_replied, s_Date_added, contactsOrder, contactsDir, contactsPageSize) End Sub 'End contactsSearch Class_Initialize Event 'contactsSearch Class_Terminate Event @4-32B847C9 Private Sub Class_Terminate() Set Errors = Nothing End Sub 'End contactsSearch Class_Terminate Event 'contactsSearch Validate Method @4-B9D513CF Function Validate() Dim Validation ValidatingControls.Validate CCSEventResult = CCRaiseEvent(CCSEvents, "OnValidate", Me) Validate = ValidatingControls.isValid() And (Errors.Count = 0) End Function 'End contactsSearch Validate Method 'contactsSearch Operation Method @4-68A61743 Sub Operation() If NOT ( Visible AND FormSubmitted ) Then Exit Sub If FormSubmitted Then PressedButton = "Button_DoSearch" If Not IsEmpty(CCGetParam("Button_DoSearch", Empty)) Then PressedButton = "Button_DoSearch" End If End If Redirect = "Mary_Contacts.asp" If Validate() Then If PressedButton = "Button_DoSearch" Then If NOT Button_DoSearch.OnClick() Then Redirect = "" Else Redirect = "Mary_Contacts.asp?" & CCGetQueryString("Form", Array(PressedButton, "ccsForm")) End If End If Else Redirect = "" End If End Sub 'End contactsSearch Operation Method 'contactsSearch Show Method @4-E2520777 Sub Show(Tpl) If NOT Visible Then Exit Sub EditMode = False HTMLFormAction = FileName & "?" & CCAddParam(Request.ServerVariables("QUERY_STRING"), "ccsForm", "contactsSearch" & IIf(EditMode, ":Edit", "")) Set TemplateBlock = Tpl.Block("Record " & ComponentName) TemplateBlock.Variable("HTMLFormName") = ComponentName TemplateBlock.Variable("HTMLFormEnctype") ="application/x-www-form-urlencoded" Set Controls = CCCreateCollection(TemplateBlock, Null, ccsParseOverwrite, _ Array(s_First_Name, s_Last_Name, s_Mary_Notes, s_Mary_replied, s_Date_added, DatePicker_s_Date_added, contactsOrder, _ contactsDir, contactsPageSize, Button_DoSearch)) If Not FormSubmitted Then End If If FormSubmitted Then With TemplateBlock.Block("Error") .Variable("Error") = ValidatingControls.GetErrors & Errors.ToString .Parse False End With End If TemplateBlock.Variable("Action") = HTMLFormAction CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If Visible Then Controls.Show End Sub 'End contactsSearch Show Method End Class 'End contactsSearch Class @4-A61BA892 Class clsGridcontacts 'contacts Class @3-BD27B136 'contacts Variables @3-57CAF31F ' Private variables Private VarPageSize ' Public variables Public ComponentName, CCSEvents Public Visible, Errors Public DataSource Public PageNumber Public Command Public TemplateBlock Public ActiveSorter, SortingDirection Public Recordset Private CCSEventResult ' Grid Controls Public StaticControls, RowControls Dim contacts_TotalRecords Dim Sorter_ID Dim Sorter_First_Name Dim Sorter_Last_Name Dim Sorter_Email Dim Sorter_Telephone Dim Sorter_Mary_replied Dim Sorter_Date_added Dim ID Dim First_Name Dim Last_Name Dim Email Dim Telephone Dim question_comments Dim Mary_Notes Dim Mary_replied Dim Date_added Dim contacts_Insert Dim Navigator 'End contacts Variables 'contacts Class_Initialize Event @3-B397C8CB Private Sub Class_Initialize() ComponentName = "contacts" Visible = True Set CCSEvents = CreateObject("Scripting.Dictionary") Set Errors = New clsErrors Set DataSource = New clscontactsDataSource 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 ActiveSorter = CCGetParam("contactsOrder", Empty) SortingDirection = CCGetParam("contactsDir", Empty) If NOT(SortingDirection = "ASC" OR SortingDirection = "DESC") Then _ SortingDirection = Empty Set ID = CCCreateControl(ccsLink, "ID", "ID", ccsInteger, Empty, CCGetRequestParam("ID", ccsGet)) Set First_Name = CCCreateControl(ccsLabel, "First_Name", "First_Name", ccsText, Empty, CCGetRequestParam("First_Name", ccsGet)) Set Last_Name = CCCreateControl(ccsLabel, "Last_Name", "Last_Name", ccsText, Empty, CCGetRequestParam("Last_Name", ccsGet)) Set Email = CCCreateControl(ccsLabel, "Email", "Email", ccsText, Empty, CCGetRequestParam("Email", ccsGet)) Set Telephone = CCCreateControl(ccsLabel, "Telephone", "Telephone", ccsText, Empty, CCGetRequestParam("Telephone", ccsGet)) Set question_comments = CCCreateControl(ccsLabel, "question_comments", "question_comments", ccsMemo, Empty, CCGetRequestParam("question_comments", ccsGet)) Set Mary_Notes = CCCreateControl(ccsLabel, "Mary_Notes", "Mary_Notes", ccsMemo, Empty, CCGetRequestParam("Mary_Notes", ccsGet)) Set Mary_replied = CCCreateControl(ccsLabel, "Mary_replied", "Mary_replied", ccsBoolean, Empty, CCGetRequestParam("Mary_replied", ccsGet)) Set Date_added = CCCreateControl(ccsLabel, "Date_added", "Date_added", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), CCGetRequestParam("Date_added", ccsGet)) Set contacts_TotalRecords = CCCreateControl(ccsLabel, "contacts_TotalRecords", "contacts_TotalRecords", ccsText, Empty, CCGetRequestParam("contacts_TotalRecords", ccsGet)) Set Sorter_ID = CCCreateSorter("Sorter_ID", Me, FileName) Set Sorter_First_Name = CCCreateSorter("Sorter_First_Name", Me, FileName) Set Sorter_Last_Name = CCCreateSorter("Sorter_Last_Name", Me, FileName) Set Sorter_Email = CCCreateSorter("Sorter_Email", Me, FileName) Set Sorter_Telephone = CCCreateSorter("Sorter_Telephone", Me, FileName) Set Sorter_Mary_replied = CCCreateSorter("Sorter_Mary_replied", Me, FileName) Set Sorter_Date_added = CCCreateSorter("Sorter_Date_added", Me, FileName) Set contacts_Insert = CCCreateControl(ccsLink, "contacts_Insert", "contacts_Insert", ccsText, Empty, CCGetRequestParam("contacts_Insert", ccsGet)) Set Navigator = CCCreateNavigator(ComponentName, "Navigator", FileName, 10, tpCentered) End Sub 'End contacts Class_Initialize Event 'contacts Initialize Method @3-2AEA3975 Sub Initialize(objConnection) If NOT Visible Then Exit Sub Set DataSource.Connection = objConnection DataSource.PageSize = PageSize DataSource.SetOrder ActiveSorter, SortingDirection DataSource.AbsolutePage = PageNumber End Sub 'End contacts Initialize Method 'contacts Class_Terminate Event @3-E1528F98 Private Sub Class_Terminate() Set DataSource = Nothing Set Command = Nothing Set Errors = Nothing End Sub 'End contacts Class_Terminate Event 'contacts Show Method @3-2C83DD4B Sub Show(Tpl) If NOT Visible Then Exit Sub Dim RecordCounter, ShownRecords Dim RowBlock, SeparatorBlock With DataSource .Parameters("urls_First_Name") = CCGetRequestParam("s_First_Name", ccsGET) .Parameters("urls_Last_Name") = CCGetRequestParam("s_Last_Name", ccsGET) .Parameters("urls_Mary_Notes") = CCGetRequestParam("s_Mary_Notes", ccsGET) .Parameters("urls_Mary_replied") = CCGetRequestParam("s_Mary_replied", ccsGET) .Parameters("urls_Date_added") = CCGetRequestParam("s_Date_added", 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 SeparatorBlock = TemplateBlock.Block("Separator") Set StaticControls = CCCreateCollection(TemplateBlock, Null, ccsParseOverwrite, _ Array(contacts_TotalRecords, Sorter_ID, Sorter_First_Name, Sorter_Last_Name, Sorter_Email, Sorter_Telephone, Sorter_Mary_replied, Sorter_Date_added, contacts_Insert, Navigator)) Set RowControls = CCCreateCollection(RowBlock, Null, ccsParseAccumulate, _ Array(ID, First_Name, Last_Name, Email, Telephone, question_comments, Mary_Notes, Mary_replied, Date_added)) CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If NOT Visible Then Exit Sub Errors.AddErrors DataSource.Errors If Errors.Count > 0 Then TemplateBlock.HTML = CCFormatError("Grid contacts", 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 ID.Value = Recordset.Fields("ID") ID.Parameters = CCGetQueryString("QueryString", Array("ccsForm")) ID.Parameters = CCAddParam(ID.Parameters, "ID", Recordset.Fields("ID_param1")) ID.Page = "Mary_Contacts.asp" First_Name.Value = Recordset.Fields("First_Name") Last_Name.Value = Recordset.Fields("Last_Name") Email.Value = Recordset.Fields("Email") Telephone.Value = Recordset.Fields("Telephone") question_comments.Value = Recordset.Fields("question_comments") Mary_Notes.Value = Recordset.Fields("Mary_Notes") Mary_replied.Value = Recordset.Fields("Mary_replied") Date_added.Value = Recordset.Fields("Date_added") CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShowRow", Me) RowControls.Show Recordset.MoveNext ShownRecords = ShownRecords + 1 ' Parse Separator If NOT Recordset.EOF AND ShownRecords < PageSize Then _ SeparatorBlock.ParseTo ccsParseAccumulate, RowBlock Wend contacts_Insert.Parameters = CCGetQueryString("QueryString", Array("ID", "ccsForm")) contacts_Insert.Page = "Mary_Contacts.asp" Navigator.SetDataSource Recordset StaticControls.Show End If End Sub 'End contacts Show Method 'contacts PageSize Property Let @3-54E46DD6 Public Property Let PageSize(NewValue) VarPageSize = NewValue DataSource.PageSize = NewValue End Property 'End contacts PageSize Property Let 'contacts PageSize Property Get @3-9AA1D1E9 Public Property Get PageSize() PageSize = VarPageSize End Property 'End contacts PageSize Property Get End Class 'End contacts Class @3-A61BA892 Class clscontactsDataSource 'contactsDataSource Class @3-7E58774B 'DataSource Variables @3-38EDD777 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 ID Public ID_param1 Public First_Name Public Last_Name Public Email Public Telephone Public question_comments Public Mary_Notes Public Mary_replied Public Date_added 'End DataSource Variables 'DataSource Class_Initialize Event @3-AAF2D360 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 ID = CCCreateField("ID", "ID", ccsInteger, Empty, Recordset) Set ID_param1 = CCCreateField("ID_param1", "ID", ccsText, Empty, Recordset) Set First_Name = CCCreateField("First_Name", "First Name", ccsText, Empty, Recordset) Set Last_Name = CCCreateField("Last_Name", "Last Name", ccsText, Empty, Recordset) Set Email = CCCreateField("Email", "Email", ccsText, Empty, Recordset) Set Telephone = CCCreateField("Telephone", "Telephone", ccsText, Empty, Recordset) Set question_comments = CCCreateField("question_comments", "question_comments", ccsMemo, Empty, Recordset) Set Mary_Notes = CCCreateField("Mary_Notes", "Mary_Notes", ccsMemo, Empty, Recordset) Set Mary_replied = CCCreateField("Mary_replied", "Mary_replied", ccsBoolean, Array("true", "false", Empty), Recordset) Set Date_added = CCCreateField("Date_added", "Date_added", ccsDate, Array("yyyy", "-", "mm", "-", "dd", " ", "HH", ":", "nn", ":", "ss"), Recordset) Fields.AddFields Array(ID, ID_param1, First_Name, Last_Name, Email, Telephone, question_comments, _ Mary_Notes, Mary_replied, Date_added) Set Parameters = Server.CreateObject("Scripting.Dictionary") Set WhereParameters = Nothing Orders = Array( _ Array("Sorter_ID", "ID", ""), _ Array("Sorter_First_Name", "[First Name]", ""), _ Array("Sorter_Last_Name", "[Last Name]", ""), _ Array("Sorter_Email", "Email", ""), _ Array("Sorter_Telephone", "Telephone", ""), _ Array("Sorter_Mary_replied", "Mary_replied", ""), _ Array("Sorter_Date_added", "Date_added desc", "")) SQL = "SELECT TOP {SqlParam_endRecord} * " & _ "FROM contacts" CountSQL = "SELECT COUNT(*) " & _ "FROM contacts" Where = "" Order = "Date_added desc" End Sub 'End DataSource Class_Initialize Event 'SetOrder Method @3-68FC9576 Sub SetOrder(Column, Direction) Order = Recordset.GetOrder(Order, Column, Direction, Orders) End Sub 'End SetOrder Method 'BuildTableWhere Method @3-A38AC83E 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, "urls_First_Name", ccsText, Empty, Empty, Empty, False .AddParameter 2, "urls_Last_Name", ccsText, Empty, Empty, Empty, False .AddParameter 3, "urls_Mary_Notes", ccsMemo, Empty, Empty, Empty, False .AddParameter 4, "urls_Mary_replied", ccsBoolean, Empty, Array("true", "false", Empty), Empty, False .AddParameter 5, "urls_Date_added", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), Array("yyyy", "-", "mm", "-", "dd", " ", "HH", ":", "nn", ":", "ss"), Empty, False .Criterion(1) = .Operation(opContains, False, "[First Name]", .getParamByID(1)) .Criterion(2) = .Operation(opContains, False, "[Last Name]", .getParamByID(2)) .Criterion(3) = .Operation(opContains, False, "Mary_Notes", .getParamByID(3)) .Criterion(4) = .Operation(opEqual, False, "Mary_replied", .getParamByID(4)) .Criterion(5) = .Operation(opEqual, False, "Date_added", .getParamByID(5)) .AssembledWhere = .opAND(False, .opAND(False, .opAND(False, .opAND(False, .Criterion(1), .Criterion(2)), .Criterion(3)), .Criterion(4)), .Criterion(5)) 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 @3-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 @3-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 contactsDataSource Class @3-A61BA892 Class clsRecordcontacts1 'contacts1 Class @41-E994D2AD 'contacts1 Variables @41-B10498A1 ' Public variables Public ComponentName Public HTMLFormAction Public PressedButton Public Errors Public FormSubmitted Public EditMode Public Visible Public Recordset Public TemplateBlock Public CCSEvents Private CCSEventResult Public InsertAllowed Public UpdateAllowed Public DeleteAllowed Public ReadAllowed Public DataSource Public Command Public ValidatingControls Public Controls ' Class variables Dim First_Name Dim Last_Name Dim Email Dim Telephone Dim question_comments Dim Mary_Notes Dim Mary_replied Dim Date_added Dim DatePicker_Date_added Dim Button_Update 'End contacts1 Variables 'contacts1 Class_Initialize Event @41-ED604528 Private Sub Class_Initialize() Visible = True Set Errors = New clsErrors Set CCSEvents = CreateObject("Scripting.Dictionary") Set DataSource = New clscontacts1DataSource Set Command = New clsCommand InsertAllowed = False UpdateAllowed = True DeleteAllowed = False ReadAllowed = True Dim Method Dim OperationMode OperationMode = Split(CCGetFromGet("ccsForm", Empty), ":") If UBound(OperationMode) > -1 Then FormSubmitted = (OperationMode(0) = "contacts1") End If If UBound(OperationMode) > 0 Then EditMode = (OperationMode(1) = "Edit") End If ComponentName = "contacts1" Method = IIf(FormSubmitted, ccsPost, ccsGet) Set First_Name = CCCreateControl(ccsTextBox, "First_Name", "First Name", ccsText, Empty, CCGetRequestParam("First_Name", Method)) Set Last_Name = CCCreateControl(ccsTextBox, "Last_Name", "Last Name", ccsText, Empty, CCGetRequestParam("Last_Name", Method)) Set Email = CCCreateControl(ccsTextBox, "Email", "Email", ccsText, Empty, CCGetRequestParam("Email", Method)) Set Telephone = CCCreateControl(ccsTextBox, "Telephone", "Telephone", ccsText, Empty, CCGetRequestParam("Telephone", Method)) Set question_comments = CCCreateControl(ccsTextArea, "question_comments", "Question Comments", ccsMemo, Empty, CCGetRequestParam("question_comments", Method)) Set Mary_Notes = CCCreateControl(ccsTextArea, "Mary_Notes", "Mary Notes", ccsMemo, Empty, CCGetRequestParam("Mary_Notes", Method)) Set Mary_replied = CCCreateControl(ccsCheckBox, "Mary_replied", "Mary Replied", ccsBoolean, Empty, CCGetRequestParam("Mary_replied", Method)) Mary_replied.CheckedValue = True Mary_replied.UncheckedValue = False Set Date_added = CCCreateControl(ccsTextBox, "Date_added", "Date Added", ccsDate, Array("mm", "/", "dd", "/", "yyyy", " ", "h", ":", "nn", " ", "AM/PM"), CCGetRequestParam("Date_added", Method)) Set DatePicker_Date_added = CCCreateDatePicker("DatePicker_Date_added", "contacts1", "Date_added") Set Button_Update = CCCreateButton("Button_Update") Set ValidatingControls = new clsControls ValidatingControls.addControls Array(First_Name, Last_Name, Email, Telephone, question_comments, Mary_Notes, Mary_replied, Date_added) End Sub 'End contacts1 Class_Initialize Event 'contacts1 Initialize Method @41-F12247EA Sub Initialize(objConnection) If NOT Visible Then Exit Sub Set DataSource.Connection = objConnection With DataSource .Parameters("urlID") = CCGetRequestParam("ID", ccsGET) End With End Sub 'End contacts1 Initialize Method 'contacts1 Class_Terminate Event @41-32B847C9 Private Sub Class_Terminate() Set Errors = Nothing End Sub 'End contacts1 Class_Terminate Event 'contacts1 Validate Method @41-B9D513CF Function Validate() Dim Validation ValidatingControls.Validate CCSEventResult = CCRaiseEvent(CCSEvents, "OnValidate", Me) Validate = ValidatingControls.isValid() And (Errors.Count = 0) End Function 'End contacts1 Validate Method 'contacts1 Operation Method @41-FB8EF6A8 Sub Operation() If NOT ( Visible AND FormSubmitted ) Then Exit Sub If FormSubmitted Then PressedButton = IIf(EditMode, "Button_Update", "") If Not IsEmpty(CCGetParam("Button_Update", Empty)) Then PressedButton = "Button_Update" End If End If Redirect = "Mary_Contacts.asp?" & CCGetQueryString("QueryString", Array("ccsForm", "Button_Update")) If Validate() Then If PressedButton = "Button_Update" Then If NOT Button_Update.OnClick() OR NOT UpdateRow() Then Redirect = "" End If End If Else Redirect = "" End If End Sub 'End contacts1 Operation Method 'contacts1 UpdateRow Method @41-07DACECF Function UpdateRow() CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeUpdate", Me) If NOT UpdateAllowed Then UpdateRow = False : Exit Function DataSource.First_Name.Value = First_Name.Value DataSource.Last_Name.Value = Last_Name.Value DataSource.Email.Value = Email.Value DataSource.Telephone.Value = Telephone.Value DataSource.question_comments.Value = question_comments.Value DataSource.Mary_Notes.Value = Mary_Notes.Value DataSource.Mary_replied.Value = Mary_replied.Value DataSource.Date_added.Value = Date_added.Value DataSource.Update(Command) CCSEventResult = CCRaiseEvent(CCSEvents, "AfterUpdate", Me) If DataSource.Errors.Count > 0 Then Errors.AddErrors(DataSource.Errors) DataSource.Errors.Clear End If UpdateRow = (Errors.Count = 0) End Function 'End contacts1 UpdateRow Method 'contacts1 Show Method @41-EE24D6FD Sub Show(Tpl) If NOT Visible Then Exit Sub CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeSelect", Me) Set Recordset = DataSource.Open(Command) If Recordset.State = adStateOpen Then EditMode = NOT Recordset.EOF And ReadAllowed Else EditMode = False End If HTMLFormAction = FileName & "?" & CCAddParam(Request.ServerVariables("QUERY_STRING"), "ccsForm", "contacts1" & IIf(EditMode, ":Edit", "")) Set TemplateBlock = Tpl.Block("Record " & ComponentName) TemplateBlock.Variable("HTMLFormName") = ComponentName TemplateBlock.Variable("HTMLFormEnctype") ="application/x-www-form-urlencoded" If DataSource.Errors.Count > 0 Then Errors.AddErrors(DataSource.Errors) DataSource.Errors.Clear With TemplateBlock.Block("Error") .Variable("Error") = Errors.ToString .Parse False End With End If Set Controls = CCCreateCollection(TemplateBlock, Null, ccsParseOverwrite, _ Array(First_Name, Last_Name, Email, Telephone, question_comments, Mary_Notes, Mary_replied, _ Date_added, DatePicker_Date_added, Button_Update)) If EditMode And ReadAllowed Then If Errors.Count = 0 Then If Recordset.Errors.Count > 0 Then With TemplateBlock.Block("Error") .Variable("Error") = Recordset.Errors.ToString .Parse False End With ElseIf Not Recordset.EOF Then If Not FormSubmitted Then First_Name.Value = Recordset.Fields("First_Name") Last_Name.Value = Recordset.Fields("Last_Name") Email.Value = Recordset.Fields("Email") Telephone.Value = Recordset.Fields("Telephone") question_comments.Value = Recordset.Fields("question_comments") Mary_Notes.Value = Recordset.Fields("Mary_Notes") Mary_replied.Value = Recordset.Fields("Mary_replied") Date_added.Value = Recordset.Fields("Date_added") End If Else EditMode = False End If End If End If If Not FormSubmitted Then End If If FormSubmitted Then With TemplateBlock.Block("Error") .Variable("Error") = ValidatingControls.GetErrors & Errors.ToString _ & DataSource.Errors.ToString .Parse False End With End If TemplateBlock.Variable("Action") = HTMLFormAction Button_Update.Visible = EditMode AND UpdateAllowed CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If Visible Then Controls.Show End Sub 'End contacts1 Show Method End Class 'End contacts1 Class @41-A61BA892 Class clscontacts1DataSource 'contacts1DataSource Class @41-4ADA1E97 'DataSource Variables @41-E167DAE8 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 First_Name Public Last_Name Public Email Public Telephone Public question_comments Public Mary_Notes Public Mary_replied Public Date_added 'End DataSource Variables 'DataSource Class_Initialize Event @41-DF834764 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 First_Name = CCCreateField("First_Name", "First Name", ccsText, Empty, Recordset) Set Last_Name = CCCreateField("Last_Name", "Last Name", ccsText, Empty, Recordset) Set Email = CCCreateField("Email", "Email", ccsText, Empty, Recordset) Set Telephone = CCCreateField("Telephone", "Telephone", ccsText, Empty, Recordset) Set question_comments = CCCreateField("question_comments", "question_comments", ccsMemo, Empty, Recordset) Set Mary_Notes = CCCreateField("Mary_Notes", "Mary_Notes", ccsMemo, Empty, Recordset) Set Mary_replied = CCCreateField("Mary_replied", "Mary_replied", ccsBoolean, Array("true", "false", Empty), Recordset) Set Date_added = CCCreateField("Date_added", "Date_added", ccsDate, Array("yyyy", "-", "mm", "-", "dd", " ", "HH", ":", "nn", ":", "ss"), Recordset) Fields.AddFields Array(First_Name, Last_Name, Email, Telephone, question_comments, Mary_Notes, Mary_replied, Date_added) Set Parameters = Server.CreateObject("Scripting.Dictionary") Set WhereParameters = Nothing SQL = "SELECT TOP 1 * " & _ "FROM contacts" Where = "" Order = "" End Sub 'End DataSource Class_Initialize Event 'BuildTableWhere Method @41-65DC853B 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, "urlID", ccsInteger, Empty, Empty, Empty, False AllParamsSet = .AllParamsSet .Criterion(1) = .Operation(opEqual, False, "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 @41-F51151ED 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 BuildTableWhere Cmd.Where = Where Cmd.OrderBy = Order Cmd.Options("TOP") = True If Not AllParamsSet Then Set Open = New clsEmptyDataSource Exit Function End If 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 @41-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 'Update Method @41-B159C416 Sub Update(Cmd) CmdExecution = True CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeBuildUpdate", Me) Set Cmd.Connection = Connection Cmd.CommandOperation = cmdExec Cmd.CommandType = dsTable Cmd.CommandParameters = Empty Cmd.Prepared = True BuildTableWhere If NOT AllParamsSet Then Errors.AddError(CCSRunTimeMessages.GetMessage("CustomOperationError_MissingParameters", Empty)) End If Cmd.SQL = "UPDATE contacts SET " & _ "[First Name]=" & Connection.ToSQL(IIf(TypeName(First_Name) = "clsSQLParameter", First_Name, First_Name.SQLText), First_Name.DataType) & ", " & _ "[Last Name]=" & Connection.ToSQL(IIf(TypeName(Last_Name) = "clsSQLParameter", Last_Name, Last_Name.SQLText), Last_Name.DataType) & ", " & _ "Email=" & Connection.ToSQL(IIf(TypeName(Email) = "clsSQLParameter", Email, Email.SQLText), Email.DataType) & ", " & _ "Telephone=" & Connection.ToSQL(IIf(TypeName(Telephone) = "clsSQLParameter", Telephone, Telephone.SQLText), Telephone.DataType) & ", " & _ "question_comments=?" & ", " & _ "Mary_Notes=?" & ", " & _ "Mary_replied=" & Connection.ToSQL(IIf(TypeName(Mary_replied) = "clsSQLParameter", Mary_replied, Mary_replied.SQLText), Mary_replied.DataType) & ", " & _ "Date_added=" & Connection.ToSQL(IIf(TypeName(Date_added) = "clsSQLParameter", Date_added, Date_added.SQLText), Date_added.DataType) & _ IIf(Len(Where) > 0, " WHERE " & Where, "") Cmd.CommandParameters = Array( _ Array("question_comments", adLongVarChar, adParamInput, 2147483647, question_comments.Value), _ Array("Mary_Notes", adLongVarChar, adParamInput, 2147483647, Mary_Notes.Value)) CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeExecuteUpdate", Me) If Errors.Count = 0 And CmdExecution Then Cmd.Exec(Errors) CCSEventResult = CCRaiseEvent(CCSEvents, "AfterExecuteUpdate", Me) End If End Sub 'End Update Method End Class 'End contacts1DataSource Class @41-A61BA892 'Include Page Implementation @2-58B2864F %> <% 'End Include Page Implementation %>