def index(): formUpdate = UpdateProjectForm(prefix="formUpdate") d = Projects.query.order_by(Projects.id).all() data = [] for p in d: t = p.read.split(" ") if len(data) == 0: data.append(p) elif str(session['author_id']) in t: data.append(p) elif t.count("0") == len(t): data.append(p) form = AddProjectForm(prefix='form') formAdd = AddUserToProjectForm(prefix='formAdd') if form.validate_on_submit() and form.submit.data: a.createProject(session['author_id'], session['session_id'], form.name.data, form.description.data) if formUpdate.validate_on_submit() and formUpdate.submit.data: p = Projects.query.filter_by(id = int(formUpdate.idProject.data)).all() p = p[0] read = filter (lambda a: a != 0, [int(s) for s in p.read.split(" ")]) a.updateProject(session['author_id'], session['session_id'], int(formUpdate.idProject.data), formUpdate.name.data, formUpdate.description.data, read) if formAdd.validate_on_submit() and formAdd.submit.data: p = Projects.query.filter_by(id = int(formAdd.idProject.data)).all() p = p[0] read = filter (lambda a: a != 0, [int(s) for s in p.read.split(" ")]) a.getUserByName(session['author_id'], session['session_id'], formAdd.name.data) time.sleep(1) u = Users.query.filter_by(name = formAdd.name.data).all() if not u: flash("User not found or the server don't send the user information!") else: u = u[0] read.append(u.id) a.updateProject(session['author_id'], session['session_id'], int(formAdd.idProject.data), p.name, p.content, read) return render_template('index.html', data = data, form = form, formUpdate = formUpdate, formAdd = formAdd)
def updateproject(request): #ocpcauser = request.user.get_profile #context = {'ocpcauser': ocpcauser} print "In update project view" if request.method == 'POST': if 'UpdateProject' in request.POST: form = UpdateProjectForm(request.POST) if form.is_valid(): # import pdb;pdb.set_trace(); curtoken = form.cleaned_data['currentToken'] newtoken = form.cleaned_data['newToken'] description = form.cleaned_data['description'] pd = ocpcaproj.OCPCAProjectsDB() pd.updateProject(curtoken,newtoken) pd.updateTokenDescription ( newtoken ,description) #pd.newOCPCAProj ( token, openid, host, project, datatype, dataset, dataurl, readonly, exceptions , nocreate ) return redirect(profile) else: context = {'form': form} print form.errors return render_to_response('createproject.html',context,context_instance=RequestContext(request)) else: return redirect(profile) else: print "Getting the update form" #token = (request.POST.get('token')).strip() if "token" in request.session: token = request.session["token"] del request.session["token"] else: token = "" randtoken = ''.join(random.choice(string.ascii_uppercase + string.digits + string.ascii_lowercase) for x in range(64)) data = {'currentToken': token ,'newToken': randtoken} #data = {'newToken': randtoken} form = UpdateProjectForm(initial=data) context = {'form': form} return render_to_response('updateproject.html',context,context_instance=RequestContext(request))