mirror of
https://github.com/ail-project/ail-framework.git
synced 2025-01-18 16:36:13 +00:00
75 lines
2.4 KiB
Python
Executable file
75 lines
2.4 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
# -*-coding:UTF-8 -*
|
|
|
|
import os
|
|
import sys
|
|
|
|
sys.path.append(os.environ['AIL_HOME'])
|
|
##################################
|
|
# Import Project packages
|
|
##################################
|
|
from update.bin.ail_updater import AIL_Updater
|
|
from lib import ail_users
|
|
from lib import crawlers
|
|
from lib import Investigations
|
|
from lib import Tracker
|
|
|
|
def _fix_user_lowercase():
|
|
r_tracking = Investigations.r_tracking
|
|
r_tracker = Tracker.r_tracker
|
|
r_crawler = crawlers.r_crawler
|
|
|
|
for user_id in ail_users.get_users():
|
|
l_user_id = user_id.lower()
|
|
if user_id != l_user_id:
|
|
print(f'Updating {user_id} ...')
|
|
ail_users.kill_session_user(user_id)
|
|
|
|
# Investigations
|
|
for investigation_uuid in Investigations.get_user_all_investigations(user_id):
|
|
r_tracking.srem(f'investigations:user:{user_id}', investigation_uuid)
|
|
r_tracking.sadd(f'investigations:user:{l_user_id}', investigation_uuid)
|
|
r_tracking.hset(f'investigations:data:{investigation_uuid}', 'creator_user', l_user_id)
|
|
|
|
# Trackers
|
|
for tracker_uuid in Tracker.get_user_trackers(user_id):
|
|
tracker = Tracker.Tracker(tracker_uuid)
|
|
tracker_type = tracker.get_type()
|
|
|
|
r_tracker.rename(f'user:tracker:{user_id}:{tracker_type}', f'user:tracker:{l_user_id}:{tracker_type}')
|
|
r_tracker.rename(f'user:tracker:{user_id}', f'user:tracker:{l_user_id}')
|
|
|
|
# creator
|
|
r_tracker.hset(f'tracker:{tracker_uuid}', 'user_id', l_user_id)
|
|
|
|
try:
|
|
r_tracker.rename(f'trackers:user:{user_id}', f'trackers:user:{l_user_id}')
|
|
except Exception:
|
|
pass
|
|
|
|
# Cookiejar
|
|
for cookiejar_uuid in crawlers.get_cookiejars_user(user_id):
|
|
cookiejar = crawlers.Cookiejar(cookiejar_uuid)
|
|
# creator
|
|
cookiejar._set_user(l_user_id)
|
|
|
|
try:
|
|
r_crawler.rename(f'cookiejars:user:{user_id}', f'cookiejars:user:{l_user_id}')
|
|
except Exception:
|
|
pass
|
|
|
|
# ail_user
|
|
ail_users._fix_user_lowercase(user_id)
|
|
|
|
|
|
class Updater(AIL_Updater):
|
|
"""default Updater."""
|
|
|
|
def __init__(self, version):
|
|
super(Updater, self).__init__(version)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
_fix_user_lowercase()
|
|
# updater = Updater('v6.0.1')
|
|
# updater.run_update()
|