function exportXML()
 {
     global $i18n, $ClassDir;
     require_once 'XML/Util.php';
     require_once $ClassDir . 'StringHelper.class.php';
     $header = array("name", "gender", "birthday", "mobile", "phone", "office_phone", "fax", "addrees", "category", "email", "homepage");
     $filename = date("Y_m_d") . "_contact_export.xml";
     $xml_data = "";
     $xml = new XML_Util();
     $xml_data .= $xml->getXMLDeclaration("1.0", "UTF-8") . "\n";
     $xml_data .= "" . $xml->createStartElement("contact") . "\n";
     //		Write contact record
     $apf_contact = DB_DataObject::factory('ApfContact');
     $apf_contact->orderBy('id desc');
     $apf_contact->find();
     while ($apf_contact->fetch()) {
         $xml_data .= "\t" . $xml->createStartElement("record") . "\n";
         foreach ($header as $title) {
             $coloum_function = "get" . StringHelper::CamelCaseFromUnderscore($title);
             $tag = array("qname" => $title, "content" => $apf_contact->{$coloum_function}());
             $xml_data .= "\t\t" . $xml->createTagFromArray($tag) . "\n";
         }
         $xml_data .= "\t" . $xml->createEndElement("record") . "\n";
     }
     $xml_data .= "" . $xml->createEndElement("contact") . "\n";
     $xml->send($xml_data, $filename);
     exit;
 }