Просмотр исходного кода

Merge branch 'master' of https://github.com/porter-dev/porter into beta.3.buildpack-ci

jusrhee 5 лет назад
Родитель
Сommit
290dcfd1b1

+ 8 - 0
dashboard/src/main/home/Home.tsx

@@ -197,9 +197,17 @@ class Home extends Component<PropsType, StateType> {
   };
 
   componentDidMount() {
+    let { user, projects } = this.context;
+
     // Handle redirect from DO
     let queryString = window.location.search;
     let urlParams = new URLSearchParams(queryString);
+    
+    window.analytics.identify(user.userId, {
+      email: user.email,
+      createdAt: Date.now(),
+      projects,
+    });
 
     let err = urlParams.get("error");
     if (err) {

+ 0 - 6
dashboard/src/main/home/cluster-dashboard/chart/Chart.tsx

@@ -42,12 +42,6 @@ export default class Chart extends Component<PropsType, StateType> {
     return `${time} on ${date}`;
   };
 
-  componentDidMount() {
-    window.analytics.track("Opened Chart", {
-      chart: this.props.chart.name,
-    });
-  }
-
   render() {
     let { chart, setCurrentChart } = this.props;
 

+ 7 - 3
dashboard/src/main/home/cluster-dashboard/expanded-chart/ExpandedChart.tsx

@@ -494,11 +494,15 @@ export default class ExpandedChart extends Component<PropsType, StateType> {
     let { currentCluster, currentProject } = this.context;
     let { currentChart } = this.props;
 
-    this.getChartData(this.props.currentChart);
-    this.getControllers(this.props.currentChart);
+    window.analytics.track("Opened Chart", {
+      chart: currentChart.name,
+    });
+
+    this.getChartData(currentChart);
+    this.getControllers(currentChart);
     this.setControllerWebsockets(
       ["deployment", "statefulset", "daemonset", "replicaset"],
-      this.props.currentChart
+      currentChart
     );
 
     api

+ 0 - 7
dashboard/src/shared/Context.tsx

@@ -54,17 +54,10 @@ class ContextProvider extends Component {
     setProjects: (projects: ProjectType[]) => {
       projects.sort((a: any, b: any) => (a.name > b.name ? 1 : -1));
       this.setState({ projects });
-      window.analytics.identify(this.state.user.userid, {
-        projects,
-      });
     },
     user: null as any,
     setUser: (userId: number, email: string) => {
       this.setState({ user: { userId, email } });
-      window.analytics.identify(userId, {
-        email: email,
-        createdAt: Date.now(),
-      });
     },
     devOpsMode: true,
     setDevOpsMode: (devOpsMode: boolean) => {