Commit Graph

509 Commits

Author SHA1 Message Date
Andrey Shovkoplyas 30ab6c159a
[#7534] Separate DApp & chat tabs in mobile navigation 2019-03-14 09:45:53 +01:00
Andrey Shovkoplyas 38aca129cd
[#7527] Extension is not shown in chat if Development mode is switched off
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-03-07 20:33:19 +01:00
Jinho Jang 6d6bed4282
Update ko.json
Korean translations update
2019-03-06 16:28:46 +02:00
Andrea Maria Piana 422ed6a227
Update translations
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-03-04 17:29:06 +01:00
Andrea Maria Piana b26b6ee5e0
Add unpinning of mailservers
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-04 14:06:09 +01:00
lokalise-bot 6fe3f0500a
Lokalise: update of translations/en.json
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-03-04 11:22:38 +01:00
Dmitry Novotochinov 908e80eb0b
[#7216] import account to keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-03-01 14:38:00 +03:00
Vitaliy Vlasov c23d26e273
TtT Profile screen
Edit screen

Edit screen updates

Learn more screen

Add SNT asset value

Formatting

Add TtT note to QR code viewer

Fixes

UI fixes

Intro screen

Fix learn more

Add learn more subtext

Remove unneeded logs

Screen fixes 2

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2019-02-27 20:08:39 +02:00
Igor Mandrigin b6a326ffc2
settings: fix a typo in dapp permissions label
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-27 16:33:35 +01:00
Zed Tan fa78c5f8bb
[#7400] implement updated copy for beta alert and disclaimer
Signed-off-by: Zed Tan <zed@shootbird.work>
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2019-02-27 13:36:10 +01:00
yenda 6b6847a1ba
[feature] search chats
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-02-26 18:01:25 +01:00
Andrea Maria Piana 4f89073ae8
Add network info in about, with copy to clipboard
In network we show peer infos about you and the connect peers.
Any entry is about is clickable and will copy the value to the
clipboard. Copy info will copy all the info in a JSON string.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-02-26 17:31:55 +01:00
Dmitry Novotochinov bae935d3e4
[#7217] check card state before installation
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-25 22:57:56 +03:00
Roman Volosovskyi 60fd80f353
fix mobile-network-stop-syncing-details label 2019-02-14 22:33:37 +02:00
Roman Volosovskyi 48291247b2
Loading history on mobile network 2019-02-13 18:59:21 +02:00
Pedro Pombeiro 7366f8973b
Add sender name in PNs (if db is unlocked)
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-02-12 17:47:22 +01:00
mestorlx 0471d5fd72
Added utility function to test addresses according to EIP55.
Added pop-up message when addres checksum fails in wallet/send/enter recipient address.

Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-02-11 11:06:24 +01:00
tbenr 51f6a173df
fixes #6596
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-02-11 11:05:23 +01:00
Roman Volosovskyi 7b0f68fcdb
[ui only] Mobile network bottom sheet 2019-02-07 12:21:03 +02:00
Andrey Shovkoplyas 4c4fb6bbe9
[#5584] Implement Manage permissions screen and option for web3 provider Opt-in access
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-02-06 10:38:20 +01:00
Dmitry Novotochinov 1b836bf7ec
[#7006] login with keycard
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-02-06 00:20:07 +03:00
Roman Volosovskyi b96063ce56
[#7422] Show feedback on mailserver error 2019-02-05 20:51:09 +02:00
yenda b80e02d8cf
[feature] add block user feature in user profile
- add block/unblock action to user profile
- blocking deletes all messages from user and ignores future messages
- unblocking stops ignoring new messages from user but doesn't recover past ones

[feature] add contact list

[tests] added scroll to BackupRecoveryPhraseButton

[tests] added scroll to public key

Signed-off-by: yenda <eric@status.im>
2019-02-05 16:29:56 +01:00
Andrea Maria Piana 89725d693a
Add pairing docs link, disable pfs toggle in release
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-31 07:49:37 +01:00
Andrea Maria Piana 13b04f17eb
Enable pairing & contact recovery
This PR enables pairing outside of dev-mode and contact-recovery, which
is useful in the case a new device is added or re-installed.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-29 18:25:25 +01:00
Andrea Maria Piana 52ae2c2bfe
Style header group-chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-29 10:31:59 +01:00
Andrey Shovkoplyas 2430992fb4
Implement stickers market
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2019-01-28 17:18:44 +01:00
yenda 8ef905edfb
[fix 5371] status bar covers touchable UI
- fix #5371
- fix #4345
- introduce "Connected..." status bar
- introduce fetching animation
- removes overlap of status bar with views
- add animations for status bar

Signed-off-by: yenda <eric@status.im>
2019-01-25 15:01:37 +01:00
Andrea Maria Piana 2b2c44c9a5
Add device name to pairing
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-24 11:29:24 +01:00
Dmitry Novotochinov cee18d23b8
[#7132] add keycard settings
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2019-01-23 20:11:23 +03:00
Julien Eluard a4efc661e1
Use better label for system browser
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2019-01-11 09:01:15 +01:00
Andrea Maria Piana b56fd2e29f
Show popup when device is not targeted.
When someone is sending a pfs message to us but did not include our own
device, a pop up is shown propmting the user to connect with the user.

The reason for receiving messages that are not targeting our devices are
various:

1) The account was just recovered (which means it is a new installation
id)
2) More than 3 devices are in use (we only keep max 3 devices in sync)
3) The sender has used an old bundle which does not include the current
device

Eventually we will reduce the likelihood of this scenario happening, but
we can't dismiss it completely.

It's only enabled when PFS is enabled.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2019-01-09 09:36:36 +01:00
Andrea Maria Piana ad99ed2a28
Allow toggling pfs in dev-mode
This commits allow users to toggle pfs in dev-mode (it is already used
for pairing and group chats).

Once enabled direct and public messages sent will only be received by
users running >= 0.9.32.

Also this does not guarantee PFS (both devices need to have it enabled
it), and there still some UX work to do to ensure that, but it is useful
for testing.

A warning is displayed explaining the limitations when enabling.
2019-01-09 09:34:51 +01:00
Roman Volosovskyi 2777809db9
enable saving password on android
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2019-01-08 17:40:00 +01:00
Andrea Maria Piana 881691fbc3
Add joining of group chats
Members will now have to explicitly join a group chat to start receiving
messages from it.

Messages are still sent to users who have not joined for backward
compatibility.
Group updates are unaffected.
2019-01-08 13:58:40 +01:00
Andrea Maria Piana a52f3d4d08
Limit number of participants in group chat to 10 2019-01-08 13:58:38 +01:00
Pedro Pombeiro 9d21cf143e
Add Send Logs command. Closes #6710
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2019-01-08 09:48:56 +01:00
Andrea Maria Piana 5f910a0bec
Sync public chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-24 14:35:17 +01:00
Andrea Maria Piana 87e6c6cdee
Show popup on new device detected 2018-12-24 14:34:00 +01:00
Volodymyr Kozieiev 112fe367cc
Fixed desktop release warning messagebox
Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-12-20 15:51:54 +02:00
Dmitry Novotochinov 962c49e345
add keycard installation
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-12-20 15:43:37 +03:00
Vitaliy Vlasov e40e495e11
Use QSettings in AppConfig
Some more changes

Changes

Fix review items

Rename init-settings to restore-native-settings

Restore application name (thanks @churik !)

Remove org name/domain setting for desktop

Change organization name to include domain

Re-use default values in :desktop/desktop

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-12-19 19:53:54 +02:00
Vitaliy Vlasov 9bc98405a0
Add react-native-desktop-config
Add section separator for logging-display

Refactor user-login-callback

Add comment to AppConfig class definition

Fix mobile compilation error

Use reference in AppConfig singleton; remove obsolete CMake directives

Styling changes

Disable status-go logs by default on desktop

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-12-18 14:31:40 +02:00
Andrea Maria Piana 6e5d54b5aa
Fetch history action 2018-12-14 13:10:37 +01:00
Andrea Maria Piana 80b868a86e
Update translations 2018-12-12 19:56:51 +01:00
Andrea Maria Piana 090b4a1282
Add re-send popup to desktop 2018-12-12 19:56:50 +01:00
Andrea Maria Piana 82f9b58b97
Use not confirmed 2018-12-12 19:56:49 +01:00
Andrea Maria Piana d760f1696c
Add mailservers confirmations & use peer count for online status
We now check that we are only connected to some `peers` instead of using `NetInfo` from `react-native`.

This is because it has been reported to be quite flaky at times, not reporting online status after sleeping, and for privacy concerns (on ios it pings `apple.com`, on desktop `google.com`).

Adds a new banner `Wallet Offline` and change `Connecting to peers` to  `Chat offline`.

A message will be marked as `Sent` only if it made it to the mailserver you are connected to, which will increase the guarantees that we can make about a message (if you see it as sent, it has reached at least a mailserver), this has the consequence that:

- If you are not connected to any mailserver or the mailserver is non responsive/down, and you send a message, it will be marked as `Not sent`, although it might have been actually made it in the network.

Probably this is something that we would like to communicate to the user through UX (i.e. tick if made it to at least a peer, double tick if it made to a mailserver )

Currently I have only enabled this feature in nightlies & devs, I would give it a run and see how we feel about it.
2018-12-12 19:53:01 +01:00
yenda 9110a64dcc
[fix] handle errorMessage in mailserver.request.completed signal
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-12-12 18:24:55 +01:00
Roman Volosovskyi 4aa562f6a8
[slow sign in] Unlock account's DB before starting node
There is no need to wait for `Statusgo.Login` callback in order to start
unlocking realm db: currently it is encrypted via a key which is derived
from user’s password, so we can try to unlock that DB before starting
node. That’s how password will be checked. Right after that `:home`
screen is shown, the node is started, then `Statusgo.Login` executed.

The difference in sign in duration is more noticeable on Android
devices, where `Statusgo.Login` is much slower because of PFS database
encryption.
2018-12-12 17:46:52 +02:00
Roman Volosovskyi 83a8d9db27
Show schema version details on migrations failure
Simplifies debugging of migration failures, specifically in cases when
more than one migration is applied.
2018-12-10 10:12:27 +02:00
Andrea Maria Piana dfbc27c5d7
Allow admin to leave chat
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-12-04 10:17:50 +01:00
Andrey Shovkoplyas 22167db7a2
desktop popup
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-12-03 14:54:42 +01:00
Andrey Shovkoplyas 582c2960ec
[#6644] Chat command recipients should be able to install an extension
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-11-29 16:43:15 +01:00
lokalise-bot f283efaebb
Lokalise: update translations.
Signed-off-by: Igor Mandrigin <i@mandrigin.ru>
2018-11-28 18:41:37 +01:00
Roman Volosovskyi c506521778
[slow sign in] Better handling of migration failures and db encryption problems.
Migration failures are handled separately from other errors which might appear
during opening account's realm DB. In case if user chooses to erase
the account's database, only this database will be removed and other accounts
will not be touched.
2018-11-28 14:13:30 +02:00
Bruce Hauman 880d1da3d1
[#6815] restyle sent-transaction screen
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-23 08:33:54 +01:00
Bruce Hauman f7c9f8631d
[#6786] restyle main wallet screen
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-11-22 18:26:46 +01:00
Bruce Hauman d5dde69af9
[#6718] restyle wallet onboarding flow
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-20 17:21:26 +01:00
Goran Jovic 72e7ae2fff
feature #6509 - validating token config against their contracts; moved token info from compile time list to app-db; fixed any discrepancies in existing info
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-20 17:18:08 +01:00
Andrea Maria Piana 1104becfba
Enable syncing of contacts & style pairing section
Everytime a contact request is sent/confirmed a sync message is also
sent to other devices so the contact is kept in sync.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-14 13:21:14 +01:00
Aleksandr Pantiukhov 17f74ff2f6
[#6455]: Updated extension management
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-11-12 10:28:48 +01:00
Andrey Shovkoplyas 88b43e7dc2
introduced browser privacy mode
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-11-09 13:22:42 +01:00
Dmitry Novotochinov ae3029c2d9
[#6294] add desktop alpha release warning
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-11-07 22:10:39 +03:00
yenda a3b2bc1b87
[fix #3913] do not logout when changing mailserver
- do not logout and remove previous mailserver
from peers when changing mailserver
- rename wnode mailserver
- move transport.inbox to mailserver.core
- fix all subs and db keys

Signed-off-by: yenda <eric@status.im>
2018-11-07 17:10:18 +01:00
Andrea Maria Piana 693eae9cf9
Send your own messages
Adds a `chat-id` field in `content` map.

The reason it has been added to the map instead of augmenting transit is
that it would simplify the calculation of `message-id`, which in this
case is consistent for both old & new clients.

`chat-id` also represents the `chat-id` with respect of the sender, as
in 1-to-1 chats that is asymmetric.

Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-06 21:19:50 +01:00
Andrea Maria Piana 7aa597517e
Add system messages to group chats
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-11-05 14:54:43 +01:00
Bruno Škvorc 0d35ff0e94
Typo in "new message" notification fixed
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-11-01 13:54:56 +01:00
Andrea Maria Piana 073dddcee0
Add pairing
Signed-off-by: Andrea Maria Piana <andrea.maria.piana@gmail.com>
2018-10-27 20:43:53 +02:00
Goran Jovic 3da2cd9b9e
feature #6250 - added xdai and poa sidechains
Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-10-24 10:00:04 +02:00
Aleksandr Pantiukhov 2c65077270
[#6382]: Makes extensions dev-mode aware
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-10-19 16:37:46 +02:00
Julien Eluard c857eb5357
Added disclaimer for extensions
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-10-19 16:35:12 +02:00
Aleksandr Pantiukhov d7b4e04efd
[#6402]: "div() not a number: null" error after connecting to Ropsten and opening Wallet
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-10-19 14:00:29 +02:00
Andrea Maria Piana 9629983f7f
Remove instabug 2018-10-19 09:18:22 +03:00
yenda 720a65e3ab
[fix 6009] do not allow public chat named with valid contact key
Signed-off-by: yenda <eric@status.im>
2018-10-18 22:24:24 +02:00
Roman Volosovskyi c338896018
[#6330] remove testfairy 2018-10-16 20:46:43 +03:00
Andrey Shovkoplyas 31fdb39683
[#6149] Add support for KudosTokens
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-10-16 13:32:11 +02:00
lokalise-bot e5d3f3a827
Lokalise: update of es, fa, ko, ms, ne, pl, ru, zh_Hans_CN translations.
Enable Farsi.
2018-10-15 19:06:31 +03:00
yenda 660bd2d1bd
request 7 days of history
- fetch 7 days of history when joining a chat
- make 7 24h requests to request 7 days because mailservers
ignores requests for a timespan > 24h
- make requests sequentially to avoid timeouts
- change mailserver after 3 timeouts on a request

Signed-off-by: yenda <eric@status.im>
2018-10-15 17:18:59 +02:00
Julien Eluard 5eeda7aa0b
Fixes #6275
Signed-off-by: Julien Eluard <julien.eluard@gmail.com>
2018-10-15 15:34:47 +02:00
Aleksandr Pantiukhov 1b6fa1d980
[#5979]: Add ENS names to profile screen
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-11 08:53:08 +02:00
Vitaliy Vlasov f4eff839ce
Add not-sent-without-tap translation
Set link to rn-desktop repo fork

Signed-off-by: Goran Jovic <goranjovic@gmail.com>
2018-10-04 15:27:06 +02:00
Dmitry Novotochinov 7a06a415c2
[#5964] hardwallet screens flow 2
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-10-02 21:15:28 +03:00
Aleksandr Pantiukhov 523fa4ee09
[#5529]: Add UI for sharing deep links; update QR code screens
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-10-02 18:39:15 +03:00
lokalise-bot 12858a3d79
add malaysian translation 2018-09-28 20:00:52 +03:00
janherich 44fbe62773
Chat replies + refactoring 2018-09-28 16:15:47 +02:00
Vitaliy Vlasov 7e62ebe96b
Fix chat/topic validation
Remove empty line

Fix formatting

Add custom use-valid-contact-code text for desktop

Add red border when validation failed

Add border-width

Signed-off-by: Vitaliy Vlasov <siphiuel@gmail.com>
2018-09-27 18:50:29 +03:00
Andrey Shovkoplyas 764bbf1e2c
moved wallet under options
Signed-off-by: yenda <eric@status.im>
2018-09-25 15:51:29 +02:00
Roman Volosovskyi 261089f568
remove :t/request-requesting-from; fix :t/send-sending-to
Signed-off-by: yenda <eric@status.im>
2018-09-25 15:46:25 +02:00
Roman Volosovskyi 0d2d9dc352
remove :t/confirmation-code 2018-09-25 15:45:50 +02:00
Roman Volosovskyi 87b9ff6c88
:command-requesting 2018-09-25 15:45:50 +02:00
Roman Volosovskyi 9791c183a8
fix :command-sending label 2018-09-25 15:45:42 +02:00
Dmitry Novotochinov 41347ae5e0
[#5898] add HW setup screens
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-24 16:43:01 +03:00
lokalise-bot 089027c3bf
Lokalise: update of translations/pl.json
Signed-off-by: yenda <eric@status.im>
2018-09-21 13:36:05 +02:00
lokalise-bot f1dd24e3b4
Lokalise: update of translations/ko.json
Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-09-21 07:03:27 -04:00
lokalise-bot 2b61c8e270
Lokalise: update of translations/zh_Hans_CN.json
enable chinese translation by locale
2018-09-20 17:04:33 +03:00
lokalise-bot 3ae8e58bc4
Lokalise: update of translations/es_419.json 2018-09-20 16:56:02 +03:00
Dmitry Novotochinov 6f3b0698e7
[#5392] disable "sign transaction" button when offline
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-20 15:56:56 +03:00
lokalise-bot 0658cdbdfa
Lokalise: update of polish translations
enable polish translation

Signed-off-by: Jakub Sokołowski <jakub@status.im>
2018-09-20 07:03:24 -04:00
Dmitry Novotochinov 60cb0eb36c
[#5825] add hardwallet auth method and connect screens
* add react-native-nfc-manager to detect NFC support
* add "Choose auth method" screen https://www.figma.com/file/UfQjpWl1hmRchHIyY3Wvu2nW/Hardwallet-light-flows?node-id=259%3A29
* add "Hardwallet connect" screen https://www.figma.com/file/UfQjpWl1hmRchHIyY3Wvu2nW/Hardwallet-light-flows?node-id=258%3A594

Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-20 12:30:47 +03:00
Aleksandr Pantiukhov eda73bf8ef
[#5583]: Stronger security checks in browser; Metamask phishing detector
Signed-off-by: Aleksandr Pantiukhov <alwxndr@gmail.com>
2018-09-18 17:54:42 +02:00
Andrey Shovkoplyas 5d912caf4a
allow numbers in chat topics
Signed-off-by: yenda <eric@status.im>
2018-09-18 17:39:31 +02:00
lokalise-bot 7c7717d101
Lokalise: update of translations/en.json
[#5829] chat commands translations
2018-09-17 12:34:29 +03:00
lokalise-bot eaaf5f0bff
Lokalise: update of translations/en.json
[#5829] default dapps translations
2018-09-17 09:26:01 +03:00
Chad 40c23cc166
fix zero plural localisation issue
fix zero case for :t/members-active key
2018-09-17 09:02:58 +03:00
Dmitry Novotochinov 76036c88cc
[#5745] validate accout recover result
Signed-off-by: Dmitry Novotochinov <dmitry.novot@gmail.com>
2018-09-14 17:03:00 +03:00
Andrey Shovkoplyas a20facd895
web3 opt-in updates
Signed-off-by: Andrey Shovkoplyas <motor4ik@gmail.com>
2018-09-13 18:27:43 +03:00
Chad 30b4234f7b
Add latin american spanish translation
Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
2018-09-13 14:20:21 +02:00
Roman Volosovskyi bd3f9570b3
[#5649] Change react-native-i18n language files to js (Lokalise)
move translations to JSON
read translations from JSON
remove old clojurescript translations files
reload clojurescript on changes in translations folder
2018-09-10 16:14:12 +03:00