No description
Find a file
Chetanya Kandhari 68eff30eda [#MM-12410] Custom Terms of Service (#2234)
* [#MM-12410] Custom Terms of Service Modal.

- Create a new screen for terms of service
- Register it in app navigation
- Open it as a modal when login succeeds or app is opened when already logged in.
- Get terms of service and render it as markdown

* Refactor service terms to terms of service

* Show terms modal when launching channel instead of componentDidMount

* Remove footer text

* Close modal before logging out

* Use dismissAllModals instead od this.close

* Update header styles

* Update the back icon

* Add left icon conditinally based on os

* Update en.json

* - Integrate Accept/Reject API
- Refactor show navigator to util
- Remove title
- Code refactoring

* Handle Accept/Reject API errors

* Update package-lock

* - Show Alert to handle API error
- Handle API error for GetTerms error, Accept/Reject error and Reject success
- Changes in en.json
- Remove error banner
- Open terms modal in sso and experimental certificate

* Enable navigator buttons after getting terms

* Rename Ok to OK in Alert

* Add retry for API error

* Fix check-style

* Fix FailedNetworkAction Error Message

* - Use Close button instead of back button
- Update en.json

* Remove unused import

* Disable hashtags and atmentions in terms modal

* Enable close button when terms text fails to load

* Minor changes

* Fix show terms on sso login

* Handle restartApp event

* Add test cases

* Revert change to app/components/formatted_markdown_text.js

* Show the terms modal on the channel page

* Remove remaining references to showTermsOfService

* Disable Hashtags, AtMentions and ChannelLinks

* Update the props to markdown component

* Pass the text as literal to renderText

* Return the generated renderTexts

* Fix lint

* Render ~, #, @ with Channel link, Hashtags and At Mentions

* Fix failing tests
Revert unwanted changes

* Hide the channel page content before the terms are accepted

* Fix lint and failing tests

* Revert changes to hide channel while terms are not accepted

* Open modal in componentDidMount instead of constructor
Code refactoring
Disable back button on android

* Remove unused import

* No need to await for showModal

* No need to await for accept and reject

* Update flag for updateTermsOfServiceStatus to updateMyTermsOfServiceStatus
- as phase 2 redux PR was mered.

* Fix check-style

* Change opacity in terms of service text

- Fix tests

* Revert package-lock.json changes
2018-11-14 11:36:45 -03:00
android Bump app build number to 157 (#2338) 2018-11-13 20:00:43 -03:00
app [#MM-12410] Custom Terms of Service (#2234) 2018-11-14 11:36:45 -03:00
assets [#MM-12410] Custom Terms of Service (#2234) 2018-11-14 11:36:45 -03:00
builds/nightlybeta jenkinsfile for weekly beta build (#1649) 2018-05-01 10:29:49 -03:00
docs Allow profile button configuration (#947) 2017-10-27 14:15:14 -04:00
fastlane Fix Build on Jenkins (#2326) 2018-11-06 21:10:18 -03:00
ios Bump app build number to 157 (#2338) 2018-11-13 20:00:43 -03:00
native_modules Fix Option to capture and share video (#2225) 2018-10-05 17:46:47 -03:00
packager Add README.md to packager directory (#2206) 2018-10-03 08:25:47 -04:00
scripts add eslint-plugin-header, and --fix all (#1726) 2018-06-19 19:14:50 -04:00
share_extension Reorganize sidebar channel items via pref (#1928) 2018-11-09 13:06:21 -03:00
test Slide up panel for reaction list (#2285) 2018-11-02 13:21:43 -03:00
.buckconfig Initial commit 2016-10-04 14:10:44 -04:00
.editorconfig MM-11157 Switch ESLint to use eslint-config-mattermost (#2247) 2018-10-11 13:35:25 -04:00
.eslintrc.json MM-11157 Switch ESLint to use eslint-config-mattermost (#2247) 2018-10-11 13:35:25 -04:00
.flowconfig Update RN to version 0.57.0 (#2131) 2018-09-20 19:05:41 -03:00
.gitattributes Fastlane for Android and ios (#165) 2017-01-19 09:35:40 -05:00
.gitignore Update RN to version 0.57.0 (#2131) 2018-09-20 19:05:41 -03:00
.npmrc Add functionality for fetching + selecting teams & channels (#17) 2016-10-17 15:47:47 -04:00
.watchmanconfig Initial commit 2016-10-04 14:10:44 -04:00
app.json Upgrade RN (#1102) 2017-11-07 13:34:39 -03:00
babel.config.js Update RN to version 0.57.0 (#2131) 2018-09-20 19:05:41 -03:00
CHANGELOG.md Update CHANGELOG.md (#2279) 2018-10-19 08:59:49 -03:00
CONTRIBUTING.md Add link to developer docs in contributing.md (#2000) 2018-08-20 20:29:19 -03:00
index.js MM-11477 Attempt to capture uncaught redux errors as Sentry breadcrumbs (#1974) 2018-08-07 10:32:04 -04:00
ISSUE_TEMPLATE.md Update PR template and Issue template (#335) 2017-03-08 13:46:31 -03:00
Jenkinsfile simple jenkinsfile for testing (#1311) 2017-12-26 15:41:41 -05:00
jsconfig.json Add recently used section (#1136) 2017-11-21 10:20:09 -05:00
LICENSE.txt Revert "Fix "{yyyy} {name of copyright owner}" in LICENSE.txt" (#2173) 2018-09-26 11:26:52 -03:00
Makefile Fix 'pre-buid' typo in build-android target (#2281) 2018-10-19 09:00:15 -03:00
NOTICE.txt Update NOTICE.txt (#2300) 2018-11-01 18:35:56 -03:00
package-lock.json Reorganize sidebar channel items via pref (#1928) 2018-11-09 13:06:21 -03:00
package.json Reorganize sidebar channel items via pref (#1928) 2018-11-09 13:06:21 -03:00
packager-config.js Update RN to version 0.57.0 (#2131) 2018-09-20 19:05:41 -03:00
PULL_REQUEST_TEMPLATE.md PLT-5857 replace the service folder with mattermost-redux library (#348) 2017-03-14 10:52:24 -03:00
README.md Update README (#2235) 2018-10-09 12:25:56 -03:00
share.ios.js add eslint-plugin-header, and --fix all (#1726) 2018-06-19 19:14:50 -04:00

Mattermost Mobile

  • Supported Server versions: 4.10+
  • Supported iOS versions: 10.3+
  • Supported Android versions: 7.0+

Mattermost is an open source Slack-alternative used by thousands of companies around the world in 14 languages. Learn more at https://about.mattermost.com.

You can download our apps from the App Store or Google Play Store, or build them yourself.

We plan on releasing monthly updates with new features - check the changelog for what features are currently supported!

Important: If you self-compile the Mattermost Mobile apps you also need to deploy your own Mattermost Push Notification Service.

How to Contribute

Testing

To help with testing app updates before they're released, you can:

  1. Sign up to be a beta tester
  1. Install the Mattermost Beta app. New updates in the Beta app are released periodically. You will receive a notification when the new updates are available.
  2. File any bugs you find by filing a GitHub issue with:
  • Device information
  • Repro steps
  • Observed behavior (including screenshot / video when possible)
  • Expected behavior
  1. (Optional) Sign up for our team site

Contribute Code

  1. Look in GitHub issues for issues marked as [Help Wanted]
  2. Comment to let people know youre working on it
  3. Follow these instructions to set up your developer environment
  4. Join the Native Mobile Apps channel on our team site to ask questions

Frequently Asked Questions

How is data handled on mobile devices after a user account is deactivated?

App data is wiped from the device when a user logs out of the app. If the user is logged in when the account is deactivated, then within one minute the system logs the user out, and as a result all app data is wiped from the device.

Can I connect to multiple Mattermost servers using the mobile apps?

At the moment, we only support connecting to one server at a time. If you need to connect to multiple servers, please upvote the feature request so we can track demand for it.

As a work around, you can install both the released "Mattermost" app and sign up to be a tester for the "Mattermost Beta" app so you can connect to two servers at once.

Will there be second generation apps available for tablets?

We plan to add support for tablets in the future, but the timeline depends on how many people have a need for it. If you're looking for a tablet version, please help us out by upvoting the feature request!

Troubleshooting

I keep getting a message "Cannot connect to the server. Please check your server URL and internet connection."

This sometimes appears when there is an issue with the SSL certitificate configuration.

To check that your SSL certificate is set up correctly, test the SSL certificate by visiting a site such as https://www.ssllabs.com/ssltest/index.html. If theres an error about the missing chain or certificate path, there is likely an intermediate certificate missing that needs to be included.

Please note that the apps cannot connect to servers with self-signed certificates, consider using Let's Encrypt instead.

I see a “Connecting…” bar that does not go away

If your app is working properly, you should see a grey “Connecting…” bar that clears or says “Connected” after the app reconnects.

If you are seeing this message all the time, and your internet connection seems fine:

Ask your server administrator if the server uses NGINX or another webserver as a reverse proxy. If so, they should check that it is configured correctly for supporting the websocket connection for APIv4 endpoints.