Commit d0e38872f589034383ada603f19a4cbb936c257e
Merge branch 'labEx' into Develop
Showing
2 changed files
with
70 additions
and
37 deletions
400-SOURCECODE/AIAHTML5.Web/app/controllers/LabExercController.js
... | ... | @@ -65,14 +65,12 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
65 | 65 | |
66 | 66 | //to get all lab exercise modules from json files |
67 | 67 | $scope.getLabExerciseModules = function () { |
68 | - //debugger; | |
68 | + | |
69 | 69 | $scope.LabExerciseModules1 = null; |
70 | 70 | var labExerciseModulePath = '~/../content/data/json/le/labexercise.json'; |
71 | 71 | |
72 | 72 | DataService.getAnotherJson(labExerciseModulePath).then( |
73 | 73 | function (result) { |
74 | - //debugger; | |
75 | - //alert(JSON.stringify(result)); | |
76 | 74 | $scope.LabExerciseModules1 = result; |
77 | 75 | }, |
78 | 76 | function (error) { |
... | ... | @@ -450,11 +448,20 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
450 | 448 | |
451 | 449 | $scope.dragableId = $(this).attr("Id"); |
452 | 450 | $scope.a = $scope.dragableId; |
453 | - | |
451 | + | |
454 | 452 | console.log($scope.dragableId); |
455 | 453 | $scope.dragableText = $("#" + $scope.dragableId).text(); |
456 | - // alert($("#" + $scope.dragableId).text()); | |
457 | - | |
454 | + | |
455 | + if ($scope.dragableId.split('-')[0] != 'block') { | |
456 | + $scope.draggableAttribute = $("#" + $scope.dragableId).attr("draggedattr"); | |
457 | + $("#" + $scope.dragableId).removeAttr("draggedattr"); | |
458 | + } | |
459 | + else | |
460 | + { | |
461 | + | |
462 | + $scope.draggableAttribute = ''; | |
463 | + } | |
464 | + | |
458 | 465 | //if user drag already selected answer from one blankbox to another than it gets id of blank box so need to get answer |
459 | 466 | if ($scope.dragableId.indexOf('T') != -1) { |
460 | 467 | var optionText = document.getElementById($scope.dragableId).innerHTML; |
... | ... | @@ -498,8 +505,8 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
498 | 505 | var x = $("#droppable").offset(); |
499 | 506 | |
500 | 507 | var id = $(this).attr("id"); |
501 | - | |
502 | - | |
508 | + | |
509 | + | |
503 | 510 | var keywords = $location.search(); |
504 | 511 | |
505 | 512 | if ($.browser.msie) { |
... | ... | @@ -528,13 +535,13 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
528 | 535 | if ($scope.DraggedList != null) { |
529 | 536 | $.each($scope.DraggedList, function (inx1, value3) { |
530 | 537 | $scope.UserAttempt.push({ "BlankBoxName": id.split('-')[1], "OptionName": $scope.dragableId.split('-')[1] }); |
531 | - if ($scope.DraggedList[inx1].id == $scope.a.split('-')[1]) { | |
532 | - $scope.b = $scope.DraggedList[inx1].blockID; | |
533 | - $scope.DraggedList.splice(inx1, 1); | |
534 | - $('#' + $scope.b).css({ "display": "block", "color": "#000000!important" }); | |
535 | - $('#blockans-' + $scope.b.split('-')[1]).css("background-color", "transparent !important"); | |
536 | - // alert('removed from dropbox= '+'blockans-' + $scope.b.split('-')[1]); | |
537 | - } | |
538 | + if ($scope.DraggedList[inx1].DraggedAttr == $scope.draggableAttribute) { | |
539 | + // $scope.b = $scope.DraggedList[inx1].blockID; | |
540 | + $scope.DraggedList.splice(inx1, 1); | |
541 | + $('#' + $scope.draggableAttribute).css({ "display": "block", "color": "#000000!important" }); | |
542 | + $('#blockans-' + $scope.a.split('-')[1]).css("background-color", "transparent !important"); | |
543 | + } | |
544 | + | |
538 | 545 | }); |
539 | 546 | } |
540 | 547 | } |
... | ... | @@ -567,21 +574,13 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
567 | 574 | $.each(Options, function (inx, value2) { |
568 | 575 | if (Options[inx].BoxName == id.split('-')[1]) { |
569 | 576 | if ($scope.DraggedList != null) { |
570 | - //$.each($scope.DraggedList, function (inx1, value3) { | |
571 | - // if ($scope.DraggedList[inx1].Value == dataText) { | |
572 | - // $scope.DraggedList.splice(inx1, 1); | |
573 | - // } | |
574 | - //}); | |
575 | 577 | for (var i = 0; i <= $scope.DraggedList.length - 1; i++) { |
576 | - | |
577 | 578 | if ($scope.DraggedList[i].Value == undefined) { |
578 | 579 | i = 0; |
579 | 580 | continue; |
580 | 581 | } |
581 | - | |
582 | - | |
583 | - //if ($scope.DraggedList[i].Value == dataText) { | |
584 | - if ($scope.DraggedList[i].id == id.split('-')[1]) { | |
582 | + if ($scope.DraggedList[i].DraggedAttr == $scope.draggableAttribute) | |
583 | + { | |
585 | 584 | $scope.DraggedList.splice(i, 1); |
586 | 585 | } |
587 | 586 | } |
... | ... | @@ -589,10 +588,29 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
589 | 588 | // $scope.UserAttempt.push({ "BlankBoxName": id.split('-')[1], "OptionName": $scope.dragableId.split('-')[1] }); |
590 | 589 | //$scope.UserAttempt.push({ balnkBox: +$scope.dragableId.split('-')[1] }); |
591 | 590 | $scope.UserAttempt.push({ "BlankBoxName": id.split('-')[1], "OptionName": $scope.dragableId.split('-')[1] }); |
592 | - $scope.DraggedList.push({ "blockID": $scope.dragableId, "id": id.split('-')[1], "optionName": id.split('-')[1], "Value": dataText, "topcoord": Options[inx].topcoord, "leftcoord": Options[inx].leftcoord }); | |
591 | + if ($scope.dragableId.split('-')[0] == 'block') { | |
592 | + $scope.DraggedList.push({ "DraggedAttr": $scope.dragableId, "blockID": $scope.dragableId, "id": id.split('-')[1], "optionName": id.split('-')[1], "Value": dataText, "topcoord": Options[inx].topcoord, "leftcoord": Options[inx].leftcoord }); | |
593 | + } | |
594 | + else | |
595 | + { | |
596 | + $scope.DraggedList.push({ "DraggedAttr": $scope.draggableAttribute, "blockID": $scope.dragableId, "id": id.split('-')[1], "optionName": id.split('-')[1], "Value": dataText, "topcoord": Options[inx].topcoord, "leftcoord": Options[inx].leftcoord }); | |
597 | + } | |
593 | 598 | $('#' + $scope.dragableId).css("display", "none"); |
594 | 599 | $('#blockans-' + Options[inx].OptionNumber).css("background-color", "transparent !important"); |
600 | + if ($scope.dragableId.split('-')[0] == 'block') { | |
601 | + $timeout(function () { | |
602 | + $('#blockans-' + id.split('-')[1]).attr("draggedAttr", $scope.dragableId); | |
603 | + }, 350); | |
604 | + } | |
605 | + else | |
606 | + { | |
607 | + $timeout(function () { | |
608 | + $('#blockans-' + id.split('-')[1]).attr("draggedAttr", $scope.draggableAttribute); | |
609 | + }, 350); | |
610 | + } | |
611 | + console.log($scope.DraggedList); | |
595 | 612 | $scope.a = $scope.dragableId; |
613 | + | |
596 | 614 | } |
597 | 615 | }); |
598 | 616 | } |
... | ... | @@ -759,6 +777,8 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
759 | 777 | $("#messageModal").modal('show'); |
760 | 778 | } |
761 | 779 | ) |
780 | + | |
781 | + | |
762 | 782 | }; |
763 | 783 | |
764 | 784 | $scope.usersCorrectQuestData = []; |
... | ... | @@ -1071,21 +1091,33 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
1071 | 1091 | $('#' + blocks[j].id).css("display", "none"); |
1072 | 1092 | break; |
1073 | 1093 | } |
1074 | - | |
1094 | + | |
1075 | 1095 | }; |
1076 | - | |
1096 | + | |
1077 | 1097 | } |
1078 | 1098 | |
1079 | 1099 | } |
1080 | 1100 | } |
1081 | 1101 | |
1082 | - else { | |
1083 | - var dragList = lastQuestionDetails[0].DragList; | |
1084 | - angular.forEach(dragList, function (v, k) { | |
1085 | - $('#' + v.blockID).css("display", "none"); | |
1086 | - }) | |
1087 | - } | |
1102 | + } | |
1103 | + if (lastQuestionDetails != undefined && lastQuestionDetails.length > 0 && !isFromDB) { | |
1104 | + var dragList = lastQuestionDetails[0].DragList; | |
1105 | + var blocks = $("div[id*='block-']"); | |
1106 | + angular.forEach(dragList, function (v, k) { | |
1107 | + | |
1108 | + for (var j = 0; j < blocks.length; j++) { | |
1109 | + | |
1110 | + if ((blocks[j].innerHTML).toString() == v.Value) { | |
1111 | + if ($('#' + blocks[j].id).css('display').toLowerCase() == 'block') { | |
1112 | + $('#' + blocks[j].id).css("display", "none"); | |
1113 | + break; | |
1114 | + } | |
1115 | + | |
1116 | + }; | |
1088 | 1117 | |
1118 | + } | |
1119 | + //$('#' + v.blockID).css("display", "none"); | |
1120 | + }) | |
1089 | 1121 | } |
1090 | 1122 | var labQuestionData = new jinqJs() |
1091 | 1123 | .from($scope.LabExData.LabExercise[0].Questions) |
... | ... | @@ -1104,13 +1136,14 @@ function ($scope, $rootScope, pages, log, $http, $timeout, DataService, $filter, |
1104 | 1136 | .where('OptionTitle == ' + value.text) |
1105 | 1137 | .select(); |
1106 | 1138 | |
1107 | - | |
1139 | + | |
1108 | 1140 | var blockId = 'block-' + OptionList[0].OptionNumber; |
1109 | 1141 | if (OptionList != undefined && OptionList.length > 1 && blockIds.indexOf(blockId) != -1) { |
1110 | 1142 | blockId = 'block-' + OptionList[1].OptionNumber; |
1111 | 1143 | } |
1112 | 1144 | blockIds.push(blockId); |
1113 | - $scope.DraggedList.push({ "blockID": blockId, "id": value.blockbox, "optionName": value.blockbox, "Value": value.text, "topcoord": questionOptionBox[0].topcoord, "leftcoord": questionOptionBox[0].leftcoord }); | |
1145 | + console.log($scope.draggedIDArray); | |
1146 | + $scope.DraggedList.push({ "DraggedAttr": blockId, "blockID": blockId, "id": value.blockbox, "optionName": value.blockbox, "Value": value.text, "topcoord": questionOptionBox[0].topcoord, "leftcoord": questionOptionBox[0].leftcoord }); | |
1114 | 1147 | |
1115 | 1148 | |
1116 | 1149 | // $scope.DraggedList.push({ "id": value.blockbox, "optionName": value.blockbox, "Value": value.text, "topcoord": questionOptionBox[0].topcoord, "leftcoord": questionOptionBox[0].leftcoord }); | ... | ... |
400-SOURCECODE/AIAHTML5.Web/app/views/LabExerc/lab-exercises-detail.html
... | ... | @@ -52,7 +52,7 @@ |
52 | 52 | </div> |
53 | 53 | |
54 | 54 | <div ng-show="IsVisible" ng-repeat="optionbox in LabExerciseModules.OptionBox" droppable="true" class="droppable ui-droppable options" id="blockbox-{{optionbox.BoxName}}" ng-style="{'top':{{optionbox.topcoord}}, 'left':{{optionbox.leftcoord}},'position': 'absolute', 'width': '155px', 'height':'30px', 'border':'0px solid #333', 'background': '#E8E8E8' }">{{optionbox.Answervalue}}</div> |
55 | - <div draggable="true" ng-repeat="ans in DraggedList" droppable="true" class="droppable ui-droppable answerdroppable" id="blockans-{{ans.id}}" ng-style="{'top':{{ans.topcoord}}, 'left':{{ans.leftcoord}},'position': 'absolute', 'width': '158px', 'height':'30px', 'border':'0px solid #333', 'background': 'transparent','font-size': '12px','border-color':'#FF0000','padding-top':'4px','line-height':'1'}">{{ans.Value}}</div> | |
55 | + <div draggable="true" ng-repeat="ans in DraggedList" droppable="true" class="droppable ui-droppable answerdroppable" id="blockans-{{ans.id}}" draggedattr="{{ans.DraggedAttr}}" ng-style="{'top':{{ans.topcoord}}, 'left':{{ans.leftcoord}},'position': 'absolute', 'width': '158px', 'height':'30px', 'border':'0px solid #333', 'background': 'transparent','font-size': '12px','border-color':'#FF0000','padding-top':'4px','line-height':'1'}">{{ans.Value}}</div> | |
56 | 56 | </div> |
57 | 57 | |
58 | 58 | <div class="col-sm-12" style=" margin-top: 20px; min-height:100px;" id="divoptions" droppable="true"> | ... | ... |