Yangman - URL data fix 12/42612/6
authorLubomir Balogh <lubalogh@cisco.com>
Wed, 27 Jul 2016 08:56:39 +0000 (10:56 +0200)
committerLubomir Balogh <lubalogh@cisco.com>
Tue, 9 Aug 2016 12:18:26 +0000 (14:18 +0200)
- filling data in node id input

Change-Id: I53761c8243945c730ecfe48911ac23a4d6b33ad4
Signed-off-by: Lubomir Balogh <lubalogh@cisco.com>
modules/yangman-resources/src/main/resources/yangman/controllers/module-detail.controller.js
modules/yangman-resources/src/main/resources/yangman/controllers/request-header.controller.js
modules/yangman-resources/src/main/resources/yangman/controllers/yangman.controller.js
modules/yangman-resources/src/main/resources/yangman/views/rightpanel/request-header.tpl.html

index d58b42734841e2bb5b72de39f27503fe4a01ef77..7d7bddc31d95038fc7ad5110f66d50e4926fd452 100644 (file)
@@ -5,9 +5,9 @@ define([
 
     angular.module('app.yangman').controller('ModuleDetailCtrl', ModuleDetailCtrl);
 
-    ModuleDetailCtrl.$inject = ['$scope', '$rootScope', '$timeout', 'YangmanService', 'PathUtilsService'];
+    ModuleDetailCtrl.$inject = ['$scope', '$rootScope', '$timeout', 'YangmanService'];
 
-    function ModuleDetailCtrl($scope, $rootScope, $timeout, YangmanService, PathUtilsService) {
+    function ModuleDetailCtrl($scope, $rootScope, $timeout, YangmanService) {
         var moduleDetail = this;
 
         moduleDetail.treeApis = [];
@@ -42,9 +42,8 @@ define([
 
             if (apiIndex !== undefined && subApiIndex !== undefined ) {
 
-                $scope.setApi($scope.apis[apiIndex], $scope.apis[apiIndex].subApis[subApiIndex], true);
+                $scope.setApi($scope.apis[apiIndex], $scope.apis[apiIndex].subApis[subApiIndex], true, true);
                 $scope.setNode($scope.selectedSubApi.node);
-                PathUtilsService.clearPath($scope.selectedSubApi.pathArray);
                 $scope.clearCM();
             }
         }
index ba17487cf9a801edc26b12ce61d53f954c407dc6..4bc167948ed3f51423f61cc8f04e3632476c801a 100644 (file)
@@ -16,6 +16,8 @@ define([
 
         requestHeader.allOperations = [constants.OPERATION_GET, constants.OPERATION_POST, constants.OPERATION_PUT, constants.OPERATION_DELETE];
         requestHeader.constants = constants;
+        requestHeader.urlChanged = false;
+        requestHeader.executedOperation = null;
         requestHeader.selectedOperationsList = [];
         requestHeader.selectedOperation = null;
         requestHeader.requestUrl = '';
@@ -128,7 +130,11 @@ define([
          */
         function changeDataType(){
             $scope.switchSection('rightPanelSection', requestHeader.selectedShownDataType);
-            requestHeader.setRequestUrl();
+
+            if(!$scope.node || requestHeader.urlChanged) {
+                requestHeader.setRequestUrl();
+                requestHeader.urlChanged = false;
+            }
 
             // if changing to json, fill codemirror data
             if ( requestHeader.selectedShownDataType === constants.DISPLAY_TYPE_REQ_DATA && $scope.node ){
@@ -179,7 +185,13 @@ define([
                         );
                     },
                     default: function (){
-                        var dataType = requestHeader.selectedOperation === constants.OPERATION_GET ? constants.REQUEST_DATA_TYPE_RECEIVED : 'SENT';
+                        var dataType;
+                        if(requestHeader.executedOperation) {
+                            dataType = requestHeader.executedOperation === constants.OPERATION_GET ? constants.REQUEST_DATA_TYPE_RECEIVED : 'SENT';
+                        }
+                        else {
+                            dataType = requestHeader.selectedOperation === constants.OPERATION_GET ? constants.REQUEST_DATA_TYPE_RECEIVED : 'SENT';
+                        }
 
                         $scope.rootBroadcast('YANGMAN_GET_CODEMIRROR_DATA_' + dataType, params);
                         return params.reqData ? angular.fromJson(params.reqData) : {};
@@ -365,6 +377,7 @@ define([
                     executeReqSuccCbk,
                     executeReqErrCbk
                 );
+                requestHeader.executedOperation = requestHeader.selectedOperation;
             } else {
                 $scope.rootBroadcast(
                     'YANGMAN_SET_ERROR_MESSAGE',
@@ -479,13 +492,14 @@ define([
                 $scope.selectedSubApi.pathArray.indexOf(pathElem) === ($scope.selectedSubApi.pathArray.length - 1)) {
                 PathUtilsService.fillListNode($scope.node, identifier.label, identifier.value);
             }
+
+            requestHeader.urlChanged = true;
         }
 
         /**
          * Check data before executin operations
          */
         function prepareDataAndExecute(cbk){
-
             if ( requestHeader.requestUrl.length ) {
 
                 if ( requestHeader.selectedShownDataType === constants.DISPLAY_TYPE_REQ_DATA ) {
index 0f0c24201d83c222f348486be20d1fbb38d2c3b6..107fe1fded57ab0bf9d9f5143ad9d6c098fbd94e 100644 (file)
@@ -293,10 +293,14 @@ define([
          * @param api
          * @param subApi
          */
-        function setApi(api, subApi, setUrl){
+        function setApi(api, subApi, setUrl, clearPathArray){
             $scope.selectedApi = api;
             $scope.selectedSubApi = subApi;
 
+            if ( clearPathArray ){
+                PathUtilsService.clearPath($scope.selectedSubApi.pathArray);
+            }
+
             $scope.$broadcast('SET_SEL_OPERATIONS', subApi ? $scope.selectedSubApi.operations : [], setUrl);
         }
 
index 4b9007773bd51527217c150a4aa40d932a386a21..23e01d3213d08c3f1a72621f2a2cc9b38837280f 100644 (file)
@@ -44,7 +44,8 @@
                            ng-change="requestHeader.fillNodeData(pathElem, identifier)"
                            ng-model="identifier.value"
                            aria-label="{{identifier.value}}"
-                           ng-class="{'md-has-error': !identifier.value.length}">
+                           ng-class="{'md-has-error': !identifier.value.length}"
+                           spellcheck="false">
                     <!-- input error message -->
                     <div ng-show="!identifier.value.length" class="md-custom-error">
                         {{'YANGMAN_INPUT_REQUIRED' | translate}}