Skip to content
This repository was archived by the owner on Aug 21, 2018. It is now read-only.

981 review answers (connects #981) #990

Closed
wants to merge 4 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions app/MyApp/app/Home-Urdu.css
Original file line number Diff line number Diff line change
Expand Up @@ -1252,3 +1252,8 @@ form > fieldset > ul > li.bbf-field.field-selectLanguage {
#addIndividualResource{
width:110px;
}
#CommunitySelect{
float: left;
margin-top: -45px;
margin-right: 15px;
}
7 changes: 6 additions & 1 deletion app/MyApp/app/Home.css
Original file line number Diff line number Diff line change
Expand Up @@ -1059,4 +1059,9 @@ form > fieldset > ul > li.bbf-field.field-selectLanguage {
.courseInfo{
width:97%;
margin-left:20px;
}
}
#CommunitySelect{
float: right;
margin-top: -45px;
margin-right: 15px;
}
131 changes: 88 additions & 43 deletions app/MyApp/app/Router.js
Original file line number Diff line number Diff line change
Expand Up @@ -420,25 +420,74 @@ $(function() {
var creditsView = new App.Views.CreditsLeaderView();
App.$el.children('.body').html('<div id="creditsMainTable"></div>');
$('#creditsMainTable').append('<h3>' + 'Course Credits' + '</h3>');
var CoursecommunityList = "";
if(App.configuration.get('type') == 'nation'){
$.ajax({
url: '/community/_design/bell/_view/getCommunityByCode',
type: 'GET',
dataType: "jsonp",
async: false,
success: function(json){
CoursecommunityList = '<option value="">'+App.languageDict.attributes.All+'</option>';
CoursecommunityList += '<option value="'+App.configuration.get('code')+'">'+App.configuration.get('name')+'</option>';
$.each(json.rows, function(rec, index) {
CoursecommunityList += '<option value="'+this.value.Code+'">'+this.value.Name+'</option>';
})
CoursecommunityList = '<select id="CommunitySelect">'+CoursecommunityList+'</select>';
$('.DropDownOptn').append(CoursecommunityList);
}
});
}
$('#creditsMainTable').append(CoursecommunityList);
$('#CommunitySelect').change(function(){
var selectedvalue = $('#CommunitySelect').val();
creditsView.addHeading();
var count=0;
var c1 = new App.Collections.membercourseprogresses();
c1.fetch({
async:false,
success: function (courseDocs) {
if(courseDocs.length>0){
var mem_list1=[]
var course_list1=[]
for(var i=0;i<courseDocs.length;i++) {
if(courseDocs.models[i].id != '_design/bell') {
mem_list1.push({"courseId": courseDocs.models[i].attributes.courseId, "MemberId" : courseDocs.models[i].attributes.memberId})
}
}
if(mem_list1.length > 0){
for(var i = 0 ; i < mem_list1.length; i++){
creditsView.courseId= mem_list1[i].courseId;
creditsView.mem_list1 = mem_list1[i];
}
//console.log(creditsView.courseId)
creditsView.randerTable(selectedvalue);
}
}
}
});
});
creditsView.addHeading();
var count=0;
var courses = new App.Collections.Courses();
var courses = new App.Collections.membercourseprogresses();
courses.fetch({
async:false,
success: function (courseDocs) {
if(courseDocs.length>0){
var mem_list=[]
var course_list=[]
for(var i=0;i<courseDocs.length;i++) {
if(courseDocs.models[i].get('_id') != '_design/bell') {
var doc = courseDocs.models[i];
var learnerIds = getCountOfLearners(doc.get('_id'), true);
console.log(learnerIds);
if(learnerIds.length>0){
creditsView.courseId=doc.get('_id');
creditsView.learnerIds = learnerIds;
creditsView.render();
}
if(courseDocs.models[i].id != '_design/bell') {
mem_list.push({"courseId": courseDocs.models[i].attributes.courseId, "MemberId" : courseDocs.models[i].attributes.memberId})
}
}
if(mem_list.length > 0){
for(var i = 0 ; i < mem_list.length; i++){
creditsView.courseId= mem_list[i].courseId;
creditsView.mem_list = mem_list;
}
creditsView.render();
}
}
}
});
Expand Down Expand Up @@ -522,7 +571,7 @@ $(function() {
{
if(learnerCollection.length > 0)
{
memberId = learnerCollection.models[0].get("_id");
memberId = learnerCollection[0].get("_id");
}
}
if(!memberId)
Expand All @@ -546,19 +595,18 @@ $(function() {
App.$el.children('.body').html('<div id="creditsTable" style = "margin-right:20px; margin-left:20px;"></div>');
var select = $("<select id='learnerSelector' onchange='getName($(this).val())'>");
var name, id;
learnerCollection.each(
function(member) {
var learnerName;
if(member.get('firstName') ) {
name = member.get('firstName')+ " " +member.get('lastName')
id = member.get('_id')
for(var i = 0; i < learnerCollection.length; i++){
var learnerName;
if(learnerCollection[i].get('firstName') ) {
name = learnerCollection[i].get('firstName')+ " " +learnerCollection[i].get('lastName')
id = learnerCollection[i].get('_id')

}
if(name ){
select.append("<option value="+id +"/"+courseId+">" +name+"</option>");
}
}

});
if(courseId && memberId){
select.val(memberId + '/' + courseId)
}
Expand Down Expand Up @@ -703,20 +751,26 @@ $(function() {
},

getLearnersList: function(courseId) {
var learnerIds = getCountOfAllLearnersOrIds(courseId, true);
var learnerModelIdes = ''
_.each(learnerIds, function(item) {
learnerModelIdes += '"' + item + '",';
})
if (learnerModelIdes != ''){
learnerModelIdes = learnerModelIdes.substring(0, learnerModelIdes.length - 1);
}
var membersColl = new App.Collections.Members();
membersColl.keys = encodeURI(learnerModelIdes)
membersColl.fetch({
async: false
});
return membersColl;
var mcp = new App.Collections.membercourseprogresses()
mcp.courseId = courseId
mcp.fetch({async:false});
if(mcp.length > 0){
var mem_list = []
for(var i=0;i<mcp.length;i++){
mem_list.push(mcp.models[i].attributes.memberId)
}
if(mem_list.length > 0){
var newmem_list = []
for(var i = 0; i < mem_list.length; i++){
var mem = new App.Models.Member({
_id: mem_list[i]
})
mem.fetch({async:false})
newmem_list.push(mem)
}
return newmem_list
}
}
},

showLearnersListForCredits: function (courseId) {
Expand Down Expand Up @@ -2391,17 +2445,8 @@ $(function() {
},

CourseStatistics: function (cId){
var course = new App.Models.Course();
course.id = cId
course.fetch({
async: false
})
var coursestatisticview = new App.Views.CoursesStatistics({
model:course,
attributes:{
courseid: cId
}
});
var coursestatisticview = new App.Views.CoursesStatistics();
coursestatisticview.courseId = cId;
coursestatisticview.render()
App.$el.children('.body').html('<div id="couarsestat"></div>');
$('#couarsestat').append('<div><h2>'+App.languageDict.attributes.Course_Progress_Statistics+'</h2></div>')
Expand Down
9 changes: 7 additions & 2 deletions app/MyApp/app/collections/membercourseprogresses.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,13 @@ $(function() {


url: function() {
var url = App.Server + '/membercourseprogress/_design/bell/_view/GetMemberCourseResult?key=["' + this.memberId + '","' + this.courseId + '"]&include_docs=true'
return url
if(this.courseId && this.memberId)
var url = App.Server + '/membercourseprogress/_design/bell/_view/GetMemberCourseResult?key=["' + this.memberId + '","' + this.courseId + '"]&include_docs=true'
else if(this.courseId)
var url = App.Server + '/membercourseprogress/_design/bell/_view/GetMemberByCourseID?key="' + this.courseId + '"&include_docs=true'
else
return App.Server + '/membercourseprogress/_all_docs?include_docs=true'
return url
},


Expand Down
70 changes: 35 additions & 35 deletions app/MyApp/app/views/CoursesStatistics.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,44 +18,43 @@ $(function() {
var stepid = []
var totalerrors = []
var totalFailStatus = []
var pqattempts=[]

for(var i = 0; i <this.model.attributes.members.length; i++){
var statisticscourseProgress = new App.Collections.membercourseprogresses()
statisticscourseProgress.memberId = this.model.attributes.members[i];
statisticscourseProgress.courseId = this.attributes.courseid;
statisticscourseProgress.fetch({
async:false
});
memberStep = statisticscourseProgress.models[0].attributes.stepsIds
membersstatus = statisticscourseProgress.models[0].attributes.stepsStatus
var pqattempts = statisticscourseProgress.models[0].attributes.pqAttempts
var member = statisticscourseProgress.models[0].attributes.memberId
var failarr = []
var arr = 0
var arrtotalerrors = []
for (var k = 0; k < memberStep.length; k++)
{
var count = 0
for(var j = 1; j <= pqattempts[k]; j++){
if (membersstatus[k][j] == "0")
{
count++
var statisticscourseProgress = new App.Collections.membercourseprogresses()
statisticscourseProgress.courseId = this.courseId
statisticscourseProgress.fetch({
async:false,
})
if(statisticscourseProgress.length > 0){
for (var i = 0; i < statisticscourseProgress.length; i++){
statisticscourseProgress.memberId = statisticscourseProgress.models[i].attributes.memberId;
memberStep = statisticscourseProgress.models[0].attributes.stepsIds
membersstatus = statisticscourseProgress.models[0].attributes.stepsStatus
pqattempts = statisticscourseProgress.models[0].attributes.pqAttempts
var failarr = []
var arr = 0
var arrtotalerrors = []
for (var k = 0; k < memberStep.length; k++){
var count = 0
for (var j = 0; j <= pqattempts[k]; j++){
if(membersstatus[k][j] == "0"){
count++
}
}
arr = count + arr
failarr.push(count)
}
arr =count + arr
failarr.push(count)
totalerrors.push(arr)
totalFailStatus.push(failarr)
var members = new App.Models.Member({
_id: statisticscourseProgress.models[i].attributes.memberId
})
members.fetch({
async: false
})
memberName.push(members.toJSON().firstName + ' ' + members.toJSON().lastName)
}
totalerrors.push(arr)
totalFailStatus.push(failarr)
var members = new App.Models.Member({
_id: member
})
members.fetch({
async: false
});
memberName.push(members.toJSON().firstName + ' ' + members.toJSON().lastName)
}
for (var y = 0; y < memberStep.length; y++) {
for (var y = 0; y < memberStep.length; y++) {
var courseSteps = new App.Models.CourseStep()
courseSteps.id = memberStep[y];
courseSteps.fetch({
Expand All @@ -67,7 +66,7 @@ $(function() {
var totalMemberstepError = []
for (var q = 0; q < memberStep.length; q++) {
var total = 0
for (var p = 0; p< this.model.attributes.members.length; p++) {
for (var p = 0; p< members.attributes.length; p++) {
total = total + totalFailStatus[p][q]
}
totalMemberstepError.push(total)
Expand All @@ -81,6 +80,7 @@ $(function() {
this.vars.Totalerrors = totalerrors;
this.vars.TotalmemberSteperror = totalMemberstepError
this.$el.html(_.template(this.template,this.vars))
}
}
})
})
Loading