Skip to content

Commit b85cc41

Browse files
Project Table Structure Change
- Now is unique to topic and subtopic so there can be more than one project with the same name...just has to be under a different topic/subtopic - Changed structure of projects table
1 parent 4cb827f commit b85cc41

2 files changed

Lines changed: 11 additions & 8 deletions

File tree

src/index.js

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,11 @@ db.run(`
4040
db.run(`
4141
CREATE TABLE IF NOT EXISTS projects (
4242
id INTEGER PRIMARY KEY,
43-
project TEXT UNIQUE,
44-
previousTime TIMESTAMP
43+
topicID INTEGER,
44+
subtopicID INTEGER,
45+
project TEXT,
46+
previousTime TIMESTAMP,
47+
UNIQUE(topicID, subtopicID, project)
4548
)
4649
`);
4750

@@ -265,8 +268,8 @@ ipcMain.handle('log-time-handler', async (req, data) => {
265268
const params = [data.topicID, data.subtopicID, data.project, data.time];
266269
const result = databaseHandler('run', sqlStatement, params);
267270

268-
const addTopic = await addProject(data.project);
269-
if (addTopic === 'duplicate'){
271+
const addProjectResult = await addProject(data.topicID, data.subtopicID, data.project);
272+
if (addProjectResult === 'duplicate'){
270273
updateProjectPreviousClock(data.project);
271274
}
272275

@@ -357,9 +360,9 @@ async function calculateTotalTime(entries) {
357360
return totalTime.toFixed(1);
358361
}
359362

360-
async function addProject(name){
361-
const sqlStatement = `INSERT INTO projects (project, previousTime) VALUES (?, CURRENT_TIMESTAMP)`;
362-
const params = [name];
363+
async function addProject(topic, subtopic, name){
364+
const sqlStatement = `INSERT INTO projects (topicID, subtopicID, project, previousTime) VALUES (?, ?, ?, CURRENT_TIMESTAMP)`;
365+
const params = [topic, subtopic, name];
363366
const result = databaseHandler('run', sqlStatement, params);
364367
return result;
365368
}
@@ -369,7 +372,6 @@ ipcMain.handle('project-handler', async (req, data) => {
369372
switch (data.request){
370373
case 'Get':
371374
const projects = await getProjects();
372-
console.log(projects);
373375
return projects;
374376
}
375377
});

src/recentProjects.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
const projectListDiv_el = document.getElementById('projectListDiv');
22

33
function populateRecentProjects(){
4+
console.log(activeTopics);
45
console.log(activeProjects);
56

67
activeProjects.forEach(element => {

0 commit comments

Comments
 (0)