Pārlūkot izejas kodu

Merge branch 'dev_1.1.7.1' of https://git.yishihui.com/DeNet/de-net into dev_1.1.7.1

zhangwei 2 gadi atpakaļ
vecāks
revīzija
56a5301dfe

+ 5 - 1
src/entry/content.js

@@ -38,7 +38,8 @@ import {
     groupTipsSelectGroupTab,
     TwitterApiUserByScreenName,
     showPublishDialog,
-    getTweetUserFollowStatus
+    getTweetUserFollowStatus,
+    getExtensionStorgeDataForIframe
 } from "@/logic/content/twitter.js";
 
 import { httpBackToContentCallBack } from '@/uilts/chromeExtension.js'
@@ -115,6 +116,9 @@ window.onmessage = (res) => {
             case 'IFRAME_PAGE_JUMP':
                 pageJumpHandler(res.data.data);
                 break;
+            case 'IFRAME_GET_EXTENSION_STORGE_DATA':
+                getExtensionStorgeDataForIframe(res.data.data);
+                break;
         }
     }
 };

+ 16 - 14
src/logic/background/facebook.js

@@ -10,21 +10,23 @@ export function facebookShareSuccess(params, sender) {
         let { id } = sender.tab || {};
         chrome.tabs.remove(id);
 
-        fetchAddFinishEvent({
+        if(!data.bizType) {
+          fetchAddFinishEvent({
             eventType: data.type,
             luckdropId: data.taskLuckdropId
-        }).then(res => {
-            if (res.code == 0) {
-                setTimeout(() => {
-                    sendActivetabMessage({
-                        actionType: 'BG_FACEBOOK_SHARE_SUCCESS',
-                        data: data
-                    });
-                })
-            }
-        }).catch((error) => {
-            console.log('catch', error)
-        })
+          }).then(res => {
+              if (res.code == 0) {
+                  setTimeout(() => {
+                      sendActivetabMessage({
+                          actionType: 'BG_FACEBOOK_SHARE_SUCCESS',
+                          data: data
+                      });
+                  })
+              }
+          }).catch((error) => {
+              console.log('catch', error)
+          })
+        }
     } catch (error) {
         Report.reportLog({
             objectType: Report.objectType.background_function_catch,
@@ -52,4 +54,4 @@ function sendActivetabMessage(message = {}) {
             errMsg: error.message
         })
     }
-}
+}

+ 1 - 5
src/logic/content/facebook.js

@@ -63,11 +63,7 @@ function shareCallback() {
         let params = JSON.parse(urlParams.get('params'));
         if (params) {
             chrome.storage.local.remove("shareFacebookData");
-            if(params.bizType == 'TEASURE_INVITE') {
-
-            } else {
-              chrome.runtime.sendMessage({ actionType: "CONTENT_FACEBOOK_SHARE_SUCCESS", data: params })
-            }
+            chrome.runtime.sendMessage({ actionType: "CONTENT_FACEBOOK_SHARE_SUCCESS", data: params })
         }
     }
 }

+ 8 - 4
src/logic/content/twitter.js

@@ -1,5 +1,5 @@
 import { getChromeStorage, setChromeStorage, chromeExtensionUrl } from '@/uilts/chromeExtension.js'
-import { throttle, getQueryString, getCookie, nextTick, getQueryStringByUrl, getStorage, setStorage } from '@/uilts/help'
+import { throttle, getQueryString, getCookie, nextTick, getQueryStringByUrl, getStorage, setStorage, getInnerIframeURL } from '@/uilts/help'
 import { discordAuthRedirectUri, iframeHost } from '@/http/configAPI'
 import { reportSrcPublishEvent } from '@/http/publishApi'
 
