Example #1
0
def get_propertie(name_key, lang=LANG_CODE_DEFAULT):
    if lang not in CMS_LANGUAGES.keys():       
        lang = LANG_CODE_DEFAULT
        
    result = "[%s.%s]" % (name_key, lang)
    
    if lang in CMS_LANGUAGES.keys():         
        properties = PropertieModel().all()
        properties.filter("name", name_key)
        
        if properties.count() > 0:
            result = getattr(properties[0], "value_" + lang)
            
    return result
Example #2
0
def request_to_model(model, request, prefix):
    if not model:
        return None
    for properie in model.properties():
        db_type = model.properties()[properie]
        request_propertrie = prefix + "." + properie
        request_value = request.get(request_propertrie)
        
        if not request_value and "_" in properie:
            name = properie[:-3]
            lang = properie[-2:]                
            if lang != LANG_CODE_DEFAULT and lang in CMS_LANGUAGES.keys():
                """translate"""
                origin = request.get(prefix + "." + name + "_" + LANG_CODE_DEFAULT)
                request_value = get_translated(origin, LANG_CODE_DEFAULT, lang)
        
        if type(db_type) == db.IntegerProperty:
            if not request_value:
                request_value = 0;
            setattr(model, properie, int(request_value))
        elif  type(db_type) == db.BooleanProperty:
            if not request_value:
                request_value = False;
            setattr(model, properie, bool(request_value))
        elif type(db_type) == db.DateTimeProperty:
            setattr(model, properie, datetime.datetime.utcnow())
        elif type(db_type) == db.BlobProperty:
            if request_value:                
                setattr(model, properie, db.Blob(request_value))
        elif type(db_type) == db.ReferenceProperty:
            pass             
        else:
            if hasattr(model, properie):    
                setattr(model, properie, request_value)
    return model
Example #3
0
def get_attr(object, param, lang=LANG_CODE_DEFAULT):
    if lang not in CMS_LANGUAGES.keys():       
        lang = LANG_CODE_DEFAULT
    
    if not object:
        return ""
    
    if hasattr(object, param + lang):
        return getattr(object, param + lang)
    else:
        return "[%s]" % param + lang
Example #4
0
def lang_name(lang_code):
    if lang_code and CMS_LANGUAGES.has_key(lang_code):
        return CMS_LANGUAGES[lang_code]
    else:
        return CMS_LANGUAGES[LANG_CODE_RU]