Example #1
0
def init_album(handler):
    #handler.response.out.write('test')    
    is_admin = "false"
    if users.is_current_user_admin():
        is_admin = "true"
    
    user_url = ""
    user_name = ""
    if users.get_current_user():
        user_url = users.create_logout_url("/")
        user_name = users.get_current_user().nickname()
    else:
        user_url = users.create_login_url("/")
    
    language_json = ""    
    language_list = get_languagelist()
    for language in language_list:
        if language_json:
            language_json = language_json + ',"' + language + '"'
        else:
            language_json = '"' + language + '"'
    language_json = "[" + language_json + "]"
    
    config = AlbumConfig.get_object()
    
    handler.response.out.write('{"key":"' + config.key().__str__() + '","template":"' + config.template + '","is_admin":"' + is_admin  + '","user_url":"' + user_url  + '","user_name":"' + user_name + '","language_list":' + language_json + '}') 
Example #2
0
def get_languagelist():
    path            = os.path.join(os.path.dirname(__file__),'templates', AlbumConfig.get_object().template,'lng')
    dir_list        = os.listdir(path)
    language_list   = []
    for dir_name in dir_list:
        if not os.path.isdir(os.path.join(path,dir_name)):
            language_list.append(dir_name[:-3])            
    return language_list
Example #3
0
    def get(self):
        config          = AlbumConfig.get_object()
        language_list   = get_languagelist()
        
        cookie_lng = self.request.cookies.get(config.key().__str__() + '_lng')
        accept_lng = self.request.accept_language
        cookie_flag = "";
        accept_flag = "";
        
        for lng in language_list:
            if accept_lng:
                if lng in accept_lng:
                    accept_flag = lng;
            if cookie_lng:
                if lng in cookie_lng:
                    cookie_flag = lng;
        
        select_lng = "en-us"            
        if cookie_flag:
            select_lng = cookie_flag
        elif accept_flag:    
            select_lng = accept_flag       
        
        max_age = 60 * 60 * 24 * 30
        expires = datetime.datetime.strftime(datetime.datetime.utcnow() +  datetime.timedelta(seconds=max_age), "%a, %d-%b-%Y %H:%M:%S GMT")
        self.response.headers.add_header("Set-Cookie", config.key().__str__() + "_lng=" + select_lng + "; expires=" + expires + "; max_age=" + str(max_age))   

        self.response.out.write( \
"""
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
        <title>""" + config.title + """</title>
        <script type="text/javascript" language="JavaScript" src="static/jquery-1.5.min.js"></script>
        <script type="text/javascript" language="JavaScript" src="static/jquery.cookie.js"></script>
        <script type="text/javascript" language="JavaScript" src="static/jquery.xLazyLoader.js"></script>
        <script type="text/javascript" language="JavaScript" src="static/jquery.ba-hashchange.min.js"></script>
        <script type="text/javascript" language="JavaScript" src="static/core.js"></script>
        <script type="text/javascript" language="JavaScript" src="templates/""" + config.template + """/template_main.js"></script>
	<script type="text/javascript" language="JavaScript" src="templates/""" + config.template + """/lng/""" + select_lng + """.js"></script>
	<link type="text/css" rel="stylesheet" href="templates/""" + config.template + """/css/template.css" />
    </head>
    <body>
    </body>
</html>
""" )