コード例 #1
0
def create_bulletin(request):
    session = request.session
    islogin = session.get('islogin', False)
    if not islogin:
        return redirect('/publisher/login')
    if request.method == 'POST':
        session = request.session
        form = BulletinForm(request.POST, hospital_id=session['hospital_id'])
        if form.is_valid():
            utils.create_bulletin(form,session)
            return redirect('/publisher/')
        else:
            error_message = '您填写的信息有错误,请重新填写!'
            return render(request, 'publisher/bulletin.html',
                          {'loginname': request.session['loginname'],
                           'form': form, 'error_message': error_message,
                           'doctor_department': json.dumps(utils.get_doctor_department(
                               session['hospital_id']))
                           })
    else:
        form= BulletinForm(hospital_id=session['hospital_id'])
        return render(request, 'publisher/bulletin.html',
                      {'loginname': request.session['loginname'],
                       'form': form,
                       'doctor_department': json.dumps(utils.get_doctor_department(session['hospital_id']))
                     })
コード例 #2
0
def alter_bulletin(request):
    if request.method == 'POST':
        session = request.session
        form = BulletinForm(request.POST, hospital_id=session['hospital_id'])
        if form.is_valid():
            utils.alter_bulletin(form, session)
            return redirect('/publisher/')
    else:
        session = request.session
        session['id_bulletin'] = request.GET.get('id_bulletin',-1)
        fee = request.GET.get('fee', -1)
        availabletime = request.GET.get('availabletime', -1)
        countavailable = request.GET.get('countavailable', -1)
        countoccupied = request.GET.get('countoccupied', -1)
        department = request.GET.get('department',-1)
        doctor = request.GET.get('doctor',-1)
        form = BulletinForm(hospital_id=session['hospital_id'])
        return render(request, 'publisher/bulletin.html', {'loginname': session['loginname'],
                                                           'form': form,
                                                          'fee': fee,
                                                          'availabletime': availabletime,
                                                          'countavailable': countavailable,
                                                          'countoccupied': countoccupied,
                                                          'department': department,
                                                          'doctor': doctor,
                                                          'doctor_department': json.dumps(utils.get_doctor_department(
                                                               session['hospital_id']))
                                                           })
コード例 #3
0
ファイル: views.py プロジェクト: Sticksword/Python-work
def create_post(request):
        # if this is a POST request we need to process the form data
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = BulletinForm(request.POST)
        # check whether it's valid:
        if form.is_valid():
            title = form.cleaned_data['title']
            location = form.cleaned_data['location']
            date = datetime.date.today()
            author = form.cleaned_data['author']
            body = form.cleaned_data['body']
            bulletin = Bulletin.objects.create(title=title,
                                           location=location,
                                           date=date,
                                           author=author,
                                           body=body)
            bulletin.save()
            # process the data in form.cleaned_data as required
            # ...
            # redirect to a new URL:
            return HttpResponseRedirect('/blog/')

    # if a GET (or any other method) we'll create a blank form
    else:
        form = BulletinForm()

    return render(request, 'blog/create_post.html', {'form': form})
コード例 #4
0
def view_bulletin():
    bulletin_id = request.args.get('id')
    q = request.args.get('q')
    if q is not None:
        return redirect(url_for('view_bulletins', page=1, q=q))

    form = BulletinForm(request.form)

    if request.method == 'POST' and form.validate():
        if form.id.data:
            bulletin = orm.Bulletin.query.get(int(form.id.data))
            bulletin.dt = form.dt.data
            bulletin.title = form.title.data
            bulletin.content = form.content.data
            bulletin.source = form.source.data
            bulletin.author = form.author.data
            orm.db.session.commit()
        else:
            bulletin = orm.Bulletin(form.dt.data, form.title.data,
                                    form.content.data, form.source.data,
                                    form.author.data)
            orm.db.session.add(bulletin)
            orm.db.session.commit()
            form.id.data = bulletin.id

        if request.form.has_key('upload'):
            file = request.files['image']
            if file:
                file_server = str(uuid.uuid1()) + Util.file_extension(
                    file.filename)
                pathfile_server = os.path.join(UPLOAD_PATH, file_server)
                file.save(pathfile_server)
                if os.stat(pathfile_server).st_size < 1 * 1024 * 1024:
                    bulletinimage = orm.Bulletinimage(bulletin.id, file_server)
                    orm.db.session.merge(bulletinimage)
                    orm.db.session.commit()
                else:
                    os.remove(pathfile_server)
        else:
            return redirect(url_for('view_bulletin'))
    elif request.method == 'GET' and bulletin_id:
        form = logic.GetBulletinFormById(bulletin_id)
        logic.LoadBasePageInfo('修改公告', '输入并确定', form)
    else:
        form.dt.data = datetime.datetime.now()
        logic.LoadBasePageInfo('新建公告', '输入并确定', form)

    if form.id.data:
        bulletin = orm.Bulletin.query.get(int(form.id.data))
        form.bulletin = bulletin
        if form.bulletin:
            form.bulletinimages = form.bulletin.bulletinimages

    return render_template('view_bulletin.html', form=form)
