Commit Graph

82 Commits

Author SHA1 Message Date
Reinaldo Neto 4c8caf0bfd
feat: mobile troubleshoot notifications (#5330)
* feat: troubleshoot notification (#5198)

* navigation done

* create the icon inside roomslistview, navigation to push troubleshot and layout push troubleshoot

* custom header

* fix the rooms list view header icon

* layout done

* update the pt-br i18n

* tweak on colors

* feat: create notification in room view (#5250)

* button and simple navigation done, missing master detail

* navigation

* add withTheme and colors to rightuttons

* fix e2e test

* feat: add troubleshooting to notifications pages (#5276)

* feat: add troubleshooting to notifications pages

* fix e2e test

* feat: device notification settings (#5277)

* iOS go to device notification setting to change the configuration

* go to notification settings with android

* add notifee

* add the reducer and action

* saga request done

* add the setInAlert action

* tweak at name and add focus to dispatch the request

* use the foreground inside pushTroubleShoot to request the notification and fix the icon color

* add the request at roomslistview didmount

* remove the notification modulo from android

* add patch

* minor tweak

* feat: test push notification (#5329)

* feat: test push notification

* restApi and definition

* push.info and change properly the troubleshootingNotification

* use the finally at try/catch

* minor tweak

* alert and push.info just for 6.6

* fix the react-native.config

* minor tweaks

* minor tweak

* push.test as rest api

* change the name from inAlertNotification to highlightTroubleshooting

* feat: push quota

* refactor the percentage state

* removed the push quota feature

* minor tweaks

* update the link to push notification

* the notification icon in the room header will appear if notifications are disabled or highlight troubleshoot is true

* remove push quota texts

* updated some of the push quota texts

* chore: rename highlightTroubleshooting

* chore: better prop naming

* wip

* chore: fix function name

* chore: fix colors

* fix: copy

* chore: 💅

* chore: use fork

* chore: naming

* chore: fix init

* chore: naming

* chore: naming

* Comment CE code

* Use put on troubleshooting saga

* Add db column

* fix: check notification payload

* action: organized translations

* fix: push init

---------

Co-authored-by: GleidsonDaniel <gleidson10daniel@hotmail.com>
Co-authored-by: Diego Mello <diegolmello@gmail.com>
Co-authored-by: GleidsonDaniel <GleidsonDaniel@users.noreply.github.com>
2024-03-04 08:27:24 -03:00
Diego Mello 6122c71d97
fix: room actions header not using i18n on tablets (#5510) 2024-01-25 11:11:41 -03:00
Reinaldo Neto 4ca9042da0
feat: report user (#5371)
* feat: report user

* navigation from room info view to report user view

* minor tweak rid type

* showing the avatar and change the backghround color

* finished the ui and action to report a user

* minor tweak

* update storyshot

* add e2e test

* not show the report and block to my self and fix the text alignment

* minor tweak of container safeareaview

* remove label style and keep the default

* update test

* e2e test for 6.5 servers

* remove of block_user and unbblock_user

* remove danger from block and ignore

* remove of rid from params, change UserAvatarAndName to UserInfo

* fix e2e test

* fix the dinamic height with controlled text input

* indent basebutton

* fix button styles

---------

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2024-01-03 18:14:31 -03:00
Diego Mello 18b77ab4d6
feat: Supported Versions (#5185) 2023-10-19 10:38:57 -03:00
Gleidson Daniel Silva 7a7193d1ab
chore: migrate RoomInfoView to hooks (#5074)
* create RoomInfoViewTitle

* create RoomInfoViewBody

* create RoomInfoViewAvatar

* remove some functions

* merge styles

* fix types

* remove UserInfoButton

* fix room

* fix type import

* working

* fix navigation type

* wip

* remove console

* types

* fix import

* fix types

* fix types

* wip

* add asPlain

* some tweaks

* wip

* some fixes

* wip

* fix block user

* finish migration

* some fixes

* fix rule

* add rid to avatar

* fix settings and room transition

* add disabled rule

* fix test ???
2023-09-26 11:33:53 -03:00
Diego Mello 7278b36763
fix: Remove react-native-keycommands (#5220) 2023-09-21 16:05:36 -03:00
Diego Mello 529891fcc0
regression: Rollback to React Native 0.69.8 (#5162) 2023-08-18 14:48:33 -03:00
Reinaldo Neto c9f4ca1197
feat: add media auto-download (#5076)
* feat: media auto-download view

* media auto download view completed and saving the settings in mmkv

* audio download preference

* audio auto download when the user who sent the audio is the same logged on mobile

* creation of isAutoDownloadEnabled, evaluate hist hook, Image Full Size preload done

* minor tweak audio show play button after download

* refactor audioFile to handleMediaDownload and fixed the audio download

* desestructured params to download too

* image download and autoDownload, algo fix the formatAttachmentUrl to show the image from local

* add the possibility to cancel image download and clear local images

* refactor blur component

* video download and auto download, also keeped the behavior to download unsuportted videos to the gallery

* add the possibility to start downloading a video, then exit the room, back again to room and cancel the video previously downloading

* remove the custom hook for autoDownload

* remove blurcomponent, fix the blur style in image.tsx, minor tweak video function name

* send messageId to video

* introducing the reducer to keep the downloads in progress

* create a media download selector

* remove all the redux stuff and do the same as file upload

* video download behavior

* done for image and audio

* fix the try catch download media

* clean up

* image container uiKit

* fix lint

* change rn-fetch-blob to expo-filesystem

* add pt-br

* pass the correct message id when there is an attachment on reply

* refactor some changes requested

* fix audio and move the netInfo from autoDownloadPreference to redux

* variable isAutoDownloadEnable name and handleMediaDownload getExtension

* message/Image refactored, change the component to show the image from FastImage to Image

* refactor handleMediaDownload and deleteMedia

* minor tweak

* refactor audio

* refactor video

* fix the type on the messagesView(the view of files)

* minor tweak

* fix the name of searchMediaFIleAsync's result

* minor tweak, add the default behavior, add the OFF as label

* minor tweaks

* verify if the media auto download exists on settings view

* fix media auto download view layout and minor tweak wifi

* avoid auto download from reply

* minor tweak at comment

* tweak list.section

* change the name to netInfoState and Local_document_directory

* remove mediaType and refactor audio and image

* separate blurview

* thumbnail video and video behavior

* add Audio to i18n and minor tweak

* set the blur as always dark and add the possibility to overlay

* don't need to controle the filepath in the view

* fix the loading in image and video at begin

* save the file with a similar filename as expected

* removed the necessity of messageId or id

* minor tweak

* switch useLayoutEffect to useEffect

* avoid onpress do some edge case because of cached at video

* minor tweak

* tweak at audio comment extension

* minor tweak type userpreferences

* remove test id from mediaAutoDownloadView

* change action's name to SET_NET_INFO_STATE

* caching and deleting video's thumbnails

* remove generate thumbnail

* minor tweak in image

* update camera-roll and save the file from local url

* remove local_cache_directory and deleteThumbnail

* update blur to fix error on android

* fix blur is hiding the file description

* avoid download unsupported video

* return void when it is loading the audio
2023-08-07 11:02:30 -03:00
Reinaldo Neto 278ed91f9a
feat: forward message (#5110)
* feat: share message

* index, selectPersonOrChannel, types

* share a message using the chat.postMessage and refactor the interfaces

* minor tweak

* removed rid in from select person or channel

* change title

* add pt-br translation

* compareServerVersion GTE 6.2.0

* test for sharemessage

* view to masterDetail

* fix podfile

* change from forward message to share message

* change from share to forward

* refactor the forward message view, tweak on some styles and add the cleanUpMessage

* minor tweak

* refactor to add MessagePreview and use the same message/index

* fix e2e test

* add the capability to filter the subscsription if the room is read only or not

* minor tweak

* fix disable the send button and add message has been shared

* add try catch and toast or alert

* fix interface
2023-08-04 11:09:36 -03:00
Reinaldo Neto a44951296d
chore: migrate AddExistingTeamView to hooks (#5042)
* chore: migrate AddExistingTeamView to hooks

* fix masterdetailstack lint

* fix inside stack

* minor tweak

* tweak empty space
2023-07-06 14:40:46 -03:00
Reinaldo Neto 0dbaff4f63
chore: migrate E2EEncryptionSecurityView to hooks (#5085)
* chore: migrate E2EEncryptionSecurityView to hooks

* minor tweak
2023-07-05 16:33:47 -03:00
Gleidson Daniel Silva fea4f164d5
chore: migrate PickerView to hooks (#5002)
* migrate ForwardLivechatView to hooks and fix some types

* fix types

* fix types

* remove useless memo

* change to useDebounce

* fix types
2023-06-30 11:01:01 -03:00
Gleidson Daniel Silva d30d4645a5
chore: migrate AutoTranslateView to hooks (#4677)
Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>
2023-06-29 19:01:34 -03:00
Gleidson Daniel Silva 47fbde566d
chore: migrate AttachmentView to hooks (#5003)
* migrate AttachmentView to hooks

* fix types

* fix types

* fix lint
2023-06-29 18:10:49 -03:00
Diego Mello 0079229a34
chore: Upgrade React Native to 0.71.7 (#4984) 2023-05-18 18:09:33 -03:00
Reinaldo Neto fd210c4713
feat: Change Avatar View (#4746)
* [NEW] Change Avatar View

* change avatar view and avatar suggestion

* avatar Url

* change avatar for profile it's done, missing fix revalidate the avatar in profile and drawer

* pick image

* clean profile view

* Finished the profile and fixed the avatar when change the user profile

* fix the profile update through all the app

* refactor avatar suggestion

* fix the delete from rooms and finished RoomInfoView, missing RoomInfoEditView

* room info edit view

* ipad navigation

* refactor the submit function

* refactor the e2e test

* minor tweak with themes and buttons

* minor tweak in edit button

* minor tweaks

* tweak IAvatarContainer

* fixing pt-br

* removed the avatarETagUser and search by username and text

* created the useHooke useAvatarETag

* fix lint

* refactor image.ts and test

* refactor avatar component

* fix the edit button

* refactor useAvatarETag

* fix the pt-br translation

* minor tweak tests

* back handleError to views and refactor the submit

* avatar suggestion item

* types for change avatar view context

* fix avatar on header for tablets

* minor tweak changeavatarview

* refactor avatar url to use hook form

* tweak on yup validation

* minor tweak with handle error

* minor tweak

* minor tweak

* interface avatar container

* minor tweak

* Refactor all the changeAvatarView and fix how to test the image url

* fixed the layout

* minor refactor

* minor tweaks

* fix the visual bug when the user change the avatar to new then clear cache

* fix the flicker when upload an image

* update package.json

* test the reset, discard alert, cancel and discard

* separate the avatar test from profile and create new tests for change avatar

* mock imagepicker

* minor tweak, adding console and add echo to config.yml

* use RUNNING_E2E_TESTS as env to other files

* exprt env at android build

* change the to way to set the running e2e test env

* update test

* delete the .env and update the e2e/readme and the file review

* minor tweak

* minor tweak

* update the test, fixing how to dismiss the keyboard

---------

Co-authored-by: Gleidson Daniel Silva <gleidson10daniel@hotmail.com>
2023-04-10 11:59:00 -03:00
Reinaldo Neto 68f6eb40de
Chore: Hooks app/views/InviteUsersEditView (#4670)
* Chore: Hooks app/views/InviteUsersEditView

* minor tweak

* switch value name
2023-02-02 18:41:32 -03:00
Gleidson Daniel Silva a8b3a3b7de
[IMPROVE] Disable Jitsi native module on Android (#4708)
* temp: disable jitsi on android

* update props and subscription

* add open intent

* add request permissions

* disable react-native-jitsi-meet on android and separate implementations

* fix ios

* fix import alias

* revert android manifest indentation

* add catch to method

* return comment

* remove is iOS

* fix queries

* remove unused data

* webview audio

* fix android permissions

* fix audio android

* change how to open jitsi app

* remove loading

* update close logic
2022-12-01 14:20:22 -03:00
Gleidson Daniel Silva fe04faac64
Chore: Migrate SettingsView to hooks (#4542)
* migrate settings view to hooks

* temp - add non-null assertion

* fix options

* Update app/views/SettingsView/index.tsx

Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>

* Update app/views/SettingsView/index.tsx

Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>

* fix options

Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>
2022-09-30 11:50:33 -03:00
Reinaldo Neto 9d69c10bbd
Chore: Hooks app/views/LanguageView (#4537)
* Chore: Hooks app/views/LanguageView

* minor tweak app selector
2022-09-22 18:40:32 -03:00
Reinaldo Neto b3a286329c
Chore: Hooks app/views/UserNotificationPreferenceView (#4502)
* Chore: Hooks app/views/UserNotificationPreferenceView

* added trycatch and userId

Co-authored-by: Gleidson Daniel Silva <gleidson10daniel@hotmail.com>
2022-09-22 18:31:23 -03:00
Reinaldo Neto 9cbffff248
[IMPROVE] Redesign create room flow (#4381)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2022-08-26 16:16:45 -03:00
Gleidson Daniel Silva cbc6892084
[NEW] Unify members section (#4399)
* create useUserPermissions hook

* create CheckRadioButton component

* fix return

* create MembersSection component

* apply MembersSection and header filter

* fix re-render and testID

* fix detox tests

* rename to RadioButton

* move the component closer to the screen

* remove useUserPermissions

* remove theme prop

* migrate to hooks

* fix team permissions

* remove theme prop from UserItem

* remove options prop

* fix Member

* remove commented test

* fixes

* fix for room not joined

* add room members events

* adds empty option

* add members filter and pagination

* clear RoomMembersView

* remove unused styles

* Update app/views/RoomMembersView/index.tsx

Co-authored-by: Diego Mello <diegolmello@gmail.com>

* wip

* Temp workaround for SearchBox background color

* Rename import

* Fix missing params for 5.0

* Fix e2e tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2022-08-26 10:21:25 -03:00
Reinaldo Neto ded2f3792a
Chore: Hooks app/views/DefaultBrowserView (#4424)
* Chore: Hooks app/views/DefaultBrowserView

* fix type

* minor tweak

* item on new file

* minor tweaks

* minor tweak
2022-08-19 10:46:58 -03:00
Gleidson Daniel Silva 28043a2eb5
Chore: Migrate E2ESaveYourPasswordView to hooks (#4432) 2022-08-17 10:51:40 -03:00
Reinaldo Neto 0c8177e025
[FIX] Text composer is pushing modals outside the screen on Android's tablet (#4393)
* [FIX] Text composer is pushing modals outside the screen

* added isLandscape

* refactor useKeyboard

* refactor landscape
2022-08-11 15:50:34 -03:00
Gleidson Daniel Silva 69349dee6e
Chore: Migrate E2EEnterYourPasswordView to hooks (#4423)
* migrate E2EEnterYourPasswordView to hooks

* remove navigation options

* minor tweak

Co-authored-by: Reinaldo Neto <reinaldonetof@hotmail.com>
2022-08-11 11:59:40 -03:00
Gleidson Daniel Silva 92111afa6a
Chore: Migrate E2EHowItWorksView to hooks (#4416)
* remove navigation obligatory

* remove the obliglatory to use theme with the withTheme HOC

* migrate E2EHowItWorksView to hooks

* remove navigate options

* adds non-null assertion because theme is injected
2022-08-11 11:50:03 -03:00
Gleidson Daniel Silva 2b08b683d7
Chore: Upgrade React Native to 0.68.2 (#4316)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2022-08-08 18:02:08 -03:00
Gleidson Daniel Silva 41dbbf4d4b
Chore: Migrate NotificationPreferencesView to hooks (#4327)
* add none option

* create showErrorAlertWithEMessage function

* migrate NotificationPreferencesView to hooks and improves overall

* change icon to right

* fix navigation options

* remove none

* fix types

* remove memo

* cleaning

* switching to destructuring

* add observe for hideUnreadStatus

* fix desktop options

* remove unused options

Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>
2022-08-01 13:35:05 -03:00
Reinaldo Neto fe7722ca10
[IMPROVE] Support for tag request close when is obligatory to close Omnichannel's Channel (#4353)
* [IMPROVE] Support for tag request close

* clean up

* refactor isObrigatory and value

* fix obligatory

* removed onSubmitEditing

* create closelivechatview

* Refactor Close Omnichannel from ActionSheet to a new Screen

* Fix navigation

* fix screen title

* back to before actionsheetwithinput

* added string in pt-br

* refactor canSubmit

* fix the method closeRoom

* comment of server's version

* some tweaks

* Update app/lib/services/restApi.ts

Co-authored-by: Gleidson Daniel Silva <gleidson10daniel@hotmail.com>
2022-07-15 17:06:27 -03:00
Reinaldo Neto 18c44178d7
[IMPROVE] Migrate away from react-native-prompt-android to action sheet (#4300)
* Chore: Migrate away from react-native-prompt-android to action sheet

* fix header provile view with action sheet

* finished change password

* Close livechat and removed closeRoom dispatch

* remove lib react-native-prompt-android

* fix right buttons

* fix profile view in tablets

* fix action and room action for tablets

* remove onSubmitEditing

* fix keyboard for android tablet in landscape

* create base for actionSheet containers

* migrate EnterPasswordSheet to base

* migrate to base component

* fix colors and copy

* remove secure entry

* fix onSubmit

* fix android animation

Co-authored-by: GleidsonDaniel <gleidson10daniel@hotmail.com>
2022-06-27 16:03:24 -03:00
Gleidson Daniel Silva 5f248ebeb5
[NEW] Delete my account (#4219)
* create new delete account button

Co-Authored-By: Danish Ahmed Mirza <danishmirza30602@gmail.com>

* change modal to action sheet

* better naming

* remove ? from translation

* update translations

* change to new figma layout

* fix export

* remove unused state

* add new text input to base input

* clean up

* update bottom sheet and create a mock

* remove unecessary bracket and fix type

* fix header

* migrate buttons to action sheet

* fix imports

* update yarn.lock

* add separator to styles

* add ternary verification

* minor tweaks: keyboard for landscape android tablet, interface IactionSheetProvider and remove navigation options to get ismasterdetail from redux, fix jest setup

* fix colors

* disconnect from sdk when delete the account

* update snapshot

Co-authored-by: Danish Ahmed Mirza <danishmirza30602@gmail.com>
Co-authored-by: Reinaldo Neto <reinaldonetof@hotmail.com>
2022-06-22 09:24:25 -03:00
Gerzon Z 20a03611a7
[NEW] Call to Action buttons for Omnichannel (#4060)
* add: kebab and bottom sheet for omnichannel

* update: `RoomActionsView`

* chore: add canned responses to MessageBox

* chore: add omnichannel permissions to RightButtons

chore: missing changes to previous commit on RoomView

* chore: make icon available on first re-render after joining the room

* refactor: omnichannel permissions logic outside RightButtons

* refactor: extract omnichannel permissions' logic from RoomActionsView

* fix: omnichannel permissions on RightButton component

* add: omnichannelPermissions to RoomActions route props

* update: RoomView

* remove: setOmnichannelPermissions function

* refactor: `omnichannelPermissions` to object

* refactor: extract `on-hold` Omnichannel to `RoomView`

* add: `canPlaceLivechatOnHold` to `Omnichannel`s actions

* update: type for `showActionSheet`

* update: canned responses permission on

* fix: place on-hold permission not updating properly

* update: validation for on-hold

remove: unused variable

* remove: unnecessary param

* update: MessageBox

* fix: Omnichannel permissions on taking chat

* undo: comment on Reactotron

* Fix place chat on-hold

* fix setOptions in messageBox

* resolve lint

* change return to return to waiting line

* remove joined

* fix console.log

* fix kebab button

* fix subscription to room outside of db

Co-authored-by: Reinaldo Neto <reinaldonetof@hotmail.com>
Co-authored-by: Reinaldo Neto <47038980+reinaldonetof@users.noreply.github.com>
2022-06-09 11:42:12 -03:00
Alex Junior 614d9afe65
Chore: Evaluate helpers and utils - Typescript (#4146) 2022-06-06 11:17:51 -03:00
Alex Junior 6220375f7b
Chore: upgrade react navigation to 6.0.10 version (#4120) 2022-06-01 16:46:37 -03:00
Reinaldo Neto b1ffffb04b
Chore: Migration to Hooks - QueueListView (#4171)
* Chore: Migration to Hooks - QueueListView

* minor tweaks

* minor tweaks
2022-05-23 14:33:58 -03:00
Gerzon Z 311b346347
Chore: evaluate `InviteUsersView` (#4100) 2022-05-13 10:02:01 -03:00
Gerzon Z 4d4a5cffd9
Chore: evaluate `MarkdownTableView` (#4104) 2022-05-13 09:57:19 -03:00
Reinaldo Neto 5970d29ee7
Chore: Evaluate AdminPanelView - TypeScript (#4162) 2022-05-11 13:33:27 -03:00
Gerzon Z 6623044344
Chore: Evaluate `TeamChannelsView` (#4088)
* update: `TeamChannelsView`'s interfaces

* update: `TeamChannelsView`'s route params and types

* update: `teamChannels` type

Co-authored-by: GleidsonDaniel <gleidson10daniel@hotmail.com>
2022-05-09 10:21:09 -03:00
Gerzon Z 88b4a3f672
Chore: evaluate `ThemeView` (#4086)
* chore: evaluate `ThemeView`

* update: `IThemeViewProps` to extend `IBaseScreen`

* update: `ThemeView` interface

* update: dependency array

* update: use `useLayoutEffect` instead
2022-05-05 11:24:36 -04:00
Reinaldo Neto 888bcae48e
Chore: Evaluate RoomMembersView - TypeScript (#4116)
* Chore: Evaluate RoomMembersView - TypeScript

* evaluate show action sheet

* fix tsubscriptionmodel
2022-05-02 21:48:08 -03:00
Reinaldo Neto f04b15a432
Chore: Evaluate ForwardLivechatView - TypeScript (#4126)
* Chore: Evaluate ForwardLivechatView - TypeScript

* minor tweaks
2022-05-02 09:03:55 -03:00
Gerzon Z b9651493d2
Chore: update `theme` type (#4025)
* chore: update `theme` type

* update: components

* update: storyshots

* add: `theme` type to `DirectoryItem`

* chore: update theme type on `message/index.tsx`

* update: `RoomTypeIcon`'s useTheme
2022-04-12 12:27:05 -04:00
Gleidson Daniel Silva bdf83e546e
Chore: Move constants away from rocketchat folder - Typescript (#4022)
* create keys file and export all consts

* fix import E2E_MESSAGE_TYPE

* fix constants import

* fix constants import

* fix E2E_BANNER_TYPE import

* fix E2E_ROOM_TYPES import

* fix THEME_PREFERENCES_KEY import

* fix CRASH_REPORT_KEY and ANALYTICS_EVENTS_KEY import

* fix MIN_ROCKETCHAT_VERSION import

* fix constantDisplayMode import

* fix environment imports

* fix links imports

* fix localAuthentication imports

* fix localPath imports

* fix messagesStatus imports

* fix messageTypeLoad imports

* fix defaultSettings imports

* fix tablet imports

* update with todo for colors

* move to lib folder

* change constant/colors to constant
2022-04-07 11:10:03 -03:00
Reinaldo Neto cbfa7bf43a
Chore: Migrate RoomInfoView to Typescript (#3778)
* Chore: Migrate RoomInfoView to Typescript

* tweak in avatar

* tweak with SubscriptionType

* minor tweak package

* Chore: Migrate RoomInfoView to Typescript

* tweak in avatar

* tweak with SubscriptionType

* minor tweak package

* react.reactelement | null

* minor tweak

* minor tweak livechatvisitor

* remove console.log

* Tweaks
2022-03-03 18:46:53 -03:00
Gleidson Daniel Silva 4224f4d9d0
Chore: Migrate to TS RommInfoEditView (#3766)
* initial commit

* fix last types

* fix import

* fix lint
2022-02-25 18:24:08 -03:00
Gleidson Daniel Silva 88131e3bfb
Chore: Migrate RoomMembersView to Typescript (#3769)
* chore: migrate RoomMembersView to ts

* fix goRoom item interface
2022-02-25 13:43:42 -03:00
Gerzon Z bce775d88d Fix navigation logic and update interfaces 2022-01-24 14:35:06 -04:00