0.0.28 get filtered and ordered blocks
This commit is contained in:
27
GeneralApp/funcs_options.py
Normal file
27
GeneralApp/funcs_options.py
Normal file
@@ -0,0 +1,27 @@
|
||||
from .models import *
|
||||
|
||||
def get_options_by_opt_types(opt_types, only_vals=False):
|
||||
if type(opt_types) == str:
|
||||
kwargs = {'opt_type': opt_types}
|
||||
elif type(opt_types) == dict:
|
||||
kwargs = opt_types
|
||||
else:
|
||||
kwargs = {'opt_type__in': opt_types}
|
||||
|
||||
opts = Option.objects.filter(**kwargs)
|
||||
if opts and only_vals:
|
||||
opts = opts.values('opt_type', 'value')
|
||||
opts = {item['opt_type']: item['value'] for item in opts}
|
||||
return opts
|
||||
|
||||
def get_first_option_value_by_opt_type(opt_type):
|
||||
opts = get_options_by_opt_types(opt_type)
|
||||
if opts:
|
||||
return opts[0].value
|
||||
else:
|
||||
return None
|
||||
|
||||
def get_mail_send_options():
|
||||
opt_types = ['mail_server_url', 'mail_server_smtp_port', 'sender_mail_login', 'sender_mail_password', 'sender_email']
|
||||
|
||||
return get_options_by_opt_types(opt_types, only_vals=True)
|
||||
Reference in New Issue
Block a user