Esempio n. 1
0
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     if (args.SourceField.Value.Contains(Constants.Tokens.WeBlogSetting))
     {
         args.Result = TokenReplacer.ResolveSettingsTokens(args.Result, args.TargetItem);
     }
 }
Esempio n. 2
0
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     if (TokenReplacer.ContainsToken(args.Result))
     {
         args.Result = TokenReplacer.Replace(args.Result, args.TargetItem);
     }
 }
Esempio n. 3
0
        /// <summary>
        /// Processes the specified args.
        /// </summary>
        /// <param name="args">The args.</param>
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.SourceField.Value.Length == 0 || args.Result.IndexOf("$futureDate", System.StringComparison.OrdinalIgnoreCase) < 0)
            {
                return;
            }

            var fieldValue = args.Result;

            const string Pattern = @"(\$futureDate\((\d),(\d),(\d)\))";
            var          regex   = new Regex(Pattern, RegexOptions.IgnoreCase);
            var          match   = regex.Match(fieldValue);

            if (match.Success)
            {
                var token  = match.Groups[1].Value;
                var years  = match.Groups[2].Value;
                var months = match.Groups[3].Value;
                var days   = match.Groups[4].Value;

                args.Result = fieldValue.Replace(
                    token,
                    DateUtil.ToIsoDate(
                        DateTime.Now.AddYears(this.GetInt(years, 0))
                        .AddMonths(this.GetInt(months, 0))
                        .AddDays(this.GetInt(days, 0))));
            }
            else
            {
                Sitecore.Diagnostics.Log.Warn(
                    "Invalid $futureDate format. Expected: $futureDate(years,months,days) (for example $futureDate(1,0,0)).", this);
            }
        }
        /// <summary>
        /// Processes the specified args.
        /// </summary>
        /// <param name="args">The args.</param>
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.SourceField.Value.Length == 0 || args.Result.IndexOf("$futureDate", System.StringComparison.OrdinalIgnoreCase) < 0)
            {
                return;
            }

            var fieldValue = args.Result;

            const string Pattern = @"(\$futureDate\((\d),(\d),(\d)\))";
            var regex = new Regex(Pattern, RegexOptions.IgnoreCase);
            var match = regex.Match(fieldValue);

            if (match.Success)
            {
                var token = match.Groups[1].Value;
                var years = match.Groups[2].Value;
                var months = match.Groups[3].Value;
                var days = match.Groups[4].Value;

                args.Result = fieldValue.Replace(
                    token,
                    DateUtil.ToIsoDate(
                        DateTime.Now.AddYears(this.GetInt(years, 0))
                                .AddMonths(this.GetInt(months, 0))
                                .AddDays(this.GetInt(days, 0))));
            }
            else
            {
                Sitecore.Diagnostics.Log.Warn(
                    "Invalid $futureDate format. Expected: $futureDate(years,months,days) (for example $futureDate(1,0,0)).",this);
            }
        }
Esempio n. 5
0
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            if (args.SourceField.Value.Contains("$weblogsetting"))
            {
                string originalValue = args.SourceField.Value;
                Match  match         = Regex.Match(args.SourceField.Value, @"\(([^)]*)\)");

                if (!string.IsNullOrEmpty(match.Value))
                {
                    string settingName   = match.Value.Trim(new char[] { '(', ')' });
                    string settingsValue = Sitecore.Configuration.Settings.GetSetting(settingName);

                    if (!string.IsNullOrEmpty(settingsValue))
                    {
                        args.Result = originalValue.Replace(string.Format("$weblogsetting{0}", match.Value), settingsValue);
                    }
                }
            }

            if (args.SourceField.Value.Contains("$username"))
            {
                var user = Context.User;
                if (user != null)
                {
                    args.Result = args.SourceField.Value.Replace("$username", user.Name);
                }
            }
        }
Esempio n. 6
0
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            if (args.SourceField.Value.Contains("$weblogsetting"))
            {
                string originalValue = args.SourceField.Value;
                Match match = Regex.Match(args.SourceField.Value, @"\(([^)]*)\)");

                if (!string.IsNullOrEmpty(match.Value))
                {
                    string settingName = match.Value.Trim(new char[] { '(', ')' });
                    string settingsValue = Sitecore.Configuration.Settings.GetSetting(settingName);

                    if (!string.IsNullOrEmpty(settingsValue))
                    {
                        args.Result = originalValue.Replace(string.Format("$weblogsetting{0}", match.Value), settingsValue);
                    }
                }
            }

            if (args.SourceField.Value.Contains("$username"))
            {
                var user = Context.User;
                if (user != null)
                    args.Result = args.SourceField.Value.Replace("$username", user.Name);
            }
        }
Esempio n. 7
0
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     if (args.SourceField.Value.Contains("$displayname"))
     {
         args.Result = args.TargetItem.Name.ToTitleCase();
     }
 }
Esempio n. 8
0
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     if (args.SourceField.Value.Contains(Constants.Tokens.WeBlogSetting))
     {
         args.Result = TokenReplacer.ResolveSettingsTokens(args.Result, args.TargetItem);
     }
 }
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     Assert.ArgumentNotNull(args, "args");
     if (args.TargetItem.IsPowerShellScript())
     {
         args.AbortPipeline();
     }
 }
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            var token = args.SourceField.Value;

            if (!string.IsNullOrEmpty(token) && token.Contains("$parentPath"))
            {
                if (args.TargetItem != null)
                {
                    args.Result = args.Result.Replace("$parentPath", args.TargetItem.Paths.ParentPath);
                }
            }
        }
