Changeset 451866d
- Timestamp:
- 10/18/11 21:18:51 (19 months ago)
- Branches:
- master, crem, crem2, dev, diadems, forma, generic, instru_search, lam, nlivemulti, production, release/1.4.4, security, social, storage, test
- Children:
- 994ebb4
- Parents:
- fd2dd02 (diff), 86d17e9 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - git-author:
- yomguy <yomguy@…> (10/18/11 21:18:51)
- git-committer:
- yomguy <yomguy@…> (10/18/11 21:18:51)
- Files:
-
- 6 added
- 6 edited
-
telemeta/interop/oai.py (modified) (2 diffs)
-
telemeta/models/dublincore.py (modified) (5 diffs)
-
telemeta/models/location.py (modified) (1 diff)
-
telemeta/models/media.py (modified) (2 diffs)
-
telemeta/urls.py (modified) (1 diff)
-
telemeta/web/base.py (modified) (4 diffs)
-
.bzrignore (added)
-
telemeta/htdocs/timeside/js/controller.js (added)
-
telemeta/htdocs/timeside/js/core.js (added)
-
telemeta/htdocs/timeside/js/markerlist.js (added)
-
telemeta/htdocs/timeside/js/soundprovider.js (added)
-
telemeta/htdocs/timeside/js/util.js (added)
Legend:
- Unmodified
- Added
- Removed
-
telemeta/interop/oai.py
rfac4a3b r289a4a3 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 id = id.split('/')[-1] 415 return ':'.join(['oai', organization.lower(), 'items', id]) 416 411 417 def list_records(self, from_time, until_time, token = None, ids_only = False): 412 418 """Append ListIdentifiers or ListRecords result""" … … 457 463 dc, ctime = item 458 464 id, dc = self.parse_dc(dc) 465 id = self.format_id_header(id) 459 466 if id == None: 460 467 raise Exception("DataSource.list_records() didn't provide an 'identifier' dublin core element") -
telemeta/models/dublincore.py
ra0b0f45 r289a4a3 164 164 resource = Resource( 165 165 Element('identifier', media_identifier(collection), related=collection), 166 Element('identifier', collection.public_id, related=collection), 166 167 Element('type', 'Collection'), 167 168 Element('title', collection.title), … … 215 216 resource = Resource( 216 217 Element('identifier', media_identifier(item), related=item), 218 Element('identifier', item.public_id, related=item), 217 219 Element('type', 'Sound'), 218 220 Element('title', title), … … 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/models/media.py
rdf36ae0 r451866d 259 259 260 260 # Archiving data 261 code = CharField(_('code'), unique=True, null=True)262 old_code = CharField(_('old code'), unique=False, null=True,blank=True)261 code = CharField(_('code'), unique=True, blank=True) 262 old_code = CharField(_('old code'), unique=False, blank=True) 263 263 track = CharField(_('item number')) 264 264 creator_reference = CharField(_('reference')) … … 326 326 return title 327 327 328 328 329 class MediaItemForm(ModelForm): 329 330 class Meta: 330 331 model = MediaItem 332 def clean_code(self): 333 return self.cleaned_data['code'] or None 331 334 332 335 class MediaItemKeyword(ModelCore): -
telemeta/urls.py
ra313776 r289a4a3 240 240 url(r'^login/$', 'django.contrib.auth.views.login', {'template_name': 'telemeta/login.html'}, 241 241 name="telemeta-login"), 242 #url(r'^login/$', 'ipauth.views.login', {'template_name': 'telemeta/login.html'}, 243 # name="telemeta-login"), 242 244 url(r'^logout/$', general_view.logout, name="telemeta-logout"), 243 245 -
telemeta/web/base.py
rc664814 r86d17e9 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] … … 518 518 form = MediaItemForm(data=request.POST, files=request.FILES, instance=item) 519 519 if form.is_valid(): 520 form.save() 520 521 code = form.cleaned_data['code'] 521 522 if not code: 522 code = public_id 523 form.save() 523 code = str(item.id) 524 524 if form.files: 525 525 self.cache_data.delete_item_data(code) … … 554 554 form = MediaItemForm(data=request.POST, files=request.FILES, instance=item) 555 555 if form.is_valid(): 556 form.save() 557 item.set_revision(request.user) 556 558 code = form.cleaned_data['code'] 557 559 if not code: 558 code = public_id 559 form.save() 560 item.set_revision(request.user) 560 code = str(item.id) 561 561 return HttpResponseRedirect('/items/'+code) 562 562 else: … … 572 572 form = MediaItemForm(data=request.POST, files=request.FILES, instance=new_item) 573 573 if form.is_valid(): 574 form.save() 574 575 code = form.cleaned_data['code'] 575 576 if not code: 576 code = public_id 577 form.save() 577 code = str(new_item.id) 578 578 new_item.set_revision(request.user) 579 579 return HttpResponseRedirect('/items/'+code)
Note: See TracChangeset
for help on using the changeset viewer.
