<commit_before>import { Component } from '@angular/core';
import { FotoComponent } from '../foto/foto.component';
import { FormGroup, FormBuilder, Validators } from '@angular/forms';
import { FotoService } from '../foto/foto.service';
import { Http } from '@angular/http';
import { ActivatedRoute } from '@angular/router';

@Component({
    moduleId: module.id,
    selector: 'cadastro',
    templateUrl: './cadastro.component.html'
})
export class CadastroComponent {

    foto: FotoComponent = new FotoComponent();
    service: FotoService;
    meuForm: FormGroup;
    route: ActivatedRoute;
    mensagem: string = '';

    constructor(service: FotoService, fb: FormBuilder, route: ActivatedRoute){
        this.route = route;
        this.service = service;
        this.meuForm = fb.group({
            titulo: ['', Validators.compose([ Validators.required, Validators.minLength(5) ] )],
            urlFoto: ['',  Validators.required ],
            descricao: ['']

        })
        this.route.params.subscribe(params => {
            let id = params['id'];
            if(id) {
                this.service.buscaPorId(id)
                    .subscribe(
                        foto => this.foto = foto,
                        erro => console.log(erro));    
            }            
         });
    }


    cadastrar(event: Event){
       event.preventDefault();
        console.log(this.foto);

        this.service.cadastra(this.foto)
            .subscribe(() => {
                this.foto = new FotoComponent();
                console.log('Foto salva com sucesso');
                this.mensagem = 'Foto salva com sucesso';
            }, erro => {
                console.log(erro);
                this.mensagem = 'Não foi possível salvar a foto';
            });

    }
}<commit_msg>ajuste no editar e cadastrar<commit_after>import { Component } from '@angular/core';
import { FotoComponent } from '../foto/foto.component';
import { FormGroup, FormBuilder, Validators } from '@angular/forms';
import { FotoService } from '../foto/foto.service';
import { Http } from '@angular/http';
import { ActivatedRoute, Router } from '@angular/router';

@Component({
    moduleId: module.id,
    selector: 'cadastro',
    templateUrl: './cadastro.component.html'
})
export class CadastroComponent {

    foto: FotoComponent = new FotoComponent();
    service: FotoService;
    meuForm: FormGroup;
    route: ActivatedRoute;
    router: Router;
    mensagem: string = '';

    constructor(service: FotoService, fb: FormBuilder, route: ActivatedRoute, router: Router){
        this.router = router;
        this.route = route;
        this.service = service;
        this.meuForm = fb.group({
            titulo: ['', Validators.compose([ Validators.required, Validators.minLength(5) ] )],
            urlFoto: ['',  Validators.required ],
            descricao: ['']

        })
        this.route.params.subscribe(params => {
            let id = params['id'];
            if(id) {
                this.service.buscaPorId(id)
                    .subscribe(
                        foto => this.foto = foto,
                        erro => console.log(erro));    
            }            
         });
    }


    cadastrar(event: Event){
       event.preventDefault();
        console.log(this.foto);

        this.service.cadastra(this.foto)
            .subscribe(() => {
                console.log('Foto salva com sucesso');
                this.mensagem = 'Foto salva com sucesso';
                if(this.foto.id){
                    this.router.navigate(['']);
                }
                this.foto = new FotoComponent();
            }, erro => {
                console.log(erro);
                this.mensagem = 'Não foi possível salvar a foto';
            });

    }
}
{'fraction_non_alphanumeric': 0.1319462733737161, 'fraction_numerical': 0.0005267316302343956, 'mean_word_length': 1.8794541319181197, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 13, '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': '4420548', 'n_tokens_mistral': 1127, 'n_tokens_neox': 1077, 'n_words': 225}