diff --git a/spaceapi/state.py b/spaceapi/state.py --- a/spaceapi/state.py +++ b/spaceapi/state.py @@ -4,6 +4,10 @@ from time import time from flask import Blueprint, jsonify, request, current_app, abort +import twitter + +import twitter + from .utils import ActiveStatus from .auth import httpauth @@ -12,6 +16,10 @@ state_views = Blueprint('state', __name_ ALLOWED_STATE_KEYS = frozenset(('open', 'lastchange', 'trigger_person', 'message')) +twitter_api = twitter.Api() + +twitter_api = twitter.Api() + @state_views.route('/set/', methods=['POST']) @httpauth.login_required @@ -28,6 +36,32 @@ def set_state(key): if key == 'open': active['state']['lastchange'] = int(time()) + if 'twitter_consumer_key' in current_app.config: + twitter_api.SetCredentials( + consumer_key=current_app.config['twitter_consumer_key'], + consumer_secret=current_app.config['twitter_consumer_secret'], + access_token_key=current_app.config['twitter_access_token_key'], + access_token_secret=current_app.config['twitter_access_token_secret'] + ) + + if value: + twitter_api.PostUpdate('The space is now open!') + else: + twitter_api.PostUpdate('The space is now closed!') + + if 'twitter_consumer_key' in current_app.config: + twitter_api.SetCredentials( + consumer_key=current_app.config['twitter_consumer_key'], + consumer_secret=current_app.config['twitter_consumer_secret'], + access_token_key=current_app.config['twitter_access_token_key'], + access_token_secret=current_app.config['twitter_access_token_secret'] + ) + + if value: + twitter_api.PostUpdate('The space is now open!') + else: + twitter_api.PostUpdate('The space is now closed!') + active.save_last_state() return jsonify(active) else: