function snapRegisterNewUser($snapDbConn, $data) { global $APPCONFIG; $email = $data['emailaddress']; $username = $data['username']; $password = $data['password']; if (empty($username) || empty($password) || empty($email)) { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][103]); } //validate email address format $ret = snapValidateEmailAddress($email); if (empty($ret)) { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][105]); } //check if already registered $ret = snapCheckIsAlreadyRegistered($snapDbConn, $email); if ($ret == '-1') { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][102]); } elseif (empty($ret)) { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][106]); } //add new user to xmpp $ret = snapRegisterNewXmppUser($email); if (empty($ret)) { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][102]); } $userData = array('username' => $username, 'password' => md5($password), 'emailaddress' => $email, 'xmppuserid' => $ret['xmppuserid'], 'xmpppasswd' => $ret['xmpppasswd']); //add user to snap database $ret = snapRegisterNewUserDatabase($snapDbConn, $userData); if (empty($ret)) { return array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][102]); } //snap send email verification email $ret = snapSendVerificationEmailLink($snapDbConn, $email); return array('type' => 'success', 'descr' => 'User added successfully'); }
snapSendResponse($resp); break; case 'snapRejectInvite': $resp = snapRejectInvite($snapDbConn, $data); snapSendResponse($resp); break; case 'snapSendChangePasswordLink': $resp = snapSendChangePasswordLink($snapDbConn, $data); snapSendResponse($resp); break; case 'snapSavePassword': $resp = snapSavePassword($snapDbConn, $data); snapSendResponse($resp); break; case 'snapSendVerificationEmailLink': $resp = snapSendVerificationEmailLink($snapDbConn); snapSendResponse($resp); break; case 'snapSendFeedback': $resp = snapSendFeedback($snapDbConn, $data); snapSendResponse($resp); break; case 'snapGetPreviousChatMessages': $tigaseDbConn = snapCreateDbConnect('tigasedb'); if (!$tigaseDbConn) { $resp = array('type' => 'failed', 'descr' => $APPCONFIG['ERROR'][102]); snapSendResponse($resp); return; } $resp = snapGetPreviousChatMessages($tigaseDbConn, $data); snapSendResponse($resp);