diff --git a/WebsitePanel/Database/update_db.sql b/WebsitePanel/Database/update_db.sql index 7598159f..4ce245d3 100644 --- a/WebsitePanel/Database/update_db.sql +++ b/WebsitePanel/Database/update_db.sql @@ -10689,6 +10689,7 @@ GO IF EXISTS (SELECT * FROM SYS.OBJECTS WHERE type = 'P' AND name = 'GetSearchObject') DROP PROCEDURE GetSearchObject +GO CREATE PROCEDURE [dbo].[GetSearchObject] ( @@ -10892,7 +10893,11 @@ IF @SortColumn <> '' AND @SortColumn IS NOT NULL SET @sqlReturn = @sqlReturn + ' ORDER BY ' + @SortColumn + ' ' SET @sqlReturn = @sqlReturn + ' SELECT COUNT(ItemID) FROM @ItemsReturn; -SELECT DISTINCT(ColumnType) FROM @ItemsReturn; +SELECT DISTINCT(ColumnType) FROM @ItemsReturn WHERE (1 = 1) '; +IF @FullType <> '' +SET @sqlReturn = @sqlReturn + ' AND FullType = ''' + @FullType + ''''; +SET @sqlReturn = @sqlReturn + '; '; +SET @sqlReturn = @sqlReturn + ' SELECT ItemPosition, ItemID, TextSearch, ColumnType, FullType, PackageID FROM @ItemsReturn AS IR WHERE (1 = 1) ' @@ -10903,6 +10908,9 @@ SET @sqlReturn = @sqlReturn + ' AND IR.ItemPosition BETWEEN @StartRow AND @EndRo IF @ColType <> '' SET @sqlReturn = @sqlReturn + ' AND ColumnType in ( ' + @ColType + ' ) '; +IF @FullType <> '' +SET @sqlReturn = @sqlReturn + ' AND FullType = ''' + @FullType + ''''; + exec sp_executesql @sqlReturn, N'@StartRow int, @MaximumRows int, @FilterValue nvarchar(50), @curSpaceValue cursor, @curUsersValue cursor', @StartRow, @MaximumRows, @FilterValue, @curSpace, @curUsers @@ -10911,3 +10919,4 @@ DEALLOCATE @curSpace CLOSE @curUsers DEALLOCATE @curUsers RETURN + diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/PackagesProxy.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/PackagesProxy.cs index 54603503..0791687f 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/PackagesProxy.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Client/PackagesProxy.cs @@ -910,7 +910,7 @@ namespace WebsitePanel.EnterpriseServer { /// /// //TODO START [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/websitepanel/enterpriseserver/GetSearchObject", RequestNamespace = "http://smbsaas/websitepanel/enterpriseserver", ResponseNamespace = "http://smbsaas/websitepanel/enterpriseserver", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)] - public System.Data.DataSet GetSearchObject(int userId, string filterColumn, string filterValue, int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType) + public System.Data.DataSet GetSearchObject(int userId, string filterColumn, string filterValue, int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType, string fullType) { object[] results = this.Invoke("GetSearchObject", new object[] { userId, @@ -921,7 +921,8 @@ namespace WebsitePanel.EnterpriseServer { sortColumn, startRow, maximumRows, - colType + colType, + fullType }); return ((System.Data.DataSet)(results[0])); } diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs index 23a0578e..68a81036 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Data/DataProvider.cs @@ -141,7 +141,7 @@ namespace WebsitePanel.EnterpriseServer //TODO START public static DataSet GetSearchObject(int actorId, int userId, string filterColumn, string filterValue, - int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType, bool recursive) + int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType, string fullType, bool recursive) { return SqlHelper.ExecuteDataset(ConnectionString, CommandType.StoredProcedure, ObjectQualifier + "GetSearchObject", @@ -155,7 +155,8 @@ namespace WebsitePanel.EnterpriseServer new SqlParameter("@startRow", startRow), new SqlParameter("@maximumRows", maximumRows), new SqlParameter("@recursive", recursive), - new SqlParameter("@ColType", colType)); + new SqlParameter("@ColType", colType), + new SqlParameter("@FullType", fullType)); } //TODO END diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs index ccd2e736..1c920bda 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer.Code/Packages/PackageController.cs @@ -319,10 +319,10 @@ namespace WebsitePanel.EnterpriseServer //TODO START public static DataSet GetSearchObject(int userId, string filterColumn, string filterValue, - int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType) + int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType, string fullType) { return DataProvider.GetSearchObject(SecurityContext.User.UserId, userId, - filterColumn, filterValue, statusId, roleId, sortColumn, startRow, maximumRows, colType, false); + filterColumn, filterValue, statusId, roleId, sortColumn, startRow, maximumRows, colType, fullType, false); } //TODO END diff --git a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esPackages.asmx.cs b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esPackages.asmx.cs index 9d9a6b52..36804d26 100644 --- a/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esPackages.asmx.cs +++ b/WebsitePanel/Sources/WebsitePanel.EnterpriseServer/esPackages.asmx.cs @@ -138,9 +138,9 @@ namespace WebsitePanel.EnterpriseServer [WebMethod] public DataSet GetSearchObject(int userId, string filterColumn, string filterValue, - int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType) + int statusId, int roleId, string sortColumn, int startRow, int maximumRows, string colType, string fullType) { - return PackageController.GetSearchObject(userId, filterColumn, filterValue, statusId, roleId, sortColumn, startRow, maximumRows, colType); + return PackageController.GetSearchObject(userId, filterColumn, filterValue, statusId, roleId, sortColumn, startRow, maximumRows, colType, fullType); } //TODO END diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/AjaxHandler.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/AjaxHandler.cs index 23024756..fe3592d0 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/AjaxHandler.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/AjaxHandler.cs @@ -47,19 +47,22 @@ namespace WebsitePanel.WebPortal { DataSet dsObjectItems = ES.Services.Packages.GetSearchObject(PanelSecurity.EffectiveUserId, null, String.Format("%{0}%", filterValue), - 0, 0, "", 0, 100, columnType); + 0, 0, "", 0, 100, columnType,fullType); DataTable dt = dsObjectItems.Tables[2]; List> dataList = new List>(); for (int i = 0; i < dt.Rows.Count; ++i) { DataRow row = dt.Rows[i]; - Dictionary obj = new Dictionary(); - obj["ColumnType"] = row["ColumnType"].ToString(); - obj["TextSearch"] = row["TextSearch"].ToString(); - obj["ItemID"] = row["ItemID"].ToString(); - obj["PackageID"] = row["PackageID"].ToString(); - obj["FullType"] = row["FullType"].ToString(); - dataList.Add(obj); + if ((fullType == null) || (fullType.Length == 0) || (fullType == row["FullType"].ToString())) + { + Dictionary obj = new Dictionary(); + obj["ColumnType"] = row["ColumnType"].ToString(); + obj["TextSearch"] = row["TextSearch"].ToString(); + obj["ItemID"] = row["ItemID"].ToString(); + obj["PackageID"] = row["PackageID"].ToString(); + obj["FullType"] = row["FullType"].ToString(); + dataList.Add(obj); + } } var jsonSerialiser = new JavaScriptSerializer(); diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/PackagesHelper.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/PackagesHelper.cs index eac0381f..7067bd4c 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/PackagesHelper.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/Code/Helpers/PackagesHelper.cs @@ -250,25 +250,25 @@ namespace WebsitePanel.Portal #region Service Items Paged Search DataSet dsObjectItemsPaged; - public int SearchObjectItemsPagedCount(string filterColumn, string filterValue, string colType) + public int SearchObjectItemsPagedCount(string filterColumn, string filterValue, string fullType, string colType) { return (int)dsObjectItemsPaged.Tables[0].Rows[0][0]; } public DataTable SearchObjectItemsPaged(int maximumRows, int startRowIndex, string sortColumn, - string filterColumn, string filterValue, string colType) + string filterColumn, string filterValue, string colType, string fullType) { dsObjectItemsPaged = ES.Services.Packages.GetSearchObject(PanelSecurity.EffectiveUserId, filterColumn, String.Format("%{0}%", filterValue), - 0, 0, sortColumn, startRowIndex, maximumRows, colType); + 0, 0, sortColumn, startRowIndex, maximumRows, colType, fullType); return dsObjectItemsPaged.Tables[2]; } - public DataTable SearchObjectTypes(string filterColumn, string filterValue, string sortColumn) + public DataTable SearchObjectTypes(string filterColumn, string filterValue, string fullType, string sortColumn) { dsObjectItemsPaged = ES.Services.Packages.GetSearchObject(PanelSecurity.EffectiveUserId, filterColumn, String.Format("%{0}%", filterValue), - 0, 0, sortColumn, 0, 0, ""); + 0, 0, sortColumn, 0, 0, "",fullType); return dsObjectItemsPaged.Tables[1]; } //TODO END diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SearchObject.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SearchObject.ascx index 5defa1d4..8a29c88c 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SearchObject.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SearchObject.ascx @@ -91,6 +91,7 @@ + @@ -99,6 +100,7 @@ + diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx index ad36f998..e92cf5c7 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx @@ -6,10 +6,12 @@ - + @@ -104,4 +107,4 @@
-
+ diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx.designer.cs b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx.designer.cs index e549b9d0..df1febe1 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx.designer.cs +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/SkinControls/GlobalSearch.ascx.designer.cs @@ -19,7 +19,7 @@ namespace WebsitePanel.Portal.SkinControls { /// Auto-generated field. /// To modify move field declaration from designer file to code-behind file. ///
- protected global::System.Web.UI.UpdatePanel updatePanelUsers; + protected global::System.Web.UI.WebControls.Panel updatePanelUsers; /// /// tbSearch control. diff --git a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/SearchBox.ascx b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/SearchBox.ascx index f6e0b76f..4a9ede81 100644 --- a/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/SearchBox.ascx +++ b/WebsitePanel/Sources/WebsitePanel.WebPortal/DesktopModules/WebsitePanel/UserControls/SearchBox.ascx @@ -3,8 +3,12 @@