コード例 #5
0
ファイル: views.py プロジェクト: skycucumber/xuemc
def view_bulletin():
    bulletin_id = request.args.get('id')
    q = request.args.get('q')
    if q is not None:
        return redirect(url_for('view_bulletins', page=1, q=q))        

    form = BulletinForm(request.form)


    if request.method == 'POST' and form.validate():
        if form.id.data:
            bulletin = orm.Bulletin.query.get(int(form.id.data))
            bulletin.dt = form.dt.data
            bulletin.title = form.title.data
            bulletin.content = form.content.data
            bulletin.source = form.source.data
            bulletin.author = form.author.data
            orm.db.session.commit()
        else:
            bulletin = orm.Bulletin(form.dt.data, form.title.data, form.content.data, form.source.data, form.author.data)
            orm.db.session.add(bulletin)
            orm.db.session.commit()
            form.id.data = bulletin.id

        if request.form.has_key('upload'):
            file = request.files['image']
            if file :
                file_server = str(uuid.uuid1())+Util.file_extension(file.filename)
                pathfile_server = os.path.join(UPLOAD_PATH, file_server)
                file.save(pathfile_server)          
                if os.stat(pathfile_server).st_size <1*1024*1024:
                    bulletinimage = orm.Bulletinimage(bulletin.id,file_server)
                    orm.db.session.merge(bulletinimage)
                    orm.db.session.commit()
                else:
                    os.remove(pathfile_server)
        else:
            return redirect(url_for('view_bulletin'))
    elif request.method =='GET' and bulletin_id:
        form = logic.GetBulletinFormById(bulletin_id)
        logic.LoadBasePageInfo('修改公告','输入并确定',form)
    else:
        form.dt.data = datetime.datetime.now()
        logic.LoadBasePageInfo('新建公告','输入并确定',form)

    if form.id.data:
        bulletin = orm.Bulletin.query.get(int(form.id.data))
        form.bulletin = bulletin
        if form.bulletin:
            form.bulletinimages = form.bulletin.bulletinimages
    
    return render_template('view_bulletin.html',form = form)
コード例 #6
0
def view_bulletins():
    page = request.args.get('page', 1)
    q = request.args.get('q')
    bulletins = restful.GetBulletins(int(page), q)
    if not bulletins.has_key(restful.ITEM_OBJECTS):
        return redirect(url_for('view_bulletins'))

    bulletinforms = [
        logic.GetBulletinFormById(x[restful.ITEM_ID])
        for x in bulletins[restful.ITEM_OBJECTS]
    ]
    while None in bulletinforms:
        bulletinforms.remove(None)

    if request.method == 'POST':
        form = BulletinForm(request.form)
        if request.form.has_key('delete'):
            for x in orm.Bulletinimage.query.filter_by(
                    bulletin_id=int(form.id.data)).all():
                pathfile_server = os.path.join(UPLOAD_PATH, x.file)
                if os.path.exists(pathfile_server):
                    os.remove(pathfile_server)
            orm.db.session.delete(orm.Bulletin.query.get(int(form.id.data)))
            orm.db.session.commit()
            return redirect(url_for('view_bulletins', page=page, q=q))

    form = PageInfo()
    logic.LoadBasePageInfo('所有公告', '查看', form)

    return render_template('view_bulletins.html',
                           forms=bulletinforms,
                           form=form,
                           paging=restful.GetPagingFromResult(bulletins))
コード例 #7
0
ファイル: logic.py プロジェクト: Major-w/Graduation_design
def GetBulletinFormById(bulletin_id):
    bulletin = orm.Bulletin.query.get(int(bulletin_id))
    if bulletin is None: return None
    bulletinform = BulletinForm()
    bulletinform.id.data = bulletin.id
    bulletinform.title.data = bulletin.title
    bulletinform.content.data = bulletin.content
    bulletinform.valid.data = bulletin.valid
    bulletinform.source.data = bulletin.source
    return bulletinform
コード例 #8
0
ファイル: views.py プロジェクト: gvidon/mamochkam.com
def add(request):
	form = BulletinForm()
	
	if request.POST and request.user.is_authenticated():
		form = BulletinForm(request.POST)
		
		if form.is_valid():
			Bulletin.objects.create(
				user_id     = 1,
				publish     = 0,
				title       = request.POST['title'],
				description = request.POST['description']
			)
			
			return render_to_response('bulletins/add.html', {}, context_instance = RequestContext(request))
		
	return render_to_response('bulletins/add.html', {
		'form': form
	}, context_instance = RequestContext(request))
コード例 #9
0
ファイル: views.py プロジェクト: allevitan/olinbartering
def addBulletin(request):	
	if request.method == 'POST':
		form = BulletinForm(request.POST, request.FILES)
		if form.is_valid():
			cleaned_data = form.clean()
			user = User.objects.get(username = request.user)
			userdata = user.userdata
			email = user.email
			subject = cleaned_data['subject']
			message = cleaned_data['message']
			location = cleaned_data['location']
			relevance = cleaned_data['relevance']
			filters = cleaned_data['filters']
			bulletinType = cleaned_data['bulletinType']
			if bulletinType == "Want?":
				price = cleaned_data['price']
				bulletinFilter = getFilter(filters, helpfilter=False)
				bulletin = Bulletin.objects.create(creator = userdata, subject = subject,
					location = location, relevance = relevance,
					resolved=False, reply_count = 0,
                                        free=price, tag=bulletinFilter)
			elif bulletinType == "Help?":
				bulletinFilter = getFilter(filters, helpfilter=True)
				bulletin = Bulletin.objects.create(creator = userdata, subject = subject,
					location = location, relevance = relevance, 
					resolved=False, reply_count = 0,
					tag=bulletinFilter)
			else:
				raise ValidationError
			missive = Missive.objects.create(bulletin = bulletin, timestamp = datetime.now(), 
				message = message)
			bulletin.save()
			missive.save()
			return HttpResponseRedirect('/')
	else:
		form = BulletinForm()
	
	return render(request, 'addBulletin.html', {'form':form})
コード例 #10
0
ファイル: controllers.py プロジェクト: mehtapgundogan/Tellal
def register():
    form = BulletinForm(request.form)
    if request.method == 'POST' and form.validate():
        flash('Thanks for registering')
    	return render_template('hello/hello.html', form=form)
    return render_template('hello/hello.html', form=form)