本文整理汇总了Python中mig_main.utility.Permissions.can_process_bookswap方法的典型用法代码示例。如果您正苦于以下问题:Python Permissions.can_process_bookswap方法的具体用法?Python Permissions.can_process_bookswap怎么用?Python Permissions.can_process_bookswap使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mig_main.utility.Permissions
的用法示例。
在下文中一共展示了Permissions.can_process_bookswap方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: update_person
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def update_person(request):
""" If person exists, pre-fill information
If person has profile but not BS profile, pre-fill some of it, and on
submit link together
If person has nothing, will need to create and link everything on submit
"""
if not Permissions.can_process_bookswap(request.user):
request.session['error_message'] = messages.BOOKSWAP_NO_PERM
return get_previous_page(request, alternate='bookswap:admin_index')
had_profile = request.session.pop('had_profile', False)
uniqname = request.session.pop('uniqname', '')
if had_profile:
bsp = BookSwapPerson.objects.get(user_profile__uniqname=uniqname)
form = BookSwapPersonForm(request.POST or None, instance=bsp)
else:
initial = {
'UMID': request.session.pop('UMID', ''),
'uniqname': uniqname,
'barcode': request.session.pop('barcode', ''),
}
form = BookSwapPersonFormNoProfile(request.POST or None, initial=initial)
if request.method == 'POST':
if form.is_valid():
bsp = form.save()
uniqname = bsp.user_profile.uniqname
request.session['success_message'] = ('User created/updated.')
if BookSwapStatus.can_receive(AcademicTerm.get_current_term()):
return redirect('bookswap:receive_book_start', uniqname=uniqname)
elif BookSwapStatus.can_sell(AcademicTerm.get_current_term()):
return redirect('bookswap:sell_book_start', uniqname=uniqname)
else:
request.session['info_message'] = ('Book Swap not open for '
'receiving or selling')
return redirect('bookswap:admin_index')
else:
request.session['error_message'] = messages.GENERIC_SUBMIT_ERROR
request.session['had_profile'] = had_profile
request.session['uniqname'] = uniqname
else:
request.session['had_profile'] = had_profile
request.session['uniqname'] = uniqname
template = loader.get_template('generic_form.html')
context_dict = {
'form': form,
'subnav': 'admin',
'has_files': False,
'submit_name': 'Create/update user',
'form_title': 'Create/update the user information',
'help_text': ('Please confirm that the following is correct and '
'update as necessary. Note that for sellers an address '
'is required.'),
'base': 'bookswap/base_bookswap.html',
}
context_dict.update(get_permissions(request.user))
context_dict.update(get_common_context(request))
context = RequestContext(request, context_dict)
return HttpResponse(template.render(context))
示例2: receive_book_start
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def receive_book_start(request, uniqname):
""" Just show a form for the barcode
On submit looks up the book type, if present redirects to receive_book
If not saves the uniqname into request.session and redirects to
create_book_type
"""
if not Permissions.can_process_bookswap(request.user):
request.session['error_message'] = messages.BOOKSWAP_NO_PERM
return get_previous_page(request, alternate='bookswap:admin_index')
if not BookSwapStatus.can_receive(AcademicTerm.get_current_term()):
request.session['error_message'] = 'Book receiving not enabled'
return get_previous_page(request, alternate='bookswap:admin_index')
form = BookSearchForm(request.POST or None)
if request.method == 'POST':
if form.is_valid():
barcode = form.cleaned_data.get('book_barcode','')
book_type = BookType.objects.filter(isbn=barcode)
if book_type.exists():
# TODO: If multiple give choice?
book_type = book_type[0]
request.session['success_message'] = ('Book found, please '
'enter sale details.')
return redirect('bookswap:receive_book',
uniqname=uniqname,
book_type_id=book_type.id)
else:
request.session['warning_message'] = ('Book not found, please '
'enter details.')
request.session['uniqname'] = uniqname
request.session['isbn'] = barcode
return redirect('bookswap:create_book_type')
else:
request.session['error_message'] = messages.GENERIC_SUBMIT_ERROR
template = loader.get_template('generic_form.html')
context_dict = {
'form': form,
'subnav': 'admin',
'has_files': False,
'submit_name': 'Search for book by ISBN',
'form_title': 'Search for a book in the system',
'help_text': ('You can search for a book by its ISBN, which is the '
'13 digit code scanned by the barcode.'),
'base': 'bookswap/base_bookswap.html',
}
context_dict.update(get_permissions(request.user))
context_dict.update(get_common_context(request))
context = RequestContext(request, context_dict)
return HttpResponse(template.render(context))
示例3: start_transaction
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def start_transaction(request):
""" Just a simple form to receive the barcode, uniqname, or UMID
Looks up the buyer or seller, redirects to form to confirm information
"""
if not Permissions.can_process_bookswap(request.user): # TODO: create permission logic
request.session['error_message'] = messages.BOOKSWAP_NO_PERM
return get_previous_page(request, alternate='bookswap:admin_index')
form = StartTransactionForm(request.POST or None)
if request.method == 'POST':
if form.is_valid():
user = form.get_user()
uniqname = ''
if user:
request.session['success_message'] = ('User found, please '
'confirm details.')
request.session['had_profile'] = True
uniqname = user.user_profile.uniqname
request.session['uniqname'] = uniqname
else:
request.session['error_message'] = ('User not found, please '
'create now.')
request.session['UMID'] = form.cleaned_data['user_UMID']
request.session['uniqname'] = form.cleaned_data['user_uniqname']
request.session['barcode'] = form.cleaned_data['user_barcode']
request.session['had_profile'] = False
return redirect('bookswap:update_person')
else:
request.session['error_message'] = messages.GENERIC_SUBMIT_ERROR
template = loader.get_template('generic_form.html')
context_dict = {
'form': form,
'subnav': 'admin',
'has_files': False,
'submit_name': 'Search for user',
'form_title': 'Search for a user in the system',
'help_text': ('You can search for a user by UMID, uniqname, or the '
'barcode on their MCard.'),
'base': 'bookswap/base_bookswap.html',
}
context_dict.update(get_permissions(request.user))
context_dict.update(get_common_context(request))
context = RequestContext(request, context_dict)
return HttpResponse(template.render(context))
示例4: receive_book
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def receive_book(request, uniqname, book_type_id):
if not Permissions.can_process_bookswap(request.user):
request.session['error_message'] = messages.BOOKSWAP_NO_PERM
return get_previous_page(request, alternate='bookswap:admin_index')
if not BookSwapStatus.can_receive(AcademicTerm.get_current_term()):
request.session['error_message'] = 'Book receiving not enabled'
return get_previous_page(request, alternate='bookswap:admin_index')
book_type = get_object_or_404(BookType, id=book_type_id)
seller = get_object_or_404(BookSwapPerson, user_profile__uniqname=uniqname)
instance = Book(
seller=seller,
book_type=book_type,
term=AcademicTerm.get_current_term()
)
form = ReceiveBookForm(request.POST or None, instance=instance)
if request.method == 'POST':
if form.is_valid():
book = form.save()
request.session['success_message'] = ('Book added created! '
'Please continue.')
return redirect('bookswap:receive_book_start',
uniqname=uniqname)
else:
request.session['error_message'] = messages.GENERIC_SUBMIT_ERROR
template = loader.get_template('generic_form.html')
context_dict = {
'form': form,
'subnav': 'admin',
'has_files': False,
'submit_name': 'Receive book',
'form_title': 'Recieve a copy of: %s for %s' % (book_type.title, uniqname),
'help_text': ('This receives a specific saleable book.'),
'base': 'bookswap/base_bookswap.html',
}
context_dict.update(get_permissions(request.user))
context_dict.update(get_common_context(request))
context = RequestContext(request, context_dict)
return HttpResponse(template.render(context))
pass
示例5: create_book_type
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def create_book_type(request):
if not Permissions.can_process_bookswap(request.user):
request.session['error_message'] = messages.BOOKSWAP_NO_PERM
return get_previous_page(request, alternate='bookswap:admin_index')
if not BookSwapStatus.can_receive(AcademicTerm.get_current_term()):
request.session['error_message'] = 'Book receiving not enabled'
return get_previous_page(request, alternate='bookswap:admin_index')
isbn = request.session.get('isbn', '')
form = BookTypeForm(request.POST or None, initial = {'isbn': isbn})
if request.method == 'POST':
if form.is_valid():
book_type = form.save()
request.session['success_message'] = ('Book type created! '
'Please continue.')
uniqname = request.session.pop('uniqname', '')
request.session.pop('isbn', '')
if uniqname:
return redirect('bookswap:receive_book',
uniqname=uniqname,
book_type_id=book_type.id)
else:
return redirect('bookswap:create_book_type')
else:
request.session['error_message'] = messages.GENERIC_SUBMIT_ERROR
template = loader.get_template('generic_form.html')
context_dict = {
'form': form,
'subnav': 'admin',
'has_files': False,
'submit_name': 'Create book type',
'form_title': 'Create a book type',
'help_text': ('This creates a type of book, not an individual '
'physical book to sell.'),
'base': 'bookswap/base_bookswap.html',
}
context_dict.update(get_permissions(request.user))
context_dict.update(get_common_context(request))
context = RequestContext(request, context_dict)
return HttpResponse(template.render(context))
示例6: get_permissions
# 需要导入模块: from mig_main.utility import Permissions [as 别名]
# 或者: from mig_main.utility.Permissions import can_process_bookswap [as 别名]
def get_permissions(user):
return {
'can_process':Permissions.can_process_bookswap(user),
}