def subscription_put(): card = flask.request.json.get('card') email = flask.request.json.get('email') cancel = flask.request.json.get('cancel') try: if cancel: response = utils.request.delete(SUBSCRIPTION_SERVER, json_data={ 'license': settings.app.license, }, ) else: response = utils.request.put(SUBSCRIPTION_SERVER, json_data={ 'license': settings.app.license, 'card': card, 'email': email, }, ) except httplib.HTTPException: return utils.jsonify({ 'error': SUBSCRIPTION_SERVER_ERROR, 'error_msg': SUBSCRIPTION_SERVER_ERROR_MSG, }, 500) if response.status_code != 200: return utils.jsonify(response.json(), response.status_code) subscription.update() return utils.jsonify(subscription.dict())
def subscription_put(): card = flask.request.json.get('card') email = flask.request.json.get('email') cancel = flask.request.json.get('cancel') try: if cancel: response = utils.request.delete( SUBSCRIPTION_SERVER, json_data={ 'license': settings.app.license, }, ) else: response = utils.request.put( SUBSCRIPTION_SERVER, json_data={ 'license': settings.app.license, 'card': card, 'email': email, }, ) except httplib.HTTPException: return utils.jsonify( { 'error': SUBSCRIPTION_SERVER_ERROR, 'error_msg': SUBSCRIPTION_SERVER_ERROR_MSG, }, 500) if response.status_code != 200: return utils.jsonify(response.json(), response.status_code) subscription.update() return utils.jsonify(subscription.dict())
def _subscription_thread(): while True: try: yield interrupter_sleep(SUBSCRIPTION_UPDATE_RATE) subscription.update() except GeneratorExit: raise except: logger.exception('Error in subscription thread', 'runners')
def subscription_get(): if settings.app.demo_mode: resp = utils.demo_get_cache() if resp: return utils.jsonify(resp) subscription.update() resp = subscription.dict() if settings.app.demo_mode: utils.demo_set_cache(resp) return utils.jsonify(resp)
def subscription_styles_get(plan, ver): try: styles = settings.local.sub_styles[plan] except KeyError: subscription.update() styles = settings.local.sub_styles[plan] return utils.styles_response( styles['etag'], styles['last_modified'], )
def subscription_styles_get(plan, ver): try: styles = settings.local.sub_styles[plan] except KeyError: subscription.update() styles = settings.local.sub_styles[plan] return utils.styles_response( styles['etag'], styles['last_modified'], styles['data'], )
def setup_host_fix(): subscription.update() if settings.app.license and settings.app.license_plan != 'premium': return from pritunl import server host_id = settings.local.host.id for svr in server.iter_servers(fields=['hosts']): if svr.hosts != [host_id]: svr.hosts = [host_id] svr.commit('hosts')
def setup_host_init_server(): subscription.update() if settings.app.license and settings.app.license_plan != 'premium': return from pritunl import server host_id = settings.local.host_id for svr in server.iter_servers(fields=['hosts']): if svr.hosts == []: svr.hosts = [host_id] svr.commit('hosts')
def subscription_put(): if settings.app.demo_mode: return utils.demo_blocked() card = flask.request.json.get('card') email = flask.request.json.get('email') plan = flask.request.json.get('plan') cancel = flask.request.json.get('cancel') try: url = 'https://app.pritunl.com/subscription' if settings.app.dedicated: url = settings.app.dedicated + '/subscription' if cancel: response = requests.delete( url, json={ 'license': settings.app.license, }, ) else: response = requests.put( url, json={ 'license': settings.app.license, 'card': card, 'plan': plan, 'email': email, }, ) except http.client.HTTPException: return utils.jsonify( { 'error': SUBSCRIPTION_SERVER_ERROR, 'error_msg': SUBSCRIPTION_SERVER_ERROR_MSG, }, 500) if response.status_code != 200: return utils.jsonify(response.json(), response.status_code) subscription.update() return utils.jsonify(subscription.dict())
def subscription_put(): # if settings.app.demo_mode: # return utils.demo_blocked() # card = flask.request.json.get('card') # email = flask.request.json.get('email') # plan = flask.request.json.get('plan') # cancel = flask.request.json.get('cancel') # try: # url = 'https://app.pritunl.com/subscription' # if settings.app.dedicated: # url = settings.app.dedicated + '/subscription' # if cancel: # response = requests.delete( # url, # json={ # 'license': settings.app.license, # }, # ) # else: # response = requests.put( # url, # json={ # 'license': settings.app.license, # 'card': card, # 'plan': plan, # 'email': email, # }, # ) # except httplib.HTTPException: # return utils.jsonify({ # 'error': SUBSCRIPTION_SERVER_ERROR, # 'error_msg': SUBSCRIPTION_SERVER_ERROR_MSG, # }, 500) # if response.status_code != 200: # return utils.jsonify(response.json(), response.status_code) subscription.update() return utils.jsonify(subscription.dict())
def subscription_put(): if settings.app.demo_mode: return utils.demo_blocked() card = flask.request.json.get('card') email = flask.request.json.get('email') plan = flask.request.json.get('plan') promo_code = flask.request.json.get('promo_code') cancel = flask.request.json.get('cancel') try: if cancel: response = requests.delete( 'https://app.pritunl.com/subscription', json={ 'license': settings.app.license, }, ) else: response = requests.put( 'https://app.pritunl.com/subscription', json={ 'license': settings.app.license, 'card': card, 'plan': plan, 'promo_code': promo_code, 'email': email, }, ) except httplib.HTTPException: return utils.jsonify({ 'error': SUBSCRIPTION_SERVER_ERROR, 'error_msg': SUBSCRIPTION_SERVER_ERROR_MSG, }, 500) if response.status_code != 200: return utils.jsonify(response.json(), response.status_code) subscription.update() return utils.jsonify(subscription.dict())
def subscription_get(): subscription.update() return utils.jsonify(subscription.dict())
def _on_msg(msg): if msg['message'] != 'updated': return subscription.update()
def start_subscription(): settings.local.sub_active = None subscription.update() threading.Thread(target=_subscription_thread).start()
def _subscription_thread(): while True: time.sleep(SUBSCRIPTION_UPDATE_RATE) subscription.update()
def _subscription_thread(): while True: yield interrupter_sleep(SUBSCRIPTION_UPDATE_RATE) subscription.update()