AutoWikiBrowser.Plugins.Kingbotk.Templating.NewOrReplaceTemplateParm C# (CSharp) Method

NewOrReplaceTemplateParm() private method

Checks for the existence of a parameter and adds it if missing/optionally changes it
private NewOrReplaceTemplateParm ( string parameterName, string parameterValue, Article theArticle, bool logItAndUpdateEditSummary, bool paramHasAlternativeName, bool dontChangeIfSet = false, string paramAlternativeName = "", bool minorEditOnlyIfAdding = false ) : bool
parameterName string
parameterValue string
theArticle Article
logItAndUpdateEditSummary bool
paramHasAlternativeName bool
dontChangeIfSet bool
paramAlternativeName string
minorEditOnlyIfAdding bool
return bool
        internal bool NewOrReplaceTemplateParm(string parameterName, string parameterValue, Article theArticle,
            bool logItAndUpdateEditSummary, bool paramHasAlternativeName, bool dontChangeIfSet = false,
            string paramAlternativeName = "", bool minorEditOnlyIfAdding = false)
        {
            bool res;

            if (Parameters.ContainsKey(parameterName))
            {
                res = ReplaceTemplateParm(parameterName, parameterValue, theArticle, logItAndUpdateEditSummary,
                    dontChangeIfSet);
            }
            else if (paramHasAlternativeName && Parameters.ContainsKey(paramAlternativeName))
            {
                res = ReplaceTemplateParm(paramAlternativeName, parameterValue, theArticle, logItAndUpdateEditSummary,
                    dontChangeIfSet);
                // Doesn't contain parameter
            }
            else
            {
                NewTemplateParm(parameterName, parameterValue, logItAndUpdateEditSummary, theArticle, minorEditOnlyIfAdding);

                if (minorEditOnlyIfAdding)
                    theArticle.ArticleHasAMinorChange();
                else
                    theArticle.ArticleHasAMajorChange();
                return true;
            }

            if (res)
                theArticle.ArticleHasAMajorChange();
            return res;
        }

Usage Example

Example #1
0
 protected void AddAndLogNewParamWithAYesValue(string paramName)
 {
     Template.NewOrReplaceTemplateParm(paramName, "yes", TheArticle, true, false, pluginName: PluginShortName);
 }