예제 #1
0
            /// <summary>
            /// Attempts to resolve the specified search string to a staff (returns a JSML encoded <see cref="StaffSummary"/>.
            /// </summary>
            /// <param name="search"></param>
            /// <returns></returns>
            public string ResolveStaffName(string search)
            {
                StaffSummary staff;
                var          lookupHandler = new StaffLookupHandler(_component.Host.DesktopWindow);
                var          resolved      = lookupHandler.ResolveName(search, out staff);

                // bug #2896: the name may "resolve" to nothing, so we still need to check if staff actually has a value
                if (!resolved || staff == null)
                {
                    resolved = lookupHandler.ResolveNameInteractive(search, out staff);
                }
                return(resolved ? JsmlSerializer.Serialize(staff, "staff") : null);
            }
예제 #2
0
            /// <summary>
            /// Attempts to resolve the specified search string to a staff (returns a JSML encoded <see cref="StaffSummary"/>.
            /// </summary>
            /// <param name="search"></param>
            /// <param name="jsmlStaffTypesFilter">JSML encoded string list of staff types codes to filter with.</param>
            /// <returns></returns>
            public string ResolveFilteredStaffName(string search, string jsmlStaffTypesFilter)
            {
                StaffSummary staff;
                var          filter        = JsmlSerializer.Deserialize <List <String> >(jsmlStaffTypesFilter);
                var          lookupHandler = new StaffLookupHandler(_component.Host.DesktopWindow, filter.ToArray());
                var          resolved      = lookupHandler.ResolveName(search, out staff);

                // bug #2896: the name may "resolve" to nothing, so we still need to check if staff actually has a value
                if (!resolved || staff == null)
                {
                    resolved = lookupHandler.ResolveNameInteractive(search, out staff);
                }
                return(resolved ? JsmlSerializer.Serialize(staff, "staff") : null);
            }