Added aliases

implements bp member-directory

Change-Id: I66a26ec3e7e4338b7058481396bb1eb61ec38091
This commit is contained in:
pkholkin
2014-04-15 14:41:33 +04:00
parent b97cad075a
commit 4b3854c6a6
6 changed files with 215 additions and 87 deletions

View File

@@ -172,6 +172,45 @@ def _update_records(runtime_storage_inst, sources_root):
record_processor_inst.update(release_index)
def _get_changed_member_records(runtime_storage_inst, record_processor_inst):
for record in runtime_storage_inst.get_all_records():
if record['record_type'] == 'member' and 'company_name' in record:
company_draft = record['company_draft']
company_name = record_processor_inst.domains_index.get(
company_draft) or company_draft
if company_name != record['company_name']:
record['company_name'] = company_name
yield record
def _update_members_company_name(runtime_storage_inst):
LOG.debug('Update company names for members')
record_processor_inst = record_processor.RecordProcessor(
runtime_storage_inst)
member_iterator = _get_changed_member_records(runtime_storage_inst,
record_processor_inst)
for record in member_iterator:
company_name = record['company_name']
user = utils.load_user(runtime_storage_inst, record['user_id'])
user['companies'] = [{
'company_name': company_name,
'end_date': 0,
}]
user['company_name'] = company_name
utils.store_user(runtime_storage_inst, user)
LOG.debug('Company name changed for user %s', user)
record_id = record['record_id']
runtime_storage_inst.memcached.set(
runtime_storage_inst._get_record_name(record_id), record)
runtime_storage_inst._commit_update(record_id)
def process(runtime_storage_inst, default_data, sources_root, force_update):
LOG.debug('Process default data')
@@ -183,3 +222,4 @@ def process(runtime_storage_inst, default_data, sources_root, force_update):
if dd_changed or force_update:
_store_default_data(runtime_storage_inst, default_data)
_update_records(runtime_storage_inst, sources_root)
_update_members_company_name(runtime_storage_inst)

View File

@@ -430,7 +430,6 @@ class RecordProcessor(object):
self._update_record_and_user(record)
record['company_name'] = company_name
user = utils.load_user(self.runtime_storage_inst, user_id)
del record['author_email']
user['user_name'] = record['author_name']
user['companies'] = [{