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;
}