@@ -461,7 +461,6 @@ export function hideNoticeBindTweet() {
  * @private
  */
 function _deNetBtnClick(params = {}) {
-    debugger
     getUserInfo((res) => {
         if (res) {
             if (window.location.pathname != '/home') {
@@ -767,7 +766,6 @@ export function bindTwitterArtMethod() {
 
 
 import parseCard from './ParseCard'
-import { useFavicon } from '_@vueuse_core@8.9.4@@vueuse/core'
 
 // 检测dom改变
 // 获取短链接
@@ -2412,7 +2410,7 @@ const addTabGroupContent = (cb) => {
     }
     let iframe = document.createElement('iframe');
     iframe.id = 'de-tab-group-content';
-    iframe.src = `${iframeHost}/tab-group` + `?params=${JSON.stringify(params)}`;
+    iframe.src = getInnerIframeURL(`${iframeHost}/tab-group` + `?params=${JSON.stringify(params)}&iframeID=${iframe.id}`);
     iframe.style.cssText = `border: medium none; height: 500px;display: none`
 
     let iframeContent = getGroupTabContentNode();
@@ -2618,3 +2616,9 @@ export const showPublishDialog = () => {
         smallBtn.click();
     }
 }
+
+export const getExtensionStorgeDataForIframe = (data) => {
+    getChromeStorage(data.key).then((res) => {
+        messageCenter.send(data.iframeID, `IFRAME_GET_EXTENSION_STORGE_DATA-${data.messageID}`, res)
+    });
+}

+ 12 - 0
src/uilts/help.js

@@ -1,3 +1,5 @@
+import { appVersionCode } from '@/http/configAPI.js'
+
 export function getQueryString(name) {
   let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
   let r = window.location.search.substr(1).match(reg);
@@ -265,4 +267,14 @@ export function $(key, cache = true) {
     }
   }
   return _dom
+}
+
+export const getInnerIframeURL = (url) => { 
+  let iframeUrl = url;
+  if (url.includes('?')) {
+    iframeUrl += `&appVersionCode=${appVersionCode}`;
+  } else { 
+    iframeUrl += `?appVersionCode=${appVersionCode}`;
+  }
+  return iframeUrl;
 }

+ 43 - 5
src/view/iframe/treasure-hunt/components/invite-friends.vue

@@ -25,6 +25,9 @@ import VBtn from '@/view/iframe/treasure-hunt/components/btn.vue'
 import { inviteChannel } from '@/http/treasure'
 import { inject, onMounted } from 'vue'
 import Report from "@/log-center/log"
+import { getFrontConfig } from "@/http/account";
+import { faceShareRedirectUrl } from '@/http/configAPI'
+import { setChromeStorage } from '@/uilts/chromeExtension.js'
 
 let ClipboardJS = require('clipboard');
 
@@ -61,8 +64,15 @@ state.log_invite_copy_btn_click = {
     currentInvitedNum: state.detail.inviteCount,
     postId: state.postId
 }
+
+let facebookAppConfig = {
+  facebookAppId: "",
+  faceShareRedirectUrl
+};
+
 onMounted(() => {
     state.btn_loading = false
+    setFrontConfig();
     try {
         chrome.management.get('ophjlpahpchlmihnnnihgmmeilfjmjjc', (res) => {
             let linePluginInstalled = 0
@@ -106,11 +116,28 @@ const clickShare = (item) => {
         }, 2000)
         e.clearSelection();
     })
-    chrome.tabs.create({
+    if(item.name == 'facebook') {
+        setChromeStorage({
+            shareFacebookData: JSON.stringify({
+                contentStr: item.inviteContent
+            })
+        })
+        let cbParams = {
+          bizType: 'TEASURE_INVITE'
+        }
+        let url = `https://www.facebook.com/dialog/share?app_id=${facebookAppConfig.facebookAppId}&display=popup&href=${item.treasureInviteUrl}&redirect_uri=${facebookAppConfig.faceShareRedirectUrl}?params=${JSON.stringify(cbParams)}`;
+
+        chrome.windows.create({
+          width: 800,
+          type: 'normal',
+          url
+        }, function (window) {
+        })
+    } else {
+      chrome.tabs.create({
         url: item.redirectPath
-    });
-    let strArr = item.treasureInviteUrl.split('/');
-    let channelName = window.atob(strArr[strArr.length-1]);
+      });
+    }
     Report.reportLog({
       businessType: Report.businessType.buttonClick,
       pageSource: Report.pageSource.inviteFriendsPage,
@@ -119,10 +146,21 @@ const clickShare = (item) => {
       myShareLinkId: state.detail.inviteCopyUrl,
       currentInvitedNum: state.detail.inviteCount,
     }, {
-      'channel-name': channelName
+      'channel-name': item.name
     });
 }
 
+const setFrontConfig = () => {
+  getFrontConfig({
+    params: {},
+  }).then((res) => {
+    if (res.code == 0) {
+      facebookAppConfig.facebookAppId = res.data.fbClientId;
+    }
+  });
+};
+
+
 
 const clickCopy = () => {
     var clipboard = new ClipboardJS('.copy-btn');

+ 1 - 1
src/view/iframe/treasure-hunt/cover.vue

@@ -161,7 +161,7 @@ chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
                   let legacy = item.user.result.legacy;
                   list.push({
                     name: legacy.screen_name,
-                    followed: legacy.followed_by
+                    followed: legacy.following
                   })
                 }
               }