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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
var users_data = require('./users_data.json');
var exams_data = require('./exams_data.json');
var dbFile = require("../node_simple"); // after modifications
// var dbFile = require("../node_simple_backup"); // original file
var users_fields = format_users();
var exams_info = format_exams();
//console.log(exams_info);
// populate_users(users_fields);
dbFile.setupDB(function (success, mssg) {
// begin
console.log(mssg);
populate_users(users_fields);
// add_same_user(users_fields, 0);
// remove_all_users(users_fields);
// populate_exams(exams_info);
});
function populate_exams(exam_info) {
for (var i = 0; i < exam_info[0].length; i++) {
dbFile.add_exam(exam_info[0][i],exam_info[1][i], function (success, mssg) {
console.log(mssg);
})
}
}
function populate_users(users_fields) {
for (var i = 0; i < users_fields.length; i++) {
dbFile.add_user(users_fields[i], function (success, fail, mssg) {
if (success && !fail) {
console.log(mssg);
}
})
}
}
function add_same_user(users_fields, index) {
var rand_user_fields = users_fields[index];
dbFile.add_user(rand_user_fields, function (success, fail, mssg) {
if (!success && !fail) {
console.log(mssg);
}
});
}
function remove_all_users(users_fields) {
for (var i = 0; i < users_fields.length; i++) {
dbFile.remove_user(users_fields[i][1], function (success, mssg) {
console.log(mssg);
});
// console.log(users_fields[i][1]);
}
}
// console.log(users_fields);
// format users to proper form
function format_users() {
var users_fields = [];
users_data.forEach(function (user) {
var fields = [];
fields.push(user.email);
fields.push(user.user_name);
fields.push(user.name.first);
fields.push(user.name.last);
fields.push("u of t"); //university
fields.push("CS"); // departmnet
fields.push(user.password);
fields.push(user.phone);
// console.log(fields);
users_fields.push(fields);
});
return users_fields;
}
function format_exams() {
var exams_fields = [];
var questions_arrays = [];
exams_data.forEach(function (exam) {
var fields = [];
var question_array = [];
fields.push(exam.course_code);
fields.push(exam.year);
fields.push(exam.term);
fields.push(exam.type);
fields.push(exam.instructors);
fields.push(exam.page_count);
fields.push(exam.questions_count);
fields.push(new Date().toString());
fields.push(exam.uploaded_by);
// create questions array
for (var j = 1; j <= exam.questions_count; j++) {
var question = "this is question " + j;
question_array.push(question);
}
/* var Data =
{
course_code: fields[0],
year: fields[1],
term: fields[2],
type: fields[3],
instructors: fields[4],
page_count: fields[5],
questions_count: fields[6],
questions_list: [],
upload_date: fields[7],
uploaded_by: fields[8]
};*/
/* "id": 1,
"serial": 321,
"course_code": "CSC321",
"year": 2014,
"term": "winter",
"type": "final",
"instructors": [
"Sandra Crane",
"Mcintyre Holmes"
],
"page_count": 17,
"questions_count": 17,
"uploaded_by": "admin0"*/
exams_fields.push(fields);
questions_arrays.push(question_array);
});
return [exams_fields, questions_arrays];
}
//var uri = 'mongodb://localhost:27017/db';
// console.log(courses_data);
|