Skip to content
This repository was archived by the owner on Sep 23, 2025. It is now read-only.

Commit 2a3f6e2

Browse files
author
manjun.xsy
committed
fix: token
1 parent bcca294 commit 2a3f6e2

File tree

5 files changed

+77
-43
lines changed

5 files changed

+77
-43
lines changed

gitlab-tree.crx

196 KB
Binary file not shown.

src.pem

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
-----BEGIN PRIVATE KEY-----
2+
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCm001Bs8+4MAz+
3+
Nz90tYvyer8lcTlbDMCQZZZUJLQi+k+yaM0ZDFuIPCWEmWBXQmbZVQkJj3KvqkQj
4+
vmyjqy+dvkG3JFAYyOXCI6jEg97MNuMgPeNsD8QvNdff1SQl3GCyOqgG9es+V5b+
5+
3zC27JKqH3j+FpSlYRkw7iZQnkLj2WsrajSqf0LXnv1x0d3IGioZdm1ha0T7YNUV
6+
kDCSdraRWQIONXlMF2xylUN+HbEwzSwFBtFD9dA+bJTLdoCg5DGw5zev+4W1ihbc
7+
GRx4JzNRkz1w5oPvjSF52lqckPaIEil02JpjdP//jB0sPodxuKCmKNyvicuJAWvB
8+
pdGEfiIrAgMBAAECggEAAjg9hupFkUXSZm+FwJ/JxOgtMupWwQdiaIlxfp0eaHi8
9+
JruOPw8TCLUEKsd/qKmRhMLE5AOsmvnA/ljCSUs1zvuBFFa/WhUSOYsP6811YXI5
10+
g2xPYlizW41z2d6UJIzSHIz7P1x2TNYNhEaj90seiHTyvy69u5WXKDeC+v+gFDgC
11+
2eTACnCmz5IpelRz0Qu0bPCtwxvgl6KEIGE2LSe+9KT9DDVwuJ/iD/M2IiQtKb94
12+
VjhZ3K3N1dSdPSLO5G384z5tKPO0+yVXDDELH4cyK0k7Hntu81SzkI10clCeBOGc
13+
tnlN2E5G7lvP3Xg/OlTriyAdeNPREEaiEuk+vRmgAQKBgQDdRZYs5K9Pfy/UWdVP
14+
4Wa13QTAcgtkylWgU04iIBc5ZDja1lcyvOWeDg2sA67Geh88wKP0XBf7GwAVdPzO
15+
KwJf1wSVfyhsl/jws4pj8vUQWs5ogPKSNNm8EIbz2El8p2fsXF18rC52qASiAqew
16+
ojAWAJI2e740c16SfZf2NwhKAQKBgQDBAiD3kfB2zZRuO9LSvuo2+4heUYkQe0mD
17+
wwodBJj/aQgrkGKzKga+AFbVUdQcpOD+CXf59g5qYh4XfAohEc6k3ZwOaO/jbxZg
18+
bKQPQGeoG1lDaCheIPfUmlj6zC/kTM9ZQP1fATirNdfbFGsvTSQssEHsYmOyEQcm
19+
USvniBG0KwKBgG5xGCbqMdKFEhN0jzLit0hYu9FuWt+A2kI+skX4LH9Z1cLsrvNF
20+
M3qzWwGbiPXJ6KODJ5KFEPcln+IV1UT2VKYPhVs077FcHUXO52lB0C3MlS+2BN0T
21+
AgaLXUCCmRNd31IrPAJJUpuo+z7+AkL4gPXKbTBCjUpSt0Z454teJoYBAoGALwm5
22+
xxxGIm4P0p25z6q/og7DOVldsiqZzAbonBHWx8htOVDC/S8s3XlvsCV1MFXuj3r3
23+
Rm/1K3AmLUsJnO2eEwf/VHO2oxMbvPw9L4peuNWRd6AW1nnqbGIBdX313gnqLrJs
24+
DY9apD9HEBl11d1TB6EdL+L6sRb9SxVVQeQjjGkCgYEAzipHKVa8LXeV3DWwJsJV
25+
SbCdFMwRyLoE2bnqjdhAjP3R8RyIFF2+PcA7g/DSWRD/584T/Ek8QgxDjBVVntmu
26+
Y+RoRZ+f6BArruZOkxaB0KZY6rXK43M+OGPlzfZEgY7iZCoYUaALg8MbrZj+xAJD
27+
NwjoYlXZj0iwKUN7MqR0tpg=
28+
-----END PRIVATE KEY-----

