<commit_before>angular.module('MyApp', [])
    .controller('indexCtrl', ['$scope', function($scope) {
 
            $scope.aCoFuncionarios = [];
            $scope.aCoFuncionariosEdit = [];
 
            var Funcionario = function() {
                var _nome = "";
                var _idade = "";
                var _profissao = "";
                var _dataCadastro = new Date();
 
                return {
                    nome: _nome,
                    idade: _idade,
                    profissao: _profissao,
                    dataCadastro: _dataCadastro
                }
            }

            $scope.aFuncionario = new Funcionario();

            var FuncionarioEdt = function() {
                var _nome = "";
                var _idade = "";
                var _profissao = "";
                var _dataCadastro = new Date();
 
                return {
                    nome: _nome,
                    idade: _idade,
                    profissao: _profissao,
                    dataCadastro: _dataCadastro
                }
            }

            $scope.aFuncionarioEdt = new FuncionarioEdt();

            var Acoes = function () {

            	var _btnShow = false;
            	var _tbodyShow = false;
            	var _bloqueado = false;
            	var _indexLinha = "";

            	return {
            		btnShow: _btnShow,
            		tbodyShow: _tbodyShow,
            		bloqueado: _bloqueado,
            		indexLinha: _indexLinha,
            	}
            }
 
            $scope.aAcoes = new Acoes();
 
            $scope.adicionarFuncionario = function() {
                $scope.aCoFuncionarios.unshift($scope.aFuncionario);
                $scope.aFuncionario = new Funcionario();
            };
 
            $scope.removerFuncionario = function(index) {
                $scope.aCoFuncionarios.splice(index, 1);
            };
 
            $scope.limparDadosForm = function() {
                $scope.aFuncionario = new Funcionario();
            };

            $scope.alterarFuncionario = function(funcionario, index) {
                console.log(funcionario);
                $scope.aAcoes.tbodyShow = true;
                $scope.aAcoes.btnShow = false;
                $scope.aAcoes.bloqueado = true;
                $scope.aCoFuncionariosEdit = funcionario;
                $scope.aAcoes.indexLinha = index;
            };

            $scope.salvarAlteracao = function() {
            	$scope.aAcoes.tbodyShow = false;
            	$scope.aAcoes.btnShow = true;
            	$scope.aAcoes.bloqueado = false;
            	$scope.aCoFuncionarios.splice($scope.aAcoes.indexLinha, 1);
            	 console.log($scope.aCoFuncionariosEdit);
            	 $scope.aCoFuncionarios.unshift($scope.aFuncionarioEdt);
                 $scope.aFuncionarioEdt = new FuncionarioEdt();
                // $scope.aCoFuncionarios.splice(index, 1);
            };
        }
])
 
    .directive('somenteNumeros', function () {
        return {
            require: '?ngModel',
            link: function (scope, element, attrs, ngModelCtrl) {
                if (!ngModelCtrl) {
                    return;
                }
 
                ngModelCtrl.$parsers.push(function (val) {
                    var clean = val.replace(/\D/g, '');
                    if (val !== clean) {
                        ngModelCtrl.$setViewValue(clean);
                        ngModelCtrl.$render();
                    }<commit_msg>Update app.js<commit_after>angular.module('MyApp', [])
    .controller('indexCtrl', ['$scope', function($scope) {
            //Coleção de Funcionarios (linhas da GRID)
            $scope.aCoFuncionarios = [];
 
            var Funcionario = function() {
                var _nome = "";
                var _idade = "";
                var _profissao = "";
                var _dataCadastro = new Date();
 
                return {
                    nome: _nome,
                    idade: _idade,
                    profissao: _profissao,
                    dataCadastro: _dataCadastro
                }
            }

            $scope.aFuncionario = new Funcionario();

            var FuncionarioEdt = function() {
                var _nome = "";
                var _idade = "";
                var _profissao = "";
                var _dataCadastro = new Date();
 
                return {
                    nome: _nome,
                    idade: _idade,
                    profissao: _profissao,
                    dataCadastro: _dataCadastro
                }
            }

            $scope.aFuncionarioEdt = new FuncionarioEdt();

            var Acoes = function () {

            	var _btnShow = false;
            	var _tbodyShow = false;
            	var _bloqueado = false;
            	var _indexLinha = "";

            	return {
            		btnShow: _btnShow,
            		tbodyShow: _tbodyShow,
            		bloqueado: _bloqueado,
            		indexLinha: _indexLinha,
            	}
            }
 
            $scope.aAcoes = new Acoes();
 
            $scope.adicionarFuncionario = function() {
                $scope.aCoFuncionarios.unshift($scope.aFuncionario);
                $scope.aFuncionario = new Funcionario();
            };
 
            $scope.removerFuncionario = function(index) {
                $scope.aCoFuncionarios.splice(index, 1);
            };
 
            $scope.limparDadosForm = function() {
                $scope.aFuncionario = new Funcionario();
            };

            $scope.alterarFuncionario = function(funcionario, index) {
                $scope.aAcoes.tbodyShow = true;
                $scope.aAcoes.btnShow = false;
                $scope.aAcoes.bloqueado = true;
                $scope.aAcoes.indexLinha = index;

                gravarLinha(funcionario)
            };

            var gravarLinha = function (funcionario){
                    $scope.aFuncionarioEdt.nome = funcionario.nome;
                    $scope.aFuncionarioEdt.idade = funcionario.idade;
                    $scope.aFuncionarioEdt.profissao = funcionario.profissao;
            };

            $scope.salvarAlteracao = function() {
            	$scope.aAcoes.tbodyShow = false;
            	$scope.aAcoes.btnShow = true;
            	$scope.aAcoes.bloqueado = false;

            	$scope.aCoFuncionarios.splice($scope.aAcoes.indexLinha, 1);
            	$scope.aCoFuncionarios.unshift($scope.aFuncionarioEdt);
                $scope.aFuncionarioEdt = new FuncionarioEdt();
            };

            $scope.cancelarAlteracao = function() {
                $scope.aFuncionarioEdt = new FuncionarioEdt();
                $scope.aAcoes.tbodyShow = false;
                $scope.aAcoes.bloqueado = false;
            };
        }
])
 
 //diretiva que permite apenas numeros no input
    .directive('somenteNumeros', function () {
        return {
            require: '?ngModel',
            link: function (scope, element, attrs, ngModelCtrl) {
                if (!ngModelCtrl) {
                    return;
                }
 
                ngModelCtrl.$parsers.push(function (val) {
                    var clean = val.replace(/\D/g, '');
                    if (val !== clean) {
                        ngModelCtrl.$setViewValue(clean);
                        ngModelCtrl.$render();
                    }
{'fraction_non_alphanumeric': 0.1005860706010631, 'fraction_numerical': 0.0006814774430966335, 'mean_word_length': 1.2433506572913482, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3971547', 'n_tokens_mistral': 2183, 'n_tokens_neox': 2027, 'n_words': 331}