$faqInstance = new PMF_Instance($faqConfig);
 $instanceId = $faqInstance->addInstance($data);
 $faqInstanceClient = new PMF_Instance_Client($faqConfig);
 $faqInstanceClient->createClient($faqInstance);
 $urlParts = parse_url($data['url']);
 $hostname = $urlParts['host'];
 if ($faqInstanceClient->createClientFolder($hostname)) {
     $clientDir = PMF_ROOT_DIR . '/multisite/' . $hostname;
     $clientSetup = new PMF_Instance_Setup();
     $clientSetup->setRootDir($clientDir);
     $faqInstanceClient->copyConstantsFile($clientDir . '/constants.php');
     $faqInstanceClient->copyLdapConstantsFile($clientDir . '/constants_ldap.php');
     $dbSetup = array('dbServer' => $DB['server'], 'dbUser' => $DB['user'], 'dbPassword' => $DB['password'], 'dbDatabaseName' => $DB['db'], 'dbPrefix' => substr($hostname, 0, strpos($hostname, '.')), 'dbType' => $DB['type']);
     $clientSetup->createDatabaseFile($dbSetup, '');
     $faqInstanceClient->setClientUrl('http://' . $hostname);
     $faqInstanceClient->createClientTables($dbSetup['dbPrefix']);
     PMF_Db::setTablePrefix($dbSetup['dbPrefix']);
     // add admin account and rights
     $instanceAdmin = new PMF_User($faqConfig);
     $instanceAdmin->createUser($admin, $password, 1);
     $instanceAdmin->setStatus('protected');
     $instanceAdminData = array('display_name' => '', 'email' => $email);
     $instanceAdmin->setUserData($instanceAdminData);
     // Add anonymous user account
     $clientSetup->createAnonymousUser($faqConfig);
     PMF_Db::setTablePrefix($DB['prefix']);
 } else {
     $faqInstance->removeInstance($instanceId);
     $payload = array('error' => 'Cannot create instance.');
 }
 if (0 !== $instanceId) {