def __init__(self, options={}): self._astra = Client(settings.ASTRA_WSDL, transport=HTTPSTransportV3()) # prepare to map spans of control to campus and college resource values self._campuses = get_all_campuses() self._colleges = get_all_colleges() self._pid = os.getpid() self._log = getLogger(__name__) self._re_non_academic_code = re.compile(r'^canvas_([0-9]+)$') self._canvas_ids = {} self._verbosity = int(options.get('verbosity', 0))
def build(self, **kwargs): root_id = getattr(settings, 'SIS_IMPORT_ROOT_ACCOUNT_ID', None) for campus in get_all_campuses(): campus_id = account_sis_id([root_id, campus.label]) self.data.add(AccountCSV(campus_id, root_id, campus)) for college in get_all_colleges(): college_id = account_sis_id( [root_id, college.campus_label, college.name]) campus_id = account_sis_id([root_id, college.campus_label]) self.data.add(AccountCSV(college_id, campus_id, college)) for department in get_departments_by_college(college): dept_id = account_sis_id([ root_id, college.campus_label, college.name, department.label ]) self.data.add(AccountCSV(dept_id, college_id, department)) for curriculum in get_curricula_by_department( department, future_terms=2, view_unpublished=True): curr_id = account_sis_id([ root_id, college.campus_label, college.name, department.label, curriculum.label ]) if self.data.add(AccountCSV(curr_id, dept_id, curriculum)): # Update the Curriculum model for this curriculum try: model = Curriculum.objects.get( curriculum_abbr=curriculum.label) except Curriculum.DoesNotExist: model = Curriculum( curriculum_abbr=curriculum.label) model.full_name = account_name(curriculum) model.subaccount_id = curr_id model.save() return self._write()
def build(self, **kwargs): root_id = getattr(settings, 'SIS_IMPORT_ROOT_ACCOUNT_ID', None) for campus in get_all_campuses(): campus_id = account_sis_id([root_id, campus.label]) self.data.add(AccountCSV(campus_id, root_id, campus)) for college in get_all_colleges(): college_id = account_sis_id([root_id, college.campus_label, college.name]) campus_id = account_sis_id([root_id, college.campus_label]) self.data.add(AccountCSV(college_id, campus_id, college)) for department in get_departments_by_college(college): dept_id = account_sis_id([root_id, college.campus_label, college.name, department.label]) self.data.add(AccountCSV(dept_id, college_id, department)) for curriculum in get_curricula_by_department( department, future_terms=2): curr_id = account_sis_id([root_id, college.campus_label, college.name, department.label, curriculum.label]) if self.data.add(AccountCSV(curr_id, dept_id, curriculum)): # Update the Curriculum model for this curriculum try: model = Curriculum.objects.get( curriculum_abbr=curriculum.label) except Curriculum.DoesNotExist: model = Curriculum( curriculum_abbr=curriculum.label) model.full_name = account_name(curriculum) model.subaccount_id = curr_id model.save() return self._write()
def __init__(self): self._re_sis = re.compile(r'^%s:(%s)(:[^:]+){0,3}$' % ( settings.SIS_IMPORT_ROOT_ACCOUNT_ID, '|'.join([c.label.lower() for c in get_all_campuses()]))) self._log = getLogger(__name__)