﻿import { Component, Input, Output, EventEmitter } from '@angular/core';
import { TfabricaCrudField } from './tfabrica.crud.field.model';


@Component({
    selector: 't-crud-datatable',
    template: require('./tfabrica.crud.datatable.component.html')
})
export class TfabricaDataTableComponent
{
    private rowsOut: any[];
    private filterField: TfabricaCrudField;

    @Input() rows: any[];
    @Input() fieldsToDisplay: TfabricaCrudField[];
    @Input() filterEnabled: boolean;
    @Input() paginateItems: number;
    @Output() onRowClicked = new EventEmitter<Object>();

    constructor()
    {
        this.rowsOut = new Array();
        this.filterField = new TfabricaCrudField;
        this.paginateItems = 0;
        this.filterEnabled = false;
        //this.rowsOut = 
    }
  
    public onEnter(field: TfabricaCrudField)
    {
        this.filterField = field;
        console.log("OnEnter DataTableComponent field")
        console.log(field);
        console.log("this.filterField");
        console.log(this.filterField);
//        this.rowsOut = this.rows.slice(0);
        this.rowsOut = this.rows.filter(this.filterData);
    }
    private filterData(row)
    {
        console.log("row");
        console.log(row);
        //this.filterField.valuesSelect
        //this.filterField.name
        if (row.descrmat.match("22")){
            console.log(row.descrmat);
            return true;
        }

        //return false; 

        //if row.
    }

    public clickOnRow(row: Object) {
        console.log(row);
        this.onRowClicked.emit(row);
    }
    

}