mirror of https://github.com/akveo/blur-admin
fixing question display + answers sending
parent
0e7c94792a
commit
fcee1ec7c8
|
@ -21,8 +21,27 @@
|
|||
vm.surveys = data;
|
||||
$log.info("Got the survey data",data);
|
||||
vm.survey = getSurvey();
|
||||
console.log(vm.surveys);
|
||||
console.log(vm.survey);
|
||||
//building forms elements
|
||||
vm.forms = [];
|
||||
angular.forEach(vm.survey.elements, function(element, key) {
|
||||
|
||||
angular.forEach(vm.survey.list.members, function(member, key) {
|
||||
if(member._id != vm.activeMemberId) {
|
||||
vm.forms[member._id] = {};
|
||||
//vm.forms[member._id].$element_id = false;
|
||||
/*var form = [];
|
||||
form[element._id] = [];
|
||||
vm.forms.push(form);
|
||||
var input = [];
|
||||
input[element._id] = false;
|
||||
vm.forms[member._id].push(input);*/
|
||||
}
|
||||
|
||||
//.push(k + ': ' + member);
|
||||
});
|
||||
});
|
||||
console.log(vm.survey);
|
||||
console.log(vm.forms);
|
||||
}, function (error){
|
||||
$log.error(error);
|
||||
});
|
||||
|
@ -38,11 +57,19 @@
|
|||
function activate(){
|
||||
vm.surveys = [];
|
||||
vm.survey = [];
|
||||
vm.activeMemberId = $stateParams.member_id;
|
||||
loadSurveys();
|
||||
console.log(vm.activeMemberId)
|
||||
|
||||
|
||||
}
|
||||
|
||||
vm.submit = function(form){
|
||||
//$scope.submitted = true;
|
||||
alert("Angular is Awesome!!!");
|
||||
console.log('submit', form);
|
||||
};
|
||||
|
||||
activate();
|
||||
|
||||
|
||||
|
|
|
@ -10,27 +10,33 @@
|
|||
<div class="section-block bold-text ng-scope"><p ng-bind-html="vm.survey.description"></p></div>
|
||||
|
||||
<div class="separator"></div>
|
||||
|
||||
<ba-wizard>
|
||||
<ba-wizard-step title="{{ m.name }}" ng-repeat="m in vm.survey.list.members" ng-if='m._id != vm.activeMemberId' ng-init="memberId = m._id" form="vm.forms[memberId]" >
|
||||
<form name="vm.forms[memberId]" novalidate>
|
||||
<ng-form name="innerForm">
|
||||
<div class="member-survey">
|
||||
<div class="separator"></div>
|
||||
<div id="{{e.id}}" class="form-group answer" ng-repeat="e in vm.survey.elements"
|
||||
ng-init="elementId = vm.survey.id+'_'+memberId+'_'+vm.activeMemberId+'_'+e._id" ng-class="{'has-error': innerForm[elementId].$invalid && (vm.forms[memberId].$submitted)}">
|
||||
<p>{{ e.text }}</p>
|
||||
<label ng-class="el.multiple ? 'custom-checkbox radio-checkbox nowrap' : 'custom-radio radio-inline nowrap'" ng-repeat="el in e.items">
|
||||
<input ng-attr-type="{{el.multiple? 'checkbox' : 'radio'}}" name="{{elementId}}" ng-model="vm.innerForm[elementId].$viewValue" ng-value="el.value" ng-attr-required="{{el.required}}">
|
||||
<span>{{ el.value }}</span>
|
||||
</label>
|
||||
<br><br>
|
||||
<div class="form-group" ng-if="e.hasComment">
|
||||
<label for="{{ e._id }}_comment">{{e.commentLabel}}</label>
|
||||
<input type="text" class="form-control" name="{{ elementId }}_comment" ng-model="vm.innerForm[elementId].comment" placeholder="..." ng-attr-required="{{e.commentIsRequired}}">
|
||||
</div>
|
||||
<div class="separator"></div>
|
||||
</div>
|
||||
</div>
|
||||
</ng-form>
|
||||
</form>
|
||||
</ba-wizard-step>
|
||||
|
||||
</ba-wizard>
|
||||
|
||||
<div id="{{e.id}}" class="form-group answer" ng-repeat="e in vm.survey.elements">
|
||||
<p>{{ e.text }}</p>
|
||||
<label ng-class="el.multiple ? 'custom-checkbox radio-checkbox nowrap' : 'custom-radio radio-inline nowrap'" ng-repeat="el in e.items">
|
||||
<input ng-attr-type="{{el.multiple? 'checkbox' : 'radio'}}" name="{{ e._id }}" id="{{ e._id }}_{{ el._id }}" value="{{ el.value }}" ng-required="el.required">
|
||||
<span>{{ el.value }}</span>
|
||||
</label>
|
||||
<br><br>
|
||||
<div class="form-group" ng-if="e.hasComment">
|
||||
<label for="input01">{{e.commentLabel}}</label>
|
||||
<input type="text" class="form-control" id="{{ e._id }}_comment" name="{{ e._id }}_comment" placeholder="..." >
|
||||
</div>
|
||||
<div class="separator"></div>
|
||||
</div>
|
||||
|
||||
<div class="btn-group">
|
||||
<button ng-click="submitSurvey()" class="btn btn-success btn-lg">
|
||||
Send
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
function routeConfig($stateProvider) {
|
||||
$stateProvider
|
||||
.state('viewer', {
|
||||
url: '/viewer/:survey_id',
|
||||
url: '/viewer/:survey_id/:member_id',
|
||||
title: 'Viewer',
|
||||
templateUrl: 'app/pages/viewer/viewer.html',
|
||||
controller: 'ViewerPageCtrl as vm',
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
.directive('baWizardStep', baWizardStep);
|
||||
|
||||
/** @ngInject */
|
||||
function baWizardStep() {
|
||||
function baWizardStep($http) {
|
||||
return {
|
||||
restrict: 'E',
|
||||
transclude: true,
|
||||
|
@ -38,7 +38,36 @@
|
|||
}
|
||||
|
||||
function submit() {
|
||||
var apiBaseUrl = "http://localhost:9000"
|
||||
var endpoint = apiBaseUrl + "/answers";
|
||||
|
||||
$scope.form && $scope.form.$setSubmitted(true);
|
||||
if($scope.form && $scope.form.$invalid == false) {
|
||||
//console.log("inner", $scope.form.innerForm);
|
||||
angular.forEach($scope.form.innerForm, function(val, key) {
|
||||
if((key.indexOf("_") !== -1) && (key.indexOf("_comment") == -1)) {
|
||||
var res = key.split("_");
|
||||
//console.log("res", res);
|
||||
//console.log("val", val);
|
||||
var commentKey = key + "_comment";
|
||||
var answer = {
|
||||
"value" : val.$viewValue,
|
||||
"comment" : $scope.form.innerForm[commentKey].$viewValue,
|
||||
"survey" : res[0],
|
||||
"memberEvaluated" : res[1],
|
||||
"memberAsked" : res[2]
|
||||
}
|
||||
console.log(answer);
|
||||
/*$http.post(endpoint, answer).success(function(data) {
|
||||
console.log(data.data);
|
||||
//return response.data;
|
||||
}).error(function(msg, code) {
|
||||
//deferred.reject(msg);
|
||||
});*/
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
function isComplete() {
|
||||
|
|
Loading…
Reference in New Issue