Olá pessoal, trabalho na ABRALE e estou tentando ajudar no site, o problema é que ta tudo em Symfony e não entendo nada...
Bom, o problema é o seguinte, no link http://www.abrale.org.br/contatopediram pra eu adicionar os campos: Departamento e Tratamento, consegui colocar após muito tempo tentando achar no ftp os seguintes arquivos:
<?php use_helper('Util') ?>
<div id="section-content" class="content page">
<h2><?php echo __('Fale conosco') ?></h2>
<div id="section-article" class="two-column left-column">
<?php echo renderFlashMessage() ?>
<?php echo __('
<p><strong>Para que a nossa equipe possa ajudá-lo, preencha os campos abaixo:</strong></p>
<p>Se preferir, entre em contato por telefone pelo <strong style="color:#C51A41">0800 773 99 73</strong> de segunda à sexta, das <strong style="color:#C51A41">9h às 18h</strong>.</p>
<p>Toda a ajuda que a <strong style="color:#C51A41">ABRALE</strong> oferece é gratuita para pacientes de todo o Brasil. As informações que recebemos são confidenciais.</p>
') ?>
<form action="<?php echo url_for('default/contato') ?>" method="post" id="form-contato">
<?php echo $form->renderHiddenFields(false) ?>
<?php echo $form->renderGlobalErrors() ?>
<?php echo $form['CmsUsuario']['nome']->renderRow(array('class' => "text", 'size' => "60")) ?>
<?php echo $form['CmsUsuario']['email']->renderRow(array('class' => "text", 'size' => "60")) ?>
<?php echo $form['CmsUsuario']['telefone_res']->renderRow(array('class' => "text")) ?>
<?php echo $form['voce']->renderRow() ?>
<div id="div_contato_doenca" style="display:none"><?php echo $form['doenca']->renderRow() ?></div>
<?php echo $form['dpto']->renderRow() ?>
<?php echo $form['assunto']->renderRow(array('class' => "text", 'size' => "60")) ?>
<?php echo $form['mensagem']->renderRow(array('rows' => "10", 'cols' => "80")) ?>
<?php echo $form['plano']->renderRow() ?>
<p align="center">
<input class="button3" type="submit" value="<?php echo __('Enviar') ?>" />
</p>
</form>
</div>
<div id="section-article" class="two-column right-column">
<?php include_partial('global/right_column') ?>
</div>
<div class="clear"></div>
</div>
<script type="text/javascript">
function toogleDoenca() {
var value = $('#contato_voce').val().toLowerCase();
if (value == 'paciente' || value == 'familiar') {
$('#div_contato_doenca').show();
} else {
$('#div_contato_doenca').hide();
}
}
$(function() {
$('#contato_voce').change(function(){
toogleDoenca();
});
});
</script>
e
<?php
class ContatoForm extends sfForm {
private $usuario;
public function configure() {
$this->getWidgetSchema()->setDefaultFormFormatterName('public');
sfContext::getInstance()->getConfiguration()->loadHelpers('I18N');
$doencas = array(
__('Mielodisplasia ou Síndrome Mielodisplásica'),
__('Mieloma Múltiplo'),
__('Linfomas'),
__('Leucemias'),
__('HPN - Hemoglobinúria paroxística noturna'),
__('Macroglobulinemia de Waldenstrom'),
__('Policitemia Vera (a)'),
__('Trombocitemia Essencial (b)'),
__('(a, b e c) Doenças Mieloproloferativas Crônicas'),
__('Mielofibrose (c)'),
__('Púrpura Trombocitopenica Idiopática - PTI')
);
$doencas = array_combine($doencas, $doencas);
$doencas = array_merge(array('' => __("- Selecione -")), $doencas);
$informacoes = array(
__('Entendendo riscos e opções relacionadas ao tratamento do câncer e à fertilidade'),
__('Encontrando recursos relacionados à fertilidade')
);
$informacoes = array_combine($informacoes, $informacoes);
$preocupacoes = array(
__('Acessando tratamentos médicos e dispositivos médicos'),
__('Encontrando assistência sem convênio'),
__('Encontrando assistência com convênio'),
__('Lidando com a discriminação no trabalho')
);
$preocupacoes = array_combine($preocupacoes, $preocupacoes);
$contatos = array(
__('Presidência'),
__('Diretoria'),
__('Assessoria de Imprensa'),
__('Sugestões e Reclamações'),
__('Captação de Recursos')
);
$contatos = array_combine($contatos, $contatos);
$departamentos = array(
__('Informação sobre preservação da fertilidade e assistência:') => $informacoes,
__('Preocupações com questões de trabalho, convênio e financeiras:') => $preocupacoes,
__('Contato direto:') => $contatos
);
$voce = array(__('Amigo'), __('Familiar'), __('Paciente'), __('Profissional da saúde'), __('Outro'));
$voce = array_combine($voce, $voce);
$voce = array_merge(array('' => __("- Selecione -")), $voce);
$dpto = array(__('Jurídico'), __('Psicologia'), __('Apoio ao paciente'), __('RH'), __('Marketing'), __('Financeiro'), __('Outros, Não sei'));
$dpto = array_combine($dpto, $dpto);
$dpto = array_merge(array('' => __("- Selecione -")), $dpto);
$plano = array(__('SUS'), __('Plano de Saúde'));
$plano = array_combine($plano, $plano);
$plano = array_merge(array('' => __("- Selecione -")), $plano);
$this->setWidgets(array(
'mensagem' => new sfWidgetFormTextarea(),
'voce' => new sfWidgetFormChoice(array('choices' => $voce)),
'doenca' => new sfWidgetFormChoice(array('choices' => $doencas)),
'assunto' => new sfWidgetFormInputText(),
'departamento' => new sfWidgetFormChoice(array('choices' => $departamentos)),
'dpto' => new sfWidgetFormChoice(array('choices' => $dpto)),
'plano' => new sfWidgetFormChoice(array('choices' => $plano))
));
$this->setValidators(array(
'mensagem' => new sfValidatorString(array('required' => true)),
'voce' => new sfValidatorChoice(array('choices' => $voce, 'required' => false)),
'doenca' => new sfValidatorChoice(array('choices' => array_keys($doencas), 'required' => false)),
'assunto' => new sfValidatorString(array('max_length' => 255, 'required' => false)),
'departamento' => new sfValidatorChoice(array('choices' => array_keys(array_merge($informacoes, $preocupacoes, $contatos)), 'required' => true)),
'dpto' => new sfValidatorChoice(array('choices' => array_keys($dpto), 'required' => false)),
'plano' => new sfValidatorChoice(array('choices' => array_keys($plano), 'required' => false))
));
$this->getWidgetSchema()->setLabels(array(
'voce' => "Você é?",
'area' => "Área",
'dpto' => "Departamento",
'plano' => "Tratamento <br />(Se aplicável)",
'doenca' => "Doença"));
if (sfContext::getInstance()->getUser()->isAuthenticated()) {
$this->usuario = Doctrine::getTable('CmsUsuario')
->createQuery('u')
->innerJoin('u.sfGuardUser')
->where('u.id = ?', sfContext::getInstance()->getUser()->getGuardUser()->getId())
->fetchOne();
$form = new CmsUsuarioPublicForm($this->usuario);
} else {
$form = new CmsUsuarioPublicForm();
}
unset($form['atribuir_sfGuardUser'], $form['sfGuardUser']);
$form->getWidgetSchema()->setLabels(array(
'telefone_res' => "Telefone"
));
$form->validatorSchema->setPostValidator(new sfValidatorPass());
$this->embedForm('CmsUsuario', $form);
// $this->setValidator('CmsUsuario', new sfValidatorPass());
$this->widgetSchema->setNameFormat('contato[%s]');
}
public function save() {
$mailer = sfContext::getInstance()->getMailer();
$str = nl2br($this->getValue('mensagem'));
$doenca = strtolower($this->getValue('voce')) == 'paciente' || strtolower($this->getValue('voce')) == 'familiar' ? $this->getValue('doenca') : '- não informado -';
$values = $this->getValues();
$user_data = $values['CmsUsuario'];
$message = Swift_Message::newInstance()
->setFrom($user_data['email'])
->setTo(sfConfig::get('app_contato_email'))
->setSubject('[ABRALE.org.br] Envio de contato pelo formulário do site')
->setBody(<<<EOF
<table>
<tr>
<th colspan="2">Dados pessoais</th>
</tr>
<tr>
<th align="left">Nome:</th><td>{$user_data['nome']}</td>
</tr>
<tr>
<th align="left">Email:</th><td>{$user_data['email']}</td>
</tr>
<tr>
<th align="left">Telelefone:</th><td>{$user_data['telefone_res']}</td>
</tr>
<tr>
<th colspan="2">Dados de contato</th>
</tr>
<tr>
<th align="left">Você é?:</th><td>{$this->getValue('voce')}</td>
</tr>
<tr>
<th align="left">Departamento?:</th><td>{$dpto}</td>
</tr>
<tr>
<th align="left">Tratamento:</th><td>{$plano}</td>
</tr>
<tr>
<th align="left">Doença:</th><td>{$doenca}</td>
</tr>
<tr>
<th align="left">Assunto:</th><td>{$this->getValue('assunto')}</td>
</tr>
<tr>
<th align="left">Departamento:</th><td>{$this->getValue('departamento')}</td>
</tr>
</table>
<h3>Mensagem</h3>
<p>$str</p>
EOF
, 'text/html');
$mailer->send($message);
}
}
Ao clicar em enviar o formulário da erro, pelo que entendi, é alguma coisa de validação dos campos que adicionei, porém substitui tudo exatamente como está programado o campo "Você é?", já olhei tudo que é possível e não consigo solucionar esse problema, alguém pode me ajudar?
Pergunta
Carlos Colon
Olá pessoal, trabalho na ABRALE e estou tentando ajudar no site, o problema é que ta tudo em Symfony e não entendo nada...
Bom, o problema é o seguinte, no link http://www.abrale.org.br/contatopediram pra eu adicionar os campos: Departamento e Tratamento, consegui colocar após muito tempo tentando achar no ftp os seguintes arquivos:
e
Ao clicar em enviar o formulário da erro, pelo que entendi, é alguma coisa de validação dos campos que adicionei, porém substitui tudo exatamente como está programado o campo "Você é?", já olhei tudo que é possível e não consigo solucionar esse problema, alguém pode me ajudar?
Editado por Carlos ColonLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.