src/gitlabtree.js

Lines changed: 47 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@
44
* @Last Modified by: FrankFan
55
*/
66

7+
function getAllContent(selector) {
8+
var wholeText = '';
9+
let contents = $(selector).contents();
10+
for (var i = 0; i < contents.length; i++) {
11+
wholeText += contents[i].wholeText + ';';
12+
}
13+
return wholeText;
14+
}
15+
716
var GitlabTree = (function($, win) {
817
var private_token,
918
project_id,
@@ -17,41 +26,9 @@ var GitlabTree = (function($, win) {
1726
$jstree;
1827

1928
var getPrivateToken = function(dtd) {
20-
var arrXmlNode;
2129
var objXml = {};
22-
var wholeText;
23-
24-
if ($('head script[type="text/javascript"]').contents()[0]) {
25-
wholeText = $('head script[type="text/javascript"]').contents()[0]['wholeText'];
26-
}
27-
28-
if (wholeText) {
29-
if (!/window.gon/ig.test(wholeText)) {
30-
return;
31-
}
32-
} else {
33-
if ($('head script').contents()[0]) {
34-
wholeText = $('head script').contents()[0]['wholeText'];
35-
}
36-
37-
if (!wholeText) {
38-
return;
39-
} else {
40-
if (!/window.gon/ig.test(wholeText)) {
41-
// return;
42-
}
43-
}
44-
}
45-
46-
if ($('head script[type="text/javascript"]').contents()[0]) {
47-
arrXmlNode = wholeText.toString().split(';')
48-
} else {
49-
if ($('head script').contents()[0]) {
50-
arrXmlNode = wholeText.toString().split(';')
51-
} else {
52-
return false;
53-
}
54-
}
30+
var wholeText = getAllContent('head script');
31+
var arrXmlNode = wholeText.toString().split(';')
5532

5633
for (var i = 1; i < arrXmlNode.length - 1; i++) {
5734
var item = arrXmlNode[i].split('=');
@@ -67,7 +44,11 @@ var GitlabTree = (function($, win) {
6744

6845
if (private_token) {
6946
private_token = private_token.replace(/\"/g, '');
47+
dtd.resolve(true);
7048
} else {
49+
//dtd.reject(false);
50+
return;
51+
// TODO
7152
if (isFilesTab()) {
7253
tryToGetTokenInGitlab9(function(result) {
7354
if (result && result != 401) {
@@ -103,7 +84,7 @@ var GitlabTree = (function($, win) {
10384

10485
var initVariables = function() {
10586
project_id = $('#project_id').val() || $('#search_project_id').val();
106-
repository_ref = $('#repository_ref').val();
87+
repository_ref = $('#repository_ref').val() || 'master';
10788
originUrl = window.location.origin;
10889

10990
var apiRootUrl = originUrl + '/api/v3/projects/';
@@ -113,6 +94,8 @@ var GitlabTree = (function($, win) {
11394

11495
var tmpClassName = $('.container').length > 0 ? '.container' : '.content-wrapper .container-fluid';
11596
initContainerML = $(tmpClassName).offset() && $(tmpClassName).offset().left;
97+
98+
return project_id != null;
11699
}
117100

118101
var generateTreeNodes = function(serverResult) {
@@ -173,8 +156,8 @@ var GitlabTree = (function($, win) {
173156
if (cnode.data === 'tree') {
174157
nodesDisplay.forEach(function(item) {
175158
var newNodeObj = $jstree.jstree(true).create_node(cnode, item, 'last', function(data) {
176-
// console.log('new node created.');
177-
// console.log(data);
159+
console.log('new node created.');
160+
console.log(data);
178161
});
179162
$jstree.jstree(true).open_node(cnode);
180163
});
@@ -199,7 +182,7 @@ var GitlabTree = (function($, win) {
199182
}
200183

201184
var handleRefresh = function() {
202-
var lastElement = getLocalStorageData().lastElement || '';
185+
var lastElement = $('#path').val() || getLocalStorageData().lastElement || '';
203186
var requestPath = lastElement ? makeRequestArr(lastElement) : [];
204187
var promises = requestPath.map(function(path) {
205188
return getResultJson(path);
@@ -211,7 +194,7 @@ var GitlabTree = (function($, win) {
211194
var nodesDisplay = generateTreeNodes(item);
212195
var cssSelector = (index === 0) ? '.jstree .jstree-container-ul li a' : '.jstree .jstree-container-ul li.jstree-open ul li';
213196
expandSubTreeByJSON(cssSelector, requestPath, lastElement, nodesDisplay);
214-
showGitlabTree();
197+
isOnFilesTab() && showGitlabTree();
215198
});
216199
} else {
217200
$('.jstree .jstree-container-ul li a').each(function(index, item) {
@@ -220,7 +203,7 @@ var GitlabTree = (function($, win) {
220203
$(this).parent().find('div.jstree-wholerow').addClass('jstree-wholerow-clicked');
221204
}
222205
});
223-
showGitlabTree();
206+
isOnFilesTab() && showGitlabTree();
224207
}
225208
})
226209
.catch(function(err) {
@@ -282,6 +265,10 @@ var GitlabTree = (function($, win) {
282265
}
283266

284267
var isFilesTab = function() {
268+
return true;
269+
}
270+
271+
var isOnFilesTab = function() {
285272
// gitlab 8.x
286273
var currentTabText = $('.project-navigation li.active a').text();
287274
if (currentTabText === 'Files' || $('.nav.nav-sidebar li.active a').text().trim() === 'Files') {
@@ -591,6 +578,10 @@ var GitlabTree = (function($, win) {
591578
var checkRepos = function(repos) {
592579
var result = true;
593580

581+
if (project_id == null) {
582+
return false;
583+
}
584+
594585
if (repos && repos.length > 0) {
595586
for (var key in repos) {
596587
var objRepoInfo = repos[key];
@@ -656,19 +647,34 @@ var GitlabTree = (function($, win) {
656647
$('.open-tree').hide();
657648
}
658649

650+
var reload = function(e) {
651+
if (e.target.nodeName === 'BODY') {
652+
console.log('reload');
653+
$(document).off('DOMNodeRemoved', reload);
654+
setTimeout(function() {
655+
init(getApiProjects);
656+
});
657+
}
658+
};
659+
659660
var init = function(next) {
660661
var p = new Promise(function(resolve, reject) {
661662
$.Deferred(getPrivateToken)
662663
.done(function(status) {
663664
resolve(status);
665+
666+
if (!initVariables()) {
667+
return;
668+
}
669+
664670
if (isFilesTab()) {
665671
$(window).resize(function() {
666672
updateLayoutUI('show');
667673
});
668674
}
669675
createBtn();
670676
showSpinner();
671-
initVariables();
677+
$(document).on('DOMNodeRemoved', reload);
672678
})
673679
.fail(function(status) {
674680
console.warn("Error: ", status);

src/main.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,5 +145,5 @@ a.gitlabtree_toggle {
145145
}
146146

147147
.vh {
148-
visibility: hidden !important;
148+
/* visibility: hidden !important; */
149149
}

src/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"css": ["main.css",
2727
"libs/nprogress/nprogress.css",
2828
"libs/jstree/jstree.css"],
29-
"run_at": "document_start"
29+
"run_at": "document_idle"
3030
}
3131
]
3232
}

0 commit comments

Comments
 (0)