summaryrefslogtreecommitdiff
path: root/service/pixelated/resources
diff options
context:
space:
mode:
authorthaissiqueira <thais.siqueira@thoughtworks.com>2017-03-31 18:00:43 -0300
committerGitHub <noreply@github.com>2017-03-31 18:00:43 -0300
commitf40808a147d1135e8bbee6d78306a598cf5ca647 (patch)
tree58d15414134ef5554e947348179e92e248df433b /service/pixelated/resources
parentdadf39c1574d53612410371b8b639a159841eaf5 (diff)
parent304215fe36666c8401bd9fa01a50cab61ddc10ca (diff)
Merge pull request #1040 from pixelated/email-recovery-code
[#927] Implements sending recovery code by email.
Diffstat (limited to 'service/pixelated/resources')
-rw-r--r--service/pixelated/resources/backup_account_resource.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/service/pixelated/resources/backup_account_resource.py b/service/pixelated/resources/backup_account_resource.py
index b752b4c7..f51ac2ec 100644
--- a/service/pixelated/resources/backup_account_resource.py
+++ b/service/pixelated/resources/backup_account_resource.py
@@ -15,6 +15,8 @@
# along with Pixelated. If not, see <http://www.gnu.org/licenses/>.
import os
+import json
+
from xml.sax import SAXParseException
from pixelated.resources import BaseResource
@@ -51,7 +53,9 @@ class BackupAccountResource(BaseResource):
def render_POST(self, request):
account_recovery = AccountRecovery(
self._authenticator.bonafide_session,
- self.soledad(request))
+ self.soledad(request),
+ self._service(request, '_leap_session').smtp_config,
+ self._get_backup_email(request))
def update_response(response):
request.setResponseCode(NO_CONTENT)
@@ -64,3 +68,6 @@ class BackupAccountResource(BaseResource):
d = account_recovery.update_recovery_code()
d.addCallbacks(update_response, error_response)
return NOT_DONE_YET
+
+ def _get_backup_email(self, request):
+ return json.loads(request.content.getvalue()).get('backupEmail')