/// <reference path="vswd-ext_2.1.js"/>
/// <reference path="ImageButton.js" />

Ext.onReady(function()
{
    Ext.QuickTips.init();
    Ext.form.Field.prototype.msgTarget = 'qtip';

    var CarregaEstados = new Ext.data.SimpleStore({
        fields: ['Sigla', 'NomeEstado'],
        data: Ext.DataEstado.Estados
    });

    
    var EnviarParaxmlData = new Ext.data.XmlReader({
       record: 'reg'
    }, ['nome','coord_email']);


    var EnviarPara = new Ext.data.Store({
        url: '/grupos.aspx',
        reader: EnviarParaxmlData,
        autoLoad:true,
        sortInfo:{field:'nome',direction:'ASC'}
    });


    var FormContato = new Ext.form.FormPanel({
        labelWidth: 100,
        url: 'FaleConosco.aspx',
        width: 480,
        border: false,
        defaultType: 'textfield',
        renderTo: 'ContIntGeral',
        itemCls: 'LabelFormPadrao',
        items: [

        //Combo Enviar PARA
         new Ext.form.ComboBox({
            store: EnviarPara,
            fieldLabel: '* Enviar para',
            name: 'EnviarPara',
            hiddenName: 'coord_email',
            displayField: 'nome',
            valueField: 'coord_email',
            typeAhead: true,
            mode: 'local',
            width: 350,
            listWidth: 200,
            forceSelection: true,
            selectOnFocus: true,
            lazyRender: true,
            allowBlank: false,
            cls: 'TxtPadrao',
            invalidClass: 'TxtErro',
            listClass: 'TxtPadrao',
            focusClass: 'TxtFocus',
            emptyText: 'Selecione uma Coordenação',
            tabIndex:1
        }),


        {
            fieldLabel: '* Nome',
            name: 'Nome',
            allowBlank: false,
            width: 350,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 23,
            tabIndex: 2
        },

        {
            fieldLabel: '* E-mail',
            name: 'Email',
            allowBlank: false,
            vtype: 'email',
            width: 350,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 23,
            tabIndex: 3
        },

        {
            fieldLabel: 'Cidade',
            name: 'Cidade',
            width: 350,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 23,
            tabIndex: 4
        },

        // Combo Estados
         new Ext.form.ComboBox({
            store: CarregaEstados,
            fieldLabel: 'Estado',
            name: 'Estado',
            hiddenName: 'Estado',
            displayField: 'NomeEstado',
            valueField: 'NomeEstado',
            typeAhead: true,
            mode: 'local',
            listWidth: 200,
            forceSelection: true,
            selectOnFocus: true,
            lazyRender: true,
            cls: 'TxtPadrao',
            invalidClass: 'TxtErro',
            listClass: 'TxtPadrao',
            focusClass: 'TxtFocus',
            emptyText: 'Selecione um estado',
            tabIndex: 5
        }),
        {
            fieldLabel: 'Telefone',
            name: 'Telefone',
            width: 165,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 23,
            tabIndex: 6
        },
        {
            fieldLabel: 'Empresa',
            name: 'Empresa',
            width: 350,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 23,
            tabIndex: 7
        },
        new Ext.form.TextArea({
            fieldLabel: 'Mensagem',
            name: 'Mensagem',
            width: 350,
            fieldClass: 'TxtPadrao',
            invalidClass: 'TxtErro',
            focusClass: 'TxtFocus',
            height: 200,
            tabIndex: 8
        })

    ],
        buttons: [
            new Ext.ImageButton({
            text: 'LIMPAR',
            imgPath: '/img/BtnLimpar.jpg',
            tooltip: 'LIMPAR',
            tabIndex: 10,
            handler: function()
            {
                FormContato.getForm().reset();
            }
        }),

            new Ext.ImageButton({
            text: 'ENVIAR',
            imgPath: '/img/BtnEnviar.jpg',
            tooltip: 'ENVIAR',
            tabIndex: 9,
            handler: function()
            {
                FormContato.getForm().submit({
                    method: 'POST',
                    waitTitle: 'Aguarde..',
                    waitMsg: 'Enviando informações...',
                    success: function()
                    {
                        Ext.Msg.alert('Status', 'Mensagem Enviada com sucesso!', function(btn, text)
                        {
                            if (btn == 'ok')
                            {
                                FormContato.getForm().reset();
                            }
                        });
                    },
                    failure: function(form, action)
                    {
                        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);
                            FormContato.getForm().reset();                            
                        } 
                        
                    }
                }
            	    );
            
            }
            
        })
        
            ]

    });

});
