void parseConfig(String directory, String fileName) {
		if (!setupParsing(directory, fileName)) {
			data.logerror("Error opening " + fileName);
			return;
		}

		String sephiadir = "", logdir = "", dataFileName = "", usersFileName = "";
		
		NodeList groupNodes = document.getDocumentElement().getChildNodes();

		for (int i = 0; i < groupNodes.getLength(); i++) {
			Node node = groupNodes.item(i);
			if (parseConfigGlobal(node, -1, -1))
				continue;
			else if (node.getNodeName().equals("Logdir")) {
				logdir = node.getChildNodes().item(0).getNodeValue();
				continue;
			} else if (node.getNodeName().equals("Sephiadir")) {
				sephiadir = node.getChildNodes().item(0).getNodeValue();
				continue;
			} else if (node.getNodeName().equals("DataFileName")) {
				dataFileName = node.getChildNodes().item(0).getNodeValue();
				continue;
			} else if (node.getNodeName().equals("UsersFileName")) {
				usersFileName = node.getChildNodes().item(0).getNodeValue();
				continue;
			} else if (node.getNodeName().equals("Blacklist")) {
				data.addToBlacklist(node.getChildNodes().item(0).getNodeValue());
				continue;
			} else if (node.getNodeName().equals("Server")) {
				parseConfigServer(node);
				continue;
			}
		}

		data.setGlobals(sephiadir, logdir, dataFileName, usersFileName);
	}