-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
75 lines (71 loc) · 2.72 KB
/
script.js
File metadata and controls
75 lines (71 loc) · 2.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
window.addEventListener('load', function(){
var googleLanguage = getGoogleLanguage();
var hyphenPosition = googleLanguage.indexOf('-');
var localeCode = (hyphenPosition >= 0) ? googleLanguage.substr(0, hyphenPosition) : googleLanguage;
var observer = new MutationObserver(function(mutations){
if(!document.getElementById('qdr_m3')){
addThreeMonth(localeCode);
}
if(!document.getElementById('qdr_m6')){
addSixMonth(localeCode);
}
});
var options = { subtree: true, childList: true, characterData: true }
observer.observe(document.body, options);
});
function getMessage(keyword, language){
messages = {
"en": {
"past_3_months": "Past 3 months",
"past_6_months": "Past 6 months"
},
"ja": {
"past_3_months": "3 ヶ月以内",
"past_6_months": "6 ヶ月以内"
}
};
if(language in messages){
return messages[language][keyword];
}
}
function getGoogleLanguage(){
return document.documentElement.lang;
}
function addThreeMonth(localeCode){
if(document.getElementById('qdr_m') && document.getElementById('qdr_m').childNodes[0].nodeType !== 3){
var m3 = document.getElementById('qdr_m').cloneNode(true);
var mHref = m3.childNodes[0].getAttribute('href');
var m3Href = mHref.replace(/qdr:m/, 'qdr:m3');
}else if(document.getElementById('qdr_y')){
var m3 = document.getElementById('qdr_y').cloneNode(true);
var mHref = m3.childNodes[0].getAttribute('href');
var m3Href = mHref.replace(/qdr:y/, 'qdr:m3');
}else{
return false;
}
m3.childNodes[0].setAttribute('href', m3Href);
m3.setAttribute('id', 'qdr_m3');
m3.childNodes[0].textContent = getMessage("past_3_months", localeCode);
if(document.getElementById('qdr_m6')){
document.getElementById('qdr_y').parentNode.insertBefore(m3, document.getElementById('qdr_m6'));
}else{
document.getElementById('qdr_y').parentNode.insertBefore(m3, document.getElementById('qdr_y'));
}
}
function addSixMonth(localeCode){
if(document.getElementById('qdr_m') && document.getElementById('qdr_m').childNodes[0].nodeType !== 3){
var m6 = document.getElementById('qdr_m').cloneNode(true);
var mHref = m6.childNodes[0].getAttribute('href');
var m6Href = mHref.replace(/qdr:m/, 'qdr:m6');
}else if(document.getElementById('qdr_y')){
var m6 = document.getElementById('qdr_y').cloneNode(true);
var mHref = m6.childNodes[0].getAttribute('href');
var m6Href = mHref.replace(/qdr:y/, 'qdr:m6');
}else{
return false;
}
m6.childNodes[0].setAttribute('href', m6Href);
m6.setAttribute('id', 'qdr_m6');
m6.childNodes[0].textContent = getMessage("past_6_months", localeCode);
document.getElementById('qdr_y').parentNode.insertBefore(m6, document.getElementById('qdr_y'));
}