Esempio n. 11
0
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.Result != null && args.Result.ToLower().Trim().Equals(Token))
            {
                args.Result = string.Empty;

                var serverDate = DateUtil.ToServerTime(DateTime.UtcNow).Date;
                var utcDate    = DateUtil.ToUniversalTime(serverDate);

                args.Result = DateUtil.ToIsoDate(utcDate);
            }
        }
Esempio n. 12
0
        /// <summary>
        /// This custom token is used to retrieve replace the values in the standardvalues with respective values
        /// </summary>
        /// <param name="args"></param>
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            switch (args.SourceField.Value)
            {
            case var token when token.Contains("$parenttitle"):
                //Replacing the $parenttitle with its parent item's Title Field
                args.Result = args.TargetItem.Parent != null?args.Result.Replace("$parenttitle", args.TargetItem.Parent[CommonConstants.Title]) : string.Empty;

                break;

            case var token when token.Contains("$parentintro"):
                //Replacing the $parentintro with its parent item's Introduction Field
                args.Result = args.TargetItem.Parent != null?args.Result.Replace("$parentintro", args.TargetItem.Parent[CommonConstants.Introduction]) : string.Empty;

                break;

            default:
                break;
            }
        }
        private string GetSortBy(Item item)
        {
            Assert.ArgumentNotNull(item, "item");
            if (string.IsNullOrEmpty(this.sortBy))
            {
                return(item.GetUIDisplayName());
            }
            Field sourceField = item.Fields[this.sortBy];

            if (sourceField == null)
            {
                return(Translate.Text("[none]"));
            }
            if (!this.expandStandardValuesTokens || !sourceField.ContainsStandardValue)
            {
                return(StringUtil.RemoveTags(sourceField.Value));
            }
            ExpandInitialFieldValueArgs args = new ExpandInitialFieldValueArgs(sourceField, item);

            CorePipeline.Run("expandInitialFieldValue", args);
            return(StringUtil.RemoveTags(args.Result ?? sourceField.Value));
        }
Esempio n. 14
0
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            if (!rxToken.IsMatch(args.SourceField.Value))
            {
                return;
            }

            foreach (Match _match in (rxToken.Matches(args.SourceField.Value)))
            {
                int size = int.Parse(_match.Groups["size"].Value);

                if (_match.Groups["type"].Value == "sentences")
                {
                    args.Result = rxToken.Replace(args.Result, RandomLines(size));
                }

                if (_match.Groups["type"].Value == "length")
                {
                    args.Result = rxToken.Replace(args.Result, RandomLines(size / 10, size, true));
                }
            }
        }
Esempio n. 15
0
        /// <summary>
        /// Processes the specified args.
        /// </summary>
        /// <param name="args">The args.</param>
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.SourceField.Value.Length == 0 || args.Result.IndexOf("$query", StringComparison.OrdinalIgnoreCase) < 0)
            {
                return;
            }

            var fieldValue = args.Result;

            const string Pattern = @"(\$query\((.*[^\|])\|(\w*)\))";
            var          regex   = new Regex(Pattern, RegexOptions.IgnoreCase);
            var          match   = regex.Match(fieldValue);

            if (match.Success)
            {
                var token     = match.Groups[1].Value;
                var query     = match.Groups[2].Value;
                var fieldname = match.Groups[3].Value;

                if (query.Length > 0 && fieldname.Length > 0)
                {
                    var resultItem = this.GetItemFromRelativeQuery(query, args.TargetItem);
                    if (resultItem != null)
                    {
                        args.Result = string.IsNullOrEmpty(resultItem[fieldname]) ?
                                      args.Result.Replace(token, string.Empty) :
                                      args.Result.Replace(token, resultItem[fieldname]);
                    }
                }
            }
            else
            {
                Log.Error("Invalid $query() token. Expected format: $query(<query>|<fieldname>)", this);
            }
        }
        /// <summary>
        /// Processes the specified args.
        /// </summary>
        /// <param name="args">The args.</param>
        public override void Process(ExpandInitialFieldValueArgs args)
        {
            Assert.ArgumentNotNull(args, "args");

            if (args.SourceField.Value.Length == 0 || args.Result.IndexOf("$query", StringComparison.OrdinalIgnoreCase) < 0)
            {
                return;
            }

            var fieldValue = args.Result;

            const string Pattern = @"(\$query\((.*[^\|])\|(\w*)\))";
            var regex = new Regex(Pattern, RegexOptions.IgnoreCase);
            var match = regex.Match(fieldValue);

            if (match.Success)
            {
                var token = match.Groups[1].Value;
                var query = match.Groups[2].Value;
                var fieldname = match.Groups[3].Value;

                if (query.Length > 0 && fieldname.Length > 0)
                {
                    var resultItem = this.GetItemFromRelativeQuery(query, args.TargetItem);
                    if (resultItem != null)
                    {
                        args.Result = string.IsNullOrEmpty(resultItem[fieldname]) ?
                            args.Result.Replace(token, string.Empty) :
                            args.Result.Replace(token, resultItem[fieldname]);
                    }
                }
            }
            else
            {
                Log.Error("Invalid $query() token. Expected format: $query(<query>|<fieldname>)", this);
            }
        }
 public override void Process(ExpandInitialFieldValueArgs args)
 {
     Assert.ArgumentNotNull(args, "args");
     args.Result = args.Result.Replace(Token, args.TargetItem.Name.ToLower().Replace(" ", "-"));
 }