summaryrefslogtreecommitdiff
path: root/src/utils/xml.cpp
diff options
context:
space:
mode:
authorYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2010-07-30 13:12:03 +0200
committerYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2010-07-30 13:12:03 +0200
commita6339282371856e3f0df7712644dbd53c6c13cf8 (patch)
treedd4c87919cc395141c1ef91ab2c5936225478724 /src/utils/xml.cpp
parent151f6acdee17556d249e1b61f264ed2e95b84354 (diff)
parentb176a462662c719cca6d9d444ff1c5892c7c77d3 (diff)
downloadmanaserv-a6339282371856e3f0df7712644dbd53c6c13cf8.tar.gz
manaserv-a6339282371856e3f0df7712644dbd53c6c13cf8.tar.bz2
manaserv-a6339282371856e3f0df7712644dbd53c6c13cf8.tar.xz
manaserv-a6339282371856e3f0df7712644dbd53c6c13cf8.zip
Merge branch 'master' of gitorious.org:mana/manaserv
Conflicts: src/game-server/itemmanager.cpp
Diffstat (limited to 'src/utils/xml.cpp')
-rw-r--r--src/utils/xml.cpp29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/utils/xml.cpp b/src/utils/xml.cpp
index 659f928b..8bc9ebef 100644
--- a/src/utils/xml.cpp
+++ b/src/utils/xml.cpp
@@ -96,6 +96,35 @@ namespace XML
return mDoc ? xmlDocGetRootElement(mDoc) : 0;
}
+ bool hasProperty(xmlNodePtr node, const char *name)
+ {
+ xmlChar *prop = xmlGetProp(node, BAD_CAST name);
+ if (prop)
+ {
+ xmlFree(prop);
+ return true;
+ }
+
+ return false;
+ }
+
+ bool getBoolProperty(xmlNodePtr node, const char *name, bool def)
+ {
+ bool ret = def;
+ xmlChar *prop = xmlGetProp(node, BAD_CAST name);
+ if (prop)
+ {
+ if (xmlStrEqual(prop, BAD_CAST "true")
+ ||xmlStrEqual(prop, BAD_CAST "yes"))
+ ret = true;
+ if (xmlStrEqual(prop, BAD_CAST "false")
+ ||xmlStrEqual(prop, BAD_CAST "no"))
+ ret = false;
+ xmlFree(prop);
+ }
+ return ret;
+ }
+
int getProperty(xmlNodePtr node, const char *name, int def)
{
int &ret = def;