def index(request): users=User.objects.all() for user in users: foaf_file=has_foaf(user) if foaf_file: user.foaf_file=foaf_file else: user.foaf_file=None return render_to_response('foaf/index.html', {'users':users},context_instance=RequestContext(request))
def edit_foaf_step2(request): if request.user.is_anonymous(): return render_to_response('error.html',{'message':'Vous devez être connectés pour éditer votre profil'}) identity_data=[] for key in request.POST.keys(): identity_data.append(str(key)+'#>>#'+str(request.POST[key])) identity_data='#$||$#'.join(identity_data) foaf_file=None internal_relations_data={} external_relations_data={} #~ get existing data if os.path.isfile(settings.FOAF_DATA+request.user.username+'.rdf'): foaf_file=settings.FOAF_URI+request.user.username+'.rdf' foaf_data=parse_foaf(settings.FOAF_DATA+request.user.username+'.rdf') #out=[] #out.append(str(foaf_data)) relations=foaf_data['relations'] #~ pack relations data for relation in relations.keys(): internal_relations=[] external_relations=[] for person in relations[relation]: if settings.FOAF_URI in person.foaf_file: internal_relations.append(person.foaf_file) else: external_relations.append(person.foaf_file) #out.append(relation+' > '+person.foaf_file) #out.append(str(internal_relations)) i=0 external_relations_packed=[] while i<5: try: external_relations_packed.append(external_relations[i]) except: external_relations_packed.append('') i=i+1 internal_relations_data[relation]=internal_relations external_relations_data[relation]=external_relations_packed #out.append(str(internal_relations)) #out.append(relation+' > '+str(internal_relations_data[relation])) ikeys=['friendOf','worksWith','hasMet','wouldLikeToKnow','knowsByReputation'] for akey in ikeys: if not external_relations_data.has_key(akey): external_relations_data[akey]=['','','','',''] #out.append('internal> '+str(internal_relations_data)) #out.append('external> '+str(external_relations_data)) users=User.objects.all() #~ pack user data users_data=[] for user in users: user_data={} user_data['name']=user.username user_data['foaf_file']=has_foaf(user) users_data.append(user_data) #~ debug #if foaf_data.has_key('error'): # out=foaf_data['error'] # return render_to_response('debug.html',{'message':out}) #out=[] #for el in relations.keys(): # for person in relations[el]: # out.append(str(person.foaf_file)) #return render_to_response('debug.html',{'message':'\n'.join(out)}) return render_to_response('foaf/edit_step2.html',{'identity_data':identity_data,'internal_relations':internal_relations_data,'external_relations':external_relations_data,'users':users_data},context_instance=RequestContext(request))