Olá, sou novo na área e gostaria que seja qual for a ajuda, seja detalhada. Estou utilizando o JForms para o Joomla e preciso fazer um formulário onde um dos campo é a data para o evento, pois tratasse de um site de buffet para festas. Até ai tudo bem, o problema é que os meses a escolher estão em inglês e como o site esta em portugues, vai ficar meio estranho né ?! Gostaria que de saber qual arquivo eu modifico e onde eu modifico para alterar a forma de exibição dos meses. Prociso muito dessa dica. Quero deixar claro que eu não manjo de programação, olhando tenho uma vaga noção, mas não programo.
JForms - Editando data
5 Respostas
Dê uma olhada na sua pasta do joomla, no caminho:
/administrator/components/com_jforms/language
Geralmente lá terá uma pasta para cada idioma do seu plugin.
Se não tiver para o Brasil, crie uma pasta pt-BR, então baixe o conteúdo da en-GB, faça a tradução e coloque nessa pasta.
Aproveite e refaça o upload para o criador do site. Aí vc ajuda outros brasileiros como vc.
Ja dei uma olhada nessa pasta e encontrei os arquivos referente aos idiomas, mas tem 2 porens, como eu faço para alterar o idioma do jforms para uso no admin… exemplo, se eu quiser alterar para fr-FR que deve ser frances, eu naum sei como mudar.E a outra duvida é onde eu vou traduzir para o portugues brasileiro ? pois eu encontrei o arquivo que eu quero, que é o “en-GB.element.Date”, mas naum sei onde indicar nesse arquivo que ao inves de aparecer o meses em ingles, tem q aparecer os meses em portugues br… Ententeu ?
Você vai ter que criar outro arquivo:
pt-BR.element-Date, e coloca-lo numa pasta também chamada pt-BR.
Você deve seguir a mesma estrutura da pasta en-GB, mas para pt-BR. Se o plugin foi implementado direito, ele deve puxar o idioma que você definiu para o joomla todo, assim que os arquivos estiverem lá.
bom, eu apanhaei pra tentar achar o arquivo referente aos meses e acho que achei, porem, naum modificou em nada. Logo abaixo, esta a estrutura do arquivo referente ao elemento data.
OBS: em vermelho estam os meses em portugues q modifiquei do ingles, porem naum alterou em nada.
<?php /** * Date Element plugin * * @version $Id: date.php 362 2010-02-20 06:50:23Z dr_drsh $ * @package Joomla * @subpackage JForms.Plugins * @copyright Copyright (C) 2008 Mostafa Muhammad. All rights reserved. * @license GNU/GPL */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die(); /** * Date Element plugin * * @package Joomla * @subpackage JForms.Plugins */ jimport('joomla.filesystem.file'); class JFormEPluginDate extends JFormEPlugin { function getSQL( $elementData, $criteria ){ $db =& JFactory::getDBO(); $from = $criteria->from; $to = $criteria->to; $mode = $criteria->mode=='or'?' OR ':' AND '; $fragments = array(); $field= $elementData->parameters['hash']; if($from != '' ) $fragments[] = "`$field` >= '$from'"; if($to != '' ) $fragments[] = "`$field` <= '$to'"; $sql = implode( ' AND ', $fragments ); if( trim( $sql ) != '' ){ $sql = "($sql) $mode"; } return $sql; } function beforeSave( $elementData, $input ){ $p = JArrayHelper::toObject($elementData->parameters); $arrangedValue = array(); $format = explode('/',$p->format); foreach($format as $key => $e){ if($e == 'DD')$arrangedValue[0] = $input[intval($key)]; if($e == 'MM')$arrangedValue[1] = $input[intval($key)]; if($e == 'YYYY')$arrangedValue[2] = $input[intval($key)]; } //Store in mysql date Format return intval($arrangedValue[2]) . '-' . intval($arrangedValue[1]) . '-' . intval($arrangedValue[0]); } function _getSegment( $segment, $input ){ if( $segment == '' )return $input; $output = explode( '-', $input ); if( count($output) != 3 )return null; switch( $segment ){ case 'day': return $output[2]; case 'month': return $output[1]; case 'year': return $output[0]; } return null; } function translate( $elementData, $input, $format='html', $segment=''){ $segment = trim($segment); $p = JArrayHelper::toObject($elementData->parameters); $object = JFormEPluginDate::_getSegment( $segment, $input ); if( is_null($object) )return null; switch( $format ){ case 'raw': case 'html': if($segment == '')return str_replace(array('YYYY','MM','DD'),explode('-',$object),$p->format); else return $object; case 'object': return $object; } return null; } function render( $elementData ){ $p = JArrayHelper::toObject($elementData->parameters); $default = property_exists($elementData,'defaultValue' )?$elementData->defaultValue:$p->defaultValue; $error = property_exists($elementData,'validationError' )?$elementData->validationError:''; if( !is_array( $default )){ //coming from DB $default = str_replace('-',"\n",$default); $default = explode("\n", $default); $arrangedDefault = array(); $format = explode('/',$p->format); foreach($format as $key => $e){ if($e == 'DD')$arrangedDefault[0] = $default[2]; if($e == 'MM')$arrangedDefault[1] = $default[1]; if($e == 'YYYY')$arrangedDefault[2] = $default[0]; } $default = $arrangedDefault; } else { //Coming from POST request $arrangedDefault = array(); $format = explode('/',$p->format); foreach($format as $key => $e){ if($e == 'DD')$arrangedDefault[0] = $default[intval($key)]; if($e == 'MM')$arrangedDefault[1] = $default[intval($key)]; if($e == 'YYYY')$arrangedDefault[2] = $default[intval($key)]; } $default = $arrangedDefault; } $css = $p->css; $inputClass = $css . (empty( $error )?'':' input-error'); $labelClass = $css . (empty( $error )?'':' label-error'); $labelStyle = $p->useCss?'':"width:{$p->lw}px;height:{$p->lh}px"; $htmlId = $p->hash.'_'.$elementData->id; $startYear = $p->startYear; $endYear = 0; switch( $p->span ){ case 0: $endYear = intval(date('Y')); break; case -1: $endYear = $p->startYear + $p->ospan; break; default: $endYear = $p->startYear + $p->span; break; } $p->label = htmlspecialchars($p->label, ENT_QUOTES); if( $p->required ) { $p->label = $p->label . ' * '; } $output = ''; $output .= _line("não consegui achar esse arquivo…alguém me ajuda??? :oops: