internal void AddTemplateParmFromExistingTemplate(string parameterName, string parameterValue)
{
// Let's merge duplicates when one or both is empty:
if (Parameters.ContainsKey(parameterName))
{
// This code is very similar to ReplaceTemplateParm(), but that is for programmatic changes (i.e. not
// from template), needs an Article object, doesn't understand empty new values, and doesn't report
// bad tags. Turned out to be easier to rewrite here than to modify it.
if (Parameters[parameterName].Value != parameterValue)
{
// existing value is empty, overwrite with new
if (string.IsNullOrEmpty(Parameters[parameterName].Value))
{
Parameters[parameterName].Value = parameterValue;
}
else if (!string.IsNullOrEmpty(parameterValue))
{
BadTemplate = true;
}
}
}
else
{
Parameters.Add(parameterName, new TemplateParametersObject(parameterValue));
}
}