def __init__(self):
    fail_vals = ['M', 'N', '-1', '-2']
    grade_level_fail_vals = fail_vals + ['UG', '00']
    
    def unicode_str(s):
      return s.decode('utf8', 'ignore')
    
    def ccd_str(s):
      if s in fail_vals:
        return None
      
      return unicode_str(s)
    
    def ccd_int(s):
      if s in fail_vals:
        return None
      
      return int(s)
    
    def lat_lon(s):
      lat, lon = [float(v) for v in s.split(',')]
      return db.GeoPt(lat, lon)
    
    def grade_range(s):
      def _grade_level(v):
        if v == 'PK':
          return -1
        elif v == 'KG':
          return 0
        elif v in grade_level_fail_vals:
          return None

        return int(v)
      
      lo, hi = [_grade_level(v) for v in s.split(',')]
      return range(lo, hi + 1) if lo is not None and hi is not None else []
    
    dummy = lambda x: None
    
    Loader.__init__(self, 'PublicSchool',
                    [('school_id', unicode_str),
                     ('name', unicode_str),
                     ('address', ccd_str),
                     ('city', ccd_str),
                     ('state', ccd_str),
                     ('zip_code', ccd_int),
                     ('_dummy', dummy), # skip zip+4
                     ('enrollment', ccd_int),
                     ('phone_number', ccd_str),
                     ('locale_code', ccd_int),
                     ('school_type', ccd_int),
                     ('school_level', ccd_int),
                     ('grades_taught', grade_range), # set grade levels
                     ('_dummy', dummy), # skip highest_grade_level
                     ('location', lat_lon), # set lat and lon
                     ('_dummy', dummy), # skip longitude
                     ('_dummy', dummy), # skip accuracy
                     ])
Example #2
0
 def __init__(self):
     str_to_text = lambda x: x.decode('utf-8')
     str_to_date = lambda x: datetime.strptime(x, '%m %d %Y %H:%M')
     
     Loader.__init__(self, 'Article',
                     [('title', str_to_text),
                      ('description', str_to_text),
                      ('cut', str_to_text),
                      ('text', str_to_text),
                      ('modified', str_to_date)
                     ])
Example #3
0
    def __init__(self):
        fail_vals = ['M', 'N', '-1', '-2']
        grade_level_fail_vals = fail_vals + ['UG', '00']

        def unicode_str(s):
            return s.decode('utf8', 'ignore')

        def ccd_str(s):
            if s in fail_vals:
                return None

            return unicode_str(s)

        def ccd_int(s):
            if s in fail_vals:
                return None

            return int(s)

        def lat_lon(s):
            lat, lon = [float(v) for v in s.split(',')]
            return db.GeoPt(lat, lon)

            lo, hi = [_grade_level(v) for v in s.split(',')]
            return range(lo, hi +
                         1) if lo is not None and hi is not None else []

        dummy = lambda x: None

        Loader.__init__(
            self,
            'Listing',
            [
                ('id', unicode_str),
                ('title', unicode_str),
                ('comments', unicode_str),
                ('mainPhoto', unicode_str),
                ('address', ccd_str),
                ('city', ccd_str),
                ('state', ccd_str),
                ('zip_code', ccd_int),
                ('_dummy', dummy),  # skip zip+4
                ('price', ccd_int),
                ('phone_number', ccd_str),
                ('locale_code', ccd_int),
                ('property_type', ccd_int),
                ('school_level', ccd_int),
                ('_dummy', dummy),  # skip highest_grade_level
                ('location', lat_lon),  # set lat and lon
                ('_dummy', dummy),  # skip longitude
                ('_dummy', dummy),  # skip accuracy
            ])
Example #4
0
 def __init__(self):
     str_to_text = lambda x: x.decode('utf-8')
     str_to_date = lambda x: datetime.strptime(x, '%m %d %Y %H:%M')
     
     Loader.__init__(self, 'Uzver',
                     [('first_name', str_to_text),
                      ('last_name', str_to_text),
                      ('nick_name', str_to_text),
                      ('email', str_to_text),
                      ('password', str_to_text),
                      ('avatar', str_to_text),
                      ('created', str_to_date)
                     ])
