blob: 18e1c930f5c5fbc7e25dec75132f11201be4b9af [file] [log] [blame]
#!/usr/bin/env python3
import os
import sys
from datetime import datetime, timedelta
from ping_file_path import ping_filepath
def not_being_called():
cookies = {}
expires = datetime.utcnow() - timedelta(seconds=60)
if 'HTTP_COOKIE' in os.environ:
header_cookies = os.environ['HTTP_COOKIE']
header_cookies = header_cookies.split('; ')
for cookie in header_cookies:
cookie = cookie.split('=')
sys.stdout.write('Set-Cookie: {}=deleted; expires={} GMT; Max-Age=0; path=/\r\n'.format(cookie[0], expires.strftime('%a, %d-%b-%Y %H:%M:%S')))
sys.stdout.write('Content-Type: text/html\r\n\r\n')
def save_ping(is_being_called):
ping_file = open('{}.tmp'.format(ping_filepath), 'w')
cookies_found = False
for name in os.environ.keys():
if name == 'HTTP_HOST':
ping_file.write('{}: {}\n'.format(name, os.environ.get(name)))
elif name == 'REQUEST_URI':
uri = os.environ.get(name)
if is_being_called:
uri = '/contentextensions/resources/save-ping.py?{}'.format(uri.split('?')[-1])
ping_file.write('{}: {}\n'.format(name, uri))
else:
ping_file.write('{}: {}\n'.format(name, uri))
elif name == 'HTTP_COOKIE':
ping_file.write('Cookies in ping: {}\n'.format(os.environ.get(name)))
cookies_found = True
if not cookies_found:
ping_file.write('No cookies in ping.\n')
ping_file.close()
if os.path.isfile('{}.tmp'.format(ping_filepath)):
os.rename('{}.tmp'.format(ping_filepath), ping_filepath)
if not is_being_called:
not_being_called()