diff options
author | Jihoon Jung <jh8801.jung@samsung.com> | 2016-05-12 17:45:19 +0900 |
---|---|---|
committer | Jihoon Jung <jh8801.jung@samsung.com> | 2016-05-13 11:25:35 +0900 |
commit | 4d6215f92a9c91602c07c696bdbe28477a0d3b5a (patch) | |
tree | 4e9afb5e8a295f55e56491a068c04f5ef1652b32 | |
parent | 377ca9574fe62e2c561d69ee3e63faff3ed5881c (diff) | |
download | ug-nfc-efl-4d6215f92a9c91602c07c696bdbe28477a0d3b5a.tar.gz ug-nfc-efl-4d6215f92a9c91602c07c696bdbe28477a0d3b5a.tar.bz2 ug-nfc-efl-4d6215f92a9c91602c07c696bdbe28477a0d3b5a.zip |
Mobile & Wearable profile migration for NFC setting UIsubmit/tizen/20160513.023151
Signed-off-by: Jihoon Jung <jh8801.jung@samsung.com>
Change-Id: Ie994df70517b8ea72283d16b98a169f61108d324
-rw-r--r-- | AUTHOR | 9 | ||||
-rwxr-xr-x | CMakeLists.txt | 93 | ||||
-rw-r--r-- | LICENSE.Flora (renamed from LICENSE) | 0 | ||||
-rw-r--r-- | NOTICE | 3 | ||||
-rwxr-xr-x | mobile/CMakeLists.txt | 87 | ||||
-rw-r--r-- | mobile/data/edc/ug-nfc-efl.edc (renamed from data/edc/ug-nfc-efl.edc) | 0 | ||||
-rw-r--r-- | mobile/data/icons/setting-nfc.png (renamed from data/icons/setting-nfc.png) | bin | 6386 -> 6386 bytes | |||
-rwxr-xr-x | mobile/include/ug-nfc-setting-main.h (renamed from include/ug-nfc-setting-main.h) | 0 | ||||
-rwxr-xr-x | mobile/po/CMakeLists.txt (renamed from po/CMakeLists.txt) | 0 | ||||
-rw-r--r-- | mobile/po/POTFILES.in (renamed from po/POTFILES.in) | 0 | ||||
-rw-r--r-- | mobile/po/ar.po (renamed from po/ar.po) | 0 | ||||
-rw-r--r-- | mobile/po/az.po (renamed from po/az.po) | 0 | ||||
-rw-r--r-- | mobile/po/bg.po (renamed from po/bg.po) | 0 | ||||
-rw-r--r-- | mobile/po/ca.po (renamed from po/ca.po) | 0 | ||||
-rw-r--r-- | mobile/po/cs.po (renamed from po/cs.po) | 0 | ||||
-rw-r--r-- | mobile/po/da.po (renamed from po/da.po) | 0 | ||||
-rw-r--r-- | mobile/po/de.po (renamed from po/de.po) | 0 | ||||
-rw-r--r-- | mobile/po/el_GR.po (renamed from po/el_GR.po) | 0 | ||||
-rw-r--r-- | mobile/po/en.po (renamed from po/en.po) | 0 | ||||
-rw-r--r-- | mobile/po/en_PH.po (renamed from po/en_PH.po) | 0 | ||||
-rw-r--r-- | mobile/po/en_US.po (renamed from po/en_US.po) | 0 | ||||
-rw-r--r-- | mobile/po/es_ES.po (renamed from po/es_ES.po) | 0 | ||||
-rw-r--r-- | mobile/po/es_US.po (renamed from po/es_US.po) | 0 | ||||
-rw-r--r-- | mobile/po/et.po (renamed from po/et.po) | 0 | ||||
-rw-r--r-- | mobile/po/eu.po (renamed from po/eu.po) | 0 | ||||
-rw-r--r-- | mobile/po/fi.po (renamed from po/fi.po) | 0 | ||||
-rw-r--r-- | mobile/po/fr.po (renamed from po/fr.po) | 0 | ||||
-rw-r--r-- | mobile/po/fr_CA.po (renamed from po/fr_CA.po) | 0 | ||||
-rw-r--r-- | mobile/po/ga.po (renamed from po/ga.po) | 0 | ||||
-rw-r--r-- | mobile/po/gl.po (renamed from po/gl.po) | 0 | ||||
-rw-r--r-- | mobile/po/hi.po (renamed from po/hi.po) | 0 | ||||
-rw-r--r-- | mobile/po/hr.po (renamed from po/hr.po) | 0 | ||||
-rw-r--r-- | mobile/po/hu.po (renamed from po/hu.po) | 0 | ||||
-rw-r--r-- | mobile/po/hy.po (renamed from po/hy.po) | 0 | ||||
-rw-r--r-- | mobile/po/is.po (renamed from po/is.po) | 0 | ||||
-rw-r--r-- | mobile/po/it_IT.po (renamed from po/it_IT.po) | 0 | ||||
-rw-r--r-- | mobile/po/ja_JP.po (renamed from po/ja_JP.po) | 0 | ||||
-rw-r--r-- | mobile/po/ka.po (renamed from po/ka.po) | 0 | ||||
-rw-r--r-- | mobile/po/kk.po (renamed from po/kk.po) | 0 | ||||
-rw-r--r-- | mobile/po/ko_KR.po (renamed from po/ko_KR.po) | 0 | ||||
-rw-r--r-- | mobile/po/lt.po (renamed from po/lt.po) | 0 | ||||
-rw-r--r-- | mobile/po/lv.po (renamed from po/lv.po) | 0 | ||||
-rw-r--r-- | mobile/po/mk.po (renamed from po/mk.po) | 0 | ||||
-rw-r--r-- | mobile/po/nb.po (renamed from po/nb.po) | 0 | ||||
-rw-r--r-- | mobile/po/nl.po (renamed from po/nl.po) | 0 | ||||
-rw-r--r-- | mobile/po/pl.po (renamed from po/pl.po) | 0 | ||||
-rw-r--r-- | mobile/po/pt_BR.po (renamed from po/pt_BR.po) | 0 | ||||
-rw-r--r-- | mobile/po/pt_PT.po (renamed from po/pt_PT.po) | 0 | ||||
-rw-r--r-- | mobile/po/ro.po (renamed from po/ro.po) | 0 | ||||
-rw-r--r-- | mobile/po/ru_RU.po (renamed from po/ru_RU.po) | 0 | ||||
-rw-r--r-- | mobile/po/sk.po (renamed from po/sk.po) | 0 | ||||
-rw-r--r-- | mobile/po/sl.po (renamed from po/sl.po) | 0 | ||||
-rw-r--r-- | mobile/po/sr.po (renamed from po/sr.po) | 0 | ||||
-rw-r--r-- | mobile/po/sv.po (renamed from po/sv.po) | 0 | ||||
-rw-r--r-- | mobile/po/tr_TR.po (renamed from po/tr_TR.po) | 0 | ||||
-rw-r--r-- | mobile/po/uk.po (renamed from po/uk.po) | 0 | ||||
-rwxr-xr-x | mobile/po/update-po.sh (renamed from po/update-po.sh) | 0 | ||||
-rw-r--r-- | mobile/po/uz.po (renamed from po/uz.po) | 0 | ||||
-rw-r--r-- | mobile/po/zh_CN.po (renamed from po/zh_CN.po) | 0 | ||||
-rw-r--r-- | mobile/po/zh_HK.po (renamed from po/zh_HK.po) | 0 | ||||
-rw-r--r-- | mobile/po/zh_TW.po (renamed from po/zh_TW.po) | 0 | ||||
-rwxr-xr-x | mobile/src/ug-nfc-setting-main.c (renamed from src/ug-nfc-setting-main.c) | 5 | ||||
-rwxr-xr-x | mobile/ug-nfc-efl.xml (renamed from ug-nfc-efl.xml) | 0 | ||||
-rw-r--r-- | packaging/ug-nfc-efl.spec | 86 | ||||
-rwxr-xr-x | wearable/CMakeLists.txt | 41 | ||||
-rw-r--r-- | wearable/app/CMakeLists.txt | 50 | ||||
-rw-r--r-- | wearable/app/data/CMakeLists.txt | 9 | ||||
-rw-r--r-- | wearable/app/data/edc/nfc-setting-app.edc | 279 | ||||
-rw-r--r-- | wearable/app/data/images/b_setting_payment_help_image.png | bin | 0 -> 10470 bytes | |||
-rw-r--r-- | wearable/app/data/images/tw_ic_popup_btn_check.png | bin | 0 -> 1331 bytes | |||
-rw-r--r-- | wearable/app/data/images/tw_list_fadeout_right_masking.#.png | bin | 0 -> 1059 bytes | |||
-rw-r--r-- | wearable/app/include/nsa-debug.h | 144 | ||||
-rwxr-xr-x | wearable/app/include/nsa-main.h | 86 | ||||
-rw-r--r-- | wearable/app/include/nsa-popup.h | 51 | ||||
-rwxr-xr-x | wearable/app/include/nsa-string.h | 56 | ||||
-rw-r--r-- | wearable/app/include/nsa-ui-widget.h | 44 | ||||
-rw-r--r-- | wearable/app/include/nsa-util.h | 95 | ||||
-rwxr-xr-x | wearable/app/include/nsa-view.h | 44 | ||||
-rwxr-xr-x | wearable/app/src/nsa-main.c | 418 | ||||
-rwxr-xr-x | wearable/app/src/nsa-popup.c | 152 | ||||
-rw-r--r-- | wearable/app/src/nsa-ui-widget.c | 180 | ||||
-rwxr-xr-x | wearable/app/src/nsa-view-main.c | 596 | ||||
-rwxr-xr-x | wearable/app/src/nsa-view-tap-n-pay.c | 918 | ||||
-rwxr-xr-x | wearable/org.tizen.nfc-setting-app.xml | 17 | ||||
-rw-r--r-- | wearable/po/CMakeLists.txt | 108 | ||||
-rw-r--r-- | wearable/po/ar.po | 18 | ||||
-rw-r--r-- | wearable/po/as.po | 18 | ||||
-rw-r--r-- | wearable/po/az.po | 18 | ||||
-rw-r--r-- | wearable/po/be_BY.po | 18 | ||||
-rw-r--r-- | wearable/po/bg.po | 18 | ||||
-rw-r--r-- | wearable/po/bn.po | 18 | ||||
-rw-r--r-- | wearable/po/bn_BD.po | 18 | ||||
-rw-r--r-- | wearable/po/ca.po | 18 | ||||
-rw-r--r-- | wearable/po/cs.po | 18 | ||||
-rw-r--r-- | wearable/po/da.po | 18 | ||||
-rw-r--r-- | wearable/po/de.po | 18 | ||||
-rw-r--r-- | wearable/po/el_GR.po | 18 | ||||
-rw-r--r-- | wearable/po/en.po | 18 | ||||
-rw-r--r-- | wearable/po/en_PH.po | 18 | ||||
-rw-r--r-- | wearable/po/en_US.po | 18 | ||||
-rw-r--r-- | wearable/po/es_ES.po | 18 | ||||
-rw-r--r-- | wearable/po/es_US.po | 18 | ||||
-rw-r--r-- | wearable/po/et.po | 18 | ||||
-rw-r--r-- | wearable/po/eu.po | 18 | ||||
-rw-r--r-- | wearable/po/fa.po | 18 | ||||
-rw-r--r-- | wearable/po/fi.po | 18 | ||||
-rw-r--r-- | wearable/po/fr.po | 18 | ||||
-rw-r--r-- | wearable/po/fr_CA.po | 18 | ||||
-rw-r--r-- | wearable/po/ga.po | 18 | ||||
-rw-r--r-- | wearable/po/gl.po | 18 | ||||
-rw-r--r-- | wearable/po/gu.po | 18 | ||||
-rw-r--r-- | wearable/po/he.po | 18 | ||||
-rw-r--r-- | wearable/po/hi.po | 18 | ||||
-rw-r--r-- | wearable/po/hr.po | 18 | ||||
-rw-r--r-- | wearable/po/hu.po | 18 | ||||
-rw-r--r-- | wearable/po/hy.po | 18 | ||||
-rw-r--r-- | wearable/po/id.po | 18 | ||||
-rw-r--r-- | wearable/po/is.po | 18 | ||||
-rw-r--r-- | wearable/po/it_IT.po | 18 | ||||
-rw-r--r-- | wearable/po/ja_JP.po | 18 | ||||
-rw-r--r-- | wearable/po/ka.po | 18 | ||||
-rw-r--r-- | wearable/po/kk.po | 18 | ||||
-rw-r--r-- | wearable/po/km.po | 18 | ||||
-rw-r--r-- | wearable/po/kn.po | 18 | ||||
-rw-r--r-- | wearable/po/ko_KR.po | 18 | ||||
-rw-r--r-- | wearable/po/ky_KG.po | 18 | ||||
-rw-r--r-- | wearable/po/lo.po | 18 | ||||
-rw-r--r-- | wearable/po/lt.po | 18 | ||||
-rw-r--r-- | wearable/po/lv.po | 18 | ||||
-rw-r--r-- | wearable/po/mk.po | 18 | ||||
-rw-r--r-- | wearable/po/ml.po | 18 | ||||
-rw-r--r-- | wearable/po/mn_MN.po | 18 | ||||
-rw-r--r-- | wearable/po/mr.po | 18 | ||||
-rw-r--r-- | wearable/po/ms.po | 18 | ||||
-rw-r--r-- | wearable/po/my_MM.po | 18 | ||||
-rw-r--r-- | wearable/po/my_ZG.po | 18 | ||||
-rw-r--r-- | wearable/po/nb.po | 18 | ||||
-rw-r--r-- | wearable/po/ne.po | 18 | ||||
-rw-r--r-- | wearable/po/nl.po | 18 | ||||
-rw-r--r-- | wearable/po/or.po | 18 | ||||
-rw-r--r-- | wearable/po/pa.po | 18 | ||||
-rw-r--r-- | wearable/po/pl.po | 18 | ||||
-rw-r--r-- | wearable/po/pl_SP.po | 18 | ||||
-rw-r--r-- | wearable/po/pt_BR.po | 18 | ||||
-rw-r--r-- | wearable/po/pt_PT.po | 18 | ||||
-rw-r--r-- | wearable/po/ro.po | 18 | ||||
-rw-r--r-- | wearable/po/ru_RU.po | 18 | ||||
-rw-r--r-- | wearable/po/si.po | 18 | ||||
-rw-r--r-- | wearable/po/sk.po | 18 | ||||
-rw-r--r-- | wearable/po/sl.po | 18 | ||||
-rw-r--r-- | wearable/po/sq.po | 18 | ||||
-rw-r--r-- | wearable/po/sr.po | 18 | ||||
-rw-r--r-- | wearable/po/sv.po | 18 | ||||
-rw-r--r-- | wearable/po/ta.po | 18 | ||||
-rw-r--r-- | wearable/po/te.po | 18 | ||||
-rw-r--r-- | wearable/po/tg_TJ.po | 18 | ||||
-rw-r--r-- | wearable/po/th.po | 18 | ||||
-rw-r--r-- | wearable/po/tk_TM.po | 18 | ||||
-rw-r--r-- | wearable/po/tl.po | 18 | ||||
-rw-r--r-- | wearable/po/tr_TR.po | 18 | ||||
-rw-r--r-- | wearable/po/uk.po | 18 | ||||
-rw-r--r-- | wearable/po/ur.po | 18 | ||||
-rw-r--r-- | wearable/po/uz.po | 18 | ||||
-rw-r--r-- | wearable/po/vi.po | 18 | ||||
-rw-r--r-- | wearable/po/zh_CN.po | 18 | ||||
-rw-r--r-- | wearable/po/zh_HK.po | 18 | ||||
-rw-r--r-- | wearable/po/zh_TW.po | 18 |
167 files changed, 4901 insertions, 146 deletions
@@ -1,8 +1 @@ -Lee Sangsoo <constant.lee at samsung dot com> -Junyong Sim <junyong.sim at samsung dot com> -Wonkyu Kwon <wonkyu.kwon at samsung dot com> -Sungjae Lim <neueziel.lim at samsung dot com> -Sechang Sohn <sc.sohn at samsung dot com> -Jinmin Chung <jinmin at samsung dot com> -Jaekyun Lee <jkyun.lee at samsung dot com> -Jihoon Jung <jh8801.jung at samsung dot com> +Jihoon Jung <jh8801.jung@samsung.com> diff --git a/CMakeLists.txt b/CMakeLists.txt index 435f9ed..5f10442 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,88 +1,13 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -PROJECT(ug-nfc-efl C) -SET(PREFIX ${CMAKE_INSTALL_PREFIX}) -SET(EXEC_PREFIX "\${prefix}") -SET(LIBDIR "\${prefix}/lib") -SET(INCLUDEDIR "\${prefix}/include") -SET(VERSION 0.1.0) -SET(RESDIR "${PREFIX}/res") -SET(LOCALEDIR "${RESDIR}/locale") -SET(EDJDIR "${RESDIR}/edje/${PROJECT_NAME}") -SET(ICONDIR "${RESDIR}/icons/${PROJECT_NAME}") +MESSAGE("build nfc setting menu") -ADD_DEFINITIONS("-DPACKAGE=\"ug-nfc-efl\"") -ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"") -ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"") -ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") -ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"") +IF(TIZEN_MOBILE) +MESSAGE("profile : mobile") +ADD_SUBDIRECTORY(mobile) +ENDIF(TIZEN_MOBILE) -SET(SRCS -src/ug-nfc-setting-main.c -) - -IF("${CMAKE_BUILD_TYPE}" STREQUAL "") - SET(CMAKE_BUILD_TYPE "Release") -ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "") -MESSAGE("Build type: ${CMAKE_BUILD_TYPE}") - -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) - -INCLUDE(FindPkgConfig) -pkg_check_modules(pkgs_ug_nfc_setting REQUIRED -ecore-evas -elementary -efl-extension -ui-gadget-1 -dlog -vconf -capi-appfw-application -capi-network-nfc -capi-appfw-app-manager -sqlite3 -notification -) - -FOREACH(flag ${pkgs_ug_nfc_setting_CFLAGS}) - SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") -ENDFOREACH(flag) - -SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration") -SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") -SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") -SET(CMAKE_C_FLAGS_RELEASE "-O2") - -FIND_PROGRAM(UNAME NAMES uname) -EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH") -IF("${ARCH}" STREQUAL "arm") - ADD_DEFINITIONS("-DTARGET") - MESSAGE("add -DTARGET") -ENDIF("${ARCH}" STREQUAL "arm") - -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed") - -ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"") -ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") -ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"") -ADD_DEFINITIONS("-D_SBEAM_SUPPORT_") - -ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}) -SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION 0.1.0) -TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_ug_nfc_setting_LDFLAGS}) - -ADD_CUSTOM_TARGET(ug-nfc-efl.edj - COMMAND edje_cc - ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/ug-nfc-efl.edc ${CMAKE_BINARY_DIR}/ug-nfc-efl.edj - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/ug-nfc-efl.edc -) -ADD_DEPENDENCIES(${PROJECT_NAME} ug-nfc-efl.edj) - -INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR}) -INSTALL(FILES ${CMAKE_BINARY_DIR}/ug-nfc-efl.edj DESTINATION ${EDJDIR}) - -INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/icons/setting-nfc.png DESTINATION ${ICONDIR}) - -# install xml file -INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ug-nfc-efl.xml DESTINATION /usr/share/packages/) - -ADD_SUBDIRECTORY(po) +IF(TIZEN_WEARABLE) +MESSAGE("profile : wearable") +ADD_SUBDIRECTORY(wearable) +ENDIF(TIZEN_WEARABLE) @@ -1,3 +0,0 @@ -Copyright (c) Samsung Electronics Co., Ltd. All rights reserved. -Except as noted, this software is licensed under Flora License, Version 1. -Please, see the LICENSE.Flora file for Flora License terms and conditions. diff --git a/mobile/CMakeLists.txt b/mobile/CMakeLists.txt new file mode 100755 index 0000000..2f0466b --- /dev/null +++ b/mobile/CMakeLists.txt @@ -0,0 +1,87 @@ +PROJECT(ug-nfc-efl C) + +SET(PREFIX ${CMAKE_INSTALL_PREFIX}) +SET(EXEC_PREFIX "\${prefix}") +SET(LIBDIR "\${prefix}/lib") +SET(INCLUDEDIR "\${prefix}/include") +SET(VERSION 0.1.0) +SET(RESDIR "${PREFIX}/res") +SET(LOCALEDIR "${RESDIR}/locale") +SET(EDJDIR "${RESDIR}/edje/${PROJECT_NAME}") +SET(ICONDIR "${RESDIR}/icons/${PROJECT_NAME}") + +ADD_DEFINITIONS("-DPACKAGE=\"ug-nfc-efl\"") +ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"") +ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"") +ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") +ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"") + +SET(SRCS +src/ug-nfc-setting-main.c +) + +IF("${CMAKE_BUILD_TYPE}" STREQUAL "") + SET(CMAKE_BUILD_TYPE "Release") +ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "") +MESSAGE("Build type: ${CMAKE_BUILD_TYPE}") + +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) + +INCLUDE(FindPkgConfig) +pkg_check_modules(pkgs_ug_nfc_setting REQUIRED +ecore-evas +elementary +efl-extension +ui-gadget-1 +dlog +vconf +capi-appfw-application +capi-network-nfc +capi-appfw-app-manager +sqlite3 +notification +) + +FOREACH(flag ${pkgs_ug_nfc_setting_CFLAGS}) + SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +ENDFOREACH(flag) + +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration") +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") +SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") +SET(CMAKE_C_FLAGS_RELEASE "-O2") + +FIND_PROGRAM(UNAME NAMES uname) +EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH") +IF("${ARCH}" STREQUAL "arm") + ADD_DEFINITIONS("-DTARGET") + MESSAGE("add -DTARGET") +ENDIF("${ARCH}" STREQUAL "arm") + +SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed") + +ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"") +ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") +ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"") +ADD_DEFINITIONS("-D_SBEAM_SUPPORT_") + +ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}) +SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION 0.1.0) +TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_ug_nfc_setting_LDFLAGS}) + +ADD_CUSTOM_TARGET(ug-nfc-efl.edj + COMMAND edje_cc + ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/ug-nfc-efl.edc ${CMAKE_BINARY_DIR}/ug-nfc-efl.edj + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/data/edc/ug-nfc-efl.edc +) +ADD_DEPENDENCIES(${PROJECT_NAME} ug-nfc-efl.edj) + +INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR}) +INSTALL(FILES ${CMAKE_BINARY_DIR}/ug-nfc-efl.edj DESTINATION ${EDJDIR}) + +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/icons/setting-nfc.png DESTINATION ${ICONDIR}) + +# install xml file +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ug-nfc-efl.xml DESTINATION /usr/share/packages/) + +ADD_SUBDIRECTORY(po) diff --git a/data/edc/ug-nfc-efl.edc b/mobile/data/edc/ug-nfc-efl.edc index a49dbf6..a49dbf6 100644 --- a/data/edc/ug-nfc-efl.edc +++ b/mobile/data/edc/ug-nfc-efl.edc diff --git a/data/icons/setting-nfc.png b/mobile/data/icons/setting-nfc.png Binary files differindex cfdabab..cfdabab 100644 --- a/data/icons/setting-nfc.png +++ b/mobile/data/icons/setting-nfc.png diff --git a/include/ug-nfc-setting-main.h b/mobile/include/ug-nfc-setting-main.h index 064e57c..064e57c 100755 --- a/include/ug-nfc-setting-main.h +++ b/mobile/include/ug-nfc-setting-main.h diff --git a/po/CMakeLists.txt b/mobile/po/CMakeLists.txt index 4e58de6..4e58de6 100755 --- a/po/CMakeLists.txt +++ b/mobile/po/CMakeLists.txt diff --git a/po/POTFILES.in b/mobile/po/POTFILES.in index 2068f24..2068f24 100644 --- a/po/POTFILES.in +++ b/mobile/po/POTFILES.in diff --git a/po/ar.po b/mobile/po/ar.po index 959fa03..959fa03 100644 --- a/po/ar.po +++ b/mobile/po/ar.po diff --git a/po/az.po b/mobile/po/az.po index 0ef4e48..0ef4e48 100644 --- a/po/az.po +++ b/mobile/po/az.po diff --git a/po/bg.po b/mobile/po/bg.po index 63f0265..63f0265 100644 --- a/po/bg.po +++ b/mobile/po/bg.po diff --git a/po/ca.po b/mobile/po/ca.po index 7d6d3b2..7d6d3b2 100644 --- a/po/ca.po +++ b/mobile/po/ca.po diff --git a/po/cs.po b/mobile/po/cs.po index e20cde8..e20cde8 100644 --- a/po/cs.po +++ b/mobile/po/cs.po diff --git a/po/da.po b/mobile/po/da.po index c446d21..c446d21 100644 --- a/po/da.po +++ b/mobile/po/da.po diff --git a/po/de.po b/mobile/po/de.po index 058ff27..058ff27 100644 --- a/po/de.po +++ b/mobile/po/de.po diff --git a/po/el_GR.po b/mobile/po/el_GR.po index 59759a1..59759a1 100644 --- a/po/el_GR.po +++ b/mobile/po/el_GR.po diff --git a/po/en.po b/mobile/po/en.po index a893325..a893325 100644 --- a/po/en.po +++ b/mobile/po/en.po diff --git a/po/en_PH.po b/mobile/po/en_PH.po index acef833..acef833 100644 --- a/po/en_PH.po +++ b/mobile/po/en_PH.po diff --git a/po/en_US.po b/mobile/po/en_US.po index 70a1754..70a1754 100644 --- a/po/en_US.po +++ b/mobile/po/en_US.po diff --git a/po/es_ES.po b/mobile/po/es_ES.po index 9fb5eda..9fb5eda 100644 --- a/po/es_ES.po +++ b/mobile/po/es_ES.po diff --git a/po/es_US.po b/mobile/po/es_US.po index 7262062..7262062 100644 --- a/po/es_US.po +++ b/mobile/po/es_US.po diff --git a/po/et.po b/mobile/po/et.po index aef6c3e..aef6c3e 100644 --- a/po/et.po +++ b/mobile/po/et.po diff --git a/po/eu.po b/mobile/po/eu.po index d10adb2..d10adb2 100644 --- a/po/eu.po +++ b/mobile/po/eu.po diff --git a/po/fi.po b/mobile/po/fi.po index 3bf66b7..3bf66b7 100644 --- a/po/fi.po +++ b/mobile/po/fi.po diff --git a/po/fr.po b/mobile/po/fr.po index c38ee3a..c38ee3a 100644 --- a/po/fr.po +++ b/mobile/po/fr.po diff --git a/po/fr_CA.po b/mobile/po/fr_CA.po index 3637bc7..3637bc7 100644 --- a/po/fr_CA.po +++ b/mobile/po/fr_CA.po diff --git a/po/ga.po b/mobile/po/ga.po index bacdd74..bacdd74 100644 --- a/po/ga.po +++ b/mobile/po/ga.po diff --git a/po/gl.po b/mobile/po/gl.po index 7005ecc..7005ecc 100644 --- a/po/gl.po +++ b/mobile/po/gl.po diff --git a/po/hi.po b/mobile/po/hi.po index c26feb2..c26feb2 100644 --- a/po/hi.po +++ b/mobile/po/hi.po diff --git a/po/hr.po b/mobile/po/hr.po index 0f1f0cb..0f1f0cb 100644 --- a/po/hr.po +++ b/mobile/po/hr.po diff --git a/po/hu.po b/mobile/po/hu.po index 19b991c..19b991c 100644 --- a/po/hu.po +++ b/mobile/po/hu.po diff --git a/po/hy.po b/mobile/po/hy.po index 7b02e80..7b02e80 100644 --- a/po/hy.po +++ b/mobile/po/hy.po diff --git a/po/is.po b/mobile/po/is.po index 446cffb..446cffb 100644 --- a/po/is.po +++ b/mobile/po/is.po diff --git a/po/it_IT.po b/mobile/po/it_IT.po index 615d83d..615d83d 100644 --- a/po/it_IT.po +++ b/mobile/po/it_IT.po diff --git a/po/ja_JP.po b/mobile/po/ja_JP.po index 4b7c2dd..4b7c2dd 100644 --- a/po/ja_JP.po +++ b/mobile/po/ja_JP.po diff --git a/po/ka.po b/mobile/po/ka.po index 2070a77..2070a77 100644 --- a/po/ka.po +++ b/mobile/po/ka.po diff --git a/po/kk.po b/mobile/po/kk.po index d1cf014..d1cf014 100644 --- a/po/kk.po +++ b/mobile/po/kk.po diff --git a/po/ko_KR.po b/mobile/po/ko_KR.po index 2ab7eb2..2ab7eb2 100644 --- a/po/ko_KR.po +++ b/mobile/po/ko_KR.po diff --git a/po/lt.po b/mobile/po/lt.po index 76bb01c..76bb01c 100644 --- a/po/lt.po +++ b/mobile/po/lt.po diff --git a/po/lv.po b/mobile/po/lv.po index 5eb7b38..5eb7b38 100644 --- a/po/lv.po +++ b/mobile/po/lv.po diff --git a/po/mk.po b/mobile/po/mk.po index 8d1f555..8d1f555 100644 --- a/po/mk.po +++ b/mobile/po/mk.po diff --git a/po/nb.po b/mobile/po/nb.po index 1071392..1071392 100644 --- a/po/nb.po +++ b/mobile/po/nb.po diff --git a/po/nl.po b/mobile/po/nl.po index 867fbce..867fbce 100644 --- a/po/nl.po +++ b/mobile/po/nl.po diff --git a/po/pl.po b/mobile/po/pl.po index aeb8a8b..aeb8a8b 100644 --- a/po/pl.po +++ b/mobile/po/pl.po diff --git a/po/pt_BR.po b/mobile/po/pt_BR.po index 3384b5d..3384b5d 100644 --- a/po/pt_BR.po +++ b/mobile/po/pt_BR.po diff --git a/po/pt_PT.po b/mobile/po/pt_PT.po index 2c707f1..2c707f1 100644 --- a/po/pt_PT.po +++ b/mobile/po/pt_PT.po diff --git a/po/ro.po b/mobile/po/ro.po index 26b0948..26b0948 100644 --- a/po/ro.po +++ b/mobile/po/ro.po diff --git a/po/ru_RU.po b/mobile/po/ru_RU.po index 9fa5be0..9fa5be0 100644 --- a/po/ru_RU.po +++ b/mobile/po/ru_RU.po diff --git a/po/sk.po b/mobile/po/sk.po index 236c973..236c973 100644 --- a/po/sk.po +++ b/mobile/po/sk.po diff --git a/po/sl.po b/mobile/po/sl.po index 47737a9..47737a9 100644 --- a/po/sl.po +++ b/mobile/po/sl.po diff --git a/po/sr.po b/mobile/po/sr.po index 323097a..323097a 100644 --- a/po/sr.po +++ b/mobile/po/sr.po diff --git a/po/sv.po b/mobile/po/sv.po index 331483b..331483b 100644 --- a/po/sv.po +++ b/mobile/po/sv.po diff --git a/po/tr_TR.po b/mobile/po/tr_TR.po index 9ffd90c..9ffd90c 100644 --- a/po/tr_TR.po +++ b/mobile/po/tr_TR.po diff --git a/po/uk.po b/mobile/po/uk.po index ca9e280..ca9e280 100644 --- a/po/uk.po +++ b/mobile/po/uk.po diff --git a/po/update-po.sh b/mobile/po/update-po.sh index 4b81193..4b81193 100755 --- a/po/update-po.sh +++ b/mobile/po/update-po.sh diff --git a/po/uz.po b/mobile/po/uz.po index 057a34c..057a34c 100644 --- a/po/uz.po +++ b/mobile/po/uz.po diff --git a/po/zh_CN.po b/mobile/po/zh_CN.po index 44b5fa8..44b5fa8 100644 --- a/po/zh_CN.po +++ b/mobile/po/zh_CN.po diff --git a/po/zh_HK.po b/mobile/po/zh_HK.po index ce0938a..ce0938a 100644 --- a/po/zh_HK.po +++ b/mobile/po/zh_HK.po diff --git a/po/zh_TW.po b/mobile/po/zh_TW.po index e4058b6..e4058b6 100644 --- a/po/zh_TW.po +++ b/mobile/po/zh_TW.po diff --git a/src/ug-nfc-setting-main.c b/mobile/src/ug-nfc-setting-main.c index 48d6094..f27218e 100755 --- a/src/ug-nfc-setting-main.c +++ b/mobile/src/ug-nfc-setting-main.c @@ -92,8 +92,6 @@ static bool __reply_to_launch_request(app_control_h service, app_control_result_ static void __nfc_activation_completed_cb(nfc_error_e error, void *user_data) { - ugdata_t *ug_data = (ugdata_t *)user_data; - LOGD("BEGIN >>>>"); if (error != NFC_ERROR_NONE) { @@ -431,8 +429,6 @@ static void __ug_nfc_destroy(ui_gadget_h ug, app_control_h service, void *priv) static void __ug_nfc_start(ui_gadget_h ug, app_control_h service, void *priv) { - ugdata_t *ug_data = (ugdata_t *)priv; - LOGD("BEGIN >>>>"); if (nfc_manager_is_supported() == false) { @@ -463,7 +459,6 @@ UG_MODULE_API int UG_MODULE_INIT(struct ug_module_ops *ops) ops->start = __ug_nfc_start; ops->destroy = __ug_nfc_destroy; ops->priv = ug_data; - ops->opt = UG_OPT_INDICATOR_ENABLE; return 0; } diff --git a/ug-nfc-efl.xml b/mobile/ug-nfc-efl.xml index 694fe54..694fe54 100755 --- a/ug-nfc-efl.xml +++ b/mobile/ug-nfc-efl.xml diff --git a/packaging/ug-nfc-efl.spec b/packaging/ug-nfc-efl.spec index b5a1855..fe8c193 100644 --- a/packaging/ug-nfc-efl.spec +++ b/packaging/ug-nfc-efl.spec @@ -1,84 +1,78 @@ -%define _usrdir /usr -%define _ugdir %{_usrdir}/ug - -%if "%{?tizen_profile_name}" == "wearable" -ExcludeArch: %{arm} %ix86 x86_64 +%if 0 +Name: ug-nfc-efl +Summary: NFC Setting UI for Mobile profile +%global PREFIX /usr/ug %endif -%if "%{?tizen_profile_name}" == "tv" -ExcludeArch: %{arm} %ix86 x86_64 +%if 1 +Name: org.tizen.nfc-setting-app +Summary: NFC Setting UI for Wearable profile +%global PREFIX %{_prefix}/apps/%{name} %endif -Name: ug-nfc-efl -Summary: UI gadget about the nfc -Version: 3.0.0 +Version: 3.1.0 Release: 0 -Group: TO_BE/FILLED_IN +Group: App/Network License: Flora-1.1 Source0: %{name}-%{version}.tar.gz -BuildRequires: pkgconfig(elementary) -BuildRequires: pkgconfig(efl-extension) + +%if 0 BuildRequires: pkgconfig(ui-gadget-1) -BuildRequires: pkgconfig(dlog) -BuildRequires: pkgconfig(vconf) BuildRequires: pkgconfig(notification) -BuildRequires: pkgconfig(capi-appfw-application) -BuildRequires: pkgconfig(capi-network-nfc) BuildRequires: pkgconfig(capi-content-mime-type) BuildRequires: pkgconfig(capi-appfw-app-manager) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(notification) +%endif + +%if 1 +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(pkgmgr-info) +BuildRequires: pkgconfig(syspopup) +%endif +BuildRequires: pkgconfig(capi-network-nfc) +BuildRequires: pkgconfig(capi-appfw-application) +BuildRequires: pkgconfig(dlog) +BuildRequires: pkgconfig(vconf) +BuildRequires: pkgconfig(efl-extension) +BuildRequires: pkgconfig(elementary) BuildRequires: cmake BuildRequires: edje-tools BuildRequires: gettext-tools - Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %description -UI gadget about the nfc +NFC Setting UI %prep %setup -q -%package devel -Summary: ug for nfc setting -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} - -%description devel -ug for nfc setting - %build -export CFLAGS="$CFLAGS -DTIZEN_ENGINEER_MODE" -export CXXFLAGS="$CXXFLAGS -DTIZEN_ENGINEER_MODE" -export FFLAGS="$FFLAGS -DTIZEN_ENGINEER_MODE" -mkdir cmake_tmp -cd cmake_tmp -cmake .. -DCMAKE_INSTALL_PREFIX=%{_ugdir} +cmake . -DCMAKE_INSTALL_PREFIX=%{PREFIX} \ +%if 0 + -DTIZEN_MOBILE=1 +%endif +%if 1 + -DTIZEN_WEARABLE=1 +%endif make %{?jobs:-j%jobs} %install -cd cmake_tmp -rm -rf %{buildroot} %make_install + mkdir -p %{buildroot}/usr/share/license -mkdir -p %{buildroot}/etc/config/nfc/ -cp -af %{_builddir}/%{name}-%{version}/LICENSE %{buildroot}/usr/share/license/ +cp -af %{_builddir}/%{name}-%{version}/LICENSE.Flora %{buildroot}/usr/share/license/ %post -mkdir -p /usr/ug/bin/ -ln -sf /usr/bin/ug-client /usr/ug/bin/setting-nfc-efl +/sbin/ldconfig -%postun +%postun -p /sbin/ldconfig %files %defattr(-,root,root,-) -/usr/ug/lib/libug-nfc-efl.* -/usr/ug/res/edje/ug-nfc-efl/*.edj -/usr/ug/res/locale/*/LC_MESSAGES/ug-nfc-efl* -/usr/ug/res/icons/* -/usr/share/license/LICENSE -/usr/share/packages/* +%{_datadir}/license/LICENSE.Flora +%{_datadir}/packages/* +%{PREFIX}/* diff --git a/wearable/CMakeLists.txt b/wearable/CMakeLists.txt new file mode 100755 index 0000000..fd4ca87 --- /dev/null +++ b/wearable/CMakeLists.txt @@ -0,0 +1,41 @@ +SET(PREFIX ${CMAKE_INSTALL_PREFIX}) +SET(BINDIR "${PREFIX}/bin") +SET(RESDIR "${PREFIX}/res") +SET(LOCALEDIR "${RESDIR}/locale") +SET(IMGDIR "${RESDIR}/images") +SET(EDJDIR "${RESDIR}/edje") +SET(ICONDIR "${CMAKE_SHARE_PREFIX}/icons/default/small") +SET(XMLDIR "${CMAKE_SHARE_PREFIX}/packages") +SET(DATADIR "${CMAKE_DATA_PREFIX}") +SET(TABLEDIR "${PREFIX}/shared/res/tables") + +ADD_DEFINITIONS("-DPACKAGE=\"nfc-setting-app\"") +ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"") +ADD_DEFINITIONS("-DRESDIR=\"${RESDIR}\"") +ADD_DEFINITIONS("-DLOCALEDIR=\"${LOCALEDIR}\"") +ADD_DEFINITIONS("-DIMGDIR=\"${IMGDIR}\"") +ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") +ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"") +ADD_DEFINITIONS("-DDATADIR=\"${DATADIR}\"") +ADD_DEFINITIONS("-DTABLEDIR=\"${TABLEDIR}\"") + +IF("${CMAKE_BUILD_TYPE}" STREQUAL "") + SET(CMAKE_BUILD_TYPE "Debug") +ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "") +MESSAGE("Build type: ${CMAKE_BUILD_TYPE}") + +#------- for development -------- +ADD_DEFINITIONS("-DNSA_LOG_LEVEL_2") +#-------------------------------- + +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration") +SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") +SET(CMAKE_C_FLAGS_RELEASE "-O2") + +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/org.tizen.nfc-setting-app.xml DESTINATION /usr/share/packages/) + +# source file +ADD_SUBDIRECTORY(app) +ADD_SUBDIRECTORY(po) + +# End of a file diff --git a/wearable/app/CMakeLists.txt b/wearable/app/CMakeLists.txt new file mode 100644 index 0000000..7f6ffc3 --- /dev/null +++ b/wearable/app/CMakeLists.txt @@ -0,0 +1,50 @@ +CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +PROJECT(nfc-setting-app C) + +SET(SRCS +src/nsa-main.c +src/nsa-popup.c +src/nsa-ui-widget.c +src/nsa-view-main.c +src/nsa-view-tap-n-pay.c +) + +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) + +# include library + +SET(dependents "glib-2.0 elementary efl-extension pkgmgr-info dlog vconf capi-appfw-application capi-network-nfc") + +INCLUDE(FindPkgConfig) +pkg_check_modules(pkgs_app REQUIRED +${dependents} +) +# include library - + +FOREACH(flag ${pkgs_app_CFLAGS}) + SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +ENDFOREACH(flag) + +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIE -Wl,-rpath,${LIBDIR}") +SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") + +FIND_PROGRAM(UNAME NAMES uname) +EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH") +IF("${ARCH}" STREQUAL "arm") + ADD_DEFINITIONS("-DTARGET") + MESSAGE("add -DTARGET") +ENDIF("${ARCH}" STREQUAL "arm") +ADD_DEFINITIONS("-fpie") +MESSAGE("CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}") +ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"") + +SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed") + +ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS}) +TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_app_LDFLAGS} "-pie") +INSTALL(TARGETS ${PROJECT_NAME} DESTINATION bin) + +# install image +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/images/b_setting_payment_help_image.png DESTINATION ${IMGDIR}) +INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/images/tw_ic_popup_btn_check.png DESTINATION ${IMGDIR}) + +ADD_SUBDIRECTORY(data) diff --git a/wearable/app/data/CMakeLists.txt b/wearable/app/data/CMakeLists.txt new file mode 100644 index 0000000..915c822 --- /dev/null +++ b/wearable/app/data/CMakeLists.txt @@ -0,0 +1,9 @@ +ADD_CUSTOM_TARGET(${PROJECT_NAME}.edj + COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images + ${CMAKE_CURRENT_SOURCE_DIR}/edc/${PROJECT_NAME}.edc ${PROJECT_NAME}.edj + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/edc/${PROJECT_NAME}.edc +) +ADD_DEPENDENCIES(${PROJECT_NAME} ${PROJECT_NAME}.edj) +INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.edj DESTINATION ${EDJDIR}) + +# End of a file diff --git a/wearable/app/data/edc/nfc-setting-app.edc b/wearable/app/data/edc/nfc-setting-app.edc new file mode 100644 index 0000000..b76f4e9 --- /dev/null +++ b/wearable/app/data/edc/nfc-setting-app.edc @@ -0,0 +1,279 @@ + +// Layout - No Item +#define TITLE_TEXT_SIZE_W 226 +#define TITLE_TEXT_SIZE_H 39 +#define TITLE_FONT_SIZE 39 +#define HELP_TEXT_SIZE_W 232 +#define HELP_TEXT_SIZE_H 42 +#define HELP_FONT_SIZE 42 +#define LR_PADDING_SIZE 33 +#define DESC_LR_PADDING_SIZE 64 +#define IMAGE_SIZE_W 294 +#define IMAGE_SIZE_H 122 +#define IMAGE_PADDING_H 5 +#define TITLE_LR_PADDING_SIZE 67 +#define TITLE_TOP_PADDING_SIZE 60 +#define TITLE_BOTTOM_PADDING_SIZE 7 + +#define STYLE_TAG_MATCH \ + tag: "match" "+ color=#ffffff color_class=T0212"; + +collections { + + base_scale: 1.3; + + styles { + style { name: "nocontent_style"; + base: "font=Tizen:style=Regular font_size="HELP_FONT_SIZE" align=center color=#FFFFFF color_class=AT017 text_class=AT017 wrap=mixed"; + } + + style { name: "nocontent_title_style"; + //base: "font=Tizen:style=Bold font_size="TITLE_TEXT_SIZE_H" align=center color=#FFFFFF color_class=T012 text_class=T012 ellipsis=1.0"; + base: "font=Tizen:style=Bold font_size="TITLE_TEXT_SIZE_H" align=center color=#FFFFFF color_class=T012 text_class=T012 wrap=mixed"; + STYLE_TAG_MATCH + } + } + + group { name: "tap_n_pay/nocontents"; + parts { + part { + name: "bg"; + type: RECT; + scale: 1; + description { + state: "default" 0.0; + color: 255 255 255 0; + rel1 { relative: 0.0 0.0; } + rel2 { relative: 1.0 1.0; } + } + } + + part { name: "title_top_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 TITLE_TOP_PADDING_SIZE; + max: -1 TITLE_TOP_PADDING_SIZE; + fixed: 0 1; + align: 0.0 0.0; + rel1 { relative: 0.0 0.0; to: "bg"; } + rel2 { relative: 1.0 0.0; to: "bg"; } + } + } + + part { name: "title_left_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: TITLE_LR_PADDING_SIZE 0; + max: TITLE_LR_PADDING_SIZE -1; + fixed: 1 0; + align: 0.0 0.0; + rel1 { relative: 0.0 0.0; to: "bg"; } + rel2 { relative: 0.0 0.0; to: "bg"; } + } + } + + part { name: "title_right_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: TITLE_LR_PADDING_SIZE 0; + max: TITLE_LR_PADDING_SIZE -1; + fixed: 1 0; + align: 1.0 0.0; + rel1 { relative: 1.0 0.0; to: "bg"; } + rel2 { relative: 1.0 0.0; to: "bg"; } + } + } + + part { name: "title_bottom_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 TITLE_BOTTOM_PADDING_SIZE; + max: -1 TITLE_BOTTOM_PADDING_SIZE; + fixed: 0 1; + align: 0.0 0.0; + rel1 {relative: 0.0 1.0; to: "elm.text.title"; } + rel2 {relative: 1.0 1.0; to: "elm.text.title"; } + } + } + + part { name: "elm.text.title"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + min: TITLE_TEXT_SIZE_W TITLE_TEXT_SIZE_H; + max: TITLE_TEXT_SIZE_W TITLE_TEXT_SIZE_H; + fixed: 1 1; + rel1 { + to_x: "title_left_padding"; + to_y: "title_top_padding"; + relative: 1.0 1.0; + } + rel2 { + to_x: "title_right_padding"; + to_y: "title_top_padding"; + relative: 0.0 1.0; + } + fixed: 0 1; + align: 0.5 0; + } + } + + part { + name: "left_padding"; + type: SPACER; + scale: 1; + description { + state: "default" 0.0; + min: LR_PADDING_SIZE 0; + max: LR_PADDING_SIZE -1; + fixed: 1 0; + align: 0.0 0.0; + rel1 { + to: "bg"; + relative: 0.0 0.0; + } + rel2 { + to: "bg"; + relative: 0.0 0.0; + } + } + } + + part { + name: "right_padding"; + type: SPACER; + scale: 1; + description { + state: "default" 0.0; + min: LR_PADDING_SIZE 0; + max: LR_PADDING_SIZE -1; + fixed: 1 0; + align: 1.0 0.0; + rel1 { + to: "bg"; + relative: 1.0 0.0; + } + rel2 { + to: "bg"; + relative: 1.0 0.0; + } + } + } + + part { name: "elm.swallow.icon"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + min: IMAGE_SIZE_W IMAGE_SIZE_H; + max: IMAGE_SIZE_W IMAGE_SIZE_H; + fixed: 1 1; + rel1 { + to_x: "left_padding"; + to_y: "title_bottom_padding"; + relative: 1.0 1.0; + } + rel2 { + to_x: "right_padding"; + to_y: "title_bottom_padding"; + relative: 0.0 1.0; + } + fixed: 0 1; + align: 0.5 0.0; + } + } + + part { name: "image_bottom_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 IMAGE_PADDING_H; + max: -1 IMAGE_PADDING_H; + rel1 { + to: "elm.swallow.icon"; + relative: 0.0 1.0; + } + rel2 { + to: "elm.swallow.icon"; + relative: 1.0 1.0; + } + fixed: 0 1; + align: 0.5 0.0; + } + } + + part { + name: "desc_left_padding"; + type: SPACER; + scale: 1; + description { + state: "default" 0.0; + min: DESC_LR_PADDING_SIZE 0; + max: DESC_LR_PADDING_SIZE -1; + fixed: 1 0; + align: 0.0 0.0; + rel1 { + to: "bg"; + relative: 0.0 0.0; + } + rel2 { + to: "bg"; + relative: 0.0 0.0; + } + } + } + + part { + name: "desc_right_padding"; + type: SPACER; + scale: 1; + description { + state: "default" 0.0; + min: DESC_LR_PADDING_SIZE 0; + max: DESC_LR_PADDING_SIZE -1; + fixed: 1 0; + align: 1.0 0.0; + rel1 { + to: "bg"; + relative: 1.0 0.0; + } + rel2 { + to: "bg"; + relative: 1.0 0.0; + } + } + } + + part { name: "elm.text"; + type: TEXTBLOCK; + description { state: "default" 0.0; + min: HELP_TEXT_SIZE_W HELP_TEXT_SIZE_H; + max: HELP_TEXT_SIZE_W -1; + fixed: 1 0; + rel1 { + to_x: "desc_left_padding"; + to_y: "image_bottom_padding"; + relative: 1.0 1.0; + } + rel2 { + to_x: "desc_right_padding"; + to_y: "bg"; + relative: 0.0 1.0; + offset: 0 -41; + } + align: 0.5 0.0; + color_class: "AT017"; + text { + style: "nocontent_style"; + min: 0 1; + max: 0 1; + } + } + } + } + } +} // collections + diff --git a/wearable/app/data/images/b_setting_payment_help_image.png b/wearable/app/data/images/b_setting_payment_help_image.png Binary files differnew file mode 100644 index 0000000..ca87894 --- /dev/null +++ b/wearable/app/data/images/b_setting_payment_help_image.png diff --git a/wearable/app/data/images/tw_ic_popup_btn_check.png b/wearable/app/data/images/tw_ic_popup_btn_check.png Binary files differnew file mode 100644 index 0000000..3dce121 --- /dev/null +++ b/wearable/app/data/images/tw_ic_popup_btn_check.png diff --git a/wearable/app/data/images/tw_list_fadeout_right_masking.#.png b/wearable/app/data/images/tw_list_fadeout_right_masking.#.png Binary files differnew file mode 100644 index 0000000..ab615ca --- /dev/null +++ b/wearable/app/data/images/tw_list_fadeout_right_masking.#.png diff --git a/wearable/app/include/nsa-debug.h b/wearable/app/include/nsa-debug.h new file mode 100644 index 0000000..39e13e0 --- /dev/null +++ b/wearable/app/include/nsa-debug.h @@ -0,0 +1,144 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_DEBUG_H__ +#define __NFC_SETTING_APP_DEBUG_H__ + +#include <dlog.h> + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +#define COLOR_RED "\033[0;31m" +#define COLOR_GREEN "\033[0;32m" +#define COLOR_BROWN "\033[0;33m" +#define COLOR_BLUE "\033[0;34m" +#define COLOR_PURPLE "\033[0;35m" +#define COLOR_CYAN "\033[0;36m" +#define COLOR_LIGHTBLUE "\033[0;37m" +#define COLOR_END "\033[0;m" + +#ifdef LOG_TAG +#undef LOG_TAG +#endif + +#define LOG_TAG "NFC_SETTING_APP" + +#define NSA_ENABLE_DLOG + +#ifdef NSA_ENABLE_DLOG +#if defined(NSA_LOG_LEVEL_1) +#define NSA_BEGIN() +#define NSA_END() +#define NSA_DEBUG(fmt, ...) +#define NSA_DEBUG_ERR(fmt, ...) \ + do { \ + LOGE(COLOR_RED" " fmt COLOR_END, ##__VA_ARGS__); \ + } while (0) +#elif defined(NSA_LOG_LEVEL_2) +#define NSA_BEGIN() +#define NSA_END() +#define NSA_DEBUG(fmt, ...) \ + do { \ + LOGD(COLOR_BROWN" " fmt COLOR_END, ##__VA_ARGS__); \ + } while (0) +#define NSA_DEBUG_ERR(fmt, ...) \ + do { \ + LOGE(COLOR_RED" " fmt COLOR_END, ##__VA_ARGS__); \ + } while (0) +#elif defined(NSA_LOG_LEVEL_3) +#define NSA_BEGIN() \ + do { \ + LOGD(COLOR_BLUE" BEGIN >>>>"COLOR_END); \ + } while (0) +#define NSA_END() \ + do { \ + LOGD(COLOR_BLUE" END <<<<"COLOR_END); \ + } while (0) +#define NSA_DEBUG(fmt, ...) \ + do { \ + LOGD(COLOR_BROWN" " fmt COLOR_END, ##__VA_ARGS__); \ + } while (0) +#define NSA_DEBUG_ERR(fmt, ...) \ + do { \ + LOGE(COLOR_RED" " fmt COLOR_END, ##__VA_ARGS__); \ + } while (0) +#endif +#else +#define NSA_BEGIN() \ + do { \ + printf("\n [%s: %s: %d] : BEGIN >>>> %s() \n", APPNAME, \ + rindex(__FILE__, '/')+1, __LINE__ , __FUNCTION__); \ + } while (0) + +#define NSA_END() \ + do { \ + printf("\n [%s: %s: %d]: END <<<< %s()\n", APPNAME, \ + rindex(__FILE__, '/')+1, __LINE__ , __FUNCTION__); \ + } while (0) +#define NSA_DEBUG(fmt, ...) \ + do { \ + printf("\n [%s: %s: %s(): %d] " fmt"\n", APPNAME, \ + rindex(__FILE__, '/')+1, __FUNCTION__, __LINE__, \ + ##__VA_ARGS__); \ + } while (0) +#define NSA_DEBUG_ERR(fmt, ...) \ + do { \ + printf("\n [%s: %s: %s(): %d] " fmt"\n", APPNAME, \ + rindex(__FILE__, '/')+1, __FUNCTION__, __LINE__, \ + ##__VA_ARGS__); \ + } while (0) +#endif + +#define ret_if(expr) \ + do { \ + if (__builtin_expect(expr, 0)) { \ + NSA_DEBUG_ERR("(%s) ", #expr); \ + return; \ + } \ + } while (0) +#define retm_if(expr, fmt, arg...) \ + do { \ + if (__builtin_expect(expr, 0)) { \ + NSA_DEBUG_ERR("(%s) " fmt, #expr, ##arg); \ + return; \ + } \ + } while (0) +#define retv_if(expr, val)\ + do { \ + if (__builtin_expect(expr, 0)) { \ + NSA_DEBUG_ERR("(%s) ", #expr); \ + return (val);\ + } \ + } while (0) +#define retvm_if(expr, val, fmt, arg...) \ + do { \ + if (__builtin_expect(expr, 0)) { \ + NSA_DEBUG_ERR("(%s) " fmt, #expr, ##arg); \ + return (val);\ + } \ + } while (0) + +#ifdef __cplusplus +} +#endif +#endif /* __NFC_SETTING_APP_DEBUG_H__ */
\ No newline at end of file diff --git a/wearable/app/include/nsa-main.h b/wearable/app/include/nsa-main.h new file mode 100755 index 0000000..ed13912 --- /dev/null +++ b/wearable/app/include/nsa-main.h @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_MAIN_H__ +#define __NFC_SETTING_APP_MAIN_H__ + +#include <stdint.h> +#include <stdbool.h> +#include <stdio.h> +#include <string.h> +#include <Elementary.h> +#include <efl_extension.h> +#include <glib.h> +#include <app.h> + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +/* Package */ +#define APPNAME PACKAGE +#define GRP_MAIN "main" +#define ICON_PATH RESDIR"/icons" +#define IMAGES_PATH IMGDIR +#define TABLE_PATH TABLEDIR +#define EDJ_FILE EDJDIR"/"APPNAME".edj" + +typedef enum { + NSA_ERROR = -1, + NSA_OK = 0 +} nsa_result_e; + +typedef enum { + NSA_OP_NONE = -1, + NSA_OP_NFC = 0, + NSA_OP_NFC_HELP = 1, + NSA_OP_SBEAM = 2, + NSA_OP_SBEAM_HELP = 3, + NSA_OP_TAP_N_PAY = 4 +} nsa_operation_type; + +struct appdata { + Evas_Object *win_main; + Evas_Object *ly_main; + Evas_Object *bg; + Evas_Object *conform; + Eext_Circle_Surface *circle_surface; + Evas_Object *navi_frame; + Evas_Object *popup; + Elm_Object_Item *base_navi_it; + GArray *circle_obj_list; + int circle_obj_list_idx; + + nsa_operation_type op_type; + + /* changeable UI */ + Eina_List *color_table; + Eina_List *font_table; + + app_control_h caller_appctrl; +}; + +inline Evas_Object *nsa_get_main_window(void); + +#ifdef __cplusplus +} +#endif +#endif /*__NFC_SETTING_APP_MAIN_H__*/ diff --git a/wearable/app/include/nsa-popup.h b/wearable/app/include/nsa-popup.h new file mode 100644 index 0000000..257e4c0 --- /dev/null +++ b/wearable/app/include/nsa-popup.h @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_POPUP_H__ +#define __NFC_SETTING_APP_POPUP_H__ + +#include <Elementary.h> +#include <stdbool.h> + +#ifdef __cplusplus +extern "C" +{ +#endif + +typedef void (*_POPUP_USER_RESP_CB)(void *data, Evas_Object *obj, + void *event_info); + + +/************************** API **************************/ +Evas_Object *nsa_create_popup_text_1button( + Evas_Object *parent, + const char *text, + const char *btn1_image_path, + _POPUP_USER_RESP_CB response_cb, + void *data); + +Evas_Object *nsa_create_toast_popup(Evas_Object *parent, + const char *text); + +#ifdef __cplusplus +} +#endif +#endif /* __NFC_SETTING_APP_POPUP_H__ */ + diff --git a/wearable/app/include/nsa-string.h b/wearable/app/include/nsa-string.h new file mode 100755 index 0000000..479959a --- /dev/null +++ b/wearable/app/include/nsa-string.h @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_STRING_H__ +#define __NFC_SETTING_APP_STRING_H__ + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +/* Buffer length for Text */ +#define POPUP_TEXT_SIZE 1024 +#define LABEL_TEXT_SIZE 1024 + +#define _(s) gettext(s) + +///////////////////////////////////////////////////////////////////////////// +// NFC SETTING START ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +///////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////// +/* Registered string in STMS NFC */ +#define IDS_NFC_NFC \ + _("WDS_ST_MBODY_NFC_ABB") +#define IDS_TAP_AND_PAY \ + _("WDS_ST_MBODY_TAP_AND_PAY_ABB") +#define IDS_NO_INSTALLED_PAYMENT_APPS \ + _("WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB") +#define IDS_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS \ + _("WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS") +#define IDS_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS \ + _("WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS") +#define IDS_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB \ + _("WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB") + +#ifdef __cplusplus +} +#endif +#endif /*__NFC_SETTING_APP_STRING_H__*/ diff --git a/wearable/app/include/nsa-ui-widget.h b/wearable/app/include/nsa-ui-widget.h new file mode 100644 index 0000000..14761d0 --- /dev/null +++ b/wearable/app/include/nsa-ui-widget.h @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_UI_WIDGET_H__ +#define __NFC_SETTING_APP_UI_WIDGET_H__ + +#include <stdbool.h> +#include <Elementary.h> + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +/************************** API **************************/ +Evas_Object *nsa_create_main_layout(Evas_Object *parent); +Evas_Object *nsa_create_theme_layout(Evas_Object *parent, + const char *clas, const char *group, const char *style); +Evas_Object *nsa_create_bg(Evas_Object *parent); +Evas_Object* nsa_create_conformant(Evas_Object *parent); +Evas_Object* nsa_create_edj_layout(Evas_Object* parent, + char *edc_path); + +#ifdef __cplusplus +} +#endif +#endif /* __NFC_SETTING_APP_UI_WIDGET_H__ */ diff --git a/wearable/app/include/nsa-util.h b/wearable/app/include/nsa-util.h new file mode 100644 index 0000000..427cd06 --- /dev/null +++ b/wearable/app/include/nsa-util.h @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + +#ifndef __NFC_SETTING_APP_UTIL_H__ +#define __NFC_SETTING_APP_UTIL_H__ + +#include <stdint.h> +#include <glib.h> +#include <assert.h> + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +#define _EDJ(obj) elm_layout_edje_get(obj) + +#define GET_SAFE_STRING(x) ((x) != NULL ? (x) : "NULL") +#define STRING_AND_SIZE(x) (x), strlen((x)) +#define NULL_TO_EMPTY_STRING(x) (((x) != NULL) ? (x) : "") + +#define MAX_HEAP_SIZE 5*1024*1024 + +/************************** API **************************/ +#define NSA_MEM_MALLOC(ptr, no_elements, type) \ + do { \ + if ((gint)(no_elements) <= 0) { \ + ptr = NULL;\ + } else if (MAX_HEAP_SIZE < (gint)(no_elements)*sizeof(type)) { \ + assert(0);\ + } else { \ + ptr = (type *)g_malloc0((gint)(no_elements)*sizeof(type)); \ + assert(ptr); \ + } \ + } while (0) + +#define NSA_MEM_STRDUP(ptr, str) \ + do { \ + if ((str) != NULL) { \ + ptr = g_strdup((const char *)(str)); \ + assert(ptr); \ + } else { \ + (ptr) = NULL; \ + } \ + } while (0) + +#define NSA_MEM_STRNDUP(ptr, str, buf_size) \ + do { \ + if ((str) != NULL && (buf_size) >= 0) { \ + ptr = g_strndup((const char *)(str), (buf_size)); \ + assert(ptr); \ + } else { \ + (ptr) = NULL; \ + } \ + } while (0) + +#define NSA_MEM_MEMDUP(ptr, src, buf_size) \ + do { \ + if ((src) != NULL && (buf_size) >= 0) { \ + ptr = g_malloc0((buf_size)); \ + assert(ptr); \ + memcpy((ptr), (void *)(src), (buf_size)); \ + } else { \ + (ptr) = NULL; \ + } \ + } while (0) + +#define NSA_MEM_FREE(ptr) \ + do { \ + if (ptr != NULL) { \ + g_free(ptr); \ + ptr = NULL; \ + } \ + } while (0) + +#ifdef __cplusplus +} +#endif +#endif /* __NFC_SETTING_APP_UTIL_H__ */ diff --git a/wearable/app/include/nsa-view.h b/wearable/app/include/nsa-view.h new file mode 100755 index 0000000..410e0a0 --- /dev/null +++ b/wearable/app/include/nsa-view.h @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#ifndef __NFC_SETTING_APP_VIEW_H__ +#define __NFC_SETTING_APP_VIEW_H__ + +#include <Evas.h> +#include <Ecore.h> +#include <Elementary.h> +#include <efl_extension.h> + +#ifdef __cplusplus +extern "C" +{ +#endif /* __cplusplus */ + +int _nsa_view_main_create(void *data); +void _nsa_view_main_destroy(void *data); + +int _nsa_view_tap_n_pay_create(void *data); +void _nsa_view_tap_n_pay_destroy(void *data); + +#ifdef __cplusplus +} +#endif +#endif /*__NFC_SETTING_APP_VIEW_H__*/ + diff --git a/wearable/app/src/nsa-main.c b/wearable/app/src/nsa-main.c new file mode 100755 index 0000000..d6f229e --- /dev/null +++ b/wearable/app/src/nsa-main.c @@ -0,0 +1,418 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#include <nfc.h> +#include <vconf.h> +#include "nsa-main.h" +#include "nsa-view.h" +#include "nsa-debug.h" +#include "nsa-util.h" +#include "nsa-ui-widget.h" +#include "nsa-popup.h" + +#define UG_NFC_APPCONTROL_TIZEN \ + "http://tizen.org/appcontrol/operation/setting/nfc" +#define SETTING_TYPE_NFC "nfc" +#define SETTING_TYPE_TAP_N_PAY "tap_n_pay" + +#define NFC_SETTING_APP_ID \ + "org.tizen.nfc-setting-app" + +static struct appdata ad; + + +static void __tts_vconf_key_changed (keynode_t *key, + void *data) +{ + int boolval = 0; + + NSA_DEBUG("__tts_vconf_key_changed"); + + + if(VCONF_OK != vconf_get_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_TTS, + &boolval)) { + NSA_DEBUG_ERR("vconf_get_bool failed"); + } else { + NSA_DEBUG("boolval[%d]", boolval); + + if (boolval) + elm_exit(); + } +} + +static void __win_del(void *data, Evas_Object *obj, void *event) +{ + elm_exit(); +} + +static Evas_Object* __nsa_main_create_win(const char *name) +{ + Evas_Object *eo; + int w, h; + + retv_if(name == NULL, NULL); + + NSA_BEGIN(); + +#if defined(PROCESS_POOL) + eo = (Evas_Object *)app_get_preinitialized_window(name); + if (eo == NULL) { + NSA_DEBUG_ERR("get window fail"); + eo = elm_win_add(NULL, name, ELM_WIN_BASIC); + } +#else + eo = elm_win_add(NULL, name, ELM_WIN_BASIC); +#endif + retv_if(eo == NULL, NULL); + + if (eo) { + elm_win_title_set(eo, name); + evas_object_smart_callback_add(eo, "delete,request", __win_del, + NULL); + elm_win_screen_size_get(eo, NULL, NULL, &w, &h); + evas_object_resize(eo, w, h); + } + + NSA_END(); + return eo; +} + +static int __parse_service(app_control_h service, void *data) +{ + struct appdata *ad = (struct appdata *)data; + char *operation = NULL; + char *app_id = NULL; + char *ex_data = NULL; + + retv_if(ad == NULL, NSA_ERROR); + + app_control_get_operation(service, &operation); + app_control_get_app_id(service, &app_id); + app_control_get_extra_data(service, "type", &ex_data); + + NSA_DEBUG("operation [%s] >>>>> ", GET_SAFE_STRING(operation)); + NSA_DEBUG("app_id [%s] >>>>> ", GET_SAFE_STRING(app_id)); + NSA_DEBUG("extra data [%s] >>>>> ", GET_SAFE_STRING(ex_data)); + + ad->op_type = NSA_OP_NONE; + if (!ex_data) { + NSA_DEBUG_ERR("extra data is NULL"); + goto end; + } + + if (strncmp(operation, UG_NFC_APPCONTROL_TIZEN, + strlen(UG_NFC_APPCONTROL_TIZEN)) == 0) { + + /* launched by app-control */ + if (strncmp(ex_data, SETTING_TYPE_NFC, + strlen(SETTING_TYPE_NFC)) == 0) { + ad->op_type = NSA_OP_NFC; + } else if (strncmp(ex_data, SETTING_TYPE_TAP_N_PAY, + strlen(SETTING_TYPE_TAP_N_PAY)) == 0) { + ad->op_type = NSA_OP_TAP_N_PAY; + } + } else if (strncmp(operation, APP_CONTROL_OPERATION_DEFAULT, + strlen(APP_CONTROL_OPERATION_DEFAULT)) == 0) { + + if (!app_id) { + NSA_DEBUG_ERR("app_id is NULL"); + goto end; + } + + if (strncmp(app_id, NFC_SETTING_APP_ID, + strlen(NFC_SETTING_APP_ID)) != 0) { + NSA_DEBUG_ERR("app_id is wrong"); + goto end; + } + if (strncmp(ex_data, SETTING_TYPE_NFC, + strlen(SETTING_TYPE_NFC)) == 0) { + ad->op_type = NSA_OP_NFC; + } else if (strncmp(ex_data, SETTING_TYPE_TAP_N_PAY, + strlen(SETTING_TYPE_TAP_N_PAY)) == 0) { + ad->op_type = NSA_OP_TAP_N_PAY; + } + } + +end: + NSA_MEM_FREE(operation); + NSA_MEM_FREE(app_id); + NSA_MEM_FREE(ex_data); + + if (ad->op_type == NSA_OP_NONE) + return NSA_ERROR; + else + return NSA_OK; +} + +static int __launch_nfc_setting(void *data) +{ + if (NFC_ERROR_NONE != nfc_manager_initialize()) + NSA_DEBUG_ERR("nfc_manager_initialize FAIL!!!!"); + + return _nsa_view_main_create(data); +} + +static int __launch_tap_n_pay_setting(void *data) +{ + if (NFC_ERROR_NONE != nfc_manager_initialize()) + NSA_DEBUG_ERR("nfc_manager_initialize FAIL!!!!"); + + return _nsa_view_tap_n_pay_create(data); +} + + +static void __rot_changed_cb(void *data, Evas_Object *obj, void *event) +{ + struct appdata *ad = (struct appdata *)data; + int angle; + + ret_if(ad == NULL); + + angle = elm_win_rotation_get(ad->win_main); + elm_win_rotation_with_resize_set(ad->win_main, angle); + + NSA_DEBUG("angle[%d]", angle); +} + +static int __transient_app_cb(void *data) +{ + NSA_DEBUG("__transient_app_cb"); + + return 0; +} + +static void __reply_svc_requests(app_control_h src_svc) +{ + app_control_h service; + int ret; + + app_control_create(&service); + ret_if(service == NULL); + + ret = app_control_reply_to_launch_request(service, src_svc, + APP_CONTROL_RESULT_SUCCEEDED); + if (ret != APP_CONTROL_ERROR_NONE) + NSA_DEBUG_ERR("app_control_reply_to_launch_request failed"); + + app_control_destroy(service); +} + +void _nsa_main_lang_changed(void *data) +{ + struct appdata *ad = (struct appdata *)data; + ret_if(ad == NULL); + + NSA_BEGIN(); + + /* To do */ + + NSA_END(); +} + +void _nsa_main_region_changed(void* data) +{ + NSA_BEGIN(); + + NSA_END(); +} + +int _nsa_main_keydown_cb(void *data, int type, void *event) +{ + struct appdata *ad = (struct appdata *)data; + Ecore_Event_Key *ev = (Ecore_Event_Key *)event; + + retv_if(ad == NULL, NSA_ERROR); + retv_if(ev == NULL, NSA_ERROR); + + NSA_BEGIN(); + + NSA_END(); + + return EXIT_FAILURE; +} + +bool _nsa_main_app_create(void *user_data) +{ + struct appdata *ad = (struct appdata *)user_data; + + NSA_DEBUG("_nsa_main_app_create start"); + + retv_if(ad == NULL, false); + + bindtextdomain("setting-nfc-efl", "/usr/apps/org.tizen.nfc-setting-app/res/locale"); + textdomain("setting-nfc-efl"); + + /* set scale */ + elm_app_base_scale_set(1.3); + + /* create window */ + ad->win_main = __nsa_main_create_win(APPNAME); + retv_if(ad->win_main == NULL, false); + evas_object_show(ad->win_main); + + /* create conformant */ + ad->conform = nsa_create_conformant(ad->win_main); + retv_if(ad->conform == NULL, false); + ad->circle_surface = eext_circle_surface_conformant_add(ad->conform); + + /* create bg */ + ad->bg = nsa_create_bg(ad->conform); + retv_if(ad->bg == NULL, false); + + /* create base layout */ + ad->ly_main = nsa_create_main_layout(ad->conform); + retv_if(ad->ly_main == NULL, false); + elm_object_content_set(ad->conform, ad->ly_main); + elm_win_conformant_set(ad->win_main, EINA_TRUE); + + /* create naviframe */ + ad->navi_frame = elm_naviframe_add(ad->ly_main); + retv_if(ad->navi_frame == NULL, false); + elm_object_part_content_set(ad->ly_main, "elm.swallow.content", + ad->navi_frame); + evas_object_show(ad->navi_frame); + + /* enable rotation */ + if (elm_win_wm_rotation_supported_get(ad->win_main)) { + int rots[4] = { 0, 90, 180, 270 }; + elm_win_wm_rotation_available_rotations_set(ad->win_main, + (const int *)&rots, 4); + evas_object_smart_callback_add(ad->win_main, + "wm,rotation,changed", __rot_changed_cb, ad); + } else { + NSA_DEBUG_ERR("elm_win_wm_rotation_supported_get failed"); + } + + /* create circle_obj_list */ + ad->circle_obj_list = g_array_new(FALSE, FALSE, sizeof(Evas_Object *)); + ad->circle_obj_list_idx = -1; + + NSA_DEBUG("_nsa_main_app_create end"); + + return true; +} + +void _nsa_main_app_terminate(void *user_data) +{ + struct appdata *ad = (struct appdata *)user_data; + ret_if(ad == NULL); + + NSA_DEBUG("_nsa_main_app_terminate start"); + + /* The request from setting team */ + __reply_svc_requests(ad->caller_appctrl); + + /* unset nfc client + */ + if (nfc_manager_deinitialize() != NFC_ERROR_NONE) + NSA_DEBUG_ERR("nfc_manager_deinitialize failed"); + /* unset nfc client - */ + + if (VCONF_OK != vconf_ignore_key_changed(VCONFKEY_SETAPPL_ACCESSIBILITY_TTS, + __tts_vconf_key_changed)) { + NSA_DEBUG_ERR("vconf_ignore_key_changed error"); + } + + g_array_free(ad->circle_obj_list, FALSE); + + NSA_DEBUG("_nsa_main_app_terminate end"); +} + +void _nsa_main_app_pause(void *user_data) +{ + struct appdata *ad = (struct appdata *)user_data; + ret_if(ad == NULL); + + NSA_DEBUG("_nsa_main_app_pause start"); + + NSA_DEBUG("_nsa_main_app_pause end"); +} + +void _nsa_main_app_resume(void *user_data) +{ + struct appdata *ad = (struct appdata *)user_data; + ret_if(ad == NULL); + + NSA_DEBUG("_nsa_main_app_resume start"); + + NSA_DEBUG("_nsa_main_app_resume end"); +} + +void _nsa_main_app_service(app_control_h service, void *user_data) +{ + struct appdata *ad = (struct appdata *)user_data; + int result = NSA_ERROR; + + NSA_DEBUG("_nsa_main_app_service start"); + + ret_if(ad == NULL); + + /* parse service data */ + /* + result = __parse_service(service, ad); + if (result != NSA_OK) { + NSA_DEBUG_ERR("__parse_service failed[%d]", result); + + elm_exit(); + return; + } + */ + ad->op_type = NSA_OP_NFC; + + /* launch nss */ + if (ad->op_type == NSA_OP_NFC){ + result = __launch_nfc_setting(ad); + } else { + result = __launch_tap_n_pay_setting(ad); + } + if (result != NSA_OK) { + NSA_DEBUG_ERR("__launch_nfc_setting failed[%d]", result); + + elm_exit(); + return; + } + + elm_win_activate(ad->win_main); + + /* the service will be used when app is terminated */ + app_control_clone(&(ad->caller_appctrl), service); + + NSA_DEBUG("_nss_main_app_service end"); +} + +int main(int argc, char* argv[]) +{ + NSA_DEBUG("main start"); + + ui_app_lifecycle_callback_s event_callback = {0,}; + + event_callback.create = _nsa_main_app_create; + event_callback.terminate = _nsa_main_app_terminate; + event_callback.pause = _nsa_main_app_pause; + event_callback.resume = _nsa_main_app_resume; + event_callback.app_control = _nsa_main_app_service; + + return ui_app_main(argc, argv, &event_callback, &ad); +} + +inline Evas_Object *nsa_get_main_window(void) +{ + return ad.win_main; +} + diff --git a/wearable/app/src/nsa-popup.c b/wearable/app/src/nsa-popup.c new file mode 100755 index 0000000..62bd6c9 --- /dev/null +++ b/wearable/app/src/nsa-popup.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#include <efl_extension.h> +#include "nsa-popup.h" +#include "nsa-debug.h" + +#define POPUP_AUTO_TIMEOUT_SEC 3.0 + +static void __popup_block_clicked_cb(void *data, Evas_Object *obj, + void *event_info) +{ + ret_if(obj == NULL); + + elm_popup_dismiss(obj); +} + +static void __popup_hide_cb(void *data, Evas_Object *obj, + void *event_info) +{ + ret_if(obj == NULL); + + elm_popup_dismiss(obj); +} + +static void __popup_hide_finished_cb(void *data, Evas_Object *obj, + void *event_info) +{ + ret_if(obj == NULL); + + evas_object_del(obj); +} + +static void __popup_timeout_cb(void *data, Evas_Object *obj, + void *event_info) +{ + ret_if(obj == NULL); + + evas_object_del(obj); +} + +Evas_Object *nsa_create_popup_text_1button( + Evas_Object *parent, + const char *text, + const char *btn1_image_path, + _POPUP_USER_RESP_CB response_cb, + void *data) +{ + Evas_Object *popup; + Evas_Object *btn; + Evas_Object *icon; + Evas_Object *layout; + + retv_if(parent == NULL, NULL); + retv_if(text == NULL, NULL); + retv_if(btn1_image_path == NULL, NULL); + retv_if(response_cb == NULL, NULL); + + popup = elm_popup_add(parent); + retv_if(popup == NULL, NULL); + elm_object_style_set(popup, "circle"); + +// uxt_popup_set_rotary_event_enabled(popup, EINA_TRUE); + + evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + eext_object_event_callback_add(popup, EEXT_CALLBACK_BACK, + __popup_hide_cb, NULL); + evas_object_smart_callback_add(popup, "dismissed", + __popup_hide_finished_cb, NULL); + + layout = elm_layout_add(popup); + retv_if(layout == NULL, NULL); + elm_layout_theme_set(layout, "layout", "popup", + "content/circle/buttons1"); + + elm_object_part_text_set(layout, "elm.text", text); + elm_object_content_set(popup, layout); + + btn = elm_button_add(popup); + retv_if(btn == NULL, NULL); + elm_object_style_set(btn, "popup/circle"); + evas_object_size_hint_weight_set(btn, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_access_info_set(btn, ELM_ACCESS_INFO, "Cancel"); + elm_object_part_content_set(popup, "button1", btn); + evas_object_smart_callback_add(btn, "clicked", response_cb, data); + + icon = elm_image_add(btn); + retv_if(icon == NULL, NULL); + elm_image_file_set(icon, btn1_image_path, NULL); + evas_object_size_hint_weight_set(icon, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_object_part_content_set(btn, "elm.swallow.content", icon); + evas_object_show(icon); + + evas_object_show(popup); + + return popup; +} + +Evas_Object *nsa_create_toast_popup(Evas_Object *parent, + const char *text) +{ + Evas_Object *toast; + + NSA_BEGIN(); + + toast = elm_popup_add(parent); + retv_if(toast == NULL, NULL); + + elm_object_style_set(toast, "toast/circle"); + elm_popup_orient_set(toast, ELM_POPUP_ORIENT_BOTTOM); + evas_object_size_hint_weight_set(toast, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + eext_object_event_callback_add(toast, EEXT_CALLBACK_BACK, + __popup_hide_cb, NULL); + evas_object_smart_callback_add(toast, "dismissed", + __popup_hide_finished_cb, NULL); + elm_object_part_text_set(toast, "elm.text", text); + + evas_object_smart_callback_add(toast, "block,clicked", + __popup_block_clicked_cb, NULL); + + elm_popup_timeout_set(toast, 2.0); + evas_object_smart_callback_add(toast, "timeout", __popup_timeout_cb, + NULL); + + evas_object_show(toast); + NSA_END(); + + return toast; +} + + diff --git a/wearable/app/src/nsa-ui-widget.c b/wearable/app/src/nsa-ui-widget.c new file mode 100644 index 0000000..b110401 --- /dev/null +++ b/wearable/app/src/nsa-ui-widget.c @@ -0,0 +1,180 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#include <app.h> +#include "nsa-main.h" +#include "nsa-ui-widget.h" +#include "nsa-debug.h" +#include "nsa-util.h" + + +Evas_Object *nsa_create_main_layout(Evas_Object *parent) +{ + Evas_Object *layout; + + retv_if(parent == NULL, NULL); + + NSA_BEGIN(); + + layout = elm_layout_add(parent); + retv_if(layout == NULL, NULL); + + elm_object_focus_set(layout, EINA_FALSE); + elm_layout_theme_set(layout, "layout", "application", "default"); + evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + + evas_object_show(layout); + + NSA_END(); + + return layout; +} + +Evas_Object *nsa_create_theme_layout(Evas_Object *parent, + const char *clas, const char *group, const char *style) +{ + Evas_Object *layout; + + retv_if(parent == NULL, NULL); + + NSA_BEGIN(); + + layout = elm_layout_add(parent); + retv_if(layout == NULL, NULL); + + elm_object_focus_set(layout, EINA_FALSE); + elm_layout_theme_set(layout, clas, group, style); + evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + + evas_object_show(layout); + + NSA_END(); + + return layout; +} + +Evas_Object *nsa_create_bg(Evas_Object *parent) +{ + Evas_Object *bg; +#if defined(PROCESS_POOL) + Evas_Object *win; +#endif + + retv_if(parent == NULL, NULL); + + NSA_BEGIN(); + +#if defined(PROCESS_POOL) + win = (Evas_Object *)app_get_preinitialized_window(PACKAGE); + if (win == parent) { + bg = app_get_preinitialized_background(); + if (bg == NULL) { + NSA_DEBUG_ERR("get bg fail"); + bg = elm_bg_add(parent); + } + } else { + NSA_DEBUG_ERR("win is different"); + bg = elm_bg_add(parent); + } +#else + bg = elm_bg_add(parent); +#endif + retv_if(bg == NULL, NULL); + + evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_win_resize_object_add(parent, bg); + + evas_object_show(bg); + + NSA_END(); + + return bg; +} + +Evas_Object *nsa_create_conformant(Evas_Object *parent) +{ + Evas_Object *conform; +#if defined(PROCESS_POOL) + Evas_Object *win; +#endif + + retv_if(parent == NULL, NULL); + + NSA_BEGIN(); + +#if defined(PROCESS_POOL) + win = (Evas_Object *)app_get_preinitialized_window(PACKAGE); + if (win == parent) { + conform = (Evas_Object *)app_get_preinitialized_conformant(); + if (conform == NULL) { + NSA_DEBUG_ERR("get conform fail"); + conform = elm_conformant_add(parent); + } + } else { + NSA_DEBUG_ERR("win is different"); + conform = elm_conformant_add(parent); + } +#else + conform = elm_conformant_add(parent); +#endif + retv_if(conform == NULL, NULL); + + evas_object_size_hint_weight_set(conform, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_win_resize_object_add(parent, conform); + + evas_object_show(conform); + + NSA_END(); + + return conform; +} + +Evas_Object* nsa_create_edj_layout(Evas_Object* parent, + char *edc_path) +{ + Evas_Object *layout; + + NSA_BEGIN(); + + retv_if(parent == NULL, NULL); + + layout = elm_layout_add(parent); + retv_if(layout == NULL, NULL); + + elm_object_focus_set(layout, EINA_FALSE); + + if(edc_path != NULL) + elm_layout_file_set(layout, EDJ_FILE, edc_path); + + evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + + evas_object_show(layout); + + NSA_END(); + + return layout; +} + + diff --git a/wearable/app/src/nsa-view-main.c b/wearable/app/src/nsa-view-main.c new file mode 100755 index 0000000..9764176 --- /dev/null +++ b/wearable/app/src/nsa-view-main.c @@ -0,0 +1,596 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#include <app.h> +#include <nfc.h> +#include <vconf.h> +#include <pkgmgr-info.h> +#include "nsa-view.h" +#include "nsa-main.h" +#include "nsa-debug.h" +#include "nsa-util.h" +#include "nsa-ui-widget.h" +#include "nsa-popup.h" +#include "nsa-string.h" + + +typedef enum { + T_NFC = 0, + T_TAP_N_PAY, + + T_MAX +} nfc_setting_type_e; + +typedef struct { + Elm_Object_Item *obj_item[T_MAX]; + Evas_Object *nf; + bool isProgressing; + + struct appdata *ad; +} main_view_data_t; + +static main_view_data_t *view_data; +static char *payment_handler; + +/////////////////////////////////////////////////////////////////////////////// + +static Eina_Bool __back_clicked_cb(void *data, Elm_Object_Item *it) +{ + main_view_data_t *vd = (main_view_data_t *)data; + + NSA_DEBUG("__back_clicked_cb"); + + if (vd != NULL) { + struct appdata *ad = vd->ad; + + _nsa_view_main_destroy(ad); + } + + ui_app_exit(); + + return EINA_FALSE; +} + +#if 0 +static void __MDM_restriced_popup_response_cb(void *data, + Evas_Object *obj, void *event_info) +{ + main_view_data_t *vd = (main_view_data_t *)data; + struct appdata *ad; + + ret_if(vd == NULL); + + ad = (struct appdata *)vd->ad; + ret_if(ad == NULL); + + ret_if(ad == NULL); + ret_if(ad->popup == NULL); + + NSA_DEBUG("__MDM_restriced_popup_response_cb"); + + elm_popup_dismiss(ad->popup); +} +#endif + +static main_view_data_t *__get_view_data() +{ + return view_data; +} + +static void __set_view_data(main_view_data_t *data) +{ + view_data = data; +} + +static void __get_payment_handler(char **handler) +{ + char *appid; + + NSA_MEM_FREE(*handler); + + appid = vconf_get_str(VCONFKEY_NFC_PAYMENT_HANDLERS); + + if (appid != NULL) { + pkgmgrinfo_pkginfo_h pkginfo = NULL; + char *label = NULL; + int ret; + + ret = pkgmgrinfo_pkginfo_get_pkginfo(appid, &pkginfo); + if (ret != 0) { + return; + } + + ret = pkgmgrinfo_pkginfo_get_label(pkginfo, &label); + if (ret != 0) { + pkgmgrinfo_pkginfo_destroy_pkginfo(pkginfo); + return; + } else { + NSA_MEM_STRDUP(*handler, label); + if (*handler != NULL) + NSA_DEBUG("text: %s", *handler); + + pkgmgrinfo_pkginfo_destroy_pkginfo(pkginfo); + } + } +} + +static void __update_onoff_obj(void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + Elm_Object_Item *it; + + ret_if(vd == NULL); + + it = vd->obj_item[T_NFC]; + ret_if(it == NULL); + + NSA_DEBUG("__update_onoff_obj"); + + /* V1.9 : instead of toast popup, disable item during operation */ + elm_object_item_disabled_set(it, false); + elm_genlist_item_fields_update(it, "*", + ELM_GENLIST_ITEM_FIELD_CONTENT); +} + +static void __update_tap_and_pay_obj(bool activated, void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + Elm_Object_Item *it; + + ret_if(vd == NULL); + + it = vd->obj_item[T_TAP_N_PAY]; + ret_if(it == NULL); + + /* V2.1 */ + if (activated) { + elm_object_item_disabled_set(it, false); + } else { + elm_object_item_disabled_set(it, true); + } + elm_genlist_item_fields_update(it, "*", + ELM_GENLIST_ITEM_FIELD_TEXT); +} + +static void __handle_nfc_activation_completed_event(bool activated, + main_view_data_t *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + + ret_if(vd == NULL); + + + NSA_DEBUG("activated [%d]", activated); + + /* update ui */ + __update_onoff_obj(vd); + __update_tap_and_pay_obj(activated, vd); +} + +static void __nfc_vconf_key_changed (keynode_t *key, void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + int boolval = 0; + bool activated; + + g_assert(vd != NULL); + + if (VCONF_OK != vconf_get_bool(VCONFKEY_NFC_STATE, &boolval)) { + activated = false; + } else { + if (boolval) { + activated = true; + } else { + activated = false; + } + } + + NSA_DEBUG("boolval %d", boolval); + NSA_DEBUG("nfc mode %s ", activated ? "ON" : "OFF"); + + if (!vd->isProgressing) { + __handle_nfc_activation_completed_event(activated, vd); + } +} + +static void __payment_handler_vconf_key_changed (keynode_t *key, + void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + + NSA_DEBUG("__payment_handler_vconf_key_changed"); + + /* Get changed payment handler */ + __get_payment_handler(&payment_handler); + + /* update tap and pay */ + if (nfc_manager_is_activated()) { + __update_tap_and_pay_obj(true, vd); + } else { + __update_tap_and_pay_obj(false, vd); +} +} + +/* called when ifself performs activation */ +/* vd->isProgressing is set by itself */ +static void __nfc_activation_completed_cb(nfc_error_e error, + void *user_data) +{ + main_view_data_t *vd = (main_view_data_t *)user_data;; + bool activated; + + g_assert(vd != NULL); + + /* handle error cases */ + if (error != NFC_ERROR_NONE) { + NSA_DEBUG_ERR("__nfc_activation_completed_cb failed"); + } + + /* update ui after activation is completed */ + if (vd->isProgressing) { + vd->isProgressing = false; + activated = nfc_manager_is_activated(); + + __handle_nfc_activation_completed_event(activated, vd); + } +} + +/* called when someone performs activation except for itself */ +static void __nfc_activation_changed_cb(bool activated , void *user_data) +{ + main_view_data_t *vd = (main_view_data_t *)user_data; + + g_assert(vd != NULL); + + NSA_DEBUG("nfc mode %s ", activated ? "ON" : "OFF"); + + if (!vd->isProgressing) { + __handle_nfc_activation_completed_event(activated, vd); + } +} + +static void __change_nfc_onoff_setting(void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + int result; + bool activated; + Elm_Object_Item *it; + + ret_if(vd == NULL); + + NSA_BEGIN(); + + /* V1.9 : instead of toast popup, disable item during operation */ + it = vd->obj_item[T_NFC]; + if(it != NULL) + elm_object_item_disabled_set(it, true); + + activated = nfc_manager_is_activated(); + + result = nfc_manager_set_activation(!activated, + __nfc_activation_completed_cb, vd); + ret_if(result != NFC_ERROR_NONE); + + vd->isProgressing = true; + + NSA_END(); +} + +static void __gl_list_clicked_cb(void *data, Evas_Object *obj, + void *event_info) +{ + Elm_Object_Item* it = (Elm_Object_Item *)event_info; + struct appdata *ad; + main_view_data_t *vd; + int index; + + index = (int) data; + + vd = __get_view_data(); + ret_if(vd == NULL); + + ad = vd->ad; + ret_if(ad == NULL); + + elm_genlist_item_selected_set(it, EINA_FALSE); + + NSA_DEBUG("__gl_list_clicked_cb"); + +#ifdef MDM_PHASE_2 + if(!__is_nfc_allowed(ad)) { + __update_onoff_obj(vd); + + /* show popup */ +#if 0 + ad->popup = nsa_create_popup_text_1button( + ad->ly_main, + IDS_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB, + IMAGES_PATH"/tw_ic_popup_btn_check.png", + __MDM_restriced_popup_response_cb, + (void *)vd); +#else + nsa_create_toast_popup(ad->ly_main, + IDS_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB); +#endif + return; + } +#endif + + if (index == T_NFC) { + __change_nfc_onoff_setting(vd); + } else if (index == T_TAP_N_PAY){ + _nsa_view_tap_n_pay_create(ad); + } else { + return ; + } +} + +static Evas_Object *__gl_content_get_on_off(void *data, Evas_Object *obj, + const char *part) +{ + main_view_data_t *vd; + Evas_Object *check; + int boolval = 0; + int index; + + index = (int) data; + + vd = __get_view_data(); + retv_if(vd == NULL, NULL); + + if (!strcmp(part, "elm.icon")) { + check = elm_check_add(obj); + retv_if(check == NULL, NULL); + elm_access_object_unregister(check); + elm_object_style_set(check, "on&off/list"); + + if (index == T_NFC) { + if (VCONF_OK != vconf_get_bool(VCONFKEY_NFC_STATE, &boolval)) { + elm_check_state_set(check, EINA_FALSE); + } else { + if (boolval) { + elm_check_state_set(check, EINA_TRUE); + } else { + elm_check_state_set(check, EINA_FALSE); + } + } + } + evas_object_size_hint_align_set(check, EVAS_HINT_FILL, + EVAS_HINT_FILL); + evas_object_size_hint_weight_set(check, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + evas_object_propagate_events_set(check, EINA_FALSE); + evas_object_repeat_events_set(check, EINA_TRUE); + + return check; + } else { + return NULL; + } +} + +static char *__gl_text_get_title(void *data, Evas_Object *obj, + const char *part) +{ + //NSA_DEBUG("part:%s", part); + + if (!strcmp(part, "elm.text")) { + return strdup(IDS_NFC_NFC); + } else { + return NULL; + } +} + +static char *__gl_text_get(void *data, Evas_Object *obj, + const char *part) +{ + int index = (int)data; + + //NSA_DEBUG("index:%d", index); + //NSA_DEBUG("part:%s", part); + + if (!strcmp(part, "elm.text")) { + if (index == T_NFC) { + return strdup(IDS_NFC_NFC); + } else if (index == T_TAP_N_PAY){ + return strdup(IDS_TAP_AND_PAY); + } else { + return NULL; + } // elm.text.2 + } else if (!strcmp(part, "elm.text.1")) { + if (index == T_TAP_N_PAY) { + if (payment_handler != NULL) + return strdup(payment_handler); + else + return NULL; + } else { + return NULL; + } + } else { + return NULL; + } +} + +static Evas_Object *__create_nfc_setting_list(void *data) +{ + main_view_data_t *vd = (main_view_data_t *)data; + struct appdata *ad; + Evas_Object *genlist; + Elm_Genlist_Item_Class *itc_title, *itc_on_off, *itc_list; + Evas_Object *circle_obj; + int i; + + retv_if(vd == NULL, NULL); + + ad = vd->ad; + retv_if(ad == NULL, NULL); + + /* make genlist */ + genlist = elm_genlist_add(vd->nf); + retv_if(genlist == NULL, NULL); + + /* set genlist property */ + elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS); +// elm_genlist_homogeneous_set(genlist, EINA_TRUE); +// uxt_genlist_set_bottom_margin_enabled(genlist, EINA_TRUE); + + circle_obj = eext_circle_object_genlist_add(genlist, + ad->circle_surface); + eext_circle_object_genlist_scroller_policy_set(circle_obj, + ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO); + eext_rotary_object_event_activated_set(circle_obj, EINA_TRUE); + g_array_append_val(ad->circle_obj_list, circle_obj); + ad->circle_obj_list_idx ++; + NSA_DEBUG("ad->circle_obj_list_idx %d", ad->circle_obj_list_idx); + NSA_DEBUG("circle_obj 0x%p", circle_obj); + + /* create genlist class + */ + itc_title = elm_genlist_item_class_new(); + itc_title->item_style = "title"; + itc_title->func.text_get = __gl_text_get_title; + itc_title->func.content_get = NULL; + itc_title->func.del = NULL; + + itc_on_off = elm_genlist_item_class_new(); + itc_on_off->item_style = "1text.1icon.1"; + itc_on_off->func.text_get = __gl_text_get; + itc_on_off->func.content_get = __gl_content_get_on_off; + itc_on_off->func.state_get = NULL; + itc_on_off->func.del = NULL; + + itc_list = elm_genlist_item_class_new(); + __get_payment_handler(&payment_handler); + if (payment_handler != NULL) + itc_list->item_style = "2text"; + else + itc_list->item_style = "1text"; + itc_list->func.text_get = __gl_text_get; + itc_list->func.content_get = NULL; + itc_list->func.state_get = NULL; + itc_list->func.del = NULL; + /* create genlist class - */ + + /* ADD: ITEM */ + elm_genlist_item_append(genlist, + itc_title, NULL, + NULL, ELM_GENLIST_ITEM_NONE, + NULL, NULL); + + for (i = 0; i < T_MAX; i++) { + Elm_Genlist_Item_Class *itc; + + if (i == T_NFC) + itc = itc_on_off; + else + itc = itc_list; + + vd->obj_item[i] = elm_genlist_item_append(genlist, + itc, (void *)i, + NULL, ELM_GENLIST_ITEM_NONE, + __gl_list_clicked_cb, (void *)i); + } + + elm_genlist_item_class_free(itc_title); + elm_genlist_item_class_free(itc_on_off); + elm_genlist_item_class_free(itc_list); + + /* V2.1 */ + if (!nfc_manager_is_activated()) + __update_tap_and_pay_obj(false, vd); + + evas_object_show(genlist); + + return genlist; +} + +int _nsa_view_main_create(void *data) +{ + struct appdata *ad = (struct appdata *)data; + main_view_data_t *vd; + Evas_Object *list; + + /* create data */ + NSA_MEM_MALLOC(vd, 1, main_view_data_t); + retv_if(vd == NULL, NSA_ERROR); + __set_view_data(vd); + vd->ad = ad; + + /* set appdata to main view data */ + vd->nf = ad->navi_frame; + + /* Draw UI */ + list = __create_nfc_setting_list(vd); + retv_if(list == NULL, NSA_ERROR); + + /* Push navifreme + */ + eext_object_event_callback_add(vd->nf, EEXT_CALLBACK_BACK, + eext_naviframe_back_cb, NULL); + + ad->base_navi_it = elm_naviframe_item_push( + vd->nf, + NULL, + NULL, + NULL, + list, + "empty"); + elm_naviframe_item_pop_cb_set(ad->base_navi_it, __back_clicked_cb, + vd); + /* Push navifreme - */ + + /* register nfc callback */ + nfc_manager_set_activation_changed_cb( + __nfc_activation_changed_cb, vd); + + if (VCONF_OK != vconf_notify_key_changed(VCONFKEY_NFC_STATE, + __nfc_vconf_key_changed, vd)) { + NSA_DEBUG_ERR("vconf_notify_key_changed error"); + } + + if (VCONF_OK != vconf_notify_key_changed(VCONFKEY_NFC_PAYMENT_HANDLERS, + __payment_handler_vconf_key_changed, vd)) { + NSA_DEBUG_ERR("vconf_notify_key_changed error"); + } + + return NSA_OK; +} + +void _nsa_view_main_destroy(void *data) +{ + struct appdata *ad; + + __set_view_data(NULL); + + /* unregister nfc callback */ + nfc_manager_unset_activation_changed_cb(); + + if (VCONF_OK != vconf_ignore_key_changed(VCONFKEY_NFC_STATE, + __nfc_vconf_key_changed)) { + NSA_DEBUG_ERR("vconf_notify_key_changed error"); + } + + if (VCONF_OK != vconf_ignore_key_changed(VCONFKEY_NFC_PAYMENT_HANDLERS, + __payment_handler_vconf_key_changed)) { + NSA_DEBUG_ERR("vconf_ignore_key_changed error"); + } + + ad = (struct appdata *)data; + ret_if(ad == NULL); +} + + diff --git a/wearable/app/src/nsa-view-tap-n-pay.c b/wearable/app/src/nsa-view-tap-n-pay.c new file mode 100755 index 0000000..c9a0df7 --- /dev/null +++ b/wearable/app/src/nsa-view-tap-n-pay.c @@ -0,0 +1,918 @@ +/* + * Copyright (c) 2000-2015 Samsung Electronics Co., Ltd All Rights Reserved + * + * PROPRIETARY/CONFIDENTIAL + * + * This software is the confidential and proprietary information of + * SAMSUNG ELECTRONICS ("Confidential Information"). + * You shall not disclose such Confidential Information and shall + * use it only in accordance with the terms of the license agreement + * you entered into with SAMSUNG ELECTRONICS. + * SAMSUNG make no representations or warranties about the suitability + * of the software, either express or implied, including but not + * limited to the implied warranties of merchantability, fitness for + * a particular purpose, or non-infringement. + * SAMSUNG shall not be liable for any damages suffered by licensee as + * a result of using, modifying or distributing this software or its derivatives. + + */ + + +#include <app.h> +#include <nfc.h> +#include <vconf.h> +#include <pkgmgr-info.h> +#include "nsa-view.h" +#include "nsa-main.h" +#include "nsa-debug.h" +#include "nsa-util.h" +#include "nsa-ui-widget.h" +#include "nsa-popup.h" +#include "nsa-string.h" + +#define APP_CONTROL_DEFAULT_CHANGED \ + "http://tizen.org/appcontrol/operation/nfc/card_emulation/default_changed" + +#define MAX_AIDS_COUNT 50 + +typedef struct { + Evas_Object *nf; + Evas_Object *genlist; + Evas_Object *radio_main; + struct appdata *ad; +} tap_and_pay_view_data_t; + +typedef struct { + GArray *list; + int index; + Elm_Object_Item *it; + void *data; +} item_data_t; + +typedef struct { + char *appid; + int aid_count; +} wallet_info_t; + +typedef enum { + T_PAYMENT = 0, + T_OTHERS, + + T_MAX +} tap_and_pay_wallet_type_e; + + +static int payment_wallet_cnt; +static int other_wallet_cnt; + +static GArray *payment_wallet_list; +static GArray *other_wallet_list; + +static Eina_Bool __back_clicked_cb(void *data, Elm_Object_Item *it) +{ + tap_and_pay_view_data_t *vd = (tap_and_pay_view_data_t *)data; + + NSA_DEBUG("__back_clicked_cb"); + + if (vd != NULL) { + struct appdata *ad = vd->ad; + + _nsa_view_tap_n_pay_destroy(ad); + + if (ad->circle_obj_list_idx < 0) { + ui_app_exit(); + + return EINA_FALSE; + } + } + + return EINA_TRUE; +} + +static void __max_AID_popup_response_cb(void *data, + Evas_Object *obj, void *event_info) +{ + item_data_t *item = (item_data_t *)data; + tap_and_pay_view_data_t *vd; + struct appdata *ad; + const char *vconf_key; + char *wallet_handler; + + vd = (tap_and_pay_view_data_t *)item->data; + ret_if(vd == NULL); + + ad = (struct appdata *)vd->ad; + ret_if(ad == NULL); + + ret_if(ad == NULL); + ret_if(ad->popup == NULL); + + NSA_DEBUG("__max_AID_popup_response_cb"); + + /* restore default handler */ + if (item->list == payment_wallet_list) { + vconf_key = VCONFKEY_NFC_PAYMENT_HANDLERS; + } else { + vconf_key = VCONFKEY_NFC_OTHER_HANDLERS; + } + wallet_handler = vconf_get_str(vconf_key); + if (wallet_handler == NULL || payment_wallet_list == NULL) { + NSA_DEBUG_ERR("vconf_get_str error"); + } else { + int i; + + for (i = 0; i < payment_wallet_cnt; i++) { + wallet_info_t *winfo; + + winfo = g_array_index(item->list, wallet_info_t *, i); + if (!winfo) + continue; + + if (strlen(wallet_handler) > 0 && + strcmp(winfo->appid, wallet_handler) == 0) { + NSA_DEBUG("matched, [%s]", winfo->appid); + + if (vd->radio_main != NULL) + elm_radio_value_set(vd->radio_main, i); + } + } + } + NSA_MEM_FREE(wallet_handler); + + elm_popup_dismiss(ad->popup); + + if (ad->circle_obj_list_idx >= 0) { + Evas_Object *circle_obj; + + circle_obj = g_array_index(ad->circle_obj_list, Evas_Object *, + ad->circle_obj_list_idx); + eext_rotary_object_event_activated_set(circle_obj, EINA_TRUE); + NSA_DEBUG("restore circle object 0x%p", circle_obj); + } +} + +static void __add_item_to_wallet_list(const char *item, int aid_count, + int *wallet_count, GArray **list) +{ + int wcount; + GArray *wlist; + wallet_info_t *winfo; + + wcount = *wallet_count; + wlist = *list; + + if (wlist == NULL) { + wlist = g_array_new(FALSE, FALSE, sizeof(wallet_info_t *)); + *list = wlist; + } + + NSA_MEM_MALLOC(winfo, 1, wallet_info_t); + ret_if(winfo == NULL); + NSA_MEM_STRDUP(winfo->appid, item); + winfo->aid_count = aid_count; + + g_array_append_val(wlist, winfo); + + wcount++; + *wallet_count = wcount; + + NSA_DEBUG("Done"); +} + +static bool __registered_handler_cb(const char *handler, int count, + void *user_data) +{ + if (handler) { + int type = (int)user_data; + + NSA_DEBUG("package name: [%s]", handler); + NSA_DEBUG("AID number: [%d]", count); + + if (type == T_PAYMENT) { + __add_item_to_wallet_list(handler, count, + &payment_wallet_cnt, &payment_wallet_list); + } else if (type == T_OTHERS) { + __add_item_to_wallet_list(handler, count, + &other_wallet_cnt, &other_wallet_list); + } else { + NSA_DEBUG_ERR("wallet type error"); + return true; + } + } + + return true; +} + +static void __get_wallet_info(void) +{ + NSA_DEBUG("__get_wallet_info"); +/* + nfc_se_foreach_registered_handlers(NFC_CARD_EMULATION_CATEGORY_PAYMENT, + __registered_handler_cb, (void *)T_PAYMENT); +*/ + /* To Do */ +#if 0 + nfc_se_foreach_registered_handlers(NFC_CARD_EMULATION_CATEGORY_OTHER, + __registered_handler_cb, (void *)T_OTHERS); +#endif +} + +static int __get_payment_wallet_list_cnt(void) +{ + NSA_DEBUG("__get_payment_wallet_list_cnt [%d]", payment_wallet_cnt); + + return payment_wallet_cnt; +} + +static int __get_other_wallet_list_cnt(void) +{ + NSA_DEBUG("__get_other_wallet_list_cnt [%d]", other_wallet_cnt); + + return other_wallet_cnt; +} + +static char* __decorated_text_effect_get(int size, + const char* color_code, const char* text, const char* align) +{ + char* decorated = NULL; + Eina_Strbuf* buf = NULL; + int r = 0; + int g = 0; + int b = 0; + int a = 0; + + if(color_code == NULL) + return NULL; + + if(text == NULL) + return g_strdup(""); + +// uxt_theme_get_color(color_code, &r, &g, &b, &a, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); + + buf = eina_strbuf_new(); + + if(align == NULL) { + eina_strbuf_append_printf(buf, + "<font_size=%d><color=#%02x%02x%02x%02x>%s</color></font_size>", + size, r, g, b, a, text); + } else { + eina_strbuf_append_printf(buf, + "<font_size=%d align=%s><color=#%02x%02x%02x%02x>%s</color></font_size>", + size, align, r, g, b, a, text); + } + + decorated = eina_strbuf_string_steal(buf); + eina_strbuf_free(buf); + + return decorated; +} + +static Evas_Object *__create_no_contents_ly(void *data) +{ + tap_and_pay_view_data_t *vd = (tap_and_pay_view_data_t *)data; + struct appdata *ad; + Evas_Object *sc; + Evas_Object *ly; + Evas_Object *image; + Evas_Object *circle_obj; + Evas_Object *label; + char *title_markup; + char *title; + + retv_if(vd == NULL, NULL); + retv_if(vd->nf == NULL, NULL); + + ad = vd->ad; + retv_if(ad == NULL, NULL); + + sc = elm_scroller_add(vd->nf); + evas_object_size_hint_weight_set(sc, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(sc, EVAS_HINT_FILL, + EVAS_HINT_FILL); + elm_scroller_single_direction_set(sc, ELM_SCROLLER_SINGLE_DIRECTION_HARD); + elm_object_style_set(sc, "effect"); + evas_object_show(sc); + + /* create layout */ + ly = nsa_create_edj_layout(sc, "tap_n_pay/nocontents"); + retv_if(ly == NULL, NULL); + + /* create image object */ + image = elm_image_add(ly); + retv_if(image == NULL, NULL); + elm_image_file_set(image, + IMAGES_PATH"/b_setting_payment_help_image.png", NULL); +// uxt_theme_object_set_color(image, "AO018"); + elm_object_part_content_set(ly, "elm.swallow.icon", image); + + /* set help text */ + elm_object_part_text_set(ly, "elm.text", + IDS_NO_INSTALLED_PAYMENT_APPS); + + /* get title text */ + title_markup = elm_entry_utf8_to_markup(IDS_TAP_AND_PAY); + title = __decorated_text_effect_get(30, "T012", title_markup, "center"); + NSA_MEM_FREE(title_markup); + + /* make title label */ + label = elm_label_add(ly); + evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + evas_object_size_hint_align_set(label, EVAS_HINT_FILL, + EVAS_HINT_FILL); + elm_object_style_set(label, "slide_roll"); + elm_label_wrap_width_set(label, 226); + elm_label_slide_duration_set(label, 3); + elm_label_slide_mode_set(label, ELM_LABEL_SLIDE_MODE_AUTO); + elm_label_ellipsis_set(label, EINA_TRUE); + + /* set title text */ + elm_object_text_set(label, title); + + /* start title sliding */ + elm_label_slide_go(label); + + /* set title label to layout */ + elm_object_part_content_set(ly, "elm.text.title", label); + evas_object_show(label); + NSA_MEM_FREE(title); + + evas_object_show(ly); + + elm_object_content_set(sc, ly); + + /* disable old circle object */ + if (ad->circle_obj_list_idx >= 0) { + circle_obj = g_array_index(ad->circle_obj_list, Evas_Object *, + ad->circle_obj_list_idx); + NSA_DEBUG("old circle_obj 0x%p", circle_obj); + } + + /* enable new circle object */ + circle_obj = eext_circle_object_scroller_add(sc, + ad->circle_surface); + eext_circle_object_scroller_policy_set(circle_obj, + ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO); + eext_rotary_object_event_activated_set(circle_obj, EINA_TRUE); + g_array_append_val(ad->circle_obj_list, circle_obj); + ad->circle_obj_list_idx ++; + NSA_DEBUG("new circle_obj 0x%p", circle_obj); + NSA_DEBUG("ad->circle_obj_list_idx %d", ad->circle_obj_list_idx); + + return sc; +} + +static char *__get_launch_app_id(char *pkgid) +{ + pkgmgrinfo_pkginfo_h pkginfo = NULL; + char *main_appid = NULL; + int ret; + + retv_if(pkgid == NULL, NULL); + + NSA_DEBUG("__get_launch_app_id [%s]", pkgid); + + ret = pkgmgrinfo_pkginfo_get_pkginfo(pkgid, &pkginfo); + if (ret != 0) { + return strdup(pkgid); + } + + ret = pkgmgrinfo_pkginfo_get_mainappid(pkginfo, &main_appid); + if (ret == 0) { + return strdup(main_appid); + } else { + return strdup(pkgid); + } +} + +static void __launch_application(char *appid) +{ + app_control_h service; + int ret; + + ret_if(appid == NULL); + + NSA_DEBUG("__launch_application [%s]", appid); + + app_control_create(&service); + ret_if(service == NULL); + + ret = app_control_set_operation(service, APP_CONTROL_DEFAULT_CHANGED); + if (ret != APP_CONTROL_ERROR_NONE) { + NSA_DEBUG_ERR("app_control_set_operation failed[%d]", ret); + goto END; + } + + ret = app_control_set_app_id(service, appid); + if (ret != APP_CONTROL_ERROR_NONE) { + NSA_DEBUG_ERR("app_control_set_app_id failed[%d]", ret); + goto END; + } + + ret = app_control_send_launch_request(service, NULL, NULL); + if(ret != APP_CONTROL_ERROR_NONE) { + NSA_DEBUG_ERR("app_control_send_launch_request failed[%d]", ret); + } + +END: + app_control_destroy(service); +} + + +static bool __set_default_wallet(item_data_t *item) +{ + char *new_wallet = NULL; + char *old_wallet = NULL; + wallet_info_t *winfo; + const char *vconf_key; + bool duplicate = false; + + retv_if(item == NULL, false); + retv_if(item->list == NULL, false); + + + winfo = g_array_index(item->list, wallet_info_t *, item->index); + retv_if(winfo == NULL, false); + new_wallet = winfo->appid; + + if (item->list == payment_wallet_list) { + vconf_key = VCONFKEY_NFC_PAYMENT_HANDLERS; + } else { + vconf_key = VCONFKEY_NFC_OTHER_HANDLERS; + } + NSA_DEBUG("vconf_key [%s]", vconf_key); + + old_wallet = vconf_get_str(vconf_key); + if (old_wallet != NULL) { + if (strlen(new_wallet) > 0 && + strcmp(old_wallet, new_wallet) == 0) { + duplicate = true; + NSA_DEBUG("Same wallet is selected!"); + } + NSA_MEM_FREE(old_wallet); + } + + if (!duplicate) { + int ret; + char *launch_app_id = NULL; + + /* check if there are more than 50 AIDs */ + if (winfo->aid_count > MAX_AIDS_COUNT) { + tap_and_pay_view_data_t *vd; + struct appdata *ad; + + vd = (tap_and_pay_view_data_t *)item->data; + retv_if(vd == NULL, false); + + ad = (struct appdata *)vd->ad; + retv_if(ad == NULL, false); + + /* initialize radio button */ + if (vd->radio_main != NULL) + elm_radio_value_set(vd->radio_main, -1); + + /* show max popup */ + ad->popup = nsa_create_popup_text_1button( + ad->ly_main, + IDS_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS, + IMAGES_PATH"/tw_ic_popup_btn_check.png", + __max_AID_popup_response_cb, + (void *)item); + + return false; + } + + + ret = vconf_set_str(vconf_key, new_wallet); + if (ret != VCONF_OK) { + NSA_DEBUG_ERR("error vconf_set_str"); + + return false; + } + + /* get launch app id */ + launch_app_id = __get_launch_app_id(new_wallet); + + /* launch app */ + __launch_application(launch_app_id); + + return true; + } + + return false; +} + +static void __radio_clicked_cb(void *data, Evas_Object *obj, + void *event_info) +{ + int index = 0; + + index = elm_radio_value_get(obj); + NSA_DEBUG("selected value for the group:%d", index); + + /* When radio is clicked, we don't need to call __set_default_wallet */ + /* Because __gl_list_clicked_cb is called, too */ +} + +static void __gl_list_clicked_cb(void *data, Evas_Object *obj, + void *event_info) +{ + Elm_Object_Item* it = (Elm_Object_Item *)event_info; + item_data_t *item = (item_data_t *)data; + Evas_Object *radio_main = evas_object_data_get(obj, "payment_rdg"); + + elm_genlist_item_selected_set(it, EINA_FALSE); + + ret_if(item == NULL); + ret_if(radio_main == NULL); + + NSA_DEBUG("selected value for the group:%d", item->index); + + if (__set_default_wallet(item)) { + elm_radio_value_set(radio_main, item->index); + + NSA_DEBUG("__set_default_wallet success"); + } else { + NSA_DEBUG_ERR("set default wallet failed"); + } +} + +static Evas_Object *__gl_content_get(void *data, Evas_Object *obj, + const char *part) +{ + if (!strcmp(part, "elm.icon")) { + item_data_t *item = (item_data_t *) data; + char *wallet_handler; + Evas_Object *radio_main; + Evas_Object *radio; + + retv_if(item == NULL, NULL); + + radio_main = evas_object_data_get(obj, "payment_rdg"); + retv_if(radio_main == NULL, NULL); + + radio = elm_radio_add(obj); + retv_if(radio == NULL, NULL); + + NSA_DEBUG("item->index [%d]", item->index); + + elm_object_style_set(radio, "list"); + elm_radio_state_value_set(radio, item->index); + elm_radio_group_add(radio, radio_main); + evas_object_smart_callback_add(radio, "changed", + __radio_clicked_cb, (void *)item); + + if (item->list == payment_wallet_list) { + wallet_handler = vconf_get_str(VCONFKEY_NFC_PAYMENT_HANDLERS); + } else { + wallet_handler = vconf_get_str(VCONFKEY_NFC_OTHER_HANDLERS); + } + + if (wallet_handler == NULL) { + NSA_DEBUG_ERR("vconf_get_str error"); + } else { + wallet_info_t *winfo; + char *appid; + + winfo = g_array_index(item->list, wallet_info_t *, + item->index); + retv_if(winfo == NULL, NULL); + appid = winfo->appid; + if (strlen(wallet_handler) > 0 && + strcmp(appid, wallet_handler) == 0) { + NSA_DEBUG("matched, [%s]", appid); + + elm_radio_value_set(radio_main, item->index); + elm_genlist_item_bring_in(item->it, + ELM_GENLIST_ITEM_SCROLLTO_MIDDLE); + } + NSA_MEM_FREE(wallet_handler); + } + + return radio; + } else { + return NULL; + } +} + +static char *__gl_text_get_title(void *data, Evas_Object *obj, + const char *part) +{ + //NSA_DEBUG("part:%s", part); + + if (!strcmp(part, "elm.text")) { + return strdup(IDS_TAP_AND_PAY); + } else { + return NULL; + } +} + +static char *__gl_text_get_group(void *data, Evas_Object *obj, + const char *part) +{ + int index = (int) data; + + NSA_DEBUG("part: %s", part); + NSA_DEBUG("index: %d", index); + + if (!strcmp(part, "elm.text")) { + if (index == T_PAYMENT) + return strdup("Payment"); + else if (index == T_OTHERS) + return strdup("Others"); + else + return NULL; + } else { + return NULL; + } +} + + +static char *__gl_text_get(void *data, Evas_Object *obj, + const char *part) +{ + NSA_DEBUG("part: %s", part); + + if (!strcmp(part, "elm.text")) { + item_data_t *item = (item_data_t *) data; + wallet_info_t *winfo; + char *appid; + + retv_if(item == NULL, NULL); + + winfo = g_array_index(item->list, wallet_info_t *, + item->index); + retv_if(winfo == NULL, NULL); + appid = winfo->appid; + if (appid != NULL) { + pkgmgrinfo_pkginfo_h pkginfo = NULL; + char *label = NULL; + int ret; + + NSA_DEBUG("pkg id: %s", appid); + + ret = pkgmgrinfo_pkginfo_get_pkginfo(appid, &pkginfo); + if (ret != 0) { + NSA_DEBUG_ERR("ret [%d]", ret); + return NULL; + } + + ret = pkgmgrinfo_pkginfo_get_label(pkginfo, &label); + if (ret != 0) { + pkgmgrinfo_pkginfo_destroy_pkginfo(pkginfo); + return NULL; + } else { + char *text = NULL; + + NSA_MEM_STRDUP(text, label); + if (text != NULL) + NSA_DEBUG("text: %s", text); + + pkgmgrinfo_pkginfo_destroy_pkginfo(pkginfo); + return text; + } + } else { + return NULL; + } + } else { + return NULL; + } +} + +static void __add_group_n_list_to_genlist(Evas_Object *genlist, + Elm_Genlist_Item_Class *itc_group, + Elm_Genlist_Item_Class *itc_list, + tap_and_pay_wallet_type_e type, int count, void *data) +{ + int index; + GArray *list; + +#if 0 + Elm_Object_Item *parent; + + /* add payment group */ + parent = elm_genlist_item_append(genlist, + itc_group, (void *)type, + NULL, ELM_GENLIST_ITEM_GROUP, + NULL, NULL); + + elm_genlist_item_select_mode_set(parent, + ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); +#endif + + if (type == T_PAYMENT) { + NSA_DEBUG("T_PAYMENT"); + list = payment_wallet_list; + } else { + NSA_DEBUG("T_OTHERS"); + list = other_wallet_list; + } + + /* add payment wallet list */ + for (index = 0; index < count; index++) { + item_data_t *item; + + NSA_MEM_MALLOC(item, 1, item_data_t); + + item->list = list; + item->index = index; + item->it = elm_genlist_item_append(genlist, + itc_list, (void *)item, + NULL, ELM_GENLIST_ITEM_NONE, + __gl_list_clicked_cb, (void *)item); + item->data = data; + } +} + +static Evas_Object *__create_tap_and_pay_list(void *data) +{ + tap_and_pay_view_data_t *vd = (tap_and_pay_view_data_t *)data; + struct appdata *ad; + Evas_Object *genlist; + Elm_Genlist_Item_Class *itc_title, *itc_group, *itc_list; + Evas_Object *circle_obj; + int count; + + retv_if(vd == NULL, NULL); + + ad = vd->ad; + retv_if(ad == NULL, NULL); + + /* make genlist */ + genlist = elm_genlist_add(vd->nf); + retv_if(genlist == NULL, NULL); + + /* set genlist property */ + elm_genlist_mode_set(genlist, ELM_LIST_COMPRESS); +// uxt_genlist_set_bottom_margin_enabled(genlist, EINA_TRUE); + + /* disable old circle object */ + if (ad->circle_obj_list_idx >= 0) { + circle_obj = g_array_index(ad->circle_obj_list, Evas_Object *, + ad->circle_obj_list_idx); + NSA_DEBUG("old circle_obj 0x%p", circle_obj); + } + + /* enable new circle object */ + circle_obj = eext_circle_object_genlist_add(genlist, + ad->circle_surface); + eext_circle_object_genlist_scroller_policy_set(circle_obj, + ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO); + eext_rotary_object_event_activated_set(circle_obj, EINA_TRUE); + g_array_append_val(ad->circle_obj_list, circle_obj); + ad->circle_obj_list_idx ++; + NSA_DEBUG("new circle_obj 0x%p", circle_obj); + NSA_DEBUG("ad->circle_obj_list_idx %d", ad->circle_obj_list_idx); + + /* create genlist class + */ + itc_title = elm_genlist_item_class_new(); + itc_title->item_style = "title"; + itc_title->func.text_get = __gl_text_get_title; + itc_title->func.content_get = NULL; + itc_title->func.del = NULL; + + itc_group = elm_genlist_item_class_new(); + itc_group->item_style = "groupindex"; + itc_group->func.text_get = __gl_text_get_group; + itc_group->func.content_get = NULL; + itc_group->func.del = NULL; + + itc_list = elm_genlist_item_class_new(); + itc_list->item_style = "1text.1icon.1"; + itc_list->func.text_get = __gl_text_get; + itc_list->func.content_get = __gl_content_get; + itc_list->func.state_get = NULL; + itc_list->func.del = NULL; + /* create genlist class - */ + + /* ADD: ITEM */ + elm_genlist_item_append(genlist, + itc_title, NULL, + NULL, ELM_GENLIST_ITEM_NONE, + NULL, NULL); + + if ((count = __get_payment_wallet_list_cnt())) { + Evas_Object *radio_main; + + __add_group_n_list_to_genlist(genlist, itc_group, + itc_list, T_PAYMENT, count, vd); + + /*make radio group */ + radio_main = elm_radio_add(genlist); + elm_radio_state_value_set(radio_main, -1); + elm_radio_value_set(radio_main, -1); + evas_object_data_set(genlist, "payment_rdg", radio_main); + vd->radio_main = radio_main; + } + + if ((count = __get_other_wallet_list_cnt())) { + __add_group_n_list_to_genlist(genlist, itc_group, + itc_list, T_OTHERS, count, vd); + } + + + /* TO DO: get wallet lists*/ + + elm_genlist_item_class_free(itc_title); + elm_genlist_item_class_free(itc_group); + elm_genlist_item_class_free(itc_list); + + evas_object_show(genlist); + + vd->genlist = genlist; + + return genlist; +} + + +int _nsa_view_tap_n_pay_create(void *data) +{ + struct appdata *ad = (struct appdata *)data; + tap_and_pay_view_data_t *vd; + Evas_Object *layout; + int count; + + /* create data */ + NSA_MEM_MALLOC(vd, 1, tap_and_pay_view_data_t); + retv_if(vd == NULL, NSA_ERROR); + vd->ad = ad; + + /* set appdata to main view data */ + vd->nf = ad->navi_frame; + + /* get wallet info */ + __get_wallet_info(); + + /* Draw UI */ + count = (__get_payment_wallet_list_cnt() + + __get_other_wallet_list_cnt()); + if (count == 0) { + layout = __create_no_contents_ly(vd); + retv_if(layout == NULL, NSA_ERROR); + } else { + layout = __create_tap_and_pay_list(vd); + retv_if(layout == NULL, NSA_ERROR); + } + + /* Push navifreme + */ + eext_object_event_callback_add(vd->nf, EEXT_CALLBACK_BACK, + eext_naviframe_back_cb, NULL); + + ad->base_navi_it = elm_naviframe_item_push( + vd->nf, + NULL, + NULL, + NULL, + layout, + "empty"); + elm_naviframe_item_pop_cb_set(ad->base_navi_it, __back_clicked_cb, + vd); + /* Push navifreme - */ + + return NSA_OK; +} + +void _nsa_view_tap_n_pay_destroy(void *data) +{ + struct appdata *ad = (struct appdata *)data; + Evas_Object *circle_obj; + + ret_if(ad == NULL); + + /* remove current circle object */ + circle_obj = g_array_index(ad->circle_obj_list, Evas_Object *, + ad->circle_obj_list_idx); + NSA_DEBUG("current view circle_obj 0x%p", circle_obj); + g_array_remove_index(ad->circle_obj_list, ad->circle_obj_list_idx--); + + /* restore circle object */ + if (ad->circle_obj_list_idx >= 0) { + circle_obj = g_array_index(ad->circle_obj_list, Evas_Object *, + ad->circle_obj_list_idx); + eext_rotary_object_event_activated_set(circle_obj, EINA_TRUE); + NSA_DEBUG("restored view circle_obj 0x%p", circle_obj); + } + + /* free wallet list info */ + if (payment_wallet_list != NULL) { + int i; + + for (i = 0; i < payment_wallet_cnt; i++) { + wallet_info_t *winfo = NULL; + + winfo = g_array_index(payment_wallet_list, + wallet_info_t *, i); + NSA_MEM_FREE(winfo->appid); + NSA_MEM_FREE(winfo); + } + + g_array_free(payment_wallet_list, FALSE); + payment_wallet_list = NULL; + payment_wallet_cnt = 0; + } + + NSA_DEBUG("ad->circle_obj_list_idx %d", ad->circle_obj_list_idx); +} + + diff --git a/wearable/org.tizen.nfc-setting-app.xml b/wearable/org.tizen.nfc-setting-app.xml new file mode 100755 index 0000000..7f9d57c --- /dev/null +++ b/wearable/org.tizen.nfc-setting-app.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<manifest xmlns="http://tizen.org/ns/packages" package="org.tizen.nfc-setting-app" version="0.0.2" install-location="internal-only" api-version="2.3.1"> + <label>NFC Setting</label> + <author email="junyong.sim@samsung.com" href="www.samsung.com">Junyong Sim</author> + <description>NFC Setting App</description> + <ui-application appid="org.tizen.nfc-setting-app" exec="/usr/apps/org.tizen.nfc-setting-app/bin/nfc-setting-app" nodisplay="true" multiple="false" type="capp" taskmanage="false" mainapp="true" process-pool="true" hw-acceleration="use-GL"> + <label>NFC</label> + <app-control> + <operation name="http://tizen.org/appcontrol/operation/setting/nfc"/> + </app-control> + </ui-application> + <privileges> + <privilege>http://tizen.org/privilege/nfc</privilege> + <privilege>http://tizen.org/privilege/nfc.admin</privilege> + <privilege>http://tizen.org/privilege/nfc.cardemulation</privilege> + </privileges> +</manifest> diff --git a/wearable/po/CMakeLists.txt b/wearable/po/CMakeLists.txt new file mode 100644 index 0000000..aff048c --- /dev/null +++ b/wearable/po/CMakeLists.txt @@ -0,0 +1,108 @@ +# for i18n +PROJECT(setting-nfc-efl C) + +SET(POFILES + ar.po + as.po + az.po + be_BY.po + bg.po + bn.po + bn_BD.po + ca.po + cs.po + da.po + de.po + el_GR.po + en.po + en_PH.po + en_US.po + es_ES.po + es_US.po + et.po + eu.po + fa.po + fi.po + fr.po + fr_CA.po + ga.po + gl.po + gu.po + he.po + hi.po + hr.po + hu.po + hy.po + id.po + is.po + it_IT.po + ja_JP.po + ka.po + kk.po + km.po + kn.po + ko_KR.po + ky_KG.po + lo.po + lt.po + lv.po + mk.po + ml.po + mn_MN.po + mr.po + ms.po + my_MM.po + my_ZG.po + nb.po + ne.po + nl.po + or.po + pa.po + pl.po + pl_SP.po + pt_BR.po + pt_PT.po + ro.po + ru_RU.po + si.po + sk.po + sl.po + sq.po + sr.po + sv.po + ta.po + te.po + tg_TJ.po + th.po + tk_TM.po + tl.po + tr_TR.po + uk.po + ur.po + uz.po + vi.po + zh_CN.po + zh_HK.po + zh_TW.po +) + +SET(MSGFMT "/usr/bin/msgfmt") + +FOREACH(pofile ${POFILES}) + SET(pofile ${CMAKE_CURRENT_SOURCE_DIR}/${pofile}) + MESSAGE("PO: ${pofile}") + GET_FILENAME_COMPONENT(absPofile ${pofile} ABSOLUTE) + GET_FILENAME_COMPONENT(lang ${absPofile} NAME_WE) + SET(moFile ${CMAKE_CURRENT_BINARY_DIR}/${lang}.mo) + ADD_CUSTOM_COMMAND( + OUTPUT ${moFile} + COMMAND ${MSGFMT} -o ${moFile} ${absPofile} + DEPENDS ${absPofile} + ) + INSTALL(FILES ${moFile} + DESTINATION ${LOCALEDIR}/${lang}/LC_MESSAGES RENAME ${PROJECT_NAME}.mo) + SET(moFiles ${moFiles} ${moFile}) +ENDFOREACH(pofile) + +MESSAGE(".mo files: ${moFiles}") +ADD_CUSTOM_TARGET(po ALL DEPENDS ${moFiles}) diff --git a/wearable/po/ar.po b/wearable/po/ar.po new file mode 100644 index 0000000..4acf6f4 --- /dev/null +++ b/wearable/po/ar.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "انقر وادفع" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ما من تطبيقات دفع مُثبّتة" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "يتعذر تحديد تطبيق الدفع مع أكثر من ٥٠ بطاقة مسجّلة." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "تم تسجيل إحدى البطاقات في %1$s وكان قد تم تسجيلها في %2$s. يتعذر استخدام هذه البطاقة في %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "تمنع سياسة الحماية استخدام NFC." + diff --git a/wearable/po/as.po b/wearable/po/as.po new file mode 100644 index 0000000..46f39d7 --- /dev/null +++ b/wearable/po/as.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "টিপক আৰু পৰিশোধ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ইনষ্টল কৰা কোনো পৰিশোধ এপ্প্চ নাই" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 খন পঞ্জীকৃত কাৰ্ডতকৈ অধিকৰ সৈতে পৰিশোধ এপ চয়ন কৰাত অক্ষম৷" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-ত পঞ্জীকৃত এখন কাৰ্ড ইতিমধ্যে %2$s-ত পঞ্জীকৃত আছিল৷ এই কাৰ্ড %3$s-ত ব্যৱহাৰ কৰিব নোৱাৰি৷" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "নিৰাপত্তা নীতিয়ে NFC-ৰ ব্যৱহাৰ প্ৰতিৰোধ কৰে৷" + diff --git a/wearable/po/az.po b/wearable/po/az.po new file mode 100644 index 0000000..1f737b5 --- /dev/null +++ b/wearable/po/az.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Vur və ödə" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Quraşdırılmış ödəniş proqramı yoxd" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-dən çox qeydiyyatdan keçmiş kartla seçilən ödəniş proqramını aktivləşdirmək olmadı." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-da qeydiyyatdan keçirilən kartların biri artıq %2$s-da qeydiyyatdan keçirilmişdir. Bu kart %3$s-da istifadə edilə bilməz." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Təhlükəsizlik siyasəti NFC-dan istifad qarşısını alır." + diff --git a/wearable/po/be_BY.po b/wearable/po/be_BY.po new file mode 100644 index 0000000..a8ec740 --- /dev/null +++ b/wearable/po/be_BY.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Аплата дотыкам" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Няма ўсталяваных праграм аплаты" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Немагчыма выбраць праграму для аплаты з больш чым 50 зарэгістраванымі картамі." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Адна з карт, зарэгістраваных у %1$s, была таксама зарэгістравана ў %2$s. Гэту карту нельга выкарыстоўваць у %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Палітыка бяспекі забараняе выкарыстанне NFC." + diff --git a/wearable/po/bg.po b/wearable/po/bg.po new file mode 100644 index 0000000..6097a7d --- /dev/null +++ b/wearable/po/bg.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Док. и плащане" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Няма инстал. приложения за плащане" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Не може да се избере приложение за плащане с повече от 50 регистрирани карти." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Една от картите, регистрирани в %1$s, вече е била регистрирана в %2$s. Тази карта не може да се използва в %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Политиката за защита предотвратява използването на NFC." + diff --git a/wearable/po/bn.po b/wearable/po/bn.po new file mode 100644 index 0000000..4444352 --- /dev/null +++ b/wearable/po/bn.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ট্যাপ ও প্রদান" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "কোনও ইনস্টল থাকা প্রদান অ্যাপ নেই" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50টির বেশি নিবন্ধিত কার্ডের সাথে প্রদান অ্যাপ নির্বাচন করতে অক্ষম।" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-এ নিবন্ধিত কার্ডগুলির একটি ইতিমধ্যেই %2$s-এ নিবন্ধিত হয়েছে। এই কার্ডটিকে %3$s-এ ব্যবহার করা যাবে না।" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "সুরক্ষা নীতি NFC-এর ব্যবহার আটকায়।" + diff --git a/wearable/po/bn_BD.po b/wearable/po/bn_BD.po new file mode 100644 index 0000000..2ad2be3 --- /dev/null +++ b/wearable/po/bn_BD.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ট্যাপ করে পেমেন্ট" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "কোনো পেমেন্ট অ্যাপ ইনস্টল করা নেই" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50টির বেশি নিবন্ধিত কার্ডসহ পেমেন্ট অ্যাপ নির্বাচন করতে অক্ষম৷" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-এ নিবন্ধিত কার্ডগুলোর একটি ইতোমধ্যে %2$s-এ নিবন্ধিত আছে৷ এই কার্ডটি %3$s-এ ব্যবহার করা যাবে না৷" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "নিরাপত্তা নীতি NFC-এর ব্যবহার প্রতিরোধ করে।" + diff --git a/wearable/po/ca.po b/wearable/po/ca.po new file mode 100644 index 0000000..8db822d --- /dev/null +++ b/wearable/po/ca.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tocar i pagar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Cap aplicació pagament instal·lada" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "No es pot seleccionar l'aplicació de pagament amb més de 50 targetes registrades." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Una de les targetes registrades a %1$s ja estava registrada a %2$s. Aquesta targeta no es pot utilitzar a %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "La política de seguretat evita l'ús d'NFC." + diff --git a/wearable/po/cs.po b/wearable/po/cs.po new file mode 100644 index 0000000..7540c4d --- /dev/null +++ b/wearable/po/cs.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Klepn. a zapl." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Žádné platební aplikace" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Není možné vybrat platební aplikaci s více než 50 registrovanými kartami." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna z karet zaregistrovaných v %1$s již byla zaregistrována v %2$s. Tuto kartu nelze použít v %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Zásady zabezpečení neumožňují použití NFC." + diff --git a/wearable/po/da.po b/wearable/po/da.po new file mode 100644 index 0000000..9cf6518 --- /dev/null +++ b/wearable/po/da.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tryk og betal" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ingen installerede betalingsapps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Kan ikke vælge betalingsapp med mere end 50 registrerede kort." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Et af de registrerede kort i %1$s var allerede registreret i %2$s. Dette kort kan ikke bruges i %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Sikkerhedspolitikken forhindrer brug af NFC." + diff --git a/wearable/po/de.po b/wearable/po/de.po new file mode 100644 index 0000000..bf1828b --- /dev/null +++ b/wearable/po/de.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tippen und zahlen" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Keine installierten Zahlungs-Apps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Eine Zahlungs-App mit mehr als 50 registrierten Karten kann nicht ausgewählt werden." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Eine der in %1$s registrierten Karten war bereits in %2$s registriert. Diese Karte kann in %3$s nicht verwendet werden." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Sicherheitsrichtlinie verhindert die Verwendung von NFC." + diff --git a/wearable/po/el_GR.po b/wearable/po/el_GR.po new file mode 100644 index 0000000..7737238 --- /dev/null +++ b/wearable/po/el_GR.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Πατ. και πληρ." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Δεν υπάρχ. εγκατεστ. εφαρμ. πληρ." + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Δεν είναι δυνατή η επιλογή εφαρμογής πληρωμών με περισσότερες από 50 καταχωρισμένες κάρτες." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Μία από τις κάρτες που καταχωρίσατε στην εφαρμογή %1$s ήταν ήδη καταχωρισμένη στην εφαρμογή %2$s. Η κάρτα δεν μπορεί να χρησιμοποιηθεί στην εφαρμογή %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Η πολιτική ασφαλείας δεν επιτρέπει τη χρήση του NFC." + diff --git a/wearable/po/en.po b/wearable/po/en.po new file mode 100644 index 0000000..c3705fc --- /dev/null +++ b/wearable/po/en.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tap and pay" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "No installed payment apps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Unable to select payment app with more than 50 registered cards." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "One of the cards registered in %1$s was already registered in %2$s. This card cannot be used in %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Security policy prevents use of NFC." + diff --git a/wearable/po/en_PH.po b/wearable/po/en_PH.po new file mode 100644 index 0000000..c3705fc --- /dev/null +++ b/wearable/po/en_PH.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tap and pay" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "No installed payment apps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Unable to select payment app with more than 50 registered cards." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "One of the cards registered in %1$s was already registered in %2$s. This card cannot be used in %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Security policy prevents use of NFC." + diff --git a/wearable/po/en_US.po b/wearable/po/en_US.po new file mode 100644 index 0000000..c3705fc --- /dev/null +++ b/wearable/po/en_US.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tap and pay" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "No installed payment apps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Unable to select payment app with more than 50 registered cards." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "One of the cards registered in %1$s was already registered in %2$s. This card cannot be used in %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Security policy prevents use of NFC." + diff --git a/wearable/po/es_ES.po b/wearable/po/es_ES.po new file mode 100644 index 0000000..be6b576 --- /dev/null +++ b/wearable/po/es_ES.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Pulsar y pagar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Sin aplicaciones de pago instaladas" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "No se puede seleccionar la aplicación de pago con más de 50 tarjetas registradas." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Una de las tarjetas registradas en %1$s ya estaba registrada en %2$s. Dicha tarjeta no se puede utilizar en %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "La política de seguridad impide el uso de NFC." + diff --git a/wearable/po/es_US.po b/wearable/po/es_US.po new file mode 100644 index 0000000..9120990 --- /dev/null +++ b/wearable/po/es_US.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Pulsar y pagar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Sin aplicaciones de pago instaladas" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "No es posible seleccionar una aplicación de pago con más de 50 tarjetas registradas." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Una de las tarjetas registradas en %1$s ya se registró en %2$s. No es posible usar esta tarjeta en %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "La política de seguridad impide el uso de NFC." + diff --git a/wearable/po/et.po b/wearable/po/et.po new file mode 100644 index 0000000..0f5bf6a --- /dev/null +++ b/wearable/po/et.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Toksa ja maksa" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ühtegi makserak. pole installitud" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Ei saa valida makserakendust rohkem kui 50 registreeritud kaardiga." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Üks rakenduses %1$s registreeritud kaart oli juba registreeritud rakenduses %2$s. Seda kaarti ei saa kasutada rakenduses %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Turvalisuse poliis takistab NFC kasutamist." + diff --git a/wearable/po/eu.po b/wearable/po/eu.po new file mode 100644 index 0000000..c50e4c0 --- /dev/null +++ b/wearable/po/eu.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Ukitu eta ord." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ez dago ordaintzeko aplikaziorik" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Ezin da hautatu ordaintzeko aplikazioa erregistratutako 50 txartelarekin baino gehiagorekin." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s aplikazioan erregistratutako txarteletako bat %2$s aplikazioan erregistratuta dago jada. Txartel hau ez da %3$s aplikazioan erabiliko." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Segurtasun politikak NFC erabiltzea galarazten du." + diff --git a/wearable/po/fa.po b/wearable/po/fa.po new file mode 100644 index 0000000..b7585c3 --- /dev/null +++ b/wearable/po/fa.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ضربه و پرداخت" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "برنامه پرداخت نصب شدهای وجود ندارد" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "انتخاب برنامه پرداخت با بیشتر از ۵۰ کارت ثبت شده ممکن نیست." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "یکی از کارتهای ثبت شده در %1$s قبلاً در %2$s ثبت شده است. استفاده از این کارت در %3$s ممکن نیست." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "سیاست امنیتی از استفاده از NFC جلوگیری میکند." + diff --git a/wearable/po/fi.po b/wearable/po/fi.po new file mode 100644 index 0000000..68b5462 --- /dev/null +++ b/wearable/po/fi.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Napauta ja maksa" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Asennettuja maksusovelluksia ei ole" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Maksusovellusta, jossa on yli 50 rekisteröityä korttia, ei voi valita." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Yksi sovellukseen %1$s rekisteröidyistä korteista oli jo rekisteröity sovellukseen %2$s. Tätä korttia ei voi käyttää sovelluksessa %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Suojauskäytäntö estää NFC:n käytön." + diff --git a/wearable/po/fr.po b/wearable/po/fr.po new file mode 100644 index 0000000..f95e2be --- /dev/null +++ b/wearable/po/fr.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Paiement NFC" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Aucune appli. de paiement installée" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Impossible de sélectionner une application de paiement sur laquelle plus de 50 cartes ont été enregistrées." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Une des cartes enregistrées dans %1$s a déjà été enregistrée dans %2$s. Cette carte ne peut pas être utilisée dans %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "La politique de sécurité empêche l'utilisation de NFC." + diff --git a/wearable/po/fr_CA.po b/wearable/po/fr_CA.po new file mode 100644 index 0000000..f95e2be --- /dev/null +++ b/wearable/po/fr_CA.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Paiement NFC" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Aucune appli. de paiement installée" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Impossible de sélectionner une application de paiement sur laquelle plus de 50 cartes ont été enregistrées." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Une des cartes enregistrées dans %1$s a déjà été enregistrée dans %2$s. Cette carte ne peut pas être utilisée dans %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "La politique de sécurité empêche l'utilisation de NFC." + diff --git a/wearable/po/ga.po b/wearable/po/ga.po new file mode 100644 index 0000000..bddc48f --- /dev/null +++ b/wearable/po/ga.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tapáil agus íoc" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Níl aon f.chláir íoc. suiteáilte" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Ní féidir feidhmchlár íocaíochta a roghnú le níos mó ná 50 cárta cláraithe." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Bhí ceann de na cártaí a bhí cláraithe in %1$s cláraithe in %2$s cheana féin. Ní féidir an cárta seo a úsáid in %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Cuireann an beartas slándála bac ar úsáid NFC." + diff --git a/wearable/po/gl.po b/wearable/po/gl.po new file mode 100644 index 0000000..90f701f --- /dev/null +++ b/wearable/po/gl.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tocar e pagar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Non hai aplicac. de pago instalada" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Non se pode seleccionar a aplicación de pagamento con máis de 50 tarxetas rexistradas." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Unha das tarxetas rexistradas en %1$s xa estaba rexistrada en %2$s. Esta tarxeta non se pode usar en %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "A política de seguridade impide o uso de NFC." + diff --git a/wearable/po/gu.po b/wearable/po/gu.po new file mode 100644 index 0000000..c2a46e3 --- /dev/null +++ b/wearable/po/gu.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ટેપ કરો અને ચલાવો" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "કોઇ ચૂકવણી એપ્સ ઇન્સ્ટોલ કરેલ નથી" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 નોંધાયેલ કાર્ડ્સ કરવા વધુ સાથેની ચુકવણી એપ્લિકેશન પસંદ કરવામાં અસમર્થ." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s માં નોંધાયેલમાંથી એક કાર્ડ પહેલાથી %2$s માં નોંધાયેલ છે. આ કાર્ડનો ઉપયોગ %3$s માં કરી શકાતો નથી." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "સુરક્ષા નીતિ NFC ના ઉપયોગને અટકાવે છે." + diff --git a/wearable/po/he.po b/wearable/po/he.po new file mode 100644 index 0000000..7a0592b --- /dev/null +++ b/wearable/po/he.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "הקש ושלם" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "אין יישומי תשלומים מותקנים" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "לא ניתן לבחור יישום תשלום עם יותר מ-50 כרטיסים רשומים." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "אחד מהכרטיסים שנרשמו ב-%1$s כבר היה רשום ב-%2$s. לא ניתן להשתמש בכרטיס זה ב-%3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "מדיניות האבטחה מונעת שימוש ב-NFC." + diff --git a/wearable/po/hi.po b/wearable/po/hi.po new file mode 100644 index 0000000..0ac1b7e --- /dev/null +++ b/wearable/po/hi.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "टैप व भुगतान करें" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "कोई स्थापित भुगतान एप्स नहीं हैं" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 से अधिक पंजीकृत कार्ड्स के साथ भुगतान एप चुनने में असमर्थ।" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s में पंजीकृत किए गए कार्ड्स में से एक कार्ड पहले से %2$s में पंजीकृत है। इस कार्ड का उपयोग %3$s में नहीं किया जा सकता।" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "सुरक्षा नीति NFC के उपयोग को रोकती है।" + diff --git a/wearable/po/hr.po b/wearable/po/hr.po new file mode 100644 index 0000000..7bb0a62 --- /dev/null +++ b/wearable/po/hr.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Dodirni i plati" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nema instal. aplikacija za plaćanje" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nije moguće odabrati aplikaciju za plaćanje s više od 50 registriranih kartica." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna kartica registrirana u aplikaciji %1$s prethodno je registrirana u aplikaciji %2$s. Ta se kartica ne može upotrebljavati u aplikaciji %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Sigurnosna pravila sprečavaju upotrebu NFC-a." + diff --git a/wearable/po/hu.po b/wearable/po/hu.po new file mode 100644 index 0000000..d5d4fe4 --- /dev/null +++ b/wearable/po/hu.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Érintéses fiz." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nincs telepítve fizetési alkalmazás" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-nél több regisztrált kártyával rendelkező fizetési alkalmazást nem lehet megnyitni." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "A(z) %1$s alkalmazásban regisztrált egyik kártyát már regisztrálta a(z) %2$s alkalmazásban. Ez a kártya a(z) %3$s alkalmazásban nem használható." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "A biztonsági házirend tiltja az NFC használatát." + diff --git a/wearable/po/hy.po b/wearable/po/hy.po new file mode 100644 index 0000000..08192aa --- /dev/null +++ b/wearable/po/hy.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Թակիր և վճարիր" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Վճարման տեղադրված ծրագրեր չկան" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Անհնար է ընտրել վճարման ծրագիր 50-ից ավելի գրանցված քարտերով:" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-ում գրանցված քարտերից մեկն արդեն գրանցված է եղել %2$s-ում: Այս քարտը չի կարող օգտագործվել %3$s-ում:" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Անվտ. քաղաքականությունը թույլ չի տալիս NFC-ի օգտագործում:" + diff --git a/wearable/po/id.po b/wearable/po/id.po new file mode 100644 index 0000000..e2d493d --- /dev/null +++ b/wearable/po/id.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Ketuk dan bayar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Tdk terinstal aplikasi pembayaran" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Tak dapat memilih apl dengan kartu terdaftar melebihi 50." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Salah satu kartu yang terdaftar di %1$s sudah terdaftar di %2$s. Kartu ini tidak dapat digunakan di %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Kebijakan keamanan mencegah penggunaan NFC." + diff --git a/wearable/po/is.po b/wearable/po/is.po new file mode 100644 index 0000000..e974a10 --- /dev/null +++ b/wearable/po/is.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Snertigreiðsla" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Engin uppsett greiðsluforrit" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Ekki er hægt að velja greiðsluforrit með fleiri en 50 skráð kort." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Eitt af kortunum sem skráð er í %1$s er einnig skráð í %2$s. Ekki er hægt að nota þetta kort í %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Öryggisstefna kemur í veg fyrir notkun NFC." + diff --git a/wearable/po/it_IT.po b/wearable/po/it_IT.po new file mode 100644 index 0000000..e71b332 --- /dev/null +++ b/wearable/po/it_IT.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tocca e paga" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nessuna app di pagamento installata" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Impossibile selezionare un'applicazione di pagamento con più di 50 carte registrate." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Una delle carte registrate in %1$s è stata già registrata in %2$s. Non potete utilizzare questa carta in %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "I criteri di protezione non consentono l'uso di NFC." + diff --git a/wearable/po/ja_JP.po b/wearable/po/ja_JP.po new file mode 100644 index 0000000..fa585b0 --- /dev/null +++ b/wearable/po/ja_JP.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "タップして支払い" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "インストールされた決済アプリはありません" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "登録カードが50枚を超える場合、決済アプリを選択できません。" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$sに登録されたカードの1枚が既に%2$sに登録されています。このカードは、%3$sで使用できません。" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "NFCの使用は、セキュリティポリシーによって制限されています。" + diff --git a/wearable/po/ka.po b/wearable/po/ka.po new file mode 100644 index 0000000..052089e --- /dev/null +++ b/wearable/po/ka.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "შეხებით გადახდა" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "გადახდის აპები არ არის დაყენებული" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "ვერ აირჩევთ გადახდის აპლიკაციას 50-ზე მეტი რეგისტრირებული ბარათით." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "ერთ-ერთი ბარათი, რომელიც რეგისტრირებულია %1$s-ში, უკვე რეგისტრირებულია %2$s-ში. ამ ბარათის გამოყენება %3$s-ში შეუძლებელია." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "უსაფრთხოების პოლიტიკა კრძალავს NFC-ის გამოყენებას." + diff --git a/wearable/po/kk.po b/wearable/po/kk.po new file mode 100644 index 0000000..e8d3261 --- /dev/null +++ b/wearable/po/kk.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Түрту мен төлеу" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Орнатылған төлем қолданбалары жоқ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-ден көп тіркелген картасы бар төлем қолданбасын таңдау мүмкін емес." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s қолданбасында тіркелген карталардың бірі %2$s қолданбасында тіркеліп қойған. Бұл картаны %3$s қолданбасында пайдалану мүмкін емес." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Қауіпсіздік саясаты NFC-ті пайдалануға жол бермейді." + diff --git a/wearable/po/km.po b/wearable/po/km.po new file mode 100644 index 0000000..179473b --- /dev/null +++ b/wearable/po/km.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ប៉ះ និង បង់ប្រាក់" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "មិនបានដំឡើងកម្មវិធីបង់ប្រាក់ណាមួយ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "មិនអាចជ្រើសកម្មវិធីបង់ប្រាក់ជាមួយបណ្ណដែលបានចុះបញ្ជីលើសពី 50។" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "បណ្ណមួយដែលបានចុះបញ្ជីក្នុង %1$s ត្រូវបានចុះបញ្ជីហើយក្នុង %2$s។ បណ្ណនេះមិនអាចប្រើបានឡើយក្នុង %3$s។" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "គោលការណ៍សន្តិសុខរារាំងការប្រើ NFC។" + diff --git a/wearable/po/kn.po b/wearable/po/kn.po new file mode 100644 index 0000000..4b8181b --- /dev/null +++ b/wearable/po/kn.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ತಟ್ಟಿ ಪಾವತಿಸಿ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ಪಾವತಿ ಅನ್ವಯಿಸುವಿಕೆ ಸ್ಥಾಪಿಸಲಾಗಿಲ್ಲ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50ಕ್ಕಿಂತ ಹೆಚ್ಚು ಕಾರ್ಡ್ಗಳನ್ನು ನೋಂದಾಯಿಸಲಾಗಿರುವ ಪಾವತಿ ಅನ್ವಯಿಸುವಿಕೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$sನಲ್ಲಿ ನೋಂದಾಯಿಸಲಾಗಿರುವ ಕಾರ್ಡ್ಗಳಲ್ಲಿ ಒಂದು ಕಾರ್ಡ್ ಅನ್ನು ಈಗಾಗಲೇ %2$sನಲ್ಲಿ ನೋಂದಾಯಿಸಲಾಗಿದೆ. ಈ ಕಾರ್ಡ್ ಅನ್ನು %3$sನಲ್ಲಿ ನೋಂದಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "ಸುರಕ್ಷತಾ ನೀತಿಯು NFC ಬಳಕೆಯನ್ನು ತಡೆಯುತ್ತದೆ." + diff --git a/wearable/po/ko_KR.po b/wearable/po/ko_KR.po new file mode 100644 index 0000000..5251716 --- /dev/null +++ b/wearable/po/ko_KR.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "모바일 결제" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "설치된 결제 앱 없음" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "카드가 50개 이상 등록된 결제 앱은 선택할 수 없습니다." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s에 등록된 카드 중 하나가 %2$s에 이미 등록되어 있습니다. 이 카드는 %3$s에서 사용할 수 없습니다." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "보안정책에 따라 NFC를 사용할 수 없습니다." + diff --git a/wearable/po/ky_KG.po b/wearable/po/ky_KG.po new file mode 100644 index 0000000..4ae3015 --- /dev/null +++ b/wearable/po/ky_KG.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Басуу ж-а ойнот." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Орнот. төлөө кызм. колд. жок" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 ашык катталган карталары бар төлөө колдонмосун тандоо мүмкүн эмес." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s катталган карталардын бири %2$s эчак сакталган. Бул картаны %3$s колдонууга болбойт." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Коопсуздук саясаты NFC колдонуусун болтурбайт." + diff --git a/wearable/po/lo.po b/wearable/po/lo.po new file mode 100644 index 0000000..a824a71 --- /dev/null +++ b/wearable/po/lo.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ແຕະແລະຊຳລະ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ບໍ່ມີແອັບການຊຳລະຖືກຕິດຕັ້ງ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "ບໍ່ສາມາດເລືອກແອັບການຊຳລະທີ່ມີຫຼາຍກວ່າ 50 ບັດທີ່ຖືກລົງທະບຽນ." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "ໜຶ່ງບັດທີ່ໄດ້ລົງທະບຽນໃນ %1$s ໄດ້ລົງທະບຽນໃນ %2$s ຮຽບຮ້ອຍ. ບັດນີ້ບໍ່ສາມາດຖືກໃຊ້ໃນ %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "ນະໂຍບາຍດ້ານຄວາມປອດໄພປ້ອງກັນການໃຊ້ NFC." + diff --git a/wearable/po/lt.po b/wearable/po/lt.po new file mode 100644 index 0000000..fcd9aee --- /dev/null +++ b/wearable/po/lt.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Bakst. ir mokėt" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nėra įdiegtų mokėjimo programų" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Negalima pasirinkti mokėjimo programos su daugiau nei 50 registruotų kortelių." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Viena iš %1$s registruotų kortelių jau užregistruota %2$s. Ši kortelė negali būti naudojama %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Saugos politika neleidžia naudoti NFC." + diff --git a/wearable/po/lv.po b/wearable/po/lv.po new file mode 100644 index 0000000..510a72d --- /dev/null +++ b/wearable/po/lv.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Maks. ar piesk." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nav instalētu maksājumu programmu" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nevar izvēlēties maksājumu programmu ar vairāk nekā 50 reģistrētām kartēm." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Viena no programmā %1$s reģistrētajām kartēm jau ir reģistrēta programmā %2$s. Šo karti nevar izmantot programmā %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Drošības politika liedz NFC lietošanu." + diff --git a/wearable/po/mk.po b/wearable/po/mk.po new file mode 100644 index 0000000..1e6e701 --- /dev/null +++ b/wearable/po/mk.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Допри и плати" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Нема инсталирани платежни апликации" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Не може да се избере апликација за плаќање со повеќе од 50 регистрирани картички." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Една од картичките, регистрирана во %1$s, веќе е регистрирана во %2$s. Таа не може да се користи во %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Политиката за безбедност спречува користење NFC." + diff --git a/wearable/po/ml.po b/wearable/po/ml.po new file mode 100644 index 0000000..278d9af --- /dev/null +++ b/wearable/po/ml.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "സ്പർശിച്ച് പണമട." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ഇൻസ്റ്റാൾ ചെയ്ത പണമടയ്ക്കൽ ആപ്ലി. ഇല്ല" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "രജിസ്റ്റർ ചെയ്ത 50 കാർഡിൽ കൂടുതലുള്ള പണമടയ്ക്കൽ ആപ്ലിക്കേഷൻ തിരഞ്ഞെടുക്കാനാവില്ല." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-ൽ രജിസ്റ്റർ ചെയ്ത കാർഡുകളിൽ ഒന്ന് നേരത്തേതന്നെ %2$s-ൽ രജിസ്റ്റർ ചെയ്തതാണ്. %3$s-ൽ ഈ കാർഡ് ഉപയോഗിക്കാനാവില്ല." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "സുരക്ഷാ നയം NFC ഉപയോഗത്തെ തടയുന്നു." + diff --git a/wearable/po/mn_MN.po b/wearable/po/mn_MN.po new file mode 100644 index 0000000..76aa7f6 --- /dev/null +++ b/wearable/po/mn_MN.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Товшоод төл" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Төлбөрийн хэрэглүүр суулгаагүй" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-с олон бүртгүүлсэн карттай төлбөрийн хэрэглүүрийг сонгох боломжгүй." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-д бүртгүүлсэн картуудын нэг нь %2$s-д аль хэдийн бүртгүүлсэн байна. Энэ картыг %3$s-д ашиглах боломжгүй." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Хамгаалалтын бодлого нь NFC-г ашиглахаас сэргийлдэг." + diff --git a/wearable/po/mr.po b/wearable/po/mr.po new file mode 100644 index 0000000..8eaeb13 --- /dev/null +++ b/wearable/po/mr.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "टॅप आणि देय" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "कोणतेही इन्स्टॉल देय अनुप्रयोग नाहीत" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 पेक्षा अधिक नोंदणीकृत कार्ड्स असलेला देय अनुप्रयोग निवडण्यास अक्षम." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s मध्ये नोंदणीकृत केलेल्या कार्डांपैकी एक आधीपासूनच %2$s मध्ये नोंदणीकृत आहे. हे कार्ड %3$s मध्ये वापरले जाऊ शकत नाही." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "सुरक्षितता धोरण NFC चा वापर प्रतिबंधित करते." + diff --git a/wearable/po/ms.po b/wearable/po/ms.po new file mode 100644 index 0000000..54ae995 --- /dev/null +++ b/wearable/po/ms.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Ketik dan bayar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Tiada aplikasi pembayaran dipasang" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Tidak dapat memilih aplikasi pembayaran dengan lebih daripada 50 kad yang berdaftar." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Salah satu daripada kad yang didaftarkan dalam %1$s telah didaftarkan dalam %2$s. Kad ini tidak boleh digunakan dalam %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Dasar keselamatan mengelakkan penggunaan NFC." + diff --git a/wearable/po/my_MM.po b/wearable/po/my_MM.po new file mode 100644 index 0000000..30a123d --- /dev/null +++ b/wearable/po/my_MM.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "နှိပ်ပြီး ပေးဆောင်ပါ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ငွေပေးချေမှုအက်ပ်များ ထည့်သွင်းမထားပါ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "မှတ်ပုံတင်ထားသည့်ကဒ်များ ၅၀ ကျော်ဖြင့် ငွေပေးချေမှုအက်ပ်ကိုရွေးချယ်၍မရနိုင်ပါ။" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s တွင်မှတ်ပုံတင်ထားသည့်ကဒ်တစ်ခုသည် %2$s တွင်မှတ်ပုံတင်ထားပြီးဖြစ်သည်။ ဤကဒ်ကို %3$s တွင်အသုံးပြု၍မရနိုင်ပါ။" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "လုံခြုံရေးမူဝါဒသည် NFC အသုံးပြုမှုကို ကာကွယ်ထားသည်။" + diff --git a/wearable/po/my_ZG.po b/wearable/po/my_ZG.po new file mode 100644 index 0000000..acfbda6 --- /dev/null +++ b/wearable/po/my_ZG.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ႏွိပ္ၿပီး ေပးေဆာင္ပါ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ေငြေပးေခ်မႈအက္ပ္မ်ား ထည့္သြင္းမထားပါ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "မွတ္ပုံတင္ထားသည့္ကဒ္မ်ား ၅၀ ေက်ာ္ျဖင့္ ေငြေပးေခ်မႈအက္ပ္ကိုေ႐ြးခ်ယ္၍မရႏိုင္ပါ။" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s တြင္မွတ္ပုံတင္ထားသည့္ကဒ္တစ္ခုသည္ %2$s တြင္မွတ္ပုံတင္ထားၿပီးျဖစ္သည္။ ဤကဒ္ကို %3$s တြင္အသုံးျပဳ၍မရႏိုင္ပါ။" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "လုံၿခဳံေရးမူဝါဒသည္ NFC အသုံးျပဳမႈကို ကာကြယ္ထားသည္။" + diff --git a/wearable/po/nb.po b/wearable/po/nb.po new file mode 100644 index 0000000..a70c131 --- /dev/null +++ b/wearable/po/nb.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Trykk og betal" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ingen installerte betalingsapper" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Kan ikke velge betalingsapp med flere enn 50 registrerte kort." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Ett av kortene som er registrert i %1$s, var allerede registrert i %2$s. Dette kortet kan ikke brukes i %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Sikkerhetspolicyen hindrer bruk av NFC." + diff --git a/wearable/po/ne.po b/wearable/po/ne.po new file mode 100644 index 0000000..0940b4f --- /dev/null +++ b/wearable/po/ne.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ट्याप गरेर भुक्तान" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "स्थापना गरिएका भुक्तानी एप्स छैनन्" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 भन्दा धेरै कार्डहरू दर्ता गरिएको भुक्तानी एप प्रयोग गर्न असमर्थ।" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s मा दर्ता गरिएका कार्डहरू मध्ये एक %2$s मा पहिले नै दर्ता गरिएको थियो। यो कार्ड %3$s मा प्रयोग गर्न सकिँदैन।" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "सुरक्षा नीतिले NFC प्रयोग गर्न रोक्दछ।" + diff --git a/wearable/po/nl.po b/wearable/po/nl.po new file mode 100644 index 0000000..ae16cb0 --- /dev/null +++ b/wearable/po/nl.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tikken/betalen" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Geen geïnstalleerde betaal-apps" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Kan geen betaal-app met meer dan 50 geregistreerde kaarten selecteren." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Een van de kaarten die bij %1$s is geregistreerd, was al bij %2$s geregistreerd. Deze kaart kan niet in %3$s worden gebruikt." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Beveiligingsbeleid verhindert gebruik van NFC." + diff --git a/wearable/po/or.po b/wearable/po/or.po new file mode 100644 index 0000000..45cebc4 --- /dev/null +++ b/wearable/po/or.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ଟ୍ୟାପ୍ କରି ଦେୟ କର." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ସଂସ୍ଥାପିତ ଦେୟ ଆପ୍ଲିକେସନ୍ ନାହିଁ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50ରୁ ଅଧିକ ପଞ୍ଜିକରଣ କାର୍ଡଗୁଡିକ ସହ ଦେୟ ଆପ୍ଲିକେସନ୍ ଚୟନ କରିବାକୁ ଅସମର୍ଥ।" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$sରେ ପଞ୍ଜିକରଣ ହୋଇଥିବା କାର୍ଡଗୁଡିକରୁ ଗୋଟିଏ ପୂର୍ବରୁ %2$sରେ ପଞ୍ଜିକରଣ ହୋଇଛି। %3$sରେ ଏହି କାର୍ଡ୍ ବ୍ୟବହୃତ ହୋଇପାରିବ ନାହିଁ।" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "ସୁରକ୍ଷା ନୀତି NFCର ବ୍ୟବହାର ପ୍ରତିରୋଧ କରେ।" + diff --git a/wearable/po/pa.po b/wearable/po/pa.po new file mode 100644 index 0000000..817b046 --- /dev/null +++ b/wearable/po/pa.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ਟੈਪ ਕਰਕੇ ਭੁਗਤਾਨ ਕਰੋ" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ਕੋਈ ਭੁਗਤਾਨ ਐਪਸ ਸਥਾਪਿਤ ਨਹੀਂ ਹਨ" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 ਤੋਂ ਜ਼ਿਆਦਾ ਰਜਿਸਟਰ ਕੀਤੇ ਕਾਰਡਸ ਵਾਲੀ ਭੁਗਤਾਨ ਐਪ ਨੂੰ ਚੁਣਨ ਵਿੱਚ ਅਸਮਰੱਥ।" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s ਵਿੱਚ ਰਜਿਸਟਰ ਕੀਤੇ ਕਾਰਡਸ ਵਿੱਚੋਂ ਕੋਈ ਕਾਰਡ %2$s ਵਿੱਚ ਪਹਿਲਾਂ ਤੋਂ ਹੀ ਰਜਿਸਟਰ ਕੀਤਾ ਹੋਇਆ ਹੈ। ਇਸ ਕਾਰਡ ਦੀ ਵਰਤੋਂ %3$s ਵਿੱਚ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕਦੀ।" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "ਸੁਰੱਖਿਆ ਨੀਤੀ NFC ਦੇ ਉਪਯੋਗ ਨੂੰ ਪ੍ਰਤਿਬੰਧਿਤ ਕਰਦੀ ਹੈ।" + diff --git a/wearable/po/pl.po b/wearable/po/pl.po new file mode 100644 index 0000000..902e9a2 --- /dev/null +++ b/wearable/po/pl.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Dotk. i zapłać" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Brak zainstal. aplikacji płatności" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nie można wybrać aplikacji płatności z ponad 50 zarejestrowanymi kartami." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna z kart zarejestrowanych w aplikacji %1$s została wcześniej zarejestrowana w aplikacji %2$s. Nie można używać tej karty w aplikacji %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Zasady zabezpieczeń uniemożliwiają korzystanie z NFC." + diff --git a/wearable/po/pl_SP.po b/wearable/po/pl_SP.po new file mode 100644 index 0000000..60ba4dd --- /dev/null +++ b/wearable/po/pl_SP.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tyknij i zabul" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Niy ma zainsztal. aplikac. do platu" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Niy idzie ôbrać aplikacyji do płatu z wiyncyj jak 50 zaregistrowanymi kartami." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna z kartōw zaregistrowanych w aplikacyji %1$s ôstała przōdzij zaregistrowanŏ w aplikacyji %2$s. Niy idzie używać tyj karty w aplikacyji %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Zasady zabezpieczeń uniemożliwiają korzystanie z NFC." + diff --git a/wearable/po/pt_BR.po b/wearable/po/pt_BR.po new file mode 100644 index 0000000..02ccd55 --- /dev/null +++ b/wearable/po/pt_BR.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Pagar com toque" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nenhum aplic. pagamento instalado" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Não é possível selecionar o aplicativo de pagamento com mais de 50 cartões registrados." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Um dos cartões registrados no %1$s já foi registrado no %2$s. Esse cartão não pode ser usado no %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "A política de segurança impede o uso do NFC." + diff --git a/wearable/po/pt_PT.po b/wearable/po/pt_PT.po new file mode 100644 index 0000000..369d883 --- /dev/null +++ b/wearable/po/pt_PT.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tocar e pagar" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Sem aplicações de pagamento instaladas" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Impossível seleccionar aplicação de pagamento com mais de 50 cartões registados." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Um dos cartões registados no %1$s já foi registado no %2$s. Este cartão não pode ser utilizado no %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "A política de segurança impede a utilização de NFC." + diff --git a/wearable/po/ro.po b/wearable/po/ro.po new file mode 100644 index 0000000..fbfcabf --- /dev/null +++ b/wearable/po/ro.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "At. şi plătiţi" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nu există aplicaţii instalate" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nu se poate selecta aplicaţia de plată pentru mai mult de 50 de carduri înregistrate." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Unul dintre cardurile înregistrate în %1$s era deja înregistrat în %2$s. Acest card nu poate fi utilizat în %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Politica de securitate nu permite utilizarea NFC." + diff --git a/wearable/po/ru_RU.po b/wearable/po/ru_RU.po new file mode 100644 index 0000000..2d65097 --- /dev/null +++ b/wearable/po/ru_RU.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Платеж прикосн." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Нет устан. приложений для оплаты" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Невозможно выбрать приложение для платежей, для которого зарегистрировано более 50 карт." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Одна из зарегистрированных в %1$s карт уже была зарегистрирована в %2$s. Эту карту нельзя использовать в %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Политика безопасности запрещает использование NFC." + diff --git a/wearable/po/si.po b/wearable/po/si.po new file mode 100644 index 0000000..5ff6c42 --- /dev/null +++ b/wearable/po/si.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "තට්ටු කර ගෙවන්න" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ස්ථාපිත ගෙවීමේ යෙදුම් කිසිවක් නැත" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 කට වඩා වැඩි ලියාපදිංචි කළ කාඩ්පත් සමග ගෙවීම් යෙදුම තේරිය නොහැකිය." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s තුළ ලියාපදිංචිව ඇති කාඩ්පත් වලින් එකක් %2$s තුළ දැනටමත් ලියාපදිංචි වී ඇත. මෙම කාඩ්පත %3$s තුළ භාවිතා කළ නොහැක." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "NFC භාවිතා කිරීම ආරක්ෂණ ප්රතිපත්තිය වළකයි." + diff --git a/wearable/po/sk.po b/wearable/po/sk.po new file mode 100644 index 0000000..d4dcacc --- /dev/null +++ b/wearable/po/sk.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Ťuknúť a zaplatiť" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Žiadne inštalov. platobné aplikácie" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Platobná aplikácia s viac než 50 zaregistrovanými kartami sa nedá vybrať." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna z kariet zaregistrovaných v aplikácii %1$s už bola zaregistrovaná v aplikácii %2$s. Táto karta sa nedá použiť v aplikácii %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Politika zabezpečenia zabraňuje používaniu funkcie NFC." + diff --git a/wearable/po/sl.po b/wearable/po/sl.po new file mode 100644 index 0000000..a3edbe8 --- /dev/null +++ b/wearable/po/sl.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Prit. in plačaj" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ni nameščenih aplikacij za plačila" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Ni mogoče izbrati aplikacije za plačila z več kot 50 registriranimi karticami." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Ena od kartic, registriranih v aplikaciji %1$s, je že bila registrirana v aplikaciji %2$s. Te kartice ni mogoče uporabljati v aplikaciji %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Varnostni pravilnik preprečuje uporabo funkcije NFC." + diff --git a/wearable/po/sq.po b/wearable/po/sq.po new file mode 100644 index 0000000..0d54b81 --- /dev/null +++ b/wearable/po/sq.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Trokit & paguaj" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nuk ka app-e pagesash të instaluara" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nuk mund të përzgjedh app-in e pagesës me më shumë se 50 karta të regjistruara." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Një nga kartat e regjistruara në %1$s ishte regjistruar tashmë në %2$s. Kjo kartë nuk mund të përdoret në %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Politika e sigurisë nuk lejon përdorimin e NFC." + diff --git a/wearable/po/sr.po b/wearable/po/sr.po new file mode 100644 index 0000000..308a62a --- /dev/null +++ b/wearable/po/sr.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Kucni i plati" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Nema instaliranih apl. za plaćanje" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Nije moguće izabrati aplikaciju za plaćanje koja ima više od 50 registrovanih kartica." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Jedna od registrovanih kartica u aplikaciji %1$s je već registrovana u aplikaciji %2$s. Ova kartica ne može da se koristi u aplikaciji %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Politika bezbednosti sprečava korišćenje NFC funkcije." + diff --git a/wearable/po/sv.po b/wearable/po/sv.po new file mode 100644 index 0000000..6d4b714 --- /dev/null +++ b/wearable/po/sv.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tryck & betala" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Inga installerade betalningsprogram" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Det går inte att välja ett betalningsprogram med fler än 50 registrerade kort." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Ett av korten som är registrerat i %1$s är redan registrerat i %2$s. Det här kortet kan inte användas i %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Säkerhetspolicyn förhindrar att NFC används." + diff --git a/wearable/po/ta.po b/wearable/po/ta.po new file mode 100644 index 0000000..14c3683 --- /dev/null +++ b/wearable/po/ta.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "டேப் செ. செலுத்துக" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "கட்டண பயன்பாடுகள் இல்லை" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-க்கும் மேற்பட்ட பதிவுசெய்த அட்டைகளுடன் பணமளிப்பு பயன்பாட்டை தேர்வுசெய்ய இயலவில்லை." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s-இல் பதிவு செய்யப்பட்ட அட்டைகளில் ஒன்று ஏற்கனவே %2$s-இல் பதிவு செய்யப்பட்டுள்ளது. இந்த அட்டையை %3$s-இல் பயன்படுத்த இயலாது." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "NFC பயன்பாட்டைப் பாதுகாப்புக் கொள்கை தடுக்கிறது." + diff --git a/wearable/po/te.po b/wearable/po/te.po new file mode 100644 index 0000000..58feee1 --- /dev/null +++ b/wearable/po/te.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "ట్యాప్ చేసి చెల్లించు" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "చెల్లింపు అప్లి. ఇన్స్టాల్ చేయలేదు" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 కంటే ఎక్కువ కార్డ్లు నమోదు చేయబడిన చెల్లింపు అప్లికేషన్ను ఎంచుకోవడం సాధ్యం కాదు." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$sలో నమోదు చేయబడిన కార్డ్లలో ఒకటి ఇప్పటికే %2$sలో నమోదు చేయబడింది. ఈ కార్డ్ను %3$sలో ఉపయోగించలేరు." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "భద్రతా విధానం NFC ఉపయోగాన్ని నిరోధిస్తుంది." + diff --git a/wearable/po/tg_TJ.po b/wearable/po/tg_TJ.po new file mode 100644 index 0000000..b2f12f3 --- /dev/null +++ b/wearable/po/tg_TJ.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Зарба ва пар-хт" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Ягон брнмаи пардохт насб нашудааст" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Барномаи пардохтро бо камтар аз 50 корти қайдшуда интихоб карда наметавонад." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Яке аз кортҳои дар %1$s қайдшуда аллакай дар %2$s қайд шуда буд. Ин кортро дар %3$s истифода бурдан мумкин нест." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Сиёсати амният истифодаи NFC-ро роҳ намедиҳад." + diff --git a/wearable/po/th.po b/wearable/po/th.po new file mode 100644 index 0000000..a65b628 --- /dev/null +++ b/wearable/po/th.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Tap and pay" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "ไม่ได้ติดตั้งแอพชำระเงิน" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "ไม่สามารถเลือกแอพการชำระเงินที่มีบัตรลงทะเบียนมากกว่า 50 ใบ" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "บัตรใบหนึ่งที่ลงทะเบียนใน %1$s ถูกลงทะเบียนใน %2$s แล้ว ไม่สามารถใช้บัตรนี้ได้ใน %3$s" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "นโยบายความปลอดภัยป้องกันการใช้ NFC" + diff --git a/wearable/po/tk_TM.po b/wearable/po/tk_TM.po new file mode 100644 index 0000000..6e22cec --- /dev/null +++ b/wearable/po/tk_TM.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Bas we töle" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Gurnalgy töleg goýmasy ýok" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50-den köp bellige alnan kartly töleg goýmasyny saýlap bolmaýar." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s bilen bellige alnan kartlaryň biri eýýäm %2$s bilen bellige alnypdyr. Bu karty %3$s içinde ulanyp bolmaýar." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Howpsuzlyk syýasaty NFC-niň ulanylmagyna ýol bermeýär." + diff --git a/wearable/po/tl.po b/wearable/po/tl.po new file mode 100644 index 0000000..59122d2 --- /dev/null +++ b/wearable/po/tl.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "I-tap at magbayad" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Walang naka-install na app sa pagbabayad" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Hindi mapili ang payment app na may higit sa 50 nakarehistrong card." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Ang isa sa mga card na nakarehistro sa %1$s ay nakarehistro na sa %2$s. Hindi magagamit ang card na ito sa %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Hinahadlangan ng patakaran ng seguridad ang paggamit ng NFC." + diff --git a/wearable/po/tr_TR.po b/wearable/po/tr_TR.po new file mode 100644 index 0000000..de768a4 --- /dev/null +++ b/wearable/po/tr_TR.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Dokun ve öde" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Yüklü ödeme uygulaması yok" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50'den fazla kayıtlı kartın olduğu ödeme uygulaması seçilemez." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s uygulamasında kaydedilen kartların biri zaten %2$s uygulamasında kayıtlı. Bu kart %3$s uygulamasında kullanılamaz." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Güvenlik ilkesi NFC kullanımını engelliyor." + diff --git a/wearable/po/uk.po b/wearable/po/uk.po new file mode 100644 index 0000000..b1bbad7 --- /dev/null +++ b/wearable/po/uk.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Торкн. і сплат." + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Немає встановл. програм для оплати" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Неможливо вибрати програму для здійснення платежів із більш ніж 50 зареєстрованими картками." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Одну з карток, зареєстрованих у %1$s, вже було зареєстровано у %2$s. Цю картку не можна використовувати у %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Політика безпеки забороняє використання NFC." + diff --git a/wearable/po/ur.po b/wearable/po/ur.po new file mode 100644 index 0000000..5a73576 --- /dev/null +++ b/wearable/po/ur.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "تھپکی دیں اور ادا کریں" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "کوئی نصب شدہ ادائیگی کی ایپلیکیشنز نہیں" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 سے زائد رجسٹر کردہ کارڈز کے ساتھ ادائیگي ایپلیکیشن منتخب کرنے سے قاصر۔" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s رجسٹر شدہ کارڈ %2$s میں پہلے سے ہی رجسٹر شدہ ہے۔ یہ کارڈ %3$s میں استعمال نہیں کیا جاسکتا۔" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "سلامتی پالیسی NFC کے استعمال کو روکتی ہے۔" + diff --git a/wearable/po/uz.po b/wearable/po/uz.po new file mode 100644 index 0000000..0521b62 --- /dev/null +++ b/wearable/po/uz.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Teg va to‘la" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "O‘rnatilgan to‘lov ilovalari yo‘q" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "50 tadan ortiq ro‘yxatga olingan kartalarga ega to‘lov ilovasini tanlab bo‘lmaydi." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s’da ro‘yxatga olingan kartalardan biri %2$s’da oldinroq ro‘yxatga olingan. Ushbu kartochkadan mazkur %3$s-da foydalanib bo‘lmaydi." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Xavfsizlik siyosati NFC’ni ishlatishga yo‘l qo‘ymayapti." + diff --git a/wearable/po/vi.po b/wearable/po/vi.po new file mode 100644 index 0000000..53ef02d --- /dev/null +++ b/wearable/po/vi.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "Chạm và thanh toán" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "Chưa cài đặt ứng dụng thanh toán" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "Không thể chọn ứng dụng thanh toán với nhiều hơn 50 thẻ được đăng ký." + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "Một trong số các thẻ được đăng ký trong %1$s đã được đăng ký trong %2$s. Không thể dùng thẻ này trong %3$s." + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "Chính sách bảo mật không cho dùng NFC." + diff --git a/wearable/po/zh_CN.po b/wearable/po/zh_CN.po new file mode 100644 index 0000000..1867480 --- /dev/null +++ b/wearable/po/zh_CN.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "点击支付" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "未安装支付应用程序" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "无法选择有 50 张以上注册银行卡的支付应用程序。" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "有一张在 %1$s 中注册的卡已在 %2$s 中注册。此卡无法在 %3$s 中使用。" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "安全策略可防止 NFC 的使用" + diff --git a/wearable/po/zh_HK.po b/wearable/po/zh_HK.po new file mode 100644 index 0000000..114e64c --- /dev/null +++ b/wearable/po/zh_HK.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "輕觸並付款" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "無已安裝的付款應用程式" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "無法選擇含有超過 50 張已註冊銀行卡的付款應用程式。" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "有一張在 %1$s 中註冊的卡已在 %2$s 中註冊。此卡無法在 %3$s 中使用。" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "安全性政策可防止 NFC 的使用。" + diff --git a/wearable/po/zh_TW.po b/wearable/po/zh_TW.po new file mode 100644 index 0000000..390859e --- /dev/null +++ b/wearable/po/zh_TW.po @@ -0,0 +1,18 @@ +msgid "WDS_ST_MBODY_TAP_AND_PAY_ABB" +msgstr "輕觸即付款" + +msgid "WDS_ST_MBODY_NFC_ABB" +msgstr "NFC" + +msgid "WDS_ST_NPBODY_NO_INSTALLED_PAYMENT_APPS_ABB" +msgstr "未安裝付款應用程式" + +msgid "WDS_ST_POP_UNABLE_TO_SELECT_PAYMENT_APP_WITH_MORE_THAN_50_REGISTERED_CARDS" +msgstr "無法選擇內含超過 50 張註冊信用卡的付款應用程式。" + +msgid "WDS_ST_POP_ONE_OF_THE_CARDS_REGISTERED_IN_P1SS_WAS_ALREADY_REGISTERED_IN_P2SS_THIS_CARD_CANNOT_BE_USED_IN_P3SS" +msgstr "%1$s 中的其中一張卡片已於 %2$s 註冊。這張卡片無法在 %3$s 中使用。" + +msgid "WDS_ST_TPOP_SECURITY_POLICY_PREVENTS_USE_OF_NFC_ABB" +msgstr "安全性原則可防止 NFC 的使用。" + |