本文整理汇总了Python中widget.Widget.add方法的典型用法代码示例。如果您正苦于以下问题:Python Widget.add方法的具体用法?Python Widget.add怎么用?Python Widget.add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类widget.Widget
的用法示例。
在下文中一共展示了Widget.add方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_content
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def get_content(my, request_type):
web = WebContainer.get_web()
# NOTE: is this needed anymore?
if request_type in ["upload", "dynamic_file"]:
print "DEPRECATED: dynamic file in app_server.py"
widget = Widget()
page = my.get_page_widget()
widget.add(page)
return widget
# find hash of url
my.custom_url = None
if my.hash:
hash = "/".join(my.hash)
hash = "/%s" % hash
from tactic.ui.panel import HashPanelWdg
my.custom_url = HashPanelWdg.get_url_from_hash(hash)
if my.custom_url:
content_type = my.custom_url.get_value("content_type", no_exception=True)
# TODO: we may want to handle this differently for content types
# other that text/html
return my.get_application_wdg()
示例2: br
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def br(count=1, clear=None):
widget = Widget()
for i in xrange(count):
element = HtmlElement("br")
widget.add(element)
if clear:
element.set_attr("clear", clear)
return widget
示例3: _get_display
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def _get_display(my):
WebContainer.set_security(FakeSecurity())
page = my.get_page_widget()
# create some singletons and store in container
cmd_delegator = WebContainer.get_cmd_delegator()
# add the event container
event_container = WebContainer.get_event_container()
from pyasm.widget import TopWdg, BottomWdg
top = TopWdg()
bottom = BottomWdg()
page = my.get_page_widget()
web = WebContainer.get_web()
from widget import Widget
widget = Widget()
widget.add(top)
widget.add(page)
# widget.add( my.get_form_wdg() )
widget.add(bottom)
# widget.add(warning_report)
widget.add(cmd_delegator)
# create a web app and run it through the pipeline
from web_app import WebApp
web_app = WebApp()
return web_app.get_display(widget)
示例4: handle_not_logged_in
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def handle_not_logged_in(my, allow_change_admin=True):
site_obj = Site.get()
site_obj.set_site("default")
DbResource.clear_cache()
from pyasm.widget import WebLoginWdg, BottomWdg
from tactic.ui.app import TitleTopWdg
from pyasm.biz import Project
from tactic.ui.panel import HashPanelWdg
web = WebContainer.get_web()
widget = Widget()
top = TitleTopWdg()
widget.add(top)
body = top.get_body()
body.add_gradient("background", "background", 5, -20)
body.add_color("color", "color")
reset_request = web.get_form_value('reset_request') =='true'
if reset_request:
from tactic.ui.widget import ResetPasswordWdg
top.add(ResetPasswordWdg())
else:
reset_msg = web.get_form_value('reset_msg')
if reset_msg:
web.set_form_value(WebLoginWdg.LOGIN_MSG, reset_msg)
sudo = Sudo()
try:
# get the project from the url because we are still
# in the admin project at this stage
current_project = web.get_context_name()
try:
if current_project != "default":
project = Project.get_by_code(current_project)
assert project
except Exception, e:
web_wdg = None
else:
示例5: get_single_widget
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def get_single_widget(my, widget, minimal=True):
from pyasm.widget import BottomWdg
from tactic.ui.app import TitleTopWdg
if minimal:
top = TitleTopWdg()
else:
top = my.get_top_wdg()
container = Widget()
container.add( top )
top.add( widget )
container.add( BottomWdg() )
container.get_display()
return container
示例6: Widget
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
access = True
if not access:
if login_name == "guest":
from pyasm.widget import WebLoginWdg
msg = web.get_form_value(WebLoginWdg.LOGIN_MSG)
if not msg:
msg = "User [%s] is not allowed to see this project [%s]" % (login_name, project)
web.set_form_value(WebLoginWdg.LOGIN_MSG, msg)
return my.handle_not_logged_in(allow_change_admin=False)
else:
from pyasm.widget import WebLicenseWdg, BottomWdg, Error403Wdg
widget = Widget()
top = my.get_top_wdg()
widget.add( top )
widget.add( Error403Wdg() )
widget.add( BottomWdg() )
widget.get_display()
return
if login_name == 'guest' and guest_mode == "full":
# some extra security for guest users
guest_url_allow = Config.get_value("security", "guest_url_allow")
if guest_url_allow:
items = guest_url_allow.split("|")
allowed = False
if my.hash:
url = my.hash[0]
示例7: _get_display
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def _get_display(my):
# set up the security object
from pyasm.security import Security, Sudo
from pyasm.biz import Project
from pyasm.web import WebContainer
web = WebContainer.get_web()
security = Security()
security = my.handle_security(security)
is_logged_in = security.is_logged_in()
# guest mode
#
allow_guest = Config.get_value("security", "allow_guest")
if allow_guest == 'true':
allow_guest = True
else:
allow_guest = False
guest_mode = Config.get_value("security", "guest_mode")
if not guest_mode:
guest_mode = 'restricted'
#allow_guest = True
#guest_mode = "full"
# if not logged in, then log in as guest
if not is_logged_in:
if not allow_guest:
return my.handle_not_logged_in()
else:
# login as guest
security = Security()
my.handle_guest_security(security)
# for here on, the user is logged in
login_name = Environment.get_user_name()
# check if the user has permission to see this project
project = web.get_context_name()
if project == 'default':
override_default = Config.get_value("install", "default_project")
if override_default:
project = override_default
if project != 'default':
security_version = get_security_version()
if security_version == 1:
default = "view"
access = security.check_access("project", project, "view", default="view")
else:
default = "deny"
key = { "code": project }
key2 = { "code": "*" }
#keys = [key]
keys = [key, key2]
access = security.check_access("project", keys, "allow", default=default)
else:
# you always have access to the default project
access = True
access = True
if not access:
if login_name == "guest":
from pyasm.widget import WebLoginWdg
msg = web.get_form_value(WebLoginWdg.LOGIN_MSG)
if not msg:
msg = "User [%s] is not allowed to see this project [%s]" % (login_name, project)
web.set_form_value(WebLoginWdg.LOGIN_MSG, msg)
return my.handle_not_logged_in(allow_change_admin=False)
else:
from pyasm.widget import WebLicenseWdg, BottomWdg, Error403Wdg
widget = Widget()
top = my.get_top_wdg()
widget.add( top )
widget.add( Error403Wdg() )
widget.add( BottomWdg() )
widget.get_display()
return
if login_name == 'guest' and guest_mode == "full":
# some extra security for guest users
guest_url_allow = Config.get_value("security", "guest_url_allow")
if guest_url_allow:
items = guest_url_allow.split("|")
allowed = False
if my.hash:
url = my.hash[0]
else:
#.........这里部分代码省略.........
示例8: _get_display
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
#.........这里部分代码省略.........
if security_version == 1:
default = "view"
access = s.check_access("project", project, "view", default="view")
else:
default = "deny"
key = { "code": project }
key2 = { "code": "*" }
keys = [key, key2]
access = s.check_access("project", keys, "allow", default=default)
finally:
if has_site:
Site.pop_site()
else:
# you always have access to the default project
access = True
if not access:
if login_name == "guest":
from pyasm.widget import WebLoginWdg
msg = web.get_form_value(WebLoginWdg.LOGIN_MSG)
if not msg:
msg = "User [%s] is not allowed to see this project [%s]" % (login_name, project)
web.set_form_value(WebLoginWdg.LOGIN_MSG, msg)
return self.handle_not_logged_in(allow_change_admin=False)
else:
from pyasm.widget import BottomWdg, Error403Wdg
widget = Widget()
top = self.get_top_wdg()
widget.add( top )
widget.add( Error403Wdg() )
widget.add( BottomWdg() )
widget.get_display()
if is_upload:
print("WARNING: User [%s] is not allowed to upload to project [%s]."%(login_name, project))
return
if login_name == 'guest':
# let the site handle the guest completely
guest_wdg = site_obj.get_guest_wdg(self.hash)
if guest_wdg:
web_app = WebApp()
web_app.get_display(guest_wdg)
return
# some extra precautions in guest mode
if login_name == 'guest' and guest_mode != "full":
# show a restricted guest mode
from pyasm.widget import WebLoginWdg, BottomWdg
from tactic.ui.app import TitleTopWdg
from pyasm.biz import Project
from tactic.ui.panel import HashPanelWdg
web = WebContainer.get_web()
widget = Widget()
示例9: handle_not_logged_in
# 需要导入模块: from widget import Widget [as 别名]
# 或者: from widget.Widget import add [as 别名]
def handle_not_logged_in(self, allow_change_admin=True):
site_obj = Site.get()
site_obj.set_site("default")
DbResource.clear_cache()
from pyasm.widget import WebLoginWdg, BottomWdg
from tactic.ui.app import TitleTopWdg
from pyasm.biz import Project
from tactic.ui.panel import HashPanelWdg
web = WebContainer.get_web()
widget = Widget()
top = TitleTopWdg()
widget.add(top)
body = top.get_body()
#body.add_gradient("background", "background", 5, -20)
body.add_color("background", "background")
body.add_color("color", "color")
reset_request = web.get_form_value('reset_request') =='true'
if reset_request:
from tactic.ui.widget import ResetPasswordWdg
top.add(ResetPasswordWdg())
else:
reset_msg = web.get_form_value('reset_msg')
if reset_msg:
web.set_form_value(WebLoginWdg.LOGIN_MSG, reset_msg)
web_wdg = None
sudo = Sudo()
try:
# get the project from the url because we are still
# in the admin project at this stage
current_project = web.get_context_name()
try:
if current_project != "default":
project = Project.get_by_code(current_project)
assert project
except Exception as e:
pass
else:
# custom global site login widget
if not current_project or current_project == "default":
current_project = Project.get_default_project()
if current_project and current_project != "default":
try:
Project.set_project(current_project)
except SecurityException as e:
print(e)
if 'is not permitted to view project' not in e.__str__():
raise
if not web_wdg:
web_wdg = site_obj.get_login_wdg()
if web_wdg:
if not isinstance(web_wdg, basestring):
web_wdg = web_wdg.get_buffer_display()
top.add(web_wdg)
else:
web_wdg = None
# display default web login
if not web_wdg:
# get login screen from Site
link = "/%s" % "/".join(self.hash)
web_wdg = site_obj.get_login_wdg(link)
if not web_wdg:
# else get the default one
web_wdg = WebLoginWdg(allow_change_admin=allow_change_admin)
top.add(web_wdg)
finally:
# sudo out of scope here
sudo.exit()
pass
# create a web app and run it through the pipeline
web_app = WebApp()
web_app.get_display(widget)
return