Skip to content

Commit 4238402

Browse files
adityasticmariobehling
authored andcommitted
feat: allow custom Project Names (#29)
1 parent 38fbef7 commit 4238402

File tree

4 files changed

+442
-410
lines changed

4 files changed

+442
-410
lines changed

src/popup.html

100644100755
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ <h6 class="center">
4242
</div>
4343
</div>
4444
<div class="row">
45+
<div class="input-field col s12">
46+
<input placeholder="Your Project Name" id="projectName" type="text">
47+
<label for="projectName">Your Project Name</label>
48+
</div>
4549
<div class="input-field col s12">
4650
<input placeholder="Required for getting data from github" id="githubUsername" type="text">
4751
<label for="githubUsername">Your Github Username</label>

src/scripts/background.js

Whitespace-only changes.

src/scripts/main.js

100644100755
Lines changed: 99 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,148 +1,175 @@
11
/* global $,Materialize*/
22
var enableToggleElement = document.getElementById("enable");
33
var githubUsernameElement = document.getElementById("githubUsername");
4-
var lastWeekContributionElement=document.getElementById("lastWeekContribution");
4+
var projectNameElement = document.getElementById("projectName");
5+
var lastWeekContributionElement = document.getElementById("lastWeekContribution");
56
var startingDateElement = document.getElementById("startingDate");
67
var endingDateElement = document.getElementById("endingDate");
78
var showOpenLabelElement = document.getElementById("showOpenLabel");
89
var userReasonElement = document.getElementById("userReason");
9-
var gsoc = 0;//0 means gsoc. 1 means gsoc
10-
function handleBodyOnLoad(){
10+
var gsoc = 0; //0 means gsoc. 1 means gsoc
11+
function handleBodyOnLoad() {
1112
// prefill name
12-
chrome.storage.local.get(["githubUsername","enableToggle","startingDate","endingDate","showOpenLabel","showClosedLabel","userReason","lastWeekContribution","gsoc"],function(items){
13-
if(items.githubUsername){
14-
githubUsernameElement.value=items.githubUsername;
13+
chrome.storage.local.get(["githubUsername", "projectName", "enableToggle", "startingDate", "endingDate", "showOpenLabel", "userReason", "lastWeekContribution", "gsoc"], function(items) {
14+
if (items.githubUsername) {
15+
githubUsernameElement.value = items.githubUsername;
1516
}
16-
if(items.enableToggle){
17-
enableToggleElement.checked=items.enableToggle;
17+
if (items.projectName) {
18+
projectNameElement.value = items.projectName;
1819
}
19-
else if(items.enableToggle!==false){// undefined
20-
enableToggleElement.checked=true;
20+
if (items.enableToggle) {
21+
enableToggleElement.checked = items.enableToggle;
22+
} else if (items.enableToggle !== false) { // undefined
23+
enableToggleElement.checked = true;
2124
handleEnableChange();
2225
}
23-
if(items.endingDate){
26+
if (items.endingDate) {
2427
endingDateElement.value = items.endingDate;
2528
}
26-
if(items.startingDate){
29+
if (items.startingDate) {
2730
startingDateElement.value = items.startingDate;
2831
}
29-
if(items.showOpenLabel){
30-
showOpenLabelElement.checked= items.showOpenLabel;
31-
}
32-
else if(items.showOpenLabel!==false){// undefined
33-
showOpenLabelElement.checked=true;
32+
if (items.showOpenLabel) {
33+
showOpenLabelElement.checked = items.showOpenLabel;
34+
} else if (items.showOpenLabel !== false) { // undefined
35+
showOpenLabelElement.checked = true;
3436
handleOpenLabelChange();
3537
}
36-
if(items.userReason){
38+
if (items.userReason) {
3739
userReasonElement.value = items.userReason;
3840
}
39-
if(items.lastWeekContribution){
40-
lastWeekContributionElement.checked=items.lastWeekContribution;
41+
if (items.lastWeekContribution) {
42+
lastWeekContributionElement.checked = items.lastWeekContribution;
4143
handleLastWeekContributionChange();
42-
}
43-
else if(items.lastWeekContribution!==false){
44-
lastWeekContributionElement.checked=true;
44+
} else if (items.lastWeekContribution !== false) {
45+
lastWeekContributionElement.checked = true;
4546
handleLastWeekContributionChange();
4647
}
47-
if(items.gsoc==1){
48+
if (items.gsoc == 1) {
4849
handleGsocClick();
49-
}
50-
else{
50+
} else {
5151
handleCodeheatClick();
5252
}
5353
});
5454
}
55-
function handleEnableChange(){
55+
56+
function handleEnableChange() {
5657
var value = enableToggleElement.checked;
57-
chrome.storage.local.set({"enableToggle": value});
58+
chrome.storage.local.set({
59+
"enableToggle": value
60+
});
5861
}
59-
function handleStartingDateChange(){
62+
63+
function handleStartingDateChange() {
6064
var value = startingDateElement.value;
61-
console.log("starting date:");
62-
console.log(value);
63-
chrome.storage.local.set({"startingDate": value});
65+
chrome.storage.local.set({
66+
"startingDate": value
67+
});
6468
}
65-
function handleEndingDateChange(){
69+
70+
function handleEndingDateChange() {
6671
var value = endingDateElement.value;
67-
chrome.storage.local.set({"endingDate": value});
72+
chrome.storage.local.set({
73+
"endingDate": value
74+
});
6875
}
69-
function handleLastWeekContributionChange(keepPreviousValue=false){
76+
77+
function handleLastWeekContributionChange() {
7078
var value = lastWeekContributionElement.checked;
71-
if(value){
72-
startingDateElement.disabled=true;
73-
endingDateElement.disabled=true;
74-
endingDateElement.value=getToday();
75-
startingDateElement.value=getLastWeek();
79+
if (value) {
80+
startingDateElement.disabled = true;
81+
endingDateElement.disabled = true;
82+
endingDateElement.value = getToday();
83+
startingDateElement.value = getLastWeek();
7684
handleEndingDateChange();
7785
handleStartingDateChange();
86+
} else {
87+
startingDateElement.disabled = false;
88+
endingDateElement.disabled = false;
7889
}
79-
else{
80-
startingDateElement.disabled=false;
81-
endingDateElement.disabled=false;
82-
}
83-
chrome.storage.local.set({"lastWeekContribution": value});
90+
chrome.storage.local.set({
91+
"lastWeekContribution": value
92+
});
8493
}
85-
function getLastWeek(){
94+
95+
function getLastWeek() {
8696
var today = new Date();
87-
var noDays_to_goback=gsoc==0?7:1;
97+
var noDays_to_goback = gsoc == 0 ? 7 : 1;
8898
var lastWeek = new Date(today.getFullYear(), today.getMonth(), today.getDate() - noDays_to_goback);
8999
var lastWeekMonth = lastWeek.getMonth() + 1;
90100
var lastWeekDay = lastWeek.getDate();
91101
var lastWeekYear = lastWeek.getFullYear();
92-
var lastWeekDisplayPadded =("0000" + lastWeekYear .toString()).slice(-4) +"-" + ("00" + lastWeekMonth.toString()).slice(-2)+ "-" + ("00" + lastWeekDay .toString()).slice(-2);
102+
var lastWeekDisplayPadded = ("0000" + lastWeekYear.toString()).slice(-4) + "-" + ("00" + lastWeekMonth.toString()).slice(-2) + "-" + ("00" + lastWeekDay.toString()).slice(-2);
93103
return lastWeekDisplayPadded;
94104
}
95-
function getToday(){
105+
106+
function getToday() {
96107
var today = new Date();
97108
var Week = new Date(today.getFullYear(), today.getMonth(), today.getDate());
98109
var WeekMonth = Week.getMonth() + 1;
99110
var WeekDay = Week.getDate();
100111
var WeekYear = Week.getFullYear();
101-
var WeekDisplayPadded =("0000" + WeekYear .toString()).slice(-4) +"-" + ("00" + WeekMonth.toString()).slice(-2)+ "-" + ("00" + WeekDay .toString()).slice(-2);
112+
var WeekDisplayPadded = ("0000" + WeekYear.toString()).slice(-4) + "-" + ("00" + WeekMonth.toString()).slice(-2) + "-" + ("00" + WeekDay.toString()).slice(-2);
102113
return WeekDisplayPadded;
103114
}
104115

105-
106-
function handleGithubUsernameChange(){
116+
function handleGithubUsernameChange() {
107117
var value = githubUsernameElement.value;
108-
chrome.storage.local.set({"githubUsername": value});
118+
chrome.storage.local.set({
119+
"githubUsername": value
120+
});
109121
}
110-
function handleOpenLabelChange(){
111-
var value = showOpenLabelElement.checked;
112-
chrome.storage.local.set({"showOpenLabel": value});
113-
chrome.storage.local.set({"showClosedLabel": value});
122+
123+
function handleProjectNameChange() {
124+
var value = projectNameElement.value;
125+
chrome.storage.local.set({
126+
"projectName": value
127+
});
114128
}
115-
function handleClosedLabelChange(){
116-
var value = showClosedLabelElement.checked;
117-
chrome.storage.local.set({"showClosedLabel": value});
129+
130+
function handleOpenLabelChange() {
131+
var value = showOpenLabelElement.checked;
132+
chrome.storage.local.set({
133+
"showOpenLabel": value
134+
});
118135
}
119-
function handleUserReasonChange(){
136+
137+
function handleUserReasonChange() {
120138
var value = userReasonElement.value;
121-
chrome.storage.local.set({"userReason": value});
139+
chrome.storage.local.set({
140+
"userReason": value
141+
});
122142
}
123-
function handleCodeheatClick(){
124-
gsoc=0;
143+
144+
function handleCodeheatClick() {
145+
gsoc = 0;
125146
$("#codeheatTab").addClass("active");
126-
$('.tabs').tabs();
147+
$(".tabs").tabs();
127148
$("#noDays").text("7 days");
128-
chrome.storage.local.set({"gsoc": 0});
149+
chrome.storage.local.set({
150+
"gsoc": 0
151+
});
129152
handleLastWeekContributionChange();
130153
}
131-
function handleGsocClick(){
132-
gsoc=1;
154+
155+
function handleGsocClick() {
156+
gsoc = 1;
133157
$("#gsocTab").addClass("active");
134-
$('.tabs').tabs();
158+
$(".tabs").tabs();
135159
$("#noDays").text("1 day");
136-
chrome.storage.local.set({"gsoc": 1});
160+
chrome.storage.local.set({
161+
"gsoc": 1
162+
});
137163
handleLastWeekContributionChange();
138164
}
139165
enableToggleElement.addEventListener("change", handleEnableChange);
140166
githubUsernameElement.addEventListener("keyup", handleGithubUsernameChange);
167+
projectNameElement.addEventListener("keyup", handleProjectNameChange);
141168
startingDateElement.addEventListener("change", handleStartingDateChange);
142169
endingDateElement.addEventListener("change", handleEndingDateChange);
143170
lastWeekContributionElement.addEventListener("change", handleLastWeekContributionChange);
144171
showOpenLabelElement.addEventListener("change", handleOpenLabelChange);
145172
userReasonElement.addEventListener("keyup", handleUserReasonChange);
146173
document.addEventListener("DOMContentLoaded", handleBodyOnLoad);
147-
document.getElementById("codeheatTab").addEventListener("click",handleCodeheatClick);
148-
document.getElementById("gsocTab").addEventListener("click",handleGsocClick);
174+
document.getElementById("codeheatTab").addEventListener("click", handleCodeheatClick);
175+
document.getElementById("gsocTab").addEventListener("click", handleGsocClick);

0 commit comments

Comments
 (0)