From de0583fe580f60dbe6df346302d9b5a0d6d0bc5e Mon Sep 17 00:00:00 2001 From: seungho Date: Tue, 21 Aug 2012 23:01:24 +0900 Subject: [PATCH] apps/home/pwlock --- CMakeLists.txt | 43 +- NOTICE | 1 + debian/changelog | 7 - debian/control | 4 +- debian/copyright | 0 debian/org.tizen.pwlock.install.in | 4 +- debian/org.tizen.pwlock.postinst | 2 +- debian/rules | 12 +- include/langs.h | 53 ++ include/pwlock.h | 135 +-- include/tapi.h | 78 +- include/ui-callback.h | 37 + include/ui.h | 55 +- include/util.h | 79 +- org.tizen.pwlock.desktop.in | 9 - org.tizen.pwlock.xml | 9 + packaging/org.tizen.pwlock.spec | 33 +- po/CMakeLists.txt | 3 +- po/POTFILES.in | 5 - po/ar.po | 123 +++ po/bg.po | 123 +++ po/ca.po | 123 +++ po/cs.po | 123 +++ po/da.po | 123 +++ po/de_DE.po | 64 +- po/el_GR.po | 54 +- po/en.po | 56 +- po/en_US.po | 123 +++ po/es_ES.po | 56 +- po/fi.po | 123 +++ po/fr_FR.po | 56 +- po/he.po | 123 +++ po/hi.po | 123 +++ po/hr.po | 123 +++ po/hu.po | 123 +++ po/id.po | 123 +++ po/it_IT.po | 56 +- po/ja_JP.po | 82 +- po/ko_KR.po | 60 +- po/lt.po | 123 +++ po/lv.po | 123 +++ po/ms.po | 123 +++ po/nl_NL.po | 66 +- po/no.po | 123 +++ po/pl.po | 123 +++ po/pt_PT.po | 54 +- po/pwlock.pot | 143 ---- po/ro.po | 123 +++ po/ru_RU.po | 64 +- po/sk.po | 123 +++ po/sl.po | 123 +++ po/sr.po | 123 +++ po/sv.po | 123 +++ po/th.po | 123 +++ po/tr_TR.po | 56 +- po/uk.po | 123 +++ po/update-po.sh | 60 -- po/vi.po | 123 +++ po/zh_CN.po | 56 +- po/zh_HK.po | 56 +- po/zh_TW.po | 62 +- res/CMakeLists.txt | 13 + res/edje/pwlock-menu-greeting.edc | 304 +++++++ res/edje/pwlock-popup-checkview.edc | 151 ++++ res/edje/pwlock.edc | 4 + res/images/A01-9_bg.png | Bin 0 -> 409575 bytes res/images/A01-9_controlbar_icon_Next.png | Bin 0 -> 3176 bytes res/images/A01-9_controlbar_icon_Previous.png | Bin 0 -> 3243 bytes res/images/A01-9_controlbar_icon_Skip.png | Bin 0 -> 3351 bytes res/images/A01-9_controlbar_icon_scan.png | Bin 0 -> 3449 bytes res/images/A01-9_icon_no_sim.png | Bin 0 -> 8713 bytes src/langs.c | 158 ++++ src/pwlock.c | 470 ++++++----- src/tapi.c | 500 +++++------ src/ui-callback.c | 225 +++++ src/ui.c | 1094 +++++++++++++++++-------- src/util.c | 123 ++- 77 files changed, 6165 insertions(+), 1622 deletions(-) delete mode 100755 debian/changelog delete mode 100644 debian/copyright create mode 100755 include/langs.h create mode 100755 include/ui-callback.h delete mode 100755 org.tizen.pwlock.desktop.in create mode 100644 org.tizen.pwlock.xml mode change 100755 => 100644 po/CMakeLists.txt delete mode 100755 po/POTFILES.in create mode 100644 po/ar.po create mode 100644 po/bg.po create mode 100644 po/ca.po create mode 100644 po/cs.po create mode 100644 po/da.po mode change 100755 => 100644 po/de_DE.po mode change 100755 => 100644 po/el_GR.po mode change 100755 => 100644 po/en.po create mode 100644 po/en_US.po mode change 100755 => 100644 po/es_ES.po create mode 100644 po/fi.po mode change 100755 => 100644 po/fr_FR.po create mode 100644 po/he.po create mode 100644 po/hi.po create mode 100644 po/hr.po create mode 100644 po/hu.po create mode 100644 po/id.po mode change 100755 => 100644 po/it_IT.po mode change 100755 => 100644 po/ja_JP.po mode change 100755 => 100644 po/ko_KR.po create mode 100644 po/lt.po create mode 100644 po/lv.po create mode 100644 po/ms.po mode change 100755 => 100644 po/nl_NL.po create mode 100644 po/no.po create mode 100644 po/pl.po mode change 100755 => 100644 po/pt_PT.po delete mode 100755 po/pwlock.pot create mode 100644 po/ro.po mode change 100755 => 100644 po/ru_RU.po create mode 100644 po/sk.po create mode 100644 po/sl.po create mode 100644 po/sr.po create mode 100644 po/sv.po create mode 100644 po/th.po mode change 100755 => 100644 po/tr_TR.po create mode 100644 po/uk.po delete mode 100755 po/update-po.sh create mode 100644 po/vi.po mode change 100755 => 100644 po/zh_CN.po mode change 100755 => 100644 po/zh_HK.po mode change 100755 => 100644 po/zh_TW.po create mode 100755 res/CMakeLists.txt create mode 100644 res/edje/pwlock-menu-greeting.edc create mode 100644 res/edje/pwlock-popup-checkview.edc create mode 100644 res/edje/pwlock.edc create mode 100644 res/images/A01-9_bg.png create mode 100644 res/images/A01-9_controlbar_icon_Next.png create mode 100644 res/images/A01-9_controlbar_icon_Previous.png create mode 100644 res/images/A01-9_controlbar_icon_Skip.png create mode 100644 res/images/A01-9_controlbar_icon_scan.png create mode 100644 res/images/A01-9_icon_no_sim.png create mode 100755 src/langs.c create mode 100755 src/ui-callback.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 3b640f3..b2211e8 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,11 +6,14 @@ SET(SRCS ./src/tapi.c ./src/util.c ./src/ui.c + ./src/ui-callback.c + ./src/langs.c ) -SET(VENDOR "tizen") +SET(VENDOR "org.tizen") SET(PACKAGE ${PROJECT_NAME}) -SET(PKGNAME "org.${VENDOR}.${PACKAGE}") +SET(PKGNAME "${VENDOR}.${PACKAGE}") +#SET(DEBPKGNAME "deb.${PKGNAME}") SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(BINDIR "${PREFIX}/bin") SET(RESDIR "${PREFIX}/res") @@ -30,7 +33,31 @@ MESSAGE("Build type: ${CMAKE_BUILD_TYPE}") INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include) INCLUDE(FindPkgConfig) -pkg_check_modules(pkgs REQUIRED elementary appcore-efl vconf tapi utilX ui-gadget bundle ecore-imf ecore-x eina evas ecore edje ecore-input glib-2.0 openssl aul sysman) +pkg_check_modules(pkgs REQUIRED + elementary + appcore-efl + vconf + tapi + utilX + ui-gadget-1 + bundle + ecore-imf + ecore-x + eina + evas + ecore + edje + ecore-input + glib-2.0 + gio-2.0 + openssl + aul + sysman + ail + accounts-svc + appsvc + iniparser +) FOREACH(flag ${pkgs_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") @@ -58,6 +85,8 @@ ADD_DEFINITIONS("-DICONDIR=\"${ICONDIR}\"") ADD_DEFINITIONS("-DEDJDIR=\"${EDJDIR}\"") ADD_DEFINITIONS("-DIMAGEDIR=\"${IMAGEDIR}\"") +#ADD_DEFINITIONS("-DPWLOCK_ENABLE_TUTORIAL") + SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed") ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS}) @@ -65,10 +94,12 @@ ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS}) TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS}) # install desktop file & icon & bin -CONFIGURE_FILE(${PKGNAME}.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/${PKGNAME}.desktop) -INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PKGNAME}.desktop DESTINATION /opt/share/applications) +#CONFIGURE_FILE(${PKGNAME}.desktop.in ${CMAKE_CURRENT_BINARY_DIR}/${PKGNAME}.desktop) +#INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PKGNAME}.desktop DESTINATION /opt/share/applications) +INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PKGNAME}.xml DESTINATION /opt/share/packages) +#INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/images/* DESTINATION res/icons) INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BINDIR}) # i18n ADD_SUBDIRECTORY(po) - +ADD_SUBDIRECTORY(res) diff --git a/NOTICE b/NOTICE index e69de29..4c49449 100755 --- a/NOTICE +++ b/NOTICE @@ -0,0 +1 @@ +Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved. diff --git a/debian/changelog b/debian/changelog deleted file mode 100755 index d5c67fa..0000000 --- a/debian/changelog +++ /dev/null @@ -1,7 +0,0 @@ -pwlock (0.2.1-1) unstable; urgency=low - - * Add spec file - * Git: pkgs/p/pwlock - * Tag: pwlock_0.2.1-1 - - -- Mi-Ju Lee Tue, 20 Mar 2012 20:09:58 +0900 diff --git a/debian/control b/debian/control index a03648f..7793482 100755 --- a/debian/control +++ b/debian/control @@ -1,8 +1,8 @@ Source: pwlock Section: devel Priority: extra -Maintainer: Seungtaek Chung , Mi-Ju Lee , Xi Zhichan -Build-Depends: debhelper (>= 5), libappcore-efl-dev, libelm-dev, libslp-setting-dev, libslp-tapi-dev, libslp-utilx-dev, libui-gadget-dev, dlog-dev, libbundle-dev, libecore-dev, libeina-dev, libevas-dev, libedje-dev, libaul-1-dev, libslp-sysman-dev +Maintainer: Sunyeop Hwang +Build-Depends: debhelper (>= 5), libappcore-efl-dev, libelm-dev, libslp-setting-dev, libslp-tapi-dev, libslp-utilx-dev, libui-gadget-dev, dlog-dev, libbundle-dev, libecore-dev, libeina-dev, libevas-dev, libedje-dev, libaul-1-dev, libslp-sysman-dev, libail-0-dev, libaccounts-svc-dev, libappsvc-dev, iniparser-dev Standards-Version: 3.7.2 Package: org.tizen.pwlock diff --git a/debian/copyright b/debian/copyright deleted file mode 100644 index e69de29..0000000 diff --git a/debian/org.tizen.pwlock.install.in b/debian/org.tizen.pwlock.install.in index 25fb04c..b0d8ad6 100755 --- a/debian/org.tizen.pwlock.install.in +++ b/debian/org.tizen.pwlock.install.in @@ -1,4 +1,6 @@ @PREFIX@/bin/* -@PREFIX@/data +@PREFIX@/data/ +@PREFIX@/res/* +@PREFIX@/res/images/* @PREFIX@/res/locale/* /opt/share/applications/* diff --git a/debian/org.tizen.pwlock.postinst b/debian/org.tizen.pwlock.postinst index f9866ac..5665988 100755 --- a/debian/org.tizen.pwlock.postinst +++ b/debian/org.tizen.pwlock.postinst @@ -15,7 +15,7 @@ fi #echo $GOPTION # check first boot -vconftool $GOPTION set -t bool db/setting/pwlock_boot "1" +vconftool $GOPTION set -t bool db/pwlock/first_boot "1" #vconftool $GOPTION set -t int db/setting/phone_lock_attempts_left "5" #vconftool $GOPTION set -t string db/setting/phone_lock_timestamp "" diff --git a/debian/rules b/debian/rules index fe2571c..87f0572 100755 --- a/debian/rules +++ b/debian/rules @@ -39,7 +39,7 @@ configure-stamp: build: build-stamp -build-stamp: configure-stamp +build-stamp: configure-stamp dh_testdir # Add here commands to compile the package. @@ -67,12 +67,12 @@ clean: rm -f $${f%.in}; \ done - dh_clean + dh_clean install: build dh_testdir dh_testroot - dh_clean -k + dh_clean -k dh_installdirs # Add here commands to install the package into debian/wavplayer. @@ -87,12 +87,12 @@ binary-indep: build install binary-arch: build install dh_testdir dh_testroot - dh_installchangelogs - dh_installdocs +# dh_installchangelogs +# dh_installdocs dh_installexamples dh_install --sourcedir=debian/tmp # dh_installmenu -# dh_installdebconf +# dh_installdebconf # dh_installlogrotate # dh_installemacsen # dh_installpam diff --git a/include/langs.h b/include/langs.h new file mode 100755 index 0000000..c37e55f --- /dev/null +++ b/include/langs.h @@ -0,0 +1,53 @@ +/* + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +enum { + _L_UNSPEC = -1, + _L_AUTO, + _L_EN, + _L_DE, + _L_NL, + _L_ES, + _L_PT, + _L_EL, + _L_IT, + _L_FR, + _L_TR, + _L_KO, + _L_CN, + _L_HK, + _L_TW, + _L_JP, + _L_RU, + _L_GR, + _L_MAX, +}; + +struct lang { + int value; + const char *name; + const char *code; + int ival; /* for VCONFKEY_SETAPPL_LANG_INT */ +}; + +extern struct lang langs[_L_MAX]; + +int set_lang(int v); +const char *get_lang_name(int v); +const char *get_lang_name_by_path(char *path); diff --git a/include/pwlock.h b/include/pwlock.h index 8723156..8e5cf91 100755 --- a/include/pwlock.h +++ b/include/pwlock.h @@ -1,19 +1,21 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #ifndef __PWLOCK_H__ #define __PWLOCK_H__ @@ -25,6 +27,7 @@ #include #include "tapi.h" +#include "ui-gadget.h" #if !defined(PACKAGE) #define PACKAGE "org.tizen.pwlock" @@ -34,82 +37,106 @@ #define LOCALEDIR "/opt/apps/org.tizen.pwlock/res/locale" #endif +#if !defined(EDJDIR) +#define EDJDIR "/opt/apps/"PACKAGE"/res/edje" +#endif + +#if !defined(IMAGEDIR) +#define IMAGEDIR "/opt/apps/"PACKAGE"/res/images" +#endif + +#define EDJFILE EDJDIR"/"PACKAGE".edj" + +#define PWLOCK_DEVICE_NAME "db/setting/device_name" + +typedef enum _UG_BUTTON_STATE { + UG_BUTTON_STATE_NONE = 0, + UG_BUTTON_STATE_NEXT_CLICKED = 1, + UG_BUTTON_STATE_PREV_CLICKED = 2 +} UG_BUTTON_STATE; + struct appdata { Evas_Object *win; - Evas_Object *ly; - Evas_Object *navi; - Evas_Object *bg; + + Evas_Object *layout_main; + Evas_Object *layout_contents; + Evas_Object *layout_entry; + Evas_Object *layout_second_entry; + + Evas_Object *elm_bg; + Evas_Object *elm_navigation_frame; + Evas_Object *elm_button_dial; + Evas_Object *elm_button_done; + Evas_Object *elm_conform; int ui_type; int previous_ui_type; - Evas_Object *ly_main; - Evas_Object *entry_layout; - Evas_Object *entry_second_layout; - Evas_Object *button_dial; - Evas_Object *button_done; + int state; - int sub_state; + TelSimLockType_t sub_state; /* for lock sub state */ Ecore_Idler *idler; - int first_boot; - int running_status; - int alpha_window_status; - int keyboard_settings_loaded; + int is_first_boot; /* for checking first boot */ + int is_exec_after_bootup; /* for calling pwlock from other module */ + int is_no_sim; + + int alpha_window_status; /* for alpha */ int date_and_time_settings_loaded; - int language_settings_loaded; - int lock_view_loaded; + int language_settings_loaded; /* check the language ug first loaded or not */ + int lock_view_loaded; /* check the lock view loaded for sim card changed */ int lock_app_launched; char *entry_str; - char *pin_str; + char *pin_str; /* only for new pin */ char *msg; - Ecore_Timer *pTimerId; + Ecore_Timer *pTimerId; /* for vconf timer id */ int sim_changed; int pin_changed; enum sim_stat sim_status; struct tapi *t; - struct ui_gadget *dialer_ug; - struct ui_gadget *language_ug; - struct ui_gadget *keyboard_ug; - struct ui_gadget *date_ug; - struct ui_gadget *count_ug; - struct ui_gadget *current_ug; - int kill_ug; + ui_gadget_h dialer_ug; + ui_gadget_h language_ug; + ui_gadget_h connection_ug; + ui_gadget_h date_ug; + ui_gadget_h count_ug; + ui_gadget_h current_ug; + int kill_ug; /* If 1 killed by "previous", else killed by "next" button */ int date_and_time_previous; - int cancel_setup; + int cancel_setup; /* 1 means not show setup wizard,0 means show */ Evas_Object *popup; Evas_Object *waiting_popup; - int win_type; - int tapi_smc_sid; -}; + int win_type; /* it is set if pwlock is set to ECORE_X_WINDOW_TYPE_NOTIFICATION */ + int tapi_smc_sid; /* it is tapi resgistered sid for smc lab test */ + int tapi_init_retry_cnt; /* number of retry to tapi init */ -void do_state(struct appdata *ad); + UG_BUTTON_STATE ug_btn_evt_state; +}; enum { - STR_E_PW, + STR_E_PW, /* 0 */ STR_E_PIN, STR_E_NEW, STR_R_PIN, STR_E_PUK, - STR_I_PUN, + STR_I_PUN, /* 5 */ STR_I_PUK, STR_A_LEFT, STR_DONE, STR_DIAL, - STR_W_PW, + STR_W_PW, /* 10 */ STR_N_MAT, STR_LANG, STR_SET, STR_CANCEL, - STR_ERR_SIMLANG, + STR_ERR_SIMLANG, /* 15 */ STR_ERR_UNSUPP, STR_BLOCK, STR_SIM_LOCK, STR_NETWORK_LOCK_NCK, - STR_NETWORK_LOCK_NSCK, + STR_NETWORK_LOCK_NSCK, /* 20 */ STR_NETWORK_LOCK_SPCK, STR_NETWORK_LOCK_CCK, - STR_PW_LENGTH, + STR_PW_LENGTH, /* 23 */ }; enum { @@ -122,12 +149,18 @@ enum { _ST_NETWORK_LOCKCNF, _ST_EXIT, _ST_LANG, + _ST_NOSIM, _ST_TIME, - _ST_KEYBOARD, + _ST_GREETING, + _ST_CONNECTION, + _ST_TUTORIAL, + _ST_FINISH, _ST_MAX, }; extern const char *strtbl[]; void set_win_prop(struct appdata *ad, int type); +void do_state(struct appdata *ad); +void do_state_directly(int state, void *data); #endif /* __PWLOCK_H__ */ diff --git a/include/tapi.h b/include/tapi.h index 20d43a1..9f767d9 100755 --- a/include/tapi.h +++ b/include/tapi.h @@ -1,24 +1,28 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #ifndef __PWLOCK_TAPI_H__ #define __PWLOCK_TAPI_H__ -struct tapi; +#include +#include +#include enum sim_stat { SIM_ERROR = -1, @@ -37,26 +41,42 @@ enum sim_stat { SIM_REQUIRED_EVENT }; -struct tapi_info { - enum sim_stat st; +struct pwlock_tapi_info { + enum sim_stat st; /* RETRY, OK, ERROR */ int retry_cnt; }; -struct tapi *tapi_init(void (*cb) (struct tapi_info *, void *), void *data); -void tapi_exit(struct tapi **t); +struct tapi { + TapiHandle *handle; + struct tapi_event *evt; + int evt_sz; + + void *cb_data; + void (*cb) (struct pwlock_tapi_info *, void *); +}; -int tapi_is_ready(void); -int tapi_ready_check(void); +struct tapi_event { + unsigned int sid; + char *event; + void (*tapi_notification_cb)(TapiHandle *handle, const char *noti_id, void *data, void *user_data); +}; -enum sim_stat tapi_check_sim(int *changed); +struct tapi *pwlock_tapi_init(void (*cb) (struct pwlock_tapi_info *, void *), void *data); +void pwlock_tapi_exit(struct tapi **t); +int pwlock_tapi_ready_check(void); -int tapi_verify_pins(char *code); -int tapi_verify_puks(char *code, char *newcode); -int tapi_verify_lock(char *code); -int tapi_disable_net_pers(char *code, int type); +enum sim_stat pwlock_tapi_check_sim(struct tapi *t, int *changed); -void enable_net_pers(); +/* tapi wrapper */ +int pwlock_tapi_verify_pins(struct tapi *t, char *code); +int pwlock_tapi_verify_puks(struct tapi *t, char *code, char *newcode); +int pwlock_tapi_verify_lock(struct tapi *t, char *code); +int pwlock_tapi_disable_net_pers(struct tapi *t, char *code, TelSimLockType_t type); -int tapi_get_language(int *v); +/* callbacks */ +void pwlock_tapi_noti_modem_power_cb(TapiHandle *handle, const char *noti_id, void *data, void *user_data); +void pwlock_tapi_noti_sim_status_cb(TapiHandle *handle, const char *noti_id, void *data, void *user_data); +void pwlock_tapi_verify_sim_pins_and_puks_cb(TapiHandle *handle, int result, void *data, void *user_data); +void pwlock_tapi_disable_sim_facility_cb(TapiHandle *handle, int result, void *data, void *user_data); #endif /* __PWLOCK_TAPI_H__ */ diff --git a/include/ui-callback.h b/include/ui-callback.h new file mode 100755 index 0000000..a7af470 --- /dev/null +++ b/include/ui-callback.h @@ -0,0 +1,37 @@ +/* + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#ifndef __PWLOCK_UI_CALLBACK_H__ +#define __PWLOCK_UI_CALLBACK_H__ + +void pwlock_greeting_next_cb(void *data, Evas_Object * obj, void *e); +void pwlock_nosim_skip_cb(void *data, Evas_Object * obj, void *e); +void pwlock_tutorial_prev_cb(void *data, Evas_Object * obj, void *e); +void pwlock_tutorial_next_cb(void *data, Evas_Object * obj, void *e); +void pwlock_ug_connection_layout_cb(ui_gadget_h ug, enum ug_mode mode, + void *priv); +void pwlock_ug_connection_result_cb(ui_gadget_h ug, service_h service, + void *priv); +void pwlock_ug_connection_destroy_cb(ui_gadget_h ug, void *priv); +void pwlock_popup_exit_ok_cb(void *data, Evas_Object * e, void *ei); +void pwlock_popup_exit_cancel_cb(void *data, Evas_Object * e, void *ei); +void pwlock_finish_prev_cb(void *data, Evas_Object * obj, void *e); +void pwlock_finish_cb(void *data, Evas_Object * obj, void *e); + +#endif /* __PWLOCK_UI_CALLBACK_H__ */ diff --git a/include/ui.h b/include/ui.h index dd08b6e..cdc060c 100755 --- a/include/ui.h +++ b/include/ui.h @@ -1,19 +1,21 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #ifndef __PWLOCK_UI_H__ #define __PWLOCK_UI_H__ @@ -35,21 +37,34 @@ enum { _UI_NETWORK_LOCK_NSCK, _UI_NETWORK_LOCK_SPCK, _UI_NETWORK_LOCK_CCK, - _UI_LANG, + _UI_LANG, //skipable view starts from here + _UI_NOSIM, _UI_TIME, _UI_KEYBOARD, + _UI_FACEBOOK, _UI_DIALER, + _UI_GREETING, + _UI_CONNECTION, + _UI_DATA_MIGRATION, + _UI_TUTORIAL, + _UI_FINISH, + /*_UI_POPUP,*/ }; +int show_splash_screen(struct appdata *ad); +int show_greeting(struct appdata *ad); +int show_connection(struct appdata *ad); +int show_tutorial(struct appdata *ad); void show_pin(struct appdata *ad); void show_puk(struct appdata *ad); void show_puk_pin(struct appdata *ad); void show_block(struct appdata *ad); void show_sim_lock(struct appdata *ad); int show_lang(struct appdata *ad); +int show_nosim(struct appdata *ad); int show_time(struct appdata *ad); -int show_account(struct appdata *ad); int show_keyboard_setting(struct appdata *ad); +int show_finish(struct appdata *ad); int show_dialer(struct appdata *ad); void pwlock_destroy(struct appdata *ad); @@ -58,8 +73,14 @@ void load_main(struct appdata *ad, int ui_type); void show_msg(struct appdata *ad, int strid); void clear_entry(struct appdata *ad); void _show_popup(void *data, char *msg_str); +void show_popup_accesibility(struct appdata *ad); void show_popup(struct appdata *ad, const char *mesg, Eina_Bool mode); +void show_popup_ask_exit(struct appdata *ad, const char *mesg); void show_waiting_popup(struct appdata *ad, const char *msg_str); void remove_waiting_popup(struct appdata *ad); Eina_Bool show_puk_do(void *data); +void update_pw_entry(struct appdata *ad, char *input_data); + +Evas_Object *pwlock_add_layout_from_edj(Evas_Object *parent, const char *file, + const char *group); #endif /* __PWLOCK_UI_H__ */ diff --git a/include/util.h b/include/util.h index 0700d02..3f30ab1 100755 --- a/include/util.h +++ b/include/util.h @@ -1,19 +1,21 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #ifndef __PWLOCK_UTIL_H__ #define __PWLOCK_UTIL_H__ @@ -30,6 +32,7 @@ #define ENABLE_LOG_SYSTEM +void pwlock_log(char *fmt, ...); void pwlock_log_t(char *fmt, ...); #ifdef ENABLE_LOG_SYSTEM @@ -50,14 +53,22 @@ void pwlock_log_t(char *fmt, ...); #define _DBG(...) #endif +#define PWLOCK_MEMFREE(ptr) \ + do { \ + if (ptr != NULL) { \ + free(ptr); \ + ptr = NULL; \ + } \ + } while(0); + enum { - IDS_COM_SK_SET = 0, - IDS_COM_SK_DONE, + IDS_COM_SK_DONE = 0, IDS_COM_BODY_ENTER_PASSWORD, IDS_COM_BODY_PREVIOUS, IDS_COM_SK_NEXT, IDS_COM_SK_OK, IDS_COM_SK_CANCEL, + IDS_COM_SK_START, IDS_PWLOCK_SYSTEM_STRING_MAX, }; @@ -65,7 +76,6 @@ enum { enum { IDS_IDLE_BODY_AUTOMATIC = IDS_PWLOCK_SYSTEM_STRING_MAX, IDS_IDLE_HEADER_NETWORK_LOCK, - IDS_IDLE_HEADER_PHONE_LOCK, IDS_IDLE_HEADER_PIN_LOCK, IDS_IDLE_HEADER_PUK_LOCK, IDS_IDLE_HEADER_SIM_BLOCKED, @@ -77,38 +87,33 @@ enum { IDS_IDLE_BODY_ENTER_PUK, IDS_IDLE_BODY_INCORRECT_PIN, IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN, - IDS_IDLE_BODY_INCORRECT_PUK, - IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED, IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY, IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY, - IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG, IDS_IDLE_BODY_PD_ATTEMPTS_LEFT, IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY, IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER, - IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE, IDS_IDLE_BODY_WRONG_PASSWORD, - IDS_IDLE_BUTTON_CANCEL, IDS_IDLE_BUTTON_DIALER, IDS_IDLE_HEADER_DISPLAY_LANGUAGE, IDS_IDLE_BODY_DO_YOU_WANT_TO_SKIP_SETUPWIZARD, IDS_IDLE_BODY_PASSWORD_EMPTY, IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED, - IDS_IDLE_BODY_NEW_PIN, - IDS_IDLE_BODY_PIN, - IDS_IDLE_BODY_PUK, - IDS_IDLE_POP_PIN_BLOCKED, - IDS_IDLE_POP_PIN_UNBLOCKED, - IDS_IDLE_BODY_CONFIRM_NEW_PIN, - IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT, - IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT, - IDS_IDLE_BODY_PD_TO_PD_DIGITS_OR_LETTERS_REQUIRED, IDS_IDLE_POP_PASSWORDS_NOT_MATCH, IDS_IDLE_POP_PIN_CHANGED, IDS_IDLE_POP_SIM_CARD_ERROR, - IDS_IDLE_BODY_TRY_LATER, - IDS_IDLE_BODY_INPUT_PASSWORD_AFTER_THIRTYSECONDS, - IDS_IDLE_BODY_CHECKING_SIM_STATUS, - + IDS_IDLE_POP_CHECKING_SIM_CARD_ING, + IDS_IDLE_BODY_GREETING_WELCOME, + IDS_SCM_BODY_WELCOME_E, + IDS_STU_BODY_SELECT_LANGUAGE, + IDS_ST_SK_EMERGENCY_CALL, + IDS_ST_BODY_TAP_TO_SET_UP, + IDS_IDLE_SK_SKIP, + IDS_ST_BODY_INSTALTAB_FINISH, + IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE, + IDS_STU_POP_SETUP_COMPLETE, + IDS_IDLE_HEADER_NOSIM, + IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG, + IDS_ST_BUTTON_TRY_AGAIN_ABB, IDS_PWLOCK_APP_STRING_MAX, }; @@ -116,4 +121,6 @@ char *pwlock_get_string(int id); Evas_Object *create_win(const char *name); Evas_Object *load_edj(Evas_Object * parent, const char *file, const char *group); +int pwlock_get_model_number(char *buf, int max_size); +void pwlock_tolower(char *src, char *dest); #endif /* __PWLOCK_UTIL_H__ */ diff --git a/org.tizen.pwlock.desktop.in b/org.tizen.pwlock.desktop.in deleted file mode 100755 index fe6fc63..0000000 --- a/org.tizen.pwlock.desktop.in +++ /dev/null @@ -1,9 +0,0 @@ -Name=@PROJECT_NAME@ -Exec=@BINDIR@/@PROJECT_NAME@ -Type=Application -Nodisplay=True - -X-TIZEN-TaskManage=False -X-TIZEN-Multiple=False -X-TIZEN-Removable=False - diff --git a/org.tizen.pwlock.xml b/org.tizen.pwlock.xml new file mode 100644 index 0000000..07224c5 --- /dev/null +++ b/org.tizen.pwlock.xml @@ -0,0 +1,9 @@ + + + + Sunyeop Hwang + Password Lock Appication + + + + diff --git a/packaging/org.tizen.pwlock.spec b/packaging/org.tizen.pwlock.spec index c0d806f..d5439cd 100755 --- a/packaging/org.tizen.pwlock.spec +++ b/packaging/org.tizen.pwlock.spec @@ -2,14 +2,14 @@ Name: org.tizen.pwlock Summary: Password Lock application -Version: 0.2.1 +Version: 0.3.7 Release: 1 -Group: User Experience -License: Flora Software License +Group: TBD +License: TBD Source0: %{name}-%{version}.tar.gz BuildRequires: pkgconfig(elementary) -BuildRequires: pkgconfig(ui-gadget) +BuildRequires: pkgconfig(ui-gadget-1) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(dlog) BuildRequires: pkgconfig(vconf) @@ -18,8 +18,12 @@ BuildRequires: pkgconfig(tapi) BuildRequires: pkgconfig(utilX) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(aul) +BuildRequires: pkgconfig(accounts-svc) +BuildRequires: pkgconfig(appsvc) BuildRequires: pkgconfig(sysman) -BuildRequires: gettext-tools +BuildRequires: pkgconfig(capi-base-common) +BuildRequires: pkgconfig(iniparser) +BuildRequires: gettext BuildRequires: cmake BuildRequires: edje-tools Requires(post): /usr/bin/vconftool @@ -33,22 +37,23 @@ Password lock application. %build LDFLAGS+="-Wl,--rpath=%{PREFIX}/lib -Wl,--as-needed";export LDFLAGS cmake . -DCMAKE_INSTALL_PREFIX=%{PREFIX} +# cmake does not have a good dependency and make parallel will fail +# make %{?jobs:-j%jobs} make %install %make_install -%find_lang pwlock - %post GOPTION="-g 6514" -vconftool $GOPTION set -t bool db/setting/pwlock_boot "1" -chown -R 5000:5000 /opt/apps/org.tizen.pwlock/data +vconftool $GOPTION set -t bool db/pwlock/first_boot "1" -#%files -f %{name}.lang %files -%defattr(-,root,root,-) -%dir /opt/apps/org.tizen.pwlock/data -/opt/share/applications/org.tizen.pwlock.desktop +%defattr(-,root,root,-) +%attr(-,inhouse,inhouse) %dir /opt/apps/org.tizen.pwlock/data /opt/apps/org.tizen.pwlock/bin/pwlock -/opt/apps/org.tizen.pwlock/res/locale/*/LC_MESSAGES/pwlock.mo +/opt/apps/org.tizen.pwlock/res/locale/*/LC_MESSAGES/pwlock.mo +/opt/share/packages/org.tizen.pwlock.xml +/opt/apps/org.tizen.pwlock/res/edje/*.edj +/opt/apps/org.tizen.pwlock/res/images/*.png + diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt old mode 100755 new mode 100644 index 2defb36..504a85c --- a/po/CMakeLists.txt +++ b/po/CMakeLists.txt @@ -1,7 +1,6 @@ # for i18n -#SET(POFILES de.po en_US.po fr.po ja.po nl.po pt.po ru.po zh_CN.po zh_TW.po el.po es.po it.po ko.po tk.po zh_HK.po) -SET(POFILES de_DE.po el_GR.po en.po es_ES.po fr_FR.po it_IT.po ja_JP.po ko_KR.po nl_NL.po pt_PT.po ru_RU.po tr_TR.po zh_CN.po zh_HK.po zh_TW.po) +SET(POFILES ar.po bg.po ca.po cs.po da.po de_DE.po el_GR.po en.po en_US.po es_ES.po fi.po fr_FR.po he.po hi.po hr.po hu.po id.po it_IT.po ja_JP.po ko_KR.po lt.po lv.po ms.po nl_NL.po no.po pl.po pt_PT.po ro.po ru_RU.po sk.po sl.po sr.po sv.po th.po tr_TR.po uk.po vi.po zh_CN.po zh_HK.po zh_TW.po) SET(MSGFMT "/usr/bin/msgfmt") diff --git a/po/POTFILES.in b/po/POTFILES.in deleted file mode 100755 index e6581b0..0000000 --- a/po/POTFILES.in +++ /dev/null @@ -1,5 +0,0 @@ -# List of source files containing translatable strings. -#pwlock.c -#ui.c -#langs.c -pwlock-string.c diff --git a/po/ar.po b/po/ar.po new file mode 100644 index 0000000..a0deef8 --- /dev/null +++ b/po/ar.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "أدخل PIN ثانية" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "حقل كلمة المرور فارغ" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "يلزم كتابة الأرقام من %d إلى %d" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "رمز PIN غير صحيح. محاولة واحدة متبقية" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "رمز PIN غير صحيح. %d محاولة (محاولات) متبقية" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "رمز PIN جديد" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "تم قفل PIN" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "تم إلغاء قفل PIN" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "قفل الشبكة" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "قفل PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "قفل PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "تم حجب بطاقة SIM" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "قفل البطاقة" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "تتبقى محاولة واحدة" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "تخصيص الشركة قيد التشغيل. أدخل مفتاح التحكم" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "أدخل PIN جديد" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "أدخل PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "أدخل PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "خطأ PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "رمز PIN غير صحيح.\n يرجى المحاولة ثانية" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "تخصيص الشبكة قيد التشغيل. أدخل مفتاح التحكم" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "تخصيص الشبكة الفرعية قيد التشغيل. أدخل مفتاح التحكم" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d محاولات متبقية" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "تخصيص مزود الخدمة قيد التشغيل. أدخل مفتاح التحكم" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "بطاقة SIM غير متاحة. اتصل بمزود الخدمة" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "كلمة المرور خاطئة" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "الطالب" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "لغة العرض" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "جاري فحص البطاقة..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "مرحبا!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "اختيار اللغة" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "مكالمة طوارئ" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "انقر للإعداد" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "إنهاء" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "تم إعداد الجهاز وأصبح جاهزا للاستخدام" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "اكتمل الإعداد" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "أوقف تشغيل الجهاز وقم بإخراج البطارية وإدخال بطاقة SIM بعناية بحيث يكون اتجاه جانب التماس الذهبي لأسفل. يجب أن تكون نهاية الجانب المشطوف بعيدة تماما عن البطارية\nإذا كنت ترغب في التخطي الآن، فتأكد من إدخال بطاقة SIM لاحقا. حتى تقوم بإدخالها، لن يعمل الكثير من ميزات الجهاز" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "إعادة محاولة" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "تلقائي" + diff --git a/po/bg.po b/po/bg.po new file mode 100644 index 0000000..a2368f6 --- /dev/null +++ b/po/bg.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Потвърждаване на новия PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Паролата е празна" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Изискват се от %d до %d цифри" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Неправилен PIN. 1 оставащ опит" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Неправилен PIN. Остават %d опита" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Нов PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN блокиран" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN деблокиран" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Заключване на мрежа" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Заключване PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK заключване" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM картата е блокирана" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Заключване на SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 оставащ опит" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Корпоративно персонализиране включено. Въведете контролния ключ" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Въведи нов PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Въведете PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Въведете PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Неправилен PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Неправилен PIN.\nМоля, опитайте пак" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Персонализиране на мрежата включено. Въведете контролния ключ" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Персонализиране на подмрежата включено. Въведете контролния ключ" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Остават %d опита" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Персонализиране на доставчик на услуги включено. Въведете контролния ключ" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM картата не е достъпна. Свържете се с доставчика на услугата" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Грешна парола" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Набиращ" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Език за дисплея" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Проверка на SIM картата..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Добре дошли!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Избор на език" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Спешно повикване" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Чукнете, за да настроите" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Край" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Устройството е настроено и готово за използване" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Настройването е завършено" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Изключете устройството, извадете батерията и внимателно поставете SIM картата със златните клеми надолу. Подрязаният ъгъл трябва да се пада в далечния ъгъл спрямо батерията\nАко предпочитате да прескочите сега, обезателно поставете SIM картата си по-късно. Докато не го направите, повечето от функциите на устройството ви няма да работят" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Нов опит" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Автоматично" + diff --git a/po/ca.po b/po/ca.po new file mode 100644 index 0000000..a62fdd2 --- /dev/null +++ b/po/ca.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Confirmar nou PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Contrasenya buida" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Es requereixen de %d a %d dígits" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN incorrecte. Queda 1 intent" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Codi PIN incorrecte. Queden %d intents" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Nou PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN bloquejat" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN desbloquejat" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Bloqueig de xarxa" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Bloqueig PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Bloqueig PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM bloquejada" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Bloqueig SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Queda 1 intent" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalització corporativa habilitada. Introdueixi la clau de control" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Introduir nou PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Introdueixi PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Introdueixi PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN incorrecte" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "PIN incorrecte.\nTornar a intentar" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalització de xarxa habilitada. Introdueixi la clau de control" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalització de subconjunt de xarxa habilitada. Introdueixi la clau de control" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Queden %d intents" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalització de proveïdor de serveis habilitada. Introdueixi la clau de control" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Targeta SIM no disponible. Contacti amb el seu proveïdor de serveis" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Contrasenya incorrecta" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Marcador" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Idioma de visualització" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Comprovant targeta SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Benvingut!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Seleccionar idioma" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Trucada d'emergència" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Toqui per a configurar" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Acabar" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "El dispositiu està configurat i llest per utilitzar-se" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configuració completa" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Apagui el dispositiu, retiri la bateria i insereixi amb cura la targeta SIM amb el contacte daurat cap avall. La cantonada retallada ha de quedar el més lluny possible de la bateria\nSi prefereix ometre aquest pas ara, asseguri's d'inserir la targeta SIM més tard. Fins que no ho faci, la majoria de les funcions del dispositiu no funcionaran" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Reintentar" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automàtica" + diff --git a/po/cs.po b/po/cs.po new file mode 100644 index 0000000..9094ebc --- /dev/null +++ b/po/cs.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Potvrdit nový PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Nevyplněné heslo" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Požadováno %d až %d číslic" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Chybný PIN kód. Zbývá 1 pokus" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Chybný PIN kód. Zbývá %d pokusů" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Nový PIN kód" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN zablokován" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN odblokován" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Zámek sítě ověřen" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Zámek PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Zámek PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM karta blokována" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Zámek karty SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Zbývá 1 pokus" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Bylo zapnuto podnikové přizpůsobení. Zadejte řídicí klíč" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Zadejte nový PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Zadat PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Zadejte PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Chybný PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Chybný PIN kód.\nOpakujte zadání" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Bylo zapnuto přizpůsobení sítě. Zadejte řídicí klíč" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Bylo zapnuto přizpůsobení podmnožiny sítě. Zadejte řídicí klíč" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Počet zbývajících pokusů: %d" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Bylo zapnuto přizpůsobení poskytovatele služby. Zadejte řídicí klíč" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM karta je nedostupná. ObraÅ¥te se na poskytovatele služeb" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Nesprávné heslo" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Číselník" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Jazyk displeje" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Probíhá kontrola SIM karty..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Vítejte!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Vybrat jazyk" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Tísňové volání" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Nastavte klepnutím sem" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Dokončit" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Zařízení je nastaveno a připraveno k použití" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Nastavení bylo dokončeno" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Vypněte zařízení, vyjměte baterii a opatrně vložte SIM kartu otočenou zlatými kontakty dolů. Zkosený roh musí být co nejdále od baterie\nPokud chcete tento krok přeskočit, nezapomeňte později vložit SIM kartu. Dokud tak neučiníte, nebudete moci používat větÅ¡inu funkcí zařízení" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Opakovat" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automaticky" + diff --git a/po/da.po b/po/da.po new file mode 100644 index 0000000..1c13654 --- /dev/null +++ b/po/da.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Bekræft ny PIN-kode" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Adgangskode tom" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Der kræves %d til %d cifre" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Forkert PIN-kode. 1 forsøg tilbage" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Forkert PIN-kode. %d forsøg tilbage" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Ny PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN-kode" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK-kode" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN spærret" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN-kode ikke spærret" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "NetværkslÃ¥s" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN-lÃ¥s" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK-lÃ¥s" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM-kortet er blokeret" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Personlig SIM-lÃ¥s" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 forsøg tilbage" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Firmapersonalisering til. Tryk pÃ¥ Kontrol-tast" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Angiv ny PIN-kode" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Angiv PIN-kode" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Angiv PUK-kode" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Forkert PIN-kode" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Forkert PIN-kode.\nPrøv igen." + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Netværkspersonalisering til. Tryk pÃ¥ Kontrol-tast" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisering af netværksundersæt til. Tryk pÃ¥ Kontrol-tast" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d forsøg tilbage" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisering af tjenesteudbyder til. Tryk pÃ¥ Kontrol-tast" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM-kort ikke tilgængeligt. Kontakt din serviceudbyder" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Forkert adgangskode" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Opkald" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Vis sprog" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Kontrollerer SIM-kort..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Velkommen!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Vælg sprog" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Nødopkald" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tryk for at opsætte" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Udfør" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Enhed er konfigureret og klar til brug" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Opsætning fuldført" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Sluk for din enhed, fjern batteriet og isæt SIM-kortet forsigtigt med den guldfarvede side nedad. Det afskÃ¥rne hjørne skal være længst væk fra batteriet\nHvis du foretrækker at springe dette over nu, skal du sørge for at indsætte dit SIM-kort senere. De fleste af enhedens funktioner virker ikke, før du gør dette" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Prøv igen" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatisk" + diff --git a/po/de_DE.po b/po/de_DE.po old mode 100755 new mode 100644 index df48002..8572355 --- a/po/de_DE.po +++ b/po/de_DE.po @@ -28,17 +28,8 @@ msgstr "PIN gesperrt" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN entsperrt" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Abbr." - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automatisch" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" -msgstr "Netzsperre" - -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Telefonsperre" +msgstr "SIM-Sperre" msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN-Sperre" @@ -56,7 +47,7 @@ msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" msgstr "Noch 1 Versuch" msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "Unternehmenspersonalisierung aktiviert. Steuertaste eingeben" +msgstr "Unternehmenspersonalisierung aktiviert. Entsperrcode eingeben." msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" msgstr "Neue PIN eingeben" @@ -73,33 +64,21 @@ msgstr "Falsche PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Ungültige PIN.\nErneut versuchen" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Falscher PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Sprache nicht unterstützt" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "Netzwerkpersonalisierung aktiviert. Steuertaste eingeben" +msgstr "Netzwerkpersonalisierung aktiviert. Entsperrcode eingeben." msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "Netzwerk Teil-Personalisierung aktiviert. Steuertaste eingeben" - -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Das Passwort muss 4 Stellen lang sein" +msgstr "Netzwerk Teil-Personalisierung aktiviert. Entsperrcode eingeben." msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d Versuche übrig" msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "Dienstanbieterpersonalisierung aktiviert. Steuertaste eingeben" +msgstr "Dienstanbieterpersonalisierung aktiviert. Entsperrcode eingeben." msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM nicht verfügbar. Wenden Sie sich an Ihren Dienstanbieter" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "SIM-Kartensprache kann nicht gelesen werden" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Falsches Passwort" @@ -109,3 +88,36 @@ msgstr "Wählen" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Anzeigesprache" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM-Karte wird geprüft..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Willkommen!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Sprache auswählen" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Notruf" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Zum Einrichten tippen" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Beenden" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Das Gerät ist eingerichtet und betriebsbereit" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Einrichtung abgeschlossen" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Schalten Sie das Gerät aus, entfernen Sie den Akku und legen Sie die SIM-Karte vorsichtig und mit den Kontaktflächen nach unten ein. Die abgerundete Ecke der Karte sollte dabei am weitesten vom Akku entfernt liegen.\nFalls Sie diesen Schritt jetzt überspringen möchten, sollten Sie die SIM-Karte später einlegen. Ohne SIM-Karte sind die meisten Funktionen Ihres Geräts nicht verfügbar." + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Erneut" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatisch" + diff --git a/po/el_GR.po b/po/el_GR.po old mode 100755 new mode 100644 index 632625d..9faab18 --- a/po/el_GR.po +++ b/po/el_GR.po @@ -28,18 +28,9 @@ msgstr "Εμπλοκή ΡΙΝ" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "Απεμπλοκή ΡΙΝ" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Ακύρωση" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Αυτόματα" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Κλείδωμα δικτύου" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Κλείδωμα τηλεφώνου" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "Κλείδωμα PIN" @@ -73,21 +64,12 @@ msgstr "Λάθος PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Εσφαλμένο ΡΙΝ.\nΠαρακαλώ προσπαθήστε ξανά" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Λάθος PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Η γλώσσα δεν υποστηρίζεται" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Εξατομίκευση δικτύου ενεργή. Εισαγάγετε πλήκτρο ελέγχου" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Εξατομίκευση υποσυνόλου δικτύου ενεργή. Εισαγάγετε πλήκτρο ελέγχου" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Ο κωδικός πρόσβασης πρέπει να είναι τετραψήφιος" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d προσπάθειες απομένουν" @@ -97,9 +79,6 @@ msgstr "Εξατομίκευση παροχέα υπηρεσιών ενεργή. msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "Μη διαθέσιμη κάρτα SIM. Επικοινωνήστε με τον παροχέα υπηρεσιών" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Δεν είναι δυνατή η ανάγνωση της γλώσσας της κάρτας SIM" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Λάθος κωδικός" @@ -109,3 +88,36 @@ msgstr "Επ. κλήσ." msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Γλώσσα εμφάνισης" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Έλεγχος κάρτας SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Καλώς ορίσατε!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Επιλογή γλώσσας" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Κλήση έκτακτης ανάγκης" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Πατήστε για ρύθμιση" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Τέλος" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Η συσκευή ρυθμίστηκε και είναι έτοιμη για χρήση" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Η ρύθμιση ολοκληρώθηκε" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Απενεργοποιήστε τη συσκευή σας, αφαιρέστε τη μπαταρία και τοποθετήστε προσεκτικά την κάρτα SIM με την πλευρά των χρυσών επαφών προς τα κάτω. Η στρογγυλεμένη γωνία θα πρέπει να είναι η πιο απομακρυσμένη πλευρά σε σχέση με τη μπαταρία\nΕάν προτιμάτε να κάνετε παράκαμψη τώρα, φροντίστε να τοποθετήσετε την κάρτα SIM αργότερα. Μέχρι να γίνει αυτό, οι περισσότερες από τις λειτουργίες της συσκευής σας δεν θα είναι διαθέσιμες" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Δοκιμ. ξανά" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Αυτόματα" + diff --git a/po/en.po b/po/en.po old mode 100755 new mode 100644 index bc087e4..e984ae2 --- a/po/en.po +++ b/po/en.po @@ -28,18 +28,9 @@ msgstr "PIN blocked" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN unblocked" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Cancel" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automatic" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Network lock" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Phone lock" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN lock" @@ -73,21 +64,12 @@ msgstr "Incorrect PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Incorrect PIN. Try again" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Incorrect PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Language not supported" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Network personalisation on. Enter control key" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Network subset personalisation on. Enter control key" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Password must be 4 digits long" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d attempts left" @@ -97,15 +79,45 @@ msgstr "Service provider personalisation on. Enter control key" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM card not available. Contact your service provider" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Unable to read SIM card language" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Wrong password" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "Dialer" +msgstr "Dialler" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Display language" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Checking SIM card..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Welcome!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Select language" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Emergency call" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tap to set up" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Finish" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Device is set up and ready to use" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Setup complete" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Turn off your device, remove the battery, and carefully insert your SIM card with the gold contact side down. The cut-off corner should end up furthest away from the battery\nIf you prefer to skip now, be sure to insert your SIM card later. Until you do, most of your device’s features will not work" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Try again" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatic" + diff --git a/po/en_US.po b/po/en_US.po new file mode 100644 index 0000000..5cb4dec --- /dev/null +++ b/po/en_US.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Confirm new PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Password empty" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d to %d digits required" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Incorrect PIN. 1 attempt left" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Incorrect PIN. %d attempts left" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "New PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN blocked" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN unblocked" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Network lock" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN lock" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK lock" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM blocked" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM lock" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 attempt left" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Corporate personalization on. Enter control key" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Enter new PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Enter PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Enter PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Incorrect PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Incorrect PIN. Try again" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Network personalization on. Enter control key" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Network subset personalization on. Enter control key" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d attempts left" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Service provider personalization on. Enter control key" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM card not available. Contact your service provider" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Wrong password" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Dialer" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Display language" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Checking SIM card..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Welcome!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Select language" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Emergency call" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tap to set up" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Finish" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Device is set up and ready to use" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Setup complete" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Turn off your device, remove the battery, and carefully insert your SIM card with the gold contact side down. The cut-off corner should end up furthest away from the battery\nIf you prefer to skip now, be sure to insert your SIM card later. Until you do, most of your device’s features will not work" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Try again" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatic" + diff --git a/po/es_ES.po b/po/es_ES.po old mode 100755 new mode 100644 index a69008e..c0c5e2c --- a/po/es_ES.po +++ b/po/es_ES.po @@ -1,5 +1,5 @@ msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" -msgstr "Confirmar PIN nuevo" +msgstr "Confirme el nuevo código PIN" msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" msgstr "Contraseña vacía" @@ -28,18 +28,9 @@ msgstr "PIN bloqueado" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN desbloqueado" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Cancelar" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automático" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Bloqueo red" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Bloqueo del teléfono" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "Bloqueo de PIN" @@ -73,21 +64,12 @@ msgstr "PIN incorrecto" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN incorrecto. Vuelva a intentarlo" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK incorrecto" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Idioma no admitido" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalización de red activada. Pulse tecla Control" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalización de subconjunto de red activada. Pulse tecla Control" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "La contraseña debe tener 4 dígitos de longitud" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "Quedan %d intentos" @@ -97,9 +79,6 @@ msgstr "Personalización de proveedor de servicios activada. Pulse tecla Control msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "Tarjeta SIM no disponible. Póngase en contacto con el proveedor de servicios" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "No se puede leer idioma de tarjeta SIM" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Contraseña incorrecta" @@ -109,3 +88,36 @@ msgstr "Marcador" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Idioma para mostrar" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Comprobando tarjeta SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "¡Bienvenido!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Seleccionar idioma" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Llamada de emergencia" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tocar para configurar" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Finalizar" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "El dispositivo está configurado y listo para usarse" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configuración completa" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Apague el dispositivo, retire la batería e inserte cuidadosamente la tarjeta SIM con la parte dorada hacia abajo. La esquina recortada debería quedar lo más lejos posible de la batería\nSi prefiere omitir este paso ahora, asegúrese de insertar la tarjeta SIM más tarde. Hasta que no lo haga, la mayoría de funciones del dispositivo no funcionarán" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Reintentar" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automático" + diff --git a/po/fi.po b/po/fi.po new file mode 100644 index 0000000..c1d23c7 --- /dev/null +++ b/po/fi.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Vahvista uusi PIN-koodi" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Salasana tyhjä" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Vaaditaan %d - %d numeroa" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Virheellinen PIN-koodi. 1 yritys jäljellä" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Virheellinen PIN-koodi. %d yritystä jäljellä" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Uusi PIN-koodi" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN-koodi lukittu" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN-lukitus poistettu" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Verkkolukko" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN-lukitus" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK-lukitus" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM-kortti estetty" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM-kortin lukitus" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 yritys jäljellä" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Yrityksen yksilöinti on käytössä. Anna hallintatunnus" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Anna uusi PIN-koodi" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Anna PIN-koodi" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Anna PUK-koodi" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Virheellinen PIN-koodi" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Virheellinen PIN-koodi.\nYritä uudelleen" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Verkon yksilöinti on käytössä. Anna hallintatunnus" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Verkon osittainen yksilöinti on käytössä. Anna hallintatunnus" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d yritystä jäljellä" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Palveluntarjoajan yksilöinti on käytössä. Anna hallintatunnus" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM-kortti ei käytettävissä. Ota yhteyttä palveluntarjoajaan" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Väärä salasana" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Num.val." + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Näyttökieli" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Tarkistetaan SIM-korttia..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Tervetuloa!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Valitse kieli" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Hätäpuhelu" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Määritä napauttamalla" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Valmis" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Laite on määritetty ja valmiina käyttöön" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Asennus valmis" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Katkaise laitteesta virta, irrota akku ja aseta SIM-kortti varovasti laitteeseen niin, että kullattu kontaktipuoli on alaspäin. Katkaistun kulman pitäisi olla kauimpana akusta\nJos haluat ohittaa tämän vaiheen nyt, muista asettaa SIM-kortti laitteeseen myöhemmin. Tätä ennen useimmat laitteen toiminnoista eivät toimi" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Yritä uud." + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automaattinen" + diff --git a/po/fr_FR.po b/po/fr_FR.po old mode 100755 new mode 100644 index d24bf42..6e6484b --- a/po/fr_FR.po +++ b/po/fr_FR.po @@ -1,5 +1,5 @@ msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" -msgstr "Confirmer nouveau code PIN" +msgstr "Confirmer le nouveau code PIN" msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" msgstr "Mot de passe vide" @@ -28,18 +28,9 @@ msgstr "Code PIN bloqué" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "Code PIN débloqué" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Annuler" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automatique" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Code blocage réseau" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Verrouillage téléphone" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "Verrouillage PIN" @@ -73,21 +64,12 @@ msgstr "Code PIN incorrect" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Code PIN incorrect\nRéessayez" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Code PUK incorrect" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Langue non prise en charge" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personnalisation réseau activée. Appuyez sur Contrôle" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personnalisation sous-réseau activée. Appuyez sur Contrôle" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Le mot de passe doit comporter 4 chiffres" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d essais restants" @@ -97,9 +79,6 @@ msgstr "Personnalisation fournisseur d'accès activée. Appuyez sur Contrôle" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "Carte SIM non disponible. Contactez votre opérateur" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Impossible de lire la langue de la carte SIM" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Mot de passe incorrect" @@ -109,3 +88,36 @@ msgstr "Clavier" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Langue d'affichage" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Vérification carte SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Bienvenue !" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Sélectionner la langue" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Appel d'urgence" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Appuyez pour configurer" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Terminer" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "L'appareil est configuré et prêt à l'emploi" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configuration terminée" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Eteignez votre appareil, retirez la batterie et insérez délicatement votre carte SIM en orientant le côté du contact doré vers le bas. Le coin coupé doit être le plus éloigné de la batterie\nSi vous préférez sauter cette étape, veillez à insérer votre carte SIM plus tard. En attendant, la plupart des fonctions de l'appareil ne fonctionneront pas" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Réessayez" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatique" + diff --git a/po/he.po b/po/he.po new file mode 100644 index 0000000..246f945 --- /dev/null +++ b/po/he.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "אשר PIN חדש" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "הסיסמה ריקה" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "נדרשות %d עד %d ספרות" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN שגוי. 1 ניסיון נותר" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN שגוי. נותרו %d ניסיונות" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN חדש" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK קוד" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN חסום" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "חסימת PIN בוטלה" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "נעילת רשת" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN אימות" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK נעול" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM חסום" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM נעילת" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "נותר 1 ניסיון" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "התאמה אישית של חברה מופעלת. הזן מקש בקרה" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "חדש PIN קוד" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "הזן PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "הזן PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "קוד PIN שגוי" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "PIN שגוי.\nנסה שוב" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "התאמה אישית של הרשת מופעלת. הזן מקש בקרה" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "התאמה אישית של תת הרשת מופעלת. הזן מקש בקרה" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "נותרו %d ניסיונות" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "התאמה אישית של ספק השירות מופעלת. הזן מקש בקרה" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "כרטיס SIM לא זמין. צור קשר עם ספק השירות שלך" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "סיסמה שגויה" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "חייגן" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "שפת תצוגה" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "בודק כרטיס SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "ברוך הבא!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "בחירת שפת המכשיר" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "שיחת חירום" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "הקש להגדרה" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "סיום" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "ההתקן מוגדר ומוכן לשימוש" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "ההגדרה הושלמה" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "כבה את ההתקן, הסר את הסוללה והכנס בזהירות את כרטיס ה-SIM שלך, עם צד המגעים המוזהב כלפי מטה. הפינה החתוכה צריכה להגיע לנקודה הרחוקה ביותר מהסוללה\nאם אתה מעוניין לדלג על שלב זה כעת, זכור להכניס את כרטיס ה-SIM מאוחר יותר. עד שתעשה זאת, רוב התכונות של ההתקן לא יעבדו" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "נסה שוב" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "אוטומטי" + diff --git a/po/hi.po b/po/hi.po new file mode 100644 index 0000000..848165b --- /dev/null +++ b/po/hi.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "नए PIN की पुष्टि करें" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "पासवर्ड खाली" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d से %d अंक आवश्यक" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "गलत PIN। 1 प्रयास बाकी" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "गलत PIN। %d प्रयास बाकी" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "नया PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "पुक" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN अवरुद्ध" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN अनब्लॉक है" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "नेटवर्क लॉक" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN लॉक" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "पुक लॉक" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM ब्‍लॉक कर दी गई" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "सिम लॉक" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 प्रयास शेष" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "कॉरपोरेट व्यक्तिकरण चालू। कंट्रोल कुंजी दर्ज करें" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "नया PIN प्रविष्ट करें" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "PIN प्रविष्ट करें" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "पुक प्रविष्ट करें" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "गलत PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "गलत PIN.\nफिर से कोशिश करें" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "नेटवर्क व्यक्तिकरण चालू। कंट्रोल कुंजी दर्ज करें" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "नेटवर्क सबसेट व्यक्तिकरण चालू। कंट्रोल कुंजी दर्ज करें" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d प्रयास शेष" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "सेवा प्रदाता व्यक्तिकरण चालू। कंट्रोल कुंजी दर्ज करें" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "सिम कार्ड उपलब्ध नहीं। अपने सेवा प्रदाता से संपर्क करें" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "गलत पासवर्ड" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "डायलर" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "भाषा प्रदर्शन" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM कार्ड जाँच रहा है…" + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "स्वागत है!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "भाषा चुनें" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "आपातकाल कॉल" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "सेटअप करने के लिए टैप करें" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "समाप्त" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "डिवाइस सेट है और उपयोग के लिए तैयार है" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "सेटअप पूर्ण" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "अपने डिवाइस को बंद करें, बैटरी निकालें, और सावधानी से नीचे की ओर गोल्ड स्पर्श करते हुए अपनी SIM डालें। कट-ऑफ़ कोना बैटरी से दूर समाप्त होना चाहिए\nयदि आप अभी छोड़ने को प्राथमिकता देते है तो SIM को बाद में डालना सुनिश्चित करें। जब तक आप ऐसा नहीं करते आपके डिवाइस की अधिकांश सुविधाएँ कार्य नहीं करेंगी" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "पुन: प्रयास" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "स्वचालित" + diff --git a/po/hr.po b/po/hr.po new file mode 100644 index 0000000..dc88fb3 --- /dev/null +++ b/po/hr.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Potvrdite novi PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Å ifra prazna" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Potrebno %d do %d znamenki" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Netočan PIN. Preostao 1 pokuÅ¡aj" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Netočan PIN. Preostalo %d pokuÅ¡aja" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Novi PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN blokiran" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN deblokiran" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Zaključavanje mreže uspjeÅ¡no" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN zaključavanje" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK zaključan" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "Blokiran SIM" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM zaključavanje" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "JoÅ¡ 1 pokuÅ¡aj" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Uključena korporativna personalizacija. Unesite kontrolni ključ" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Unesite novi PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Unesite PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Unesite PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Neispravan PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Netočan PIN\nPokuÅ¡aj ponovno" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Uključena mrežna personalizacija. Unesite kontrolni ključ" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Uključena podmrežna personalizacija. Unesite kontrolni ključ" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d pokuÅ¡aja preostalo" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Uključena personalizacija davatelja usluga. Unesite kontrolni ključ" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM kartica nije dostupna. Kontaktirajte svog davatelja usluga" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Neispravna Å¡ifra" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Biranje" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Jezik teksta" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Provjera SIM kartice..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Dobro doÅ¡li!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Odaberite jezik" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "SOS poziv" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Dotaknite za postavljanje" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "ZavrÅ¡i" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Uređaj je postavljen i spreman za koriÅ¡tenje." + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Postavljanje dovrÅ¡eno" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Isključite uređaj, izvadite bateriju i pažljivo umetnite SIM karticu sa zlatnim kontaktom okrenutim prema dolje. Odrezani kut treba biti usmjeren najdalje od baterije\nAko želite preskočiti sada, umetnite SIM karticu kasnije. Dok to ne napravite većina značajki na vaÅ¡em uređaju neće raditi" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Ponovite" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatski" + diff --git a/po/hu.po b/po/hu.po new file mode 100644 index 0000000..0946f05 --- /dev/null +++ b/po/hu.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Írja be újra az új PIN-kódot!" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Üres jelszó" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d–%d számjegy szükséges" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Hibás PIN kód. Még 1 próbálkozása van" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Helytelen PIN. %d alkalommal próbálkozhat még." + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Új PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN blokkolva" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "A PIN blokkolás feloldva" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Hálózati zár" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN védelem" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK-zár" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM letiltva" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM biztonság" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Még 1 próbálkozásra van" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Vállalatzár bekapcsolva. A feloldáshoz adja meg a feloldókódot" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Írja be az új PIN-kódot!" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Írja be a PIN-kódot!" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Írja be a PUK-kódot!" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Hibás PIN-kód" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Hibás PIN-kód.\nPróbálja újra" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Hálózatzár bekapcsolva. A feloldáshoz adja meg a feloldókódot" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Alhálózatzár bekapcsolva. A feloldáshoz adja meg a kódot" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d kísérlet maradt." + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Szolgáltatózár bekapcsolva. A feloldáshoz adja meg a feloldókódot" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "A SIM nem elérhető. Forduljon a szolgáltatóhoz" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Téves jelszó" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Tárcsázó" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Kijelző nyelve" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM-kártya ellenőrzése..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Üdvözöljük!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Nyelv kiválasztása" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Segélyhívás" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Érintse meg a beállításhoz" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Befejez" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Az eszköz beállítva, használatra kész" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "A beállítás befejeződött" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Kapcsolja ki az eszközt, vegye ki az akkumulátort, és óvatosan helyezze be a SIM kártyát az aranyszínű érintkezőkkel lefelé. A kártya levágott sarka kerüljön az akkumulátortól távolabbi oldalra\nHa ezt a lépést most kihagyja, ne felejtse el a SIM kártyát később behelyezni. Amíg ezt meg nem teszi, az eszköz legtöbb funkciója nem lesz használható" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Prób. újra" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatikus" + diff --git a/po/id.po b/po/id.po new file mode 100644 index 0000000..a883c0a --- /dev/null +++ b/po/id.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Konfirmasi PIN baru" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Kata sandi kosong" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "diperlukan %d hingga %d digit" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN salah. 1 kesempatan tersisa" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN salah. %d kesempatan tersisa" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN baru" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN terblokir" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN terbuka" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Kunci jaringan" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Kunci PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Kunci PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM diblokir" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Kunci SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 kesempatan tersisa" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisasi perusahaan aktif. Masukkan kunci kontrol" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Masukkan PIN baru" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Masukkan PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Masukkan PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN salah" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "PIN salah.\nCoba lagi" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisasi jaringan aktif. Masukkan kunci kontrol" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisasi subset jaringan diaktifkan. Masukkan kunci kontrol" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d mencoba meninggalkan" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalisasi penyedia layanan diaktifkan. Masukkan kunci kontrol" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Kartu SIM tidak tersedia. Hubungi penyedia layanan" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Kata sandi salah" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Pendial" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Bahasa tampilan" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Memeriksa kartu SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Selamat datang!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Pilih bahasa" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Panggilan darurat" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Ketuk untuk mengatur" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Selesai" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Perangkat telah disetel dan siap digunakan" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Penyetelan selesai" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Matikan perangkat Anda, lepaskan baterainya, dan dengan hati-hati masukkan kartu SIM Anda dengan sisi kontak emas di bawah. Sudut terpangkas harus berada di titik terjauh dari baterai\nJika Anda memilih melewati langkah ini sekarang, pastikan untuk memasukkan kartu SIM Anda nanti. Sebelum Anda melakukannya, sebagian besar fitur perangkat Anda tidak akan berfungsi" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Coba lagi" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Otomatis" + diff --git a/po/it_IT.po b/po/it_IT.po old mode 100755 new mode 100644 index fc053f3..2d5877f --- a/po/it_IT.po +++ b/po/it_IT.po @@ -28,18 +28,9 @@ msgstr "PIN bloccato" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN sbloccato" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Annulla" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automatica" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Blocco rete" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Blocco telefono" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "Blocco PIN" @@ -73,23 +64,14 @@ msgstr "PIN errato" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN errato.\nRiprovare" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK errato" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Lingua non supportata" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalizzazione di rete attiva. Immettere il tasto di controllo" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalizzazione del sottoinsieme di rete attiva. Immettere il tasto di controllo" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "La password deve contenere 4 cifre" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" -msgstr "%d tentativi possibili" +msgstr "%d tentativi rimasti" msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalizzazione del fornitore di servizi attiva. Immettere il tasto di controllo" @@ -97,9 +79,6 @@ msgstr "Personalizzazione del fornitore di servizi attiva. Immettere il tasto di msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "Scheda SIM non disponibile, contattare il fornitore di servizi" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Impossibile leggere la lingua della scheda SIM" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Password errata" @@ -109,3 +88,36 @@ msgstr "Componi" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Lingua display" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Verifica scheda SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Benvenuto" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Seleziona lingua" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Chiamata di emergenza" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tocca per eseguire la configurazione" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Fine" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Il dispositivo è configurato e pronto per l'uso" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configurazione completata" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Spegnete il dispositivo, rimuovete la batteria e inserite con attenzione la scheda SIM con il contatto dorato rivolto verso il basso. L'angolo smussato deve trovarsi dal lato opposto rispetto alla batteria.\nSe desiderate saltare la procedura guidata, accertatevi di inserire la scheda SIM in seguito, altrimenti la maggior parte delle funzioni del dispositivo non funzionerà" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Riprova" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatica" + diff --git a/po/ja_JP.po b/po/ja_JP.po old mode 100755 new mode 100644 index 4fb280f..a20d279 --- a/po/ja_JP.po +++ b/po/ja_JP.po @@ -1,8 +1,8 @@ msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" -msgstr "新しい​PIN​を​確認​" +msgstr "新しい​PIN​の​確認​します" msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" -msgstr "パスワードを入力" +msgstr "パスワードを入力してください" msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" msgstr "%d​~​%d桁​が​必要" @@ -23,23 +23,14 @@ msgid "IDS_IDLE_BODY_PUK" msgstr "PUK" msgid "IDS_IDLE_POP_PIN_BLOCKED" -msgstr "PIN​が​ブロック​されました" +msgstr "PINがブロックされました。" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PINが​ブロック​解除​されました" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "キャンセル" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "自動" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "ネットワーク​ロック" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "端末ロック" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN​認証" @@ -56,56 +47,77 @@ msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" msgstr "残りの​試行回​数は​1回です" msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "コーポレート​パーソナライゼーション​が​On​です。​コントロール​キーを​入力​して​ください" +msgstr "コーポレートパーソナライゼーションがONです。コントロール​キーを入力してください" msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" msgstr "新しい​PIN​を​入力" msgid "IDS_IDLE_BODY_ENTER_PIN" -msgstr "PIN​を​入力" +msgstr "PINを入力してください。" msgid "IDS_IDLE_BODY_ENTER_PUK" msgstr "PUK​を​入力" msgid "IDS_IDLE_BODY_INCORRECT_PIN" -msgstr "PINが​間違って​います" +msgstr "PINが間違っています。" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" -msgstr "PINが​間違って​います。もう一度​やり直して​ください" - -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK​が​間違って​います" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "対応​して​いない​言語です" +msgstr "PINが​間違って​います。再度入力して​ください。" msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "ネットワーク​パーソナライゼーション​が​On​です。​コントロール​キー​を​入力​して​ください" +msgstr "ネットワークパーソナライゼーションがONです。コントロールキーを入力してください" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "ネットワーク​サブセット​パーソナライゼーション​が​On​です。​コントロール​キー​を​入力​して​ください" - -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "パスワードは​4桁の​数字で​なければなりません" +msgstr "ネットワークサブセットパーソナライゼーションがONです。コントロールキーを入力してください" msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" -msgstr "残りの​試行​回数​:%d" +msgstr "残り​入力​回数:​%d回" msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" -msgstr "サービスプロバイダー​パーソナライゼーション​が​On​です。​コントロール​キー​を​入力​して​ください" +msgstr "サービスプロバイダパーソナライゼーションがONです。コントロールキーを入力してください。" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" -msgstr "SIMカード​を​使用​できません。​サービスプロバイダー​に​ご連絡​ください" - -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "SIM​カード​の​言語​を​読み込め​ません" +msgstr "SIMカードを使用できません。サービスプロバイダにご連絡ください。" msgid "IDS_IDLE_BODY_WRONG_PASSWORD" -msgstr "不正な​パスワード" +msgstr "パスワードが正しくありません。" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "アイドル状態" +msgstr "キーパッド" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "言語​表示" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM​​カード​を​チェック中..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "ようこそ" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "言語​を​選択​" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "緊急通報" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "タップして設定" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "完了" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "端末の​設定​が​完了​し、​使用​可能​な​状態​に​なり​ました。" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "セットアップが完了しました。" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "端末の電源をOFFにし、バッテリーを取り外し、金色の端子面を下側にして慎重にSIMカードを挿入してください。切欠き部分がバッテリーから一番離れるように挿入します。\nスキップする場合は、後ほどSIMカードを必ず挿入してください。端末の大部分の機能は、SIMカードを挿入しないと動作しません。" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "再試行" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "自動" + diff --git a/po/ko_KR.po b/po/ko_KR.po old mode 100755 new mode 100644 index 24f9fc6..bcfa901 --- a/po/ko_KR.po +++ b/po/ko_KR.po @@ -11,7 +11,7 @@ msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" msgstr "PIN이 바르지 않습니다. 재입력 기회가 1회 남았습니다" msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" -msgstr "PIN이 바르지 않습니다. 재입력 기회가 %d번 남았습니다" +msgstr "PIN이 바르지 않습니다. 입력 기회가 %d번 남았습니다" msgid "IDS_IDLE_BODY_NEW_PIN" msgstr "새 PIN" @@ -28,18 +28,9 @@ msgstr "PIN이 잠겼습니다" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN 잠금이 해제되었습니다" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "취소" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "자동" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "네트워크 잠금" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "휴대폰 잠금" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN 잠금" @@ -73,23 +64,14 @@ msgstr "PIN이 바르지 않습니다" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN이 바르지 않습니다. 다시 입력하세요" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK이 바르지 않습니다" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "지원되지 않는 언어입니다" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "네트워크 잠금이 실행되어 있습니다. 제어키를 입력하세요" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "네트워크 서브셋 잠금이 실행되어 있습니다. 제어키를 입력하세요" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "비밀번호는 4자리보다 길어야 합니다" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" -msgstr "재입력 기회가 %d회 남았습니다" +msgstr "입력 기회가 %d회 남았습니다" msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "서비스 사업자 잠금이 실행되어 있습니다. 제어키를 입력하세요" @@ -97,15 +79,45 @@ msgstr "서비스 사업자 잠금이 실행되어 있습니다. 제어키를 msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM 카드를 사용할 수 없습니다. 서비스 사업자에게 문의하세요" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "SIM 카드 언어를 읽을 수 없습니다" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "비밀번호가 바르지 않습니다" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "다이얼" +msgstr "키패드" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "언어 선택" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM 확인 중..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "환영합니다!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "언어 선택" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "긴급전화" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "설정하려면 누르세요" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "종료" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "디바이스가 설정되어 사용할 준비가 되었습니다" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "설정되었습니다" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "디바이스를 끄고, 배터리를 제거하고, 금색 접촉면이 아래를 향하도록 SIM 카드를 조심스럽게 삽입합니다. 잘린 모서리는 배터리에서 멀리 위치해야 합니다\n지금 건너뛰면 나중에 반드시 SIM 카드를 삽입하십시오. 대부분의 디바이스 기능은 SIM 카드를 삽입해야 작동합니다" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "다시 시도" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "자동" + diff --git a/po/lt.po b/po/lt.po new file mode 100644 index 0000000..1c5889a --- /dev/null +++ b/po/lt.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Patvirtinti naują PIN kodą" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Nėra slaptažodžio" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Reikia nurodyti %d–%d skaitmenis" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Neteisingas PIN. Liko 1 bandymas" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Neteisingas PIN. Liko %d bandymų" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Naujas PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN kodas" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK kodas" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN kodas užblokuotas" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN kodas atblokuotas" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Tinklo užraktas perduotas" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN užraktas" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK blokavimas" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM užblokuota" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM užrakinimas" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Liko 1 bandymas" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ä®jungtas įmonės personalizavimas. Ä®veskite valdymo raktą" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Ä®vesti naują PIN kodą" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Ä®vesti PIN kodą" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Ä®vesti PUK kodą" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Netinkamas PIN kodas" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Neteisingas PIN kodas.\nBandykite dar kartą" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ä®jungtas tinklo personalizavimas. Ä®veskite valdymo raktą" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ä®jungtas tinklo potinklio personalizavimas. Ä®veskite valdymo raktą" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d likę bandymai" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ä®jungtas paslaugų teikėjo personalizavimas. Ä®veskite valdymo raktą" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM kortelė nepasiekiama. Kreipkitės į paslaugų teikėją" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Neteisingas slaptažodis" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Rinkimas" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Ekrano kalba" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM kortelė tikrinama..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Sveiki!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Pasirinkti kalbą" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Pagalbos skambučiai" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Bakstelėkite ir nustatykite" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Baigti" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Ä®renginys nustatytas ir parengtas naudoti" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Sąranka baigta" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "IÅ¡junkite įrenginį, iÅ¡imkite akumuliatorių ir atsargiai įdėkite SIM kortelę, jos auksinius kontaktus nukreipę žemyn. Kirstas kampas turėtų bÅ«ti toliausiai nuo akumuliatoriaus\nJei norite praleisti dabar, nepamirÅ¡kite įdėti SIM kortelės vėliau. Kol taip nepadarysite, dauguma įrenginio funkcijų neveiks" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Bandyti vėl" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatinis" + diff --git a/po/lv.po b/po/lv.po new file mode 100644 index 0000000..d85b92f --- /dev/null +++ b/po/lv.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Apstiprināt jauno PIN kodu" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Paroles lauks ir tukÅ¡s" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Ir nepiecieÅ¡ami vismaz %d lÄ«dz %d cipari" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Nepareizs PIN kods. Atlicis 1 mēģinājums" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Nepareizs PIN kods. AtlikuÅ¡i %d mēģinājumi" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Jauns PIN kods" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN kods bloķēts" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN atbloķēts" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Notikusi tÄ«kla bloķēšana" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN bloķēšana" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK koda bloķēšana" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM bloķēta" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM bloķēšana" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Atlicis 1 mēģinājums" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ieslēgta korporatÄ«vā personalizēšana. Ievadiet vadÄ«bas atslēgu" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Ievadiet jauno PIN kodu" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Ievadiet PIN kodu" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Ievadiet PUK kodu" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Nepareizs PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Nepareizs PIN.\nLÅ«dzu, mēģiniet vēlreiz" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ieslēgta tÄ«kla personalizēšana. Ievadiet vadÄ«bas atslēgu" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ieslēgta tÄ«kla apakÅ¡kopas personalizēšana. Ievadiet vadÄ«bas atslēgu" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "AtlikuÅ¡i %d mēģinājumi" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Ieslēgta pakalpojumu sniedzēja personalizēšana. Ievadiet vadÄ«bas atslēgu" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM karte nav pieejama. Sazinieties ar pakalpojumu sniedzēju" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Nepareiza parole" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Num.sast." + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Displeja valoda" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Pārbauda SIM karti..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Sveiki!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Izvēlieties valodu" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Ārkārtas zvans" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Pieskarieties, lai iestatÄ«tu" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Beigt" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "IerÄ«ce ir iestatÄ«ta un gatava lietoÅ¡anai" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "IestatÄ«Å¡ana pabeigta" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Izslēdziet ierÄ«ci, izņemiet akumulatoru un uzmanÄ«gi ievietojiet SIM karti tā, lai zeltÄ«tie kontakti ir vērsti uz leju. Nogrieztajam stÅ«rim jāatrodas vistālāk no akumulatora\nJa paÅ¡laik vēlaties izlaist Å¡o darbÄ«bu, neaizmirstiet ievietot SIM karti vēlāk. LÄ«dz tam brÄ«dim lielākā daļa ierÄ«ces funkciju nedarbosies" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Mēģin. vēlr." + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automātiski" + diff --git a/po/ms.po b/po/ms.po new file mode 100644 index 0000000..b66b7c4 --- /dev/null +++ b/po/ms.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Pastikan PIN baru" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Kata laluan kosong" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d hingga %d angka diperlukan" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN salah. Tinggal 1 percubaan" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN salah. Tinggal %d percubaan" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN baru" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN disekat" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN dinyah sekat" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Kunci rangkaian" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Kunci PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Kunci PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM disekat" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Kunci SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Tinggal 1 percubaan" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Pemperibadian korporat dihidupkan. Masukkan kunci kawalan" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Masukkan PIN baru" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Masukkan PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Masukkan PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN salah" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "PIN salah.\nCuba lagi" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Pemperibadian rangkaian dihidupkan. Masukkan kunci kawalan" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Pemperibadian subset rangkaian dihidupkan. Masukkan kunci kawalan" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d percubaan lagi" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Pemperibadian pembekal perkhidmatan dihidupkan. Masukkan kunci kawalan" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Kad SIM tidak tersedia. Hubungi pembekal perkhidmatan anda" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Kata laluan salah" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Pendail" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Bahasa paparan" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Semak kad SIM…" + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Selamat datang!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Pilih bahasa" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Panggilan kecemasan" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tekan untuk menyediakan" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Selesai" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Peranti telah disediakan dan siap untuk digunakan" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Persediaan selesai" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Matikan peranti anda, alih keluar bateri, dan masukkan kad SIM anda dengan berhati-hati dengan sesentuh emas di sebelah bawah. Penjuru terpotong hendaklah berada paling jauh dari bateri\nJika anda lebih suka untuk melangkauinya sekarang, pastikan kad SIM anda dimasukkan kemudian. Sebelum itu, kebanyakan ciri peranti anda tidak akan berfungsi" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Cuba lagi" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatik" + diff --git a/po/nl_NL.po b/po/nl_NL.po old mode 100755 new mode 100644 index 7c04e4c..d1b200b --- a/po/nl_NL.po +++ b/po/nl_NL.po @@ -1,5 +1,5 @@ msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" -msgstr "Bevestig nieuwe PIN" +msgstr "Nieuwe PIN bevestigen" msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" msgstr "Wachtwoord leeg" @@ -28,18 +28,9 @@ msgstr "PIN geblokkeerd" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN gedeblokkeerd" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Annuleer" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automatisch" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Netwerkblokkering" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Telefoonblokkering" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN-blokkering" @@ -59,13 +50,13 @@ msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Bedrijfsaanpassing ingeschakeld. Druk op Ctrl" msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" -msgstr "Geef nieuwe PIN in" +msgstr "Nieuwe PIN invoeren" msgid "IDS_IDLE_BODY_ENTER_PIN" -msgstr "Geef PIN in" +msgstr "PIN invoeren" msgid "IDS_IDLE_BODY_ENTER_PUK" -msgstr "Geef PUK-code in" +msgstr "PUK invoeren" msgid "IDS_IDLE_BODY_INCORRECT_PIN" msgstr "Onjuiste PIN" @@ -73,21 +64,12 @@ msgstr "Onjuiste PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN onjuist.\nProbeer het opnieuw" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Onjuiste PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Taal niet ondersteund" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Netwerkaanpassing ingeschakeld. Druk op Ctrl" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Aanpassing netwerksubset ingeschakeld. Druk op Ctrl" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Wachtwoord moet uit 4 cijfers bestaan" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d pogingen over" @@ -97,15 +79,45 @@ msgstr "Aanpassing serviceprovider ingeschakeld. Druk op Ctrl" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM-kaart niet beschikbaar. Neem contact op met de serviceprovider" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Kan taal van SIM-kaart niet lezen" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" -msgstr "Wachtwoord onjuist" +msgstr "Onjuist wachtwoord" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "Kiezer" +msgstr "Toetsen" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Display taal" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM-kaart controleren..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Welkom!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Taal selecteren" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Noodoproep" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tik om in te stellen" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Voltooien" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Apparaat is ingesteld en klaar voor gebruik" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Instellen voltooid" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Schakel het apparaat uit, verwijder de batterij en plaats de SIM-kaart voorzichtig terug met de gouden contactzijde naar beneden. De afgesneden hoek moet het verste van de batterij af zitten\nAls u dit nu wilt overslaan, moet u de SIM-kaart later plaatsen. Anders zullen de meeste functies van het apparaat niet werken" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Opnieuw" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatisch" + diff --git a/po/no.po b/po/no.po new file mode 100644 index 0000000..2b5f852 --- /dev/null +++ b/po/no.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Bekreft ny PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Passord er tomt" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d til %d tall nødvendig" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Feil PIN-kode. 1 forsøk gjenstÃ¥r" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Feil PIN-kode. %d forsøk igjen" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Ny PIN-kode" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN blokkert" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN ikke blokkert" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "NettverkslÃ¥s" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN-lÃ¥s" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK-lÃ¥s" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM-kort lÃ¥st" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "SIM-lÃ¥s" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 forsøk gjenstÃ¥r" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Firmapersonalisering pÃ¥. Angi kontrollnøkkel" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Angi ny PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Angi PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Angi PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Ugyldig PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Feil PIN.\nPrøv pÃ¥ nytt" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Nettverkspersonalisering pÃ¥. Angi kontrollnøkkel" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Nettverksdelsettpersonalisering pÃ¥. Angi kontrollnøkkel" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d forsøk igjen" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Tjenesteleverandørpersonalisering pÃ¥. Angi kontrollnøkkel" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM-kort ikke tilgjengelig. Kontakt din tjenesteleverandør" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Feil passord" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Tastatur" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "SkjermsprÃ¥k" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Kontrollerer SIM-kort..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Velkommen!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Velg sprÃ¥k" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Nødanrop" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Trykk for Ã¥ konfigurere" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Fullfør" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Enheten er konfigurert og klar til bruk" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Konfigurering fullført" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Skru av enheten, fjern batteriet og sett SIM-kortet forsiktig inn med gullkontaktsiden ned. Det avskÃ¥rne hjørnet skal være lengst unna batteriet\nHvis du foretrekker Ã¥ hoppe over dette nÃ¥, mÃ¥ du passe pÃ¥ Ã¥ sette inn SIM-kortet senere. Frem til du har gjort det, vil de fleste av enhetens funksjoner ikke fungere" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Prøv pÃ¥ nytt" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatisk" + diff --git a/po/pl.po b/po/pl.po new file mode 100644 index 0000000..7482c3b --- /dev/null +++ b/po/pl.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Potwierdź nowy PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Hasło puste" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Wymagana liczba cyfr: od %d do %d" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Zły kod PIN. Pozostała 1 próba" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Zły kod PIN. Pozostało prób: %d" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Nowy kod PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN zablokowany" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN odblokowany" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Blokada sieci" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Blokada PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Blokada PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "Karta SIM zablokowana" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Blokada SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Pozostała 1 próba" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacja firmowa włączona. Wprowadź klucz kontroli" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Wpisz nowy PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Wpisz PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Wpisz PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Nieprawidłowy PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Nieprawidłowy kod PIN.\nSpróbuj ponownie" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacja sieci włączona. Wprowadź klucz kontroli" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacja grupy sieci włączona. Wprowadź klucz kontroli" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Pozostało prób: %d" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacja dostawcy usług włączona. Wprowadź klucz kontroli" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Karta SIM niedostępna. Skontaktuj się z dostawcą usługi" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Błędne hasło" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Ekran wybierania" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Język wyświetlania" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Sprawdzanie karty SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Witamy!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Wybierz język" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Połączenie alarmowe" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Dotknij, aby skonfigurować" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Zakończ" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Urządzenie jest skonfigurowane i gotowe do użytku" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Konfiguracja ukończona" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Wyłącz urządzenie, wyjmij baterię i ostrożnie włóż kartę SIM złotym stykiem skierowanym w dół. Wycięty róg powinien znaleźć się najdalej od baterii\nJeśli chcesz teraz zrezygnować, włóż kartę SIM później. Dopóki tego nie robisz, większość funkcji urządzenia nie będzie działać." + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Ponów próbę" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatyczny" + diff --git a/po/pt_PT.po b/po/pt_PT.po old mode 100755 new mode 100644 index 128cd4a..fdea5f8 --- a/po/pt_PT.po +++ b/po/pt_PT.po @@ -28,18 +28,9 @@ msgstr "PIN bloqueado" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN desbloqueado" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Cancelar" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Automático" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Bloqueio de rede efectuado" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Bloqueio do telefone" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "Protecção por PIN" @@ -73,21 +64,12 @@ msgstr "PIN incorrecto" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN incorrecto.\nTente novamente" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK incorrecto" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Idioma não suportado" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalização de rede activada. Prima a tecla de controlo" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Personalização de subconjunto de rede activada. Prima a tecla de controlo" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "A palavra-passe deve ter 4 dígitos" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d tentativas restantes" @@ -97,9 +79,6 @@ msgstr "Personalização do fornecedor de serviços activada. Prima a tecla de c msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "Cartão SIM indisponível. Contacte o fornecedor de serviços" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Impossível ler idioma do cartão SIM" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Palavra-passe incorrecta" @@ -109,3 +88,36 @@ msgstr "Marcador" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Idioma de apresentação" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "A verificar cartão SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Bem-vindo!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Seleccionar idioma" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Chamada de emergência" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Toque para configurar" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Concluir" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "O dispositivo está configurado e pronto para ser utilizado" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configuração concluída" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Desligue o seu dispositivo, retire a bateria e introduza com cuidado o seu cartão SIM com o contacto dourado virado para baixo. O canto cortado deve ficar para o lado mais afastado da bateria\nSe preferir ignorar agora, não se esqueça de introduzir o seu cartão SIM mais tarde. Até que o faça, a maioria das funções do seu dispositivo não funcionam" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Tente novam." + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automático" + diff --git a/po/pwlock.pot b/po/pwlock.pot deleted file mode 100755 index 2d9c7e9..0000000 --- a/po/pwlock.pot +++ /dev/null @@ -1,143 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-10-19 19:56+0900\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: pwlock.c:81 -msgid "Enter password" -msgstr "" - -#: pwlock.c:82 -msgid "Enter PIN" -msgstr "" - -#: pwlock.c:83 -msgid "Enter New PIN" -msgstr "" - -#: pwlock.c:84 -msgid "Retype PIN" -msgstr "" - -#: pwlock.c:85 -msgid "Enter PUK" -msgstr "" - -#: pwlock.c:86 -msgid "Incorrect PIN" -msgstr "" - -#: pwlock.c:87 -msgid "Incorrect PUK" -msgstr "" - -#: pwlock.c:88 -#, c-format -msgid "%d attempt(s) left" -msgstr "" - -#: pwlock.c:89 -msgid "Done" -msgstr "" - -#: pwlock.c:90 -msgid "Dialer" -msgstr "" - -#: pwlock.c:91 -msgid "Wrong password" -msgstr "" - -#: pwlock.c:92 -msgid "PIN code not matched" -msgstr "" - -#: pwlock.c:93 -msgid "Display language" -msgstr "" - -#: pwlock.c:94 -msgid "Set" -msgstr "" - -#: pwlock.c:95 -msgid "Cancel" -msgstr "" - -#: pwlock.c:96 -msgid "Get SIM language failed" -msgstr "" - -#: pwlock.c:97 -#, c-format -msgid "Unsupported language: %s" -msgstr "" - -#: pwlock.c:98 -msgid "SIM unavailable. Please contact your service provider." -msgstr "" - -#: pwlock.c:99 -msgid "Enter SIM password" -msgstr "" - -#: pwlock.c:100 -msgid "Network Personalisation is on. Please enter the control key" -msgstr "" - -#: pwlock.c:101 -msgid "Network Subset Personalisation is on. Please enter the control key" -msgstr "" - -#: pwlock.c:102 -msgid "Service Provider Personalisation is on. Please enter the control key" -msgstr "" - -#: pwlock.c:103 -msgid "Coporate Personalisation is on. Please enter the control key" -msgstr "" - -#: pwlock.c:104 -msgid "Password must be 4 digits long" -msgstr "" - -#: ui.c:46 -msgid "Phone lock" -msgstr "" - -#: ui.c:47 -msgid "PIN lock" -msgstr "" - -#: ui.c:48 ui.c:49 ui.c:50 -msgid "PUK lock" -msgstr "" - -#: ui.c:51 -msgid "Phone blocked" -msgstr "" - -#: ui.c:52 -msgid "SIM lock" -msgstr "" - -#: ui.c:53 ui.c:54 ui.c:55 ui.c:56 -msgid "Network lock" -msgstr "" - -#: langs.c:20 -msgid "Automatic" -msgstr "" diff --git a/po/ro.po b/po/ro.po new file mode 100644 index 0000000..027e289 --- /dev/null +++ b/po/ro.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Confirmare PIN nou" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Parola lipseşte" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Sunt necesare între %d şi %d cifre" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN1 incorect. 1 încercare rămasă" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN incorect. %d încercări rămase" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN nou" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "Cod PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "Cod PIN blocat" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN deblocat" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Blocare reÅ£ea reuşită" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Blocare cod PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Blocare PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "Cartelă SIM blocată" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Blocare SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 încercare rămasă" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizarea pentru firmă a fost activată. ApăsaÅ£i tasta Control" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "IntroduceÅ£i PIN nou" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "IntroduceÅ£i PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "IntroduceÅ£i PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN incorect" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Cod PIN incorect.\nReîncercaÅ£i" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizarea pentru reÅ£ea a fost activată. ApăsaÅ£i tasta Control" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizarea pentru subsetul de reÅ£ea a fost activată. ApăsaÅ£i tasta Control" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d încercări rămase" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizarea furnizorului de servicii a fost activată. ApăsaÅ£i tasta Control" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Cartelă SIM indisponibilă. ContactaÅ£i furnizorul de servicii" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Parolă incorectă" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Apelare" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Limbă de afişare" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Se verifică cartela SIM..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Bun venit!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Selectare limbă" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Apel de urgenţă" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "AtingeÅ£i pentru a configura" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Terminare" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Dispozitivul este configurat şi pregătit de utilizare" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Configurare finalizată" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "OpriÅ£i dispozitivul, scoateÅ£i bateria şi introduceÅ£i cu atenÅ£ie cartela SIM cu partea cu contactele aurii orientată în jos. ColÅ£ul decupat trebuie să ajungă în poziÅ£ia cea mai îndepărtată de baterie\nDacă preferaÅ£i să omiteÅ£i acum acest pas, introduceÅ£i cartela SIM ulterior. Până atunci, majoritatea caracteristicilor dispozitivului vor fi nefuncÅ£ionale" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Reîncercare" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automat" + diff --git a/po/ru_RU.po b/po/ru_RU.po old mode 100755 new mode 100644 index 625326c..f3661d9 --- a/po/ru_RU.po +++ b/po/ru_RU.po @@ -20,37 +20,28 @@ msgid "IDS_IDLE_BODY_PIN" msgstr "PIN" msgid "IDS_IDLE_BODY_PUK" -msgstr "PUK" +msgstr "PUK-код" msgid "IDS_IDLE_POP_PIN_BLOCKED" -msgstr "PIN заблокирован" +msgstr "PIN-код заблокирован" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN разблокирован" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Отмена" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Автоматически" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Блокировка сети" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Блокировка телефона" - msgid "IDS_IDLE_HEADER_PIN_LOCK" -msgstr "Проверка PIN" +msgstr "Блокировка PIN-кода" msgid "IDS_IDLE_HEADER_PUK_LOCK" -msgstr "Блокировка PUK" +msgstr "Блокировка PUK-кода" msgid "IDS_IDLE_HEADER_SIM_BLOCKED" msgstr "SIM-карта заблокирована" msgid "IDS_IDLE_HEADER_SIM_LOCK" -msgstr "Блокировка SIM" +msgstr "Блокировка SIM-карты" msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" msgstr "Осталась 1 попытка" @@ -73,21 +64,12 @@ msgstr "Неверный PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Неправильный PIN.\nПовторите попытку" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Неправильный PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Язык не поддерживается" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Включена личная настройка сети. Введите контрольный ключ" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Включена личная настройка подсети. Введите контрольный ключ" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Пароль должен состоять из 4 цифр" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "Осталось попыток: %d" @@ -97,9 +79,6 @@ msgstr "Включена личная настройка поставщика у msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM-карта недоступна. Обратитесь к поставщику услуг" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "Не удалось прочитать язык SIM-карты" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Неправильный пароль" @@ -109,3 +88,36 @@ msgstr "Набор" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Язык" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Проверка SIM-карты..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Добро пожаловать!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Выберите язык" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Экстренный вызов" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Нажмите для настройки" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Готово" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Устройство настроено и готово к использованию" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Настройка завершена" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Отключите устройство, извлеките батарею и аккуратно вставьте SIM-карту так, чтобы золотистые контакты были направлены вниз. Скошенный угол должен находиться дальше всего от батареи\nЕсли вы пропустите это действие сейчас, обязательно вставьте SIM-карту позже. Если не сделать этого, большинство возможностей устройства не будут работать" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Повторить" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Автоматически" + diff --git a/po/sk.po b/po/sk.po new file mode 100644 index 0000000..294608c --- /dev/null +++ b/po/sk.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "PotvrdiÅ¥ nový PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Heslo je prázdne" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Vyžadované číslice: %d až %d" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Nesprávny PIN. Zostáva 1 pokus" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Nesprávny PIN. Zostávajúce pokusy: %d" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Nový PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN zablokovaný" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN odblokované" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Zámok siete overený" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Zámok PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Zámka PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM je blokovaná" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Zámok SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Zostáva 1 pokus" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Firemné prispôsobenie je zapnuté. Zadajte ovládacie tlačidlo" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Zadajte nový PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "ZadaÅ¥ PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Zadajte PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Nesprávny PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Neplatný PIN.\nSkúste to znova" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prispôsobenie siete je zapnuté. Zadajte ovládacie tlačidlo" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prispôsobenie podsiete je zapnuté. Zadajte ovládacie tlačidlo" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Počet zostávajúcich pokusov: %d" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prispôsobenie poskytovateľa služby je zapnuté. Zadajte ovládacie tlačidlo" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Karta SIM nie je k dispozícii. Kontaktujte poskytovateľa služby" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Nesprávne heslo" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Vytáčanie" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Jazyk zobrazenia" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Kontrola SIM karty..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Vitajte!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "VybraÅ¥ jazyk" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Tiesňový hovor" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Ťuknutím nainÅ¡talujte" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "DokončiÅ¥" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Zariadenie je nastavené a pripravené na použitie" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "InÅ¡talácia je dokončená" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Vypnite zariadenie, vyberte batériu a správne vložte kartu SIM so zlatou kontaktnou stranou smerom nadol. Zrezaný roh musí byÅ¥ ďalej od batérie\nAk to teraz nechcete urobiÅ¥, nezabudnite neskôr vložiÅ¥ kartu SIM. Kým to neurobíte, väčšina funkcií zariadenia nebude fungovaÅ¥" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Skúste znova" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automaticky" + diff --git a/po/sl.po b/po/sl.po new file mode 100644 index 0000000..cb640eb --- /dev/null +++ b/po/sl.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Potrdite novi PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Geslo je prazno" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Znaki od %d do %d zahtevani" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Napačna koda PIN. Å e 1 poskus" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Napačna koda PIN. Å e %d poskusov" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Nova koda PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN je blokiran" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN sproščen" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Zapore omrežja" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Zaklepanje PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Zaklep kode PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "Kartica SIM je blokirana" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Zaklepanje SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Preostal je Å¡e 1 poskus" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Skupno prilagajanje je vključeno. Vnesite nadzorno tipko" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Vnesite novi PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Vnesite PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Vnesite PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Napačna koda PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Napačna koda PIN.\nPoskusite znova" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prilagajanje omrežja je vključeno. Vnesite nadzorno tipko" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prilagajanje podomrežja je vključeno. Vnesite nadzorno tipko" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d preostalih poizkusov" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Prilagajanje ponudnika storitev je vključeno. Vnesite nadzorno tipko" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Kartica SIM ni na voljo. Obrnite se na ponudnika storitev" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Napačno geslo" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Izbiranje" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Jezik prikaza" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Preverjam kartico SIM ..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Pozdravljeni!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Izberite jezik" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Klic v sili" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Pritisnite za nastavitev" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Konec" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Naprava je nastavljena in pripravljena za uporabo" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Namestitev je končana" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Izklopite napravo, odstranite baterijo in previdno vstavite kartico SIM z zlatim stikom navzdol. Odrezani vogal mora biti najbolj odstranjen od baterije\nČe želite to trenutno preskočiti, morate kartico SIM vnesti pozneje. Dokler je ne vstavite, večina funkcij naprave ne bo delovala" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Posk. znova" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Samodejno" + diff --git a/po/sr.po b/po/sr.po new file mode 100644 index 0000000..ed2f112 --- /dev/null +++ b/po/sr.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Potvrdi novi PIN kod" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Nema lozinke" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Potrebno %d do %d cifara" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Neispravan PIN kod. 1 pokuÅ¡aj preostao" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Neispravan PIN. %d pokuÅ¡aja ostalo" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Novi PIN kod" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN kod" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK kod" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN kod blokiran" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN kod deblokiran" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Zaključavanje mreže uspeÅ¡no" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN zaključan" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK zaključan" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM kartica blokirana" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Zaključavanje SIM-a" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 pokuÅ¡aj preostao" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacija kompanije uključena. Unesi kontrolni ključ" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Unesi novi PIN kod" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Unesi PIN kod" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Unesi PUK kod" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Neispravan PIN kod" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Neispravan PIN.\nProbaj ponovo" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacija mreže uključena. Unesi kontrolni ključ" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacija podskupa mreže uključena. Unesi kontrolni ključ" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d pokuÅ¡aja ostalo" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Personalizacija provajdera uključena. Unesi kontrolni ključ" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Nema SIM kartice. Kontaktiraj provajdera" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "PogreÅ¡na Å¡ifra" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Brojčanik" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Jezik prikaza" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Provera SIM kartice..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "DobrodoÅ¡li!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Izaberi jezik" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Pozivi u hitnim slučajevima" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Kucni za konfigurisanje" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "ZavrÅ¡i" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Uređaj je konfigurisan i spreman za korišćenje" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "PodeÅ¡avanje zavrÅ¡eno" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Isključi uređaj, ukloni bateriju i pažljivo ubaci SIM karticu sa zlatnom stranom kontakta okrenutom nadole. Izrezani ugao bi trebalo da bude Å¡to dalje od baterije\nAko sada želiÅ¡ da preskočiÅ¡ ovaj korak, obavezno ubaci SIM karticu kasnije. Dok to ne učiniÅ¡, većina funkcija u uređaju neće raditi" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Probaj opet" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatski" + diff --git a/po/sv.po b/po/sv.po new file mode 100644 index 0000000..d855773 --- /dev/null +++ b/po/sv.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Bekräfta ny PIN-kod" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Lösenordet är tomt" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "%d till %d siffror krävs" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Felaktig PIN-kod. Du har 1 försök kvar" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Fel PIN-kod. %d försök kvar" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Ny PIN-kod" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN lÃ¥st" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN upplÃ¥st" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "NätverkslÃ¥s" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "PIN-lÃ¥s" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "PUK-lÃ¥s" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM har blockerats" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Personligt SIM-lÃ¥s" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "1 försök kvar" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Företagsanpassning pÃ¥. Ange kontrollnyckel" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Ange ny PIN-kod" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Ange PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Ange PUK-kod" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Fel PIN-kod" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Fel PIN.\nFörsök igen" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Nätverksanpassning pÃ¥. Ange kontrollnyckel" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Anpassning av nätverksdeluppsättning pÃ¥. Ange kontrollnyckel" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d försök kvar" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Anpassning av tjänsteleverantör pÃ¥. Ange kontrollnyckel" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM-kort ej tillgängligt. Kontakta tjänsteleverantören" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Fel lösenord" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Knappsats" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "VisningssprÃ¥k" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Kontrollerar SIM-kortet..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Välkommen!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Välj sprÃ¥k" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Nödsamtal" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Tryck för att konfigurera" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Avsluta" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Enheten är inställd och klar att användas" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Konfigurationen har slutförts" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Stäng av enheten, ta ut batteriet och sätt försiktigt i SIM-kortet med den guldfärgade kontakten nedÃ¥t. Det avklippta hörnet ska vara vänt bort frÃ¥n batteriet\nOm du väljer att hoppa över detta nu mÃ¥ste du se till att sätta i SIM-kortet senare. De flesta av funktionerna pÃ¥ enheten fungerar först när SIM-kortet är isatt" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Försök igen" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Automatisk" + diff --git a/po/th.po b/po/th.po new file mode 100644 index 0000000..84f569c --- /dev/null +++ b/po/th.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "ยืน​ยัน PIN ​ใหม่" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "ไม่​มี​รหัส​ผ่าน" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "จำ​เป็น​ต้อง​มี %d ​ถึง %d ​หลัก" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN ​ผิด เหลือ​อีก 1 ​ครั้ง" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN ​ผิด เหลือ​อีก %d ​ครั้ง" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN ​ใหม่" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN ​ถูก​บล็อก" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "ปลดบล็อก PIN ​แล้ว" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "การ​ล็อก​เครือ​ข่าย" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "ล็อก PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "ล็อก PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM ​ถูก​ห้าม​ใช้" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "ล็อก SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "เหลือ​อีก 1 ​ครั้ง" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "เปิด​การ​ใช้​งาน​ส่วน​ตัว​ของ​บริษัท ใส่​ปุ่ม​ควบ​คุม" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "ใส่ PIN ​ใหม่" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "ใส่ PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "ใส่ PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN ​ผิด" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "PIN ​ผิด\n​ลอง​อีก​ครั้ง" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "เปิด​การ​ใช้​งาน​ส่วน​ตัว​ของ​เครือ​ข่าย ใส่​ปุ่ม​ควบ​คุม" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "เปิด​การ​ใช้​งาน​ส่วน​ตัว​ของ​เครือ​ข่าย​ย่อย ใส่​ปุ่ม​ควบ​คุม" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "เหลือ %d ​ครั้ง" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "เปิด​การ​ใช้​งาน​ส่วน​ตัว​ของ​ผู้​ให้​บริการ ใส่​ปุ่ม​ควบ​คุม" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM ​การ์ด​ใช้​งาน​ไม่​ได้ ติดต่อ​ผู้​ให้​บริการ​ของ​คุณ" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "รหัสผ่านผิด" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "ผู้​โทรออก" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "ภาษา​ที่​แสดง" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "ตรวจ​สอบ SIM ​การ์ด..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "ยินดีต้อนรับ!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "เลือก​ภาษา" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "โทร​ฉุก​เฉิน" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "สัมผัส​เพื่อ​ตั้ง​ค่า" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "เสร็จ" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "อุปกรณ์ถูกตั้งค่าและพร้อมใช้แล้ว" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "การ​ตั้ง​ค่า​เสร็จ​สมบูรณ์" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "ปิดอุปกรณ์ ถอดแบตเตอรี่ออก ค่อยๆ ใส่ SIM การ์ดโดยให้หน้าสัมผัสสีทองคว่ำลง มุมที่ถูกตัดออกควรอยู่ไกลจากแบตเตอรี่มากสุด\nถ้าคุณต้องการข้ามไปในขณะนี้ โปรดอย่าลืมใส่ SIM การ์ดในภายหลัง คุณสมบัติส่วนใหญ่ของเครื่องจะไม่ทำงาน จนกว่าคุณจะใส่ SIM การ์ด" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "ลอง​อีก​ครั้ง" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "อัตโนมัติ" + diff --git a/po/tr_TR.po b/po/tr_TR.po old mode 100755 new mode 100644 index 6751e5f..7ca2581 --- a/po/tr_TR.po +++ b/po/tr_TR.po @@ -28,18 +28,9 @@ msgstr "PIN bloke edildi" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN kilidi kaldırıldı" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "Ä°ptal" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "Otomatik" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "Şebeke kilidi" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "Telefon kilidi" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN kilidi" @@ -73,21 +64,12 @@ msgstr "Yanlış PIN" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "Hatalı PIN.\nLütfen tekrar deneyin" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "Yanlış PUK" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "Dil desteklenmiyor" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Ağ kişiselleştirme açık. Kontrol kodunu girin" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "Ağ altkümesi kişiselleştirme açık. Kontrol kodunu girin" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "Şifre 4 basamaklı olmalıdır" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "%d deneme kaldı" @@ -97,15 +79,45 @@ msgstr "Servis sağlayıcı kişiselleştirme açık. Kontrol kodunu girin" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM kartı kullanılamıyor. Servis sağlayıcınıza başvurun" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "SIM kartı dili okunamıyor" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "Yanlış şifre" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "Arayıcı" +msgstr "Tuşlar" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "Ekran dili" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "SIM kart kontrol ediliyor..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Hoş Geldiniz!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Dil seç" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Acil arama" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Ayarlamak için dokunun" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Son" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Cihaz kuruldu ve kullanıma hazır" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Kurulum tamamlandı" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Cihazınızı kapatın, pili çıkartın ve dikkatli bir şekilde altın rengi temas noktası aşağı bakacak şekilde SIM kartınızı yerleştirin. Kesik kenarı pilden en uzak noktada olmalıdır\nBunu şimdi atlamayı tercih ederseniz SIM kartınızı daha sonra takmayı unutmayın. Bunu yapana kadar cihazınızın bir çok özelliği çalışmayacaktır" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Tekrar dene" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Otomatik" + diff --git a/po/uk.po b/po/uk.po new file mode 100644 index 0000000..9acf9f9 --- /dev/null +++ b/po/uk.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Підтвердити новий PIN" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Пароль пустий" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Потрібно від %d до %d цифр(и)" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "Хибний PIN. Залишилася 1 спроба" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "Хибний PIN. Залишилось %d спроб" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "Новий PIN" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN блоковано" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN розблоковано" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Мережа недосяжна" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Блокування PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Блокування PUK-коду" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "SIM-картку заблоковано" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Блокування SIM-картки" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Залишилась 1 спроба" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Корпоративна персоналізація ввімк. Введіть ключ керування" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Введіть новий PIN" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Введіть PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Введіть PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "Хибний PIN" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Неправильний PIN.\nСпробуйте ще раз, будь ласка" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Персоналізація мережі ввімк. Введіть ключ керування" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Часткова персоналізація мережі ввімк. Введіть ключ керування" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "%d спроб залишилось" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Персоналізація оператора зв’язку ввімк. Введіть ключ керування" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "SIM-картка недоступна. Зверніться до свого оператора зв’язку" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Хибний пароль" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Наб. ном." + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Мова дисплея" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Перевірка SIM-картки..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Ласкаво просимо!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Вибір мови" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Екстрений виклик" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Натисніть, щоб настроїти" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Завершити" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Пристрій налаштований і готовий до використання" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Настроювання завершено" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Вимкніть пристрій, видаліть акумулятор та обережно вставте SIM-картку стороною із золотим контактом донизу. Скошений кут має знаходитись якнайдалі від акумулятора\nЯкщо ви не бажаєте зробити це зараз, не забудьте вставити SIM-картку пізніше. Без SIM-картки більшість функцій пристрою не працюватиме" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Спроб.ще раз" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Автоматично" + diff --git a/po/update-po.sh b/po/update-po.sh deleted file mode 100755 index a0a91fb..0000000 --- a/po/update-po.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/sh - -PACKAGE=pwlock -SRCROOT=.. -POTFILES=POTFILES.in - -#ALL_LINGUAS= am az be ca cs da de el en_CA en_GB es et fi fr hr hu it ja ko lv mk ml ms nb ne nl pa pl pt pt_BR ru rw sk sl sr sr@Latn sv ta tr uk vi zh_CN zh_TW -ALL_LINGUAS="en_US en_GB ja ko zh_CN" - -XGETTEXT=/usr/bin/xgettext -MSGMERGE=/usr/bin/msgmerge - -echo -n "Make ${PACKAGE}.pot " -if [ ! -e $POTFILES ] ; then - echo "$POTFILES not found" - exit 1 -fi - -$XGETTEXT --default-domain=${PACKAGE} --directory=${SRCROOT} \ - --add-comments --keyword=_ --keyword=N_ --files-from=$POTFILES -if [ $? -ne 0 ]; then - echo "xgettext error" - exit 1 -fi - -if [ ! -f ${PACKAGE}.po ]; then - echo "No such file: ${PACKAGE}.po" - exit 1 -fi - -rm -f ${PACKAGE}.pot && mv ${PACKAGE}.po ${PACKAGE}.pot -echo "done" - -for LANG in $ALL_LINGUAS; do - echo "$LANG : " - - if [ ! -e $LANG.po ] ; then - sed 's/CHARSET/UTF-8/g' ${PACKAGE}.pot > ${LANG}.po - echo "${LANG}.po created" - else - if $MSGMERGE ${LANG}.po ${PACKAGE}.pot -o ${LANG}.new.po ; then - if cmp ${LANG}.po ${LANG}.new.po > /dev/null 2>&1; then - rm -f ${LANG}.new.po - else - if mv -f ${LANG}.new.po ${LANG}.po; then - echo "" - else - echo "msgmerge for $LANG.po failed: cannot move $LANG.new.po to $LANG.po" 1>&2 - rm -f ${LANG}.new.po - exit 1 - fi - fi - else - echo "msgmerge for $LANG failed!" - rm -f ${LANG}.new.po - fi - fi - echo "" -done - diff --git a/po/vi.po b/po/vi.po new file mode 100644 index 0000000..da05208 --- /dev/null +++ b/po/vi.po @@ -0,0 +1,123 @@ +msgid "IDS_IDLE_BODY_CONFIRM_NEW_PIN" +msgstr "Nhập lại mã PIN mới" + +msgid "IDS_IDLE_BODY_PASSWORD_EMPTY" +msgstr "Mật mã trống" + +msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" +msgstr "Cần %d đến %d số" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" +msgstr "PIN sai. Còn 1 lần thá»­" + +msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" +msgstr "PIN sai. Còn %d lần thá»­" + +msgid "IDS_IDLE_BODY_NEW_PIN" +msgstr "PIN mới" + +msgid "IDS_IDLE_BODY_PIN" +msgstr "PIN" + +msgid "IDS_IDLE_BODY_PUK" +msgstr "PUK" + +msgid "IDS_IDLE_POP_PIN_BLOCKED" +msgstr "PIN bị chặn" + +msgid "IDS_IDLE_POP_PIN_UNBLOCKED" +msgstr "PIN được bỏ chặn" + +msgid "IDS_IDLE_HEADER_NETWORK_LOCK" +msgstr "Khóa mạng" + +msgid "IDS_IDLE_HEADER_PIN_LOCK" +msgstr "Khóa mã PIN" + +msgid "IDS_IDLE_HEADER_PUK_LOCK" +msgstr "Khóa PUK" + +msgid "IDS_IDLE_HEADER_SIM_BLOCKED" +msgstr "Đã chặn SIM" + +msgid "IDS_IDLE_HEADER_SIM_LOCK" +msgstr "Khóa máy vào SIM" + +msgid "IDS_IDLE_BODY_1_ATTEMPT_LEFT" +msgstr "Còn 1 lần thá»­" + +msgid "IDS_IDLE_BODY_CORPORATE_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Cài đặt riêng của nhà cung cấp đang bật. Nhập mã điều khiển" + +msgid "IDS_IDLE_BODY_ENTER_NEW_PIN" +msgstr "Nhập mã PIN mới" + +msgid "IDS_IDLE_BODY_ENTER_PIN" +msgstr "Nhập số PIN" + +msgid "IDS_IDLE_BODY_ENTER_PUK" +msgstr "Nhập mã PUK" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN" +msgstr "PIN sai" + +msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" +msgstr "Mã PIN sai.\nThá»­ lại" + +msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Cài đặt riêng của mạng đang bật. Nhập mã điều khiển" + +msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Cài đặt riêng của mạng đang bật. Nhập mã điều khiển" + +msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" +msgstr "Còn lại %d lần" + +msgid "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY" +msgstr "Cài đặt riêng của nhà cung cấp dịch vụ đang bật. Nhập mã điều khiển" + +msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" +msgstr "Thẻ SIM không hoạt động. Liên hệ nhà cung cấp dịch vụ của bạn" + +msgid "IDS_IDLE_BODY_WRONG_PASSWORD" +msgstr "Sai mật mã" + +msgid "IDS_IDLE_BUTTON_DIALER" +msgstr "Bàn phím" + +msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" +msgstr "Ngôn ngữ hiển thị" + +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "Đang kiểm tra thẻ SIM.." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "Xin chào mừng!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "Chọn ngôn ngữ" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "Cuộc gọi khẩn cấp" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "Chạm để cài đặt" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "Hoàn tất" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "Đã cài đặt điện thoaÌ£i và sẵn sàng để sử duÌ£ng" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "Cài đặt hoàn tất" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "Hãy tắt thiết biÌ£ của baÌ£n, tháo pin và cẩn thận lắp thẻ SIM của baÌ£n vào, để mặt tiếp xúc màu vàng xuống dưới. Góc biÌ£ cắt nên ở hướng xa nhất so với pin\nNếu baÌ£n muốn bỏ qua bước này bây giờ, hãy đảm bảo là sẽ lắp thẻ SIM của mình vào sau. Cho đến khi baÌ£n thÆ°Ì£c hiện thao tác này, hầu hết các tính năng trong điện thoaÌ£i của baÌ£n sẽ không hoaÌ£t động" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "Thá»­ lại" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "Tá»± động" + diff --git a/po/zh_CN.po b/po/zh_CN.po old mode 100755 new mode 100644 index 7e48c58..4aaf778 --- a/po/zh_CN.po +++ b/po/zh_CN.po @@ -28,18 +28,9 @@ msgstr "PIN 码锁定" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN 码解锁" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "取消" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "自动" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "网络锁" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "手机锁" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN码锁" @@ -73,21 +64,12 @@ msgstr "错误的 PIN 码" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN 不正确。 请重试" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "错误的 PUK 码" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "不支持语言" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "网络个人化启动。请输入控制密钥" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "网络子集个人化启动。请输入控制密钥" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "密码必须是 4 位数" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "还有 %d 次机会" @@ -97,11 +79,8 @@ msgstr "服务提供商个人化启动。请输入控制密钥" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM卡不可用。请联系服务提供商" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "无法读取SIM卡语言" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" -msgstr "密码不符" +msgstr "密码错误" msgid "IDS_IDLE_BUTTON_DIALER" msgstr "拨号盘" @@ -109,3 +88,36 @@ msgstr "拨号盘" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "显示语言" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "检查 SIM 卡中..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "欢迎!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "选择语言" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "紧急呼叫" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "点击以设置" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "完成" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "设备已设置并准备使用" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "设置完成" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "关闭您的设备,移除电池,并小心将金属片侧朝下插入您的 SIM 卡。切口角应位于离电池最远处\n如果您想立即跳过,请务必稍后插入您的 SIM 卡。除非您插入 SIM 卡,否则您设备的大多数功能将无法使用" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "重试" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "自动" + diff --git a/po/zh_HK.po b/po/zh_HK.po old mode 100755 new mode 100644 index db989f0..971d900 --- a/po/zh_HK.po +++ b/po/zh_HK.po @@ -28,18 +28,9 @@ msgstr "PIN 碼已封鎖" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" msgstr "PIN 碼已解鎖" -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "取消" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "自動" - msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "網絡鎖" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "手機鎖" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN 碼鎖" @@ -73,21 +64,12 @@ msgstr "PIN 碼不正確" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN 碼不正確。請重試" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK 碼錯誤" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "語言不支援" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "網絡個人化已開。輸入控制密碼" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "網絡子集個人化已開。輸入控制密碼" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "密碼必須是 4 位數" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "剩餘 %d 次機會" @@ -97,15 +79,45 @@ msgstr "服務供應商個人化已開。輸入控制密碼" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM 卡不可用。請聯絡服務供應商" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "無法讀取 SIM 卡語言" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "密碼錯誤" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "撥出螢幕" +msgstr "撥號器" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "顯示語言" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "正在檢查 SIM 卡..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "歡迎!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "選擇語言" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "緊急通話" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "輕觸以設定" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "完成" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "裝置已設定且就緒" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "設定完成" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "關閉裝置、移除電池,然後小心地將金色面朝下插入 SIM 卡。截角處需置於離電池最遠的位置\n若您現在想跳過此步驟,之後請務必於插入 SIM 卡。直到完成前,裝置內多數功能皆無法使用" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "請重試" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "自動" + diff --git a/po/zh_TW.po b/po/zh_TW.po old mode 100755 new mode 100644 index d4a544a..b68d2ad --- a/po/zh_TW.po +++ b/po/zh_TW.po @@ -8,10 +8,10 @@ msgid "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED" msgstr "需要 %d 到 %d 位數" msgid "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT" -msgstr "PIN 不正確。還剩 1 次嘗試機會" +msgstr "PIN 不正確。還可嘗試一次" msgid "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT" -msgstr "PIN 不正確。剩餘 %d 次嘗試機會" +msgstr "PIN 不正確。還可嘗試 %d 次" msgid "IDS_IDLE_BODY_NEW_PIN" msgstr "新 PIN" @@ -26,20 +26,11 @@ msgid "IDS_IDLE_POP_PIN_BLOCKED" msgstr "PIN 已封鎖" msgid "IDS_IDLE_POP_PIN_UNBLOCKED" -msgstr "未封鎖 PIN" - -msgid "IDS_IDLE_BUTTON_CANCEL" -msgstr "取消" - -msgid "IDS_IDLE_BODY_AUTOMATIC" -msgstr "自動" +msgstr "已解除 PIN" msgid "IDS_IDLE_HEADER_NETWORK_LOCK" msgstr "網路鎖定" -msgid "IDS_IDLE_HEADER_PHONE_LOCK" -msgstr "手機鎖" - msgid "IDS_IDLE_HEADER_PIN_LOCK" msgstr "PIN 鎖" @@ -73,21 +64,12 @@ msgstr "PIN 不正確" msgid "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN" msgstr "PIN 不正確。請重試" -msgid "IDS_IDLE_BODY_INCORRECT_PUK" -msgstr "PUK 不正確" - -msgid "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED" -msgstr "不支持的語言" - msgid "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "開啟網路個性化,請輸入控制碼" msgid "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY" msgstr "開啟網路子遮照個性化,請輸入控制碼" -msgid "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG" -msgstr "密碼長度必須是 4 位數字" - msgid "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT" msgstr "剩餘 %d 次嘗試機會" @@ -97,15 +79,45 @@ msgstr "開啟系統服務商個性化,請輸入控制碼" msgid "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER" msgstr "SIM卡無法使用。請與您的系統服務商聯絡" -msgid "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE" -msgstr "無法讀取SIM卡語言" - msgid "IDS_IDLE_BODY_WRONG_PASSWORD" msgstr "密碼錯誤" msgid "IDS_IDLE_BUTTON_DIALER" -msgstr "撥號程式" +msgstr "撥號器" msgid "IDS_IDLE_HEADER_DISPLAY_LANGUAGE" msgstr "顯示語言" +msgid "IDS_IDLE_POP_CHECKING_SIM_CARD_ING" +msgstr "正在檢查 SIM 卡..." + +msgid "IDS_SCM_BODY_WELCOME_E" +msgstr "歡迎!" + +msgid "IDS_STU_BODY_SELECT_LANGUAGE" +msgstr "選擇語言" + +msgid "IDS_ST_SK_EMERGENCY_CALL" +msgstr "緊急電話" + +msgid "IDS_ST_BODY_TAP_TO_SET_UP" +msgstr "點擊以設定" + +msgid "IDS_ST_BODY_INSTALTAB_FINISH" +msgstr "結束" + +msgid "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE" +msgstr "裝置已設定且就緒" + +msgid "IDS_STU_POP_SETUP_COMPLETE" +msgstr "設定完成" + +msgid "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG" +msgstr "關閉裝置、移除電池,然後小心地將金色面朝下插入 SIM 卡。截角處需置於離電池最遠的位置\n若您現在想略過此步驟,之後請務必於插入 SIM 卡。直到完成前,裝置內多數功能皆無法使用" + +msgid "IDS_ST_BUTTON_TRY_AGAIN_ABB" +msgstr "請重試" + +msgid "IDS_IDLE_BODY_AUTOMATIC" +msgstr "自動" + diff --git a/res/CMakeLists.txt b/res/CMakeLists.txt new file mode 100755 index 0000000..47e1eec --- /dev/null +++ b/res/CMakeLists.txt @@ -0,0 +1,13 @@ +ADD_CUSTOM_TARGET(${PACKAGE}.edj + COMMAND edje_cc -id ${CMAKE_CURRENT_SOURCE_DIR}/images + ${CMAKE_CURRENT_SOURCE_DIR}/edje/pwlock.edc ${CMAKE_BINARY_DIR}/${PACKAGE}.edj + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/edje/pwlock.edc +) + +ADD_DEPENDENCIES(${PROJECT_NAME} ${PACKAGE}.edj) + +#Install EDJ file +INSTALL(FILES ${CMAKE_BINARY_DIR}/${PACKAGE}.edj DESTINATION ${EDJDIR}) + +#Install Image files +INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/images/ DESTINATION ${IMAGEDIR}) diff --git a/res/edje/pwlock-menu-greeting.edc b/res/edje/pwlock-menu-greeting.edc new file mode 100644 index 0000000..ba1efe0 --- /dev/null +++ b/res/edje/pwlock-menu-greeting.edc @@ -0,0 +1,304 @@ +images { + image: "A01-9_bg.png" COMP; +} + +group { + name: "pwlock-menu-lang"; + + parts { + + part { + name: "bg"; + type: IMAGE; + + description { + state: "default" 0.0; + image { + normal: "A01-9_bg.png"; + } + } + } + + part { + name: "padding-top"; + type: RECT; + scale: 1; + + description { + state: "default" 0.0; + color: 0 0 0 0; + align: 0.0 0.0; + min: 0 358; + fixed: 1.0 1.0; + + rel1 { + relative: 0.0 0.0; + to: "bg"; + } + rel2 { + relative: 1.0 0.0; + to: "bg"; + } + } + } + + part { + name: "text.greeting.1"; + type: TEXT; + mouse_events: 0; + scale: 1; + + description { + state: "default" 0.0; + min: 0 46; + align: 0.0 0.0; + fixed: 1.0 1.0; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "padding-top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "padding-top"; + } + text { + font: "SLP:style=Roman"; + text_class:"slp_roman"; + size: 44; + min: 0 0; + align: 0.5 0.5; + } + } + } + + part { + name: "text.greeting.2"; + type: TEXT; + mouse_events: 0; + scale: 1; + + description { + state: "default" 0.0; + min: 0 88; + align: 0.0 0.0; + fixed: 1.0 1.0; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "text.greeting.1"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "text.greeting.1"; + } + text { + font: "SLP:style=Medium"; + text_class:"slp_medium"; + size: 86; + min: 0 0; + align: 0.5 0.5; + } + } + } + + part { + name: "space.from.greeting"; + type: RECT; + scale: 1; + + description { + state: "default" 0.0; + color: 0 0 0 0; + align: 0.0 0.0; + min: 0 82; + fixed: 1.0 1.0; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "text.greeting.2"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "text.greeting.2"; + } + } + } + + part { + name: "text.help"; + type: TEXT; + scale: 1; + + description { + state: "default" 0.0; + min: 0 38; + align: 0.0 0.0; + fixed: 1 1; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "space.from.greeting"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "space.from.greeting"; + } + text { + font: "SLP:style=Roman"; + text_class:"slp_roman"; + size: 32; + min: 0 0; + align: 0.5 0.5; + } + } + } + + part { + name: "space.from.text.help"; + type: RECT; + scale: 1; + + description { + state: "default" 0.0; + color: 0 0 0 0; + align: 0.0 0.0; + min: 0 24; + fixed: 1.0 1.0; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "text.help"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "text.help"; + } + } + } + + part { + name: "space.select.lang.left"; + type: SWALLOW; + scale: 1; + + description { + state: "default" 0.0; + align: 0.0 0.0; + min: 16 74; + fixed: 1 1; + + rel1 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "space.from.text.help"; + } + rel2 { + relative: 0.0 1.0; + to_x: "bg"; + to_y: "space.from.text.help"; + } + } + } + + part { + name: "space.select.lang.right"; + type: SWALLOW; + scale: 1; + + description { + state: "default" 0.0; + align: 1.0 0.0; + min: 16 74; + fixed: 1 1; + + rel1 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "space.from.text.help"; + } + rel2 { + relative: 1.0 1.0; + to_x: "bg"; + to_y: "space.from.text.help"; + } + } + } + + part { + name: "button.select.lang"; + type: SWALLOW; + scale: 1; + + description { + state: "default" 0.0; + align: 0.0 0.0; + min: 0 74; + fixed: 1 1; + + rel1 { + relative: 1.0 0.0; + to: "space.select.lang.left"; + } + rel2 { + relative: 0.0 1.0; + to: "space.select.lang.right"; + } + } + } + } // ends of parts +} + +group { name: "pwlock-finish"; + parts { + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1 { relative: 0.0 0.0; } + rel2 { relative: 1.0 1.0; } + color: 249 249 249 255; + } + } + + part { name: "padding-top"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + align: 0.0 0.0; + min: 0 100; + fixed: 1.0 1.0; + + rel1 { relative: 0.0 0.0; to: "bg"; } + rel2 { relative: 1.0 0.0; to: "bg"; } + } + } + + part { name: "swl/label"; + type: SWALLOW; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 46; + align: 0.0 0.0; + fixed: 1.0 1.0; + + rel1 { relative: 0.0 1.0; to_x: "bg"; to_y: "padding-top"; } + rel2 { relative: 1.0 1.0; to_x: "bg"; to_y: "padding-top"; } + + } + } + } +} + diff --git a/res/edje/pwlock-popup-checkview.edc b/res/edje/pwlock-popup-checkview.edc new file mode 100644 index 0000000..78d4ec9 --- /dev/null +++ b/res/edje/pwlock-popup-checkview.edc @@ -0,0 +1,151 @@ +group { name: "popup_checkview"; + parts{ + part { name: "pad_t"; + scale : 1; + mouse_events: 0; + repeat_events: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 0 14; + fixed: 0 1; + rel1 { + relative: 1.0 0.0;to_x: "pad_l"; + } + rel2 { + relative: 0.0 0.0;to_x: "pad_r"; + } + } + } + part { name: "pad_l"; + scale: 1; + description { state: "default" 0.0; + min : 10 0; + fixed: 1 0; + rel1 { + relative: 0.0 0.0; + } + rel2 { + relative: 0.0 1.0; + } + align: 0.0 0.0; + } + } + part { name: "pad_r"; + scale: 1; + description { state: "default" 0.0; + min : 10 0; + fixed: 1 0; + rel1 { + relative: 1.0 0.0; + } + rel2 { + relative: 1.0 1.0; + } + align: 1.0 0.0; + } + } + part{ name:"elm.swallow.content"; + type: SWALLOW; + scale : 1; + description { state: "default" 0.0; + min: 380 0; + align: 0.5 0.5; + fixed: 1 0; + rel1 { + relative: 0.5 1.0; + to: "pad_t"; + } + rel2 { + relative: 0.5 0.0; + to: "pad_b"; + } + } + } + part { name: "pad_b"; + scale : 1; + mouse_events: 0; + repeat_events: 1; + description { state: "default" 0.0; + align: 0.5 1.0; + min: 0 96; + fixed: 0 1; + rel1 { + relative: 1.0 1.0;to_x: "pad_l"; + } + rel2 { + relative: 0.0 1.0;to_x: "pad_r"; + } + } + } + part { name: "elm.swallow.end"; + type: SWALLOW; + scale : 1; + mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + rel1 { + relative: 0.18 0.0; + to: "pad_b"; + } + rel2 { + relative: 1.0 1.0; + to: "pad_b"; + } + } + } + part { name: "elm.text"; + type: TEXT; + scale : 1; + description { state: "default" 0.0; + text { + font: "SLP:style=Medium"; + size: 32; + min: 0 0; + align: 0.5 0.5; + } + color: 249 249 249 255; + align: 0.0 1.0; + rel1 { + relative: 0.0 0.0; + to: "pad_b"; + } + rel2 { + relative: 1.0 1.0; + to: "pad_b"; + } + } + } + } +} + +group { + name: "page/genlist"; + parts { + part { + name: "background"; + type: RECT; + mouse_events: 1; + scale: 1; + description { + state: "default" 0.0; + rel1 { relative: 0.0 0.0; } + rel2 { relative: 1.0 1.0; } + color: 249 249 249 255; + } + } + + part { + name: "swl/genlist"; + type: SWALLOW; + mouse_events: 1; + scale: 1; + description { + state: "default" 0.0; + rel1 { relative: 0.0 0.0; to: "background"; } + rel2 { relative: 1.0 1.0; to: "background"; } + color: 0 0 0 0; + } + } + } +} diff --git a/res/edje/pwlock.edc b/res/edje/pwlock.edc new file mode 100644 index 0000000..fa5e47f --- /dev/null +++ b/res/edje/pwlock.edc @@ -0,0 +1,4 @@ +collections { + #include "pwlock-popup-checkview.edc" + #include "pwlock-menu-greeting.edc" +} diff --git a/res/images/A01-9_bg.png b/res/images/A01-9_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..c083834ed82410820a6ac4e98de54be280c9406c GIT binary patch literal 409575 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�a0RMXJNe?-za&58mnV4 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

{3o^mf*d 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

_>)GR5-&HCZDE=-UCVsROK_BkP^AP92akX$l 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

@bk&CQOvVoJWWySZ9^}(nx;pjzh?D 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 literal 0 HcmV?d00001 diff --git a/res/images/A01-9_controlbar_icon_Next.png b/res/images/A01-9_controlbar_icon_Next.png new file mode 100644 index 0000000000000000000000000000000000000000..036bf0d8f6c940db877cd2391ea1ffa9b59ea62d GIT binary patch literal 3176 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 literal 0 HcmV?d00001 diff --git a/res/images/A01-9_controlbar_icon_Skip.png b/res/images/A01-9_controlbar_icon_Skip.png new file mode 100644 index 0000000000000000000000000000000000000000..bacd750b90f9100a35f91992f67e417edd665fa0 GIT binary patch literal 3351 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 literal 0 HcmV?d00001 diff --git a/res/images/A01-9_controlbar_icon_scan.png b/res/images/A01-9_controlbar_icon_scan.png new file mode 100644 index 0000000000000000000000000000000000000000..ea1c7f11b4aaf74bce6ab5d83ca23bc9269ace7b GIT binary patch literal 3449 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 b-u?{$C>aOzb-N8y00000NkvXXu0mjfy=`VJ literal 0 HcmV?d00001 diff --git a/res/images/A01-9_icon_no_sim.png b/res/images/A01-9_icon_no_sim.png new file mode 100644 index 0000000000000000000000000000000000000000..1c52a783fe93765f6bb15da4dd478d98988ee6d0 GIT binary patch literal 8713 zcmZvA2UJttvhWE=Zz3i1Za{?4L8(gbNRt+N3B8HZ1cFEt1OYJt1OzG4r3Wbnklq9Y zLBP->A|OqA_~X6befNKBy{wtD*WQ_#J#Ei9dlK&%YSB=#Q33!!qob{E0stVEzer9> zScy;BNG1#v{@PX#0Dy|&FM@#V*8~bmBM&vTd-vS^g8Ux1`}ye!|4W2E9zxA4KJ6a#XH-1&dRqp53kC9=>sb6VJ8OtE3 z%T&4O7i0Q9^)9VK??h7y_ybqT>s@#sT=0W{<48rtn|v6u4geG~NktA|4015y9PyWQ zKUK3}AjDG;CMfNe9yx*$xD%G5S_0hB1R-)!5L4jI6~JN0*=Ys1Cki+SMy*c*h}`3> za1dbgl9vheCJo?Wa7|DL+!cVzvHQ<7084Rz(M|8uZD2+e5ZAGA(+1u*1DMgPRCNG3 zH6U)B5PJi-5)L@@^Ye!QPqP3<%{>dn-J8`{al!;oWz{LR2;A0)wjmb{AhWQ5atV#< zfNwI&Iubc%-+^|8X0b{}OVcgx4+FrPG$w+z`xhajwAG`dvMEip_M$&Ol3wyTIj!K= z#wz^p0KigE_K#K6e7hd1K;%-Ov=HXG2TOHko=pF}F29~~}sEDJNLNe zs&(E>b$QM?$@fXesl`&5amDyrK#F>H^1fs-U!rRIjh^chmoCd#kuzdttPJqpQyCPV zCi>3SnfQ;M;8n{Y%<>Tc?6vxJei0%kM!3f;jRjxss9b2hxeg%QbkYL=z)oENYBpG} z(nk&e>TjZj-`{0F=wuPWkaBdA%y&|qJIFp&75LPpdR3Lu1;G*MaHH~xs!-g>drn~o zu`hQxr7_0taT)%!&@OW{t&%_8sUvw_r%+oo#g)7L<$iZ2$$Gn}| zSFR-q@C+m{8uRI;$!JTMJTv1l*XG<)3M9H657YdRrqB;aJ~@wT(~@`@U1zNHg}PC# z<((YcQ_VuE&n`g{*{RHLay|z(uqh?W7T`WtxYK=0RaWa0$NXR+lltT>4(;t$t-U2e zk>Na4%U4NV(aZM!ekE~h;-T|cZSa+A(Ha;E*(<@SJdRvb2uZICikHxrV{E-YqNR$fy6y`0K?-+ag{wam^mqFU2j z%5)WF^YYw#o2Klh@G^yW@#XM$er75~kyaOpq*mSf-9~Cf#&2rvSK4}csGM2r zLqvGJXe#0!M$3GH)Q-$Pek9zAy5MY0QYtSixUD9oD`in{vj5Ueg=_^CaQr&RkOC)E zirkNU_MLI(#_|pJ5^4Pw30Ig``77ir%L?rZ;|i_KcG>E!(%h1EjaI9(Xxh7dx`Hr4 zEqLlENiNQG)^wqivXt3CN&c`JTJBZMUeKx@{L!~`8zms(R4;o_?Z)A9+aAZ15CPzu)t0XQ5m-96T z+w5Q+VlC42t_kg`Q@3heVzu4W<{N8$+p5^o+}gHYvnsdh`gChmYbkwci(!UgMcy>L z`~7ayKvP*W>-)7C(z)s;pQZ>$xDy!O+*94Xozb2V@gd^*g%TM}{48w+r!{BfgN8sx z`TO$UvqxWVt3>o1yxI_hTaH~Fn~_>+Vi>yd$s^Y^XHp9ehPOP3*-uDH)O#`nMJhvc z*n1cH+gEji4g+kL!X^%LbLw-tw%*OvY|CzYY{$>%4@>9Y$g`4q@VUERZP9pbT!kt> zQ``$%8EK?u6b*00@ryZ&rCC&cecxOhTz=%Z16KZ{9GJhNyrL-gUGlq?{jeOSxxabH zsM{~kJ{GGM#eeB?8Fo1ilp?N!;KYg1ccX2H&W^(#^L|WGk)Lz@Q#ZSHH~CG=U8cLK zPpY1*byo4Z_y2lP#e0N9ji!xy(8k`2{4xER%yHc@sXLNdFg8BcB2Fd6Kf#i1TmmT* zJU*}X0IPng{!0CO4qU?Mc8#d6jIeS!)Kl@B+z06oD!ouQtKlijTuU8qJ&xN@;c8i5 z?+)zw)_(kQ?lRR%I2a|?Z|fggFxqtxTgqGpy(S|6>W+Sb;jNdy?_L#t$DDk9k0JPa z3T0>)XBV7LY+QCcVMYxm%w@QzEo=~${wu9bCRCtDs#s*L<*8uVi#B~4{e>L)Jm&02 zJU)_2^6e5a>1i(lRLgk{GMeB&;p=XXhALfS>+n6kNzGzhnPdZA^)D((tVAiBR7-xC zSqps?CaZ(HTDW~2NgTZWsv_^^$kuTE;M@zj*E{)_Ti3d-Eu}XV$LU#!a$2spS9;#A zQw#{5qg-Jkxfyq#v{DiMtV!5s%BW(?0$Cl|4hb{xini+_r(BDT*qr~m zWou+9W`%8ZJdMj`S7u6lR?RpEMlwas2+fDAvB&!je$1MG*-%#Tsl{c?ZNhD1{kv$M z4ehIP_@zXYaZTT|AIiX}`k~)2JQ;W8by91xQ6D&$2OJn~0b?-92zk2BE#t{Yf zh>J%4+oR<0$|bT%?nj((PBBl_?7eKw9MkMG8z-9&M#IYE(?7q5oomf;)4i5fv#1HLzwoST^&5eYq+cbF?|3dcE*Vm;~nc0ODUTAI+fOu{L&DU8DQ&_R23 zb88G1Xp8I`d3&FqK|dAo8IwkRt*=|Nt6N}RE!$!3jp1%b8|-;7o$V1v%!MfRc%IX_6K*i?#`+$#80W%;OA#{=A%3@!Eg4* z=e3SVV`IkfX@{wFY9y&ysY7uzahrL!lyBc&Rtdb=I4@Nja~Xr=f$@d-p=vO*Smg24 z=GW12)OZ1M51H}N=W+4HPs}E3&0KF+FIUGvh?Iog!TqzX&fxiA&YibdI-}LcJW)cI z?kBZ}rk_jCGFUS*F0T-y_RpQAMCS^0iCI$cyb{zl^F#vFKNfhHvMdHj(xk>2ecXsu02ShjxPq2^2q8kWEqX5;Lz)! z-!F=GIer<~vj{zN+NmS$CS??A0~1sK(zuMCzDwF*W8T9T<4{T^=da={yxXvXG<>)bw&+Z3lKes z`Y+I9uKol6p8wxVte#-pAP2w*s6__A>;H*y7aTLCc>K^*Q=~tPW&sp0*e& z`DP4EfJ$Y_ldV>~e14xX8a(31Zc2yL(dt(Zkyco(JRlb0jCp>zpn16O6TzIF$x54} zog1HYxniA9Y#{Gg7Dau^;SNB?t%kykfDA*IY{%WlI1*K2Nr2&~vd3drf}9nhBPjk5 z#=$LV2T1b}i`Vk3Xnm^c4m>~JZEv0r9O7(mZ+GrRDXQ^Zm05q{Nu+D&?Qa(nfgP+ViS*_v+(?g(-U0&_wD!UGBQCUVnn;gK8MV59 z!l{+Y6)|Xib8P>wI+1Iw?G+u|M}CsCd3jv*4Go`YXvGV7R=!Nb=4&3W-E3ZXFs4K& zyP}$Faq;MZZS&=i@wY}(qf$mH7Y8+rZQ@vjzH&YpD}usxy-qP^w&ekivoD2HffhRZ zq&GDg7rLGW&)XeyxkKu}7u%b*`glXn{#!V~TW4BYT6FJqUbdh2YfngxDeiAFt56c+ zr7RhKwA~)@`0+WfKZx}O2qi9;!J%VlZ;u@r2~Q^fD@ZnGNZ2J=;sgf$N(bfn8)Qnp^k|UMNwE~Vzu4H^BxXhM z68#Up0I~4>8&Siw0*_2hD{7Z+8D4@v9`}^~bavtIXH3!{W&X?SCV6pjLC8Dx|Dq(I zc7>q(p~G&JfVJOYyI#)Sl6yiyTL@=TwT2Wjh;uUR>jI-BF)^`i5;f*3LFa$4AE2i1 z2lRgs$9&~8M)luHnY^5FPW7S8ij9pOrc-wlSLYpek&PK%Tzr%E(t}`;&|R0H6`sQ^ z4N`{$g8%+Omk$gqfB1}H{}S-yZL05ae~6V@94j@w)ISCm9`ZU910I@x*9hY6WgM5u zO7XQTa0x)|C5I$D$G^7GDtTZ~B<@Iq?-@O7U%)AM=xSQ2;+SczCF~e~^f5{TV9m(1 zO71o=V&s;bc;4;DB_H(TI8Q0umz|4iR4>r$sONOx*pQPGbM?A-2EoB|!K?jgDxu4X zg1$AN6;fbw7esAL#OmA-arURXHF&2(20#w~b>hH?+oJ=*uNl=TV)JF-GeB*unxmVC z+nBcTQ~Le8n+{vKc!*5N@BD2oQ24ahsnI$U7rLi7CKN-}HtdjK^4kFyYFBXxo_0uZ zADUs|hEDvHVL|W~iW0v?q!I{(7#$=V@q7=L_-ZcsjVGMP$@D*$(0hriGwMQ;q8Kq( zK{WrafrQeh!APuHKrEkZ;xhL;cVFCb#!d#0R1ruK5t(uGt_{fhWMpbn_1mpyOS zR;NhOAjInL^xx1hb&HGI_{qwPmCmdGlv#r8@%t-TZR!-y|2Hk8rfqZo=B4(_Rm)X> zn*UD-qb5f+Z`V3xY_mIQ%=2_&$XXaSxjgTx348XFlfyL9AL;w;K}|2MVo6$UOcqBx zkWu@r9(nL*2>azz54=Uv1m@wWS{zF;5^>Dle$t_Uu~wBu2&Q28N>2-sK@vb)y%*HYI&ieOoSsV%Que>a7ko zarnnfP&Kvg(}i8^WdA+8=~n`qI+?R23YXu|(s=K!p}{uq(5Br{RuD8j^J`n&y)2|f z-YgNci5@)12DZ8>h&^u}8?-qU0tj=YHF5RZ&btPqp2ru2njJ^l z%>DWIXe-OSH(!<5N>Egn1*ei4#OXQ%{_DVHm+MMF+hwgJ7skDK$4PZNRaCzLPpaz=~ct-mow?U zm#ZmpdZ?B?y@;RQIl*wawVh06h$kI$L)I;bA9-fd>XE5cfbXZ}XZwv?{}bAZoh z8Pt3>t>AK(7A$YnVDuU9EJfU zXRjRix{B9Sy$C`O3L&r24Ux5iXh6T2f`J0sGy*DJ{-mL^=(N(+vrK~tB9}~CE({5% z-Qs=Dg?u#TLW*qYU1F1`M9QQLU1NndZE-5n!n~iL)lc;8+{7EQ#u;d!vbSO0<^J?i zU<3&HJD}FbP0x6xE^pTKDcX`?%=DhO9YW`bOa%7#c*~=l~##b5Wp(Qez7^5ikH<5Vmdr@XlsO~jzG*vBW zhA8YlT|@@^i~3~M&(;PQUhsXTi_6~2F89OB@ypg^g)bqq+b>?XffHh_8q3BX_s71; zr|T__^o}ZpTTToQ@;i@d^FT{Tpl($cfgRqRC`F^0OW8}d~u=^%|ner5DsQMRo7FdcrWq@VhR``x6S@0l>0t`q-!`9 zAcbLyS-~g}%Iu5?N{Aps0fDs^&7=SB;eu4?TYCp$WaUzqf`Vj>4zJ69I9#V%$;DGZ zkSQ+$@$BDyio)553GB=MG>b$~uVtqmJ~1g2qpxr@l@wSujU0x#zNkpV;tvA*gHX_Y z5*Q}dv$mf-QG7A|2CVWHgg|U&;D{;C2ylcDi{Ho>j@Bbvc_K#0CxSR&vOPzeFn*E< zH_!sZbS6fk)(_%R4|z)uY2OraVEsL=$|i{$eL*zvIl zyB6CFNre%nd%@gT*av0_{*8tu5E046&)lAl?|DH zs>E!8WhVG6m!L*E4J?7Mw`9v*Rx4H+N8{E9Im~F3EE;8g)Wja_Kluk26Cfe#{|{_x zHtqWdgvDJqkV1hV5f=xs^)L!fETaV|M_c_9HRSn_0Ecp(>@B;HG5}LlD5e8#=gO%ZR8ihI^vwD0*A3QjF}wD<^IWz3*0o+N+hlgqq*S5B zsGSY|bU%OLx}V3RAus3%uI0or_X6u-UZHpur2ma;OZdUwE9GbIe#R?^n)~akq6U4f z&F?n+s-T89%1CVeJnm;sn7u<^d97F3Srot^QfNC~Atpi(BjQb@M`FDA8DWbg4j-7n zIXuwlZ$&>i!JUNZQxthXt>@7#uDOgKUw#@=LcjEQiSKrp@jQlkKl3-fhMqzBCvFrI zwLKImW&!u4CK)h;a{%ZS@v?dSXMY+sbe5bZW0Ei=4w&nv=$ZRbUPNdiRhU1igUN7` zQ>b}RMY!W*G&#(DgplMeG>|j2P=O3mCYgc`+!{8oF2S7D`Ppq4dx1|99CPD@A zF`RT3zU=QTwDx1}P5!rNc^IP#R5k!6f(EEN5PApy*+W#nsPD7S$LH7PB!V)pK$&6k zRn-bGwJ#M%0UU1>n9%RS{cD}XuKmqph$}m|CuQi=&VRs~aHxi+vDWIlD^8uU0EDUQ z6C!E3ucw5JP>nD_Qj!F9nzB>{4och?iNqJLU4wdYxk5EzSD+1#+L&(~3?*Cxx6;nk zB@JojjkGesypsYL{#e2y=A>c@o>%s`P=n`W(Bj1))XV$3)(fF(@^^yM(KFkap8o!B z7KD!TTHuA}a{&2t8fI{er<^V)k+8Ad4I+?4>w#kPCWW5>i^M zyE0L_)bk0i14^i7@4(PNs^^DWm3kI9w#cTa1BB)uJcyXXA>Hq&Q*aI4P7^$Q z1dS;AIx6a3peS4l*X}*gg?!z!Y+fvUu96$YF!os{&~@I9aA3^mb5B23Xj;^a$PG(B z4`_g&i@8zD;NdvK|L%bUu6Y$cNk9ucN#m@}^h2 zIU2=`{$dgMI*(q5>Spkh`SO%5=T#S-HuJ*qsxb<5lJ7xo&KfOYAGe(CKlgc?bGMx~@0AzFDQvEO zc>*bAZVI7zeu@7W87i~xwPW3FQG-9V9!9Fn{+?n7L)1QAX@+Zu_g?D0Jxf(T&u-kF zNg@=SRm~%AV{E_RL1$EyX>1wRKQ`!IcPpL84z8m*4{r-&1u~XLipPmhSHXrJk;_cB zQI{kmwn|ljj!$kvVh;~?CKjv1rB8SH*}g|4+`Qr-Us_NbE+hR&%;L&JACWYMzg?#s z?Xv0|J7U%3zjq?Sz3RVLD8l6BDBgb3ahdDgQvvKuc93xYGu8} z)>VW1imcAw7*wMbOSe^ir{yJ050O|g1yZ-T(4ZIk!Fwcmvc(k98S(({t zC|Ccz!qB`@LPtPURJ6=e#IXJ1&zuI9AR;>&9xC^+n_soy9_n>oUdJtQaeu%;Xh63( zeSLl1OoUmCi83}+$Ij<!w9@TlmIAu~epRtig5Npg(o*-@nPqVkHnt z?X>NWPO*tZx=7ZSy_9kAW)L|XYe(9JZS3Xvb%Z{0baX6-LF>!Z6Bi{_RB93vDMrS| zz+h%(!;iEzT@uem0lsIZIELws~JXl*}qE%5g36k=&cN|7l~^Q5Gt z?A+X`gM$X$Vv~S?fZcf9Xzm$u=P^zJcir5x)HCNHDrMBggQ0*lW;d5Z$9L;xMebgD zSjYLA*yU($@b{CGw6ruWj=tMJ2o12!4}rE|2Y0Vj??zmU2qAbd=#aHd<^2jc4u{KE zh{B(t!JaWZPoqKbsTQYNMB$7BmQ)gyN&ReG#(x*Z4xWljmyAcQcjXw*~3dR?;r9Gi|PHJ;(pXa1^@x(#I zoMQNfi$h%-ctDy45L<+|L15>ClUJC=H8CDDF&hfz#2AWi;a@1l5IP%glS&sYDyIE@ z@W80+nZK=u)cd@kP!-G&do+CN>&f8nJjE@Meb)p3PL}Xh;q_c;PTJHLKl8H~)HYKa zlUA!NeVz(Uxt}LB={rg8?cVMsA?pBfp2Ev$Wpx#^BRu3XYCCosyGhL4>t`BNOBSRa zN*#X7gdrCeODLFI4bASvb)g2{jkw)|*fSzGC)lwKEdiaeg{qnhM0(9c^?B@5MARC$ zI{tQz*LLz1LnS9Io-X;5s56?k`B41RDfw?hx@!B93@Ai;3dSfwkc3`4prc`^Uajiz G +#include +#include + +#include "util.h" +#include "langs.h" + +struct lang langs[_L_MAX] = { + {_L_AUTO, N_("IDS_IDLE_BODY_AUTOMATIC"), NULL, 0,}, + {_L_EN, "English", "en_US.UTF-8", SETTING_LANG_ENGLISH,}, + {_L_DE, "Deutsch", "de_DE.UTF-8", SETTING_LANG_GERMAN,}, + {_L_NL, "Nederlands", "nl_NL.UTF-8", 0,}, + {_L_ES, "Español", "es_ES.UTF-8", SETTING_LANG_SPAINISH,}, + {_L_PT, "português", "pt_PT.UTF-8", SETTING_LANG_PORTUGUESE,}, + {_L_EL, "ελληνικά", "el_GR.UTF-8", SETTING_LANG_GREEK,}, + {_L_IT, "Italiano", "it_IT.UTF-8", SETTING_LANG_ITALIAN,}, + {_L_FR, "Français", "fr_FR.UTF-8", SETTING_LANG_FRENCH,}, + {_L_TR, "Türkçe", "tr_TR.UTF-8", SETTING_LANG_TURKISH,}, + {_L_KO, "한국어", "ko_KR.UTF-8", SETTING_LANG_KOREA,}, + {_L_CN, "简体中文", "zh_CN.UTF-8", SETTING_LANG_CHINA,}, + {_L_HK, "繁體中文(香港)", "zh_HK.UTF-8", SETTING_LANG_CANTONESE,}, + {_L_TW, "繁體中文(台灣)", "zh_TW.UTF-8", SETTING_LANG_TAIWAN,}, + {_L_JP, "にほんご", "ja_JP.UTF-8", SETTING_LANG_JAPAN,}, + {_L_RU, "Россию", "ru_RU.UTF-8", SETTING_LANG_RUSSIAN,}, + {_L_GR, "Eλληνικά", "el_GR.UTF-8", SETTING_LANG_GREEK,} +}; + +static struct lang *_get_lang(int v) +{ + int i; + struct lang *r; + + if (v < _L_AUTO || v >= _L_MAX) { + _ERR("Get LANG: Invalid code"); + return NULL; + } + + r = NULL; + for (i = 0; i < sizeof(langs) / sizeof(langs[0]); i++) { + if (langs[i].value == v) { + r = &langs[i]; + break; + } + } + + return r; +} + +const char *get_lang_name(int v) +{ + struct lang *l; + + l = _get_lang(v); + if (!l) + return NULL; + + return l->name; +} + +static const char *_get_code(int v) +{ + struct lang *l; + + l = _get_lang(v); + if (!l) + return NULL; + + return l->code; +} + +static int _get_ival(int v) +{ + struct lang *l; + + l = _get_lang(v); + if (!l) + return 0; + + return l->ival; +} + +static int _set_lang(const char *code, int ival) +{ + int r; + + _DBG("set language: %s", code); + r = vconf_set_str(VCONFKEY_LANGSET, code); + if (r) { + _ERR("Set language: vconf error"); + return -1; + } + + r = vconf_set_int(VCONFKEY_SETAPPL_LANG_INT, ival); + if (r) { + _ERR("Set language: vconf error"); + return -1; + } + + return 0; +} + +int set_lang(int v) +{ + int ival; + const char *code; + + code = _get_code(v); + if (!code) { + _ERR("Set language: Unknown LANG code"); + return -1; + } + + code = setlocale(LC_ALL, code); + if (!code) { + _ERR("Set language: Unsupported LANG code"); + return -1; + } + + ival = _get_ival(v); + return _set_lang(code, ival); +} + +const char *get_lang_name_by_path(char *path) +{ + int i = 0; + + if (path == NULL) return NULL; + + for (i = 0 ; i < _L_MAX ; i++) { + + if (langs[i].code == NULL) continue; + + if (strncasecmp(langs[i].code, path, MIN(strlen(langs[i].code), strlen(path))) == 0) { + return get_lang_name(i); + } + } + + return NULL; +} diff --git a/src/pwlock.c b/src/pwlock.c index 3f6bddd..4358b56 100755 --- a/src/pwlock.c +++ b/src/pwlock.c @@ -1,24 +1,25 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #include #include #include -#include #include #include @@ -27,20 +28,16 @@ #include "pwlock.h" #include "util.h" #include "ui.h" +#include "langs.h" #define _ST_START _ST_FIRST #define HOME_KEY KEY_SELECT #define BACK_KEY KEY_END -#define PWLOCK_FIRST_BOOT "db/setting/pwlock_boot" -#define MENUSCREEN_PKG_NAME "db/menuscreen/pkgname" -#define LIVE_MAGAZINE_START "memory/startapps/sequence" -#define TIMEZONE_CITY_NAME "db/setting/cityname_id" -#define TIMEZONE_INFO_PATH "/usr/share/zoneinfo/" -#define TIMEZONE_INFO_FILE TIMEZONE_INFO_PATH"zone.tab" - -#define MODEM_ARM "/boot/moden.bin" -#define MODEM_X86 "/usr/bin/vmodem_x86" +#define MENUSCREEN_PKG_NAME "db/menuscreen/pkgname" /* menu screen pkg name string */ +#define TIMEZONE_CITY_NAME "db/setting/cityname_id" /* get the city name */ +#define TIMEZONE_INFO_PATH "/usr/share/zoneinfo/" /* the path of the timezone infomation */ +#define TIMEZONE_INFO_FILE TIMEZONE_INFO_PATH"zone.tab" /* the file of the timezone infomation */ struct state { int (*_do) (struct appdata * ad); @@ -54,9 +51,13 @@ static int do_ST_SIM_PUKCNF(struct appdata *ad); static int do_ST_SIM_LOCKCNF(struct appdata *ad); static int do_ST_NETWORK_LOCKCNF(struct appdata *ad); static int do_ST_EXIT(struct appdata *ad); +static int do_ST_GREETING(struct appdata *ad); static int do_ST_LANG(struct appdata *ad); +static int do_ST_NOSIM(struct appdata *ad); static int do_ST_TIME(struct appdata *ad); -static int do_ST_KEYBOARD(struct appdata *ad); +static int do_ST_CONNECTION(struct appdata *ad); +static int do_ST_TUTORIAL(struct appdata *ad); +static int do_ST_FINISH(struct appdata *ad); static void set_pwlock_unlock_state(struct appdata *ad); static void set_pwlock_lock_state(struct appdata *ad); static Eina_Bool timer_do(void *data); @@ -64,6 +65,7 @@ static void set_default_timezone(void *data); static struct state states[_ST_MAX] = { {do_ST_FIRST,}, + /* { do_ST_INIT, }, */ {do_ST_TAPI_INIT,}, {do_ST_SIM,}, {do_ST_SIM_PINCNF,}, @@ -72,11 +74,15 @@ static struct state states[_ST_MAX] = { {do_ST_NETWORK_LOCKCNF,}, {do_ST_EXIT,}, {do_ST_LANG,}, + {do_ST_NOSIM,}, {do_ST_TIME,}, - {do_ST_KEYBOARD,}, + {do_ST_GREETING,}, + {do_ST_CONNECTION,}, + {do_ST_TUTORIAL,}, + {do_ST_FINISH,}, }; -static inline void trans(struct appdata *ad, int state) +static inline void _trans(struct appdata *ad, int state) { _DBG("trans state %d --> state %d", ad->state, state); ad->state = state; @@ -131,7 +137,7 @@ static void _sim_retry(struct appdata *ad, int retry) _DBG("%s", __func__); if (retry == 0) { - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); return; } @@ -142,7 +148,7 @@ static void _sim_retry(struct appdata *ad, int retry) pwlock_get_string(IDS_IDLE_BODY_1_ATTEMPT_LEFT), sizeof(buf)); if (len >= sizeof(buf)) { - return; + return; /* overrun */ } } else { len = @@ -150,7 +156,7 @@ static void _sim_retry(struct appdata *ad, int retry) pwlock_get_string(IDS_IDLE_BODY_PD_ATTEMPTS_LEFT), retry); if (len == -1) { - return; + return; /* over run */ } else if (len > 0) { buf[len] = '\0'; } @@ -173,19 +179,19 @@ static void _sim_retry_no_cnt(struct appdata *ad) clear_entry(ad); } -static void _tapi_cb(struct tapi_info *i, struct appdata *ad) +static void _pwlock_tapi_cb(struct pwlock_tapi_info *i, struct appdata *ad) { _DBG("%s, i->st:%d", __func__, i->st); switch (i->st) { case SIM_REQUIRED_EVENT: if ((ad->sim_status != 0) && (ad->sim_status == SIM_WAITING)) { - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); } break; case SIM_OK: - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); break; case SIM_RETRY: @@ -193,7 +199,7 @@ static void _tapi_cb(struct tapi_info *i, struct appdata *ad) break; case SIM_ERROR: _ERR("SIM check error"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); show_msg(ad, IDS_IDLE_POP_SIM_CARD_ERROR); ecore_timer_add(3, timer_do, ad); break; @@ -201,7 +207,7 @@ static void _tapi_cb(struct tapi_info *i, struct appdata *ad) if (ad->state == _ST_SIM_PINCNF) { _sim_retry(ad, i->retry_cnt); } else { - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); } break; @@ -218,41 +224,41 @@ static void _tapi_cb(struct tapi_info *i, struct appdata *ad) break; case SIM_REQ_NCK: clear_entry(ad); - ad->sub_state = TAPI_SIM_PERS_NET; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PN; + _trans(ad, _ST_NETWORK_LOCKCNF); do_state(ad); break; case SIM_REQ_NSCK: clear_entry(ad); - ad->sub_state = TAPI_SIM_PERS_NS; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PU; + _trans(ad, _ST_NETWORK_LOCKCNF); do_state(ad); break; case SIM_REQ_SPCK: clear_entry(ad); - ad->sub_state = TAPI_SIM_PERS_SP; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PP; + _trans(ad, _ST_NETWORK_LOCKCNF); do_state(ad); break; case SIM_REQ_CCK: clear_entry(ad); - ad->sub_state = TAPI_SIM_PERS_CP; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PC; + _trans(ad, _ST_NETWORK_LOCKCNF); do_state(ad); break; - default: + /* do nothing */ break; } } -static void tapi_cb(struct tapi_info *i, void *data) +static void pwlock_tapi_cb(struct pwlock_tapi_info *i, void *data) { struct appdata *ad = data; _DBG("%s, ad->state:%d", __func__, ad->state); - _tapi_cb(i, ad); + _pwlock_tapi_cb(i, ad); return; } @@ -264,24 +270,58 @@ static int do_ST_FIRST(struct appdata *ad) _DBG("%s", __func__); - r = vconf_get_bool(PWLOCK_FIRST_BOOT, &first); - _DBG("vconf get %s, result:%d, get_value:%d", PWLOCK_FIRST_BOOT, r, + r = vconf_get_bool(VCONFKEY_PWLOCK_FIRST_BOOT, &first); + _DBG("vconf get %s, result:%d, get_value:%d", VCONFKEY_PWLOCK_FIRST_BOOT, r, first); - if ((r == 0 && first == 0) || (ad->running_status > 0)) { + + if ((r == 0 && first == 0) || (ad->is_exec_after_bootup > 0)) { _DBG("Not first booting time"); - ad->first_boot = 0; - trans(ad, _ST_TAPI_INIT); + ad->is_first_boot = 0; + // change booting seq. - syhwang@20120627 + vconf_set_int(VCONFKEY_STARTER_SEQUENCE, 1); + } else { _DBG("First booting time"); - vconf_set_bool(PWLOCK_FIRST_BOOT, 0); - ad->first_boot = 1; - trans(ad, _ST_LANG); + //vconf_set_bool(VCONFKEY_PWLOCK_FIRST_BOOT, 0); + ad->is_first_boot = 1; set_default_timezone(ad); } - vconf_set_int(LIVE_MAGAZINE_START, 1); + + _trans(ad, _ST_TAPI_INIT); + return ECORE_CALLBACK_RENEW; } +static int do_ST_GREETING(struct appdata *ad) +{ + _DBG("%s", __func__); + + if (show_greeting(ad)) + return ECORE_CALLBACK_CANCEL; + else + return ECORE_CALLBACK_RENEW; +} + +static int do_ST_CONNECTION(struct appdata *ad) +{ + _DBG("%s", __func__); + + if (show_connection(ad)) + return ECORE_CALLBACK_CANCEL; + else + return ECORE_CALLBACK_RENEW; +} + +static int do_ST_TUTORIAL(struct appdata *ad) +{ + _DBG("%s", __func__); + + if (show_tutorial(ad)) + return ECORE_CALLBACK_CANCEL; + else + return ECORE_CALLBACK_RENEW; +} + static Eina_Bool timer_do(void *data) { do_state(data); @@ -290,7 +330,7 @@ static Eina_Bool timer_do(void *data) static void set_pwlock_unlock_state(struct appdata *ad) { - if (ad->running_status > 0) + if (ad->is_exec_after_bootup > 0) vconf_set_int(VCONFKEY_PWLOCK_STATE, VCONFKEY_PWLOCK_RUNNING_UNLOCK); else @@ -300,7 +340,7 @@ static void set_pwlock_unlock_state(struct appdata *ad) static void set_pwlock_lock_state(struct appdata *ad) { - if (ad->running_status > 0) + if (ad->is_exec_after_bootup > 0) vconf_set_int(VCONFKEY_PWLOCK_STATE, VCONFKEY_PWLOCK_RUNNING_LOCK); else @@ -363,7 +403,7 @@ void vconf_tapi_ready_changed_cb(keynode_t * node, void *data) _DBG("SUCCESS to stop timer with pTimerId[%x]", (int)ad->pTimerId); } } - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); } } @@ -394,11 +434,11 @@ Eina_Bool vconf_tapi_ready_expire_cb(void *pData) } else { if (vconf_val == VCONFKEY_TELEPHONY_TAPI_STATE_NONE) { _DBG("TAPI is not ready, pwlock exit"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); do_state(ad); } else { _DBG("TAPI is ready"); - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); do_state(ad); } } @@ -408,79 +448,73 @@ Eina_Bool vconf_tapi_ready_expire_cb(void *pData) static int do_ST_TAPI_INIT(struct appdata *ad) { int r; - FILE *fd1; - FILE *fd2; _DBG("%s", __func__); - fd1 = fopen(MODEM_ARM, "r"); - if (fd1 == NULL) { - _DBG("no modem in target..!!"); - fd2 = fopen(MODEM_X86, "r"); - if (fd2 == NULL) { - _DBG("no modem in x86..!!"); - if (ad->running_status == 0 && ad->first_boot - && ad->cancel_setup == 0) { - trans(ad, _ST_TIME); - } else { - trans(ad, _ST_EXIT); - } - return ECORE_CALLBACK_RENEW; + ad->t = pwlock_tapi_init(pwlock_tapi_cb, ad); + if (ad->t == NULL) { + _ERR("TAPI init error"); + + ad->tapi_init_retry_cnt++; + _DBG("Retry count of tapi init : %d\n", ad->tapi_init_retry_cnt); + if (ad->tapi_init_retry_cnt < 4) { + ecore_timer_add(1, timer_do, ad); + return ECORE_CALLBACK_CANCEL; } else { - fclose(fd2); + ad->tapi_init_retry_cnt = 0; + _trans(ad, _ST_EXIT); + return ECORE_CALLBACK_RENEW; } - } else { - fclose(fd1); } - _DBG("there is modem..!!"); + ad->tapi_init_retry_cnt = 0; - ad->t = tapi_init(tapi_cb, ad); - if (ad->t == NULL) { - _ERR("TAPI init error"); - trans(ad, _ST_EXIT); - return ECORE_CALLBACK_RENEW; - } - - r = tapi_ready_check(); + r = pwlock_tapi_ready_check(); _DBG("tapi_ready_check : %d", r); if (r == 0) { + /* SHOULD MANAGE TIMER FROM NOW - START PART */ ad->pTimerId = ecore_timer_add(20, vconf_tapi_ready_expire_cb, ad); register_vconf_tapi_ready_changed(ad); r = ECORE_CALLBACK_CANCEL; } else { - trans(ad, _ST_SIM); + _trans(ad, _ST_SIM); r = ECORE_CALLBACK_RENEW; } + /* change location of vconfset for homescreen launch + (when not first boot) - syhwang@20120706 */ + if (ad->is_first_boot) + vconf_set_int(VCONFKEY_STARTER_SEQUENCE, 1); + return r; } static int do_ST_SIM(struct appdata *ad) { int r; - int changed = 0; + int is_sim_changed = 0; _DBG("%s", __func__); set_pwlock_unlock_state(ad); set_pwlock_lock_state(ad); - ad->sim_status = tapi_check_sim(&changed); - ad->sim_changed = changed; - _DBG("ad->sim_status=%d, ad->sim_changed=%d, ad->first_boot=%d", - ad->sim_status, changed, ad->first_boot); + ad->sim_status = pwlock_tapi_check_sim(ad->t, &is_sim_changed); + ad->sim_changed = is_sim_changed; + _DBG("ad->sim_status=%d, ad->sim_changed=%d, ad->is_first_boot=%d", + ad->sim_status, is_sim_changed, ad->is_first_boot); + switch (ad->sim_status) { case SIM_REQ_PIN: pwlock_destroy(ad); show_pin(ad); - trans(ad, _ST_SIM_PINCNF); + _trans(ad, _ST_SIM_PINCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_PUK: show_puk(ad); - trans(ad, _ST_SIM_PUKCNF); + _trans(ad, _ST_SIM_PUKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_LOCK: @@ -491,7 +525,7 @@ static int do_ST_SIM(struct appdata *ad) } else { show_sim_lock(ad); } - trans(ad, _ST_SIM_LOCKCNF); + _trans(ad, _ST_SIM_LOCKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_NCK: @@ -501,8 +535,8 @@ static int do_ST_SIM(struct appdata *ad) } else { show_sim_lock(ad); } - ad->sub_state = TAPI_SIM_PERS_NET; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PN; + _trans(ad, _ST_NETWORK_LOCKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_NSCK: @@ -512,8 +546,8 @@ static int do_ST_SIM(struct appdata *ad) } else { show_sim_lock(ad); } - ad->sub_state = TAPI_SIM_PERS_NS; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PU; + _trans(ad, _ST_NETWORK_LOCKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_SPCK: @@ -523,8 +557,8 @@ static int do_ST_SIM(struct appdata *ad) } else { show_sim_lock(ad); } - ad->sub_state = TAPI_SIM_PERS_SP; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PP; + _trans(ad, _ST_NETWORK_LOCKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_REQ_CCK: @@ -534,18 +568,30 @@ static int do_ST_SIM(struct appdata *ad) } else { show_sim_lock(ad); } - ad->sub_state = TAPI_SIM_PERS_CP; - trans(ad, _ST_NETWORK_LOCKCNF); + ad->sub_state = TAPI_SIM_LOCK_PC; + _trans(ad, _ST_NETWORK_LOCKCNF); r = ECORE_CALLBACK_CANCEL; break; case SIM_OK: - if (ad->running_status == 0 && ad->first_boot && ad->cancel_setup == 0) { - trans(ad, _ST_TIME); - } else if (ad->running_status == 0 && ad->first_boot == 0 && changed) { - trans(ad, _ST_LANG); + //unregister_tapi_factory_event(ad); /* For SMC Lab test */ + if (ad->is_exec_after_bootup == 0 && ad->is_first_boot && ad->cancel_setup == 0) { /* First boot & don't cancel setup wizard */ + if (ad->is_no_sim == 1) { + _trans(ad, _ST_TIME); + } else { + _trans(ad, _ST_GREETING); + } + } else if (ad->is_exec_after_bootup == 0 && ad->is_first_boot == 0 && is_sim_changed) { /* Not first boot, Card changed */ + if (ad->is_no_sim == 1) { + _trans(ad, _ST_TIME); + } else { + _trans(ad, _ST_GREETING); + } } else { - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); } + + ad->is_no_sim = 0; + if (ad->pin_changed == 1) { r = ECORE_CALLBACK_CANCEL; show_msg(ad, IDS_IDLE_POP_PIN_CHANGED); @@ -557,6 +603,7 @@ static int do_ST_SIM(struct appdata *ad) break; case SIM_WAITING: + /* wait till tapi send evt.. */ r = ECORE_CALLBACK_CANCEL; break; case SIM_BLOCKED: @@ -564,28 +611,42 @@ static int do_ST_SIM(struct appdata *ad) r = ECORE_CALLBACK_CANCEL; break; case SIM_RETRY: + /* do nothing, wait for TAPI callback */ ecore_timer_add(0.2, timer_do, ad); r = ECORE_CALLBACK_CANCEL; break; case SIM_EMPTY: - if (ad->running_status == 0 && ad->first_boot + if (ad->is_exec_after_bootup == 0 && ad->is_first_boot && ad->cancel_setup == 0) { - trans(ad, _ST_TIME); + if (ad->is_no_sim != 1) { + _trans(ad, _ST_GREETING); + } } else { - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); } + ad->is_no_sim = 1; r = ECORE_CALLBACK_RENEW; break; default: _ERR("Unexpected sim state: %d", ad->sim_status); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); r = ECORE_CALLBACK_RENEW; break; } return r; } -static int do_ST_SIM_PINCNF(struct appdata *ad) +static int do_ST_NOSIM(struct appdata *ad) +{ + _DBG("%s", __func__); + + if (show_nosim(ad)) + return ECORE_CALLBACK_CANCEL; + else + return ECORE_CALLBACK_RENEW; +} + +static int do_ST_SIM_PINCNF(struct appdata *ad) { int r; @@ -594,14 +655,14 @@ static int do_ST_SIM_PINCNF(struct appdata *ad) if (!ad->entry_str) { _ERR("entry string is empty"); return ECORE_CALLBACK_CANCEL; - } + } - r = tapi_verify_pins(ad->entry_str); + r = pwlock_tapi_verify_pins(ad->t, ad->entry_str); if (r == -1) { _ERR("verify pin error"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); return ECORE_CALLBACK_RENEW; - } + } return ECORE_CALLBACK_CANCEL; } @@ -619,10 +680,10 @@ static int do_ST_SIM_PUKCNF(struct appdata *ad) return ECORE_CALLBACK_CANCEL; } - r = tapi_verify_puks(ad->entry_str, ad->pin_str); + r = pwlock_tapi_verify_puks(ad->t, ad->entry_str, ad->pin_str); if (r == -1) { _ERR("verify puk error"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); return ECORE_CALLBACK_RENEW; } @@ -640,10 +701,10 @@ static int do_ST_SIM_LOCKCNF(struct appdata *ad) return ECORE_CALLBACK_CANCEL; } - r = tapi_verify_lock(ad->entry_str); + r = pwlock_tapi_verify_lock(ad->t, ad->entry_str); if (r == -1) { _ERR("verify pin error"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); return ECORE_CALLBACK_RENEW; } @@ -661,10 +722,10 @@ static int do_ST_NETWORK_LOCKCNF(struct appdata *ad) return ECORE_CALLBACK_CANCEL; } - r = tapi_disable_net_pers(ad->entry_str, ad->sub_state); + r = pwlock_tapi_disable_net_pers(ad->t, ad->entry_str, ad->sub_state); if (r == -1) { _ERR("Disable network personalization failed"); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); return ECORE_CALLBACK_RENEW; } @@ -679,11 +740,11 @@ static int do_ST_EXIT(struct appdata *ad) _DBG("%s", __func__); locked = 0; - r = vconf_get_int(LIVE_MAGAZINE_START, &locked); + r = vconf_get_int(VCONFKEY_STARTER_SEQUENCE, &locked); _DBG("r = %d locked = %d", r, locked); - if ((r != 0) || (locked == 0)) { - _DBG("set %s to true", LIVE_MAGAZINE_START); - vconf_set_int(LIVE_MAGAZINE_START, 1); + if ((r != 0) || (locked == 0)) { /* prevent */ + _DBG("set %s to true", VCONFKEY_STARTER_SEQUENCE); + vconf_set_int(VCONFKEY_STARTER_SEQUENCE, 1); } elm_exit(); return ECORE_CALLBACK_CANCEL; @@ -709,11 +770,11 @@ static int do_ST_TIME(struct appdata *ad) return ECORE_CALLBACK_RENEW; } -static int do_ST_KEYBOARD(struct appdata *ad) +static int do_ST_FINISH(struct appdata *ad) { _DBG("%s", __func__); - if (show_keyboard_setting(ad)) + if (show_finish(ad)) return ECORE_CALLBACK_CANCEL; else return ECORE_CALLBACK_RENEW; @@ -728,7 +789,7 @@ static Eina_Bool _do_state(void *data) if (ad->state < _ST_START || ad->state >= _ST_MAX) { _ERR("Unknown state: %d", ad->state); - trans(ad, _ST_EXIT); + _trans(ad, _ST_EXIT); r = ECORE_CALLBACK_RENEW; } else r = states[ad->state]._do(ad); @@ -746,6 +807,24 @@ void do_state(struct appdata *ad) ad->idler = ecore_idler_add(_do_state, ad); } +void do_state_directly(int state, void *data) +{ + struct appdata *ad = data; + + if ( ad == NULL ) { + _ERR("ad is null"); + return ; + } + + _trans(ad, state); + + if (ad->state < _ST_START || ad->state >= _ST_MAX) { + _ERR("Unknown state: %d", ad->state); + do_state_directly(_ST_EXIT, ad); + } else + states[ad->state]._do(ad); +} + void set_win_prop(struct appdata *ad, int type) { Ecore_X_Window w; @@ -771,6 +850,7 @@ static void set_key_grab(Evas_Object * win) w = elm_win_xwindow_get(win); utilx_grab_key(ecore_x_display_get(), w, KEY_SELECT, EXCLUSIVE_GRAB); + /* FIXME for blocking camera launching */ utilx_grab_key(ecore_x_display_get(), w, KEY_CAMERA, TOP_POSITION_GRAB); } @@ -797,14 +877,11 @@ static void pwlock_focus_out_cb(void *data, Evas_Object * obj, void *event_info) elm_win_raise(ad->win); free(pkg_str); pkg_str = NULL; - } else - if (!strncmp("org.tizen.live-magazine", buf, strlen(buf))) - { + } else if (!strncmp("org.tizen.live-magazine", buf, strlen(buf))) { _DBG("%s is on the pwlock.!!\n", buf); elm_win_raise(ad->win); } } - } static int _batt_cb(void *data) @@ -836,34 +913,34 @@ static Eina_Bool app_hardkey_up_cb(void *data, int type, void *event) _DBG("[%s]Key up : %s\n", __func__, pKeyEvent->keyname); if ((!strcmp(pKeyEvent->keyname, HOME_KEY)) && (ad->state > _ST_EXIT)) { - _DBG("ad->ui_type=%d", ad->ui_type); - switch (ad->ui_type) { - case _UI_LANG: - case _UI_TIME: - case _UI_KEYBOARD: - { - if (vconf_get_int - (VCONFKEY_IDLE_LOCK_STATE, &val) < 0) { - _DBG("Cannot get VCONFKEY_IDLE_LOCK_STATE"); - return 0; - } - if (val == VCONFKEY_IDLE_UNLOCK) { - _DBG("unlocked..!!"); - show_popup(ad, - pwlock_get_string - (IDS_IDLE_BODY_DO_YOU_WANT_TO_SKIP_SETUPWIZARD), - EINA_FALSE); - } - } - break; - default: + _DBG("keyup event on ad->ui_type=%d", ad->ui_type); + + if (ad->ui_type == _UI_DIALER) { return 0; } + if (ad->ui_type >= _UI_LANG) { + if (vconf_get_int + (VCONFKEY_IDLE_LOCK_STATE, &val) < 0) { + _DBG("Cannot get VCONFKEY_IDLE_LOCK_STATE"); + return 0; + } + if (val == VCONFKEY_IDLE_UNLOCK) { + _DBG("unlocked..!!"); + show_popup_ask_exit(ad, + pwlock_get_string + (IDS_IDLE_BODY_DO_YOU_WANT_TO_SKIP_SETUPWIZARD)); + } + } } else if (!strcmp(pKeyEvent->keyname, BACK_KEY)) { _DBG("[%s] %d ad->ui_type: %d", __func__, __LINE__, ad->ui_type); switch (ad->ui_type) { case _UI_DIALER: + /* + edje_object_signal_emit(elm_layout_edje_get + (ad->dialer_ug_layout), + "elm,state,hide", ""); + */ ug_send_key_event(UG_KEY_EVENT_END); ad->ui_type = ad->previous_ui_type; break; @@ -877,7 +954,6 @@ static int app_create(void *data) struct appdata *ad = data; _DBG("%s", __func__); - ad->win = create_win(PACKAGE); if (ad->win == NULL) { _ERR("Create win error"); @@ -887,33 +963,42 @@ static int app_create(void *data) set_key_grab(ad->win); register_vconf_call_state_changed(ad); set_win_prop(ad, ECORE_X_WINDOW_TYPE_NOTIFICATION); + /* for exception */ evas_object_smart_callback_add(ad->win, "focus,out", pwlock_focus_out_cb, ad); appcore_set_i18n(PACKAGE, LOCALEDIR); appcore_set_event_callback(APPCORE_EVENT_LOW_BATTERY, _batt_cb, ad); ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, app_hardkey_up_cb, ad); - if (ad->navi) { - evas_object_del(ad->navi); - ad->navi = NULL; - if (ad->ly_main) { - evas_object_del(ad->ly_main); - ad->ly_main = NULL; + if (ad->elm_navigation_frame) { + evas_object_del(ad->elm_navigation_frame); + ad->elm_navigation_frame = NULL; + if (ad->layout_contents) { + evas_object_del(ad->layout_contents); + ad->layout_contents = NULL; } - if (ad->entry_layout) { - evas_object_del(ad->entry_layout); - ad->entry_layout = NULL; + if (ad->layout_entry) { + evas_object_del(ad->layout_entry); + ad->layout_entry = NULL; } - if (ad->entry_second_layout) { - evas_object_del(ad->entry_second_layout); - ad->entry_second_layout = NULL; + if (ad->layout_second_entry) { + evas_object_del(ad->layout_second_entry); + ad->layout_second_entry = NULL; + } + if (ad->elm_conform) { + evas_object_del(ad->elm_conform); + ad->elm_conform = NULL; } - } + ad->is_no_sim = 0; + + // set 0 to retry count of tapi init + ad->tapi_init_retry_cnt = 0; + ad->state = _ST_FIRST; do_state(ad); - + return 0; } @@ -926,34 +1011,39 @@ static int app_terminate(void *data) set_pwlock_unlock_state(ad); if (ad->t) - tapi_exit(&ad->t); + pwlock_tapi_exit(&ad->t); if (ad->win) { utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_SELECT); + /* FIXME for blocking camera launching */ utilx_ungrab_key(ecore_x_display_get(), elm_win_xwindow_get(ad->win), KEY_CAMERA); evas_object_del(ad->win); } - if (ad->navi) { - evas_object_del(ad->navi); - ad->navi = NULL; + if (ad->elm_navigation_frame) { + evas_object_del(ad->elm_navigation_frame); + ad->elm_navigation_frame = NULL; + } + if (ad->layout_contents) { + evas_object_del(ad->layout_contents); + ad->layout_contents = NULL; } - if (ad->ly_main) { - evas_object_del(ad->ly_main); - ad->ly_main = NULL; + if (ad->layout_entry) { + evas_object_del(ad->layout_entry); + ad->layout_entry = NULL; } - if (ad->entry_layout) { - evas_object_del(ad->entry_layout); - ad->entry_layout = NULL; + if (ad->layout_second_entry) { + evas_object_del(ad->layout_second_entry); + ad->layout_second_entry = NULL; } - if (ad->entry_second_layout) { - evas_object_del(ad->entry_second_layout); - ad->entry_second_layout = NULL; + if (ad->elm_bg) { + evas_object_del(ad->elm_bg); + ad->elm_bg = NULL; } - if (ad->bg) { - evas_object_del(ad->bg); - ad->bg = NULL; + if (ad->elm_conform) { + evas_object_del(ad->elm_conform); + ad->elm_conform = NULL; } if (ad->idler) { ecore_idler_del(ad->idler); @@ -991,9 +1081,9 @@ int main(int argc, char *argv[]) if (argc > 1) { _DBG("argv[1]:%s ", argv[1]); - ad.running_status = atoi(argv[1]); + ad.is_exec_after_bootup = atoi(argv[1]); } else { - ad.running_status = 0; + ad.is_exec_after_bootup = 0; system("chmod 666 " LOGFILE); } diff --git a/src/tapi.c b/src/tapi.c index 232052a..6ebd96f 100755 --- a/src/tapi.c +++ b/src/tapi.c @@ -1,99 +1,104 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #include - -#include -#include -#include #include #include "util.h" #include "tapi.h" +#include "langs.h" #ifndef PACKAGE_NAME #define PACKAGE_NAME "org.tizen.pwlock" #endif -enum { - _L_UNSPEC = -1, - _L_AUTO, - _L_EN, - _L_DE, - _L_NL, - _L_ES, - _L_PT, - _L_EL, - _L_IT, - _L_FR, - _L_TR, - _L_KO, - _L_MAX, +static struct tapi_event tapi_events[] = { + {-1, TAPI_NOTI_MODEM_POWER, pwlock_tapi_noti_modem_power_cb,}, + {-1, TAPI_NOTI_SIM_STATUS, pwlock_tapi_noti_sim_status_cb,}, }; -static int _LP_L[] = { - TAPI_SIM_LP_GERMAN, _L_UNSPEC, - TAPI_SIM_LP_ENGLISH, _L_EN, - TAPI_SIM_LP_ITALIAN, _L_UNSPEC, - TAPI_SIM_LP_FRENCH, _L_UNSPEC, - TAPI_SIM_LP_SPANISH, _L_UNSPEC, - TAPI_SIM_LP_DUTCH, _L_UNSPEC, - TAPI_SIM_LP_SWEDISH, _L_UNSPEC, - TAPI_SIM_LP_DANISH, _L_UNSPEC, - TAPI_SIM_LP_PORTUGUESE, _L_UNSPEC, - TAPI_SIM_LP_FINNISH, _L_UNSPEC, - TAPI_SIM_LP_NORWEGIAN, _L_UNSPEC, - TAPI_SIM_LP_GREEK, _L_UNSPEC, - TAPI_SIM_LP_TURKISH, _L_UNSPEC, - TAPI_SIM_LP_HUNGARIAN, _L_UNSPEC, - TAPI_SIM_LP_POLISH, _L_UNSPEC, -}; +static int _pwlock_tapi_register_noti_events(struct tapi *t) +{ + int r; + int i; + unsigned int sid; -struct tapi { - struct tapi_event *evt; - int evt_sz; + if (t == NULL) + return -1; - void *cb_data; - void (*cb) (struct tapi_info *, void *); -}; + for (i = 0; i < t->evt_sz; i++) { + r = tel_register_noti_event(t->handle, t->evt[i].event, t->evt[i].tapi_notification_cb, t); + _DBG("TAPI register event : %s", t->evt[i].event); + if (r != TAPI_API_SUCCESS) { + _ERR("TAPI register event %s return %d", + t->evt[i].event, r); + return -1; + } + t->evt[i].sid = sid; + } -struct tapi_event { - unsigned int sid; - int event; -}; + return 0; +} -static struct tapi_event tapi_events[] = { - {-1, TAPI_EVENT_POWER_SERVICE_READY_IND,}, - {-1, TAPI_EVENT_SIM_VERIFY_SEC_CNF,}, - {-1, TAPI_EVENT_SIM_VERIFY_PUK_CNF,}, - {-1, TAPI_EVENT_SIM_STATUS_IND,}, - {-1, TAPI_EVENT_SIM_DISABLE_PERS_CNF,}, -}; +static void _pwlock_tapi_deregister_noti_events(struct tapi *t) +{ + int r; + int i; + + if (t == NULL) + return; + + + for (i = 0; i < t->evt_sz; i++) { + if (t->evt[i].sid == -1) + continue; -static void do_sim_status(const TelTapiEvent_t * evt, void *data) + r = tel_deregister_noti_event(t->handle, t->evt[i].event); + if (r == TAPI_API_SUCCESS) + t->evt[i].sid = -1; /* reset */ + else + _ERR("TAPI unregister sid %d return %d", t->evt[i].sid, + r); + } +} + +void pwlock_tapi_noti_modem_power_cb(TapiHandle *handle, const char *noti_id, void *data, void *user_data) { - struct tapi *t = data; - struct tapi_info ti; + ; +} - _DBG("Sim status: 0x%x", evt->Status); +void pwlock_tapi_noti_sim_status_cb(TapiHandle *handle, const char *noti_id, void *data, void *user_data) +{ + TelSimCardStatus_t *sim_status = data; + struct tapi *t = user_data; + struct pwlock_tapi_info ti; + + if (sim_status == NULL) { + _ERR("pwlock_tapi_noti_sim_status_cb:status is null"); + return ; + } + + _DBG("Sim status: 0x%x", *sim_status); memset(&ti, 0, sizeof(ti)); - switch (evt->Status) { + switch (*sim_status) { case TAPI_SIM_STATUS_SIM_PIN_REQUIRED: case TAPI_SIM_STATUS_SIM_PUK_REQUIRED: case TAPI_SIM_STATUS_SIM_NCK_REQUIRED: @@ -106,31 +111,39 @@ static void do_sim_status(const TelTapiEvent_t * evt, void *data) case TAPI_SIM_STATUS_CARD_ERROR: ti.st = SIM_ERROR; break; + case TAPI_SIM_STATUS_SIM_INITIALIZING: + ti.st = SIM_WAITING; + break; default: ti.st = SIM_OK; break; } - if (evt->Status == TAPI_SIM_STATUS_SIM_INITIALIZING - && (*(TelSimCardType_t *) evt->pData != 0)) - _DBG("Card type: %d", *(TelSimCardType_t *) evt->pData); - if (t->cb) t->cb(&ti, t->cb_data); - } -static void do_sim_verify(const TelTapiEvent_t * evt, void *data) +void pwlock_tapi_verify_sim_pins_and_puks_cb(TapiHandle *handle, int result, void *data, void *user_data) { - struct tapi *t = data; - struct tapi_info ti; - TelSimSecResult_t *res = (TelSimSecResult_t *) evt->pData; + TelSimPinOperationResult_t sec_rt = result; + TelSimSecResult_t *res = data; + struct tapi *t = user_data; + struct pwlock_tapi_info ti; + + if (t == NULL) { + _ERR("pwlock_tapi_verify_sim_pins_cb:struct tapi is null"); + return ; + } + if (res == NULL) { + _ERR("pwlock_tapi_verify_sim_pins_cb:res is null"); + return ; + } - _DBG("Sim verify sec: 0x%x", evt->Status); + _DBG("sim pin/puk check result: 0x%x", sec_rt); memset(&ti, 0, sizeof(ti)); - switch (evt->Status) { + switch (sec_rt) { case TAPI_SIM_OPERATION_TIMEOUT: _DBG("\tTimeout"); ti.st = SIM_ERROR; @@ -157,17 +170,17 @@ static void do_sim_verify(const TelTapiEvent_t * evt, void *data) ti.st = SIM_REQ_LOCK; ti.retry_cnt = res->retry_count; break; - case TAPI_SIM_NCK_REQUIRED: + case TAPI_SIM_NCK_REQUIRED: /**< Network Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_NCK; break; - case TAPI_SIM_NSCK_REQUIRED: + case TAPI_SIM_NSCK_REQUIRED: /**< Network Subset Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_NSCK; break; - case TAPI_SIM_SPCK_REQUIRED: + case TAPI_SIM_SPCK_REQUIRED: /**< Service Provider Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_SPCK; @@ -194,16 +207,27 @@ static void do_sim_verify(const TelTapiEvent_t * evt, void *data) t->cb(&ti, t->cb_data); } -static void do_sim_disable_pers(const TelTapiEvent_t * evt, void *data) +void pwlock_tapi_disable_sim_facility_cb(TapiHandle *handle, int result, void *data, void *user_data) { - struct tapi *t = data; - struct tapi_info ti; - TelSimSecResult_t *res = (TelSimSecResult_t *) evt->pData; + TelSimPinOperationResult_t sec_rt = result; + TelSimSecResult_t *res = data; + struct tapi *t = user_data; + struct pwlock_tapi_info ti; - _DBG("Sim disable PERS: 0x%x", evt->Status); + if (t == NULL) { + _ERR("pwlock_tapi_verify_sim_pins_cb:struct tapi is null"); + return ; + } + if (res == NULL) { + _ERR("pwlock_tapi_verify_sim_pins_cb:res is null"); + return ; + } + + _DBG("PER setting result: 0x%x", sec_rt); memset(&ti, 0, sizeof(ti)); - switch (evt->Status) { + + switch (sec_rt) { case TAPI_SIM_OPERATION_TIMEOUT: _DBG("\tTimeout"); ti.st = SIM_ERROR; @@ -212,17 +236,17 @@ static void do_sim_disable_pers(const TelTapiEvent_t * evt, void *data) _DBG("\tType: %d", res->type); ti.st = SIM_OK; break; - case TAPI_SIM_NCK_REQUIRED: + case TAPI_SIM_NCK_REQUIRED: /**< Network Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_NCK; break; - case TAPI_SIM_NSCK_REQUIRED: + case TAPI_SIM_NSCK_REQUIRED: /**< Network Subset Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_NSCK; break; - case TAPI_SIM_SPCK_REQUIRED: + case TAPI_SIM_SPCK_REQUIRED: /**< Service Provider Control Key Required */ _DBG("\tType: %d", res->type); _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_SPCK; @@ -237,135 +261,57 @@ static void do_sim_disable_pers(const TelTapiEvent_t * evt, void *data) _DBG("\tRetry: %d", res->retry_count); ti.st = SIM_REQ_LOCK; break; - } + /* TODO: retry or error??? */ if (t->cb) t->cb(&ti, t->cb_data); } -static void event_sim(const TelTapiEvent_t * evt, void *data) -{ - _DBG("TAPI EventType: %d", evt->EventType); - - switch (evt->EventType) { - case TAPI_EVENT_SIM_STATUS_IND: - do_sim_status(evt, data); - break; - case TAPI_EVENT_SIM_VERIFY_SEC_CNF: - case TAPI_EVENT_SIM_VERIFY_PUK_CNF: - do_sim_verify(evt, data); - break; - case TAPI_EVENT_SIM_DISABLE_PERS_CNF: - do_sim_disable_pers(evt, data); - break; - default: - _ERR("TAPI unhandle type: %d", evt->EventType); - break; - } -} - -static int event_cb(const TelTapiEvent_t * evt, void *data) -{ - _DBG("TAPI EventClass: %d", evt->EventClass); - - switch (evt->EventClass) { - case TAPI_EVENT_CLASS_SIM: - event_sim(evt, data); - break; - default: - _ERR("TAPI unregister event received: %d", evt->EventClass); - break; - } - return 0; -} - -static int _register_events(struct tapi *t) -{ - int r; - int i; - unsigned int sid; - - if (t == NULL) - return -1; - - for (i = 0; i < t->evt_sz; i++) { - r = tel_register_event(t->evt[i].event, &sid, event_cb, t); - _DBG("TAPI register event : %d", t->evt[i].event); - if (r != TAPI_API_SUCCESS) { - _ERR("TAPI register event %d return %d", - t->evt[i].event, r); - return -1; - } - t->evt[i].sid = sid; - } - - return 0; -} - -static void _unregister_events(struct tapi *t) -{ - int r; - int i; - - if (t == NULL) - return; - - for (i = 0; i < t->evt_sz; i++) { - if (t->evt[i].sid == -1) - continue; - - r = tel_deregister_event(t->evt[i].sid); - if (r == TAPI_API_SUCCESS) - t->evt[i].sid = -1; - else - _ERR("TAPI unregister sid %d return %d", t->evt[i].sid, - r); - } -} - static enum sim_stat check_sim(TelSimCardStatus_t stat) { enum sim_stat r; switch (stat) { - case TAPI_SIM_STATUS_CARD_NOT_PRESENT: - case TAPI_SIM_STATUS_CARD_REMOVED: + case TAPI_SIM_STATUS_CARD_NOT_PRESENT: /* Card not present. */ + case TAPI_SIM_STATUS_CARD_REMOVED: /* Card removed. */ r = SIM_EMPTY; break; - case TAPI_SIM_STATUS_SIM_INITIALIZING: + /* case 0xFF: // Sim is Initializing state. //the value is not in TelSimCardStatus_t, remove it */ + case TAPI_SIM_STATUS_SIM_INITIALIZING: /* Sim is Initializing state. */ r = SIM_WAITING; break; - case TAPI_SIM_STATUS_SIM_INIT_COMPLETED: + case TAPI_SIM_STATUS_SIM_INIT_COMPLETED: /* Sim Initialization ok. */ r = SIM_OK; break; - case TAPI_SIM_STATUS_SIM_PIN_REQUIRED: + case TAPI_SIM_STATUS_SIM_PIN_REQUIRED: /* PIN required state. */ r = SIM_REQ_PIN; break; - case TAPI_SIM_STATUS_SIM_PUK_REQUIRED: + case TAPI_SIM_STATUS_SIM_PUK_REQUIRED: /* PUK required state. */ r = SIM_REQ_PUK; break; - case TAPI_SIM_STATUS_CARD_BLOCKED: + case TAPI_SIM_STATUS_CARD_BLOCKED: /* PIN/PUK blocked(permanently blocked) */ r = SIM_BLOCKED; break; - case TAPI_SIM_STATUS_SIM_LOCK_REQUIRED: + case TAPI_SIM_STATUS_SIM_LOCK_REQUIRED: /* PH-SIM (phone-sim) locked state. */ r = SIM_REQ_LOCK; break; - case TAPI_SIM_STATUS_SIM_NCK_REQUIRED: + case TAPI_SIM_STATUS_SIM_NCK_REQUIRED: /* Network Control Key required state. */ r = SIM_REQ_NCK; break; - case TAPI_SIM_STATUS_SIM_NSCK_REQUIRED: + case TAPI_SIM_STATUS_SIM_NSCK_REQUIRED: /* Network Subset Control Key required state. */ r = SIM_REQ_NSCK; break; - case TAPI_SIM_STATUS_SIM_SPCK_REQUIRED: + case TAPI_SIM_STATUS_SIM_SPCK_REQUIRED: /* Service Provider Control Key required state. */ r = SIM_REQ_SPCK; break; - case TAPI_SIM_STATUS_SIM_CCK_REQUIRED: + case TAPI_SIM_STATUS_SIM_CCK_REQUIRED: /* Corporate Control Key required state. */ r = SIM_REQ_CCK; break; - case 0xff: + case 0xff: /* for tapi default value, timing issue */ r = SIM_RETRY; break; - case TAPI_SIM_STATUS_CARD_ERROR: + /* TODO: implement more locks... */ + case TAPI_SIM_STATUS_CARD_ERROR: /* Bad card , On the fly SIM gone bad. */ default: r = SIM_ERROR; break; @@ -373,7 +319,7 @@ static enum sim_stat check_sim(TelSimCardStatus_t stat) return r; } -enum sim_stat tapi_check_sim(int *changed) +enum sim_stat pwlock_tapi_check_sim(struct tapi *t, int *changed) { TapiResult_t r = TAPI_API_SUCCESS; int card_changed = 0; @@ -381,9 +327,10 @@ enum sim_stat tapi_check_sim(int *changed) TelSimCardStatus_t st = 0x00; _DBG("Enum size: %d", sizeof(st)); - r = tel_get_sim_init_info(&st, &card_changed); + r = tel_get_sim_init_info(t->handle, &st, &card_changed); + + _DBG("tel_get_sim_init_info return %d, sim state: %d", r, st); - _DBG("Get sim status return %d", r); if (r == TAPI_API_SUCCESS) { *changed = card_changed; _DBG("Get tapi sim status: 0x%x card changed: %d", st, @@ -405,21 +352,7 @@ enum sim_stat tapi_check_sim(int *changed) return res; } -int tapi_is_ready(void) -{ - int r; - int ready; - - r = tel_check_service_ready(&ready); - if (r != TAPI_API_SUCCESS) { - _ERR("TAPI check ready error %d", r); - return 0; - } - _DBG("Tapi ready status: %d", ready); - return ready; -} - -int tapi_ready_check(void) +int pwlock_tapi_ready_check(void) { int api_ret = 0; int vconf_val = 0; @@ -428,6 +361,12 @@ int tapi_ready_check(void) api_ret = vconf_get_int(VCONFKEY_TELEPHONY_TAPI_STATE, &vconf_val); if (api_ret != 0) { + /* + if appn check very fast before telephony boot up, telephony can not be ready yet + in this point, appn should register vconf callback fuction with timer + timer will be used to waiting telephony boot up with limitation. + user should set proper time. (currently it`s up to experience) + */ _DBG("fail to get vconf key value. this means telephony does not start"); } else { if (vconf_val == VCONFKEY_TELEPHONY_TAPI_STATE_NONE) { @@ -439,10 +378,9 @@ int tapi_ready_check(void) return vconf_val; } -static int verify_pins(char *code, int type) +static int verify_pins(struct tapi *t, char *code, int type) { int r; - int req_id; TelSimSecPw_t pin; memset(&pin, 0, sizeof(pin)); @@ -450,7 +388,10 @@ static int verify_pins(char *code, int type) pin.pw_len = strlen(code); pin.pw = (unsigned char *)code; - r = tel_verifiy_sim_pins(&pin, &req_id); + _DBG("SIM PIN/PUK verifying..."); + + r = tel_verifiy_sim_pins(t->handle, &pin, pwlock_tapi_verify_sim_pins_and_puks_cb, t); + if (r != TAPI_API_SUCCESS) { _ERR("TAPI verify pins error %d", r); return -1; @@ -459,26 +400,31 @@ static int verify_pins(char *code, int type) return 0; } -int tapi_verify_pins(char *code) +int pwlock_tapi_verify_pins(struct tapi *t, char *code) { + if (t == NULL) + return -1; + if (code == NULL || code[0] == '\0') return -1; - return verify_pins(code, TAPI_SIM_PTYPE_PIN1); + return verify_pins(t, code, TAPI_SIM_PTYPE_PIN1); } -int tapi_verify_lock(char *code) +int pwlock_tapi_verify_lock(struct tapi *t, char *code) { + if (t == NULL) + return -1; + if (code == NULL || code[0] == '\0') return -1; - return verify_pins(code, TAPI_SIM_PTYPE_SIM); + return verify_pins(t, code, TAPI_SIM_PTYPE_SIM); } -int tapi_verify_puks(char *code, char *newcode) +int pwlock_tapi_verify_puks(struct tapi *t, char *code, char *newcode) { int r; - int req_id; TelSimSecPw_t puk, pin; if (code == NULL || code[0] == '\0' @@ -495,46 +441,53 @@ int tapi_verify_puks(char *code, char *newcode) pin.pw_len = strlen(newcode); pin.pw = (unsigned char *)newcode; - r = tel_verify_sim_puks(&puk, &pin, &req_id); + r = tel_verify_sim_puks(t->handle, &puk, &pin, pwlock_tapi_verify_sim_pins_and_puks_cb, t); if (r != TAPI_API_SUCCESS) return -1; return 0; } -int tapi_disable_net_pers(char *code, int type) +int pwlock_tapi_disable_net_pers(struct tapi *t, char *code, TelSimLockType_t type) { + int err_code = TAPI_API_SUCCESS; if (code == NULL || code[0] == '\0') return -1; - int request_id = 0; - int err_code = TAPI_API_SUCCESS; - TelSimPersPw_t lock_pers = { 0, }; - lock_pers.type = type; - lock_pers.pw_len = strlen(code); - lock_pers.pw = (unsigned char *)code; + TelSimFacilityPw_t facility_pw = { 0, }; + facility_pw.lock_type = type; + facility_pw.pw = (unsigned char *)code; + facility_pw.pw_len = strlen(code); - err_code = tel_disable_sim_personalization(&lock_pers, &request_id); + err_code = tel_disable_sim_facility(t->handle, &facility_pw, pwlock_tapi_disable_sim_facility_cb, t); if (err_code != TAPI_API_SUCCESS) { _ERR("TAPI API FAIL: Error Code [0x%x]", err_code); return -1; } + /* WAIT EVENT RESPONSE FROM HERE */ return 0; } -struct tapi *tapi_init(void (*cb) (struct tapi_info *, void *), void *data) +struct tapi *pwlock_tapi_init(void (*cb) (struct pwlock_tapi_info *, void *), void *data) { int r; + struct appdata *ad = (struct appdata *)data; struct tapi *t; + TapiHandle *tapi_handle = NULL; + + if (ad == NULL) { + _ERR("TAPI init error: ad is null"); + return NULL; + } if (cb == NULL) return NULL; - r = tel_init(); - if (r != TAPI_API_SUCCESS) { - _ERR("TAPI init error: %d", r); + tapi_handle = tel_init(NULL); + if (tapi_handle == NULL) { + _ERR("TAPI init error"); return NULL; } _DBG("TAPI init"); @@ -544,105 +497,42 @@ struct tapi *tapi_init(void (*cb) (struct tapi_info *, void *), void *data) _ERR("TAPI alloc data error"); goto err; } + t->handle = tapi_handle; t->evt = tapi_events; t->evt_sz = sizeof(tapi_events) / sizeof(tapi_events[0]); t->cb = cb; t->cb_data = data; - r = _register_events(t); + r = _pwlock_tapi_register_noti_events(t); if (r == -1) { _ERR("TAPI register events error"); goto err; } - r = tel_register_app_name(PACKAGE_NAME); - if (r != TAPI_API_SUCCESS) { - _ERR("TAPI register name error"); - goto err; - } - return t; err: if (t) { - _unregister_events(t); + _pwlock_tapi_deregister_noti_events(t); free(t); } - tel_deinit(); + if (tapi_handle != NULL) { + tel_deinit(tapi_handle); + } return NULL; } -void tapi_exit(struct tapi **t) +void pwlock_tapi_exit(struct tapi **t) { if (t == NULL || *t == NULL) return; - _unregister_events(*t); - free(*t); - *t = NULL; - - tel_deinit(); -} - -static int get_lang(int v) -{ - int i; + _pwlock_tapi_deregister_noti_events(*t); - for (i = 0; i < sizeof(_LP_L) / sizeof(_LP_L[0]); i = i + 2) { - if (_LP_L[i] == v) - return _LP_L[i + 1]; + if ((*t)->handle != NULL) { + tel_deinit((*t)->handle); } - return _L_UNSPEC; -} - -int tapi_get_language(int *lang) -{ - int i; - int r; - int v = _L_UNSPEC; - TelSimLanguageInfo_t l; - - r = tel_get_sim_language(&l); - if (r != TAPI_API_SUCCESS) { - r = -1; - _ERR("TAPI get sim language"); - } else - r = 0; - - for (i = 0; i < l.LpCount; i++) { - _DBG("TAPI sim lang: %d", l.Lp[i]); - v = get_lang(l.Lp[i]); - if (v != _L_UNSPEC) - break; - } - - if (v == _L_UNSPEC) { - _ERR("TAPI unknown language code"); - r = -1; - } else - *lang = v; - - return r; -} - -void enable_net_pers() -{ - _DBG("Lock Personalisation MCC+MNC 5"); - int request_id = 0; - int err_code = TAPI_API_SUCCESS; - unsigned char *temp = NULL; - - TelSimPersPw_t lock_pers = { 0, }; - lock_pers.type = TAPI_SIM_PERS_NET; - lock_pers.pw_len = 8; - temp = (unsigned char *)malloc(8 + 1); - - if (NULL == temp) { - return; - } - lock_pers.pw = temp; - memcpy(lock_pers.pw, "12345678", 8); - - err_code = tel_enable_sim_personalization(&lock_pers, &request_id); + free(*t); + *t = NULL; } diff --git a/src/ui-callback.c b/src/ui-callback.c new file mode 100755 index 0000000..6c80883 --- /dev/null +++ b/src/ui-callback.c @@ -0,0 +1,225 @@ +/* + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#include +#include +#include + +#include "pwlock.h" +#include "util.h" +#include "ui-callback.h" + +void pwlock_greeting_next_cb(void *data, Evas_Object *obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + if (ad->is_no_sim == 1) { + do_state_directly(_ST_NOSIM, ad); + } else { + do_state_directly(_ST_TIME, ad); + } +} + +void pwlock_nosim_skip_cb(void *data, Evas_Object * obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + do_state_directly(_ST_TIME, ad); +} + +void pwlock_tutorial_prev_cb(void *data, Evas_Object *obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + do_state_directly(_ST_CONNECTION, ad); +} + +void pwlock_tutorial_next_cb(void *data, Evas_Object *obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + + do_state_directly(_ST_EXIT, ad); +} + +void pwlock_ug_connection_layout_cb(ui_gadget_h ug, enum ug_mode mode, + void *priv) { + struct appdata *ad = (struct appdata *) priv; + Evas_Object *base; + _DBG("%s begin", __func__); + if (!ug || !priv) + return; + + base = (Evas_Object *) ug_get_layout(ug); + if (!base) { + _DBG("base layout null!\n"); + return; + } + + _DBG("%s,%d", __func__, __LINE__); + ad->ug_btn_evt_state = UG_BUTTON_STATE_NONE; + switch (mode) { + case UG_MODE_FULLVIEW: + evas_object_size_hint_weight_set(base, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_win_resize_object_add(ug_get_window(), base); + evas_object_show(base); + break; + default: + break; + } + _DBG("%s end", __func__); +} + +void pwlock_ug_connection_result_cb(ui_gadget_h ug, service_h service, + void *priv) { + _DBG("function=%s", __func__); + struct appdata *ad = NULL; + + if (!ug || !priv || !service) { + return; + } + char *retv = NULL; + ad = (struct appdata *) priv; + _DBG("ad->state=%d", ad->state); + + service_get_extra_data(service, "result", &retv); + + if (retv && !strcmp(retv, "lbutton_click")) { + ad->ug_btn_evt_state = UG_BUTTON_STATE_PREV_CLICKED; + } + if (retv && !strcmp(retv, "rbutton_click")) { + ad->ug_btn_evt_state = UG_BUTTON_STATE_NEXT_CLICKED; + } +} + +void pwlock_ug_connection_destroy_cb(ui_gadget_h ug, void *priv) { + _DBG("%s, %d begin", __func__, __LINE__); + + struct appdata *ad = NULL; + + if (!ug || !priv) { + return; + } + ad = (struct appdata *) priv; + + _DBG("ad->ug_btn_evt_state=%d", ad->ug_btn_evt_state); + + switch (ad->ug_btn_evt_state) { + case UG_BUTTON_STATE_NEXT_CLICKED: + do_state_directly(_ST_FINISH, ad); + ug_destroy(ug); + break; + case UG_BUTTON_STATE_PREV_CLICKED: + do_state_directly(_ST_TIME, ad); + ug_destroy(ug); + break; + case UG_BUTTON_STATE_NONE: + break; + } + //ad->ug_btn_evt_state = UG_BUTTON_STATE_NONE; +} + +void pwlock_popup_exit_ok_cb(void *data, Evas_Object * e, void *ei) +{ + int i = (int)ei; + struct appdata *ad = (struct appdata *)data; + + _DBG("popup exit rsp: %d\n", i); + + if (NULL == ad) { + return; + } + + if (ad->popup) { + evas_object_del(ad->popup); + ad->popup = NULL; + } + if (ad->current_ug) { + ug_destroy(ad->current_ug); + } + if (ad->msg) { + free(ad->msg); + ad->msg = NULL; + } + + vconf_set_bool(VCONFKEY_PWLOCK_FIRST_BOOT, 0); + + ad->state = _ST_EXIT; + do_state(ad); +} + +void pwlock_popup_exit_cancel_cb(void *data, Evas_Object * e, void *ei) +{ + int i = (int)ei; + struct appdata *ad = (struct appdata *)data; + + _DBG("popup rsp: %d\n", i); + + if (NULL == ad) { + return; + } + + if (ad->popup) { + evas_object_del(ad->popup); + ad->popup = NULL; + } + if (ad->msg) { + free(ad->msg); + ad->msg = NULL; + } +} + +void pwlock_finish_prev_cb(void *data, Evas_Object *obj, void *e) +{ + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + // temp use ug_btn_evt_state variable + ad->ug_btn_evt_state = UG_BUTTON_STATE_PREV_CLICKED; + ad->state = _ST_CONNECTION; + do_state(ad); +} + +void pwlock_finish_cb(void *data, Evas_Object *obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + vconf_set_bool(VCONFKEY_PWLOCK_FIRST_BOOT, 0); + + do_state_directly(_ST_EXIT, ad); +} diff --git a/src/ui.c b/src/ui.c index 67e1bb0..7b2c246 100755 --- a/src/ui.c +++ b/src/ui.c @@ -1,36 +1,43 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #include #include #include #include -#include +#include +#include #include "pwlock.h" #include "util.h" #include "tapi.h" #include "ui.h" +#include "langs.h" +#include "ui-callback.h" #define ENTRY_MAX 35 static Elm_Gen_Item_Class itc_label1, itc_entry1, itc_label2, itc_entry2; -static void _ug_layout_cb(struct ui_gadget *ug, enum ug_mode mode, void *priv); -static void _ug_destroy_cb(struct ui_gadget *ug, void *priv); +static Elm_Gen_Item_Class sep_itc; +static Elm_Gen_Item_Class nosim_icon_itc, nosim_text_itc, sim_retry_btn_itc; +static void _ug_layout_cb(ui_gadget_h ug, enum ug_mode mode, void *priv); +static void _ug_destroy_cb(ui_gadget_h ug, void *priv); static Evas_Object *_create_bg(Evas_Object * win); static void _destroy_previous_ugs(void *data); static void _focused_cb(void *data, Evas_Object * obj, void *event_info); @@ -41,7 +48,6 @@ static Evas_Object *_create_editfield(Evas_Object * parent); static Evas_Object *_editfield_entry_get(Evas_Object * parent); static int _ug_destroy = 0; -static Elm_Object_Item *item[2] = { 0, }; static int _header_idx[] = { _UI_PIN, IDS_IDLE_HEADER_PIN_LOCK, @@ -54,6 +60,7 @@ static int _header_idx[] = { _UI_NETWORK_LOCK_NSCK, IDS_IDLE_HEADER_NETWORK_LOCK, _UI_NETWORK_LOCK_SPCK, IDS_IDLE_HEADER_NETWORK_LOCK, _UI_NETWORK_LOCK_CCK, IDS_IDLE_HEADER_NETWORK_LOCK, + _UI_FINISH, IDS_STU_POP_SETUP_COMPLETE, }; static int _tit_idx[] = { @@ -108,10 +115,11 @@ static char *_get_tip(int ui_type) } static Evas_Object *_create_bg(Evas_Object * win) -{ +{ /* nbeat */ Evas_Object *bg = elm_bg_add(win); evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + evas_object_color_set(bg, 249, 249, 249, 255); elm_win_resize_object_add(win, bg); evas_object_show(bg); return bg; @@ -127,6 +135,7 @@ static Evas_Object *_layout_add(Evas_Object * parent) return NULL; } + /* Apply the nbeat layout style */ elm_layout_theme_set(ly, "layout", "application", "default"); evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND, @@ -147,32 +156,55 @@ static Evas_Object *_create_layout(struct appdata *ad) return ly; } +Evas_Object *pwlock_add_layout_from_edj(Evas_Object *parent, const char *file, + const char *group) { + Evas_Object *layout = NULL; + Eina_Bool ret = EINA_FALSE; + + if (parent == NULL) { + _ERR("parent is NULL"); + return NULL; + } + + layout = elm_layout_add(parent); + if (layout == NULL) { + _ERR("layout is NULL"); + return NULL; + } + + ret = elm_layout_file_set(layout, file, group); + _DBG("File:%s, Group:%s", file, group); + if (ret != EINA_TRUE) { + _DBG("Error loading File:%s, Group:%s", file, group); + evas_object_del(layout); + return NULL; + } + evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + evas_object_show(layout); + + return layout; +} + static void init_ui(struct appdata *ad) { Evas_Object *eo; - Evas_Object *bg; - ad->bg = _create_bg(ad->win); + ad->elm_bg = _create_bg(ad->win); - ad->ly = _create_layout(ad); - if (!ad->ly) + ad->layout_main = _create_layout(ad); + if (!ad->layout_main) return; - eo = elm_naviframe_add(ad->ly); + eo = elm_naviframe_add(ad->layout_main); if (!eo) { _ERR("UI navi add error"); return; } - elm_object_part_content_set(ad->ly, "elm.swallow.content", eo); + elm_object_part_content_set(ad->layout_main, "elm.swallow.content", eo); evas_object_show(eo); - ad->navi = eo; - - bg = evas_object_rectangle_add(evas_object_evas_get(ad->win)); - evas_object_size_hint_weight_set(bg, EVAS_HINT_EXPAND, - EVAS_HINT_EXPAND); - evas_object_color_set(bg, 0, 0, 0, 255); - elm_win_resize_object_add(ad->win, bg); + ad->elm_navigation_frame = eo; } void show_msg(struct appdata *ad, int strid) @@ -202,7 +234,7 @@ void show_msg(struct appdata *ad, int strid) ad->msg = strdup(msg); - if (!ad->ly_main) + if (!ad->layout_contents) return; remove_waiting_popup(ad); show_popup(ad, msg, EINA_TRUE); @@ -237,7 +269,7 @@ static void do_UI_PUK_CNF(struct appdata *ad) const char *s = NULL; _DBG("%s", __func__); - s = _entry_get(ad->entry_layout); + s = _entry_get(ad->layout_entry); if (s && ad->pin_str && !strcmp(ad->pin_str, s)) { do_state(ad); @@ -247,6 +279,7 @@ static void do_UI_PUK_CNF(struct appdata *ad) _set_str(&ad->pin_str, NULL); show_msg(ad, IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN); + /* FIXME popup should be top display, so load main should be called after show msg.. */ load_main(ad, _UI_PUK_PIN); } @@ -267,7 +300,7 @@ static int _check_input_string(int view_type, const char *entry_str) if (lenstr < PWLOCK_PASSWORD_MIN_LENGTH || lenstr > max_len) { return IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED; } - return 0; + return 0; /* means fit for the rule */ } static void response_cb(void *data, Evas_Object * obj, void *event_info) @@ -280,6 +313,7 @@ static void response_cb(void *data, Evas_Object * obj, void *event_info) if (((int)event_info != 5) && (obj != NULL)) { evas_object_del(obj); } + /* clear_entry(ad); */ } static void _block_clicked_cb(void *data, Evas_Object * obj, void *event_info) @@ -300,11 +334,12 @@ void _show_popup(void *data, char *msg_str) ecore_imf_context_input_panel_hide(elm_entry_imf_context_get (_editfield_entry_get - (ad->entry_layout))); + (ad->layout_entry))); popup = elm_popup_add(ad->win); evas_object_size_hint_weight_set(popup, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); + /* FIXME */ x_win = elm_win_xwindow_get(ad->win); ecore_x_netwm_window_type_set(x_win, ECORE_X_WINDOW_TYPE_DIALOG); @@ -314,10 +349,12 @@ void _show_popup(void *data, char *msg_str) elm_popup_timeout_set(popup, 3); elm_object_text_set(popup, msg_str); elm_object_part_text_set(popup, "title", "Information"); + button = elm_button_add(popup); elm_object_text_set(button, pwlock_get_string(IDS_COM_SK_OK)); elm_object_part_content_set(popup, "button1", button); evas_object_smart_callback_add(button, "clicked", response_cb, popup); + evas_object_show(popup); } @@ -327,13 +364,13 @@ static void _imf_context_input_panel_hide(void *data) Ecore_IMF_Context *imf_context = NULL; Ecore_IMF_Context *imf_context_second = NULL; imf_context = - elm_entry_imf_context_get(_editfield_entry_get(ad->entry_layout)); + elm_entry_imf_context_get(_editfield_entry_get(ad->layout_entry)); if (imf_context) ecore_imf_context_input_panel_hide(imf_context); imf_context_second = elm_entry_imf_context_get(_editfield_entry_get - (ad->entry_second_layout)); + (ad->layout_second_entry)); if (imf_context_second) ecore_imf_context_input_panel_hide(imf_context_second); } @@ -343,21 +380,19 @@ static void _done_button_changed(void *data, Evas_Object * obj, void *e) struct appdata *ad = data; int length = - strlen(elm_entry_entry_get(_editfield_entry_get(ad->entry_layout))); + strlen(elm_entry_entry_get(_editfield_entry_get(ad->layout_entry))); if (length == 0) { - elm_object_item_disabled_set(item[1], EINA_TRUE); - elm_object_disabled_set(ad->button_done, EINA_TRUE); + elm_object_disabled_set(ad->elm_button_done, EINA_TRUE); } else { - elm_object_item_disabled_set(item[1], EINA_FALSE); - elm_object_disabled_set(ad->button_done, EINA_FALSE); + elm_object_disabled_set(ad->elm_button_done, EINA_FALSE); } - if (elm_object_focus_get(ad->entry_layout)) { - if (elm_entry_is_empty(_editfield_entry_get(ad->entry_layout))) { - elm_object_signal_emit(ad->entry_layout, + if (elm_object_focus_get(ad->layout_entry)) { + if (elm_entry_is_empty(_editfield_entry_get(ad->layout_entry))) { + elm_object_signal_emit(ad->layout_entry, "elm,state,eraser,hide", "elm"); } else { - elm_object_signal_emit(ad->entry_layout, + elm_object_signal_emit(ad->layout_entry, "elm,state,eraser,show", "elm"); } } @@ -376,8 +411,8 @@ static void _done_cb(void *data, Evas_Object * obj, void *e) case _UI_SIM_LOCK: show_waiting_popup(ad, pwlock_get_string - (IDS_IDLE_BODY_CHECKING_SIM_STATUS)); - _set_str(&ad->entry_str, _entry_get(ad->entry_layout)); + (IDS_IDLE_POP_CHECKING_SIM_CARD_ING)); + _set_str(&ad->entry_str, _entry_get(ad->layout_entry)); _DBG("entry string: [%s]", ad->entry_str); ret = _check_input_string(ad->ui_type, ad->entry_str); if (ret == 0) { @@ -389,10 +424,11 @@ static void _done_cb(void *data, Evas_Object * obj, void *e) } break; case _UI_PUK: - _set_str(&ad->entry_str, _entry_get(ad->entry_layout)); + _set_str(&ad->entry_str, _entry_get(ad->layout_entry)); _DBG("entry string: [%s]", ad->entry_str); ret = _check_input_string(ad->ui_type, ad->entry_str); if (ret == 0) { + /* load_main(ad, _UI_PUK_PIN); */ pwlock_destroy(ad); show_puk_pin(ad); } else { @@ -404,14 +440,14 @@ static void _done_cb(void *data, Evas_Object * obj, void *e) case _UI_PUK_PIN: show_waiting_popup(ad, pwlock_get_string - (IDS_IDLE_BODY_CHECKING_SIM_STATUS)); - _set_str(&ad->pin_str, _entry_get(ad->entry_layout)); + (IDS_IDLE_POP_CHECKING_SIM_CARD_ING)); + _set_str(&ad->pin_str, _entry_get(ad->layout_entry)); _DBG("entry string: [%s]", ad->pin_str); ret = _check_input_string(ad->ui_type, ad->pin_str); if (ret == 0) { if (0 == - strcmp(_entry_get(ad->entry_layout), - _entry_get(ad->entry_second_layout))) { + strcmp(_entry_get(ad->layout_entry), + _entry_get(ad->layout_second_entry))) { do_UI_PUK_CNF(ad); } else { remove_waiting_popup(ad); @@ -427,10 +463,10 @@ static void _done_cb(void *data, Evas_Object * obj, void *e) case _UI_PUK_CNF: show_waiting_popup(ad, pwlock_get_string - (IDS_IDLE_BODY_CHECKING_SIM_STATUS)); + (IDS_IDLE_POP_CHECKING_SIM_CARD_ING)); ret = _check_input_string(ad->ui_type, - _entry_get(ad->entry_layout)); + _entry_get(ad->layout_entry)); if (ret == 0) { do_UI_PUK_CNF(ad); } else { @@ -443,7 +479,7 @@ static void _done_cb(void *data, Evas_Object * obj, void *e) case _UI_NETWORK_LOCK_NSCK: case _UI_NETWORK_LOCK_SPCK: case _UI_NETWORK_LOCK_CCK: - _set_str(&ad->entry_str, _entry_get(ad->entry_layout)); + _set_str(&ad->entry_str, _entry_get(ad->layout_entry)); _DBG("entry string: [%s]", ad->entry_str); ret = _check_input_string(ad->ui_type, ad->entry_str); if (ret == 0) { @@ -463,12 +499,27 @@ static void _dial_cb(void *data, Evas_Object * obj, void *e) _DBG("%s,%d", __func__, __LINE__); struct appdata *ad = data; - elm_object_item_disabled_set(item[0], EINA_TRUE); - elm_object_disabled_set(ad->button_dial, EINA_TRUE); - ad->previous_ui_type = ad->ui_type; - ad->ui_type = _UI_DIALER; + /* apply button insensitive */ + elm_object_disabled_set(ad->elm_button_dial, EINA_TRUE); _imf_context_input_panel_hide(ad); - show_dialer(ad); + + ad->previous_ui_type = ad->ui_type; + + if(ad->layout_entry) { + elm_entry_input_panel_enabled_set(_editfield_entry_get(ad->layout_entry), + EINA_FALSE); + } + + if(ad->layout_second_entry) { + elm_entry_input_panel_enabled_set(_editfield_entry_get(ad->layout_second_entry), + EINA_FALSE); + } + + if (show_dialer(ad) == 0) { + elm_object_disabled_set(ad->elm_button_dial, EINA_FALSE); + ad->ui_type = ad->previous_ui_type; + return; + } } static void _pp_rsp_ok_cb(void *data, Evas_Object * e, void *ei) @@ -490,19 +541,7 @@ static void _pp_rsp_ok_cb(void *data, Evas_Object * e, void *ei) ad->cancel_setup = 1; if (ad->current_ug) { ug_destroy(ad->current_ug); - if ((ad->ui_type == _UI_LANG) - || (ad->ui_type == _UI_KEYBOARD)) { - if (ad->first_boot) { - if (ad->date_and_time_settings_loaded) - ad->state = _ST_EXIT; - else - ad->state = _ST_TAPI_INIT; - } else { - ad->state = _ST_EXIT; - } - } else { - ad->state = _ST_EXIT; - } + ad->state = _ST_EXIT; do_state(ad); } @@ -514,12 +553,12 @@ static void _pp_rsp_ok_cb(void *data, Evas_Object * e, void *ei) ad->pin_changed = 0; } } - if (ad->ui_type == _UI_LANG || ad->ui_type == _UI_TIME || ad->ui_type == _UI_KEYBOARD || ad->ui_type == _UI_DIALER) { + if (ad->ui_type == _UI_LANG || ad->ui_type == _UI_TIME || ad->ui_type == _UI_DIALER) { /* for IMF show problems */ return; } - if (ad->entry_layout) { - evas_object_show(_editfield_entry_get(ad->entry_layout)); - elm_object_focus_set(_editfield_entry_get(ad->entry_layout), + if (ad->layout_entry) { + evas_object_show(_editfield_entry_get(ad->layout_entry)); + elm_object_focus_set(_editfield_entry_get(ad->layout_entry), EINA_TRUE); } if (ad->msg) { @@ -553,12 +592,12 @@ static void _pp_rsp_cancel_cb(void *data, Evas_Object * e, void *ei) ad->pin_changed = 0; } } - if (ad->ui_type == _UI_LANG || ad->ui_type == _UI_TIME || ad->ui_type == _UI_KEYBOARD || ad->ui_type == _UI_DIALER) { + if (ad->ui_type == _UI_LANG || ad->ui_type == _UI_TIME || ad->ui_type == _UI_DIALER) { /* for IMF show problems */ return; } - if (ad->entry_layout) { - evas_object_show(_editfield_entry_get(ad->entry_layout)); - elm_object_focus_set(_editfield_entry_get(ad->entry_layout), + if (ad->layout_entry) { + evas_object_show(_editfield_entry_get(ad->layout_entry)); + elm_object_focus_set(_editfield_entry_get(ad->layout_entry), EINA_TRUE); } if (ad->msg) { @@ -578,30 +617,12 @@ static void _destroy_previous_ugs(void *data) switch (ad->ui_type) { case _UI_LANG: - if (ad->keyboard_ug) { - ug_destroy(ad->keyboard_ug); - ad->keyboard_ug = NULL; - } if (ad->date_ug) { ug_destroy(ad->date_ug); ad->date_ug = NULL; } break; case _UI_TIME: - if (ad->keyboard_ug) { - ug_destroy(ad->keyboard_ug); - ad->keyboard_ug = NULL; - } - if (ad->language_ug) { - ug_destroy(ad->language_ug); - ad->language_ug = NULL; - } - break; - case _UI_KEYBOARD: - if (ad->date_ug) { - ug_destroy(ad->date_ug); - ad->date_ug = NULL; - } if (ad->language_ug) { ug_destroy(ad->language_ug); ad->language_ug = NULL; @@ -616,15 +637,16 @@ static void _destroy_previous_ugs(void *data) ug_destroy(ad->language_ug); ad->language_ug = NULL; } - if (ad->keyboard_ug) { - ug_destroy(ad->keyboard_ug); - ad->keyboard_ug = NULL; + if (ad->connection_ug) { + ug_destroy(ad->connection_ug); + ad->connection_ug = NULL; } break; } _DBG("%s,%d", __func__, __LINE__); + /* when last UG or SIM changed with fisrt UG, destroy the view */ if (((ad->sim_changed == 1) && (ad->ui_type == _UI_LANG)) || (ad->ui_type == _UI_TIME)) { _DBG("%s,%d", __func__, __LINE__); @@ -681,13 +703,11 @@ static Evas_Object *_create_editfield(Evas_Object * parent) elm_entry_scrollable_set(entry, EINA_TRUE); elm_entry_single_line_set(entry, EINA_TRUE); elm_entry_password_set(entry, EINA_TRUE); - elm_object_focus_set(entry, EINA_TRUE); elm_entry_input_panel_layout_set(entry, ELM_INPUT_PANEL_LAYOUT_NUMBERONLY); elm_entry_markup_filter_append(entry, elm_entry_filter_limit_size, &limit_filter_data); evas_object_show(entry); - elm_object_focus_set(entry, EINA_TRUE); evas_object_smart_callback_add(entry, "focused", _focused_cb, layout); evas_object_smart_callback_add(entry, "unfocused", _unfocused_cb, layout); @@ -696,6 +716,7 @@ static Evas_Object *_create_editfield(Evas_Object * parent) elm_object_part_text_set(layout, "elm.guidetext", ""); elm_object_signal_callback_add(layout, "elm,eraser,clicked", "elm", _eraser_clicked_cb, entry); + elm_object_focus_set(entry, EINA_TRUE); return layout; } @@ -755,7 +776,7 @@ static Evas_Object *_gl_icon_get1(void *data, Evas_Object * obj, "changed", _done_button_changed, ad); - ad->entry_layout = layout; + ad->layout_entry = layout; return layout; @@ -795,7 +816,7 @@ static Evas_Object *_gl_icon_get2(void *data, Evas_Object * obj, "changed", _entry_changed_cb, layout); - ad->entry_second_layout = layout; + ad->layout_second_entry = layout; return layout; @@ -832,94 +853,77 @@ static void _list_set_styles() void load_main(struct appdata *ad, int ui_type) { - Evas_Object *ly = NULL; Evas_Object *bt_done = NULL; Evas_Object *bt_dial = NULL; - Evas_Object *null_image = NULL; Evas_Object *genlist = NULL; - Evas_Object *controlbar = NULL; Elm_Object_Item *genlist_item = NULL; Elm_Object_Item *navi_it = NULL; _DBG("%s", __func__); - ly = _create_conformant(ad->win); + ad->layout_contents = pwlock_add_layout_from_edj(ad->elm_navigation_frame, EDJFILE, "page/genlist"); - genlist = elm_genlist_add(ad->navi); + genlist = elm_genlist_add(ad->layout_main); + elm_object_part_content_set(ad->layout_contents, "swl/genlist", genlist); _list_set_styles(); genlist_item = elm_genlist_item_append(genlist, &itc_label1, (void *)ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); - elm_genlist_item_select_mode_set(genlist_item, EINA_TRUE); + elm_genlist_item_select_mode_set(genlist_item, ELM_OBJECT_SELECT_MODE_NONE); genlist_item = elm_genlist_item_append(genlist, &itc_entry1, (void *)ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); - elm_genlist_item_select_mode_set(genlist_item, EINA_TRUE); + elm_genlist_item_select_mode_set(genlist_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); if (_UI_PUK_PIN == ui_type) { genlist_item = elm_genlist_item_append(genlist, &itc_label2, (void *)ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); - elm_genlist_item_select_mode_set(genlist_item, EINA_TRUE); + elm_genlist_item_select_mode_set(genlist_item, ELM_OBJECT_SELECT_MODE_NONE); genlist_item = elm_genlist_item_append(genlist, &itc_entry2, (void *)ad, NULL, ELM_GENLIST_ITEM_NONE, NULL, NULL); - elm_genlist_item_select_mode_set(genlist_item, EINA_TRUE); + elm_genlist_item_select_mode_set(genlist_item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY); } - evas_object_show(genlist); - elm_object_content_set(ly, genlist); + ad->elm_conform = _create_conformant(ad->win); + elm_object_content_set(ad->elm_conform, ad->layout_contents); _DBG("load_main ad->ui_type = %d", ad->ui_type); - controlbar = elm_toolbar_add(ad->navi); - if (controlbar == NULL) - return; - - elm_toolbar_shrink_mode_set(controlbar, ELM_TOOLBAR_SHRINK_EXPAND); - - bt_dial = elm_button_add(controlbar); - elm_object_style_set(bt_dial, "naviframe_control/default"); + bt_dial = elm_button_add(ad->layout_main); + elm_object_style_set(bt_dial, "naviframe/title/default"); evas_object_size_hint_weight_set(bt_dial, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(bt_dial, EVAS_HINT_FILL, 0.5); elm_object_text_set(bt_dial, pwlock_get_string(IDS_IDLE_BUTTON_DIALER)); evas_object_smart_callback_add(bt_dial, "clicked", _dial_cb, ad); - ad->button_dial = bt_dial; + ad->elm_button_dial = bt_dial; evas_object_show(bt_dial); - bt_done = elm_button_add(controlbar); - elm_object_style_set(bt_done, "naviframe_control/default"); + bt_done = elm_button_add(ad->layout_main); + elm_object_style_set(bt_done, "naviframe/title/default"); evas_object_size_hint_weight_set(bt_done, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(bt_done, EVAS_HINT_FILL, 0.5); elm_object_text_set(bt_done, pwlock_get_string(IDS_COM_SK_DONE)); evas_object_smart_callback_add(bt_done, "clicked", _done_cb, ad); - ad->button_done = bt_done; + ad->elm_button_done = bt_done; evas_object_show(bt_done); - item[0] = elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); - elm_object_item_part_content_set(item[0], "object", bt_dial); - item[1] = elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); - elm_object_item_part_content_set(item[1], "object", bt_done); - elm_object_item_disabled_set(item[1], EINA_TRUE); elm_object_disabled_set(bt_done, EINA_TRUE); - null_image = elm_icon_add(ad->navi); - elm_icon_file_set(null_image, NULL, NULL); - evas_object_show(null_image); - ad->ly_main = ly; navi_it = - elm_naviframe_item_push(ad->navi, _get_header(ui_type), null_image, - NULL, ad->ly_main, NULL); - elm_object_item_part_content_set(navi_it, "optionheader", controlbar); - elm_object_item_signal_emit(navi_it, - "elm,state,controlbar,instant_close", ""); + elm_naviframe_item_push(ad->elm_navigation_frame, _get_header(ui_type), NULL, + NULL, ad->elm_conform, NULL); + + elm_object_item_part_content_set(navi_it, "title_left_btn", bt_dial); + elm_object_item_part_content_set(navi_it, "title_right_btn",bt_done); ad->ui_type = ui_type; remove_waiting_popup(ad); @@ -929,10 +933,12 @@ void show_pin(struct appdata *ad) { _DBG("%s", __func__); - if (!ad->navi) +// register_tapi_factory_event(ad); + + if (!ad->elm_navigation_frame) init_ui(ad); - if (!ad->ly_main) + if (!ad->layout_contents) load_main(ad, _UI_PIN); evas_object_show(ad->win); @@ -942,7 +948,7 @@ void show_puk(struct appdata *ad) { _DBG("%s", __func__); - if (!ad->navi) + if (!ad->elm_navigation_frame) init_ui(ad); load_main(ad, _UI_PUK); @@ -954,7 +960,7 @@ void show_puk_pin(struct appdata *ad) { _DBG("%s", __func__); - if (!ad->navi) + if (!ad->elm_navigation_frame) init_ui(ad); load_main(ad, _UI_PUK_PIN); @@ -967,7 +973,7 @@ void show_sim_lock(struct appdata *ad) _DBG("%s", __func__); int st = ad->sim_status; - if (!ad->navi) { + if (!ad->elm_navigation_frame) { init_ui(ad); } switch (st) { @@ -999,36 +1005,41 @@ void show_block(struct appdata *ad) Evas_Object *ly = NULL; Evas_Object *bt_dial = NULL; Evas_Object *el = NULL; - Evas_Object *bg = NULL; + Elm_Object_Item *navi_it = NULL; char buf[1024] = { 0, }; _DBG("%s", __func__); - if (!ad->navi) + if (!ad->elm_navigation_frame) init_ui(ad); - ly = _layout_add(ad->navi); - bg = ad->bg; - elm_object_style_set(bg, "group_list"); - el = elm_label_add(ad->navi); + ly = elm_layout_add(ad->elm_navigation_frame); + elm_layout_theme_set(ly, "layout", "application", "noindicator"); + /*Create content field */ + el = elm_label_add(ad->elm_navigation_frame); + elm_label_line_wrap_set(el, ELM_WRAP_WORD); snprintf(buf, sizeof(buf), "%s%s%s", - "", - pwlock_get_string + "
", + pwlock_get_string (IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER), ""); elm_object_text_set(el, buf); + elm_object_part_content_set(ly, "elm.swallow.content", el); evas_object_show(el); - bt_dial = elm_button_add(ad->navi); + bt_dial = elm_button_add(ad->elm_navigation_frame); + elm_object_style_set(bt_dial, "naviframe/title/default"); elm_object_text_set(bt_dial, pwlock_get_string(IDS_IDLE_BUTTON_DIALER)); evas_object_smart_callback_add(bt_dial, "clicked", _dial_cb, ad); evas_object_show(bt_dial); - ad->ly_main = ly; - elm_naviframe_item_push(ad->navi, _get_header(_UI_BLOCK), - bt_dial, NULL, ad->ly_main, NULL); + ad->layout_contents = ly; + navi_it = elm_naviframe_item_push(ad->elm_navigation_frame, _get_header(_UI_BLOCK), + NULL, NULL, ad->layout_contents, NULL); + + elm_object_item_part_content_set(navi_it, "title_right_btn", bt_dial); ad->ui_type = _UI_BLOCK; evas_object_show(ad->win); remove_waiting_popup(ad); @@ -1038,49 +1049,56 @@ void pwlock_destroy(struct appdata *ad) { _DBG("%s", __func__); - if (!ad->navi) + remove_waiting_popup(ad); + if (!ad->elm_navigation_frame) return; _DBG("%s %d", __func__, __LINE__); - elm_naviframe_item_pop(ad->navi); - if (ad->navi) { - evas_object_del(ad->navi); - ad->navi = NULL; + elm_naviframe_item_pop(ad->elm_navigation_frame); + if (ad->elm_navigation_frame) { + evas_object_del(ad->elm_navigation_frame); + ad->elm_navigation_frame = NULL; } - if (ad->ly_main) { - evas_object_del(ad->ly_main); - ad->ly_main = NULL; + if (ad->layout_contents) { + evas_object_del(ad->layout_contents); + ad->layout_contents = NULL; } - if (ad->entry_layout) { - evas_object_del(ad->entry_layout); - ad->entry_layout = NULL; + if (ad->layout_entry) { + evas_object_del(ad->layout_entry); + ad->layout_entry = NULL; } - if (ad->entry_second_layout) { - evas_object_del(ad->entry_second_layout); - ad->entry_second_layout = NULL; + if (ad->layout_second_entry) { + evas_object_del(ad->layout_second_entry); + ad->layout_second_entry = NULL; } - if (ad->bg) { - evas_object_del(ad->bg); - ad->bg = NULL; + if (ad->elm_conform) { + evas_object_del(ad->elm_conform); + ad->elm_conform = NULL; } - remove_waiting_popup(ad); + if (ad->elm_bg) { + evas_object_del(ad->elm_bg); + ad->elm_bg = NULL; + } + /* FIXME we should check window hide for fast boot */ + /* evas_object_hide(ad->win); */ + _DBG("%s %d %p", __func__, __LINE__, ad->elm_navigation_frame); } void clear_entry(struct appdata *ad) { - if (ad->entry_layout) { - elm_object_part_text_set(ad->entry_layout, "elm.guidetext", ""); - elm_entry_entry_set(_editfield_entry_get(ad->entry_layout), ""); + if (ad->layout_entry) { + elm_object_part_text_set(ad->layout_entry, "elm.guidetext", ""); + elm_entry_entry_set(_editfield_entry_get(ad->layout_entry), ""); } - if (ad->entry_second_layout) { - elm_object_part_text_set(ad->entry_second_layout, + if (ad->layout_second_entry) { + elm_object_part_text_set(ad->layout_second_entry, "elm.guidetext", ""); elm_entry_entry_set(_editfield_entry_get - (ad->entry_second_layout), ""); + (ad->layout_second_entry), ""); } } -static void _ug_layout_cb(struct ui_gadget *ug, enum ug_mode mode, void *priv) +static void _ug_layout_cb(ui_gadget_h ug, enum ug_mode mode, void *priv) { struct appdata *ad = (struct appdata *)priv; Evas_Object *base; @@ -1120,12 +1138,12 @@ static void _ug_layout_cb(struct ui_gadget *ug, enum ug_mode mode, void *priv) } -static void _ug_result_cb(struct ui_gadget *ug, bundle * result, void *priv) +static void _ug_result_cb(ui_gadget_h ug, service_h service, void *priv) { _DBG("function=%s", __func__); struct appdata *ad = NULL; - if (!ug || !priv || !result) { + if (!ug || !priv || !service) { return; } char *retv = NULL; @@ -1135,13 +1153,13 @@ static void _ug_result_cb(struct ui_gadget *ug, bundle * result, void *priv) switch (ad->state) { case _ST_LANG: { - retv = (char *)bundle_get_val(result, "updateType"); + service_get_extra_data(service, "updateType", &retv); if (retv) _DBG("_ST_LANG updateType = %s", retv); - retv = (char *)bundle_get_val(result, "ON_OFF_TEXT"); + service_get_extra_data(service, "ON_OFF_TEXT", &retv); if (retv) _DBG("_ST_LANG ON_OFF_TEXT = %s", retv); - retv = (char *)bundle_get_val(result, "result"); + service_get_extra_data(service, "result", &retv); if (retv) _DBG("_ST_LANG language result = %s", retv); char *path = (char *)vconf_get_str(VCONFKEY_LANGSET); @@ -1158,28 +1176,16 @@ static void _ug_result_cb(struct ui_gadget *ug, bundle * result, void *priv) } } break; - case _ST_KEYBOARD: - { - retv = (char *)bundle_get_val(result, "name"); - if (retv) - _DBG("_ST_KEYBOARD name = %s", retv); - retv = (char *)bundle_get_val(result, "description"); - if (retv && !strcmp(retv, "previous clicked")) { - _DBG("_ST_KEYBOARD description = %s", retv); - ad->kill_ug = 1; - } else { - ad->kill_ug = 0; - } - } - break; case _ST_TIME: { - retv = (char *)bundle_get_val(result, "result"); + service_get_extra_data(service, "result", &retv); if (retv) _DBG("_ST_TIME name = %s", retv); if (retv && !strcmp(retv, "lbutton_click")) { + ad->ug_btn_evt_state = UG_BUTTON_STATE_PREV_CLICKED; ad->kill_ug = 1; } else if (retv && !strcmp(retv, "rbutton_click")) { + ad->ug_btn_evt_state = UG_BUTTON_STATE_NEXT_CLICKED; ad->kill_ug = 0; } } @@ -1188,13 +1194,13 @@ static void _ug_result_cb(struct ui_gadget *ug, bundle * result, void *priv) break; } - if (!retv) { + if (!retv) { /* avoid to click ug quickly */ _DBG("retv = %s", retv); _ug_destroy = 1; } } -static void _ug_destroy_cb(struct ui_gadget *ug, void *priv) +static void _ug_destroy_cb(ui_gadget_h ug, void *priv) { _DBG("%s, %d begin", __func__, __LINE__); struct appdata *ad = NULL; @@ -1212,78 +1218,27 @@ static void _ug_destroy_cb(struct ui_gadget *ug, void *priv) switch (ad->state) { case _ST_LANG: { - if (ad->first_boot) { - _DBG("FIRST BOOT!"); - if (ad->keyboard_settings_loaded) { - ad->state = _ST_KEYBOARD; - do_state(ad); - } else { - ad->state = _ST_KEYBOARD; - do_state(ad); - show_waiting_popup(ad, NULL); - return; - } - } else { - _DBG("NOT FIRST BOOT, SIM CHANGED?"); - if (ad->running_status == 0 - && ad->sim_changed == 1) { - ad->state = _ST_KEYBOARD; - do_state(ad); - show_waiting_popup(ad, NULL); - return; - } else { - ad->state = _ST_EXIT; - do_state(ad); - } - } + ad->state = _ST_GREETING; + do_state(ad); + show_waiting_popup(ad, NULL); } break; case _ST_TIME: { - if (ad->kill_ug) { - ad->state = _ST_KEYBOARD; + if (ad->kill_ug) { /* Previous button clicked */ ad->date_and_time_previous = 1; show_waiting_popup(ad, NULL); - do_state(ad); - ad->kill_ug = 0; - return; - } else { - if (ad->sim_status == SIM_EMPTY) { - ad->state = _ST_EXIT; + if (ad->is_no_sim == 1) { + do_state_directly(_ST_NOSIM, ad); } else { - ad->state = _ST_EXIT; + do_state_directly(_ST_GREETING, ad); } - } - do_state(ad); - } - break; - case _ST_KEYBOARD: - { - if (ad->kill_ug) { - ad->state = _ST_LANG; - do_state(ad); ad->kill_ug = 0; + return; } else { - if (ad->first_boot) { - if (ad->date_and_time_settings_loaded) { - ad->state = _ST_TIME; - do_state(ad); - ad->kill_ug = 0; - } else { - ad->state = _ST_TAPI_INIT; - do_state(ad); - show_waiting_popup(ad, - pwlock_get_string - (IDS_IDLE_BODY_CHECKING_SIM_STATUS)); - ad->kill_ug = 0; - return; - } - } else { - ad->state = _ST_TIME; - do_state(ad); - ad->kill_ug = 0; - } + ad->state = _ST_CONNECTION; } + do_state(ad); } break; default: @@ -1299,17 +1254,31 @@ static void _ug_destroy_cb(struct ui_gadget *ug, void *priv) ug_destroy(ug); ug = NULL; - elm_object_item_disabled_set(item[0], EINA_FALSE); - elm_object_disabled_set(ad->button_dial, EINA_FALSE); + if(ad->layout_entry) { + elm_entry_input_panel_enabled_set( + _editfield_entry_get(ad->layout_entry), + EINA_TRUE); + elm_entry_input_panel_show( + _editfield_entry_get(ad->layout_entry)); + } + + if(ad->layout_second_entry) { + elm_entry_input_panel_enabled_set( + _editfield_entry_get(ad->layout_second_entry), + EINA_TRUE); + } + + elm_object_disabled_set(ad->elm_button_dial, EINA_FALSE); + if (_UI_PIN == ad->ui_type || _UI_PUK == ad->ui_type || _UI_PUK_PIN == ad->ui_type || _UI_SIM_LOCK == ad->ui_type) { - if (ad->entry_layout) { + if (ad->layout_entry) { evas_object_show(_editfield_entry_get - (ad->entry_layout)); + (ad->layout_entry)); elm_object_focus_set (_editfield_entry_get - (ad->entry_layout), EINA_TRUE); + (ad->layout_entry), EINA_TRUE); } } } else { @@ -1319,37 +1288,351 @@ static void _ug_destroy_cb(struct ui_gadget *ug, void *priv) } } +static void _menu_greeting_button_lang_cb(void *data, Evas_Object * obj, void *e) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + ad->state = _ST_LANG; + show_lang(ad); + /* TODO: */ +} + +static Evas_Object *_gl_nosim_icon_get(void *data, Evas_Object * obj, const char *part) +{ + Evas_Object *ei = NULL; + + _DBG("_gl_nosim_icon_get"); + + ei = elm_image_add(obj); + elm_image_file_set(ei, IMAGEDIR"/A01-9_icon_no_sim.png", NULL); + elm_image_resizable_set(ei, EINA_FALSE, EINA_FALSE); + + evas_object_show(ei); + + return ei; +} + +static Evas_Object *_gl_nosim_text_label_get(void *data, Evas_Object * obj, const char *part) +{ + Evas_Object *el = NULL; + Eina_Strbuf *nosim_text; + + nosim_text = eina_strbuf_new(); + + _DBG("_gl_nosim_text_label_get"); + el = elm_label_add(obj); + elm_label_line_wrap_set(el, ELM_WRAP_WORD); + evas_object_size_hint_weight_set(el, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(el, EVAS_HINT_FILL, EVAS_HINT_FILL); + + if (nosim_text != NULL && eina_strbuf_append_printf(nosim_text, + "
%s
", + pwlock_get_string(IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG)) == EINA_TRUE) { + elm_object_text_set(el, eina_strbuf_string_get(nosim_text)); + } + + evas_object_show(el); + + if (nosim_text != NULL) { + eina_strbuf_free(nosim_text); + } + return el; +} + +static Evas_Object *_gl_sim_retry_btn_content_get(void *date, Evas_Object * obj, const char *part) +{ + Evas_Object *eo_btn = NULL; + + _DBG("_gl_sim_retry_btn_content_get"); + + eo_btn = elm_button_add(obj); + elm_object_text_set(eo_btn, pwlock_get_string(IDS_ST_BUTTON_TRY_AGAIN_ABB)); + + // temporary min/max set + //evas_object_size_hint_min_set(eo_btn, 486, 72); + //evas_object_size_hint_max_set(eo_btn, 486, 72); + + return eo_btn; +} + +static void _nosim_retry_cb(void *data, Evas_Object * obj, void *event_info) { + _DBG("%s,%d", __func__, __LINE__); + struct appdata *ad = data; + + if (!ad) + return; + + do_state_directly(_ST_SIM, ad); +} + +static Evas_Object *_nosim_create_genlist(struct appdata *ad) +{ + _DBG("%s", __func__); + Evas_Object *genlist = NULL; + + if (ad == NULL) { + _DBG("_nosim_create_genlist returns NULL\n"); + return NULL; + } + nosim_icon_itc.item_style = "1icon/with_no_line"; + nosim_icon_itc.func.text_get = NULL; + nosim_icon_itc.func.content_get = _gl_nosim_icon_get; + nosim_icon_itc.func.state_get = NULL; + nosim_icon_itc.func.del = NULL; + + nosim_text_itc.item_style = "1icon/with_no_line"; + nosim_text_itc.func.text_get = NULL; + nosim_text_itc.func.content_get = _gl_nosim_text_label_get; + nosim_text_itc.func.state_get = NULL; + nosim_text_itc.func.del = NULL; + + sim_retry_btn_itc.item_style = "1icon/with_no_line"; + sim_retry_btn_itc.func.text_get = NULL; + sim_retry_btn_itc.func.content_get = _gl_sim_retry_btn_content_get; + sim_retry_btn_itc.func.state_get = NULL; + sim_retry_btn_itc.func.del = NULL; + + sep_itc.item_style = "dialogue/separator/20"; + sep_itc.func.text_get = NULL; + sep_itc.func.content_get = NULL; + sep_itc.func.state_get = NULL; + sep_itc.func.del = NULL; + + genlist = elm_genlist_add(ad->elm_navigation_frame); + + //elm_genlist_item_append(genlist, &sep_itc, NULL, NULL, + // ELM_GENLIST_ITEM_NONE, NULL, NULL); + + /* nosim icon */ + elm_genlist_item_append(genlist, &nosim_icon_itc, (void *)ad, NULL, + ELM_GENLIST_ITEM_NONE, NULL, NULL); + + /* nosim text */ + elm_genlist_item_append(genlist, &nosim_text_itc, (void *)ad, NULL, + ELM_GENLIST_ITEM_NONE, NULL, NULL); + + /* sim retry button */ + elm_genlist_item_append(genlist, &sim_retry_btn_itc, (void *)ad, NULL, + ELM_GENLIST_ITEM_NONE, _nosim_retry_cb, (void *)ad); + + _DBG("END of _nosim_create_genlist\n"); + evas_object_show(genlist); + return genlist; +} + +int show_splash_screen(struct appdata *ad) { + _DBG("%s,%d", __func__, __LINE__); + + if (!ad) + return 0; + + pwlock_destroy(ad); + + init_ui(ad); + + show_waiting_popup(ad, + pwlock_get_string + (IDS_IDLE_POP_CHECKING_SIM_CARD_ING)); + + evas_object_show(ad->win); + + return 1; +} + +int show_greeting(struct appdata *ad) { + _DBG("%s,%d", __func__, __LINE__); + + char *model_name = NULL; + + Evas_Object *navi = NULL; + Evas_Object *controlbar = NULL; + Elm_Object_Item *navi_it = NULL; + Evas_Object *contents = NULL; + Evas_Object *button = NULL; + + if (!ad) + return 0; + + ad->ui_type = _UI_GREETING; + + pwlock_destroy(ad); + + init_ui(ad); + navi = ad->elm_navigation_frame; + + controlbar = elm_toolbar_add(navi); + if (controlbar == NULL) + return 0; + + contents = pwlock_add_layout_from_edj(navi, EDJFILE, "pwlock-menu-lang"); + + model_name = vconf_get_str(PWLOCK_DEVICE_NAME); + _DBG("Device Name = %s\n",model_name); + + if (model_name != NULL) { + elm_object_part_text_set(contents, "text.greeting.1", pwlock_get_string(IDS_IDLE_BODY_GREETING_WELCOME)); + elm_object_part_text_set(contents, "text.greeting.2", model_name); + + free(model_name); + model_name = NULL; + } + else { + elm_object_part_text_set(contents, "text.greeting.1", pwlock_get_string(IDS_SCM_BODY_WELCOME_E)); + } + + elm_object_part_text_set(contents, "text.help", + pwlock_get_string(IDS_STU_BODY_SELECT_LANGUAGE)); + + button = elm_button_add(navi); + elm_object_style_set(button, "popup_button/default"); + elm_object_part_content_set(contents, "button.select.lang", button); + + elm_object_text_set(button, get_lang_name_by_path(vconf_get_str(VCONFKEY_LANGSET))); + evas_object_smart_callback_add(button, "clicked", _menu_greeting_button_lang_cb, ad); + + elm_toolbar_shrink_mode_set(controlbar, ELM_TOOLBAR_SHRINK_EXPAND); + + elm_toolbar_item_append(controlbar, NULL, + pwlock_get_string(IDS_ST_SK_EMERGENCY_CALL), _dial_cb, + ad); + elm_toolbar_item_append(controlbar, NULL, + pwlock_get_string(IDS_COM_SK_START), + pwlock_greeting_next_cb, ad); + + navi_it = elm_naviframe_item_push(navi, NULL, NULL, NULL, contents, NULL); + elm_naviframe_item_title_visible_set(navi_it, EINA_FALSE); + + elm_object_item_part_content_set(navi_it, "controlbar", controlbar); + + evas_object_show(ad->win); + _destroy_previous_ugs(ad); + + return 1; +} + +int show_connection(struct appdata *ad) { + _DBG("%s", __func__); + ad->ui_type = _UI_CONNECTION; + service_h service; + UG_INIT_EFL(ad->win, UG_OPT_INDICATOR_ENABLE); + struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs)); + + service_create(&service); + + if (cbs == NULL) { + service_destroy(service); /* prevent */ + return 0; + } + cbs->layout_cb = pwlock_ug_connection_layout_cb; + cbs->result_cb = pwlock_ug_connection_result_cb; + cbs->destroy_cb = pwlock_ug_connection_destroy_cb; + cbs->priv = (void *)ad; + if (!service) { + service_destroy(service); + free(cbs); /* memory leak */ + return 0; + } + service_add_extra_data(service, "caller", "pwlock"); + service_add_extra_data(service, "lbutton", pwlock_get_string(IDS_COM_BODY_PREVIOUS)); + service_add_extra_data(service, "rbutton_next", pwlock_get_string(IDS_COM_SK_NEXT)); + service_add_extra_data(service, "rbutton_skip", pwlock_get_string(IDS_IDLE_SK_SKIP)); + service_add_extra_data(service, "lbutton_icon", IMAGEDIR"/A01-9_controlbar_icon_Previous.png"); + service_add_extra_data(service, "rbutton_next_icon", IMAGEDIR"/A01-9_controlbar_icon_Next.png"); + service_add_extra_data(service, "rbutton_skip_icon", IMAGEDIR"/A01-9_controlbar_icon_Skip.png"); + service_add_extra_data(service, "scan_icon", IMAGEDIR"/A01-9_controlbar_icon_scan.png"); + + ad->connection_ug = + ug_create(NULL, "wifi-efl-UG", UG_MODE_FULLVIEW, service, cbs); + service_destroy(service); + free(cbs); + if (!ad->connection_ug) { + _DBG("Get connection ug failed."); + if (ad->ug_btn_evt_state == UG_BUTTON_STATE_PREV_CLICKED) + ad->state = _ST_TIME; + else + ad->state = _ST_FINISH; + return 0; + } + ad->current_ug = ad->connection_ug; + evas_object_show(ad->win); + return 1; +} + +int show_tutorial(struct appdata *ad) { + _DBG("%s,%d", __func__, __LINE__); + Evas_Object *navi = NULL; + Evas_Object *controlbar = NULL; + Elm_Object_Item *navi_it = NULL; + + if (!ad) + return 0; + ad->ui_type = _UI_TUTORIAL; + + pwlock_destroy(ad); + + init_ui(ad); + navi = ad->elm_navigation_frame; + + controlbar = elm_toolbar_add(ad->elm_navigation_frame); + if (controlbar == NULL) + return 0; + + elm_toolbar_shrink_mode_set(controlbar, ELM_TOOLBAR_SHRINK_EXPAND); + + elm_toolbar_item_append(controlbar, NULL, + pwlock_get_string(IDS_COM_BODY_PREVIOUS), + pwlock_tutorial_prev_cb, ad); + elm_toolbar_item_append(controlbar, NULL, + pwlock_get_string(IDS_COM_SK_CANCEL), pwlock_tutorial_next_cb, + ad); + + navi_it = + elm_naviframe_item_push(navi, (const char *)_("TUTORIAL"), + NULL, NULL, NULL, NULL); + elm_object_item_part_content_set(navi_it, "controlbar", controlbar); + + evas_object_show(ad->win); + _destroy_previous_ugs(ad); + + return 1; +} + int show_lang(struct appdata *ad) { _DBG("%s", __func__); ad->ui_type = _UI_LANG; - bundle *b = bundle_create(); + service_h service; UG_INIT_EFL(ad->win, UG_OPT_INDICATOR_ENABLE); struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs)); + service_create(&service); + if (cbs == NULL) { - bundle_free(b); + service_destroy(service); /* prevent */ return 0; } cbs->layout_cb = _ug_layout_cb; cbs->result_cb = _ug_result_cb; cbs->destroy_cb = _ug_destroy_cb; cbs->priv = (void *)ad; - if (!b) { - free(cbs); + if (!service) { + service_destroy(service); + free(cbs); /* memory leak */ return 0; } - bundle_add(b, "caller", "pwlock"); - bundle_add(b, "viewtype", "language"); - bundle_add(b, "rbutton", pwlock_get_string(IDS_COM_SK_NEXT)); + service_add_extra_data(service, "caller", "pwlock"); + service_add_extra_data(service, "viewtype", "language"); ad->language_ug = - ug_create(NULL, "setting-phone-efl", UG_MODE_FULLVIEW, b, cbs); - bundle_free(b); + ug_create(NULL, "setting-phone-efl", UG_MODE_FULLVIEW, service, cbs); + service_destroy(service); free(cbs); if (!ad->language_ug) { _DBG("Get phone ug failed."); - ad->state = _ST_KEYBOARD; + ad->state = _ST_GREETING; return 0; } ad->current_ug = ad->language_ug; @@ -1357,6 +1640,53 @@ int show_lang(struct appdata *ad) return 1; } +int show_nosim(struct appdata *ad) +{ + _DBG("%s,%d", __func__, __LINE__); + Evas_Object *genlist = NULL; + Evas_Object *navi = NULL; + Evas_Object *controlbar = NULL; + Elm_Object_Item *navi_it = NULL; + + if (!ad) + return 0; + ad->ui_type = _UI_NOSIM; + + pwlock_destroy(ad); + + init_ui(ad); + navi = ad->elm_navigation_frame; + + genlist = _nosim_create_genlist(ad); + + controlbar = elm_toolbar_add(ad->elm_navigation_frame); + if (controlbar == NULL) + return 0; + + elm_toolbar_shrink_mode_set(controlbar, ELM_TOOLBAR_SHRINK_EXPAND); + + + elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); + elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); + elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); + elm_toolbar_item_append(controlbar, NULL, NULL, NULL, NULL); + + elm_toolbar_item_append(controlbar, IMAGEDIR"/A01-9_controlbar_icon_Skip.png", + pwlock_get_string(IDS_IDLE_SK_SKIP), + pwlock_nosim_skip_cb, + ad); + + navi_it = + elm_naviframe_item_push(navi, (const char *)_(pwlock_get_string(IDS_IDLE_HEADER_NOSIM)), + NULL, NULL, genlist, NULL); + elm_object_item_part_content_set(navi_it, "controlbar", controlbar); + + evas_object_show(ad->win); + _destroy_previous_ugs(ad); + + return 1; +} + int show_time(struct appdata *ad) { _DBG("%s,%d", __func__, __LINE__); @@ -1364,31 +1694,39 @@ int show_time(struct appdata *ad) return 0; ad->ui_type = _UI_TIME; ad->date_and_time_settings_loaded = 1; - bundle *b = bundle_create(); + service_h service; UG_INIT_EFL(ad->win, UG_OPT_INDICATOR_ENABLE); struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs)); + + service_create(&service); + if (cbs == NULL) { - bundle_free(b); + service_destroy(service); /* prevent */ return 0; } cbs->layout_cb = _ug_layout_cb; cbs->result_cb = _ug_result_cb; cbs->destroy_cb = _ug_destroy_cb; cbs->priv = (void *)ad; - if (!b) { - free(cbs); + if (!service) { + service_destroy(service); + free(cbs); /* memory leak */ return 0; } - bundle_add(b, "caller", "pwlock"); - bundle_add(b, "lbutton", pwlock_get_string(IDS_COM_BODY_PREVIOUS)); - bundle_add(b, "rbutton", pwlock_get_string(IDS_COM_SK_DONE)); + service_add_extra_data(service, "caller", "pwlock"); + service_add_extra_data(service, "lbutton", pwlock_get_string(IDS_COM_BODY_PREVIOUS)); + service_add_extra_data(service, "rbutton", pwlock_get_string(IDS_COM_SK_NEXT)); + ad->date_ug = - ug_create(NULL, "setting-time-efl", UG_MODE_FULLVIEW, b, cbs); - bundle_free(b); + ug_create(NULL, "setting-time-efl", UG_MODE_FULLVIEW, service, cbs); + service_destroy(service); free(cbs); if (!ad->date_ug) { - _DBG("Get time ug failed."); - ad->state = _ST_EXIT; + _DBG("?????Get time ug failed."); + if (ad->ug_btn_evt_state == UG_BUTTON_STATE_PREV_CLICKED) + ad->state = _ST_GREETING; + else + ad->state = _ST_CONNECTION; return 0; } ad->current_ug = ad->date_ug; @@ -1396,46 +1734,63 @@ int show_time(struct appdata *ad) return 1; } -int show_keyboard_setting(struct appdata *ad) -{ +int show_finish(struct appdata *ad) { _DBG("%s,%d", __func__, __LINE__); + + Evas_Object *navi = NULL; + Evas_Object *controlbar = NULL; + Elm_Object_Item *navi_it = NULL; + Evas_Object *contents = NULL; + Evas_Object *label = NULL; + Eina_Strbuf *finish_text; + if (!ad) return 0; - ad->ui_type = _UI_KEYBOARD; - ad->keyboard_settings_loaded = 1; - bundle *b = bundle_create(); - UG_INIT_EFL(ad->win, UG_OPT_INDICATOR_ENABLE); - struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs)); - if (cbs == NULL) { - bundle_free(b); + + ad->ui_type = _UI_FINISH; + + pwlock_destroy(ad); + + init_ui(ad); + navi = ad->elm_navigation_frame; + + controlbar = elm_toolbar_add(navi); + if (controlbar == NULL) return 0; + + contents = pwlock_add_layout_from_edj(navi, EDJFILE, "pwlock-finish"); + + finish_text = eina_strbuf_new(); + + label = elm_label_add(contents); + elm_label_line_wrap_set(label, ELM_WRAP_WORD); + evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, 0.0); + evas_object_size_hint_align_set(label, EVAS_HINT_FILL, EVAS_HINT_FILL); + + if (finish_text != NULL && eina_strbuf_append_printf(finish_text, + "
%s
", + pwlock_get_string(IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE)) == EINA_TRUE) { + elm_object_text_set(label, eina_strbuf_string_get(finish_text)); } - cbs->layout_cb = _ug_layout_cb; - cbs->result_cb = _ug_result_cb; - cbs->destroy_cb = _ug_destroy_cb; - cbs->priv = (void *)ad; - if (!b) { - free(cbs); - return 0; + + if (finish_text != NULL) { + eina_strbuf_free(finish_text); } - bundle_add(b, "navi_btn_left", - pwlock_get_string(IDS_COM_BODY_PREVIOUS)); - bundle_add(b, "navi_btn_right", pwlock_get_string(IDS_COM_SK_NEXT)); + elm_object_part_content_set(contents, "swl/label", label); - ad->keyboard_ug = - ug_create(NULL, "keyboard-setting-wizard-efl", UG_MODE_FULLVIEW, b, - cbs); + elm_toolbar_shrink_mode_set(controlbar, ELM_TOOLBAR_SHRINK_EXPAND); + + elm_toolbar_item_append(controlbar, NULL, pwlock_get_string(IDS_COM_BODY_PREVIOUS), pwlock_finish_prev_cb, ad); + elm_toolbar_item_append(controlbar, NULL, pwlock_get_string(IDS_ST_BODY_INSTALTAB_FINISH), pwlock_finish_cb, ad); + + navi_it = elm_naviframe_item_push(navi, _get_header(ad->ui_type), NULL, NULL, contents, NULL); + + elm_object_item_part_content_set(navi_it, "controlbar", controlbar); - bundle_free(b); - free(cbs); - if (!ad->keyboard_ug) { - _DBG("Get keyboard setting ug failed\n"); - ad->state = _ST_TIME; - return 0; - } - ad->current_ug = ad->keyboard_ug; evas_object_show(ad->win); + _destroy_previous_ugs(ad); + return 1; } @@ -1446,12 +1801,12 @@ int show_dialer(struct appdata *ad) return 0; ad->ui_type = _UI_DIALER; - bundle *b; - b = bundle_create(); + service_h service; + service_create(&service); UG_INIT_EFL(ad->win, UG_OPT_INDICATOR_ENABLE); struct ug_cbs *cbs = (struct ug_cbs *)calloc(1, sizeof(struct ug_cbs)); if (cbs == NULL) { - bundle_free(b); + service_destroy(service); /* prevent */ return 0; } cbs->layout_cb = _ug_layout_cb; @@ -1459,14 +1814,15 @@ int show_dialer(struct appdata *ad) cbs->destroy_cb = _ug_destroy_cb; cbs->priv = (void *)ad; - if (!b) { - free(cbs); + if (!service) { + service_destroy(service); + free(cbs); /* memory leak */ return 0; } - bundle_add(b, "emergency_dialer", "emergency"); - ad->dialer_ug = ug_create(NULL, "dialer-efl", UG_MODE_FULLVIEW, b, cbs); - bundle_free(b); + service_add_extra_data(service, "emergency_dialer", "emergency"); + ad->dialer_ug = ug_create(NULL, "dialer-efl", UG_MODE_FULLVIEW, service, cbs); + service_destroy(service); free(cbs); if (!ad->dialer_ug) { _DBG("dialer ug failed\n"); @@ -1493,7 +1849,7 @@ void show_popup(struct appdata *ad, const char *mesg, Eina_Bool mode) } ecore_imf_context_input_panel_hide(elm_entry_imf_context_get (_editfield_entry_get - (ad->entry_layout))); + (ad->layout_entry))); pp = elm_popup_add(ad->win); ad->popup = pp; evas_object_size_hint_weight_set(pp, EVAS_HINT_EXPAND, @@ -1518,32 +1874,81 @@ void show_popup(struct appdata *ad, const char *mesg, Eina_Bool mode) evas_object_show(pp); } +void show_popup_ask_exit(struct appdata *ad, const char *mesg) +{ + if (!ad) { + return; + } + Evas_Object *pp; + Evas_Object *button1; + Evas_Object *button2; + ad->previous_ui_type = ad->ui_type; + + if (ad->popup) { + evas_object_del(ad->popup); + ad->popup = NULL; + } + ecore_imf_context_input_panel_hide(elm_entry_imf_context_get + (_editfield_entry_get + (ad->layout_entry))); + pp = elm_popup_add(ad->win); + ad->popup = pp; + evas_object_size_hint_weight_set(pp, EVAS_HINT_EXPAND, + EVAS_HINT_EXPAND); + elm_object_text_set(pp, mesg); + + button1 = elm_button_add(pp); + elm_object_text_set(button1, pwlock_get_string(IDS_COM_SK_OK)); + elm_object_part_content_set(pp, "button1", button1); + evas_object_smart_callback_add(button1, "clicked", pwlock_popup_exit_ok_cb, + ad); + + button2 = elm_button_add(pp); + elm_object_text_set(button2, pwlock_get_string(IDS_COM_SK_CANCEL)); + elm_object_part_content_set(pp, "button2", button2); + evas_object_smart_callback_add(button2, "clicked", pwlock_popup_exit_cancel_cb, + ad); + + remove_waiting_popup(ad); + evas_object_show(pp); +} + void show_waiting_popup(struct appdata *ad, const char *msg_str) { if (!ad) { return; } + Evas_Object *popup = NULL; Evas_Object *progressbar = NULL; Evas_Object *box = NULL; Evas_Object *label = NULL; + Eina_Strbuf *popup_str; + remove_waiting_popup(ad); popup = elm_popup_add(ad->win); ad->waiting_popup = popup; box = elm_box_add(popup); if (msg_str != NULL) { + popup_str = eina_strbuf_new(); label = elm_label_add(popup); - elm_object_style_set(label, "popup_description/default"); elm_label_line_wrap_set(label, EINA_TRUE); - elm_object_text_set(label, msg_str); + if (popup_str != NULL && eina_strbuf_append_printf(popup_str, + "%s", msg_str) == EINA_TRUE) { + elm_object_text_set(label, eina_strbuf_string_get(popup_str)); + } 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); evas_object_show(label); elm_box_pack_end(box, label); + + if (popup_str != NULL) { + eina_strbuf_free(popup_str); + } } progressbar = elm_progressbar_add(popup); @@ -1564,10 +1969,12 @@ void show_waiting_popup(struct appdata *ad, const char *msg_str) void remove_waiting_popup(struct appdata *ad) { + _DBG("%s", __func__); if (!ad) { return; } if (ad->waiting_popup) { + _DBG("delete waiting popup"); evas_object_del(ad->waiting_popup); ad->waiting_popup = NULL; } @@ -1583,3 +1990,14 @@ Eina_Bool show_puk_do(void *data) return ECORE_CALLBACK_CANCEL; } + +void update_pw_entry(struct appdata *ad, char *input_data) +{ + _DBG("%s", __func__); + + if (input_data == NULL) + return; + elm_entry_entry_set(_editfield_entry_get(ad->layout_entry), input_data); + elm_entry_cursor_end_set(_editfield_entry_get(ad->layout_entry)); + _done_cb(ad, NULL, NULL); +} diff --git a/src/util.c b/src/util.c index 0845235..69b1ecf 100755 --- a/src/util.c +++ b/src/util.c @@ -1,19 +1,21 @@ /* - * Copyright 2012 Samsung Electronics Co., Ltd - * - * Licensed under the Flora License, Version 1.0 (the License); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.tizenopensource.org/license - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - + * pwlock + * + * Copyright 2012 Samsung Electronics Co., Ltd + * + * Licensed under the Flora License, Version 1.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.tizenopensource.org/license + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ #include #include @@ -28,29 +30,29 @@ #include #include #include +#include #include "util.h" #define LINEMAX 256 -#define MAXFILELEN 1048576 +#define MAXFILELEN 1048576 /* 32000 */ #define PHLOCK_SOCK_PREFIX "/tmp/phlock" #define PHLOCK_SOCK_MAXBUFF 65535 const char *sys_str_table[] = { - "IDS_COM_SK_SET", - "IDS_COM_SK_DONE", + "IDS_COM_SK_DONE", /* 0 */ "IDS_COM_BODY_ENTER_PASSWORD", "IDS_COM_BODY_PREVIOUS", "IDS_COM_SK_NEXT", "IDS_COM_SK_OK", "IDS_COM_SK_CANCEL", + "IDS_COM_SK_START" }; const char *app_str_table[] = { "IDS_IDLE_BODY_AUTOMATIC", "IDS_IDLE_HEADER_NETWORK_LOCK", - "IDS_IDLE_HEADER_PHONE_LOCK", "IDS_IDLE_HEADER_PIN_LOCK", "IDS_IDLE_HEADER_PUK_LOCK", "IDS_IDLE_HEADER_SIM_BLOCKED", @@ -62,39 +64,58 @@ const char *app_str_table[] = { "IDS_IDLE_BODY_ENTER_PUK", "IDS_IDLE_BODY_INCORRECT_PIN", "IDS_IDLE_BODY_INCORRECT_PIN_TRY_AGAIN", - "IDS_IDLE_BODY_INCORRECT_PUK", - "IDS_IDLE_BODY_LANGUAGE_NOT_SUPPORTED", "IDS_IDLE_BODY_NETWORK_PERSONALISATION_ON_ENTER_CONTROL_KEY", "IDS_IDLE_BODY_NETWORK_SUBSET_PERSONALISATION_ON_ENTER_CONTROL_KEY", - "IDS_IDLE_BODY_PASSWORD_MUST_BE_4_DIGITS_LONG", "IDS_IDLE_BODY_PD_ATTEMPTS_LEFT", "IDS_IDLE_BODY_SERVICE_PROVIDER_PERSONALISATION_ON_ENTER_CONTROL_KEY", "IDS_IDLE_BODY_SIM_CARD_NOT_AVAILABLE_CONTACT_YOUR_SERVICE_PROVIDER", - "IDS_IDLE_BODY_UNABLE_TO_READ_SIM_CARD_LANGUAGE", "IDS_IDLE_BODY_WRONG_PASSWORD", - "IDS_IDLE_BUTTON_CANCEL", "IDS_IDLE_BUTTON_DIALER", "IDS_IDLE_HEADER_DISPLAY_LANGUAGE", - "Do you want to skip Setup Wizard?", + "Do you want to skip Setup Wizard?", /* TODO: String request */ "IDS_IDLE_BODY_PASSWORD_EMPTY", "IDS_IDLE_BODY_PD_TO_PD_DIGITS_REQUIRED", - "IDS_IDLE_BODY_NEW_PIN", - "IDS_IDLE_BODY_PIN", - "IDS_IDLE_BODY_PUK", - "IDS_IDLE_POP_PIN_BLOCKED", - "IDS_IDLE_POP_PIN_UNBLOCKED", - "IDS_IDLE_BODY_CONFIRM_NEW_PIN", - "IDS_IDLE_POP_INCORRECT_PIN_1_ATTEMPT_LEFT", - "IDS_IDLE_POP_INCORRECT_PIN_PD_ATTEMPTS_LEFT", - "%d to %d digits or letters required", - "Passwords do not match", - "PIN code has been changed", - "SIM card error", - "%d s left,please try later!", - "Please input password again after 30 seconds.", - "Checking SIM..." + "Passwords do not match", /* TODO: System string request */ + "PIN code has been changed", /* TODO: String request */ + "SIM card error", /* TODO: String request */ + "IDS_IDLE_POP_CHECKING_SIM_CARD_ING", + "Welcome to your", /* TODO: String request */ + "IDS_SCM_BODY_WELCOME_E", + "IDS_STU_BODY_SELECT_LANGUAGE", + "IDS_ST_SK_EMERGENCY_CALL", + "IDS_ST_BODY_TAP_TO_SET_UP", + "Skip", /* TODO: String request */ + "IDS_ST_BODY_INSTALTAB_FINISH", + "IDS_STU_BODY_DEVICE_IS_SET_UP_AND_READY_TO_USE", + "IDS_STU_POP_SETUP_COMPLETE", + "No SIM card in device", /* TODO: String request */ + "IDS_STU_BODY_HOW_TO_INSERT_SIM_CARD_HELP_MSG", + "IDS_ST_BUTTON_TRY_AGAIN_ABB" }; +static void _log(char *msg) +{ + FILE *fp; + + fp = fopen(LOGFILE, "a"); + if (fp == NULL) + return; + fprintf(fp, "%s\n", msg); + fclose(fp); +} + +void pwlock_log(char *fmt, ...) +{ + va_list ap; + char buf[LINEMAX]; + + va_start(ap, fmt); + vsnprintf(buf, sizeof(buf), fmt, ap); + va_end(ap); + + _log(buf); +} + void pwlock_log_t(char *fmt, ...) { va_list ap; @@ -110,7 +131,7 @@ void pwlock_log_t(char *fmt, ...) time_t current_time = 0; bzero((char *)&debugString, LINEMAX); time(¤t_time); - gmtime_r(¤t_time, &local_t); + gmtime_r(¤t_time, &local_t); /* for prevent 53555 */ int len = snprintf(debugString, sizeof(debugString), "[%d-%02d-%02d, %02d:%02d:%02d]: ", local_t.tm_year + 1900, local_t.tm_mon + 1, @@ -123,10 +144,12 @@ void pwlock_log_t(char *fmt, ...) } len = g_strlcat(debugString, buf, LINEMAX); if (len >= LINEMAX) { + /* TODO:ERROR handling */ return; } else { debugString[len] = '\n'; } + /* FIXME this is for permission.. later we should fix and remove this... */ if ((fd = fopen(LOGFILE, "at+")) == NULL) { PWLOCK_ERR("File fopen fail for writing Pwlock information"); } else { @@ -209,8 +232,10 @@ char *pwlock_get_string(int id) char *str = NULL; if (id < IDS_PWLOCK_SYSTEM_STRING_MAX) { + /* get system string */ str = dgettext("sys_string", sys_str_table[id]); } else { + /* get application string */ str = dgettext("pwlock", app_str_table[id - IDS_PWLOCK_SYSTEM_STRING_MAX]); @@ -220,3 +245,19 @@ char *pwlock_get_string(int id) return str; } + +void pwlock_tolower(char *src, char *dest) +{ + int i; + int src_len=0; + + if (!src || !dest) { + _DBG(" src=%p, dest=%p\n", src, dest); + return; + } + src_len = strlen(src); + for(i=0;i

M%%9Y{=t02}AT=%-&l&oMRPN+#qz&jAOvy;N}Pi`lDaI-$T6BAtuNnD`# zz|*nm!Oq-8O_8JyhzOV~i9a;tRJfSuBYs*qygsOAd(KwcINp73m%x!_V#2=`A?#)m zqv8D^st2BxJ2@?BSc5~=A?TPnA?lt8Q^DUW#pHH~>ieIw1Bbp=(LIL&TRl?WD2?1h zCrI5_4%dcL=+vkhCROnQ-ov1C+nA+|brNp+uaevzPtW_&8o#)9(Dw|^rr>Qq;!}RL z&H!Dz>_@=)b`rpu>1$ddPPVOeyUgL*+&|-QvWHJu$yPTwfIRHavYqb5s&f7h&RF;F-$^p1(^c9gULv7WqQ%ZPQGpMx5ZG(%)u3`>KIRzO_XTO;;sQ!b9q ziO&rWuA*FVl_Ju@Tn+m?V3MtSQ;{ktkQ=i&pvy*4u>UEA%zH4YbYMlXzwxY4l)$Xk zf{Kp)T%IQArSR=sZc2cS7l(Ib*sO^wT)~<3vFS0&=3Z5q{bH^}>zpr$i zZS2*phNyueUI3mc+xupyuv4X&v_(v=ZPLC_wL(;F5Z!f7nC;Fc{q+92`>FK3C&PY| zwwRNH=wDVP)bs9S{=}dxPwR8k=dB;RuN>mmhAz*}a?aaCNz!ZD7h%)0vi`t$A=O_Ux{4l>1Ez7+@+;mW4jHa3C_!(-XDQZcVzCnmuO88aAbrjbVPZf-YnHT*c-^ z2P5Ro%vDM-=*#E(cuSqZA2UkX%80_OMFUv9@~cB$u-_5n(1SQ12u#)-$Rk8arw@zw zDP3rlx2oPNeHF1y5AkO3-eu4pG)#8eN5a`BbcUU{80f2&9qJ zIte}@ai@|_`5Y>6-rSpi{k-K?5tKo)pM$;_G8?H_szvHSTeXWs4(vqnVaTIIjE1$+ zNXlA;pT?6eSyuR?aW9i_8HK0D!62S9p^hJN%8-tdwnYY3dx(TXF4u0?r^ z2ORr$?#;c?FwjCuX!oUp{v4_G95jeG3^+0kj^0nadB)*^*o6t*$e??nSTnPD1kxQ* zg`+{U{A(P@>Erzh%*!?U>N|M2a@XA)$3a5mkAx_%qz;*9VqM>p9hT(*le}Z2Ckh0G z0z@bo78)h4v z&2`hGozlql9UFcwB|gWUm03Po_tW>#*|Vpl#wO@bPjt<5u3Ckpy5BAu8MUgrH~Q{T zra+p069WiGH^h(E!{L@h0QTb7msc-o2#)W6Df<1g{lMa6{n6qZdM5jJv&I3$RwR+Q z)^cX1lkaN&T=*hHgOrqGb;FT~@4pn^}!-9{>#!l`Zhd8eIq0hOn}|_n!^}$auAzpZFbnrf7>#bccV_SJL$iO~Bk> zv#Oz^XlQZ28w71!GJS?(=UUb^{PTS+hhZr9cZ2&^pT%|P!9Tc0s_$59(AVFv$)v8- zAU>Z}+fY0N1=@F|7}fMX|B8)P4vKcqcYC?oi=R|w?)=awS6NVrG(ie9=di{{;X$SLAz1&qyiqM`hFxXgPVi2cpt#u7iagrmfG9jL0XsNRBL{!;+TLS>^X+x|%Ik zuln3?t7uvC@R>A62PYnYYC!%K^sF}Mn0*%C`$A<>r=n}MMu#yZNC&5*tCThqu*0gc z+*t>d{N&%XXZ*TKT}h*T0)&5~a4@h+{_XX!uwIV;Y+cu?y>;)g!WHwaOB)WdnJ2(} z`uVpu&ZnQh?)%Msc0a40W%XR2)&!(Pr>gYW-%;1ZHydtRftWKdYn>SA7w_+R7OGG{ z(-zh+qG~>c8jNbP#{ax!vT?D|=H8%=;q)wdJO$bgza@y}>fRZCi00XuZ)L^m+N8ps zo5`#XigD~2T8AD!WlxxTT@bSf6nH6~grr!WES6F>R4MO6PIMN=7-Ii!pOGAkHDNka zAB5%5!qPtL5?Z+pl;ygjuCm5DmE%}`dB>ps!f6?mJ#}3~8pbXrarLt|B#Xf~Wk5n1 zE!goU?dLU^ap(jk*USX|ma>CGWrhlRQ&$g|{d@^UB!`Ad~2Vf1vD;4ygLvbp(b0_A!tbCpmR))6<) zj;o@?jR?$H#b=Cs;i`+GYZr@0`pH!n$It#O(g@dA)jkmu0j0X-6knK#QZy~QJQ0P} zbw^Vokz{UQud2$@qr{gik}1V2C+N4eV-Hv=rdNFQ26sGaY-n(6xpRAf#0jzyk;&SN{rkSTuqJ(KS`vAUnI z(H(pLR{%YNUki$>@1K5GS7G=S$oL_ljVE02!4?;uQ zo~vqb5uyru^BPeRJ`T-jD2;TvsGY9@APm!ilLLIl@K4UH)U*> zMHy6Yw4l>_ydrJ}r*jfG9in$ja{SM~(^Vi}(B1{hh%~Tpo{Ot=hijDa^xTD^!=K4S zn&Gwd+dJGZgc3yiNYIS^Lo1=FcW&hLe5R)pmM6d79tfgi9?c@wztG<=o+V!Yy;^=- zH;TyX$j*Zl5H7>?w^Phaiz&SDjT{|nnr@;P(6o_(dH0_Y*cYCfU* zXHw$%JJ#&=n4Vm&rpy2P^Slf+gqEfyzEw5uHko+#x--SZ)I|8=o*SX8Vw&@3Z*iZw zosN1ys9^1E|24eiyyBpiJu0xsFZl)TOuI3UWp=_D)CLwK01%AY(qU)WX`rrB1A_Sb zc^7GRk+;Wz!hm`C3EX!81?1^nE&uQ-V!e5m`-Hr&hwv(s4w*MNX#rSEPvA8=%n*N0 z|I+02abyxJhPhPX>CGnjRzRu0-lX0T52Wf*QT1ew^%bV+5U26PQpBlEz+VYcSyMLsoB; z)DT=*m7xM*0rj7q|LF8e2dvm%GTRd^=3jijii@$oIrh?8X7>#+{J16HfAF7A8RGxt z{d6pJ)q>K!-#d`E9T>}d8{u;GtL5iE;x#xv`t zq0_8q_)vXNe+di#zA}^MyxA+|G4O2!T%w0O+H{NX#KW^-y%PWGSYis^svLOew?kco z@NR1{Nro5wpAPK=79FM8imucE5&1Knz5mI%uS`--2lc0{T*WF!fbm9`_zyt!k=^`1 z3@E$n_^(*&|C9genC@<1Q8CsLFspWrKYJ#fc}>Mee`-npiv-i!EqmO40wl#Vcf`iw zj0`c=wtKkf7iUpyFyz4lA)0)wS&NQRRb226el-6Nz``~Tv7c^Hu18{boj$7q=qDTo z{T6w8#hQeylib4Slt#kQDkMUQJE#Pz)5||=>F+aeK>lwPgu;e{0NXrmAPi{Rb;>Gu zcyA}$yVYroKO*iB<||buRWQ$7)*`e~!)WBe>y=8)s;Y&9o`LQi7el{!=oYCo`>WS^ zW1S)1@3Y--AFc;Y>3zN%tYHA?o~<@%{2>>F(C>)P1wgZ?wPNyhpy3zBEx%%fEs#Dv z+rR1;RdK3|Uw_mGJq4pw5_YRs@c3VY%Kz2(|E~dmWSJG{RqYw--JE*G|Lpm_RLB_b z6PtYQty%4t`@vtTDwECCUM|+x0#ztA3z*nz4~`%bk#M*mPC?+hTvwlicEmCJFogr*Jn{=`ZMvc{4gOxm3Rg7 zlb}YTx1=z|D>R7_V&)znNT&lPY_^k}^7$|OG7nCDyh%B@|18_bCD}h5FuR2BtC6^~ zV2P^P|D($26Z@6Pt4dlWS1YcU=fg4tR${ zi;ZMzh?6wrhu44iA8UV8Xj@w6T!W&#s>4~ z!d8K2mRl`h*ZX0dHvJOAVytOLCqDyC_>MWu0t2h}(1Bg`JgJ@;G=W)YGuoh4eK*zO zt;o*?zyG#awN%+wia4C(uANT8 z%=OC;+Bl#%1N6mkN;N6C`0xxC3esgOC+B8h)4KOn1?plj>DU8}r3Ev1hCs8>&m?Tc z1E?ZOU679-r+c*{>ZP zt(;9L6w((q&(}YPK$NfksUSQmDj_3@CI>|)g>~OTXWmlSaz7Ko=DpasxYr^P&ct6Z zo!Uj=U@!e=u+Q5KCu{7t%c!VWh{N4lsXu4W*H7im+AG8TUVN|rH-W_e|9|q4Y~Q71 z8?D++SSw1IfCb}*)7(t_`Te6*Fkutb84I0sdaP#mHnnD__?TQ7M)0J#zQDR8ISVS&%TvsQ%V5n++>gMte9VRzJuYMjzfD`Yw;(}N!6RmU<|?P zo6oaAeCA&axXS-?B8Rp|!B{hq3EJ0WRW5d5%2h>{^du1S4zjt=lRV|muX9BnO9Bju z!{Nt{eg1?kYD)-gdaa9Jw&j@idpahm9(HgqRT`6g(lhzAj#S_oQ9ka=fVx%D z<|`Y~#D^5?64L@eC8${w_~A2pBa#F0tAQ|mKy%=R<{3u1xD;O(2^uM(zcaRhm2E<3 z|H$CE>gP-MsRjnAm@TBIsIV;XN8m~6$G&QK|Bwn-6Og~{jSb-T224^@)*o0{aNyZ~ z)-HPbxc={BeJ9W8!|de$>ia!in_346Fozk2H~0I=v%#9}F?4NGRu*p=Sw(UFzd7P7 zS?PFIv{fAhY0-*Zp*_kpGwxKYf+OMG20?R>w5_Wi*iS%Xv|(_aCCKD&B$T`hpBfa0 ztEzsJfehz+h*=k|`zi(}!(5Y-59DXK$19Glq-d4acOdWB4Ml}EOV}1n(YM3lP^0`Q zv%t5Ni>maa4pS#3S6t;Sl87S?e?GH|;DyA^#MC1O$zYL*56muABH*6) zMsCdk3?qu9v6wQ5SSw-5fBOKfg8Mxky?=ramety3SrzFgc+V+J+RY`vOwvB6lAh{% zy!iX|>}yGP-u>10q&Dl1Rcp!)%cOOtmM%^*PR0|FPg(Q7MIyhD%K8+zi@5a)gd9M0 z1k16)v4fqud#867j~MV-|KG>@etgaR#qZ*Odtb4oYVtd24-WwOU#tOO>vqYLyw0^( z_Fn7jt7msU7$kf^3d64j`!hDv)zlnOciPH1qM!4M0q5M91%j<8T2xYhG@J0dmQZO* zhKUbmU-i_N`(B}H!m!Vr8)Rx#q$fj@v)wvZY1K^7D+3y&cAZri>)3~@=iXSYzLk6! zx}ai>^$rGX_N@7rZZkuldC9b)x*)v?E>C(5j>J=JGMpzqsCvk5u+ct{-DnaLWS5L^ zxewF-V{pQ+_4KB0F~wcTBi$nI$d|0%$Nl)e)?KTJLL9EVEp(;>D;n*>pEAGd&qNLk z@t+6TYSg!uyDEI1VtSyaJ$aHsG8^qytuO;0>zHr&r!aA@Ob~o6T<;H)-^J=1Um)L8 z+}nRry?3qv#h}q&d{H!m;O{<{;mvWKysK=h5`1a*DnFY|OQYM~tm^-THp>5)(fz~w zp;~AE`y_!f(HFBeW{p(2^Yy!P_1wc1!?@qxZ4UbZBG|4E*ge7hPaUj`|G=AUrUp}| zM!nD=Y-;|Nl%Of0BXHQP1>+EC}2|pDz0R>~xPFTakPI5%xB*AnCKhh*dm*RbP(JD92} zm#1*L{<*e|F1w7wE`jCQ%UB!^bR}`%JP(P5zD(bs^NM3@vnJ8);JyzHfV$X$A2}Qc zkYR_qgunX7`kgz!BWuFa4qnED$NxSSLKY~9e|&ZpKwLm+8>)sEs1H78nsU50%Q#TR z@r6iu7r<~x^hQa&G}y?~(|YKOJa~rVQu?#`x;LfXPr;AM%KmadaMhI$KYoC_1YDJ$ zqrBP18zt5MTd8OKVo!hY`PKLRN8q{Jvfa8sv4*Pj_P?wFA)RYX>okGqNH9j0>+bp5 z4urqm;ysC7w}d*Clhd%hI2#~_vw+6A&Q@rt5Bl#%vJ(it+4db&o1Ew~p7bh~YzygF z3>||Xo{VkMbGL4!eqU-cOqwH-m>O!6?A)l_~&Qpww_$e01j-$X(;R7 zXuDQ9DZoB|N_3cr;G2PqM-GyjeU6co5c6O-F!=tt#Ip4ld2EG8u$ms7%2p&j9(ivD z6vk2Ksfe6bzNzp^iQ9nJ1weDy>kvFU$JHw!j!$}%7R9&+uX){y?g z`zbo#*S6Op_W3vK4E=fk>*2h=VrVPnhEAp7x5-gdcla;9YXCke_IjMdjyrxgm<~;{ z_E!lB#d^EIawN!h#f~eqAHIQu=dWh<5zZ8^XFquwjJiUr(n_^0aB#!B;#oqIaF#tT zpLV>5yPsOM6i};LF#p_EiX$i3^pos>(a4Lw0$pK>eGL*;Lu7_G7i6Em43<+PP(zI2 z1DHrWOGsb=deHAaKVc+Wmmh>oBp`hgDan?KMhXmA|K92f>Y;7SOaV={nu5kBhw3%K z4mvi`w;>3dNwIKC0}1na_m)dk6nkp*rP#IA@FeM6f~FOSIUw}?Vo#+YoB;dqG5f^e z=g46Dfk!r<1D}@^>{7<#GXXoX+m;mJgW##fO=+0Hf!!X+a~mGA>eYufUanS^JgaDd*eCGhGpQ{=k)W{bRp^u1u>974pw)? zB-(dS-GsSk6cv?w&@9RhjWFP$c4aNr-Dk31@Bbs_^DOdWR|-NGX&lPpOMY%1b|CTr zL^fQl{nb}!uK)dS!E?Du`ytD&=00hYd3!^RCNYfOF@PGG{^t8XxJ-qsCS50!`MY5; zvAjkWeIxGieY|6SVRS^w^Q-DDPM^;SC=fq#cj0LTof0sqqa@6AxbcglCAK$Ub3^$E zKze0$j7Ws7VZP$$ICQLZ^BZWi=h-aw<2zJlG}YdU6L?Nq>wX1Z>_TO?7{R93;eL32YBtaW1h7cKhT?WqZj_uQYL(8K!Zk`S7}X$x_^(~;5Mxj9|}TI{ko{u{rrE#muIlFR#QV0W)KK;wy`a_TCSz6Ap?N! ztVdVxoV8YCXZ+zbu6wxRM^n%!>gG>Lq5+dj3|63qjiq6-opM(6#iWmL0HUW1be!g` z{pz1hw#{(Fc4GAF9ITdb)uXVZjv05bAa(y-S&yc}2QJG^WwbWJ($j-N5zs!tP?TCr z>9O*BCOHPc4m^$-p#o6;;c(q}jSi_*rhYVk{kBx6y`PjQ_TK?K*G;esc}X)U7@3=x z^k>lhAA;i!ssERj=ARBdo4-SI?NK7t_F4YdJ?5w7uDpU$C}gr}FEx zquFtL#-OP(_b70Q9BxNcFv$aZxuU*n4e=OHnv78arG<;7e@EhlDD}32 z;CkBbC?)&O3^WkTia6RlPZfD;uA)I5rN?uctvu$?rR6t^<5(D6Kpf>qCcewuy61!1 zrR)=n-{fdlX8I6Q+=utrF~gN*=sn+t6?^Y3kXD)c%_NuLNw?4VgeF`xRxWR6g`$uj zuUta1ttW?e46hRmnHbC&XfY)6cSNo32Yh+zi$dN=gouOV{jaEXMW%dxQSQ5{*Ez2D zKetN%3tIh?-$w&*PK@$0?N5e`Nq<)$Q?HA^{ht2A%w$@TIFa=VXH>YbW1h?Q4eD3{ z^rRq)j=0_*OVzPa1Kx&-rX&8C&852YkRSLxhar{dBHAYSg(Td$>m)EPe9pQnW?T}N z=mer2f%o2F!oOE0oAa1FaP`F87;h+T{(^v*BmxN&jz)M;+asuVsKgH#Ju_D8x&Ch& zJc5|EJlwb&!YgkRV)tqdXa{^t4PU&ROnWvYj46hESrG)1Kc)$L4w?@^r3R$7?12zi zhe4~m9;{O3!8f&VzImPdIkXiuZ4aFPSxZx--}^E{TlaP6b+h-y3_=`Qy9mzWnJC#K z6&J*Nr2X83>5uD!el-sldtrX|$g5V3PPnbuN7jdRa*wMXd#utR7#8}!E6uAp0+@D< z@2lSTP|bNrP_fQ`%8v3)qA&m>ubd*Epy>4M*(dz+;7mlq7T1)i)V=rm`ucKf-+taF z$`&&|1F029y>9>odVAtFnc1;P`-XewO%FynEFGMgsbsl^sc(#@JdkgfBF2*pn>f7j z?W#Ls+k>Mk#DgO80J=R>62E}#E*t@{`HO2v?P=q%?=$GNK%d3876q4E$I(D56G)J% zD0M1i!SbqI`c~f}Vq>1OQa@GE$rQ76yQTjwuaQj$$nbOSGnQSBr%q+)Zq6|3z3Q-W zp~~`an+cubGLR0&`gd6LFUJRMnYt4YdHZ)ik}aoO4f>PU&|Mp3@eB6o@Uw4}H{7NO z`iiXIB!aL|EE}#uJ`_0 zvvv(*dk4$=&jdKe*y{Mj0PtJojL6i<33-MYgwS&^Xf3P ze&TsI=^nb)xj#s>;@;hRw~3N$_gT;SNnj-WZ2a>#y|PJsIsi(dHl2#?3}u)Igb1Vh zk&E+{l8*TM3X;d<1c8pclld%b_eh&9V+N8f*k#3=RlxsIn7~N|JgV<#l?SIZCSuji ziXIEeIWcmtuTd(Sl7duL=c;|9=x3_h+mbrik{I~Tk$8xST`X|eXy^C!?K^~Ex>KEI zp$8gkEqoA!aBAp}b)t?WIS_HtfMR@DO$-f+(kw>;^8cMf)~nAB@;&%u=6Y(168eqH zo@MHdt2VC$`^XiG$MMlG@V$M&eXc3!T&khQwNijh*s?Lvg6OZh58y&lbkg?GK2SD+ z$7a#z)xXyN$kM|q2MVI|-mZlM@bS$3&A!@u%bz(h%Xw(ERxmh%?f|Uf=Uqw_)z6P+ zEL0!Cz!F^=$(-CX;`g1*ql%xazB9fX{L$oQHw@nOy31=RekaaqsNVWxmdXYQ#mz> z7lrU5Jf3h5Rcpq{>!KLY>-JJdOq^{MnpPAcW9VNK9a(b^D@v(Azb1ADPwxi@Vn2=B z8!g+4G+hZ#y{nFw|G6%!{MLe;)hwEFF=W2Hr9uh#Iowti87lnwb5rYpSdSEq{qb z$9q!0-n#O`8R-ky=JD>)HoEcV_ocn95 z_77s{N%5#mYSstyEaJJVq$?@`y#e2x8bG-jyuQlFbpACg_oNEV$m-=TxY&(w3x*5C=$Y96y8|J^_3c&_0!a6XkT;3`}C-Gq!fn|!Kdo>_F>u}^vG_UnuF#xD*Eg#T-Iuqo}I zo{c)3l5O{^9dGG!N+zNe+&`Vff5`Fg955so2bkJmnxo%I%=lSI<~l*tm;17sopdUZwHnR%}Z{QFnnxVQnZt9L4cwE-dGf7;`SgI=Z5-j_4jb*7#eOs`V*8f)Atr!PPvyF z2W;6knq>thoG;vJU8}(g1ew59)-Cv5!J5a{(czzRUlz&g>2pqMV~8u?VT*%7MIpOVW^OOFPBFZviWNRCuI>QftpA7;J#E%3=p3IF zC8O3PgSBBwWI+PRZ-1UTm|2-Rbte1wL(zN2Qo@ESPb*ghiXHk;>+{auf6$`R3QjpC zyZ(^iKWghu=w%w!K~ORJ{{@kgmMX=;Ym5|2Hf+L@75nI<=d4QS3XJ`>RqIorc3;ch z@0ip8MDO+w2y5mF)L!yq5g1P@Zy!i@y660XEF+sUf#gT;X7b)tuXGpBC*Sumuvb`h zd8Gj^0qW6^!yVWh7=1i3UuvK(A?Ku#dSbJ2X2+1vEXKKj>VJQpi>+urKw8MDb|L|* zYt0a#&yr1*^?3M_H(~N_^(@+AF)>maveOk2VKG$PH-kXY@5T7slkw0a{)hDEF*y=L zgqiMV)31m5n^`MQ0Hv$U5^AfsmIMsn8MsZI5;gWU^jSS#dA!D?nb0%l|>0@5FvbS&k`2*Drd)fCkX{_6^*Pr~y z4G31}ES{mk_&b%h^RJjnXAPW(8LdiC{5^hsE&Q`!Xu0`0m?Sp?6H^y zRV;I7e;4Cm8WJncfJ8V5Ws2+hspRSB{&2B}dzV(kaSglyvvI9_eSPWpErwGi*nVZM zq&H)9zq4^oojHjuv>SV`V}+}d$a9zvVc?;hSgeS!!(fW4Vxb^MPFepC@seW`4_O4( z62#2wM5wqAA6PH7u+@kIEYY4#twyp|ul~}VK?j$h_+4?Irai%mfk9Xc;o3uvHLm`x zEMHrlfBVD^kY|=kS}$V_Qd8*ndIx=I_W3YCr~_TWb`M%JKIxq+pQ#f1{H6K^CcWZp zuonV&uEuuJv&!veVV&4OHpiYhCX`y8#p%tSL684jveBi4d1m5od+(DaSi{>i;qXNS zE-0xO|4{(um#Q10>cP(=9O!sa{X4Cx(|;~G#Hs=^mOcDL-yJ?aTc=dr zXBt>?Hs9Sa&kE~!C&DExv%8yP1IIZ7cS@r4q)wH-qN28oz;4K*_zrL&LZX=%x|tVv zqO`OcvAWpnkW8$8cHm8{J7cru6lltMDk|1xu3v3im*CnUsesK&!+An^U{8QtnP#f8 z#7Lgc-27EOZBhZ19en~g(J>-#UugKb;{h@N?TLLDxDS?n;aE+-ZwNug{*_!u0~G)| z=&BwsW~V(loF`vYraG*fP&F@=B)bkLPLeh%ostHL!V2Q_42SRW@Kb`MgHtO7^;&7U z{H#Nt<68pE`5!^34E_p{zh|WFzN%U|PCCzj38L-71qR$y9N-ge5{w%|4FFoUwis}< z1}Mk4R+*txXG;aTC;HU(KGe_uQL+P3O2&)wGKG@L1*lb0b_CLM_aQMzT7yRmD#}4_ zRpRG)+cJ>FkYo;{xc*C0K|S}tu%jkVj+{dSJf%~?>lTWYJ735}NQ#~KEfA3GC`K;*7H&Yj}Ng$exqg#i-4*h&T_sx@GN@cF= zM;m@ZcX=+H#Ttw6{Y__rIDBtFN^i}cPuTV6CWBH_mqr3ptZkV8_3adUbQ!P4Fd1!% zUQUjuz=*OP;rRR4EI~DdSb<{4LN9NG;@BPGUUwh7>*=?`RB*hq_PbH;S(ADK*ni>% zQyz{Z;C=2|w5yQPsrC81{dp2lIqCk8PqQF+A=jkmvVn zi49*#Rm+=hYr>r?Sue$z>K&>~r1F-x#Mkr1c8yaq#HHQu zxsRVj-0POAM6ep)_XmrU82H7x8hVD=XwgD}bIcA@{KBY&6ShNQ|4_c1uq#D*~mIAttykR9NA(E1qZ-wDEk+a569d`lAP;*p`cfT9osV-5^M{oIS+Ru zBK_D#R{A-M-!TB!4n-&ZR%cny9K%jt(5i*wRAp1G9-Vnhbq%C%HHo^?C)U3L&u^-h z4qKy@&r^2e&emKp+^QAlH)n6NU*iyTteUwtgJf^)%9YKzU&K%)#DP!tS7^5zSIvqR z5c&H|$&@eh2^u*Le2W2p9s&m<*||_eY?kr|hgPj4$hf}R6K7&zFgZL&13`x-`1Okk z@fQ#7V0efe++NGf*Y+F_8hJ#Xh-WU>hQvZ>60& zL=-)9?~4m`d5Tmh9&!$8Cj;)cENFW|aX}%m+X^4$;~;$(4r)qw)ikq#T+}`*VL3oLIYYj!Amt0-K1(Q{3wM zmPJHGzCeCa9JKm+r~)bbnHm~GM_0{M3{wU#fnmSo_lDT*4YqniUPgSQ;%e%_zGgQD zxTqy4SylAIoE$ZXwhqtP%KKPYv}y)CuE+Y%eo9La@Std_kG;1e$u|5rQj1I?1+W5L zViJsBws1^)E6>}r2F4x~@<_~}Je2)2kL437($Fe5Ac?UYZT`elVCYv$%?{{$=kEcV z*jj)=YMy@30{wx!lH1J%^K=iPcr32W3qQi3O5u*HSH4^I-b`&A8}4&&MVYZ}c^w=X zY+J2r&B7{GG~%BH-ZA6_b%>^BN_lcZMN@6g%O%J(srmh3#l z@c=mgeW&ZI^w}#rZmK@K!(&o|b$s)Fl_JK3xvAP86acRPYsJ!j0xXMRNXG`BO1bJ9 z8gNhbOeP7zZ>xmBh{UinB&8!ChVw12T2zX`Y!kd+UTA$eCGh_u1LbtUJUB!|O#pj;g+P%&yAC=@L6f|?%XC>ZRjZ=;Z(sw^!> z!*xaPBd7g$)gG?O5(BrL(stMUFGMh!U=B-w0%C|~#dgLfyS1#I`O8{ozg{CSK|wyk zR4U60S1CB46y{$?xw)s$4`(oWVn9C9np(xR!@E$4Yxy%r+hJ*=vtYfLe4FfYv0u1+ z6E{9*t1E>K%V@qch2-xqRm2XSfNBMLqasIaF{{XcYFYsw zH&ie9hwmFNwiNBa6KUKxdH0r5$(mNl(?p@8$>kNOkaB7~kPHFY8n2P%N1V+v6W58; zp@uRacu5eLIK+WwCTe_p^$_cr%nW{S|AUlC`RfQJiff*S$>gZQP8cj}Q}4jJWgI4c zuAzhADVD@_oaz8YlAl^R1_8JfW00mc@Fb5r7@&PR)>^ylm=3>RuUrly$$62o#}f{FI3WxPiR^Q{haAG-T|U#abQ9O&5)hb%utn|wv^pu8iUTxV zZ&9AnB_BPG)tM; ziVcArAja>NwmTc_?k!6lUh&zAT|M*KpsE=%Fa+F+z*Ffloe2)Fk&ZX z*x&SmPfx)(Na)NWatjZX;)!Z!`DDK*LZxVd?69TOhS!MLM*A3F>}U&5v8+|&8%X!W zo;Nn+2gUy;Huy0Db4i6o$3^c>G?PlFXj#k=j-hhJQRdt-n%Cka@4&GkA~BJ>Y(Vq` zgMI(n?s7!2gzBnFH}3>FvqMLKego)JP#E?>zLKNjoJV%b2nVgiC6dk<9LvekcmPCm zflm&$;o+{XVb+*0@ZaUQm0sZK94cO5Dvh#U4m>Rm`lQUUuIxE?pors5G(Z4-R5q?v z@BN!e+Eerw7j*#GRBd`)Y{Bqd@Exv?2}h+JYUQ%ztH&hS`;1*y0p0GQiaCckB#xJe zvwYl%t-&P8ehcVM!-Zvj%~!7@GNue{F)H95wWil#sImjOUHjZG80ORSDyg2(r^VKOxpr-$K@L!jC2|!$2Q`)0FhO`9x=p=i9Np%_`lE?HX?1pD2zG znCQw7<-KDTd=K;+H3|hzf5U1{z_cpoH-pcwKHDC6r-a}{EOg&v`_d zJ1fCcl~m0;7`(ce4+)x3``6VM(t#dyQM-qeQ*hB=<@rOVtPbf~fvqQXmk@BcCW8^j z{F}54&FU=6Stv5tYmtVD<**NJ8KRAkKwa9}IFotU&As8Q1R@m)(EEUd_bqunchJWv z>Rn`$Ydz&Bm{*GO`ybb#AJfgW2C=aIF_*R1S@)z((*G@KgMkM zWW+i}@EPj8vdsf`ny#P6umRa0_H~lWOQb&}*$`{W4MwqV6~=4e3zrz?&o$}=fUs;s z0oL*CdzWO{-`#afj_UzcESf+g0nW>GF zA(>X&&4eD*{fd;@s99q4nVw~Rj>7>)cacN=#nF7mB?H8u2R+)LRyckl1E?fBUO4rP zrd+tne!9l#b+QI}wJ}vojqY!=vn4r)8=zSYV~nLF6~>=3XDi#_MrOfTrY|P8+zm6v zS2Z;gI&Q0)n}qBejcs7`F@&Q0P!us7OM;adFxBuLt6d5Bh8c9O)QY3F6jxqD<>b2r z0tm)W5hzE5696wyt{q)ZVlTh*`_2%r5Q8|3cOE#JVMVUC0;Jlo$li+jq2wayt6JSI z4P(C+AxtXCs{bymX{6lj!~a-mz9o!e=4Sv;ebqGE;e)mQ`dNUO8suMRi$^s47M2D@)|&d%3dE~~LY1r$@q zrWC_f4G`9b(LAMYqApU&olU8y>if8~+}}!$Pe;q~4_v|R`XQEPvP}7uFHVKg=AUI5 zi}65SN-n1VtkFT^+R`SjhHp=*um+XO(G7%-0CDdmYmPbXu~T2z*yKm00_zIk$6Sh>c3H(&vV@kBIafU~hQt;*DiM9C2qu@EAx7Pvt zzpDiI`d#Y*W^_ElMDx39KdJ_GSzsZ0@XQ$SfDwVO@EGG>ENAV-Bojo83dCdn-YtGl zr`QVgy97TxD*&SognfD;d`pum=9s#Z1|9fh_Y%VrBm`Y=Hl!IQ!%$O;9Zi=203Ote zOk`M~G3m!?1NFhg;jxP~@o3{2F5H-B!e(QSZO^GrP#=p?0!@^F@&ds3Ps0yyGlf0 znd3lI`hJB^4~lA^3o}3`TDIQ|wuFmXAb{rJo9x>v>{g)Pwp6Q(+~QRWk{Oebg1s_q zrNt<>&9K}19n3g9YpAu4rsSa%LntymjzH3ckFb)Vw9i0hl{2ZXj%l`zX?AZqkbCVV zv)AQk?j_sMU=tz(K572HW!^n88rv7Bb5LfW^KNfKCs20XC2BkNd+*QAY!}##vC0bi z^lb2b2e1p)7&!c#5gHp#=|X#4G<Oxg$$*w$hzb=<`XejhhKQ9Ym*^S!?VuZ{c^2((hqKko#DAp zTtWNb#&f7$zH&rH_7wHm9n@j~(+&yby$DfcnU+6(-Y3!cR@^dt+GVxF7#%EY=+y>)dgwaSPk9vsYaT08_w+|9IUcUXG^?%-nghm zuZ!5ys;+(>?wxT6f^E5cX!s+#g1*9ECT)>z@eR(ihw2`Yow{H^A*8@H&d3b~GmhfG zXxbCnsb)OF|8CD0!==|cnV?WCGhKeOQjqyMVoWG(SUJ?Q*njQu#$U* z#epghD`~PlUI)1kvvxSI{#_23sy34eHgq#v%mcmfB+@q3+lNJ@;UAD&I*K&}vkqdx zBy}^%ds4kZSA~Y|_MY2hnn{Ctge&Hz(ewnS^-)~c{TTN>tajgTz&DUKzxKHx_aR?T zot}WXhHAHxifizLynXVCIqe)Vk}{5(`H!Rr>@aEo>@Jio?P~1a-HO2@6SI~$aV0!t z5=C|6(6xj%6#((4STpMFw^gAnH;LL3h;aH@8nu`WxH7uP=EEuI*Clr!-uAPzEVvCQ)_ZBqHKapi>gLh3&I?ZuvZ3x%Ua`=27zA zchyY9#R#^iDZYL+SoQeV8AWu;7|9}@;+o-SHs$a=+fqP%j*HGLl+vs(_Oz%5)3g-r z_UTkLWlj_@hoEwJSf!GXFbAm~dKxamVU^_6E$cV(!}b<@SV9KoVN|Rh@&$`=F*^tD zE&o86YF zc{!XOJ5+-8hLE@V&~X`77SW7scKAh!dquXV0C+^}3%wOK)*%S61r?p-t>!&Ygg~zO zFr;Rl<)5JjJ+kf6{*28}cF^uBGNr2$gb03+6ZCb@w?OZoFyI?`l%p~SYsOTziUq>J zfEI?XGXr~;8!U3>p1E;TSL}r+Q$sTeh z67`}Rt_@$nA}8~ODhQ6*%zRN1xlerf7uW_|6&Kf;iL5@zqb!+;tYwJ_`q(8M+eZ+~ z#(Q2wyH)pa2b`zSyXo26TaNj#F;R}UJcyQ%0; ziOg@P4xKXTqCe`dte>+hSk$5Rr;e`%7J8w=f2E{J(!>8LPSWoLxCt7#odMOER#}*% zIFpavQpx71Y~5IHZ@j99$%}f}xP1>^&@nQ16H@&%$2_q~MfUY{nCv0h_U%-`!<+c|(qAGd@0g?+YiVdb)}6Sgqg zx*k&^+kD3v06Xkje6<(SV88fX3m8H~##7LtHS8*Sn|`#f`#_h^nWtL-zoI(e zLofY~Smy%E3=)z1CIzoO+RCk>2B{7l#70AgN(e0(37u$Qh3Z>v#r>?MFSC8|48$fV z!5pHCV0c%CLcogW%RZ*iGQv`3R5e4G7oP&p-67{U2WHHwQwX4#GYJ6X%SN;?Rr7T} zv8QKsNE+vJcgiv-l%oEIbJU2QWxYzXiHNTV92Nl!jW=IcU%%GY=Mo5`@jCxJi_P4T z81$P{w{NfstZLF1nXxgF?rSx==|`8XISKq2(0HjjH3-XC#%yl0XZ7<3_)>V54AIL3 zwfx*iy)^~Zh?s1}IEs8)S|f=lQ|F9gG|^he88{Lgfw-BD0AsW^^gd(YA0(#jJ|LWN z2y?~HnTo*P9WIpA6}I$TQ~%P^8h(|5&^TJ4v!GFK67tK2u2 z+QOG&yAfW#k+_V^0#~g7q(G_xOVnhpuMVR)fC7N+qLF%(=w9&2i5R-KpmW}fSQQ8! z4ywh$wM;T6oL5T}jie;wE6RNyWC2^iB7M^P(3z5qh6Y93?DExEH?$sxOIf*0@=SIr z!HLN5?;`@N>YqRnC{$}jQT~#BN6|E)Px*7XS1tMiC?}~D+^$P~3DrW^b3Zdm;Mz5@ ztBF=*QVRtG`J$X9|GH9yKn$46xRPZ+=PHRp9#2l1M0?>6Smqga#Ib^6*Wwm^<2X7D z@*Ee;biNvwK$T3X67#8D6^elMvnVjlx2v3F!n>qM7gsrh0yHh#(3FakUCelf6%wVD@06Hm5J7`7OaqN-#$I z9F=USMcH`NcA(COBq0K+r=8#P?-V-TRyojACKFrsM(*0~%dh41l_e=K@zX}QX08D0 zJ&=CRdoQz!?gnV%!pd_ZF?N)b(Pwxj6#!3C+&0*prtF#3ck=Rsz&Fe36|)2Aqm`nX(EKzm9*U(w94N(f*m7 z;FJ$LP~oOu#sOtCy|)1@^GC=X``l8Z<0OjIv>DaE%aUG^VKvDV4eO~sap?Uh;{R|z8=tAOhQ+;TGN>x{n=j78xSMk@AGp{yVmtf zSHC4i@^1fb|A`rp()3zO*UeG1IfO+6XfpJW*yRF7UNP)G*Z!P*rBH+Lu3x{YiIlz9 za?pN>*-EF?@c&`&UDq5rc3jaw9>4!18|O!tl)QkKR8`yU*{kPUW4l@mU zC5h>}>6myE9lgW{#OVpv0c1p{rvz=Pg+mG-wLREf?^T2CtL_h+-iRnj-4Q~5^$PLC z*@o*@ryD=Q4JI->acpuhL0SYYGOSMHw2n&S|^fkhIvPJ&+`DRhib@wF3^kVeeeT48 z<3uouPkAb#Q^&1p9v{`f9Uhhno*q0EU}cgeYYJ&lPP_vJkr}c$;8&ujPg8X zW0n>YV;#PxvIHFlOP`Z$juD1+qXJxk{mSU<7ZPxOc_Ds>mtlKg+Q6~&GL~TY!4)#- ziN)_%m6j14iONuqGa6JVz&*&b$VCdY@Bb?K(=K?$ETE&7=~w>d7_n$S^i~yl%>J3H zl|21=F>NmASJ_lsLQf?eJ9C^P8~AGJK=^e#tbzV4bcr>O_Wv*k&w~_Ag7<3eQ`@n= ze)jG$J7=e^)ur`^XO=0!$wSC=9X(2Y!>MvKz0luhp=)Lm1yZp*9s~5tFcK=>2XKa# zQJz3;BgVH@PQxO-=&m7-si9@DA);rOMBu@5i|evupXb=Lb6m~b6T39GQUS&on%Lu5N!cIH8nA~t*`Ady>e)DUWk_U1#pYLmtK!J$?MsMt$0E#) zp3-%vN$3zFSFW4$R5i*HEacKu>$ZLWmB)6O6WJLuEz8P%PT+S0lf%LUtG#Sj1-T$i7HK(TLPbv)=s zzY?35TWgf*)7a~aV1!a8>!|zJVG?FNu*Jm~oRoYrfDg-OxL>RE~< zKSI(l%vxNl^jUx)T}InwYprU{!w^D%U@{-I3hxi><>`-$h6Nw~V!wNJrj``ZAG|Y2z&oMCW*T zopFdIX=C!8og=)T&xRL^v+FcCrwyo?9W}!nMBS3f&DjCLE_;Y}GX`PuS}jyJLH_LTu*XHRx^Bv$Qw7?;m$AZS7JSUj` z|Fd$<4iI$)DRymA5FZ{ZVa*RQ>D-E-XM1rJi34#xA=WSq|A{RihLV{|;50EVwgO4< zj>@4bEc#bF7vk=a$~CCZPmBbo0N{#7=UgEmy)jBsGxOy%Sr3USRaQe=^+^CRK+eBU zJC^iquCC7*39sa)fLyx9xRt_vsP3V?jyM?(k9d@Chd(=VKYYn6a*mv@d-hjKttwx7 zdZ6WQG4LqxxZ8y*WnNYzvFih^`=I^iZL=Uv7Z0or%1y>M6J-Z);#0XKbEf}XE#Rq2 z8m}_iDC-hE(Zs5zwZ=aftB){euzGT-xhF0Cn>8rWHQ>9s4J|w<1 z=MUnbvboOdobxyI)a&>eNatxX7BlDT`|{x{{q9-N;~}R?rWj~O7CXeQWEC2At8EJ4 z-JeRTeaU<-yQYEyY4hk3n^Q7@JHzbjasIz#(@kcrX+(SUrkd^tn(yoWt9WS=c%Hp#u}uMfL+h!19b0hXBF|yIs3UhrL8VXJ(+)d7ye%FSty4 zUFwFbrHyP9QkF1~e;Wterx-{5{p$iQy=dNDCNVUo(izIM%A4EdKnAy7%;6&4q#ll) z!S4|k^va82zHqsN)CN15s3E#~cDi-(P%cx!uh<>a2+z)?LI02Pu&FUUwkUZOkaPi7 zlFi!O;AqWLCNGCO6kaAa#Pc?;(XZRZ%V34z5(iPpViR92IC;Gn3s9}ZSJeC1Yxi34 zVbfwr2!(Q^HG%Me4Ce2}MV|;FHpv{H18VFdWp+nXpFn+=(I_G~2R3MI9?Zd9<;m`I zTEKFQ%7-UnyhRjJjVlqk1xtAjzIYC6KX`*^ujy?}sqDRz)lPM^86^h<4d8g&uO@3O zmqf6_Gpbkbq&q%qR3sZDGcAI&k6?u08nbrXNXMoI;xzGdS&m$NNpA^QX( z`1!27?g9tN0y>|=g7Rd+NTT2qzyC+u@A@rM85rOOzVLg;*$;<8G4(5=*qU;9usSNt8SN9L;Qoq&Jh8K2YQ{mFaM|Ccka%R#=k#%6_7Fdh zXJ!i>4P=3i=o)hE(L)RkA*^G3?OPM8pRd|_X ztJvgPeyiE7(nqBJ*(LQSJ9?**aoY?H;gkoc_FqR2oXXF*vnO|17mjp98kpUcf4g!` zV_n{P<`DwXIPbNp)fBbW_M8wuf9Ob%8X6SB(DvS6=lM*d1&BPm!M94rkJ=zx3m$N( z-v|+B@N2`-3(voXfxO>fGl{JF{q_RhdW{^-PPYdtxr?>7+EJz-6o5MaJ5D{vcm>ww zGeE8MdSt69@HIQDDCU$a9B}Vp_**RPW!z74| zMe0HyrRr5*6H+HRcA=oBD-{kpm8=NVHkDfKoCuk}RS*6z z&p2ZRlQxiR#%x#tV%ePlEFfJG90k*9%N5aytV=OTct9V?Ud;L>IGP z6qSKqcCPcJA1UHlMa2T?Fg!gfO1b898dZyvd#Pfp4)c1F-TY0TEe~TBs&^=lang!_ zk4}C0W2%SAFI3FYi9tA6$5_g)IcZ}{g{aMnbin7f)-Ds5& zQzQt?BxY!byk+!`lniY5zu4xl$)`Q_hl29n_Gvsx+Mh6^gQJYwq+P$xCL@hsrwCGL z0fi{JRK;lY>|rbw$NwQ^c__j2GJSdc3_H0ym0aNx9TwF?H-n@AL={CSe6D}SKuEdOl1L} zSR6&KB*gM&b5dQ6i8npm^fGg9@W&v^JR`)nQzsfmA*zv4B)qbFs34R!#hj(#d?sdV z;!^&c&7DqSe!V}6-=PN zUnjRov6Knhf*$sV4@D%#5fy3r)~JVN5JZ>gFT{S!=)q&2D!oLX(5+P2+2Ah@`;8vu z+!B$xWn=YpWFo~#o~dT^+zjdj&-je3)L^l?a;~xWt!4nmSlaxmH_6l0-oezg!7=Xh87Ls#_~jUo>!X@wO^s z#oi?&tP%ySIqR~9l&K`_Qmq=8;u|c=4KcKsd*>lDf~#QM-{Ia}f*d*bedgW@s2m>XhJZ%B3MGsktg_>*KTTkdK3t#s=_?JeGNQ{I!XNrgHbEm6V>C&RiXX;vUaSB@|rt%r+FqMxV z$XbzsQ9?DnZ@UHLln^AxM8Rs`gaaQdl^{$eSFCy86Wi4(v3yuqyAp2a_9|K*EZ?+9;?D|s>OS}K9$^N zR}*D|JBJEX#fa5@lyt@@E0IOuS%>vyvfsbYxu?773ZRJ32t`(0I^G#3375=doP|0? ziR^euvk2&KyXnhZ(chu}`8dff*V{GpEm$)Ip1j`B=u2BI*D5iqEeZ8FnH9B%F%pUQ zUCo?UbEx=ejUpWk^c77Wxt z0x1pr3n*;nbLq)hvs>c>*UAgQ9BZ)2!*=))D~L8}Rr}+~vJ-sJ8T1oNvRhwNZ7>BM zfh9o@^I?{Oir&9NnV9)2jfFbGPm4RulIew`8}IEXbL}VwiZfDebA5zNl_j zZsjL!em}YF!WRJaItMmZ(Y?+Z>(ob_MtSeENX#=MsMq^zIFIi>*#L6cdph`YO9SyY zpryg(QuJFLI_I=4bbGDwpI_lvA38=gp&7CPn#~?GP6`o$ULD`f;Mme{&#T z8w(OGx9f9hpcdy2n4Ytcl}{TBXE#T7PVamHSnp!0!xM=?U>GoX%JwMcx!OPgcAjA? zJXE|0TL$M&8#G{F8ehQw3c3pq&Gil_O$;wPV_b1W%JJfF5qrZ_(`{GUnl}xP#P(0( zf**iI4g#A)ElUb678rYe$o=!{!~Q09WW~4)-~I2dpRMuvQxb=1a5f!&e-DiF8UJ3D ztjlq@h9Zuhy&GHV5nNRe_;Tzr)%WYc!H{|`MhEH|pAA|#E zT(iot30i|-f{ks|~qhLNkc8c($1{`$FAe>lCayg*`o zMZ^z%TP#~Mte$v*l$>E2?u`kDzu$^H=T7yk6vP}3PSNct^Y#hr2hK13ks4o7TOBz zojakzfmUq^1BBIHraUB-6U8~T8ZpxSU>f40_#J1aJDm{w#b*8KykXwHl->;azCq}#_)gl9IY<3nW$Q~dRssDPcGgXq)>yXs zabao`9?<`t9vI9&yMMl!w0nNpknfDr=mKT`V|5v~%-oBLiUXf$d8q8I5ZQVFEpc^T zuSwh>T2-y?Ilm>|qU_wq=cw+>+b&NeZViitC}jL%6(N9V7|`qpBp1K+gmG*XV4?Pg zE(vs1L+uPiEq!DjE&3X)mAR{XpmmvI6fJ0e?#i=GTLrsJGK;Fpg|IUIsa_3V9)V3M z3Iz=eQUH1ANhlMzAi~T-tAXnX8m{U=c$0y|Vil$Zwz}}B#bO%xKyz~7!E-$4od3_C zyo}96*GaBtK)8`rBIa84AlT9eZaQHN+%il0m#rGdBgzme2--S{Qre(w^?3IX!X{~P zdKwD~S8rK5R=|KP1kivEfbgTU2-oQy##A#XjWNgN6C>J_z$%DbK8bq&`y~!@8#*rC z2D#aSA1bu>D>_<)pP;^kQ>Ny&A5*~qr7(`b@~iL0xUP`pDk1crsd7IXc|Y^`UERLHqpEh&e1^X- zzv3Bc;6*iN6f)+Q2K-e6dmKB{!CMLBr2$X2_r6|72;a4t#C3kI%?J_{L5Z6XC=@F^ zj5hrTJf%i9V5=+82~D*uuP@~fNg#y2Y1A>1vg9*wUy=tG4*9pUI>+^LhlORJv5pPz zObxwE9l}t-e%P>KECJ~r14UyzIdd0fy}q{)&xvm-U{1XPVjBmh?51yfk&euth2Xx% zylCGj2-W(}-^XtrclVfp5H0}%WquY*Pm{;{lQRk-_^G~k6e-R2bGZ1s(8>YLR8s*Y z*isK01bY9yDn$bgkO(BskG5-YvF{tyH;&@ob!}tAqfZ4nzbPc8;BqU)H-`0?>*q3ALF9Ms6g|Nj7BhX`mtA4%^ z-kiYKn`rXR}(UWP%-)Aw>Ut-y%JC8GDb8^*<>I&!6=QLAfs zhW&EvHNhTeq5}F#zEQA~jYJ*UG0%N``iO3=22?4A3hBKTB3O)C*3}uQd>s-Y1u+;{ zpt`5&9j0B#o5+iGDh|mxQ19i6k2?;98ym#PvOG*WE1yVgtpO~n&jxAue z!1*KTx`FC+>mV$bQoHwS7|OP9Z0xfc!U~RNn7>bY;v2UK(rP-#W$r!=C__c1Cf+G^ zRO}RjzXFQmpz7S`lq5qCtRJw^)2#MwPu(T+T->#SW)qB5SkvF#OKBpHYo=q+>2LmqN*}*uQ_}^u zJ6c<0V+4E@T8w$>(C*Fb2ajPmqOcb?Lzd`FYPxt6w}YXI7}{Z2)?J$WgR`4bl$6y| zruz}z=_{=y;(DFKSug?T+NA4ApX9T!FgDZ}RZp6Gu_?Zk#}cxY&Sbg$y{w^ou*yJ0 zuS|baDjTcDraYv1-SMIo#Z%EBvHDFHgZo{Gvn%~&*or^VUZj|3`!h8+Q8BEDa=e(8F>m(86X)$$d!04iFR`hN(MzF;KDi5ac+G)@)w(nwK{bF1 zJeWE-#Lyc5K6zlel21CN=Vy9mU4QfUI`XF}gDV}7K7RQ3P<%2@zVDqe6T)Y2zH4$i z4sCdqst>|5MnMc&PZgZlH_g*(8me{oLG3^p3#r6knyg@X_K5__KW$?rFP=I*({ogt z;&I$ETx>%pYf=8(J5t#p!QN=b-X97FI!&xn26ZMPRvTf8cE~PRup78QCg9PVSjBjQ zVu$GpX0bkGuU)JTT<^hsyzJXg@WFmp-zf2sV}AKWX$E1vsX}mmCbyx=Nw|)ty@lyn z;ryjqEYO0VW7-(1{$1nAg}NYV!KeHA|A)K}TLY-354gM6$URv=22kGRCo^u>_3L`C zEAA7NnwEF#2398|R>fiUcCPoNV7kvZF(kKWY|`8)s=Naby-ds*a)Z#Q?yl$MYww~O z7g91OxZ@SogJvCO$Jjelzsk>6(hsL`rRcAPllD*jyqAgP}FciHH0kYBG$h;WG| z$LvdaFF;`A4WbcNdF>oQe7?15Uw1MPELW6Zgdg5c+K;b){d(m~r9vbZc(ktXi?Yc-y)K{vXT6lRg3Au^qfHd$+N2N5vF z@9y-vk8a_8<7w#oYQXa^Y?WIg<6elB)D5h94@O2smm)gBKE$u5f6 z&b1gh#8qoRXYh;(H}3156G&z8hEM|zw|F>EOrA3H(X;De2F`3#^PsDn-V!IZuyk$+ zY;%t1deNZ;XPU%sOFc)Ia>%{6}Zib`@ zM;%vGwz(J*RkI%9I*~PV0nrPsn6*x!V-E~vFUIAitt~~01n_31e znG__=Qagh(UrHnvizD=Ax*1-_pyYz~f!*L)9Y?qBd}9u#0G8`}jkcqwY%^!Xml2dk zzl(4^RLWvJ3%kxhVvz;)^FTeLawM|f>oi&hCf-k5-SsIneQOXE!%wT2^4uQ9EKm@( z0zf0i&{f#G1yTtbGl5F(t{d6@psX);QCS(WHpnGHtY~VK0lxGh!FCC==v8GiICVcQ zgl>^kGR88%LZ9hWk$a^Tohcwj_L(~qnfTD}0hg~ebs5$RPPA9{8#0MmesGA(J4(r=e{NC6TTiq54SDX{d4Op|w z?!@edARA?lZ=r>1J#)9#Si0DVe}A__g+?|Y(QdC99~dymHnFPj3)DcrvP5SdN_8Z) z1Jb*A`5quQz!>VjbrsvlMx#!6{2))!s?AMApu-voG`{|pObJ63U%dK8z5f{SW2qyK znrwZXxmLKQVCOAyWG{?|wT#_9j{9+P43p$9dsl{R5Z7(rh9^NY2&iIXL_pvBQ>$;B zfk7PlL&W)?_E!kgKa6{*$nPBJR_4*kE^# z>@dBU5>N6A5c{AQnB?g@Zk{9=U2~ zt8#N6PyNiR_dyu2ql!mtLGqRwuPwYaA@pNOr`SHN&qrc$Q8Nib9_`&%4Z&ous;zOM z(JVtaZYMFmwhscxxnIm7tuhN&3(RZO3Z3P_!!xn{NhJNroP7$w03@e{i4cAT(7^gF#NP2>iJO%}=)H&~qvW={|5_k-irD%e)-ir#qx=c@5t)VhWkQ@mmZHE2ke=Y#m1_@!cVDY({-yP%3#?y%;Oy6+LyufQ9|=dfZve=0j!QK?(d&K^8F7G1a-uo~E0 zTsNoejSt9c6}-5=ja@eh1W4>;m>)iCH3v``4*e*It}am!Nv?WF*2p`NSsgV(zZJh; zS4l&v%9HJZj`z}O)7$x_IC%yw$$~2oPg4EDo2T5$fJQUFA(N{7EIsE*YA!sRV7eI2 zYh|z2|FPwEyQofly+y%QB57OOWd^qDF z!U7z&W362`KOhG}`3QG-nYJUouj{La);4$F32~z|Qa&ocqH6evdYPY;(#2;Z(k(X# zVz@^qvM{(yV6NBt2M%MU*kp}G?yAEnEw9h8oGO9F^aLROE-sYU^mhduu83e*Go~GQ z6v`T(QJ|f9!3118xxZtk;00JkF%2Ed32&u=4V!Kc3+gHSHi;a7#CNL#)d)mqRn1Mw zqJ9>eVJqudMCSeWV{-(_eKYE=(?7pTJL5Wc`$qeS@n*X1K-_*Vlity;kq^5IQbvKt z;glP|(I)&3&;0s*LM%r>oHMK?Tq95;lQ51@cdT`jCq=jE9oJ_a@~ zH&XE^Qz5Fq4&Obm#rXbktaR{PW)pPG?DyMkRtM8`m>bpLs~$nRD`iOc$(+Vp$szJ@OM8^ z>6BFLDEi%X2g_5dAvBv+3f~)(RBYIU8Azi1wTi)6*E1Mn$Pkz?So|6H(-d@ zjBt6VnV0r04b=G-8XVSH zu)P9VtZv}+E@~ekcf)j-a{$ITLlmGY?dRvTVAvQ+|4)9?$4QuZhSGCS7xN$GC{IdzN4>S>t&~H z0tG0E5_gv3gp(qeGHDXH#2tD4DbHtYyg#WcH0l(Um-IYHVJ6uzt%8! ztl3Ur*z^clRMRJm<%ypJ!$Ug#Xizj|R*l2Olvr$fe4l{g56k{97J8gY26p5_$uP~X zFjz5x1M}y^958>kjsJ-H3d3;c6_Om9^V|J*WsjGsC(VMk+bQ=WZdkG%b5```x&s0k zEW75?MWWKNJ5K-)Hs9yLhX7|MUaSxxhu1|Wu4BPPa3ZtA1B#mr6}Ql9o_Bj4^vI-> zR6F=AmT?&jqirQV51?^&fI;k}GLGn#KTc*w7{MSCjcT2`*>p0=d#)7B3ZvH-!)RwZ z&fjO{MrQ$LQ~-nAM|FvnA-4oViwebjMMbSy#<>|#vx!7p|86!5jc>q&1=3Mwr2JT2 z%T^m%RizE?sZ?XE{UeLRB`SWE_Yt{hIQkjf*Isp>VVW0`Mk$4MlnKb$DXnz-GA0vtUja?*eik2sBHGG0!d8i(_A;vbbq|&>PeuE$jR)Hm zb#7;wW-CDO?l--#076z*n(6W8*1EbM2Il_(;T$5%xMBwhCGb048-U-&P8sY}@tON$ z*a29kL>6YiGFY-LX{$<-aV7t;*aQA-XHpxxohRAajDJE5=86SFnc|8Iw3a?WCV&E- zn@Z|HebAud3dv>pn=a7EMH`eO(9vN_mm6TBaJh!v2YiIWrkxvwll2xKyBkROz0LznG65>WWk!! z?Y_iz-%)h%XH0C}c*Zs_uYpnDi79zXY*-XY-^wa~tgunAW{lT83?@+Yn53zoN){se z01u9rY4$)Q7F2*6zVx9MwOyQ1XPPWbthznGJMg(eQU>ToBf2$nEf0ta2&(Q8bWuM_1Yxe}N!T@{Ny;!q5kA`Q`Q) zNe!Z|^fbG#E(kv=EP^}ETp`CqeCBUui47p^*LW2Yk{SRqWA=Udtqvqc3j8dGna*b| zNl+k(10v_C<>R{k5}tlSYs*?wBjIt%2RW7ynU2JCvO@f>NcQpYnOHTEblz}IlEz-^ z$kwXLlo}^qOk_152vB0T*I3BA#or~Y5nRMGrbeSJyWPkkb5s0i!YqUW)w}2UI;lQ7Ivj;qe}8QZEHx5@*|Ik!p% zZWW8-@Ufj(&Y$Azx-Op-yi=v?B@>v}k|X)XoI0K#)j5ZJ4t@da>u_=7EwdA+`^^>Q zsZ~YopZwY{mKJWeLO;VMsouE$uyDgGG1+9njJ{7=TD()Uz>XM`;^<6n#E%UOfpO8i z0@iCm_IBc@t>HiQ@r(DJ!fmm>!#$_~X23WfaYzz~wf*TL0T$vBu3b?j%3rtS3SU(_ zUUm-x17Hh-ACl!dZ>Hg)ILn@9KbtRw%-BpM%6CD19Ey3kwx3%*#x-6kzNp?U^_g9O zZJJzBMz#h)nV9EV9UA?ubvb~|>HZVo`5dpo$Pb?JbT0J(w+p*>0ZwQumn}m9fZ`18 zUB#8L$??u^nbRt8+13u(?t#E)-sOAiM3_l66v=EPpE(&&x00?f7z5j2_;QGKt(hnp z=IJ^xp=oO-WBTmT5c6?ch0c4K7}h<@J!~H}6gG*Xe^f=pLmy)&rWXUkk@^tux z#W8>YvitQg8y%Eu(B({9ht4Nf#9U+=l;#GmO#mbL_Dwv`)9Wg#U*;lObf~TZXn4Np zBuM4ry3qjffr-cVJEK|Qf(@tAt!^G-IlzeF>u>zPxh7$%P!xyxfd)SXR+4{PBZ~@2 za6YiGZ2Pa?dXdP!BP_Ug$XjErnEs8oaf-`;NX>!lwWB z8W}8my1Un2i^C?bdO)*e_s=2Rf4Ugel^QarV~tp5{O2dXnBu7Hpp z^Ar{3ip_}=185k57xQe&mH--8FusB2K6&s5Ogr<4iJ9_?1OfC%=3hTnhB}^LwjlzUo={B55NB%^O%aHPvt;W z$YldsJL<3NrQId*J9fHz7Tpjv7eKMGRBO#?mV(TwO#@Ac*e(FpIV4YyXwgxy-;=i6 z%@lm~o?ekOD3ll!@WqbEKWgbuN~n z%Rb=>A!Oez7R>Ps%k>w6gAN84!54UVTL(vZqI6be9b71u6T*eswUr^AHz~U&BpKyQ z!R+__(u<8QJV@nO1SCp7Fdc(LGJ zDl1`8$DmePt`Gb>*??l!-D|IW5)?QL?t7tx2#++c-)pka_JrA!#|G!yRge@q`lnDp zgH<<21L&YPV$=*(GD$32(?|PB)~m*r`zfw@Dj8Qjm`8UeOWa&pE7RX>C8))t+L|uo zr3T3u6ig`MV9X;>;iQp!23Fc=<+^ZTM&po~K^M18$sQ*xVxlZS+|^<~M8(4nHx)!twYu>B z=P_q>+7(Ir`<&7)l1e&&mM;a+b??ex$W{t{9_uMjj*~0o2 zqYGm2Erf$oR7XY!>ca<1W z1+c7uNr=)W9I1lH_8F7j0-hG=PcuU0byOEspW?I;So*v+hN$$WolL zde0?^`%ZqH>W~3U-1O<|y%3X8E-2FdJmUnQmWw#vZWG4-5h@MeB@7Qkp^G zmPN9~66GirktS(j+2r|vjV?;WKwnwm0N%(pTrz<8>~Cg#c{s%N!QhtLCN44?t#eMx59 zciB6118|&fsHW-bN;u~=6>r$AXH%`GG)rM~#L5Ahn-(tftpXFhm*T0lG7y~^9aF@t z>O=odNYW~ev(_n;-9(;27YD_J9JGu=C`jD*Bhoji$Jmue#5M6G2ek5muqhEJhC3%9 zcQuB}C)WM_X%64k`8P4OaMjV9=v7*@-*hEh60f~-lyX%Ke;+7Eq}iu11Cta=UN2;R z#3KGp7D24OpKZsX&H(5DDnfrW&fkC2RNIfMti9G66@3eo$qlQs%~P4~UQ6Q~;E;dc zz0|RF(sTlpMV_s3*CIA2->MT^M0`6CQw{AjMinZzqpQ4*v%q|dGD{)@_ba zbxEc+$@83Zxa8{|C|HbODP?ktDeO*W4SHHMHn#66a}-so%)4TD!#)eDHcf9bR12JD z#gdl};uEIi1L-DViP|Y*(XjV$qV|1XC%ayEO;@E}^Xm3;7l*Q7bNRyilUO8)Ol!Cy z1bOpsl`0>xp0qv4-i)oB_~MIpzfr_h3pLBr?I+&<@1ME@Y^ z5=W<5+n)!)GOgK&J(y-k@;7EP+>~v65=$zg#Qg5x20^JVo?gQAt6lQ`GK@`^ux#)>VC~trzx1T;KCFBZsSlu61@%RIql@GJ*%Ng zmz6r(YGM_S?1iN?vhba^t!!i;+_7m(Y^9f2kixioW+S^W94CI#`E+z-U@$fZ0+RU& zr|)hJ8`v{fNPVj~<#;&LDkbvh4gG z{{Ffi%ZxnEoz&1`90IXco2W6?$#&%k%#b2zp4rFv1O(3Z=w#p?o>vp!AI?Xf@n+b#kBd<`#_F2v0CVo-85JlRm96(o$(oMWL zk&-t9&)T~C1+JBBDFjHb9C$02Oavpj1g^~#i*Ax%h-X*XNro^dmEt-jh`}R(Cr*D( zgBaaVq+XQdj)g8;+khk7;)AW|IdM7~n>L+sfPQ0Hg1OwYU~(pP0g0zv)(CH5*L^xX zd3TOw@9N*TJy2;gK9O^62)Z?9tfWcMXTrYQgtCgrE+C9X9j7ooqJ)u&P>~q8v$CG# z#+nDI7}Im=R?%jevw4n|b?)aM>8n8RwO=_A`h(ZsW^@#IHhoH4lf6?~dCIAKinV^P zW7-seKtY$5QZqcgP-6g0M#~|BV~TEXMiOMBuUm=40C|X%%u`!(8U#Xs`5ZC*+ykN3 zu63Kps+dBlnnAb5m9o*i>8e3Zw~Wep3RO~}Bu+egZqETHmOUKzJY{LJG0)Kgc~01_V6jP%Mmd>C+bmh z7X|Z6oyf$5=FLqQcRWU2i~u0zqid?zsEZ~+%t>%%bxVM4f3QLW+E7KLR4v-_n}ZY8 z6x?|8KGB@g1TY~7_M*(*18gKA49ew-a{W@Cp)8R5tG(u&ED~@xI230Esu4!M6KTeT zq+Cz^{Xtn;dCAxrM#IXz$vt2%{OWtm6n{fB!-H*KPX<<XvV!G0ADL6Vs0dNT?+%ZWXcz?ntg zEl;Vg;`X$vPTf8Cbo)STaWzmGCs}{SYEH$ zU&a`FjvsWjkL?N-m?BYrUFu)0&YEB@YMCa~nPm`*bv?LTFst^H5Fwk6HYgOhc(nDl z)(owKmkTFFyl0t^L$Dil>Fs50FV4fE^fLN}DeWAtI|wl7BIT`Ry>bW=Qrr+HU|X_kAiz$BlV~SjUQgq}K|*%YbOy*&1940f{YWK{h(tvoMOcX%?)JAIUea^f6SYWwkBY4?zh6V#ZjNx|+%Ueyv zth1Li>r1biEzVNo2q-!yY=1rlBgYaj$B<(U({9BRAAA3L_u{z&3WYIk#oA$zr@40bk9Ily(a0m>ya=}pT?$G8EI-)W^7Rec#~y*UcNfPkgQc7Cft_Z4NO z@8Jiick%a41GsZ0L8LiMWG_G=7eV(yUQm_rvfU5-$<8JQ9?uZJ4tmEX(IyN&?tmt- zaE$gVkw?AoV-R9h!dTudQALSr2Olk&M^&bv3k@VXN{O`CNJ^+Q+L{Tj zZ>rqw|2%PxjH(sNLgPjtzs^`>P58!8g$1TQuj7ouyWrIMhcktPH|wz5f>HM3RDS7r z%iB^pP#UEOoQDpC&3cAA3v?2RfCq4Jh;1$H6bIE%5iI5YQE!iAYi{u+wbZ~H$zS)J zh@#5lJ!iyzzv{QY9`l!J6$jVTG#3j~bvdaTcvTOYA>&%XAD-I%XL5{3S68%@?%+~x%o)jbCc_RDXJ(3xD{9XO)=^e!=N&Pg*k zSlKmr#TBJ3UaZEaEzznBY7Pl**NOTPEi0`IHvG4ZRd;km6DN?t=I5W#$4|j?m1P{y z)VM)G?}C`_t+@P+pG-A+(XrLFmjoOi0?+Z!C&etc`9SVZ;+#5^~aa-yWo;sFb-7Tso}PHx-MsW6MH& zQQs5CFEtUzkXA5ug{z-sacD>+4S2QMkTeZyhD9}Tvq{Wb3=5nhp)Dhi zJfnBLTVBtYBXr)YO6bbM+CXIhI)~?DcBW;Y(FJ0JiR!i?o{dI;$KZAl&+q4Q0_ zqWz9PpGq)vo)3`!u9NVlwu6&YKA74=420Zl@aDD(bKLOvzA9t$ST)3!_`Pm8ULE%2 z;;W#fuwE{@Rv{uOn|YMK(}ph`k&lOeuG@@#$GQierOcve;Rqkhi5rI^bQu!kppb)8 z0AE0$zqdkQXty`lcqOtSZV^5xM}#seqM$sRSkB`W87gt_Y6LnNWk6~#b|prxLKE^@ zXoemYan3f5*7}S2V4@}&M1Y`H5H3KR{%C1aD(-vj=+*eEG9P#x)0p{*NtL|zjP~i@ zJ@WPBQ^$)B&w{>b%IrhQ)}R>{FDH8V;fntb3w@53b5PVlKyJ~CwK$tsuH{`EJd^lR zU^As}x_4~VEEF@<8B`A(06u~!P#LD}J*{r};c`=pfE7(ExOntDOGzQ2x-zzrppTc~ zwHr-^iLJ+zj7(Nas@92TO>f@=)0I1pUq4hykWCKS8-wPQ%AI$C)XHc z15<$J2Y_q|>xjAdKB(yL2QjJIWJrV38#i4P`D##n3Y{$El%@(<75S*q+yhNVG921S z^9R)T+k94XhFv_n%?OZk;`>m25YX89&92bxflO%ZLMJeAJ7>hUghY@Wi(+Ahy+UE*2k3 zs(iZb8nK}QW1UanvVMG4J396jDUv{aHY?;>C4m`ouu@<+QBLdV@-g(W zG>XhrMl^-t%j~uMJHWKs5v=(dHhDlY4Wcp6!5m6ZGu%NA;0B7^+9CI(FAHUPD_zHRe=Sth4^EZC-wDsxgn%7Rbg#aa7kV<|;%9514;-Kf zO@k~Q3P-Fy*%A*`Fv;OSYMp=Le_wNQ(e)SLbO-n@Fio4Po1IG~-;hB@=J|aW>@XjO zQ9glJ$RX20q*%OM5Cs&(c7suGx_X!=0|cB;22oi2J48aGCh$-XL_X?apl>ze-VY9~V(61RXf@l)75|d>G+{zZh9XxJOK&cc=K1i`=w`Mr% zc8=4Kz!f8=Fr`{ttu8LAF(lKnVaJuCVoA!0@+XDQm$IY~L6Ut{VNN#LXNuJ}Uv0&v z?L{aO0kI**SI!tfQR!;5$f4zl^qS)wwC?5X?5|n0WKiPy98<}855s;DcD988r~j~3 zVq8nw*|+=^I&k;zRv!Y@xqU1XVPV5>C#e2NI>Cj;vSETLU-Juq{K{ zxDTQM{&ulKeZN#PVA%s{C1*;tI4TxsHi||}2u47&1!BGKGaBO-6e=mD9(SRDf(UBD zY4r|ni`)g6N-!r2P9OilSLsi;O#HGSc9GU8-G=WD_BEwpX7Fw$^5Wo)1$VouBy}XJ z`nV_t3?txT*jEL&w@EAN)S{puPif95J_O$zC#^uz5bKu;XLMUYvqF2>kP*A*7;F-vc~W(ds*v*h-l`}=zEeu{lvf!@1$ zBLDop$D&`|k-NU#^;F%1=2EUID30#Vtyr_YaIS+eN{iZaQ~C&s1#&pCbMWD6A*&$X z{v?!eoz8!Cu&su@&U$M3yH&rndPQ^&1ag73>IZ8Yz&A#qD26sDTIH%iLY9@_j5e5{ z^K!_wt;TMPb>DiLZRVPvHPYizi8%)m{ua3*m8g#Ij}wQZRrZOQGk5W-GH*k{S{|>U z{$2+RJVqHbO-~#<09oBLO98PSl$MnNm5DC9?{3DYdJgPM@+tE@y=e=6YMo0e_+3FF zeVKU4^Nyo(Evt$ylX?2HnlPxz1QdxbJec?>L9cXd`j))-GFYcm!A!zRGhzowJI}Of z-sq(R{f;>Z1kmvkbr6A)>YNtGH=FipEO+Jlu2oHFP5ndCfo*~1%>BT`8<l9Zl6u3=+*fJE)~5rgnpBoMT@7g3=QCM$i-5u^ z5RTNJ*h_f8q^C^?afj*kAU9_WYqqyWLEn%bsS>cW1-*GML?_y64iuR9UX{@ZIW|jy zSk`;Xf}UC7wkLPf_;Yva z`$u!k(13X|YK!jbW6GO`CoxF$RleyvX&D=@J&RezKhtdSu?onlOLzWNr=l05EPY$Z z#!R8%dFnYMDDym>{B^RoqPnWtPOf6{E5XUCTv|@I0bpiLGbOobK=*`=q_J9%%_HM# z&OM+`(z76%a2k~kWWzBneOCuwstWzmap^B*gyMtf2U)W17fcq4r!M1lC`U8E@elOV*#~@Q0 zjGVL?e*FNtFH{7eN9>ARi?6ce6(#|e0$8X(xiTt=rZ7K2$u(vr=Cf3bhLm5Y+7pWU z+*pd*e!Q!A33`9!2Vy`Q-^B?|A35CA*}+$0sHg5-H8pq|)(!a-JbDuO)IHA|p@)i= zS7hU~kE(sm!l=jfrd~rfKtU=nq&rMJ=3PyqyL}@lUe3c+=Z$kDly>ZA-Y<>W1yE}o z+n!%CmI$tOlKmJYmuGBXJ--++^4xay^gE35ZLVLxz*8Hv2(>NWo(YX*U+ogS@en#9 z*zMi(rdP;tPBO$h(UW{v4gS92Ci_8yvh4twxWNfBoSeE0veR&!D^hOQHiknbwTzC@ z_uwgMKMUdei+*p3%_z0L-$pY@_xZ+*ILO18WxRXqKzADfAMY(p1OAPjS+M&bqoh{s0(5S?hbyB^ap)R0AVOqyWR75=!4 z)Ahpw2p}YI_EeQjuBy2UZs^WL8LA-oyQb~4`UX(n$ZohfRv*c;pinC$Rxl(yO*KZ} zGJJ4HDxNR@JHtBQ@iPSQY>rjl$9l_|@9HaVu40#Lf(vO8RX%-2W)9Vp<#%f(H_@Y2 zZ1w|2QX}j5)2ZF45u5C5)^9D@6M4ENk7jLi@$dP%rs~oCzu3#u87uuzEGmuA8j!_o zev{oYOCPF7=RtWsh;E>E`L`ord%d3oGtI)vq6Sqhz_+xPRp$xrMdn;g)Y?v$-cunG zz?AJQFSgx&@2tNK&AOK@YMutKpE>;7d|e0*R`$_ z#tmFQ=DY3YzCK)EK+*uhvJ38gOKwS2;L1#QwERv=8UmACgLeiRK+bG!{$`iO(5Ih; zx!-^l1C8l^e+?&wf>0zX)zaTA{HrAsg5@k4r=t7@o&Ar_Qb$NZVKR-ATzM*h#3X^i zP(BerflRV^Ny4a^mnfreoY=3j;IKey@C^9~?qSZqWy|SoBOXB9zz!oZ=&?y}AA9%G zlZsj83?8C^MR9+>-<4Tv+C5~I3;MKe&d0)4mXdWQw@>O!6r5f=B~m|G?Fsc=skpSc zH8^WHM3wiXvl{NN?wD57Ho;bxKG0M8$FgKFJ+SB8MsaqzcFPF!2ev_#bbj>Sb%~qB zlSVqxZnmka7j26q&qU*={e(wvf+DlOTNluuwozh@MKV?t0xFbreoU z&X7l7yevs63|WGFvi1Z-lCNiXR&4+@B^N&3c`0KOC_O{1;RJINT{^Kh7N`X% zJJ3)T(@OV0pH1pUt&^z(L8GbCMJH_Yo@$K>9tpfc4ux@H@u_xEF0}Q-Q0&T=v#p42VNYmK)%fzi(L17n6(+-BrociqCT(cwXZ1m2als>#UDPACyq=wA9N9* z+;b=vJ}Y9S5FYs$$4^NLHgCFfT2*I{{;=guX7gPh-I#iwpo`M0e zh+LHoK&48@QH&oSUuhFUaC0)0KhF~*Oxi)EENaP8QOj9b@V|AW7XMCZ3#`{EgVbF7 zZVL0swiRXvSS6JQ6qI@?#rW%9Tq>+!+T@cmofqG$cRl$IcD)v>y$8y-yb?e|!*YcA zP!7rs4;BsW4y@7OD(-M-o{uNzi*1+(9v6Dbr(%#%4lK&W!2COQV0~L9jO+rwrk(L* zQ`^#jFvn3k_jtk%mjb)rVCq`=r9JJ{I+z9*sxBeXiW}62|HhelVXP2eJ~^3t5~N7H zEYJd^_DVWEyCLY<6CEkdSLu?cb|w^6krk6%t(T`I_^k@hl6`71As>A9hFC$KW8h07 z>*TV#XR?^tt1YI*2ccl>hmLY){fSgnnaJ6_vFSgYM>nt~4rU_3$qc4IghUd3c2EnD zUFgckt_D;C6z7PhAR7|6SSXp;xUW?)AKu^wP|=ZfvY3- zkt`DuZSgMuMfbsH+*=&hsoCK1Ez|~HXK_y`Qg7X=1_#+rPF7M4u>nqGCl6Kosxo?W zuDO7ihsNL!?9H0zKy#z7zSv4oDiwY=uCf8qXJXO5aScz+SJ=>xkK2ZrmLCJLf)q#n zO0k9zBYE^x#&7EuSTVGNcla#Ti6(PtoFBPdU+fOR{*76laXr}Lv_C)Ck zvWH)X*W2Y4r!`r<6OvgT*r;%vKEsW{{wFHYoKB5pb}61<1*B0}UH4j%&-SHk^Hs_P z4HNz`b0iiVDzGYABhdCjVonNuu z;sD>Y#912br$FpEPupxidyX7%6u+z}d@?$P(60HuYL zS=guXEZSWJ1>i@Wh&}H0<^X$|rGs!dutK;s(J~P+0Q&G5K`Mo@tYo6;=f<3pmj)eo z{AEz?>J?fb0jR#~uANi)P)w-!1HKe1N3%v^uu6K)uwg?Qjn_<2(dOjN{)PVdU+Tl1 zohFc}@zaB$cK9b+(w;&`uzY>AJ@CVWEkl0g?7i#zwCqMn2DZa#!E3c*7*W{Xq6jr5 z!<4)C5j2#o+@?~?Lfe!!<07Q*DcmK+*X78#L~TetUH$CTH6UNIRU*B?X=HP{(X|gW z#gdn~ojgZaH|#gsxs^8F&-yZRI)jNAP}QOp8y)`n29m`dIOn-A$wY{a`FFG>x+UxG zjS}_%Lkkm%z~^MQF)OAN{dFawVQ=r%#h(vOx+hy_Vri$>{D>+C#DNo$jtDp=5c071 zn2`z>3nu;gbo+Teh05#Yxj9smmzc9f&~m=fbVMd?6{zmU^N?#nxS1$C82EB z%S**Vo*x4yiL&{OApv^+?#N@FDV%g`9Kmw@*X?ThvcBT@-7Q)V`-54@%Vz@3+>#ko z#w85nDnM|ZTwHG)>!{RV%(G)0balgxnb7b9hWa&ekETY4xMs+=+R|U@ra@##?b*f# z#FPj=v~NsWK|I2l=k9TA2kV@&f)UndZ=9kM0}q~2o-KF44CVk4DPp|4#sQBxTP`9% z4e;xz1Bj@|VpCyp{-OsDcR<5|YxZZEo!<;9%8Ba_^5X)2^0eAj2yF`OBC5*I=qZ>u z4sQF?>!5Q4p#cU*}XS zb^#>CJ{(<${uN{N^gdh*rf!kb$0ScDm~V&VOCkgn$h3clp+WI}ol8)YKHzcEgXdgd zupzwrhwWy`Jda$&l^~;tf|0+62-R2T$8m8LFdx+HI>8Q1W#SVxt!?iZd)y-eIr0jZ zAI}av*1VTXZ*^YOk?ITjYI(?-vb9OZ>C4qei&}KpAju@Yf|7RaXoKYU!E*?b zA<*=)iqycF3iTA9AD4lXY|78Cc&O*;#Qs7fevv6Px?~Z6%YiEHa0m29vSF~SlFB_; zYxle@<4ai<$>JnNtZN92OMoY{+tn8;+t}F?mXE;NfAmk6(^cR(Ec#q2MQP$VnzK$m zLLbE>oMr(^@U&BJ2o}+Rjz<%w@01*-vt4urR-H~ri7}SsM8R$j0J~Lm>I_&=vzRXA zMe?J<5R7rSXvw2zUlHXp!>?m&bSn6)kmbRzGpeC1lALY)f6EExvOHHUH7+k^i1(O z?c2I%mSj&Q$EsJmj*qB$qX}&JO*U=ueX9Mi*STS6 z80OEbT1tvt1N&=Tpy+Xlfm5;Z1wN9HxQhEqZWy7Bqdb~wvWg{SOAV;TO}UT1mrT?@ zVJ|8W#CjmdR!-2O*7Vghz(m7(ibL_$uwEJ_215rJ+CS%eaZ5!WLDAz7H7Z?}2E#ja8ip=)PBwD9gq;A4)B4)D+T%ANgwFbHu`A;BUt3(_CP$pyJVPGoNb57a&D7PMB3eb7CU$Tg?ON_uR-6rPf#ol-_OTS0M#)hIVh zqebw%U|H7+I-v!DaX+$Dc=Z&=a!9#}Wv{`!I7`!=Bl(zZJibvU`-!DR9Ylcc0eEtR zsl$LPxwnilj0{CY@V2F4(?wGyDkqa^XFQYYB>EXOP*ZxS>Vk-+iC(8G2GhpRTX(h9+WUl;t{a zxiI8QeZMGEmOQx(d5FB)cVdOjY2lj1AMIu5gZzB08*z9m!2EEYk|nP&TQa;ux3Ef%;?o_1mZ#rJ8P>XL*VJ*;TE z61IKkpG>!|XzdK90haiMtaWDKDvmt5p2$j6U52B2Tg1}84M4X#R$nZsl8J{IqG`Lt zgWq{o$X{)Ts2)}5?79LEb&K-oVGpeffO<91xNL_O4TSb#P;cBkxY;qNOzo8=QTX+Y z`PJr7wL{7IX|)PKcUC#RJ)LJ&>LOH+B6D4QK1o>~_>0i2D3+zd$GVx|@J0_#QDjt? zdc&-g)b*nA`%H==G4UVI)*oJGHsZ5f=_sO7A^YH&;sU}LNxIxeC3FZ722PyKx=0dG z@FF%rX?heb<8XsI6zpg9@V%|MIx5Cz(kUHm&bBD8r0(K0=GVSb zj)L*NM-oR6{pz-C~ge&{s-;o6i=s1(F0>`b18eiZoI<1lk%Ri7+`4@@EUMkrZ!3}#qtS0$xb zn_KNP2(kwLkOqpqHh1);`&jB#>It*WE$sIo8bN;bx#Avn{a>A2)Nlf^#cgnVN>uzDETg>cW4dAOFKZnh$?xeaMKPGn~As(jO1VXqlcf zjwi0-ctZ9Rt!qLwq(K>(!`q=O9u6f6)(KAeY^%m=BnCURRHR$}fo`#B z6~x9Mq8a^2Pv~`H$z8!E{ZrX^KfqF=|D8$fB972Et!?ZNm|`@0j`OJ{$+B~LcPiIS z>tCXsB9XPRi+h>JV;GE7Fdww*tuByUuOKoRCQq3l!xuCH&TlKo=VYUVE~w>aB#1}@ znY9~Jo-_!os~RX1)v>g}qLpPl*AcTZRLAa;+e|NG{4GC7}3r)mSz|tlf0~?1;K;axM zUaq6o(pJx-(d^$_*6i&-iEvP;_8p+#1m<3+XSfnP?|;4$TlhEsY^3PAc(Lu7?lkM6 zI22F9P*@%NmGXo@>aRg!LT+wCPiaS8X#Y<|TnQ`Cz`7kvBC=qg#qoyrFtCTz1TZ#2 z;-_pesUOL%ce?F~Mk7I`@+K$)C#C^A2ODB*zl)`8<#+wei*kbXxJZ*2m=E;mwpHCf z2w_niZQ7fP1Zuc*$-2aLPtJ136-yJ1#vB6;={v#^@MeRF1&ds^D02kSZd%%Hl>17` z=5ulk@Hjgy==MvYQ&{g)R~FPq*2JtAyc&oE#Gq8+;0m{b+3p`yr09oMs#{4qIuo7K zrvHqa-EKmB(2U!*{Y3dQwxkqS2~;(J%kjb#L-FcoR(9R?_eu4h%!j$_-K|-f6f}+k zH+w+HI9dd2{1=o|Fa&?o*qJrfqkIhSe{u#(m_XkXulP>j!Eq@0}# z0FYI(g^YBW2@e|s*CMMF$$OT5b@zKvt{plbVPq~S6-;1pB+jFJD1gi8Y=Qtd2jnTpQ&kRC(3e< zyBkB5rhgW}<#%Oi|5+NYMNAKMU6ZD?Up&gzSN#vFOeW_a8pp#pxTOfRQPM8|ta`4o z*zP4NZGECzl<{WYj$CiXM(Q;$7_8VY*_4-a+;|Z4zGHj+Z-Hq=NKX3I6~oMv6Jb@^ zmG=pm6rt+=K&UG1LqVDAKJ86Mb)(nv4t*i`ee}x zYPK0f^>A?rI08t$;)+u4I2D0ZJZjJP`DdCNRl*`>KQt+^8a0!u)Uuo`_`ZDH>@y2Q zxq7S&`!Qq>{<_G9bwAmM;UTFDmfFz5qfYj4t>GcVt21bbOrPt#PdVeAe%wgYt(8&w+qozqL1oT$8!J)Q5b zYTFt{fu$pTh~I(m3KR?V`W$4~s*EBEC}@c~h09b|bh&&pR(LA`U_7_0+*Bi(e!s!!1jL~LTR)=lgW>zhoHSH;7(LrL;+aZGHY)Yxc0XI4 zT*h%s5&JDkkXa%I0K8c^amt!jwWd5_zV^=*X@(J5d1a_`%7$GrIOXf4jkBMLb6$uC z-u7CM6tP{y1OE&jSv=I2X9Nl^*;`=KCjjiJaH+^j<`RZX98YqeS2sKoL5%wck*Mo% zrWWU~5~%AiGk{n$w(1#(+GM0lM(A4C>y4lfxa7;CsP5lN$@Q%#!d4&_Q4w>ZZMCnRmRgBFNVK5%V*_ z1_{`9B`z*i_m`8~Ce;oMHv-?0nL$rtC-$Lxl+&eRfIm^Ot}}?J+yp1avy%mR0K(Ym z-ghzblh6AuP(4Go!vWZ;-``q%f0DSJT47jT9=~xv(0sqvO>sA!9ow?%u;tq`S>7Ma z`sIrpgWY%DC~!o|+YaGXE>R*8S1kz}ww0onwmg=MBo&TtBDZEI>iar*{4AG!D!Vo~ zgEXPp?=+I__rA*ku~LE1q)b=2g)iHn!9--i`QdgVW@yJN=11RTT_7{-p;itS$@Q~V z`?0D%{B4hm@EMNRqB$C3}V#>3kN1=Hz=ZoZ37ENls1Ph}JqUT5W~_Nb^vD zhbKvpJY#J5NvapT@5tbI<<_rs?fSJNY4v4Qu*`&&uB znol_>T1a>rRu$j82VDiD(vM!UrD@5cnn#D;yTj+%ik2c0>q`_ea_X?|w87&{PBqka z<$DUNkBoEp_su49kd%I%ajya8J?KA9I`=;MSsy3jdEFsin|*nSH5G%QGsyQFXGy$Y zRT*b-7y(=ev}}j>kz^KMZi1(nNY&@MSdoc!M)jW8*P!@8-HsEheFy|^L55uNtZp{} z^aOue_}oym=g!ygJV+T-(z4---9jeG?#zcN%e#lKCbVCu+1m&qQQG?sZS$Q{CB_*7wzy6ua_g50cJn9Vy zU2_-XHVpp>0h2xe$Kg5kK~LGmhorY^aY@een}MxDn)aUrp#1RWOyHS+KXkW*}5(YL`iWIG=2M)7}HYOhw({Qb)TwlvqAz zi(z?u$Jv|k;nDLOfz&}UZ<8xNY?HCbMXGqz=IikQF`f_mgQby-rE1kU*+upZPsWGaPW4Zu=xR^!w4Q^wcU=ZE!W5imD)iAlXVe@#n{pIquVR6AWgta+Va&K_&58 zAcGpDL!8OQK>%3SS;#~UVE_+O&h|4&K=NAJ zq4a2n_Qk5@=`b>)escIU*|P`Elg={>qn7IDQDbp@)Q-(Hk1I4G_aKNZ(DnUMr|Gqs zdeTq2roIu4CG%Vo*!)>M5n1O~hF=ecW|8KBSk1WnU$z~CIRAW9Te@1p;!DUQj2^T6j_nQ={0Vwu_;E^-VPB;QDPuY<|f5o zKn-Tn0_aLE0AYkPtrHHJV&qaf-Cis}(IPg5>CS2I4~k(QU`2{ajsQGLph^M4>Zg3m z$kmzIdyueOHz<<+M2>WkaeshX2Kv6noKZ#>DYuG7QiSt^eX@}dvsHhE*|ek{6t6$H zv+uL^1bFKfD@7=s@R?^9>aS z$jK5)fQ@DV0So=}Kbs`}P0;konZe>$k(bW5b0{tsK0+pl(`dohoD-JGil004EorBt zEI4T>*DiT=rUTJuTV>Z#o`J=AjnZbkJ3s# zy)620vPQ?h_LK13#MG;z{_3zbo>(GVpzLlxmbTyVwaw2S zC&%Bxtku%20(optbMnBHgQNfZ^VxG`5YX8?rbni$?Qs(KUi>|k{b~6SAjdr=N^mYO z--`={R|iXGc{KL8I&y&eO}lu4A*PD~M2Pd}{+aM>H}m14)dU{bFNemQ*h@IH|%x z^5DvBJX3Fwzo@_Bwf9KS_L!VaB9+t^v8b^QNY>IgmFDqnzzOse)yZg?>opcd1S- zx9lqzo;6?*ZSresy}I9k*Fu6dS_3yX_SF_N&OQ9^&#<{A6;a}`Cnl@aRw;oYQ5cJ$ zVSO+pff&R8F^Ov5FRr98>o>)!^#mS3$?Er6#Gj%fDq16>aIT#1;;?GITIR@QHf-Ha zrv%GX9q!n6ZbOw2ms8FFWj0bp)FTL#h=qfBR;hY|LJxWxLJ&5IN{AxLe}=YNedzRl z=h;{&3s}%>5TqzUn~UCGA|1)p2SQo95zx73j`+Sb+ry~J;SQuk*W{|o(}1FF8FYLd z8f)LMAoLpf(tYNbJk??RVSDWz1VoT#1vMTVBjg%PWu}HngNcVCBMmXNY%k#EAwR?; zJu6h(Wp^&0^no2VQ4EdlF(Je3XYmo->Wo8vkO=ICL|8l^n%JS916yaE?E&~3Ae@mT zv|zde;7|Vhe}A5)bEgE){9rxvlgkBn{U}Q!JObx#^_AV zQ%HftVi&MHF-DELCphZWGwuNhc}tZ{DmhSiaHVPnSKY&@=Q z7KY2^Ig4`e)p9qyotNTpTQFN$k-Bo>>SWZ{!k9lq+IDdE{wGobRWZ^kF`pyU&x2>jE|c|yxH(Lt z9A`ZyQNQ+oe>%3gL#Z$c*^ZCkay_rG{4{sL<@=}z8pyrN7ENiu;j1E=|(e)jP>V6(15GV@9#*f6~-9Cf^moNMVl-sixc2Ph42RNF^h1Bmy6woM080p+e` zyl_z%dE{9zPNL`d)i7U-7Tg-o64vmbU;@bsV4S`=jdA~=&5Sm7;&QXSdU2}nj)~&r zn$UJ%kPUOUu~vO)T>_`pJUT9$F0WUW4TR;jGN$#<^>~`3GFf5A#ONdJ0dZ4^hu_x) zC@{w2Fu_pL9MZUS>*JuUZyD)?^`$QXhD)nNz<&d2i-N1tcgvSXJ;4}TM;E+Q@y>06P6{vMc$h5igCVsZ6CnP!TGha&4xV$@Pb zmeYpJ$Ppa~>Hv;)8#3jd5lIAFxm}5z<1I#;I28N`#TBvvL1uICEx~4|Z0kb?n|`hW zNX&v6ope(prRMs*y{NDuOu8i_9CjaD$*y^TY z@tTL=x^l#hGGV~EHRbU{!&G0O>f|Jc481Wt3LR_VYd1ZQ(qXZZyWmZoVO|4Vwk