'Invalid request')); die(); } /* Decrypt body */ // TODO enable //$crypt = new CryptoHelper(SNAP_IV, SNAP_KEY); //$body = $crypt->decrypt($body); $data = (array) json_decode($body); if($data === NULL) { set_response_code(400); echo json_encode(array('error' => 'Can\'t decode body')); die(); } /* Validate supplied data */ $required_keys = array('firstname', 'lastname', 'phone', 'email'); foreach($required_keys as $key) { if(!array_key_exists($key, $data)) { set_response_code(400); echo json_encode(array('error' => 'missing required field \''.$key.'\'')); die(); } } // TODO validate phonenumber // TODO validate email // TODO look at getUseridFromPhone in inside/functions.php // TODO when $fromSnappOrder is sent to User-constructor... // ...then work around requirements for username, password, birthdate, address /* Create user */ //$new_user = new User(NULL, $data); /* Get and format user */ //$user = get_user($new_user->id); /* Add back phone number from query */ //$user['phone'] = $phone; /* Return encrypted user object */ //echo json_encode($user); //echo $crypt->encrypt(json_encode($user)); ?>