<%@ CodePage=1251 %> <% 'Include Common Files @1-6A7F3264 %> <% 'End Include Common Files 'Initialize Page @1-9D809DFD ' Variables Dim PathToRoot, ScriptPath Dim FileName Dim Redirect Dim Tpl, HTMLTemplate Dim TemplateFileName Dim ComponentName Dim PathToCurrentPage ' Events Dim CCSEvents Dim CCSEventResult ' Connections Dim DBInternetDB ' Page controls Dim Header Dim store_products_store_cateSearch Dim store_products_store_cate Dim Footer Redirect = "" TemplateFileName = "enFullList.html" Set CCSEvents = CreateObject("Scripting.Dictionary") PathToCurrentPage = "./" FileName = "enFullList.asp" PathToRoot = "./" ScriptPath = Left(Request.ServerVariables("PATH_TRANSLATED"), Len(Request.ServerVariables("PATH_TRANSLATED")) - Len(FileName)) 'End Initialize Page 'Initialize Objects @1-3CC72033 Set DBInternetDB = New clsDBInternetDB DBInternetDB.Open ' Controls Set Header = New clsenHeader Header.initIncludes("") Header.BindEvents Header.Initialize Set store_products_store_cateSearch = new clsRecordstore_products_store_cateSearch Set store_products_store_cate = New clsGridstore_products_store_cate Set Footer = New clsenFooter Footer.initIncludes("") Footer.BindEvents Footer.Initialize store_products_store_cate.Initialize DBInternetDB ' Events %> <% BindEvents CCSEventResult = CCRaiseEvent(CCSEvents, "AfterInitialize", Nothing) 'End Initialize Objects 'Execute Components @1-73C39994 Header.Operations store_products_store_cateSearch.Operation Footer.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-C68FDDB1 Header.Show Tpl, "Header" store_products_store_cateSearch.Show Tpl store_products_store_cate.Show Tpl Footer.Show Tpl, "Footer" HTMLTemplate.PParse "main", False 'End Show Page 'Unload Page @1-CB210C62 UnloadPage Set Tpl = Nothing Set HTMLTemplate = Nothing 'End Unload Page 'UnloadPage Sub @1-21135E02 Sub UnloadPage() CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeUnload", Nothing) If DBInternetDB.State = adStateOpen Then _ DBInternetDB.Close Set DBInternetDB = Nothing Set Header = Nothing Set store_products_store_cateSearch = Nothing Set store_products_store_cate = Nothing Set Footer = Nothing End Sub 'End UnloadPage Sub Class clsRecordstore_products_store_cateSearch 'store_products_store_cateSearch Class @45-94C5D1AC 'store_products_store_cateSearch Variables @45-9BB61295 ' 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 store_products_store_cateOrder Dim store_products_store_cateOrderDataSource Dim store_products_store_cateDir Dim store_products_store_cateDirDataSource Dim s_keyword Dim ClearParameters Dim Button_DoSearch 'End store_products_store_cateSearch Variables 'store_products_store_cateSearch Class_Initialize Event @45-80D7F013 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) = "store_products_store_cateSearch") End If If UBound(OperationMode) > 0 Then EditMode = (OperationMode(1) = "Edit") End If ComponentName = "store_products_store_cateSearch" Method = IIf(FormSubmitted, ccsPost, ccsGet) Set store_products_store_cateOrderDataSource = CCCreateDataSource(dsListOfValues, Empty, Array( _ Array("", "Sorter_category_name", "Sorter_product_name", "Sorter_price"), _ Array("Choose Field", "Category", "Product Name", "Price"))) Set store_products_store_cateOrder = CCCreateList(ccsListBox, "store_products_store_cateOrder", "store_products_store_cateOrder", ccsText, CCGetRequestParam("store_products_store_cateOrder", Method), store_products_store_cateOrderDataSource) Set store_products_store_cateDirDataSource = CCCreateDataSource(dsListOfValues, Empty, Array( _ Array("", "ASC", "DESC"), _ Array("Sorting Order", "Ascending", "Discending"))) Set store_products_store_cateDir = CCCreateList(ccsListBox, "store_products_store_cateDir", "store_products_store_cateDir", ccsText, CCGetRequestParam("store_products_store_cateDir", Method), store_products_store_cateDirDataSource) Set s_keyword = CCCreateControl(ccsTextBox, "s_keyword", "s_keyword", ccsText, Empty, CCGetRequestParam("s_keyword", Method)) Set ClearParameters = CCCreateControl(ccsLink, "ClearParameters", "ClearParameters", ccsText, Empty, CCGetRequestParam("ClearParameters", Method)) Set Button_DoSearch = CCCreateButton("Button_DoSearch") Set ValidatingControls = new clsControls ValidatingControls.addControls Array(store_products_store_cateOrder, store_products_store_cateDir, s_keyword) End Sub 'End store_products_store_cateSearch Class_Initialize Event 'store_products_store_cateSearch Class_Terminate Event @45-32B847C9 Private Sub Class_Terminate() Set Errors = Nothing End Sub 'End store_products_store_cateSearch Class_Terminate Event 'store_products_store_cateSearch Validate Method @45-B9D513CF Function Validate() Dim Validation ValidatingControls.Validate CCSEventResult = CCRaiseEvent(CCSEvents, "OnValidate", Me) Validate = ValidatingControls.isValid() And (Errors.Count = 0) End Function 'End store_products_store_cateSearch Validate Method 'store_products_store_cateSearch Operation Method @45-5698782B 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 = "enFullList.asp" If Validate() Then If PressedButton = "Button_DoSearch" Then If NOT Button_DoSearch.OnClick() Then Redirect = "" Else Redirect = "enFullList.asp?" & CCGetQueryString("Form", Array(PressedButton, "ccsForm")) End If End If Else Redirect = "" End If End Sub 'End store_products_store_cateSearch Operation Method 'store_products_store_cateSearch Show Method @45-E5DD0D83 Sub Show(Tpl) If NOT Visible Then Exit Sub EditMode = False HTMLFormAction = FileName & "?" & CCAddParam(Request.ServerVariables("QUERY_STRING"), "ccsForm", "store_products_store_cateSearch" & 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(store_products_store_cateOrder, store_products_store_cateDir, s_keyword, ClearParameters, Button_DoSearch)) ClearParameters.Parameters = CCGetQueryString("QueryString", Array("s_keyword", "store_products_store_cateOrder", "store_products_store_cateDir", "ccsForm")) ClearParameters.Page = "enFullList.asp" 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 store_products_store_cateSearch Show Method End Class 'End store_products_store_cateSearch Class @45-A61BA892 Class clsGridstore_products_store_cate 'store_products_store_cate Class @4-C8C8F450 'store_products_store_cate Variables @4-15A27B39 ' 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 store_products_store_cate_TotalRecords Dim Sorter_category_name Dim Sorter_product_name Dim Sorter_price Dim Sorter_image_url Dim image_url Dim category_name Dim product_name Dim price Dim Navigator 'End store_products_store_cate Variables 'store_products_store_cate Class_Initialize Event @4-B87775F9 Private Sub Class_Initialize() ComponentName = "store_products_store_cate" Visible = True Set CCSEvents = CreateObject("Scripting.Dictionary") Set Errors = New clsErrors Set DataSource = New clsstore_products_store_cateDataSource 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 = 50 _ 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("store_products_store_cateOrder", Empty) SortingDirection = CCGetParam("store_products_store_cateDir", Empty) If NOT(SortingDirection = "ASC" OR SortingDirection = "DESC") Then _ SortingDirection = Empty Set image_url = CCCreateControl(ccsImageLink, "image_url", "image_url", ccsText, Empty, CCGetRequestParam("image_url", ccsGet)) Set category_name = CCCreateControl(ccsLabel, "category_name", "category_name", ccsText, Empty, CCGetRequestParam("category_name", ccsGet)) Set product_name = CCCreateControl(ccsLink, "product_name", "product_name", ccsText, Empty, CCGetRequestParam("product_name", ccsGet)) Set price = CCCreateControl(ccsLabel, "price", "price", ccsFloat, Array(False, 0, True, False, False, "", " Euro", 1, True, ""), CCGetRequestParam("price", ccsGet)) Set store_products_store_cate_TotalRecords = CCCreateControl(ccsLabel, "store_products_store_cate_TotalRecords", "store_products_store_cate_TotalRecords", ccsText, Empty, CCGetRequestParam("store_products_store_cate_TotalRecords", ccsGet)) Set Sorter_category_name = CCCreateSorter("Sorter_category_name", Me, FileName) Sorter_category_name.Visible = False Set Sorter_product_name = CCCreateSorter("Sorter_product_name", Me, FileName) Sorter_product_name.Visible = False Set Sorter_price = CCCreateSorter("Sorter_price", Me, FileName) Sorter_price.Visible = False Set Sorter_image_url = CCCreateSorter("Sorter_image_url", Me, FileName) Sorter_image_url.Visible = False Set Navigator = CCCreateNavigator(ComponentName, "Navigator", FileName, 10, tpSimple) End Sub 'End store_products_store_cate Class_Initialize Event 'store_products_store_cate Initialize Method @4-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 store_products_store_cate Initialize Method 'store_products_store_cate Class_Terminate Event @4-E1528F98 Private Sub Class_Terminate() Set DataSource = Nothing Set Command = Nothing Set Errors = Nothing End Sub 'End store_products_store_cate Class_Terminate Event 'store_products_store_cate Show Method @4-7CE9E8D8 Sub Show(Tpl) If NOT Visible Then Exit Sub Dim RecordCounter, ShownRecords Dim RowBlock, SeparatorBlock With DataSource .Parameters("expr77") = "RUSRET" .Parameters("urls_keyword") = CCGetRequestParam("s_keyword", ccsGET) .Parameters("expr116") = 1 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(store_products_store_cate_TotalRecords, Sorter_category_name, Sorter_product_name, Sorter_price, Sorter_image_url, Navigator)) Set RowControls = CCCreateCollection(RowBlock, Null, ccsParseAccumulate, _ Array(image_url, category_name, product_name, price)) CCSEventResult = CCRaiseEvent(CCSEvents, "BeforeShow", Me) If NOT Visible Then Exit Sub Errors.AddErrors DataSource.Errors If Errors.Count > 0 Then TemplateBlock.HTML = CCFormatError("Grid store_products_store_cate", 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 image_url.Value = Recordset.Fields("image_url") image_url.Parameters = CCGetQueryString("QueryString", Array("ccsForm")) image_url.Parameters = CCAddParam(image_url.Parameters, "product_id", Recordset.Fields("image_url_param1")) image_url.Page = "enProductDetail.asp" category_name.Value = Recordset.Fields("category_name") product_name.Value = Recordset.Fields("product_name") product_name.Parameters = CCGetQueryString("QueryString", Array("ccsForm")) product_name.Parameters = CCAddParam(product_name.Parameters, "product_id", Recordset.Fields("product_name_param1")) product_name.Page = "enProductDetail.asp" price.Value = Recordset.Fields("price") 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 Navigator.SetDataSource Recordset StaticControls.Show End If End Sub 'End store_products_store_cate Show Method 'store_products_store_cate PageSize Property Let @4-54E46DD6 Public Property Let PageSize(NewValue) VarPageSize = NewValue DataSource.PageSize = NewValue End Property 'End store_products_store_cate PageSize Property Let 'store_products_store_cate PageSize Property Get @4-9AA1D1E9 Public Property Get PageSize() PageSize = VarPageSize End Property 'End store_products_store_cate PageSize Property Get End Class 'End store_products_store_cate Class @4-A61BA892 Class clsstore_products_store_cateDataSource 'store_products_store_cateDataSource Class @4-D1C7B15A 'DataSource Variables @4-3F4528B8 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 image_url Public image_url_param1 Public category_name Public product_name Public product_name_param1 Public price 'End DataSource Variables 'DataSource Class_Initialize Event @4-DFCCC1DB 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 image_url = CCCreateField("image_url", "image_url", ccsText, Empty, Recordset) Set image_url_param1 = CCCreateField("image_url_param1", "product_id", ccsText, Empty, Recordset) Set category_name = CCCreateField("category_name", "e_category_name", ccsText, Empty, Recordset) Set product_name = CCCreateField("product_name", "e_product_name", ccsText, Empty, Recordset) Set product_name_param1 = CCCreateField("product_name_param1", "product_id", ccsText, Empty, Recordset) Set price = CCCreateField("price", "e_price", ccsFloat, Empty, Recordset) Fields.AddFields Array(image_url, image_url_param1, category_name, product_name, product_name_param1, price) Set Parameters = Server.CreateObject("Scripting.Dictionary") Set WhereParameters = Nothing Orders = Array( _ Array("Sorter_category_name", "e_category_name", ""), _ Array("Sorter_product_name", "e_product_name", ""), _ Array("Sorter_price", "e_price", ""), _ Array("Sorter_image_url", "image_url", "")) SQL = "SELECT TOP {SqlParam_endRecord} * " & _ "FROM store_products INNER JOIN store_categories ON " & _ "store_products.category_id = store_categories.category_id" CountSQL = "SELECT COUNT(*) " & _ "FROM store_products INNER JOIN store_categories ON " & _ "store_products.category_id = store_categories.category_id" Where = "" Order = "category_name" End Sub 'End DataSource Class_Initialize Event 'SetOrder Method @4-68FC9576 Sub SetOrder(Column, Direction) Order = Recordset.GetOrder(Order, Column, Direction, Orders) End Sub 'End SetOrder Method 'BuildTableWhere Method @4-3099A7B7 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, "expr77", ccsText, Empty, Empty, Empty, False .AddParameter 2, "urls_keyword", ccsText, Empty, Empty, Empty, False .AddParameter 3, "urls_keyword", ccsText, Empty, Empty, Empty, False .AddParameter 4, "urls_keyword", ccsFloat, Empty, Empty, Empty, False .AddParameter 5, "urls_keyword", ccsText, Empty, Empty, Empty, False .AddParameter 6, "expr116", ccsInteger, Empty, Empty, Empty, False .Criterion(1) = .Operation(opContains, False, "store_categories.category_channel", .getParamByID(1)) .Criterion(2) = .Operation(opContains, False, "store_categories.e_category_name", .getParamByID(2)) .Criterion(3) = .Operation(opContains, False, "store_products.e_product_name", .getParamByID(3)) .Criterion(4) = .Operation(opContains, False, "store_products.e_price", .getParamByID(4)) .Criterion(5) = .Operation(opContains, False, "store_products.e_short_description", .getParamByID(5)) .Criterion(6) = .Operation(opEqual, False, "store_products.e_is_visible", .getParamByID(6)) .AssembledWhere = .opAND(False, .opAND(False, .Criterion(1), .opOR(True, .opOR(False, .opOR(False, .Criterion(2), .Criterion(3)), .Criterion(4)), .Criterion(5))), .Criterion(6)) 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 store_products_store_cateDataSource Class @4-A61BA892 'Include Page Implementation @2-DAFDA2F0 %> <% 'End Include Page Implementation 'Include Page Implementation @3-E2ECDA17 %> <% 'End Include Page Implementation %>