summaryrefslogtreecommitdiff
path: root/service/pixelated/resources/backup_account_resource.py
diff options
context:
space:
mode:
Diffstat (limited to 'service/pixelated/resources/backup_account_resource.py')
-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')