2nd attempt: U4-2514 Checkboxlist prevalues in packages broken

This commit is contained in:
Sebastiaan Janssen
2013-07-23 13:16:18 +02:00
parent d1eb8fd9eb
commit e634dba4ea
2 changed files with 65 additions and 42 deletions

View File

@@ -1,48 +1,49 @@
using System;
using System.Linq;
using Umbraco.Core.Logging;
using umbraco.DataLayer;
namespace umbraco.editorControls
{
/// <summary>
/// Summary description for cms.businesslogic.datatype.DefaultDataKeyValue.
/// </summary>
/// <summary>
/// Summary description for cms.businesslogic.datatype.DefaultDataKeyValue.
/// </summary>
public class DefaultDataKeyValue : cms.businesslogic.datatype.DefaultData
{
public DefaultDataKeyValue(cms.businesslogic.datatype.BaseDataType DataType) : base(DataType)
{}
/// <summary>
/// Ov
/// </summary>
/// <param name="d"></param>
/// <returns></returns>
public override System.Xml.XmlNode ToXMl(System.Xml.XmlDocument d)
{
// Get the value from
var v = "";
try
{
// Don't query if there's nothing to query for..
if (string.IsNullOrWhiteSpace(Value.ToString()) == false)
{
var dr = SqlHelper.ExecuteReader("Select [value] from cmsDataTypeprevalues where id in (" + SqlHelper.EscapeString(Value.ToString()) + ")");
{
public DefaultDataKeyValue(cms.businesslogic.datatype.BaseDataType DataType)
: base(DataType)
{ }
while (dr.Read())
{
if (v.Length == 0)
v += dr.GetString("value");
else
v += "," + dr.GetString("value");
}
dr.Close();
}
}
catch (Exception ex)
{
LogHelper.Error<DefaultDataKeyValue>("An exception occurred converting the property data to XML", ex);
}
return d.CreateCDataSection(v);
}
}
/// <summary>
/// Gets the values of from cmsDataTypePreValues table by id and puts them into a CDATA section
/// </summary>
/// <param name="xmlDocument"></param>
/// <returns></returns>
public override System.Xml.XmlNode ToXMl(System.Xml.XmlDocument xmlDocument)
{
var value = string.Empty;
try
{
// Don't query if there's nothing to query for..
if (string.IsNullOrWhiteSpace(Value.ToString()) == false)
{
var dr = SqlHelper.ExecuteReader(string.Format("Select [value] from cmsDataTypeprevalues where id in ({0})", SqlHelper.EscapeString(Value.ToString())));
while (dr.Read())
{
value += value.Length == 0
? dr.GetString("value")
: string.Format(",{0}", dr.GetString("value"));
}
dr.Close();
}
}
catch (Exception ex)
{
LogHelper.Error<DefaultDataKeyValue>("An exception occurred converting the property data to XML", ex);
}
return xmlDocument.CreateCDataSection(value);
}
}
}