Ejemplo n.º 1
0
        /// <summary>
        /// Может ли создаться ссылка на дочку
        /// </summary>
        /// <returns></returns>
        public bool GetVisibleToChilds(IDictionary <string, string> values, string referenceKey, BaseNavigatorValues navigatorValues)
        {
            var args = GetVisibleArgs(values, referenceKey, navigatorValues);

            return(args.Visible && (args.VisibleToJournalButton || (args.VisibleLookButton && IsOneToOne) || args.VisibleAddButton));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Получить аргументы для определения видимости ссылок.
        /// </summary>
        /// <returns></returns>
        protected BaseNavigatorInfoVisibleEventArgs GetVisibleArgs(IDictionary <string, string> values, string referenceKey, BaseNavigatorValues navigatorValues)
        {
            var keyCache = ReferenceCacheKey + ".Args." + referenceKey;
            BaseNavigatorInfoVisibleEventArgs args = null;

            if (HttpContext.Current != null)
            {
                args = HttpContext.Current.Items[keyCache] as BaseNavigatorInfoVisibleEventArgs;
            }
            if (args != null)
            {
                return(args);
            }
            args = new BaseNavigatorInfoVisibleEventArgs
            {
                SelectedValue = GetKeyValue(values, referenceKey, false),
                Values        = navigatorValues
            };
            InitializeNavigatorInfoVisible(args);
            if (HttpContext.Current != null)
            {
                HttpContext.Current.Items[keyCache] = args;
            }
            return(args);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Получить может ли создаться ссылка на родителя
        /// </summary>
        /// <returns></returns>
        public bool GetFilterByParent(IDictionary <string, string> values, string referenceKey, BaseNavigatorValues navigatorValues)
        {
            var args = GetVisibleArgs(values, referenceKey, navigatorValues);

            return(args.Visible && args.FilterByParent);
        }