Minor optimizations.
This commit is contained in:
@@ -1,53 +1,51 @@
|
||||
var React = require('react');
|
||||
import React from 'react';
|
||||
|
||||
class MainList extends React.Component
|
||||
{
|
||||
componentDidMount()
|
||||
{
|
||||
class MainList extends React.Component {
|
||||
componentDidMount() {
|
||||
|
||||
}
|
||||
|
||||
_openOptionsPage()
|
||||
{
|
||||
if (chrome.runtime.openOptionsPage) {
|
||||
// New way to open options pages, if supported (Chrome 42+).
|
||||
chrome.runtime.openOptionsPage();
|
||||
} else {
|
||||
// Reasonable fallback.
|
||||
window.open(chrome.runtime.getURL('options.html'));
|
||||
}
|
||||
_openOptionsPage() {
|
||||
if (chrome.runtime.openOptionsPage) {
|
||||
// New way to open options pages, if supported (Chrome 42+).
|
||||
chrome.runtime.openOptionsPage();
|
||||
} else {
|
||||
// Reasonable fallback.
|
||||
window.open(chrome.runtime.getURL('options.html'));
|
||||
}
|
||||
}
|
||||
|
||||
render()
|
||||
{
|
||||
render() {
|
||||
var loginLogoutButton = () => {
|
||||
if(this.props.loggedIn === true)
|
||||
{
|
||||
if (this.props.loggedIn === true) {
|
||||
return (
|
||||
<div>
|
||||
<a target="_blank" href="https://wakatime.com/settings/rules" className="list-group-item">
|
||||
<i className="fa fa-fw fa-filter"></i> Custom Rules
|
||||
</a>
|
||||
<a target="_blank" href="https://wakatime.com/dashboard" className="list-group-item">
|
||||
<i className="fa fa-fw fa-tachometer"></i> Dashboard
|
||||
</a>
|
||||
<a href="#" className="list-group-item" onClick={this.props.logoutUser}>
|
||||
<i className="fa fa-fw fa-sign-out"></i> Logout
|
||||
</a>
|
||||
<a target="_blank" href="https://wakatime.com/settings/rules" className="list-group-item">
|
||||
<i className="fa fa-fw fa-filter"></i>
|
||||
Custom Rules
|
||||
</a>
|
||||
<a target="_blank" href="https://wakatime.com/dashboard" className="list-group-item">
|
||||
<i className="fa fa-fw fa-tachometer"></i>
|
||||
Dashboard
|
||||
</a>
|
||||
<a href="#" className="list-group-item" onClick={this.props.logoutUser}>
|
||||
<i className="fa fa-fw fa-sign-out"></i>
|
||||
Logout
|
||||
</a>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<a target="_blank" href="https://wakatime.com/login" className="list-group-item">
|
||||
<i className="fa fa-fw fa-sign-in"></i> Login
|
||||
<i className="fa fa-fw fa-sign-in"></i>
|
||||
Login
|
||||
</a>
|
||||
);
|
||||
};
|
||||
|
||||
var signedInAs = () => {
|
||||
if(this.props.loggedIn === true)
|
||||
{
|
||||
if (this.props.loggedIn === true) {
|
||||
return (
|
||||
<div className="panel panel-default">
|
||||
<div className="panel-body">
|
||||
@@ -56,7 +54,9 @@ class MainList extends React.Component
|
||||
<img className="img-circle" width="48" height="48" src={this.props.user.photo} />
|
||||
</div>
|
||||
<div className="col-xs-10">
|
||||
Signed in as <b>{this.props.user.full_name}</b><br />
|
||||
Signed in as
|
||||
<b>{this.props.user.full_name}</b>
|
||||
<br />
|
||||
{this.props.user.email}
|
||||
</div>
|
||||
</div>
|
||||
@@ -66,14 +66,15 @@ class MainList extends React.Component
|
||||
}
|
||||
};
|
||||
|
||||
return(
|
||||
return (
|
||||
<div>
|
||||
|
||||
{signedInAs()}
|
||||
|
||||
<div className="list-group">
|
||||
<a href="#" className="list-group-item" onClick={this._openOptionsPage}>
|
||||
<i className="fa fa-fw fa-cogs"></i> Options
|
||||
<i className="fa fa-fw fa-cogs"></i>
|
||||
Options
|
||||
</a>
|
||||
|
||||
{loginLogoutButton()}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
var React = require('react');
|
||||
import React from 'react';
|
||||
|
||||
class Navbar extends React.Component{
|
||||
class Navbar extends React.Component {
|
||||
|
||||
render() {
|
||||
return (
|
||||
|
||||
@@ -1,15 +1,11 @@
|
||||
var React = require("react");
|
||||
var $ = require('jquery');
|
||||
import React from "react";
|
||||
import $ from 'jquery';
|
||||
import NavBar from './NavBar.react.js';
|
||||
import MainList from './MainList.react.js';
|
||||
import changeExtensionIcon from '../helpers/changeExtensionIcon.js';
|
||||
import WakaTimeOriginal from '../WakaTime.js';
|
||||
|
||||
var NavBar = require('./NavBar.react');
|
||||
var MainList = require('./MainList.react');
|
||||
|
||||
var changeExtensionIcon = require('../helpers/changeExtensionIcon');
|
||||
|
||||
var WakaTimeOriginal = require('../WakaTime');
|
||||
|
||||
class WakaTime extends React.Component
|
||||
{
|
||||
class WakaTime extends React.Component {
|
||||
logoutUserUrl = 'https://wakatime.com/logout';
|
||||
|
||||
state = {
|
||||
@@ -21,56 +17,49 @@ class WakaTime extends React.Component
|
||||
loggedIn: false
|
||||
};
|
||||
|
||||
componentDidMount()
|
||||
{
|
||||
chrome.storage.sync.get({
|
||||
theme: 'light'
|
||||
}, function(items) {
|
||||
if(items.theme == 'light') {
|
||||
changeExtensionIcon();
|
||||
}
|
||||
else {
|
||||
changeExtensionIcon('white');
|
||||
}
|
||||
});
|
||||
componentDidMount() {
|
||||
chrome.storage.sync.get({
|
||||
theme: 'light'
|
||||
}, function (items) {
|
||||
if (items.theme == 'light') {
|
||||
changeExtensionIcon();
|
||||
}
|
||||
else {
|
||||
changeExtensionIcon('white');
|
||||
}
|
||||
});
|
||||
|
||||
var wakatime = new WakaTimeOriginal;
|
||||
var wakatime = new WakaTimeOriginal;
|
||||
|
||||
wakatime.checkAuth().done(data => {
|
||||
wakatime.checkAuth().done(data => {
|
||||
|
||||
if(data !== false){
|
||||
if (data !== false) {
|
||||
|
||||
this.setState({
|
||||
user: {
|
||||
full_name: data.full_name,
|
||||
email: data.email,
|
||||
photo: data.photo
|
||||
},
|
||||
loggedIn: true
|
||||
});
|
||||
this.setState({
|
||||
user: {
|
||||
full_name: data.full_name,
|
||||
email: data.email,
|
||||
photo: data.photo
|
||||
},
|
||||
loggedIn: true
|
||||
});
|
||||
|
||||
changeExtensionIcon();
|
||||
|
||||
}
|
||||
else {
|
||||
|
||||
changeExtensionIcon('red');
|
||||
|
||||
//TODO: Redirect user to wakatime login page.
|
||||
//
|
||||
}
|
||||
});
|
||||
changeExtensionIcon();
|
||||
}
|
||||
else {
|
||||
changeExtensionIcon('red');
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
logoutUser()
|
||||
{
|
||||
logoutUser() {
|
||||
var deferredObject = $.Deferred();
|
||||
|
||||
$.ajax({
|
||||
url: this.logoutUserUrl,
|
||||
method: 'GET',
|
||||
success: () => {
|
||||
success: () => {
|
||||
|
||||
deferredObject.resolve(this);
|
||||
|
||||
@@ -86,8 +75,7 @@ class WakaTime extends React.Component
|
||||
return deferredObject.promise();
|
||||
}
|
||||
|
||||
_logoutUser()
|
||||
{
|
||||
_logoutUser() {
|
||||
this.logoutUser().done(() => {
|
||||
|
||||
this.setState({
|
||||
@@ -104,9 +92,8 @@ class WakaTime extends React.Component
|
||||
});
|
||||
}
|
||||
|
||||
render()
|
||||
{
|
||||
return(
|
||||
render() {
|
||||
return (
|
||||
<div>
|
||||
<NavBar />
|
||||
<div className="container">
|
||||
|
||||
Reference in New Issue
Block a user