diff --git a/bower.json b/bower.json index 132bfba83d..8bb047e57e 100644 --- a/bower.json +++ b/bower.json @@ -16,7 +16,7 @@ "validate": "validate.js#^0.10.0", "ngCordova": "^0.1.27-alpha", "ionic-native": "^2.0.3", - "lodash": "^4.17.10" + "lodash": "^4.17.13" }, "resolutions": { "angular": ">=1.2.0", diff --git a/config.xml b/config.xml index 51a5d770d2..ac8d04c0e1 100644 --- a/config.xml +++ b/config.xml @@ -1,5 +1,5 @@ - + Tick Trade Enjoy fast-paced binary options trading with the Binary.com Tick Trade App. Trade Forex and more in seconds with our mobile application. diff --git a/package.json b/package.json index d919ef832c..6038c79db5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "binary-ticktrade", - "version": "2.3.7", + "version": "2.4.6", "description": "Binary.com Tick Trade", "main": "main.js", "repository": { @@ -69,9 +69,9 @@ "karma": "^2.0.2", "karma-chrome-launcher": "^2.2.0", "karma-jasmine": "^1.1.2", - "lodash": "^4.17.4", + "lodash": "^4.17.13", "prettier-eslint-cli": "^4.1.1", - "shelljs": "^0.3.0", + "shelljs": "^0.8.3", "sw-precache": "^5.2.1" }, "cordovaPlugins": [ diff --git a/resources/android/icon/drawable-xhdpi-icon.png b/resources/android/icon/drawable-xhdpi-icon.png index 2a12983bdb..68d5a3b5f2 100644 Binary files a/resources/android/icon/drawable-xhdpi-icon.png and b/resources/android/icon/drawable-xhdpi-icon.png differ diff --git a/resources/android/icon/drawable-xxhdpi-icon.png b/resources/android/icon/drawable-xxhdpi-icon.png index 4d64dc616b..f3ca88d4ca 100644 Binary files a/resources/android/icon/drawable-xxhdpi-icon.png and b/resources/android/icon/drawable-xxhdpi-icon.png differ diff --git a/resources/android/icon/drawable-xxxhdpi-icon.png b/resources/android/icon/drawable-xxxhdpi-icon.png index b563f0d394..01a8b44fe9 100644 Binary files a/resources/android/icon/drawable-xxxhdpi-icon.png and b/resources/android/icon/drawable-xxxhdpi-icon.png differ diff --git a/resources/foreground/foreground-hdpi.png b/resources/foreground/foreground-hdpi.png index 40bb87fccd..721639fa35 100644 Binary files a/resources/foreground/foreground-hdpi.png and b/resources/foreground/foreground-hdpi.png differ diff --git a/resources/foreground/foreground-mdpi.png b/resources/foreground/foreground-mdpi.png index 411e81eb50..646acf4608 100644 Binary files a/resources/foreground/foreground-mdpi.png and b/resources/foreground/foreground-mdpi.png differ diff --git a/resources/foreground/foreground-xhdpi.png b/resources/foreground/foreground-xhdpi.png index 4558cfd6d8..6947bc65a3 100644 Binary files a/resources/foreground/foreground-xhdpi.png and b/resources/foreground/foreground-xhdpi.png differ diff --git a/resources/foreground/foreground-xxhdpi.png b/resources/foreground/foreground-xxhdpi.png index 024bb507e0..c269935963 100644 Binary files a/resources/foreground/foreground-xxhdpi.png and b/resources/foreground/foreground-xxhdpi.png differ diff --git a/resources/foreground/foreground-xxxhdpi.png b/resources/foreground/foreground-xxxhdpi.png index dd04ffa464..4df16a9978 100644 Binary files a/resources/foreground/foreground-xxxhdpi.png and b/resources/foreground/foreground-xxxhdpi.png differ diff --git a/resources/icon-old.png b/resources/icon-old.png new file mode 100644 index 0000000000..babedf2175 Binary files /dev/null and b/resources/icon-old.png differ diff --git a/resources/icon-transparent/drawable-hdpi-icon.png b/resources/icon-transparent/drawable-hdpi-icon.png index a8652cc075..11976401c1 100644 Binary files a/resources/icon-transparent/drawable-hdpi-icon.png and b/resources/icon-transparent/drawable-hdpi-icon.png differ diff --git a/resources/icon-transparent/drawable-ldpi-icon.png b/resources/icon-transparent/drawable-ldpi-icon.png index 548992afa0..bae9635634 100644 Binary files a/resources/icon-transparent/drawable-ldpi-icon.png and b/resources/icon-transparent/drawable-ldpi-icon.png differ diff --git a/resources/icon-transparent/drawable-mdpi-icon.png b/resources/icon-transparent/drawable-mdpi-icon.png index 407758de01..931dd2c1f5 100644 Binary files a/resources/icon-transparent/drawable-mdpi-icon.png and b/resources/icon-transparent/drawable-mdpi-icon.png differ diff --git a/resources/icon-transparent/drawable-xhdpi-icon.png b/resources/icon-transparent/drawable-xhdpi-icon.png index 84f7a48ea1..07a627ed9b 100644 Binary files a/resources/icon-transparent/drawable-xhdpi-icon.png and b/resources/icon-transparent/drawable-xhdpi-icon.png differ diff --git a/resources/icon-transparent/drawable-xxhdpi-icon.png b/resources/icon-transparent/drawable-xxhdpi-icon.png index 8a509bbdcc..8221de224b 100644 Binary files a/resources/icon-transparent/drawable-xxhdpi-icon.png and b/resources/icon-transparent/drawable-xxhdpi-icon.png differ diff --git a/resources/icon-transparent/drawable-xxxhdpi-icon.png b/resources/icon-transparent/drawable-xxxhdpi-icon.png index 494528c02a..eb935d9532 100644 Binary files a/resources/icon-transparent/drawable-xxxhdpi-icon.png and b/resources/icon-transparent/drawable-xxxhdpi-icon.png differ diff --git a/resources/icon.png b/resources/icon.png index babedf2175..4df16a9978 100644 Binary files a/resources/icon.png and b/resources/icon.png differ diff --git a/www/i18n/ach.json b/www/i18n/ach.json index d4664794fc..606b356b2c 100644 --- a/www/i18n/ach.json +++ b/www/i18n/ach.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "crwdns45026:0crwdne45026:0", "session_duration_hint": "crwdns45027:0crwdne45027:0", "time_out_until": "crwdns45028:0crwdne45028:0", - "time_out_hint": "crwdns45029:0crwdne45029:0", + "time_out_hint": "crwdns68154:0crwdne68154:0", "exclude_me_from_the_website_until": "crwdns45030:0crwdne45030:0", - "exclude_me_hint": "crwdns45031:0crwdne45031:0", + "exclude_me_hint": "crwdns68156:0crwdne68156:0", "update_settings": "crwdns45032:0crwdne45032:0", "please_enter_an_integer_value": "crwdns45033:0{{max}}crwdne45033:0", "enter_valid_value": "crwdns45159:0{{fractionalDigits}}crwdnd45159:0{{max}}crwdne45159:0", "valid_range_hint": "crwdns45035:0{{max}}crwdne45035:0", - "date_is_not_valid": "crwdns45036:0crwdne45036:0", - "date_can_not_be_greater_than": "crwdns45037:0{{max}}crwdne45037:0", - "date_can_not_less_than": "crwdns45038:0{{max}}crwdne45038:0", + "date_is_not_valid": "crwdns68158:0crwdne68158:0", + "date_can_not_be_greater_than": "crwdns68160:0{{max}}crwdne68160:0", + "date_can_not_less_than": "crwdns68162:0{{min}}crwdnd68162:0{{max}}crwdne68162:0", "save_prompt": "crwdns45039:0crwdne45039:0", "session_timeout_warning": "crwdns45040:0crwdne45040:0", "success": "crwdns18039:0crwdne18039:0", diff --git a/www/i18n/de.json b/www/i18n/de.json index 800bf769e4..fc3f2d6e39 100644 --- a/www/i18n/de.json +++ b/www/i18n/de.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Sitzungsdauer-Limit, in Minuten", "session_duration_hint": "Sie werden nach dieser Zeit automatisch abgemeldet.", "time_out_until": "Auszeit bis", - "time_out_hint": "Bitte geben Sie das Datum im folgenden Format ein TT MM, JJJJ HH:mm (Ortszeit). ", + "time_out_hint": "Please enter date in the format DD/MM/YYYY HH:mm (local time). ", "exclude_me_from_the_website_until": "Schließen Sie mich von der Website aus, bis", - "exclude_me_hint": "Bitte geben Sie das Datum im folgenden Format ein: TT MM, JJJJ.", + "exclude_me_hint": "Please enter date in the format DD/MM/YYYY.", "update_settings": "Einstellungen aktualisieren", "please_enter_an_integer_value": "Bitte geben Sie einen ganzzahligen Wert mit einer max. Länge von {{max}} ein", "enter_valid_value": "Bitte geben Sie einen Wert mit bis zu {{fractionalDigits}} Dezimalstellen und einer maximalen Länge von {{max}} an", "valid_range_hint": "Bitte geben Sie eine Zahl zwischen 0 und {{max}} ein", - "date_is_not_valid": "Ausschlusszeit muss nach dem heutigen Tag sein", - "date_can_not_be_greater_than": "Ausschlusszeit darf nicht größer als {{max}} sein", - "date_can_not_less_than": "Ausschlusszeit darf nicht kleiner als {{max}} sein", + "date_is_not_valid": "Time out cannot be in the past.", + "date_can_not_be_greater_than": "Exclude time cannot be after {{max}}", + "date_can_not_less_than": "Exclude time cannot be before {{min}} and after {{max}}", "save_prompt": "Inhalt erfolgreich gespeichert", "session_timeout_warning": "Das Limit Ihrer Sitzungsdauer endet in 10 Sekunden.", "success": "Erfolg", diff --git a/www/i18n/en.json b/www/i18n/en.json index 236092a74e..d765f5fa71 100644 --- a/www/i18n/en.json +++ b/www/i18n/en.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Session duration limit, in minutes", "session_duration_hint": "You will be automatically logged out after such time.", "time_out_until": "Time out until", - "time_out_hint": "Please enter date in the format MM/DD/YYYY HH:mm (local time). ", + "time_out_hint": "Please enter date in the format DD/MM/YYYY HH:mm (local time). ", "exclude_me_from_the_website_until": "Exclude me from the website until", - "exclude_me_hint": "Please enter date in the format MM/DD/YYYY.", + "exclude_me_hint": "Please enter date in the format DD/MM/YYYY.", "update_settings": "Update Settings", "please_enter_an_integer_value": "Please enter an integer value with max length of {{max}}", "enter_valid_value": "Please enter a value with up to {{fractionalDigits}} decimal places and max length of {{max}}", "valid_range_hint": "Please enter a number between 0 and {{max}}", - "date_is_not_valid": "Exclude time must be after today", - "date_can_not_be_greater_than": "Exclude time cannot be greater than {{max}}", - "date_can_not_less_than": "Exclude time cannot be less than {{max}}", + "date_is_not_valid": "Time out cannot be in the past.", + "date_can_not_be_greater_than": "Exclude time cannot be after {{max}}", + "date_can_not_less_than": "Exclude time cannot be before {{min}} and after {{max}}", "save_prompt": "Content saved successfully", "session_timeout_warning":"Your session duration limit will end in 10 seconds.", "success": "Success", diff --git a/www/i18n/es.json b/www/i18n/es.json index 161e8ff392..cd1989509d 100644 --- a/www/i18n/es.json +++ b/www/i18n/es.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Límite de la duración de la sesión, en minutos", "session_duration_hint": "Usted será automáticamente desconectado después de ese tiempo.", "time_out_until": "Pausa hasta", - "time_out_hint": "Por favor, ingrese la fecha en el formato DD MMM, AAAA HH:mm (hora local).\n", + "time_out_hint": "Por favor, ingrese la fecha en el formato DD/MM/YYYY HH:mm (hora local). ", "exclude_me_from_the_website_until": "Excluirme del sitio web hasta", - "exclude_me_hint": "Por favor introduzca la fecha en el formato DD MMM, AAAA.", + "exclude_me_hint": "Por favor ingrese la fecha en el formato DD/MM/YYYY.", "update_settings": "Actualizar configuración", "please_enter_an_integer_value": "Por favor, ingrese un valor entero con longitud máxima de {{max}}", "enter_valid_value": "Introduzca una valor máximo hasta {{fractionalDigits}} lugares decimales y longitud máxima de {{max}}", "valid_range_hint": "Por favor, ingrese un número entre 0 y {{max}}", - "date_is_not_valid": "El tiempo de exclusión debe ser después de hoy", - "date_can_not_be_greater_than": "El tiempo de exclusión no puede ser mayor que {{max}}", - "date_can_not_less_than": "El tiempo de exclusión no puede ser menor a {{max}}", + "date_is_not_valid": "El tiempo de inactividad no puede ser en el pasado.", + "date_can_not_be_greater_than": "El tiempo de exclusión no puede ser después de {{max}}", + "date_can_not_less_than": "El tiempo de exclusión no puede ser antes de {{min}} y después de {{max}}", "save_prompt": "Contenido guardado con éxito", "session_timeout_warning": "Su sesión expirará en 10 segundos.", "success": "Éxito", diff --git a/www/i18n/fr.json b/www/i18n/fr.json index 48c36d2f9c..1e1aaf357b 100644 --- a/www/i18n/fr.json +++ b/www/i18n/fr.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Limite de durée de session, en minutes", "session_duration_hint": "Votre compte sera automatiquement déconnecté à l'issue de ce délai.", "time_out_until": "Maintenir l'expiration jusqu'au", - "time_out_hint": "Veuillez saisir la date au format MM/JJ/AAAA HH:MM (heure locale). ", + "time_out_hint": "Veuillez saisir la date au format JJ/MM/AAAA HH:mm (heure locale). ", "exclude_me_from_the_website_until": "M’exclure du site Web jusqu’au", "exclude_me_hint": "Veuillez saisir la date au format JJ/MM/AAAA.", "update_settings": "Mise à jour des paramètres", "please_enter_an_integer_value": "Veuillez saisir un nombre entier d'une longueur maximale de {{max}}", "enter_valid_value": "Veuillez entrer une valeur avec jusqu'à {{fractionalDigits}} décimales et une longueur max de {{max}}", "valid_range_hint": "Veuillez saisir un chiffre entre 10 et {{max}}", - "date_is_not_valid": "L'exclusion doit être ultérieure à aujourd'hui", - "date_can_not_be_greater_than": "Le temps d'exclusion ne peut excéder {{max}}", - "date_can_not_less_than": "Le temps d'exclusion ne peut être inférieur à {{max}}", + "date_is_not_valid": "La période d'expiration ne peut être antérieure.", + "date_can_not_be_greater_than": "Le temps d'exclusion ne peut pas être avant {{max}}", + "date_can_not_less_than": "Le temps d'exclusion ne peut pas être avant {{min}} et après {{max}}", "save_prompt": "Contenu enregistré avec succès", "session_timeout_warning": "Votre limite de durée de session sera atteinte dans 10 secondes.", "success": "Succès", diff --git a/www/i18n/id.json b/www/i18n/id.json index d1dbf1836b..f5eaef496d 100644 --- a/www/i18n/id.json +++ b/www/i18n/id.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Batas sesi durasi, dalam menit", "session_duration_hint": "Anda akan keluar secara otomatis setelah waktu tersebut.", "time_out_until": "Time out hingga", - "time_out_hint": "Masukkan tanggal dalam format BB/HH/TTTT JJ:mm (waktu setempat). ", + "time_out_hint": "Masukkan tanggal dengan format HH/BB/TTTT JJ:mm (waktu lokal). ", "exclude_me_from_the_website_until": "Keluarkan saya dari situs hingga", - "exclude_me_hint": "Masukkan tanggal dalam format BB/HH/TTTT.", + "exclude_me_hint": "Masukkan tanggal dengan format HH/BB/TTTT.", "update_settings": "Update Pengaturan", "please_enter_an_integer_value": "Masukkan nilai integer dengan panjang maksimal {{max}}", "enter_valid_value": "Masukkan nilai hingga {{fractionalDigits}} angka desimal dan panjang maksimal {{max}}", "valid_range_hint": "Masukkan angka antara 0 dan {{max}}", - "date_is_not_valid": "Waktu pengecualian harus setelah hari ini", - "date_can_not_be_greater_than": "Waktu pengecualian tidak bisa lebih dari {{max}}", - "date_can_not_less_than": "Waktu pengecualian tidak bisa kurang dari {{max}}", + "date_is_not_valid": "Waktu berhenti tidak dapat terjadi sebelumnya.", + "date_can_not_be_greater_than": "Pengecualian waktu tidak dapat dilakukan setelah {{max}} ", + "date_can_not_less_than": "Pengecualian waktu tidak dapat dilakukan sebelum {{min}} dan setelah {{max}} ", "save_prompt": "Konten yang berhasil disimpan", "session_timeout_warning": "Batasan sesi durasi Anda akan berakhir dalam 10 detik.", "success": "Sukses", diff --git a/www/i18n/it.json b/www/i18n/it.json index 3b6b9899db..548bb32ccd 100644 --- a/www/i18n/it.json +++ b/www/i18n/it.json @@ -6,7 +6,7 @@ "get_token": "Come si ottiene un token?", "signin_with_binary_com": "Entra", "next": "Avanti", - "regulatory_information": "Informazioni regolamentari" + "regulatory_information": "Informazioni sulle normative" }, "alert": { "error": "Errore!", @@ -88,16 +88,16 @@ "sign_out": "Esci" }, "reality-check": { - "title": "Verifica della realtà", - "about": "Il trading in opzioni può sviluppare una vera e propria dipendenza così come qualsiasi altra attività spinta al limite. Per evitare i danni di tale dipendenza, ti forniamo la possibilità di controllare la situazione reale dei tuoi trade e dei tuoi account su base regolare.", + "title": "Verifica della situazione reale", + "about": "Il trading di opzioni può sviluppare una vera e propria dipendenza così come qualsiasi altra attività spinta al limite. Per evitare i danni di tale dipendenza, ti forniamo la possibilità di controllare la situazione reale attraverso un regolare riepilogo dei tuoi trade e dei tuoi conti.", "login_time": "Orario di login:", "current_time": "Orario attuale:", "session_duration": "Durata della sessione:", - "interval_question": "Specifica il tuo intervallo preferito di verifica della realtà in minuti:", + "interval_question": "Specifica il tuo intervallo preferito di verifica della situazione reale in minuti:", "loginid": "ID di accesso", "currency": "Valuta", "buy_amount": "Turnover", - "profit_loss": "Profitto/Perdita", + "profit_loss": "Profitto/perdita", "buy_count": "Contratti acquistati", "sell_count": "Contratti venduti", "open_contract_count": "Apri contratti", @@ -141,7 +141,7 @@ "place_of_birth": "Luogo di nascita", "citizenship": "Cittadinanza", "tax_residence": "Residenza fiscale", - "tax_identification_number": "Codice fiscale", + "tax_identification_number": "Identificazione fiscale", "address_line_1": "Prima riga dell'indirizzo di residenza", "address_line_2": "Seconda riga dell'indirizzo di residenza", "address_city": "Città", @@ -159,22 +159,22 @@ "general_pattern_error": "Sono consentite solo lettere, spazi, trattini, punti e apostrofi.", "length_range_error": "Questo campo deve contenere da {{min}} a {{max}} caratteri.", "maxlength_error": "Questo campo può contenere al massimo {{max}} caratteri.", - "address_pattern_error": "Sono consentiti solo lettere, numeri, spazi, trattini, e questi caratteri speciali: - . ' # ; : ( ) , @ /", + "address_pattern_error": "Sono consentiti solo lettere, numeri, spazi e questi caratteri speciali: - . ' # ; : ( ) , @ /", "postcode_pattern_error": "Sono consentiti solo lettere, numeri e trattini.", "phone_pattern_error": "Sono consentiti solo numeri, spazi e trattini.", "tax_identification_number_pattern_error": "Sono consentiti solo lettere, numeri e trattini.", "continue": "Continua", "cancel": "Annulla", "not_pep_verify": "Dichiaro di non essere una persona politicamente esposta (PEP)", - "pep_info": "Un PEP è un individuo che è o che è stato incaricato di un'importante funzione pubblica. Questo status si estende ai parenti e stretti collaboratori del PEP.", + "pep_info": "Un PEP è un individuo che è o è stato incaricato di un'importante funzione pubblica. Questo status si estende ai suoi parenti e stretti collaboratori.", "forex_trading_experience": "Esperienza di trading su Forex", "forex_trading_frequency": "Frequenza di trading su Forex", "binary_options_trading_experience": "Esperienza di trading di opzioni binarie", - "binary_options_trading_frequency": "Frequenza del trading di opzioni binarie", + "binary_options_trading_frequency": "Frequenza di trading di opzioni binarie", "cfd_trading_experience": "Esperienza di trading di CFD", - "cfd_trading_frequency": "Frequenza del trading di CFD", + "cfd_trading_frequency": "Frequenza di trading di CFD", "other_instruments_trading_experience": "Esperienza di trading in altri strumenti finanziari", - "other_instruments_trading_frequency": "Frequenza del trading in altri strumenti finanziari", + "other_instruments_trading_frequency": "Frequenza di trading in altri strumenti finanziari", "employment_industry": "Settori di occupazione", "education_level": "Livello di istruzione", "income_source": "Fonte di reddito", @@ -184,22 +184,22 @@ "employment_status": "Stato di occupazione", "account_turnover": "Fatturato previsto sull'account", "source_of_wealth": "Fonte di ricchezza", - "account_opening_reason": "Motivo dell'apertura dell'account", + "account_opening_reason": "Motivo di apertura del conto", "details": "Dettagli", "pep_declaration": "Dichiarazione PEP", "trading_experience": "Esperienza di trading", "security": "Sicurezza", "address": "Indirizzo", "financial_info": "Informazioni finanziarie", - "tax_information": "Informazioni Aggiuntive", + "tax_information": "Informazioni fiscali", "professional_client": "Cliente Professionale", "professional_client_info": "Normalmente i clienti vengono considerati clienti al dettaglio. Desideri essere considerato cliente professionale, previa verifica dei requisiti richiesti?", "professional_client_verify": "Voglio essere trattato come cliente professionale.", - "what_is_this": "Cos'è questo?", + "what_is_this": "Di cosa si tratta?", "read_more": "Per saperne di più.", "required_to_collect_tin": "Binary Investments (Europe) Ltd. ha l'obbligo di raccogliere i tuoi dati fiscali.", - "required_to_obtain_information": "Per usufruire dei nostri servizi, richiediamo delle informazioni necessarie per valutare se un dato prodotto o servizio è adegutao a te (ossia se possiedi l'esperienza e la conoscenza per comprendere i rischi connessi).", - "on_the_basis_of_information": "Sulla base delle informazioni fornite, relative alla tua formazione ed esperienza, riteniamo che gli investimenti disponibili su questo sito internet non siano adatti a te.", + "required_to_obtain_information": "Per usufruire dei nostri servizi, siamo tenuti a richiederti informazioni per valutare se un dato prodotto o servizio è adeguato a te (ossia se possiedi l'esperienza e la conoscenza per comprenderne i rischi connessi).", + "on_the_basis_of_information": "Sulla base delle informazioni fornite riguardanti la tua formazione ed esperienza, riteniamo che gli investimenti disponibili su questo sito internet non siano adatti a te.", "appropriateness_test": "Test di adeguatezza: ", "warning": "ATTENZIONE:", "by_clicking": "Cliccando ", @@ -209,12 +209,12 @@ "secret_question": "Domanda segreta", "secret_answer": "Risposta segreta", "secret_answer_pattern_error": "Sono consentiti solo lettere, numeri, spazi, trattini, punti e apostrofi.", - "confirm_tax_info": "Con la presente confermo che le informazioni fiscali fornite sono veritiere e complete. Informerò inoltre Binary Investments (Europe) Ltd. su eventuali modifiche a queste informazioni.", - "multi_tax_residence_info": "Puoi essere considerato un residente fiscale in più di una giurisdizione. Ti chiediamo di consultare il tuo consulente fiscale e verificare che i dati fiscali siano corretti." + "confirm_tax_info": "Con la presente confermo che le informazioni fiscali fornite sono veritiere e complete. Informerò inoltre Binary Investments (Europe) Ltd. di eventuali modifiche a queste informazioni.", + "multi_tax_residence_info": "Puoi essere considerato un residente fiscale in più di una giurisdizione. Consulta il tuo consulente fiscale e verifica che i dati fiscali siano corretti." }, "new-account-real": { "real_account_opening": "Apertura di un account reale", - "details": "Dettagli", + "details": "Informazioni", "address": "Indirizzo", "security": "Sicurezza", "salutation": "Titolo", @@ -230,7 +230,7 @@ "address_state": "Stato/Provincia", "address_postcode": "Codice postale/CAP", "phone": "Telefono", - "open_account": "Apri un account", + "open_account": "Apri un conto", "select": "Seleziona", "secret_question": "Domanda segreta", "secret_answer": "Risposta segreta", @@ -241,14 +241,14 @@ "general_pattern_error": "Sono consentite solo lettere, spazi, trattini, punti e apostrofi.", "length_range_error": "Questo campo deve contenere da {{min}} a {{max}} caratteri.", "maxlength_error": "Questo campo può contenere al massimo {{max}} caratteri.", - "address_pattern_error": "Sono consentiti solo lettere, numeri, spazi, trattini, e questi caratteri speciali: - . ' # ; : ( ) , @ /", + "address_pattern_error": "Sono consentiti solo lettere, numeri, spazi, trattini e i seguenti caratteri speciali: - . ' # ; : ( ) , @ /", "postcode_pattern_error": "Sono consentiti solo lettere, numeri e trattini.", "phone_pattern_error": "Sono consentiti solo numeri, spazi e trattini.", "secret_answer_pattern_error": "Sono consentiti solo lettere, numeri, spazi, trattini, punti e apostrofi.", "required": "Questo campo è obbligatorio.", "not_pep_verify": "Dichiaro di non essere una persona politicamente esposta (PEP)", - "pep_info": "Un PEP è un individuo che è o che è stato incaricato di un'importante funzione pubblica. Questo status si estende ai parenti e stretti collaboratori del PEP.", - "account_opening_reason": "Motivo dell'apertura dell'account", + "pep_info": "Un PEP è un individuo che è o è stato incaricato di un'importante funzione pubblica. Questo status si estende ai parenti e stretti collaboratori del suddetto PEP.", + "account_opening_reason": "Ragione dell'apertura del conto", "what_is_this": "Cos'è questo?" }, "profit-table": { @@ -259,14 +259,14 @@ "jump_to_date": "Vai alla data", "date": "Data", "ref": "Riferimento", - "profit_loss": "Profitto/Perdita", + "profit_loss": "Profitto/perdita", "no_transaction": "Non esiste alcuna transazione da mostrare.", "go": "Vai" }, "transaction-details": { "ref": "ID di riferimento", - "contract_type": "Tipo di Contratto", - "transaction_id": "ID della Transazione", + "contract_type": "Tipo di contratto", + "transaction_id": "ID della transazione", "buy": "Acquista", "sell": "Vendi", "start_time": "Orario di inizio", @@ -292,8 +292,8 @@ "DIGITOVER": "Cifra Superiore", "DIGITUNDER": "Cifra Inferiore", "EXPIRYMISS": "Termina fuori", - "EXPIRYRANGE": "Finisce tra", - "EXPIRYRANGEE": "Finisce tra", + "EXPIRYRANGE": "Finisce dentro", + "EXPIRYRANGEE": "Finisce dentro", "LBFLOATCALL": "Close-Low", "LBFLOATPUT": "High-Close", "LBHIGHLOW": "High-Low", @@ -337,8 +337,8 @@ "contact_us": "Contattaci", "open_real": "Passa a un conto reale", "open_financial": "Apri un conto finanziario", - "create_account": "Crea un account", - "accounts_list": "Elenco degli account", + "create_account": "Crea un conto", + "accounts_list": "Elenco dei conti", "network_status": "Stato della rete", "responsible_trading": "Trading responsabile" }, @@ -348,17 +348,17 @@ "change_password": "Modifica Password", "financial_assessment": "Valutazione finanziaria", "limits": "Limiti", - "account_categorisation": "Categorizzazione del conto" + "account_categorisation": "Classificazione del conto" }, "self-exclusion": { "self_exclusion": "Funzioni di auto esclusione", - "maximum_account_cash_balance": "Saldo di cassa massimo sull'account", + "maximum_account_cash_balance": "Massimo saldo di cassa del conto", "max_balance_hint": "Una volta raggiunto questo limite, non potrai più effettuare depositi.", - "daily_turnover_limit": "Limite giornaliero di turnover", - "max_turnover_hint": "Acquisto totale massimo di contratti al giorno.", + "daily_turnover_limit": "Limite giornaliero del volume delle operazioni", + "max_turnover_hint": "Totale massimo giornaliero di acquisti di contratti.", "daily_limit_on_losses": "Limite giornaliero sulle perdite", - "max_losses_hint": "Perdita totale massima al giorno.", - "7_day_turnover_limit": "Limite di 7 giorni sul turnover", + "max_losses_hint": "Totale minimo giornaliero delle perdite.", + "7_day_turnover_limit": "Limite di 7 giorni sul volume delle operazioni", "7_day_turnover_hint": "Acquisto totale massimo di contratti per un periodo di 7 giorni.", "7_day_limit_on_losses": "Limite di 7 giorni sulle perdite", "7_day_losses_hint": "Perdita totale massima per un periodo di 7 giorni.", @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Il limite di durata della sessione, espresso in minuti", "session_duration_hint": "Dopo tale periodo, verrà effettuato automaticamente il logout.", "time_out_until": "Tempo scaduto fino a", - "time_out_hint": "Inserisci la data nel formato MESE/GIORNO/ANNO HH:mm (orario locale). ", + "time_out_hint": "Inserisci la data nel formato GG/MM/AAAA HH:mm (orario locale). ", "exclude_me_from_the_website_until": "Escludimi dal sito internet fino al", - "exclude_me_hint": "Inserisci la data nel formato MESE/GIORNO/ANNO.", + "exclude_me_hint": "Inserisci la data nel formato GG/MM/AAAA.", "update_settings": "Aggiorna impostazioni", "please_enter_an_integer_value": "Si prega di inserire un numero intero con lunghezza max di {{max}}", "enter_valid_value": "Inserisci un valore con al massimo {{fractionalDigits}} cifre decimali e una lunghezza massima di {{max}}", "valid_range_hint": "Inserire un numero compreso tra 0 e {{max}}", - "date_is_not_valid": "Il periodo di esclusione deve essere successivo a oggi", - "date_can_not_be_greater_than": "Il periodo di esclusione non può essere maggiore di {{max}}", - "date_can_not_less_than": "Il periodo di esclusione non può essere inferiore a {{max}}", + "date_is_not_valid": "La scadenza non può essere nel passato.", + "date_can_not_be_greater_than": "Il periodo di esclusione non può superare {{max}}", + "date_can_not_less_than": "Il periodo di esclusione non può precedere {{min}} e seguire {{max}}", "save_prompt": "Contenuto salvato con successo", "session_timeout_warning": "Il limite di durata della tua sessione terminerà tra 10 secondi.", "success": "Riuscito", @@ -547,7 +547,7 @@ }, "mt": { "you_do_not_have_mt5_account": "Non hai alcun account per MetaTrader. Creane uno e riprova.", - "create_account": "Crea un nuovo account", + "create_account": "Crea un nuovo conto", "feature_is_not_available": "Siamo spiacenti, questa funzione non è disponibile nella tua giurisdizione.", "meta_trader_accounts": "Account Meta Trader", "demo_account": "Account demo", @@ -556,7 +556,7 @@ "balance": "Saldo", "name": "Nome", "start_trading_with_mt5": "Inizia a fare trading con MT5", - "upgrade_real_account": "Per creare un conto reale per MT5, passa a un conto reale Binary.com.", + "upgrade_real_account": "Per aprire un conto reale per MT5, passa a un conto reale Binary.com.", "standard": "Standard", "advanced": "Avanzato", "mam_advanced": "MAM avanzato", @@ -613,7 +613,7 @@ "set_country": "Prima di passare a un account con soldi reali, si prega di impostare il paese di residenza.", "complete_financial_assessment": "Per aumentare il limite dei prelievi e del trading, si prega di compilare il modulo della valutazione finanziaria.", "financial_assessment_not_completed": "La valutazione finanziaria non è completa", - "tax_information": "Informazioni Aggiuntive", + "tax_information": "Informazioni fiscali", "complete_profile": "Per aumentare il limite dei prelievi e del trading, completa il profilo del tuo account.", "tnc": "Termini e condizioni", "accept_tnc": "Per aumentare il limite dei prelievi e del trading, accetta i Termini e condizioni aggiornati.", @@ -621,12 +621,12 @@ "set_max_turnover_limit": "Per aumentare il limite dei prelievi e del trading, imposta il limite di fatturato di 30 giorni dell'Auto esclusione.", "account_age_verification": "Verifica dell'età", "needs_age_verification": "L'account ha bisogno della verifica dell'età, per ulteriori informazioni contatta l'assistenza clienti.", - "choose_account_currency": "Imposta la valuta del tuo account.", + "choose_account_currency": "Imposta la valuta del tuo conto.", "account_currency": "Valuta del conto" }, "set-currency": { "select_currency": "Seleziona la valuta", - "select_currency_text": "Seleziona la valuta di questo account:", + "select_currency_text": "Seleziona la valuta di questo conto:", "fiat_currency": "Moneta Fiat", "cryptocurrency": "Criptovaluta", "confirm": "Conferma" @@ -644,14 +644,14 @@ "virtual": "Virtuale", "gaming": "Gioco Online", "financial": "Investimento", - "account_real": "Conto Reale", + "account_real": "Conto reale", "account_financial": "Conto finanziario", "fiat_currencies": "Moneta Fiat", "crypto_currencies": "Criptovaluta", "please_select_currency": "Imposta la valuta per il conto esistente {{loginid}} al fine di creare altri conti.", "set_currency": "Imposta la valuta", "existing_accounts": "I tuoi conti esistenti", - "create_new": "Crea un nuovo account", + "create_new": "Crea un nuovo conto", "create": "Crea", "account": "Account", "available_markets": "Mercati disponibili", @@ -674,11 +674,11 @@ }, "financial-information-options": { "under_1_year": "da 0 a 1 anno", - "1_2_years": "1-2 anni", - "over_3_years": "Più di 3 anni", + "1_2_years": "da 1 a 2 anni", + "over_3_years": "Oltre i 3 anni", "0_5_transactions": "0-5 transazioni negli ultimi 12 mesi", "6_10_transactions": "6-10 transazioni negli ultimi 12 mesi", - "transactions_more": "40 transazioni o più negli ultimi 12 mesi", + "transactions_more": "40 o più transazioni negli ultimi 12 mesi", "construction": "Costruzione", "education": "Formazione", "finance": "Finanza", @@ -705,11 +705,11 @@ "self_employed": "Lavoratore autonomo", "investment": "Investimenti e dividendi", "pension": "Pensione", - "net_income_1": "Meno di $25.000", - "net_income_2": "$25.000 - $50.000", - "net_income_3": "$50.001 - $100.000", - "net_income_4": "$100.001 - $500.000", - "net_income_5": "Più di $500.000", + "net_income_1": "Meno di 25.000 $", + "net_income_2": "25.000 $ - 50.000 $", + "net_income_3": "50.001 $ - 100.000 $", + "net_income_4": "100.001 $ - 500.000 $", + "net_income_5": "Più di 500.000 $", "estimated_worth_1": "Meno di $100.000", "estimated_worth_2": "$100.000 - $250.000", "estimated_worth_3": "$250.001 - $500.000", @@ -785,12 +785,12 @@ "posses_of_experience": "Presupponiamo che il cliente possieda l'esperienza, la conoscenza e le competenze necessarie per prendere decisioni di investimento e valutarne correttamente i rischi connessi", "appropriateness_test": "Non siamo tenuti a condurre un test di appropriatezza e né tantomeno a fornire avvisi di rischio", "keep_informed": "Come Cliente Professionale, ci devi tenere informati su eventuali cambiamenti che possono influenzare il tuo stato.", - "accept": "Accetta", - "decline": "Rifiuta", - "you_may_decline": "Nota: Puoi rifiutare e continuare come un Cliente al Dettaglio." + "accept": "Accetto", + "decline": "Rifiuto", + "you_may_decline": "Nota: puoi rifiutare e continuare come cliente al dettaglio." }, "account-categorisation": { - "account_categorisation": "Categorizzazione del conto", + "account_categorisation": "Classificazione del conto", "processing": "La tua richiesta di essere categorizzato come cliente professionale è in fase di elaborazione.", "professional": "Sei categorizzato come cliente professionista.", "error": "Siamo spiacenti, si è verificato un errore durante l'elaborazione della tua richiesta.", diff --git a/www/i18n/pl.json b/www/i18n/pl.json index 519e2bcad3..5187bc6ea4 100644 --- a/www/i18n/pl.json +++ b/www/i18n/pl.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Limit czasu sesji, w minutach", "session_duration_hint": "Zostaniesz automatycznie wylogowany po tym czasie.", "time_out_until": "Okres wyłączenia do", - "time_out_hint": "Wprowadź datę w formacie MM/DD/RRRR GG: mm (czasu lokalnego). ", + "time_out_hint": "Wprowadź datę w formacie DD/MM/RRRR GG:mm (czasu lokalnego). ", "exclude_me_from_the_website_until": "Wyłącz mnie z portalu do dnia", - "exclude_me_hint": "Wprowadź datę w formacie MM/DD/RRRR.", + "exclude_me_hint": "Wprowadź datę w formacie DD/MM/RRRR.", "update_settings": "Uaktualnij ustawienia", "please_enter_an_integer_value": "Wprowadź wartość całkowitą o maksymalnej długości {{max}}", "enter_valid_value": "Proszę wprowadzić wartość do {{fractionalDigits}} dwóch miejsc po przecinku i o maksymalnej długości {{max}}", "valid_range_hint": "Proszę wpisać liczbę od 0 do {{max}}", - "date_is_not_valid": "Okres wykluczenia musi zaczynać się jutro lub później", - "date_can_not_be_greater_than": "Okres wykluczenia nie może przekraczać {{max}}", - "date_can_not_less_than": "Okres wykluczenia nie może być krótszy niż {{max}}", + "date_is_not_valid": "Czas wyłączenia nie może być datą przeszłą.", + "date_can_not_be_greater_than": "Okres wykluczenia nie może datą późniejszą niż {{max}}", + "date_can_not_less_than": "Okres wykluczenia nie może być datą wcześniejszą niż {{min}} i późniejszą niż {{max}}", "save_prompt": "Treść zapisana pomyślnie", "session_timeout_warning": "Limit czasu sesji zakończy się za 10 sek.", "success": "Udało się", diff --git a/www/i18n/pt.json b/www/i18n/pt.json index 23e6d25e49..64faae8872 100644 --- a/www/i18n/pt.json +++ b/www/i18n/pt.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Limite de duração da sessão, em minutos", "session_duration_hint": "Você será automaticamente desconectado após essa hora.", "time_out_until": "Bloqueio até", - "time_out_hint": "Insira a data no formato MM/DD/AAAA HH:mm (hora local). ", + "time_out_hint": "Insira a data no formato DD/MM/YYYY HH:mm (hora local).", "exclude_me_from_the_website_until": "Exclua-me do site até", - "exclude_me_hint": "Insira a data no formato MM/DD/AAAA.", + "exclude_me_hint": "Insira a data no formato DD/MM/YYYY.", "update_settings": "Atualizar configurações", "please_enter_an_integer_value": "Insira uma valor inteiro com comprimento máximo de {{max}}", "enter_valid_value": "Insira um valor com até {{fractionalDigits}} casas decimais e tamanho máximo de {{max}}", "valid_range_hint": "Insira um número entre 0 e {{max}}", - "date_is_not_valid": "Período de exclusão deve ser depois de hoje", - "date_can_not_be_greater_than": "Período de exclusão não pode ser superior a {{max}}", - "date_can_not_less_than": "Período de exclusão não pode ser inferior a {{max}}", + "date_is_not_valid": "O tempo limite não pode ser no passado.", + "date_can_not_be_greater_than": "O período de exclusão não pode ser depois de {{max}}", + "date_can_not_less_than": "O período de exclusão não pode ser antes de {{min}} e depois de {{max}}", "save_prompt": "Conteúdo salvo com sucesso", "session_timeout_warning": "O limite de duração da sua sessão terminará em 10 segundos.", "success": "Sucesso", diff --git a/www/i18n/ru.json b/www/i18n/ru.json index 15cedffa10..259800731a 100644 --- a/www/i18n/ru.json +++ b/www/i18n/ru.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Ограничение длительности сессии в минутах", "session_duration_hint": "Вы автоматически выйдете с сайта после этого периода.", "time_out_until": "Перерыв до", - "time_out_hint": "Пожалуйста, введите дату в формате ММ/ДД/ГГГГ ЧЧ:мм (по местному времени). ", + "time_out_hint": "Пожалуйста, введите дату в формате ДД/ММ/ГГГГ ЧЧ:мм (по местному времени). ", "exclude_me_from_the_website_until": "Закройте мне доступ к сайту до", - "exclude_me_hint": "Пожалуйста, введите дату в формате ММ/ДД/ГГГГ.", + "exclude_me_hint": "Пожалуйста, введите дату в формате ДД/ММ/ГГГГ.", "update_settings": "Обновить настройки", "please_enter_an_integer_value": "Пожалуйста, введите целое число; максимальная длина: {{max}}", "enter_valid_value": "Пожалуйста, введите значение до {{fractionalDigits}} десятичных и макс. длиной не более {{max}}", "valid_range_hint": "Пожалуйста, введите число от 0 до {{max}}", - "date_is_not_valid": "Время начала ограничения должно быть позднее сегодняшней даты", - "date_can_not_be_greater_than": "Период исключения не может превышать {{max}}", - "date_can_not_less_than": "Период исключения не может быть меньше {{max}}", + "date_is_not_valid": "Перерыв не может быть в прошлом.", + "date_can_not_be_greater_than": "Период исключения не может быть позднее {{max}}", + "date_can_not_less_than": "Дата исключения не может быть раньше {{min}} и позднее {{max}}", "save_prompt": "Изменения успешно сохранены", "session_timeout_warning": "Лимит на длительность Вашей сессии истечёт через 10 секунд.", "success": "Готово", diff --git a/www/i18n/th.json b/www/i18n/th.json index 28d3a4fefb..2529615fd6 100644 --- a/www/i18n/th.json +++ b/www/i18n/th.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "รอบระยะเวลาการซื้อขาย ในหน่วยนาที", "session_duration_hint": "คุณจะออกจากระบบโดยอัตโนมัติภายหลังเวลาดังกล่าว", "time_out_until": "หมดเวลากระทั่ง", - "time_out_hint": "โปรดป้อนวันที่ในรูปแบบ MM/DD/YYYY HH:mm (เวลาท้องถิ่น) ", + "time_out_hint": "โปรดป้อนวันที่ในรูปแบบ DD/MM/YYYY HH:mm (เวลาท้องถิ่น) ", "exclude_me_from_the_website_until": "พักฉันจากเว็บไซต์จนกระทั่ง", - "exclude_me_hint": "โปรดป้อนวันที่ในรูปแบบ MM/DD/YYYY", + "exclude_me_hint": "โปรดป้อนวันที่ในรูปแบบ DD/MM/YYYY", "update_settings": "การปรับปรุงการตั้งค่า", "please_enter_an_integer_value": "โปรดป้อนเลขจำนวนเต็มที่มีความยาวสูงสุดจำนวน {{max}}", "enter_valid_value": "โปรดป้อนตัวเลขที่มีทศนิยมสูงสุด {{fractionalDigits}} หลัก และความยาวสูงสุดที่ {{max}} ตัวอักษร", "valid_range_hint": "โปรดป้อนตัวเลขระหว่าง 0 และ {{max}}", - "date_is_not_valid": "เวลาของการพักจะต้องเป็นวันที่หลังจากวันนี้", - "date_can_not_be_greater_than": "เวลาพักต้องไม่เกิน {{max}}", - "date_can_not_less_than": "เวลาพักต้องไม่น้อยกว่า {{max}}", + "date_is_not_valid": "ช่วงเวลาที่ใช้อ้างอิงไม่สามารถเป็นเวลาในอดีต", + "date_can_not_be_greater_than": "เวลาพักต้องไม่เป็นเวลาหลังจาก {{max}}", + "date_can_not_less_than": "เวลาพักต้องไม่เป็นเวลาก่อน {{min}} และหลังจาก {{max}}", "save_prompt": "ได้บันทึกเนื้อหาเรียบร้อยแล้ว", "session_timeout_warning": "เวลาจำกัดของการซื้อขายของท่านจะสิ้นสุดภายใน 10 วินาที", "success": "เรียบร้อยแล้ว", diff --git a/www/i18n/vi.json b/www/i18n/vi.json index 7a01c5759e..159fb51879 100644 --- a/www/i18n/vi.json +++ b/www/i18n/vi.json @@ -16,10 +16,10 @@ "not_unique": "Bạn đã thêm tài khoản này.", "contract_error": "Hợp đồng không khả dụng, vui lòng thử lại.", "no_tick": "Vui lòng lựa chọn một thị trường cơ bản khác, Thị trường cơ bản mà bạn chọn không hỗ trợ khoảng thời gian là giây.", - "remove_token_title": "Xóa bỏ một mã Token", + "remove_token_title": "Xóa bỏ mã Token", "remove_token_content": "Bạn có chắc muốn xóa mã token này?", - "remove_all_tokens_title": "Loại bỏ tất cả Token", - "remove_all_tokens_content": "Bạn có chắc muốn gỡ bỏ tất cả mã token và đăng xuất?", + "remove_all_tokens_title": "Thoát", + "remove_all_tokens_content": "Bạn có chắc muốn đăng xuất?", "ok": "Ok", "yes": "Có", "no": "Không" @@ -43,9 +43,9 @@ "stake": "Cổ phần", "asians_up": "Châu Á Lên", "asians_down": "Châu Á Xuống", - "asians": "Châu Á Lên", + "asians": "Châu Á", "digits_digit_over_digit_under": "Chữ số trên/dưới", - "digits_digit_odd_digit_even": "Chữ số lẻ/bằng", + "digits_digit_odd_digit_even": "Chữ số lẻ/chẵn", "digits_digit_matches_digit_differs": "Chữ số khớp/khác nhau", "up_down": "Lên/Xuống", "higher_lower": "Cao hơn/Thấp hơn", @@ -113,14 +113,14 @@ "integer_error": "Khoản thời gian nên là số nguyên." }, "new-virtual-account": { - "continue": "Tiếp tục", + "continue": "Tiếp tục", "signup": "Đăng kí", "signup_question": "Không có tài khoản?", "verification_code": "Mã xác minh", "password": "Chọn mật khẩu", "residence": "Quốc gia cư trú", "select": "Chọn quốc gia của bạn", - "password_hint": "Mật khẩu phải là ít nhất 6 chữ thường và chữ hoa với những con số", + "password_hint": "Mật khẩu phải có ít nhất 6 chữ thường và chữ hoa cùng với con số", "code_hint": "Vui lòng kiểm tra email của bạn để biết giá trị của token này", "hide_pass": "Ẩn mật khẩu", "show_pass": "Hiện mật khẩu", @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "Giới hạn thời lượng phiên, bằng phút", "session_duration_hint": "Bạn sẽ được tự động đăng xuất sau một khoảng thời gian.", "time_out_until": "Tạm ngưng cho đến khi", - "time_out_hint": "Vui lòng nhập ngày theo định dạng Tháng/Ngày/Năm Giờ:phút (giờ địa phương). ", + "time_out_hint": "Vui lòng nhập ngày theo định dạng Ngày/Tháng/Năm Giờ:phút (giờ địa phương). ", "exclude_me_from_the_website_until": "Loại trừ tôi khỏi trang web cho đến khi", - "exclude_me_hint": "Vui lòng nhập ngày theo định dạng Tháng/Ngày/Năm.", + "exclude_me_hint": "Vui long nhập ngày theo định dạng Ngày/Tháng/Năm.", "update_settings": "Cập nhật các cài đặt", "please_enter_an_integer_value": "Vui lòng nhập một số nguyên độ dài không quá {{max}}", "enter_valid_value": "Vui lòng nhập một giá trị có độ dài tối đa {{max}} và có số chữ số thập phân không quá {{fractionalDigits}}", "valid_range_hint": "Vui lòng nhập một con số trong khoảng từ 0 đến {{max}}", - "date_is_not_valid": "Thời gian loại trừ bắt đầu ngay sau hôm nay", - "date_can_not_be_greater_than": "Thời gian loại trừ không thể vượt quá {{max}}", - "date_can_not_less_than": "Thời gian loại trừ không thể ít hơn {{max}}", + "date_is_not_valid": "Thời hạn kết thúc không thể được đặt trong quá khứ.", + "date_can_not_be_greater_than": "Thòi gian loại trừ không thể đặt sau {{max}}", + "date_can_not_less_than": "Thời gian loại trừ không được phép đặt trước {{min}} và sau {{max}}", "save_prompt": "Nội dung được lưu thành công", "session_timeout_warning": "Thời hạn phiên giao dịch của bạn sẽ kết thúc trong 10 giây nữa.", "success": "Thành công", diff --git a/www/i18n/zh_cn.json b/www/i18n/zh_cn.json index 1006732f99..15de0ba324 100644 --- a/www/i18n/zh_cn.json +++ b/www/i18n/zh_cn.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "交易期持续时间限制,以分钟为单位", "session_duration_hint": "在该时间后您将自动退出登录。", "time_out_until": "时间已过。下次开启时间为", - "time_out_hint": "请输入日期,格式为月/日/年 时:分(当地时间)。 ", + "time_out_hint": "请输入日期,格式为日/月/年 时:分(当地时间)。 ", "exclude_me_from_the_website_until": "禁止我访问本网站直到", - "exclude_me_hint": "请输入日期,格式为月/日/年。", + "exclude_me_hint": "请输入日期,格式为日/月/年。", "update_settings": "更新设置", "please_enter_an_integer_value": "请输入一个整数值,最大长度为 {{max}}", "enter_valid_value": "请输入最大小数点位数为{{fractionalDigits}} 和最大长度为{{max}} 的数值", "valid_range_hint": "请输入0和 {{max}} 之间的数字", - "date_is_not_valid": "禁止时间必须在今日之后", - "date_can_not_be_greater_than": "禁止时间不能超过 {{max}}", - "date_can_not_less_than": "禁止时间不能少于 {{max}}", + "date_is_not_valid": "到期时间不可为过去式。", + "date_can_not_be_greater_than": "禁止时间不可在 {{max}} 之后", + "date_can_not_less_than": "禁止时间不可在 {{min}} 之前和 {{max}} 之后", "save_prompt": "内容已成功保存", "session_timeout_warning": "交易期持续时间限制将于10秒内结束。", "success": "成功", diff --git a/www/i18n/zh_tw.json b/www/i18n/zh_tw.json index 42554d2b60..704c813da2 100644 --- a/www/i18n/zh_tw.json +++ b/www/i18n/zh_tw.json @@ -370,16 +370,16 @@ "session_duration_limit_in_minutes": "交易期持續時間限制,以分鐘作單位", "session_duration_hint": "在該時間後您將自動退出登入。", "time_out_until": "時間已過。下次開啟時間為", - "time_out_hint": "請輸入日期,格式為月/日/年 時:分(當地時間)。 ", + "time_out_hint": "請輸入日期,格式為日/月/年 時:分(當地時間)。 ", "exclude_me_from_the_website_until": "禁止我訪問本網站直到", - "exclude_me_hint": "請輸入日期,格式為月/日/年。", + "exclude_me_hint": "請輸入日期,格式為日/月/年。", "update_settings": "更新設定", "please_enter_an_integer_value": "請輸入一個整數值,最大長度為 {{max}}", "enter_valid_value": "請輸入最大小數點位數為 {{fractionalDigits}} 和最大長度為 {{max}} 的數值", "valid_range_hint": "請輸入0和{{max}} 之間的數字。", - "date_is_not_valid": "禁止時間必須在今日之後", - "date_can_not_be_greater_than": "禁止時間不能超過 {{max}}", - "date_can_not_less_than": "禁止時間不能少於 {{max}}", + "date_is_not_valid": "到期時間不可為過去式。", + "date_can_not_be_greater_than": "禁止時間不可在 {{max}} 之後", + "date_can_not_less_than": "禁止時間不可在{{min}} 之前和 {{max}} 之後", "save_prompt": "內容已成功儲存", "session_timeout_warning": "交易期持續時間限制將於10秒內結束。", "success": "成功", diff --git a/www/js/config.json b/www/js/config.json index 48d5fb7703..8da446062b 100644 --- a/www/js/config.json +++ b/www/js/config.json @@ -1 +1 @@ -{"version":"2.4.4"} +{"version":"2.4.6"} diff --git a/www/js/pages/self-exclusion/self-exclusion.controller.js b/www/js/pages/self-exclusion/self-exclusion.controller.js index 2895863280..7902d6fdc5 100644 --- a/www/js/pages/self-exclusion/self-exclusion.controller.js +++ b/www/js/pages/self-exclusion/self-exclusion.controller.js @@ -12,6 +12,7 @@ SelfExclusion.$inject = [ "$scope", "$state", + "$filter", "$translate", "$ionicScrollDelegate", "alertService", @@ -23,6 +24,7 @@ function SelfExclusion( $scope, $state, + $filter, $translate, $ionicScrollDelegate, alertService, @@ -34,14 +36,10 @@ vm.hasError = false; vm.validation = validationService; vm.fractionalDigits = vm.validation.fractionalDigits; - const today = new Date(); - vm.minDate = today.toISOString().slice(0, 10); - vm.minDateTime = today.toISOString(); - vm.nextSixWeeks = new Date(today.getTime() + 7 * 6 * 24 * 60 * 60 * 1000).toISOString().slice(0, 10); - vm.nextSixMonths = new Date(today.getTime() + 30 * 6 * 24 * 60 * 60 * 1000).toISOString().slice(0, 10); vm.disableUpdateButton = true; vm.isDataLoaded = false; vm.disableForZeroValues = false; + vm.isReadonlyExcludeUntil = false; let isUpdated = false; vm.data = {}; const account = accountService.getDefault(); @@ -51,10 +49,13 @@ $scope.$on("get-self-exclusion", (e, response) => { $scope.$applyAsync(() => { - vm.data = _.clone(response); - if (vm.data.exclude_until) { - vm.data.exclude_until = new Date(vm.data.exclude_until); + const data = _.clone(response); + if (data.exclude_until) { + data.exclude_until = new Date(`${data.exclude_until}T00:00:00`); + vm.isReadonlyExcludeUntil = true; } + if (data.timeout_until) data.timeout_until = new Date(data.timeout_until * 1000); + vm.data = data; vm.limits = _.clone(response); vm.disableUpdateButton = false; vm.isDataLoaded = true; @@ -112,11 +113,11 @@ const data = _.clone(vm.data); if (data.timeout_until) { - data.timeout_until = new Date(data.timeout_until).getTime() / 1000; + data.timeout_until = Math.floor(new Date(data.timeout_until).getTime() / 1000); } if (data.exclude_until) { - data.exclude_until = data.exclude_until.toISOString().slice(0, 10); + data.exclude_until = filterDate(new Date(data.exclude_until).getTime()); } // Convert all numbers to string for supporting number with more than 15 digits @@ -126,6 +127,61 @@ isUpdated = true; } + // yyyy-mm-dd + const filterDate = (date) => $filter('date')(date, 'yyyy-MM-dd'); + + const filterTime = (date) => $filter('date')(date, 'HH:mm'); + + const filterDateTime = (date) => { + const filteredDate = filterDate(date); + const filteredTime = filterTime(date); + return `${filteredDate}T${filteredTime}`; + } + + const addWeeks = (startingDate, weeks) => { + const date = _.clone(startingDate); + const exactTime = filterTime(date); + const dateAfterWeeks = date.setDate(date.getDate() + weeks * 7); + return { + limit: `${filterDate(dateAfterWeeks)}T${exactTime}`, + text : `${filterDate(dateAfterWeeks)} at ${exactTime}` + }; + } + + const addMonth = (startingDate, month) => { + const date = _.clone(startingDate); + date.setDate(date.getDate() + 1); + const dateAfterMonths = new Date(date.setMonth(date.getMonth() + month)).getTime(); + return filterDate(dateAfterMonths); + } + + const addYears = (startingDate, years) => { + const date = _.clone(startingDate); + const dateAfterYears = new Date(date.setDate(date.getDate() + years * 365)).getTime(); + return filterDate(dateAfterYears); + } + + const getCurrentDateTime = (startingDate) => { + const date = _.clone(startingDate); + const now = new Date(date).getTime(); + return filterDateTime(now); + } + + const calculateDateLimits = (startingDate = new Date()) => { + vm.minTimeoutUntil = getCurrentDateTime(startingDate); + // calculating the min date for 'timeout until' + // (6 weeks after tomorrow in format yyyy-mm-dd) + vm.maxTimeoutUntil = addWeeks(startingDate, 6); + + // calculating the min date for 'exclude until' + // (6 month after tomorrow in format yyyy-mm-dd) + vm.minExcludeUntil = addMonth(startingDate, 6); + // calculating the max date for 'exclude until' + // we add 5 * 365 = 1825 days instead of years to be exactly like API + // otherwise it will have more days considering leap years + vm.maxExcludeUntil = addYears(startingDate, 5); + }; + $scope.$on('get_limits', (e, limits) => { vm.hasError = false; vm.accountLimits = limits; @@ -140,8 +196,20 @@ $state.go('contact'); }; - const init = () => getLimits(); + $scope.$on('time:success', (e, time) => { + const startingDate = new Date(time * 1000); + calculateDateLimits(startingDate); + }); + + $scope.$on('time:error', () => { + calculateDateLimits(); + }); + const init = () => { + websocketService.sendRequestFor.serverTime(); + getLimits(); + }; + init(); } diff --git a/www/js/pages/self-exclusion/self-exclusion.template.html b/www/js/pages/self-exclusion/self-exclusion.template.html index 04a53d55be..9be227d825 100644 --- a/www/js/pages/self-exclusion/self-exclusion.template.html +++ b/www/js/pages/self-exclusion/self-exclusion.template.html @@ -411,10 +411,10 @@

+ min="{{ vm.minTimeoutUntil }}" + max="{{ vm.maxTimeoutUntil['limit'] }}" + ng-min="vm.minTimeoutUntil" + ng-max="vm.maxTimeoutUntil['limit']"/>
{{ 'self-exclusion.time_out_hint' | translate }}
@@ -422,7 +422,7 @@

{{ 'self-exclusion.date_is_not_valid' | translate }} - {{ 'self-exclusion.date_can_not_be_greater_than' | translate:{max: vm.nextSixWeeks} }} + {{ 'self-exclusion.date_can_not_be_greater_than' | translate:{max: vm.maxTimeoutUntil['text']} }} @@ -444,12 +444,17 @@

type="date" ng-model="vm.data.exclude_until" maxlength="10" - min="{{ vm.nextSixMonths }}"/> + min="{{ vm.minExcludeUntil }}" + max="{{ vm.maxExcludeUntil }}" + ng-min="vm.minExcludeUntil" + ng-max="vm.maxExcludeUntil" + ng-readonly="vm.isReadonlyExcludeUntil" + />
{{ 'self-exclusion.exclude_me_hint' | translate }}
- + - {{ 'self-exclusion.date_can_not_less_than' | translate : {max: vm.nextSixMonths} }} + {{ 'self-exclusion.date_can_not_less_than' | translate : {min: vm.minExcludeUntil, max: vm.maxExcludeUntil} }} @@ -466,7 +471,8 @@

diff --git a/www/js/pages/trade/components/chart/chart.controller.js b/www/js/pages/trade/components/chart/chart.controller.js index bd09cd9f71..96a9d97767 100644 --- a/www/js/pages/trade/components/chart/chart.controller.js +++ b/www/js/pages/trade/components/chart/chart.controller.js @@ -19,27 +19,6 @@ chartService.destroy(); }); - $scope.$on("portfolio", (e, portfolio) => { - const contractId = vm.purchasedContract.contractId; - - if ((typeof contractId === "string" && !_.isEmpty(contractId)) || contractId) { - portfolio.contracts.forEach(contract => { - if ((typeof contractId === "string" && contract.contract_id.toString() === contractId) || contract.contract_id === contractId) { - chartService.addContract({ - startTime: contract.date_start + 1, - duration : parseInt(vm.proposal.duration), - type : - vm.proposal.tradeType === "Higher/Lower" - ? `${contract.contract_type}HL` - : contract.contract_type, - selectedTick: vm.proposal.tradeType === "High/Low Ticks" ? vm.proposal.selected_tick : null, - barrier : vm.proposal.barrier - }); - } - }); - } - }); - $scope.$on("tick", (e, feed) => { if (feed && feed.echo_req.ticks_history === vm.proposal.symbol) { chartService.historyInterface.addTick(feed.tick); diff --git a/www/js/pages/trade/components/purchase/purchase.controller.js b/www/js/pages/trade/components/purchase/purchase.controller.js index 18a01b2e47..818913aa2a 100644 --- a/www/js/pages/trade/components/purchase/purchase.controller.js +++ b/www/js/pages/trade/components/purchase/purchase.controller.js @@ -17,6 +17,7 @@ "appStateService", "proposalService", "websocketService", + "chartService", "$ionicLoading" ]; @@ -27,6 +28,7 @@ appStateService, proposalService, websocketService, + chartService, $ionicLoading) { const vm = this; let forgetRequestId = 0; @@ -39,6 +41,7 @@ vm.purchasedContractIndex = -1; vm.currencyType = "fiat"; vm.isContractFinished = false; + vm.contractType = ''; $scope.$watch( () => vm.proposal, @@ -97,21 +100,32 @@ }); $scope.$on("purchase", (e, response) => { + const purchaseInfo = response.buy; + if (!_.isEmpty(response.buy)) { vm.showSummary = true; $scope.$applyAsync(() => { vm.purchasedContract = { - contractId : response.buy.contract_id, - longcode : response.buy.longcode, + contractId : purchaseInfo.contract_id, + longcode : purchaseInfo.longcode, payout : vm.proposalResponses[vm.purchasedContractIndex].payout, - cost : response.buy.buy_price, - balance : response.buy.balance_after, - transactionId: response.buy.transaction_id, + cost : purchaseInfo.buy_price, + balance : purchaseInfo.balance_after, + transactionId: purchaseInfo.transaction_id, profit : parseFloat(vm.proposalResponses[vm.purchasedContractIndex].payout) - - parseFloat(response.buy.buy_price), + parseFloat(purchaseInfo.buy_price), }; }); - websocketService.sendRequestFor.portfolio(); + chartService.addContract({ + startTime: purchaseInfo.start_time + 1, + duration : parseInt(vm.proposal.duration), + type : + vm.proposal.tradeType === "Higher/Lower" + ? `${vm.contractType}HL` + : vm.contractType, + selectedTick: vm.proposal.tradeType === "High/Low Ticks" ? vm.proposal.selected_tick : null, + barrier : vm.proposal.barrier + }); } }); @@ -149,7 +163,7 @@ proposal.underlying_symbol, vm.purchasedContract.payout ); - + vm.isContractFinished = true; sendProposal(); } @@ -186,7 +200,7 @@ return `img/trade-icon/${contractType.toLowerCase()}.svg`; }; - vm.purchase = function (contractIndex) { + vm.purchase = function (contractIndex, contract_type) { $scope.$applyAsync(() => { vm.isContractFinished = false; vm.inPurchaseMode = true; @@ -194,6 +208,9 @@ appStateService.purchaseMode = true; appStateService.tradeMode = false; }); + if (contract_type) { + vm.contractType = contract_type; + } proposalService.purchase(vm.proposalResponses[contractIndex]); }; diff --git a/www/js/pages/trade/components/purchase/purchase.template.html b/www/js/pages/trade/components/purchase/purchase.template.html index 99564e7e81..bcb4c84d30 100644 --- a/www/js/pages/trade/components/purchase/purchase.template.html +++ b/www/js/pages/trade/components/purchase/purchase.template.html @@ -51,7 +51,7 @@
-