Skip to content

Commit 9799e39

Browse files
peterpeter
authored andcommitted
v2.0.12
1 parent 7d10ba5 commit 9799e39

File tree

14 files changed

+289
-170
lines changed

14 files changed

+289
-170
lines changed

README.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,21 @@ npm run [mac|win32|win|linux]
108108

109109
[Multi Platform Build 如何編譯多平台APP可參照 マルチOSのビルドにつて](https://www.electron.build/multi-platform-build)
110110

111-
## Notice 注意事項
111+
### Funding
112+
Currently the project is paid for out of pocket, and we will do an ICO. Any funding received private investment will be put to the following:
113+
CoNET Development
114+
CoNET platform for Android, IOS.
115+
APPs: CoMsg, CoWallet, CoBox, CoMail etc...
116+
Legal
117+
Lawyers
118+
Ensure we meet regulatory needs
119+
Marketing & Sales
120+
Build C-serious Team and Advisory Board
121+
Prepare all materials and Go campaign for ICO
122+
123+
Should you wish to consider private investment email [email protected]
124+
125+
## Notice 注意事項
112126

113127
This bate version have not support UDP proxy
114128

app/localWebServer.js

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -671,7 +671,7 @@ class localServer {
671671
});
672672
}
673673
getMedia(mediaString, CallBack) {
674-
saveLog(` getMedia mediaString = [${mediaString}]`);
674+
//saveLog (` getMedia mediaString = [${ mediaString }]`)
675675
if (/^http[s]*\:\/\//.test(mediaString)) {
676676
return CallBack(null, mediaString);
677677
}
@@ -734,7 +734,7 @@ class localServer {
734734
}, CallBack);
735735
}
736736
createTweetData_next(tweet, err, data, CallBack) {
737-
saveLog(`createTweetData_next CallBack: data = [${data.map(n => { return n.length; })}]`);
737+
//saveLog ( `createTweetData_next CallBack: data = [${ data.map ( n => { return n.length })}]`)
738738
tweet.user.profile_image_url_https = `data:image/png;base64,${data[0]}`;
739739
if (tweet.retweeted && tweet.retweeted.user) {
740740
tweet.retweeted.user.profile_image_url_https = `data:image/png;base64,${data[1]}`;
@@ -931,16 +931,17 @@ class localServer {
931931
}
932932
return post(null);
933933
}
934-
tweetTimeCallBack(socket, err, tweets) {
934+
tweetTimeCallBack(socket, err, tweets, postReturn) {
935935
if (err) {
936936
socket.emit('getTimelines', err);
937-
return saveLog(`socket.on ( 'getTimelines' return [${err.message}]`);
937+
return console.log(`socket.on ( 'getTimelines' return [${err}]`);
938938
}
939939
return this.createTweetData(tweets, (err, tweet) => {
940940
if (err) {
941941
return console.log(`getTweetCount error`, err);
942942
}
943-
return socket.emit('getTimelines', tweet);
943+
console.log(`*************** socket.emit [${tweet.CoNET_totalTwitter}:${tweet.CoNET_currentTwitter + 1}]`);
944+
return socket.emit('getTimelines', tweet, postReturn);
944945
});
945946
}
946947
listenAfterTwitterLogin(socket) {
@@ -984,7 +985,7 @@ class localServer {
984985
delete item['twitter_verify_credentials'];
985986
this.setCurrentTwitterAccount(item);
986987
return this.getTimelines(socket, item, (err, tweets) => {
987-
return this.tweetTimeCallBack(socket, err, tweets);
988+
return this.tweetTimeCallBack(socket, err, tweets, false);
988989
});
989990
});
990991
socket.on('mediaFileUpdata', (uploadId, data, part, CallBack1) => {
@@ -1004,20 +1005,32 @@ class localServer {
10041005
socket.on('getTimelinesNext', (item, maxID, CallBack1) => {
10051006
CallBack1();
10061007
return this.getTimelinesNext(socket, item, maxID, (err, tweets) => {
1007-
return this.tweetTimeCallBack(socket, err, tweets);
1008+
return this.tweetTimeCallBack(socket, err, tweets, false);
10081009
});
10091010
});
10101011
socket.on('twitter_postNewTweet', (account, postData, CallBack1) => {
10111012
CallBack1();
10121013
if (!account || !postData.length) {
10131014
return console.log('on twitter_postNewTweet but format error!');
10141015
}
1015-
return this.postTweetViaQTGate(socket, account, postData[0], (err, data) => {
1016+
return this.postTweetViaQTGate(socket, account, postData[0], (err, res) => {
1017+
if (res.Args && res.Args.length > 0) {
1018+
let uu = null;
1019+
try {
1020+
uu = JSON.parse(Buffer.from(res.Args[0], 'base64').toString());
1021+
}
1022+
catch (ex) {
1023+
return socket.emit('getTimelines', 2);
1024+
}
1025+
console.log(`postTweetViaQTGate return\n`, Util.inspect(uu));
1026+
uu.user.profile_image_url_https = this.twitterData[this.currentTwitterAccount].twitter_verify_credentials.profile_image_url_https;
1027+
return socket.emit('getTimelines', uu, true);
1028+
}
10161029
return socket.emit('twitter_postNewTweet', err);
10171030
});
10181031
});
10191032
socket.on('getTwitterTextLength', (twitterText, CallBack1) => {
1020-
return CallBack1();
1033+
CallBack1();
10211034
return socket.emit('getTwitterTextLength', Twitter_text.parseTweet(twitterText));
10221035
});
10231036
return socket.on('saveAccounts', (twitterAccounts, CallBack1) => {

app/localWebServer.ts

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,7 @@ export default class localServer {
731731
}
732732

733733
private getMedia ( mediaString: string, CallBack ) {
734-
saveLog (` getMedia mediaString = [${ mediaString }]`)
734+
//saveLog (` getMedia mediaString = [${ mediaString }]`)
735735
if ( /^http[s]*\:\/\//.test ( mediaString )) {
736736
return CallBack ( null, mediaString )
737737
}
@@ -801,7 +801,7 @@ export default class localServer {
801801
}
802802

803803
private createTweetData_next ( tweet: twitter_post, err: Error, data: string[][], CallBack ) {
804-
saveLog ( `createTweetData_next CallBack: data = [${ data.map ( n => { return n.length })}]`)
804+
//saveLog ( `createTweetData_next CallBack: data = [${ data.map ( n => { return n.length })}]`)
805805
tweet.user.profile_image_url_https = `data:image/png;base64,${ data [0]}`
806806
if ( tweet.retweeted && tweet.retweeted.user ) {
807807
tweet.retweeted.user.profile_image_url_https = `data:image/png;base64,${ data [1]}`
@@ -996,7 +996,7 @@ export default class localServer {
996996
private postTweetViaQTGate ( socket, account: TwitterAccount, postData: twitter_postData, Callback ) {
997997
const post = err => {
998998
if ( err ) {
999-
saveLog (`postTweetViaQTGate post got error: [${ err.message }] `)
999+
saveLog ( `postTweetViaQTGate post got error: [${ err.message }] `)
10001000
return Callback ( err )
10011001
}
10021002

@@ -1028,22 +1028,21 @@ export default class localServer {
10281028
return post ( null )
10291029
}
10301030

1031-
private tweetTimeCallBack ( socket: SocketIO.Socket, err, tweets: twitter_post ) {
1031+
private tweetTimeCallBack ( socket: SocketIO.Socket, err, tweets: twitter_post, postReturn: boolean ) {
10321032

10331033
if ( err ) {
10341034
socket.emit ( 'getTimelines', err )
1035-
return saveLog ( `socket.on ( 'getTimelines' return [${ err.message }]`)
1035+
return console.log ( `socket.on ( 'getTimelines' return [${ err }]`)
10361036

10371037
}
10381038

10391039
return this.createTweetData ( tweets, ( err, tweet: twitter_post ) => {
10401040

1041-
10421041
if ( err ) {
10431042
return console.log (`getTweetCount error`, err )
10441043
}
1045-
1046-
return socket.emit ( 'getTimelines', tweet )
1044+
console.log (`*************** socket.emit [${ tweet.CoNET_totalTwitter }:${ tweet.CoNET_currentTwitter + 1 }]`)
1045+
return socket.emit ( 'getTimelines', tweet, postReturn )
10471046

10481047

10491048
})
@@ -1100,7 +1099,7 @@ export default class localServer {
11001099
this.setCurrentTwitterAccount ( item )
11011100

11021101
return this.getTimelines ( socket, item, ( err, tweets: twitter_post ) => {
1103-
return this.tweetTimeCallBack ( socket, err, tweets )
1102+
return this.tweetTimeCallBack ( socket, err, tweets, false )
11041103

11051104
})
11061105
})
@@ -1122,7 +1121,7 @@ export default class localServer {
11221121
socket.on ( 'getTimelinesNext', ( item: TwitterAccount, maxID: number, CallBack1 ) => {
11231122
CallBack1 ()
11241123
return this.getTimelinesNext ( socket, item, maxID, ( err, tweets: twitter_post ) => {
1125-
return this.tweetTimeCallBack ( socket, err, tweets )
1124+
return this.tweetTimeCallBack ( socket, err, tweets, false )
11261125

11271126
})
11281127
})
@@ -1134,15 +1133,25 @@ export default class localServer {
11341133
}
11351134

11361135

1137-
return this.postTweetViaQTGate ( socket, account, postData[0], ( err, data ) => {
1138-
1136+
return this.postTweetViaQTGate ( socket, account, postData[0], ( err, res ) => {
1137+
if ( res.Args && res.Args.length > 0 ) {
1138+
let uu: twitter_post = null
1139+
try {
1140+
uu = JSON.parse ( Buffer.from ( res.Args [0], 'base64' ).toString ())
1141+
} catch ( ex ) {
1142+
return socket.emit ( 'getTimelines', 2 )
1143+
1144+
}
1145+
console.log (`postTweetViaQTGate return\n`, Util.inspect ( uu ))
1146+
uu.user.profile_image_url_https = this.twitterData[this.currentTwitterAccount].twitter_verify_credentials.profile_image_url_https
1147+
return socket.emit ( 'getTimelines', uu, true )
1148+
}
11391149
return socket.emit ( 'twitter_postNewTweet', err )
11401150
})
11411151
})
11421152

11431153
socket.on ( 'getTwitterTextLength', ( twitterText: string, CallBack1 ) => {
1144-
return CallBack1 ()
1145-
1154+
CallBack1 ()
11461155
return socket.emit ( 'getTwitterTextLength', Twitter_text.parseTweet ( twitterText ))
11471156
})
11481157

app/public/scripts/siteShare.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,7 @@ const infoDefine = [
331331
twitter: {
332332
newTwitterAccount: `请输入您的推特APP信息,如何获得和设置推特账号APP信息,请点击<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP')">这里</a>`,
333333
addAccount: '添加推特账户',
334-
following: '正在关注',
334+
following: ['正在关注', '解除关注', '关注'],
335335
followers: '关注者',
336336
videoSizeOver: '视频超推特限制: 尺寸 < (1280x1024),文件 < 300MB,总时间 < 140秒,请转换视频后再上传',
337337
second: '秒',
@@ -949,7 +949,7 @@ const infoDefine = [
949949
twitter: {
950950
newTwitterAccount: `TwitterのAPPインフォーメーションを入力してください。APPインフォーメーション作成する事がわからない場合は<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">ここ</a>をクリックしてください。`,
951951
addAccount: 'Twitterアカウントを追加',
952-
following: 'フォロー',
952+
following: ['フォロー中', 'フォローを解除', 'フォロー'],
953953
followers: 'フォロワー',
954954
second: '秒',
955955
videoSizeOver: `ビデオがTwitter規格: 140秒、300MB、(1280x1024)を超えています`,
@@ -1574,7 +1574,7 @@ const infoDefine = [
15741574
twitter: {
15751575
newTwitterAccount: `Please input Twitter APP information. How to create Twitter APP please click <a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">hear</a> to got more information.`,
15761576
addAccount: 'Add an Twitter account',
1577-
following: 'Following',
1577+
following: ['Following', 'Unfollow', 'Follow'],
15781578
followers: 'Followers',
15791579
second: 's',
15801580
min: 'm',
@@ -2235,7 +2235,7 @@ const infoDefine = [
22352235
twitter: {
22362236
newTwitterAccount: `請輸入您的推特APP信息,如何獲得和設置推特賬號APP信息,請點擊<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">這裡</a>獲得更多信息`,
22372237
addAccount: '添加推特賬戶',
2238-
following: '正在關注',
2238+
following: ['正在關注', '解除關注', '關注'],
22392239
followers: '關注者',
22402240
second: '秒',
22412241
min: '分',
@@ -2849,6 +2849,10 @@ function cmpVersions(a, b) {
28492849
}
28502850
return segmentsA.length - segmentsB.length;
28512851
}
2852+
function scrollToTop() {
2853+
document.body.scrollTop = 0; // For Safari
2854+
document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera
2855+
}
28522856
const socketIo = io({ reconnectionAttempts: 5, timeout: 500, autoConnect: true });
28532857
const QTGateRegionsSetup = [
28542858
{

app/public/scripts/siteShare.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -354,7 +354,7 @@ const infoDefine = [
354354
twitter: {
355355
newTwitterAccount: `请输入您的推特APP信息,如何获得和设置推特账号APP信息,请点击<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP')">这里</a>`,
356356
addAccount:'添加推特账户',
357-
following: '正在关注',
357+
following: ['正在关注','解除关注','关注'],
358358
followers:'关注者',
359359
videoSizeOver: '视频超推特限制: 尺寸 < (1280x1024),文件 < 300MB,总时间 < 140秒,请转换视频后再上传',
360360
second: '秒',
@@ -1002,7 +1002,7 @@ const infoDefine = [
10021002
twitter: {
10031003
newTwitterAccount: `TwitterのAPPインフォーメーションを入力してください。APPインフォーメーション作成する事がわからない場合は<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">ここ</a>をクリックしてください。`,
10041004
addAccount:'Twitterアカウントを追加',
1005-
following: 'フォロー',
1005+
following: ['フォロー中','フォローを解除','フォロー'],
10061006
followers:'フォロワー',
10071007
second: '秒',
10081008
videoSizeOver: `ビデオがTwitter規格: 140秒、300MB、(1280x1024)を超えています`,
@@ -1654,7 +1654,7 @@ const infoDefine = [
16541654
twitter: {
16551655
newTwitterAccount: `Please input Twitter APP information. How to create Twitter APP please click <a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">hear</a> to got more information.`,
16561656
addAccount:'Add an Twitter account',
1657-
following: 'Following',
1657+
following: ['Following','Unfollow','Follow'],
16581658
followers:'Followers',
16591659
second: 's',
16601660
min: 'm',
@@ -2350,7 +2350,7 @@ const infoDefine = [
23502350
twitter: {
23512351
newTwitterAccount: `請輸入您的推特APP信息,如何獲得和設置推特賬號APP信息,請點擊<a target="_blank" href='https://github.com/QTGate/QTGate-Desktop-Client/wiki/Create-Twitter-APP'">這裡</a>獲得更多信息`,
23522352
addAccount:'添加推特賬戶',
2353-
following: '正在關注',
2353+
following: ['正在關注','解除關注','關注'],
23542354
followers:'關注者',
23552355
second: '秒',
23562356
min: '分',
@@ -3000,6 +3000,10 @@ function cmpVersions ( a: string, b: string ) {
30003000
return segmentsA.length - segmentsB.length;
30013001
}
30023002

3003+
function scrollToTop () {
3004+
document.body.scrollTop = 0; // For Safari
3005+
document.documentElement.scrollTop = 0; // For Chrome, Firefox, IE and Opera
3006+
}
30033007

30043008
const socketIo = io ({ reconnectionAttempts: 5, timeout: 500, autoConnect: true })
30053009
const QTGateRegionsSetup: IQTGateRegionsSetup[] = [

app/public/scripts/socket.io.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/public/scripts/twitter.js

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -416,15 +416,26 @@ var twitter_layout;
416416
return self.config(data);
417417
});
418418
});
419-
socketIo.on('getTimelines', function (data) {
420-
return self.twitterPostReturn(data);
419+
socketIo.on('getTimelines', function (data, post) {
420+
return self.twitterPostReturn(data, post);
421421
});
422422
socketIo.on('getTimelinesEnd', function () {
423423
return self.bottomEventLoader(false);
424424
});
425425
self.newTwitterField.push(new twitterField(self));
426426
}
427-
twitterPostReturn(data) {
427+
getNumberFormat(num) {
428+
if (num < 1000) {
429+
return num.toString();
430+
}
431+
const u = Math.round(num / 100);
432+
if (u < 10000) {
433+
return `${u / 10} K`;
434+
}
435+
const v = Math.round(num / 100000);
436+
return `${v / 10} M`;
437+
}
438+
twitterPostReturn(data, post) {
428439
const self = this;
429440
this.showServerError(false);
430441
// Error
@@ -483,10 +494,19 @@ var twitter_layout;
483494
data.favoritedLoader_ko = ko.observable(false);
484495
this.currentTimelines.push(data);
485496
$('.row.ui.shape').shape();
486-
$('.ui.sidebar.twitterTimes').sidebar('toggle');
487-
return this.currentTimelines.sort(function (a, b) {
497+
this.currentTimelines.sort(function (a, b) {
488498
return b.id - a.id;
489499
});
500+
$(`#${data.id_str} .ui.sidebar`).sidebar({
501+
context: $(`#${data.id_str}`)
502+
}).sidebar('attach events', `.${data.id_str}`).sidebar('setting', 'exclusive', false);
503+
$(`.${data.id_str}`).click(function (e) {
504+
e.preventDefault();
505+
});
506+
// post data
507+
if (post) {
508+
scrollToTop();
509+
}
490510
}
491511
getTimeLinesNext() {
492512
this.showServerError(false);
@@ -747,14 +767,7 @@ var twitter_layout;
747767
return this.newTwitterField([new twitterField(this)]);
748768
}
749769
this.newTwitterField([new twitterField(this)]);
750-
return socketIo.emit11('twitter_postNewTweet', this.twitterData()[0], data, function (err, data) {
751-
if (err) {
752-
return alert(err);
753-
}
754-
if (data) {
755-
return self.twitterPostReturn(data);
756-
}
757-
});
770+
return socketIo.emit11('twitter_postNewTweet', this.twitterData()[0], data);
758771
}
759772
timelinesViewSharp(id_str) {
760773
return $(`.shape[sharp-id='${id_str}']`).shape('flip over');

0 commit comments

Comments
 (0)