Example #5
0
  def __init__(self):
    fail_vals = ['M', 'N', '-1', '-2']
    grade_level_fail_vals = fail_vals + ['UG', '00']
    
    def unicode_str(s):
      return s.decode('utf8', 'ignore')
    
    def ccd_str(s):
      if s in fail_vals:
        return None
      
      return unicode_str(s)
    
    def ccd_int(s):
      if s in fail_vals:
        return None
      
      return int(s)
    
    def lat_lon(s):
      lat, lon = [float(v) for v in s.split(',')]
      return db.GeoPt(lat, lon)
      
      lo, hi = [_grade_level(v) for v in s.split(',')]
      return range(lo, hi + 1) if lo is not None and hi is not None else []
    
    dummy = lambda x: None
    
    Loader.__init__(self, 'Listing',
                    [('id', unicode_str),
                     ('title', unicode_str),
					 ('comments', unicode_str),
					 ('mainPhoto', unicode_str),
                     ('address', ccd_str),
                     ('city', ccd_str),
                     ('state', ccd_str),
                     ('zip_code', ccd_int),
                     ('_dummy', dummy), # skip zip+4
                     ('price', ccd_int),
                     ('phone_number', ccd_str),
                     ('locale_code', ccd_int),
                     ('property_type', ccd_int),
                     ('school_level', ccd_int),
                     ('_dummy', dummy), # skip highest_grade_level
                     ('location', lat_lon), # set lat and lon
                     ('_dummy', dummy), # skip longitude
                     ('_dummy', dummy), # skip accuracy
                     ])
Example #6
0
	def __init__(self):
		Loader.__init__(self, 'DialysisCenter',
		                                   [('location_id', self.trim_str),
		                                    ('name', self.trim_str),
		                                    ('address', self.trim_str),
											('address2', self.trim_str),
											('city', self.trim_str),
											('state', self.trim_str),
											('zip_code', self.trim_str),
											('phone', self.trim_str),
											('owner', self.trim_str),
											('hemo', self.trim_str),
											('pd', self.trim_str),
											('location_id_geo_ref', self.trim_str),
											('location', self.lat_lon),
											('geoboxes', self.geo_box),
		                                   ])
Example #7
0
	def __init__(self):
		Loader.__init__(self, 'HospitalInfo',
		                                   [('hospital_id', self.trim_str),
		                                    ('name', self.trim_str),
		                                    ('address', self.trim_str),
											('address2', self.trim_str),
											('address3', self.trim_str),
											('city', self.trim_str),
											('state', self.trim_str),
											('zip_code', self.trim_str),
											('county', self.trim_str),
											('phone', self.trim_str),
											('hospital_type', self.trim_str),
											('hospital_owner', self.trim_str),
											('emergency_service', self.trim_str),
											('hospital_id_geo_ref', self.trim_str),
											('location', self.lat_lon),
											('geoboxes', self.geo_box),
		                                   ])
    def __init__(self):
        fail_vals = ['M', 'N', '-1', '-2']
        grade_level_fail_vals = fail_vals + ['UG', '00']

        def unicode_str(s):
            return s.decode('utf8', 'ignore')

        def ccd_str(s):
            if s in fail_vals:
                return None

            return unicode_str(s)

        def ccd_int(s):
            if s in fail_vals:
                return None

            return int(s)

        def lat_lon(s):
            lat, lon = [float(v) for v in s.split(',')]
            return db.GeoPt(lat, lon)

        def grade_range(s):
            def _grade_level(v):
                if v == 'PK':
                    return -1
                elif v == 'KG':
                    return 0
                elif v in grade_level_fail_vals:
                    return None

                return int(v)

            lo, hi = [_grade_level(v) for v in s.split(',')]
            return range(lo, hi +
                         1) if lo is not None and hi is not None else []

        dummy = lambda x: None

        Loader.__init__(
            self,
            'PublicSchool',
            [
                ('school_id', unicode_str),
                ('name', unicode_str),
                ('address', ccd_str),
                ('city', ccd_str),
                ('state', ccd_str),
                ('zip_code', ccd_int),
                ('_dummy', dummy),  # skip zip+4
                ('enrollment', ccd_int),
                ('phone_number', ccd_str),
                ('locale_code', ccd_int),
                ('school_type', ccd_int),
                ('school_level', ccd_int),
                ('grades_taught', grade_range),  # set grade levels
                ('_dummy', dummy),  # skip highest_grade_level
                ('location', lat_lon),  # set lat and lon
                ('_dummy', dummy),  # skip longitude
                ('_dummy', dummy),  # skip accuracy
            ])
Example #9
0
	def __init__(self):
		Loader.__init__(self, 'HospitalCondition',
		                                   [('hospital_id', self.trim_str),
		                                    ('condition', self.trim_str),
											('score', self.trim_str)
		                                   ])