コード例 #1
0
ファイル: boot.py プロジェクト: Halfnhav/wnframework
def get_bootinfo():
	"""build and return boot info"""
	bootinfo = webnotes._dict()
	doclist = []

	# profile
	get_profile(bootinfo)
	
	# control panel
	cp = webnotes.model.doc.getsingle('Control Panel')
	
	# system info
	bootinfo['control_panel'] = webnotes._dict(cp.copy())
	bootinfo['sysdefaults'] = webnotes.defaults.get_defaults()
	bootinfo['server_date'] = webnotes.utils.nowdate()
	bootinfo["send_print_in_body_and_attachment"] = webnotes.conn.get_value("Email Settings", 
		None, "send_print_in_body_and_attachment")

	if webnotes.session['user'] != 'Guest':
		bootinfo['user_info'] = get_fullnames()
		bootinfo['sid'] = webnotes.session['sid'];
		
	# home page
	bootinfo.modules = webnotes.get_config().modules
	bootinfo.hidden_modules = webnotes.conn.get_global("hidden_modules")
	bootinfo.doctype_icons = dict(webnotes.conn.sql("""select name, icon from 
		tabDocType where ifnull(icon,'')!=''"""))
	bootinfo.doctype_icons.update(dict(webnotes.conn.sql("""select name, icon from 
		tabPage where ifnull(icon,'')!=''""")))
	
	add_home_page(bootinfo, doclist)
	add_allowed_pages(bootinfo)
	load_translations(bootinfo)
	load_conf_settings(bootinfo)

	# ipinfo
	if webnotes.session['data'].get('ipinfo'):
		bootinfo['ipinfo'] = webnotes.session['data']['ipinfo']
	
	# add docs
	bootinfo['docs'] = doclist
	
	# plugins
	try:
		import startup.boot
		startup.boot.boot_session(bootinfo)
	except ImportError:
		pass
	
	from webnotes.model.utils import compress
	bootinfo['docs'] = compress(bootinfo['docs'])

	# deal with __slots__ in lang
	if bootinfo.lang:
		bootinfo.lang = unicode(bootinfo.lang)
	
	bootinfo.metadata_version = webnotes.cache().get_value("metadata_version")
	if not bootinfo.metadata_version:
		bootinfo.metadata_version = webnotes.reset_metadata_version()
		
	return bootinfo
コード例 #2
0
ファイル: boot.py プロジェクト: ricardomomm/wnframework
def get_bootinfo():
    """build and return boot info"""
    bootinfo = webnotes._dict()
    doclist = []

    # profile
    get_profile(bootinfo)

    # control panel
    cp = webnotes.model.doc.getsingle('Control Panel')

    # system info
    bootinfo['control_panel'] = webnotes._dict(cp.copy())
    bootinfo['sysdefaults'] = webnotes.defaults.get_defaults()
    bootinfo['server_date'] = webnotes.utils.nowdate()
    bootinfo["send_print_in_body_and_attachment"] = webnotes.conn.get_value(
        "Email Settings", None, "send_print_in_body_and_attachment")

    if webnotes.session['user'] != 'Guest':
        bootinfo['user_info'] = get_fullnames()
        bootinfo['sid'] = webnotes.session['sid']

    # home page
    bootinfo.modules = webnotes.get_config().modules
    bootinfo.hidden_modules = webnotes.conn.get_global("hidden_modules")
    bootinfo.doctype_icons = dict(
        webnotes.conn.sql("""select name, icon from 
		tabDocType where ifnull(icon,'')!=''"""))
    bootinfo.doctype_icons.update(
        dict(
            webnotes.conn.sql("""select name, icon from 
		tabPage where ifnull(icon,'')!=''""")))

    add_home_page(bootinfo, doclist)
    add_allowed_pages(bootinfo)
    load_translations(bootinfo)
    load_conf_settings(bootinfo)

    # ipinfo
    if webnotes.session['data'].get('ipinfo'):
        bootinfo['ipinfo'] = webnotes.session['data']['ipinfo']

    # add docs
    bootinfo['docs'] = doclist

    # plugins
    try:
        import startup.boot
        startup.boot.boot_session(bootinfo)
    except ImportError:
        pass

    from webnotes.model.utils import compress
    bootinfo['docs'] = compress(bootinfo['docs'])

    # deal with __slots__ in lang
    if bootinfo.lang:
        bootinfo.lang = unicode(bootinfo.lang)

    bootinfo.metadata_version = webnotes.cache().get_value("metadata_version")
    if not bootinfo.metadata_version:
        bootinfo.metadata_version = webnotes.reset_metadata_version()

    return bootinfo
コード例 #3
0
ファイル: boot.py プロジェクト: bindscha/wnframework_old
	# add docs
	bootinfo['docs'] = doclist
	
	for method in hooks.boot_session or []:
		webnotes.get_attr(method)(bootinfo)
		
	from webnotes.model.utils import compress
	bootinfo['docs'] = compress(bootinfo['docs'])

	# deal with __slots__ in lang
	if bootinfo.lang:
		bootinfo.lang = unicode(bootinfo.lang)
	
	bootinfo.metadata_version = webnotes.cache().get_value("metadata_version")
	if not bootinfo.metadata_version:
		bootinfo.metadata_version = webnotes.reset_metadata_version()
		
	return bootinfo

def load_conf_settings(bootinfo):
	from webnotes import conf
	for key in ['developer_mode']:
		if key in conf: bootinfo[key] = conf.get(key)

def add_allowed_pages(bootinfo):
	bootinfo.page_info = dict(webnotes.conn.sql("""select distinct parent, modified from `tabPage Role`
		where role in ('%s')""" % "', '".join(webnotes.get_roles())))

def load_translations(bootinfo):
	webnotes.set_user_lang(webnotes.session.user)