﻿Ext.onReady(function() {
       
    Ext.QuickTips.init();
    Ext.form.Field.prototype.msgTarget = 'qtip';
    
    
	var txtNomeEmpresa = new Ext.form.TextField({
        id: 'txtNomeEmpresa',
        renderTo: 'div_nome_empresa',
        tabIndex: 1001,
        width: 250
    });
    
    var cmbOcasiao = new Ext.form.ComboBox({
        width: 233,
        id: 'cmbOcasiao',
        renderTo: 'div_ocasiao',
        store: [
                    ['Casamento', 'Casamento'],
                    ['Aniversário', 'Aniversário'],
                    ['Nascimento', 'Nascimento'],
                    ['Outros', 'Outros']
                ],
        openRegister: false,
        typeAhead: true,
        forceSelection: true,
        triggerAction: 'all',
        mode: 'local',
        displayValue: 'text',
        listWidth: 250,
        tabIndex: 1001,
        selectValue : 'value'
    });
    
    var txtNomeContato = new Ext.form.TextField({
        id: 'txtNomeContato',
        renderTo: 'div_nome_contato',
        allowBlank: false,
        tabIndex: 1002,
        
        width: 710
    });
    
    var txtEmail = new Ext.form.TextField({
        id : 'txtEmail',
        renderTo: 'div_email',
        vtype: 'email',
        allowBlank: false,
        tabIndex: 1003,
        width: 250
    });
    
	var txtTelefone = new Ext.form.TextField({
        id: 'txtTelefone',
        fieldLabel: '* Telefone',
        renderTo: 'div_telefone',
        width: 250,
        allowBlank : false,
        maskRe: /[0-9]/,
        maxLength: 14,
        minLength: 14,
        minLengthText: 'Formato correto para este campo é: (00) 0000-0000',
        maxLengthText: 'Formato correto para este campo é: (00) 0000-0000',
        enableKeyEvents: true,
        tabIndex: 1004,
        listeners: {
            'keydown': {
                fn: function(a, b) {
                    var v = a.getValue();
                    if (v == null || v == undefined || v == '') {
                        return;
                    }
                    v = v.replace(/\D/g, '');
                    v = v.replace(/^(\d\d)(\d)/g, '($1) $2');
                    v = v.replace(/(\d{4})(\d)/, '$1-$2');
                    this.setValue(v);
                }
            }
        }
    });
    
    
    
    var fupLogomarca = new Ext.ux.form.FileUploadField({
        id : 'fupLogomarca',
        buttonText: 'Localizar arquivo...',
        labelWidht: 0,
        height: 22,
        tabIndex: 1005,
        width: 668
    });
    
    var form = new Ext.FormPanel({
        labelWidth : 1,
        renderTo : 'div_logomarca',
        border : false,
        frame: false,
        tabIndex: 1005,
        height: 22,
        bodyStyle: 'background-color:Transparent;',
        items : [ fupLogomarca ]
    });
   
    var cmbCliente = new Ext.form.ComboBox({
        id: 'cmbCliente',
        renderTo: 'div_id_escolha',
        openRegister: false,
        typeAhead: true,
        forceSelection: true,
        triggerAction: 'all',
        mode: 'local',
        allowBlank: false,
        displayValue: 'text',
        tabIndex: 1006,
        selectValue : 'value',
        width: 70,
        store: [
                    ['N', 'NÃO'],
                    ['S', 'SIM']
                ]
    });
    
    var txtCPF = new Ext.form.TextCPF({
	    id : 'txtCPF',
	    renderTo: 'div_cpf',
	    tabIndex: 1007,
	    width: 250
	});
	
	var txtCNPJ = new Ext.form.TextCNPJ({
	    id : 'txtCNPJ',
	    renderTo: 'div_cnpj',
	    tabIndex: 1007,
	    width: 250
	});
	
	var cmbSolicitante = new Ext.form.ComboBox({
        id: 'cmbSolicitante',
        renderTo: 'div_id_tipo',
        openRegister: false,
        typeAhead: true,
        forceSelection: true,
        triggerAction: 'all',
        mode: 'local',
        displayValue: 'text',
        selectValue : 'value',
        width: 250,
        tabIndex: 1000,
        store: [
                    ['E', 'Empresa'],
                    ['P', 'Pessoal']
                ]
    });
    
    
    cmbSolicitante.on('select', function(a, b, c) {
        if (b.data.field1 == 'E')
        {
            document.getElementById("div_ocasiao").style.display='none';
            document.getElementById("txt_ocasiao").style.display='none';
            
            document.getElementById("div_nome_empresa").style.display='block';
            document.getElementById("txt_empresa").style.display='block';
            
            if (cmbCliente.value == 'S')
            {
                document.getElementById("txt_cpf").style.display='none';
                document.getElementById("div_cpf").style.display='none';
            
                document.getElementById("txt_cnpj").style.display='block';
                document.getElementById("div_cnpj").style.display='block';
            }
        }
        if (b.data.field1 == 'P')  
        {
            document.getElementById("div_ocasiao").style.display='block';
            document.getElementById("txt_ocasiao").style.display='block';
            
            document.getElementById("div_nome_empresa").style.display='none';
            document.getElementById("txt_empresa").style.display='none';
            
            if (cmbCliente.value == 'S')
            {
                document.getElementById("txt_cpf").style.display='block';
                document.getElementById("div_cpf").style.display='block';
            
                document.getElementById("txt_cnpj").style.display='none';
                document.getElementById("div_cnpj").style.display='none';
            }
        }
    });
	
	 cmbCliente.on('select', function(a, b, c) {
        if (b.data.field1 == 'N') {
            document.getElementById("txt_cpf").style.display='none';
            document.getElementById("div_cpf").style.display='none';
                        
            document.getElementById("div_cnpj").style.display='none';
            document.getElementById("txt_cnpj").style.display='none';
        }
        else
        {
            if(cmbSolicitante.value == "E") 
            {
                document.getElementById("txt_cpf").style.display='none';
                document.getElementById("div_cpf").style.display='none';
                
                document.getElementById("div_cnpj").style.display='block';
                document.getElementById("txt_cnpj").style.display='block';
            }
            else
            {
                document.getElementById("txt_cpf").style.display='block';
                document.getElementById("div_cpf").style.display='block';
                
                document.getElementById("txt_cnpj").style.display='none';
                document.getElementById("div_cnpj").style.display='none';
            }
        }
    });
    
    cmbCliente.setValue("N");
    
    var cmbProduto = new Ext.form.ComboBox({
        id: 'cmbProduto',
        renderTo: 'div_id_produto',
        store: [
        	['Todos', 'Todos'],
        	['Balas', 'Balas'],
        	['Pirulitos', 'Pirulitos'],
        	['Gomas Americanas', 'Gomas Americanas'],
        	['Gomas Mascar', 'Gomas Mascar'],
        	['Biscoitos', 'Biscoitos'],
        	['Doces em Tabletes', 'Doces em Tabletes']
        ],
        openRegister: false,
        typeAhead: true,
        tabIndex: 1008,
        forceSelection: true,
        triggerAction: 'all',
        mode: 'local',
        allowBlank: false,
        displayValue: 'text',
        selectValue : 'value',
        width: 250
    });
    
    var cmbConheceu = new Ext.form.ComboBox({
        id: 'cmbConheceu',
        renderTo: 'div_id_conheceu',
        store: [
        	['Google', 'Google'],
        	['Bing', 'Bing'],
        	['Yahoo', 'Yahoo'],
        	['Outros sites de busca', 'Outros sites de busca'],
        	['Catálogo', 'Catálogo'],
        	['Indicação', 'Indicação'],
        	['Já é cliente', 'Já é cliente'],
        	['Outros', 'Outros']
        ],
        openRegister: false,
        typeAhead: true,
        tabIndex: 1009,
        forceSelection: true,
        triggerAction: 'all',
        mode: 'local',
        allowBlank: false,
        displayValue: 'text',
        selectValue : 'value',
        width: 250
    });

    var txtObservacao = new Ext.form.TextArea({
        id: 'txtObservacao',
        renderTo: 'div_observacoes',
        height: 150,
        tabIndex: 1010,
        width: 710
    });

    var btnLimpar = new Ext.ImageButton({
        id: 'limparContato',
        text: 'Limpar',
        imgPath: '../img/btn_limpar_campos.gif',
        renderTo: 'div_btnlimpar',
        tabIndex: 1012,
        tooltip: 'Limpar',
        handler: function() {
            cmbSolicitante.setValue('')
            txtNomeEmpresa.setValue('');
            cmbOcasiao.setValue('');
            txtNomeContato.setValue('');
            txtEmail.setValue('');
            txtTelefone.setValue('');
            fupLogomarca.setValue('');
            cmbCliente.setValue('N');
            txtCNPJ.setValue('');
            txtCPF.setValue('');
            cmbProduto.setValue('');
            cmbConheceu.setValue('');
            txtObservacao.setValue('');
        }
    });
    
        
    var btnEnviar = new Ext.ImageButton({
        id: 'enviarContato',
        renderTo: 'div_btnEnviar',
        imgPath: '../img/btn_enviar_orcamento.gif',
        text: 'Enviar',
        tabIndex: 1011,
        tooltip: 'Enviar',
        handler: function() {
        	Ext.Ajax.request({
        	    isUpload: true,
                headers: { 'Content-type':'multipart/form-data' },
                method: 'POST',
                form: form.getForm().getEl().dom, 
                url: '../Orcamento/Enviar',
                method: 'POST',
                params: { cmbSolicitante : cmbSolicitante.getValue(),
                          txtNomeEmpresa : txtNomeEmpresa.getValue(),
                          cmbOcasiao : cmbOcasiao.getValue(),
                          txtNomeContato : txtNomeContato.getValue(),
                          txtEmail : txtEmail.getValue(),
                          txtTelefone : txtTelefone.getValue(),
                          fupLogomarca : fupLogomarca.getValue(),
                          cmbCliente : cmbCliente.getValue(),
                          txtCNPJ : txtCNPJ.getValue(),
                          txtCPF : txtCPF.getValue(),
                          cmbProduto : cmbProduto.getValue(),
                          cmbConheceu : cmbConheceu.getValue(),
                          txtObservacao : txtObservacao.getValue()
                },
                waitTitle: 'Aguarde..',
                waitMsg: 'Enviando informações...',
                success: function(r, a) {
                    r = Ext.decode(r.responseText);
                    if (r.success == true)
                    {
                        Ext.Msg.alert('Status', 'Mensagem Enviada com sucesso!', function(btn, text) {
                            if (btn == 'ok') {
                                cmbSolicitante.setValue('')
                                txtNomeEmpresa.setValue('');
                                cmbOcasiao.setValue('');
                                txtNomeContato.setValue('');
                                txtEmail.setValue('');
                                txtTelefone.setValue('');
                                fupLogomarca.setValue('');
                                cmbCliente.setValue('N');
                                txtCNPJ.setValue('');
                                txtCPF.setValue('');
                                cmbProduto.setValue('');
                                cmbConheceu.setValue('');
                                txtObservacao.setValue('');
                            }
                        });
                    }
                    else
                    {
                        Ext.Msg.alert('Status', r.message);
                    }
                },
                failure: function() {
                    Ext.Msg.alert('Falha na conexão', 'Houve uma falha ao conectar com o servidor');
                             cmbSolicitante.setValue('')
                            txtNomeEmpresa.setValue('');
                            cmbOcasiao.setValue('');
                            txtNomeContato.setValue('');
                            txtEmail.setValue('');
                            txtTelefone.setValue('');
                            fupLogomarca.setValue('');
                            cmbCliente.setValue('');
                            txtCNPJ.setValue('');
                            txtCPF.setValue('');
                            cmbProduto.setValue('');
                            cmbConheceu.setValue('');
                            txtObservacao.setValue('');
                   
                }
            });
        }
    });    
        
        
//   var btnEnviar = new Ext.Button({
//        id: 'enviarContato',
//        renderTo: 'div_btnEnviar',
//        text: 'Enviar',
//        tooltip: 'Enviar',
//        handler: function() {debugger;
//        	//formMain.getForm().submit({
//                url: '../Orcamento/Enviar',
//               // method: 'POST',
//               // waitTitle: 'Aguarde..',
//               // waitMsg: 'Enviando informações...',
//                success: function() {
//                    Ext.Msg.alert('Status', 'Mensagem Enviada com sucesso!', function(btn, text) {
//                        if (btn == 'ok') {
//                         
//                            txtNomeEmpresa.setValue = '';
//                            txtOcasiao.setValue = '';
//                            txtNomeContato.setValue = '';
//                            txtEmail.setValue = '';
//                            txtTelefone.setValue = '';
//                            fupLogomarca.setValue = '';
//                            cmbCliente.setValue = '';
//                            txtCNPJ.setValue = '';
//                            txtCPF.setValue = '';
//                            cmbProduto.setValue = '';
//                            cmbConheceu.setValue = '';
//                            txtObservacao.setValue = '';
//                            
//                        }
//                    });
//                },
//                failure: function(form, action) {
//                	if (action.response.responseText != '') {
//                		var a = Ext.decode(action.response.responseText);
//                		
//                    	if (!a.success) {
//                    		Ext.Msg.alert('Não foi posssivel enviar o e-mail!', a.message);
//                    		return;
//                    	}	
//                	}
//                	
//                	
//                    if (action.failureType == 'server') {
//                        obj = Ext.util.JSON.decode(action.response.responseText);
//                        Ext.Msg.alert('Não foi posssivel enviar o e-mail!', obj.errors.reason);
//                        //formMain.getForm().reset();

//                        txtNomeEmpresa.setValue = '';
//                        txtOcasiao.setValue = '';
//                        txtNomeContato.setValue = '';
//                        txtEmail.setValue = '';
//                        txtTelefone.setValue = '';
//                        fupLogomarca.setValue = '';
//                        cmbCliente.setValue = '';
//                        txtCNPJ.setValue = '';
//                        txtCPF.setValue = '';
//                        cmbProduto.setValue = '';
//                        cmbConheceu.setValue = '';
//                        txtObservacao.setValue = '';
//                        
//                    }
//                }
//            //});
//        }
//    });
        
});
