mirror of
https://github.com/ONLYOFFICE/sdkjs-forms.git
synced 2026-02-10 18:05:42 +08:00
[oform] Fix read from xml user master
This commit is contained in:
@ -152,7 +152,7 @@
|
||||
CUserMaster.prototype.toXml = function(writer)
|
||||
{
|
||||
writer.WriteXmlHeader();
|
||||
writer.WriteXmlNodeStart("userMaster");
|
||||
writer.WriteXmlNodeStart("user");
|
||||
writer.WriteXmlAttributesEnd();
|
||||
|
||||
if (this.UserId)
|
||||
@ -168,48 +168,43 @@
|
||||
writer.WriteXmlAttributesEnd(true);
|
||||
}
|
||||
|
||||
writer.WriteXmlNodeEnd("userMaster");
|
||||
writer.WriteXmlNodeEnd("user");
|
||||
};
|
||||
CUserMaster.fromXml = function(reader)
|
||||
{
|
||||
if (!reader.ReadNextNode())
|
||||
return null;
|
||||
|
||||
let um = new CUserMaster();
|
||||
|
||||
let name = reader.GetNameNoNS();
|
||||
if ("userMaster" === name)
|
||||
{
|
||||
let depth = reader.GetDepth();
|
||||
while (reader.ReadNextSiblingNode(depth))
|
||||
{
|
||||
name = reader.GetNameNoNS();
|
||||
switch(reader.GetNameNoNS())
|
||||
{
|
||||
case "id":
|
||||
um.setUserId(reader.GetTextDecodeXml());
|
||||
break;
|
||||
case "role":
|
||||
um.setRole(reader.GetTextDecodeXml());
|
||||
break;
|
||||
case "color":
|
||||
while (reader.MoveToNextAttribute())
|
||||
{
|
||||
if ("val" === reader.GetNameNoNS())
|
||||
{
|
||||
let color = new AscWord.CDocumentColor();
|
||||
color.SetFromHexColor(reader.GetValueDecodeXml());
|
||||
um.setColor(color.r, color.g, color.b);
|
||||
}
|
||||
}
|
||||
reader.ReadTillEnd();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ("user" !== reader.GetNameNoNS())
|
||||
return null;
|
||||
|
||||
let um = new CUserMaster();
|
||||
let depth = reader.GetDepth();
|
||||
while (reader.ReadNextSiblingNode(depth))
|
||||
{
|
||||
name = reader.GetNameNoNS();
|
||||
switch(reader.GetNameNoNS())
|
||||
{
|
||||
case "id":
|
||||
um.setUserId(reader.GetTextDecodeXml());
|
||||
break;
|
||||
case "role":
|
||||
um.setRole(reader.GetTextDecodeXml());
|
||||
break;
|
||||
case "color":
|
||||
while (reader.MoveToNextAttribute())
|
||||
{
|
||||
if ("val" === reader.GetNameNoNS())
|
||||
{
|
||||
let color = new AscWord.CDocumentColor();
|
||||
color.SetFromHexColor(reader.GetValueDecodeXml());
|
||||
um.setColor(color.r, color.g, color.b);
|
||||
}
|
||||
}
|
||||
reader.ReadTillEnd();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return um;
|
||||
|
||||
Reference in New Issue
Block a user