Skip to content

Commit

Permalink
Merge pull request #148 from u9520107/rcint-3787
Browse files Browse the repository at this point in the history
Update WelcomePage and CallItem to disable links when disconnected
  • Loading branch information
u9520107 authored Mar 30, 2017
2 parents 2c562d2 + ed15a15 commit 6d078a1
Show file tree
Hide file tree
Showing 4 changed files with 34 additions and 9 deletions.
18 changes: 17 additions & 1 deletion dev-server/Phone.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,9 @@ import DetailedPresence from 'ringcentral-integration/modules/DetailedPresence';
import CallLog from 'ringcentral-integration/modules/CallLog';
import CallMonitor from 'ringcentral-integration/modules/CallMonitor';
import CallHistory from 'ringcentral-integration/modules/CallHistory';

import ContactMatcher from 'ringcentral-integration/modules/ContactMatcher';
import ActivityMatcher from 'ringcentral-integration/modules/ActivityMatcher';
import CallLogger from 'ringcentral-integration/modules/CallLogger';

import RouterInteraction from '../src/modules/RouterInteraction';

Expand Down Expand Up @@ -373,6 +374,19 @@ export default class Phone extends RcModule {
storage: this.storage,
getState: () => this.state.contactMatcher,
}));
this.addModule('activityMatcher', new ActivityMatcher({
...options,
storage: this.storage,
getState: () => this.state.activityMatcher,
}));
this.addModule('callLogger', new CallLogger({
...options,
storage: this.storage,
callMonitor: this.callMonitor,
contactMatcher: this.contactMatcher,
activityMatcher: this.activityMatcher,
getState: () => this.state.callLogger,
}));
this._reducer = combineReducers({
accountExtension: this.accountExtension.reducer,
accountInfo: this.accountInfo.reducer,
Expand Down Expand Up @@ -416,6 +430,8 @@ export default class Phone extends RcModule {
callMonitor: this.callMonitor.reducer,
callHistory: this.callHistory.reducer,
contactMatcher: this.contactMatcher.reducer,
activityMatcher: this.activityMatcher.reducer,
callLogger: this.callLogger.reducer,
lastAction: (state = null, action) => {
console.log(action);
return action;
Expand Down
5 changes: 4 additions & 1 deletion dev-server/containers/App/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,7 @@ export default function App({
regionSettings={phone.regionSettings}
connectivityMonitor={phone.connectivityMonitor}
dateTimeFormat={phone.dateTimeFormat}
callLogger={phone.callLogger}
/>
)} />
<Route
Expand All @@ -153,6 +154,7 @@ export default function App({
regionSettings={phone.regionSettings}
connectivityMonitor={phone.connectivityMonitor}
dateTimeFormat={phone.dateTimeFormat}
callLogger={phone.callLogger}
/>
)} />
<Route
Expand Down Expand Up @@ -226,7 +228,8 @@ export default function App({
<WelcomePage
auth={phone.auth}
locale={phone.locale}
rateLimiter={phone.rateLimiter} >
rateLimiter={phone.rateLimiter}
connectivityMonitor={phone.connectivityMonitor} >
<AlertContainer
locale={phone.locale}
alert={phone.alert}
Expand Down
11 changes: 5 additions & 6 deletions src/components/CallItem/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -163,10 +163,9 @@ ContactLink.defaultProps = {
function LogLink({
onLogCall,
isLogged,
disableLinks,
disabled,
isLogging,
}) {
const disabled = disableLinks || isLogging;
const spinner = isLogging ?
(
<div className={styles.spinnerContainer}>
Expand All @@ -178,10 +177,10 @@ function LogLink({
<a
className={classnames(
styles.logLink,
disabled && styles.disabled,
(disabled || isLogging) && styles.disabled,
)}
onClick={!disabled && onLogCall}
disabled={disabled}>
onClick={!(disabled || isLogging) && onLogCall}
disabled={(disabled || isLogging)}>
<span
className={isLogged ?
dynamicsFont.edit :
Expand All @@ -194,7 +193,7 @@ function LogLink({
LogLink.propTypes = {
onLogCall: PropTypes.func,
isLogged: PropTypes.bool.isRequired,
disableLinks: PropTypes.bool,
disabled: PropTypes.bool,
isLogging: PropTypes.bool.isRequired,
};

Expand Down
9 changes: 8 additions & 1 deletion src/containers/WelcomePage/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { connect } from 'react-redux';
import Auth from 'ringcentral-integration/modules/Auth';
import Locale from 'ringcentral-integration/modules/Locale';
import RateLimiter from 'ringcentral-integration/modules/RateLimiter';
import ConnectivityMonitor from 'ringcentral-integration/modules/ConnectivityMonitor';
import LoginPanel from '../../components/LoginPanel';

import styles from './styles.scss';
Expand Down Expand Up @@ -40,10 +41,15 @@ function mapToProps(_, {
auth,
locale,
rateLimiter,
connectivityMonitor,
}) {
return {
currentLocale: locale.currentLocale,
disabled: !auth.proxyLoaded || rateLimiter.throttling,
disabled: (
!auth.proxyLoaded ||
rateLimiter.throttling ||
!connectivityMonitor.connectivity
),
};
}

Expand Down Expand Up @@ -73,6 +79,7 @@ const propTypes = {
auth: PropTypes.instanceOf(Auth).isRequired,
locale: PropTypes.instanceOf(Locale).isRequired,
rateLimiter: PropTypes.instanceOf(RateLimiter).isRequired,
connectivityMonitor: PropTypes.instanceOf(ConnectivityMonitor).isRequired,
mainUrl: PropTypes.string,
onLogin: PropTypes.func,
};
Expand Down

0 comments on commit 6d078a1

Please sign in to comment.