Exemplo n.º 1
0
    def get_save_school(self):
        self.log(logging.INFO, "Getting school parameters")
        node = self.xml['STS_EDT'].find("./PARAMETRES/UAJ")
        try:
            school = School.objects.get(code=node.get("CODE"))
        except ObjectDoesNotExist:
            self.log(logging.INFO, "Unknown school, creating it")
            school = School()
            school.code = node.get("CODE")
            academy_code = node.find("./ACADEMIE/CODE").text
            try:
                academy = Academy.objects.get(code=academy_code)
            except ObjectDoesNotExist:
                academy = Academy(code=academy_code,
                                   title=node.find("./ACADEMIE/LIBELLE"))
                academy.save()
            school.academy = academy
            sigle = self._gtb(node, "SIGLE", "")
            denomp = self._gtb(node, "DENOM_PRINC", "")
            denomc = self._gtb(node, "DENOM_COMPL", "")
            school.shortname = "%s %s" % (sigle, denomc)
            school.fullname = "%s %s" % (denomp, denomc)
            school.categ = self._gtb(node, "CODE_CATEGORIE", "")
            school.address = self._gtb(node, "ADRESSE", "")
            school.city = self._gtb(node, "COMMUNE", "")
            school.postcode = self._gtb(node, "CODE_POSTAL", "")
            school.pobox = self._gtb(node, "BOITE_POSTALE", "")
            school.cedex = (self._gtb(node, "CEDEX", "N") == "O")
            school.phone = self._gtb(node, "TELEPHONE", "")
            school.status = self._gtb(node, "STATUT", "")
            school.save()
            self.log(logging.INFO, "New school created")

        self.school = school