Changeset 8cae994
- Timestamp:
- 10/17/11 11:59:52 (20 months ago)
- Branches:
- master, crem, crem2, dev, dev2, diadems, forma, generic, instru_search, lam, nlivemulti, production, release/1.4.4, security, social, storage, test, video
- Children:
- 2959f8a
- Parents:
- c664814
- git-author:
- yomguy <yomguy@…> (10/17/11 11:59:52)
- git-committer:
- yomguy <yomguy@…> (10/17/11 11:59:52)
- Location:
- telemeta
- Files:
-
- 5 edited
-
interop/oai.py (modified) (2 diffs)
-
models/dublincore.py (modified) (5 diffs)
-
models/location.py (modified) (1 diff)
-
urls.py (modified) (1 diff)
-
web/base.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
telemeta/interop/oai.py
rfac4a3b r8cae994 409 409 container.appendChild(self.make_record(id, dc, ctime)) 410 410 411 def format_id_header(self, id): 412 organization = self.identity[0][1] 413 if 'http' in id: 414 return ':'.join(['oai', organization.lower(), 'items', id.split('/')[-1]]) 415 else: 416 return id 417 411 418 def list_records(self, from_time, until_time, token = None, ids_only = False): 412 419 """Append ListIdentifiers or ListRecords result""" … … 457 464 dc, ctime = item 458 465 id, dc = self.parse_dc(dc) 466 id = self.format_id_header(id) 459 467 if id == None: 460 468 raise Exception("DataSource.list_records() didn't provide an 'identifier' dublin core element") -
telemeta/models/dublincore.py
ra0b0f45 r8cae994 163 163 164 164 resource = Resource( 165 Element('record_identifier', collection.public_id, related=collection), 165 166 Element('identifier', media_identifier(collection), related=collection), 166 167 Element('type', 'Collection'), … … 214 215 215 216 resource = Resource( 217 Element('record_identifier', item.public_id, related=item), 216 218 Element('identifier', media_identifier(item), related=item), 217 219 Element('type', 'Sound'), … … 227 229 date, 228 230 Date(item.collection.year_published, refinement='issued'), 229 Element.multiple('coverage', item.location and item.location. fullnames(), 'spatial'),231 Element.multiple('coverage', item.location and item.location.listnames(), 'spatial'), 230 232 Element('coverage', item.location_comment, 'spatial'), 231 233 Element('rights', item.collection.legal_rights, 'license'), … … 249 251 def lookup_resource(media_id): 250 252 try: 251 type, code = media_id.split(':', 1) 253 id = media_id.split(':') 254 type = id[-2] 255 code = id[-1] 252 256 except ValueError: 253 257 raise MalformedMediaIdentifier("Media identifier must be in type:code format") 254 258 255 if (type == 'collection') :259 if (type == 'collection') or (type == 'collections'): 256 260 try: 257 261 return MediaCollection.objects.get(code=code) 258 262 except MediaCollection.DoesNotExist: 259 263 return None 260 elif (type == 'item') :264 elif (type == 'item') or (type == 'items'): 261 265 try: 262 266 return MediaItem.objects.get(code=code) … … 265 269 return MediaItem.objects.get(old_code=code) 266 270 except MediaItem.DoesNotExist: 267 return None 271 try: 272 return MediaItem.objects.get(id=code) 273 except MediaItem.DoesNotExist: 274 return None 268 275 else: 269 276 raise MalformedMediaIdentifier("No such type in media identifier: " + type) -
telemeta/models/location.py
r9acae9b r8cae994 145 145 names.append(u', '.join([unicode(l) for l in path])) 146 146 return names 147 148 def listnames(self): 149 names = [] 150 for path in self.paths(): 151 for l in path: 152 names.append(unicode(l)) 153 return names 147 154 148 155 class LocationType(ModelCore): -
telemeta/urls.py
ra313776 r8cae994 238 238 239 239 # Authentication 240 url(r'^login/$', ' django.contrib.auth.views.login', {'template_name': 'telemeta/login.html'},240 url(r'^login/$', 'ipauth.views.login', {'template_name': 'telemeta/login.html'}, 241 241 name="telemeta-login"), 242 242 url(r'^logout/$', general_view.logout, name="telemeta-logout"), -
telemeta/web/base.py
rc664814 r8cae994 205 205 host = request.META['HTTP_HOST'] 206 206 datasource = TelemetaOAIDataSource() 207 repository_name = settings.TELEMETA_ DESCRIPTION207 repository_name = settings.TELEMETA_ORGANIZATION 208 208 url = 'http://' + host + request.path 209 209 admin = settings.ADMINS[0][1]
Note: See TracChangeset
for help on using the changeset viewer.
