Improve privacy #1074

Merged
liamcardenas merged 3 commits from improve-privacy into master 2018-03-08 06:24:30 +01:00
10 changed files with 37 additions and 21 deletions

View file

@ -64,8 +64,8 @@ app.on('ready', async () => {
dialog.showErrorBox(
'Daemon has Exited',
'The daemon may have encountered an unexpected error, or another daemon instance is already running. \n\n' +
'For more information please visit: \n' +
'https://lbry.io/faq/startup-troubleshooting'
'For more information please visit: \n' +
'https://lbry.io/faq/startup-troubleshooting'
);
app.quit();
}

View file

@ -1,5 +1,6 @@
// @flow
import mixpanel from 'mixpanel-browser';
import Lbryio from 'lbryio';
mixpanel.init('691723e855cabb9d27a7a79002216967');
@ -7,6 +8,7 @@ type Analytics = {
track: (string, ?Object) => void,
setUser: Object => void,
toggle: (boolean, ?boolean) => void,
apiLog: (string, string, string) => void,
};
let analyticsEnabled: boolean = false;
@ -37,6 +39,15 @@ const analytics: Analytics = {
}
analyticsEnabled = enabled;
},
apiLog: (uri: string, outpoint: string, claimId: string): void => {
if (analyticsEnabled) {
Lbryio.call('file', 'view', {
uri,
outpoint,
claim_id: claimId,
}).catch(() => {});
}
},
};
export default analytics;

View file

@ -15,27 +15,27 @@ class FileList extends React.PureComponent {
this._sortFunctions = {
dateNew(fileInfos) {
return fileInfos.slice().sort((fileInfo1, fileInfo2) => {
const height1 = fileInfo1.height
const height2 = fileInfo2.height
const height1 = fileInfo1.height;
const height2 = fileInfo2.height;
if (height1 > height2) {
return -1;
} else if (height1 < height2) {
return 1;
}
return 0;
});
});
},
dateOld(fileInfos) {
return fileInfos.slice().sort((fileInfo1, fileInfo2) => {
const height1 = fileInfo1.height
const height2 = fileInfo2.height
const height1 = fileInfo1.height;
const height2 = fileInfo2.height;
if (height1 < height2) {
return -1;
} else if (height1 > height2) {
return 1;
}
return 0;
});
});
},
title(fileInfos) {
return fileInfos.slice().sort((fileInfo1, fileInfo2) => {

View file

@ -15,9 +15,9 @@ const RewardSummary = (props: Props) => {
<div className="card__title-primary">
<h3>{__('Rewards')}</h3>
<p className="help">
{__('Read our')}{' '}
<Link href="https://lbry.io/faq/rewards">{__('FAQ')}</Link>{' '}{__('to learn more about LBRY Rewards')}.
</p>
{__('Read our')} <Link href="https://lbry.io/faq/rewards">{__('FAQ')}</Link>{' '}
{__('to learn more about LBRY Rewards')}.
</p>
</div>
<div className="card__content">
{unclaimedRewardAmount > 0 ? (

View file

@ -69,7 +69,7 @@ ipcRenderer.on('window-is-focused', () => {
document.addEventListener('dragover', event => {
event.preventDefault();
})
});
document.addEventListener('drop', event => {
event.preventDefault();
});

View file

@ -30,7 +30,12 @@ class ModalEmailCollection extends React.PureComponent {
<Modal type="custom" isOpen contentLabel="Email">
<section>
<h3 className="modal__header">Can We Stay In Touch?</h3>
{this.renderInner()}
<div className="card__content">{this.renderInner()}</div>
<div className="card__content">
<div className="help">
{`${__('Your email may be used to sync usage data across devices.')} `}
</div>
</div>
</section>
</Modal>
);

View file

@ -68,7 +68,7 @@ export class AuthPage extends React.PureComponent {
<div className="card__content">
<div className="help">
{`${__(
'This information is disclosed only to LBRY, Inc. and not to the LBRY network. It is only required to earn LBRY rewards.'
'This information is disclosed only to LBRY, Inc. and not to the LBRY network. It is only required to earn LBRY rewards and may be used to sync usage data across devices.'
)} `}
<Link onClick={() => navigate('/discover')} label={__('Return home')} />.
</div>

View file

@ -308,7 +308,9 @@ class SettingsPage extends React.PureComponent {
type="checkbox"
onChange={this.onShareDataChange.bind(this)}
defaultChecked={daemonSettings.share_usage_data}
label={__('Help make LBRY better by contributing diagnostic data about my usage')}
label={__(
'Help make LBRY better by contributing analytics and diagnostic data and about my usage'
)}
/>
</div>
</section>

View file

@ -21,6 +21,7 @@ import { selectBalance } from 'redux/selectors/wallet';
import batchActions from 'util/batchActions';
import setBadge from 'util/setBadge';
import setProgressBar from 'util/setProgressBar';
import analytics from 'analytics';
const DOWNLOAD_POLL_INTERVAL = 250;
@ -226,11 +227,7 @@ export function doDownloadFile(uri, streamInfo) {
return dispatch => {
dispatch(doStartDownload(uri, streamInfo.outpoint));
Lbryio.call('file', 'view', {
uri,
outpoint: streamInfo.outpoint,
claim_id: streamInfo.claim_id,
}).catch(() => {});
analytics.apiLog(uri, streamInfo.output, streamInfo.claim_id);
dispatch(doClaimEligiblePurchaseRewards());
};

View file

@ -70,7 +70,8 @@ export function doUpdateIsNight() {
const momentNow = moment();
return {
type: ACTIONS.UPDATE_IS_NIGHT,
data: { isNight: (() => {
data: {
isNight: (() => {
const startNightMoment = moment('21:00', 'HH:mm');
const endNightMoment = moment('8:00', 'HH:mm');
return !(momentNow.isAfter(endNightMoment) && momentNow.isBefore(startNightMoment));