angular.module("portal.controllers").controller("articleFeedbackController",["articleFeedbackService","$http",function(articleFeedbackService,$http){var articleFeedbackController=this;var browserSpecifications=[];var labelClass,feedbackResponseId;var pAuth=Liferay.authToken;articleFeedbackController.browserInfo=browserInfo();articleFeedbackController.feedbackModel={experienceRating:"0",feedbackAreaId:0,textResponse:"",isHelpful:"",pageURL:Liferay.ThemeDisplay.getPortalURL()+Liferay.currentURL,browser:articleFeedbackController.browserInfo,
feedbackType:"A"};articleFeedbackController.feedbackPressed=feedbackPressed;articleFeedbackController.feedbackSubmit=feedbackSubmit;articleFeedbackController.respondedFeedback=false;articleFeedbackController.showbuttons=true;function browserInfo(){for(var browserInfo in Liferay.Browser)if(browserInfo.charAt(0)==="i")if(Liferay.Browser[browserInfo]())browserSpecifications.push(browserInfo);return browserSpecifications.join()}function changeClass(){labelClass=angular.element(document.querySelector("#part"));
labelClass.removeClass("initial")}function feedbackPressed(feedback){articleFeedbackController.showbuttons=false;if(feedback==="yes"){articleFeedbackController.respondedFeedback=true;changeClass();feedbackSubmit()}else{articleFeedbackController.feedbackModel.isHelpful="N";changeClass();articleFeedbackService.addFeedbackResponse(articleFeedbackController.feedbackModel,pAuth).then(function(data){feedbackResponseId=data.feedbackResponseId;articleFeedbackController.respondedFeedback=false})}}function feedbackSubmit(){if(articleFeedbackController.respondedFeedback){articleFeedbackController.feedbackModel.isHelpful=
"Y";articleFeedbackService.addFeedbackResponse(articleFeedbackController.feedbackModel,pAuth)}else articleFeedbackService.updateFeedbackResponse(articleFeedbackController.feedbackModel,pAuth,feedbackResponseId).then(function(){articleFeedbackController.respondedFeedback=true})}}]);
angular.module("portal.services").factory("articleFeedbackService",["$resource","$http","$window",function($resource,$http,$window){return{addFeedbackResponse:addFeedbackResponse,updateFeedbackResponse:updateFeedbackResponse};function addFeedbackResponse(obj,pAuth){var payload=new FormData;payload.append($window.portletNamespace+"pageUrl",obj.pageURL);payload.append($window.portletNamespace+"browser",obj.browser);payload.append($window.portletNamespace+"experienceRating",obj.experienceRating);payload.append($window.portletNamespace+
"feedbackAreaId",obj.feedbackAreaId);payload.append($window.portletNamespace+"isHelpful",obj.isHelpful);payload.append($window.portletNamespace+"feedbackType",obj.feedbackType);payload.append($window.portletNamespace+"textResponse",obj.textResponse);var config={method:"POST",url:$window.submitUrl,data:payload,transformRequest:angular.identity,headers:{"Content-Type":undefined}};return $http(config).then(function(response){return response.data},function(error){console.log(error)})}function updateFeedbackResponse(obj,
pAuth,feedbackResponseId){var payload=new FormData;payload.append($window.portletNamespace+"feedbackResponseId",feedbackResponseId);payload.append($window.portletNamespace+"experienceRating",obj.experienceRating);payload.append($window.portletNamespace+"isHelpful",obj.isHelpful);payload.append($window.portletNamespace+"textResponse",obj.textResponse);var config={method:"POST",url:$window.submitUrl,data:payload,transformRequest:angular.identity,headers:{"Content-Type":undefined}};return $http(config).then(function(response){return response.data},
function(error){console.log(error)})}}]);
