if "v2" in param: def tryGetFromMap(map: dict, expected_key: str): # if expected_key is not None and "s" in expected_key: # print("check keylist", (expected_key in map.keys()), f".{map[expected_key]}.") try: return map[expected_key] except: return None def appendValueInMap( map: dict, expected_key: str, value_to_set: str ): if tryGetFromMap(map, expected_key) is None: return # print("get", expected_key, tryGetFromMap(map, expected_key)) map[expected_key] += value_to_set def adjustPosition(value: str, modifiers): result = modifiers(int(value)) return result def removePartOfText(value: str, part: str, repl = None): if repl != None: return value.replace(part, repl) return value.replace(part, "") def packExport(key: str | list): return { "source": season_pass_menu_script, "key": key, "append": appendValueInMap } def cloneTextExport(key: str | list, mods=None, remove=None, replace=None, block_output=False, block_append=False): return { "source": season_pass_menu_big_btn_ui, "key": key, "append": appendValueInMap, "adjust": adjustPosition, "remove": removePartOfText, "remove_target": remove, "replace_by": replace, "modifiers": mods, "no_output": block_output, "no_append": block_append } def GenMenuProductCodeBlock(spl, str_hot_product_code, str_cold_product_code, str_blend_product_code): gen_ss = "set-" in spl[idx_img][8] if (str_hot_product_code.startswith('52-01') or str_cold_product_code.startswith('52-01') or str_blend_product_code.startswith('52-01')) and gen_season_pass and current_file_name == "page_catalog_group_recommend_multi_pro.skt": return #print(" size " + str( len(spl)) + " img=" + spl[ idx_img][1] ) out_xml( '\t; ==================> Len = ' + str(len(spl)) + '\r\n', store_block={ "product_code": f"{str_hot_product_code}.{str_cold_product_code}.{str_blend_product_code}", "point": "init", "from_ss": gen_ss }) menu_img = spl[ idx_img][1] out_xml( '\t; '+ str_hot_product_code + ' ' + str_cold_product_code + ' ' + str_blend_product_code+ ' \r\n') out_xml( '\r\n') out_xml('\t 33 \r\n') out_xml('\t 22 \r\n') out_xml('\t 225 \r\n') out_xml('\t 296 \r\n') str_con = "" str_con_var = "" #print("#########################################################################################################################") #print( str( spl)) #print("#########################################################################################################################") if str_hot_product_code != '-': str_con += str_hot_product_code + '.Button,' if str_cold_product_code != '-': str_con += str_cold_product_code + '.Button,' if str_blend_product_code != '-': str_con += str_blend_product_code + '.Button,' if str_hot_product_code != '-': str_con_var += str_hot_product_code + '-' if str_cold_product_code != '-': str_con_var += str_cold_product_code + '-' if str_blend_product_code != '-': str_con_var += str_blend_product_code + '-' str_con_var = str_con_var.replace("-", "") if touch_less_gen == True or (multi_pro_gen and gen_season_pass): str_con += "Disable=Invisible," str_con += "$Sum" + str_con_var out_xml( '\t Flag( '+ str_con + ') \r\n') pd_code_1 = str_hot_product_code pd_stage1 = '$' + str_hot_product_code + '.Button' if str_hot_product_code == "-" or len(str_hot_product_code) == 0 : pd_code_1 = pd_code_available pd_stage1 = '"Disable2"' pd_code_2 = str_cold_product_code pd_stage2 = '$' + str_cold_product_code + '.Button' if str_cold_product_code == "-" or len(str_cold_product_code) == 0: pd_code_2 = pd_code_available pd_stage2 = '"Disable2"' pd_code_3 = str_blend_product_code pd_stage3 = '$' + str_blend_product_code + '.Button' if str_blend_product_code == "-" or len(str_blend_product_code) == 0: pd_code_3 = pd_code_available pd_stage3 = '"Disable2"' out_xml( '\t\r\n') out_xml( '\t\r\n', export_to=cloneTextExport(menu_key)) out_xml( '\t 16 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 164 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 + 30)) out_xml( '\t 22 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: int(y_pos * 1.5))) out_xml( '\t 222 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: int(y_pos * 1.5))) out_xml( '\t "multi2" \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t KanitMediumTTF \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0x322B26 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_eng] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_eng] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_malay] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_name][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 16 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 220 \r\n',export_to=cloneTextExport(menu_key, lambda y_pos: y_pos * 2 + 10)) out_xml( '\t 14 \r\n',export_to=cloneTextExport(menu_key, lambda y_pos: int(y_pos + 11))) out_xml( '\t 222 \r\n',export_to=cloneTextExport(menu_key, lambda y_pos: int(y_pos * 1.5))) out_xml( '\t KanitMediumTTF \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0x6F5F51 \r\n',export_to=cloneTextExport(menu_key)) #out_xml( '\t showthaiText \r\n') out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_eng].replace("\n","\\n") + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_eng] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_malay] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t' + spl[ idx_desc][ idx_lang_thai] + '\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 16 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 264 \r\n',export_to=cloneTextExport(menu_key, lambda y_pos: y_pos * 2 + 10)) if gen_ss and (not is_sm or ", " in spl[idx_img][8]): print("use ss: caused by multi_pro_gen=", multi_pro_gen, ", is_sm=", is_sm) # expect season mode out_xml('\t 390 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml('\t 44 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) else: if gen_ss: print("use normal: caused by multi_pro_gen=",multi_pro_gen,",is_sm=", is_sm ) out_xml( '\t Var( DirImage2 + "option_deactive.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) if gen_ss and (not is_sm or ", " in spl[idx_img][8]): out_xml('\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/option_deactive.png" \r\n', export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) ice_tab_hot_show = True shw = "$" + str_hot_product_code + ".Button" if str_hot_product_code == "-" : shw = '"Invisible"' ice_tab_hot_show = False if len(str_hot_product_code) == 0 : shw = '"Invisible"' ice_tab_hot_show = False out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 16 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 264 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 + 10)) if gen_ss and (not is_sm or ", " in spl[idx_img][8]): # expect season mode out_xml('\t 134 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml('\t 44 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t Var( DirImage2 + "hot.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) out_xml( '\t Var( DirImage2 + "hot_db.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) if gen_ss and (not is_sm or "," in spl[idx_img][8]): out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/hot.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/hot_db.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t TextPriceMenuHotX \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 - 10, remove="TextPriceMenuHotX", replace="48")) out_xml( '\t TextPriceMenuY \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 + 15, remove="TextPriceMenuY", replace="264")) out_xml( '\t TextPriceMenuSize \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: int(y_pos + 11), remove="TextPriceMenuSize", replace="12" )) out_xml( '\t 220 \r\n',export_to=cloneTextExport( menu_key, mods=lambda w: int(w * 2))) out_xml( '\t KanitMediumTTF \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0x6F5F51 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0xEAE6E1 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) #out_xml( '\t Var( "฿" + $' + spl[ idx_hot_product_code] + '.Price ) \r\n') if "free" in param: out_xml( '\t "Free" \r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t StringFmt( $' + str_hot_product_code + '.Price , DisplayFormat, PreScaleConvertShow) ; test\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) ice_tab_ice_show = True shw = "$" + str_cold_product_code + ".Button" if str_cold_product_code == "-" : shw = '"Invisible"' ice_tab_ice_show = False if len(str_cold_product_code) == 0 : shw = '"Invisible"' ice_tab_ice_show = False out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 81 \r\n',export_to=cloneTextExport( menu_key, mods=lambda x: x + 65 )) out_xml( '\t 264 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 + 10)) if gen_ss and (not is_sm or ", " in spl[idx_img][8]): # expect season mode out_xml('\t 134 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml('\t 44 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) if pd_code_2 == "51-05-02-0016": out_xml( '\t Var( DirImage2 + "normal.png" ) \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t Var( DirImage2 + "cold_db.png" ) \r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t Var( DirImage2 + "cold.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) out_xml( '\t Var( DirImage2 + "cold_db.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) if gen_ss and (not is_sm or "," in spl[idx_img][8]): out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/cold.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/cold_db.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 113 \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 - 10, )) out_xml( '\t TextPriceMenuY \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 + 15, replace="264", remove="TextPriceMenuY" )) out_xml( '\t TextPriceMenuSize \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: int(y_pos + 11), remove="TextPriceMenuSize", replace="12")) out_xml( '\t 220 \r\n',export_to=cloneTextExport( menu_key, mods=lambda w: int(w * 2))) out_xml( '\t KanitMediumTTF \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0x6F5F51 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0xEAE6E1 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) if "inter" in param: if "free" in param: out_xml( '\t "Free" \r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t StringFmt( $' + str_cold_product_code + '.Price , DisplayFormat, PreScaleConvertShow) ; test\r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t Var( "฿" + $' + str_cold_product_code + '.Price ) \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) ice_tab_blend_show = True shw = "$" + str_blend_product_code + ".Button" if str_blend_product_code == "-" : shw = '"Invisible"' ice_tab_blend_show = False if len(str_blend_product_code) == 0 : shw = '"Invisible"' ice_tab_blend_show = False out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 146 \r\n',export_to=cloneTextExport( menu_key, mods=lambda x: x + 130 )) out_xml( '\t 264 \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 + 10 )) if gen_ss and (not is_sm or ", " in spl[idx_img][8]): # expect season mode out_xml('\t 134 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml('\t 44 \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t Var( DirImage2 + "blend.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) out_xml( '\t Var( DirImage2 + "blend_db.png" ) \r\n',export_to=cloneTextExport(menu_key, block_append=True)) if gen_ss and (not is_sm or "," in spl[idx_img][8]): out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/blend.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t "ROOT/taobin_project/inter/sgp/image/event/season_pass/drink_option_en/blend_db.png" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t TextPriceMenuBlendX \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 - 10, replace="180", remove="TextPriceMenuBlendX" )) out_xml( '\t TextPriceMenuY \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: y_pos * 2 + 15, remove="TextPriceMenuY", replace="264" )) out_xml( '\t TextPriceMenuSize \r\n',export_to=cloneTextExport( menu_key, mods=lambda y_pos: int(y_pos + 11), remove="TextPriceMenuSize", replace="12")) out_xml( '\t 220 \r\n',export_to=cloneTextExport( menu_key, mods=lambda w: int(w * 2))) out_xml( '\t KanitRegularTTF \r\n',export_to=cloneTextExport(menu_key)) #out_xml( '\t end \r\n') out_xml( '\t 0x6F5F51 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0xEAE6E1 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t ' + shw + ' \r\n',export_to=cloneTextExport(menu_key)) if "inter" in param: if "free" in param: out_xml( '\t " Free" \r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t StringFmt( $' + str_blend_product_code + '.Price , DisplayFormat, PreScaleConvertShow) ; test\r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t Var( "฿" + $' + str_blend_product_code + '.Price ) \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 81 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 264 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 + 10)) out_xml( '\t \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\teval( \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\tIf ICE_PROCESS_STATUS = 2 Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\r\n',export_to=cloneTextExport(menu_key)) if ice_tab_hot_show == True: #out_xml( '\t\t\tDEBUGVAR $Sum' + str_con_var +'\r\n') out_xml( '\t\t\tIf $Sum' + str_con_var +' = "Disable" Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tVar ice_tab_process_show = "Disable"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tElse\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tVar ice_tab_process_show = "Enable"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) else: out_xml( '\t\t\tVar ice_tab_process_show = "Invisible"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\tElse\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tVar ice_tab_process_show = "Invisible"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\tVar return = ice_tab_process_show\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t)\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t "ROOT/taobin_project/image/drink_option/ice_tab_unavalible.png" \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t "ROOT/taobin_project/image/drink_option/ice_tab_unavalible_dis.png" \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 49 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 117 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\teval( \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tIf $Sum' + str_con_var +' = "Disable" Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tSTRCONTAIN "ERR" $' + pd_code_1 + '.TAG tag1_is_disable\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tSTRCONTAIN "ERR" $' + pd_code_2 + '.TAG tag2_is_disable\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tSTRCONTAIN "ERR" $' + pd_code_3 + '.TAG tag3_is_disable\r\n',export_to=cloneTextExport(menu_key)) #out_xml( '\t\t\t\tDEBUGVAR $' + pd_code_1 + '.TAG\r\n') #out_xml( '\t\t\t\tDEBUGVAR $' + pd_code_2 + '.TAG\r\n') #out_xml( '\t\t\t\tDEBUGVAR $' + pd_code_3 + '.TAG\r\n') out_xml( '\t\t\t\tVar return = "Invisible"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tIf tag1_is_disable = "true" Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\t\tVar return = "Enable"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tIf tag2_is_disable = "true" Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\t\tVar return = "Enable"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tIf tag3_is_disable = "true" Then\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\t\tVar return = "Enable"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tElse\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\t\t\tVar return = "Invisible"\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t\tEndIf\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t)\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t "ROOT/taobin_project/image//img_menu_err2.png" \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 84 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 266 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 + 10)) out_xml( '\t 10 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos + 11 )) out_xml( '\t OpunMediumTTF \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 0xDE794E \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t ice_tab_process_show \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t ice_show_open \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t 48 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 )) out_xml( '\t 116 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 )) out_xml( '\t 32 \r\n',export_to=cloneTextExport( menu_key)) out_xml( '\t 128 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 )) out_xml( '\t 64 \r\n',export_to=cloneTextExport( menu_key, lambda y_pos: y_pos * 2 )) out_xml( '\t "disable-show" \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t $Sum' + str_con_var +' \r\n',export_to=cloneTextExport(menu_key)) # if gen_ss and not is_sm: # out_xml('\t 0x322B26 ',export_to=cloneTextExport(menu_key, block_output=True)) # out_xml( '\t \"UNAVAILABLE\" \r\n',export_to=cloneTextExport(menu_key, block_output=True)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\t 000013 \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t center-vertical-horizontal \r\n',export_to=cloneTextExport(menu_key)) out_xml( '\t\r\n',export_to=cloneTextExport(menu_key)) out_xml( '\r\n', store_block={ "product_code": f"{str_hot_product_code}.{str_cold_product_code}.{str_blend_product_code}", "point": "end", "from_ss": gen_ss }) def GenMenuBlock(spl, idx_hot_product_code, idx_cold_product_code, idx_blend_product_code): GenMenuProductCodeBlock(spl, spl[ idx_name][ idx_hot_product_code], spl[ idx_name][ idx_cold_product_code] , spl[ idx_name][ idx_blend_product_code] ) idx_lang_malay = 5 idx_lang_japan = 4 idx_lang_china = 3 idx_lang_thai = 2 idx_lang_eng = 1 idx_name = 0 idx_desc = 1 idx_img = 2 idx_hot_product_code = 7 idx_cold_product_code = idx_hot_product_code + 1 idx_blend_product_code = idx_cold_product_code + 1 # idx_hot_product_code2 = idx_hot_product_code idx_cold_product_code2 = idx_cold_product_code idx_blend_product_code2 = idx_blend_product_code idx_of_eng = 2 idx_of_eng_des = 3 idx_of_thai = 0 idx_of_thai_des = 1 print ("--------------------------------------------------------------------------------------------------------------------------") if current_file_name == "page_catalog_group_recommend.skt": touch_less_gen = True else: touch_less_gen = False if current_file_name == "page_catalog_group_recommend_multi_pro.skt": multi_pro_gen = True else: multi_pro_gen = False print("Found multi pro skt: ", multi_pro_gen ) out_xml(' \r\n') if touch_less_gen == True: out_xml(' 16 \r\n') elif multi_pro_gen: out_xml(' 4 \r\n') out_xml(' 10 \r\n') out_xml(' 497 \r\n') out_xml(' 1080 \r\n') out_xml(' "auto" \r\n') out_xml(' "Vertical" \r\n') if multi_pro_gen: out_xml(' 2 \r\n') else: out_xml(' 4 \r\n') out_xml('\r\n') pd_code_available = '##-##-##-####' count = 0 count_test = 0 #if touch_less_gen == True: # out_xml( '\r\n') # out_xml('\t 33 \r\n') # out_xml('\t 22 \r\n') # out_xml('\t 225 \r\n') # out_xml('\t 296 \r\n') # out_xml('\t "Enable" \r\n') # out_xml('\t\r\n') # out_xml('\t 0 \r\n') # out_xml('\t 0 \r\n') # out_xml('\t TouchLessStg \r\n') # out_xml('\t Var( DirImage + "/touch_less_order.png" )\r\n') # out_xml('\t Var( DirImage + "/touch_less_order_db.png" )\r\n') # out_xml('\t\r\n') # out_xml('\t\r\n') # out_xml('\t 40 \r\n') # out_xml('\t 153 \r\n') # out_xml('\t 150 \r\n') # out_xml('\t "0xeae6e1" \r\n') # out_xml('\t "0x513C2F" \r\n') # out_xml('\t 150 \r\n') # # #out_xml('\t TouchLessQrStg \r\n') # #out_xml('\t "Herr" \r\n') # out_xml('\t TouchLessQrStg \r\n') # out_xml('\t testservice \r\n') # # out_xml('\t\r\n') # out_xml('\r\n') out_xml(';dummy_layout.inc\r\n') # #out_xml('; menu_new_list '+ str(len(menu_new_list))+'\r\n') def GenListMenu(): for spl in menu_new_list: # print("menu_new_list",spl) #product_code = s #if spl[ idx_of_eng] == "IGNORE": # continue if len(spl) == 1: if spl[0].startswith("TAG"): out_xml( '\t;' + spl[0] + '\r\n') print("Have TAGESP") continue print( '\t; '+ spl[ idx_name][ idx_hot_product_code] + ' ' + spl[ idx_name][ idx_cold_product_code] + ' ' + spl[ idx_name][ idx_blend_product_code] + ' \r\n') # print(spl[ idx_name][ idx_hot_product_code] ,spl[ idx_name][ idx_cold_product_code],spl[ idx_name][ idx_blend_product_code]) if "," in spl[ idx_name][ idx_hot_product_code] and "," in spl[ idx_name][ idx_cold_product_code] and "," in spl[ idx_name][ idx_blend_product_code]: #print(" hot = " + spl[ idx_name][ idx_hot_product_code]) hot_pd = spl[ idx_name][ idx_hot_product_code].split(',') cold_pd = spl[ idx_name][ idx_cold_product_code].split(',') blend_pd = spl[ idx_name][ idx_blend_product_code].split(',') #print(' size = ' + str( len( hot_pd)) + ' size = ' + str( len( cold_pd)) + ' size = ' + str( len( blend_pd)) + '\r\n') list_size = len( hot_pd) # TODO: add check by season if gen_season_pass and multi_pro_gen and current_file_name == "page_catalog_group_recommend_multi_pro.skt": # check with season_pass_menu # 1. is spl[2][8] has any set-X define season_setx = spl[idx_img][8].split('-') # print("expect season define", season_setx) print("current ---> ",current_file_name) if len(season_setx) == 1: print("skip by multi pro and season flag") continue # current_season = season_setx[1] is_bot_right = len(season_setx) > 2 and season_setx[2] != None and season_setx[2] == 'sm' if not is_bot_right: continue for idx in range( list_size): # use_v2 = hot_pd[1] != '-' or cold_pd[ 1] != '-' or blend_pd[ 1] != '-' # if list_size > 1 and gen_season_pass and idx == 0 and spl[idx_img][8].endswith('-sm') and use_v2: # continue print(' hot = ' + hot_pd[ idx] + ' cold = ' + cold_pd[ idx]+ ' blend_pd = ' + blend_pd[ idx] + '\r\n') if hot_pd[ idx] == '-' and cold_pd[ idx] == '-' and blend_pd[ idx] == '-': print("\t\t==> ignore ") else: print("\t\t==> gen ") GenMenuProductCodeBlock(spl, hot_pd[ idx], cold_pd[ idx], blend_pd[ idx] ) else: GenMenuBlock(spl, idx_hot_product_code, idx_cold_product_code, idx_blend_product_code) #out_xml( '\t; parallel '+ spl[ idx_name][ idx_hot_product_code2] + ' ' + spl[ idx_name][ idx_cold_product_code2] + ' ' + spl[ idx_name][ idx_blend_product_code2] + ' \r\n') print("++++++++++++++++++++++++++++++ " + str( count_test) , spl, idx_hot_product_code, idx_cold_product_code, idx_blend_product_code, len(spl[idx_name])) #count_test = count_test + 1 #if count_test > 5 : # break if len( spl[idx_name] ) >= 11: if spl[ idx_name][ idx_hot_product_code2] != "-" or spl[ idx_name][ idx_cold_product_code2] != "-" or spl[ idx_name][ idx_blend_product_code2] != "-": GenMenuBlock(spl, idx_hot_product_code2, idx_cold_product_code2, idx_blend_product_code2) if multi_pro_gen: print("multi_pro_gen") for i in range(1, 5): out_xml(';block'+str(i)+'\r\n') out_xml('\t\r\n') out_xml('\t\t \"Enable\" \r\n') # out_xml('\t\t 22 \r\n') # out_xml('\t\t 33 \r\n') out_xml('\t\t 516 \r\n') out_xml('\t\t 636 \r\n') out_xml('\t\t\r\n') out_xml('\t\t\t 4 \r\n') out_xml('\t\t\t 0 \r\n') out_xml('\t\t\t 0 \r\n') out_xml('\t\t\t 516 \r\n') out_xml('\t\t\t 636 \r\n') out_xml('\t\t\t "auto" \r\n') out_xml('\t\t\t "Vertical" \r\n') out_xml('\t\t\t 2 \r\n') out_xml('\t\t\t\r\n') out_xml(";season-sm-block"+'\r\n') GenListMenu() out_xml(";end-season-sm-block"+'\r\n') out_xml('\t\t\r\n') out_xml('\t\t\r\n') out_xml(';endblock'+str(i)+'\r\n') else: out_xml('; menu_new_list '+ str(len(menu_new_list))+'\r\n') GenListMenu() out_xml('\r\n') out_xml('; Cart\r\n') out_xml('\r\n') # if "v2" in param: