AutoWikiBrowser.Plugins.Kingbotk.Templating.NewOrReplaceTemplateParm C# (CSharp) 메소드

NewOrReplaceTemplateParm() 개인적인 메소드

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
리턴 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

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