version 0.2.11
[fms.git] / src / freenet / boardlistxml.cpp
index 4307c71..3de52f0 100644 (file)
@@ -13,7 +13,13 @@ void BoardListXML::AddBoard(const std::string &name, const std::string &descript
 {\r
        if(name!="" && description!="")\r
        {\r
-               m_boards.push_back(board(name,description));\r
+               std::string lowername=name;\r
+               StringFunctions::LowerCase(lowername,lowername);\r
+               if(lowername.size()>40)\r
+               {\r
+                       lowername.erase(40);\r
+               }\r
+               m_boards.push_back(board(lowername,description));\r
        }\r
 }\r
 \r
@@ -54,9 +60,11 @@ std::string BoardListXML::GetXML()
 \r
        for(std::vector<board>::iterator i=m_boards.begin(); i!=m_boards.end(); i++)\r
        {\r
+               std::string boardname=(*i).m_name;\r
+               StringFunctions::LowerCase(boardname,boardname);\r
                TiXmlElement *tr=new TiXmlElement("Board");\r
                tid->LinkEndChild(tr);\r
-               tr->LinkEndChild(XMLCreateCDATAElement("Name",(*i).m_name));\r
+               tr->LinkEndChild(XMLCreateCDATAElement("Name",boardname));\r
                tr->LinkEndChild(XMLCreateCDATAElement("Description",(*i).m_description));\r
        }\r
 \r
@@ -95,6 +103,11 @@ const bool BoardListXML::ParseXML(const std::string &xml)
                        if(txt)\r
                        {\r
                                name=txt->ValueStr();\r
+                               StringFunctions::LowerCase(name,name);\r
+                               if(name.size()>40)\r
+                               {\r
+                                       name.erase(40);\r
+                               }\r
                        }\r
                        txt=hnd2.FirstChild("Description").FirstChild().ToText();\r
                        if(txt)\r