100% работающее решение нашел на форуме SOBI
Ищем в файле
form.class.php строки в районе 209
case 2: // is textarea
$fields[$field->fieldname]['field'] = $this->isTextarea( $field );
break;заменяем на следущий кусок
case 2: // is textarea
/* Hack to limit number of characters in textarea field */
$value = html_entity_decode($config->getSobiStr($this->item->customFieldsData[$field->fieldname]),ENT_QUOTES);
$value = "{$value}";
if ($field->fieldChars) {
if($field->fieldRows) {
$rows = "rows=\"{$field->fieldRows}\"";
}
else {
$rows = "rows=\"10\"";
}
if($field->fieldColumns) {
$columns = "cols=\"{$field->fieldColumns}\"";
}
else {
$columns = "cols=\"40\"";
}
//$thisformfield = "this.form.".{$field->fieldname};
$fields[$field->fieldname]['field'] = "\n<textarea id=\"{$field->fieldname}\" class=\"inputbox\" name=\"{$field->fieldname}\" {$columns} {$rows} onkeydown=\"limitText(this.form.{$field->fieldname},this.form.countdown{$field->fieldname},{$field->fieldChars});\" onkeyup=\"limitText(this.form.{$field->fieldname},this.form.countdown{$field->fieldname},{$field->fieldChars});\">{$value}</textarea><br /><font style=\"font-size:12px; color:#a9a9a9; font-style:italic;\" >Characters left: <input type=\"text\" name=\"countdown{$field->fieldname}\" size=\"1\" value=\"{$field->fieldChars}\" readonly=\"readonly\" style=\"border:none;color:blue;\" /></font>\n";
}
else {
$fields[$field->fieldname]['field'] = $this->isTextarea( $field );
}
/* End hack */
break;
до кода
case 3: // is checkbox СОХРАНЯЕМ ФАЙЛ.
Далее нужно добавить кудато ограничивающий скрипт-либо в файл шаблона форм, либо в шаблон сайта.
затем вставляем кусок скрипта (если пользуетесь своим шаблоном форм-сюда, если нет то в шаблон сайта поле <head> перед </head> )
<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum - limitField.value.length;
}
}
</script>
У меня работает 100%
Для того чтобы теперь можно ббыло ограничить кол-во символов в поле textarea SOBI внесите число в настройки поля (Максимальная длина) и будет Вам счастье!в своем шаблоне форм (если пользуетесь) для вывода кол-ва отсавшихся символов добавьте
<?php echo $fields['countdown_field_desc_part']['field']; ?>Вот мой пример шаблона для форм SOBI
<?php
defined( '_SOBI2_' ) || ( trigger_error("Restricted access", E_USER_ERROR) && exit() );
?>
<html>
<head>
<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum - limitField.value.length;
}
}
</script>
<style type="text/css">
.bgrnd {background-color: #eeeeee;}
.otstup {text-align: justify; padding: 5px 5px;}
.tablo {border-collapse: collapse; text-align: justify;}
</style>
</head>
<body>
<div class="bgrnd">
<?php echo $fields['field_rules']['field']; ?><br/>
<?php echo $requiredFieldsInfo; ?>
</div>
<table width="100%" class="tablo" border="0" align="left" valign="top">
<tr>
<td width="18%"><?php echo $fields['EntryName']['label']; ?></td>
<td><?php echo $fields['EntryName']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_city']['label']; ?></td>
<td><?php echo $fields['field_city']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_contry2']['label']; ?></td>
<td><?php echo $fields['field_contry2']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_email']['label']; ?></td>
<td><?php echo $fields['field_email']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_website']['label']; ?></td>
<td><?php echo $fields['field_website']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_contact_person']['label']; ?></td>
<td><?php echo $fields['field_contact_person']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_phone']['label']; ?></td>
<td><?php echo $fields['field_phone']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['field_price']['label']; ?></td>
<td><?php echo $fields['field_price']['field']; ?></td>
</tr>
<tr>
<td colspan=2 width="100%"><center><font color=red><?php echo $fields['field_desc_part']['label']; ?></font></center></td>
</tr>
<tr>
<td colspan=2 width="100%"><center><?php echo $fields['field_desc_part']['field']; ?><br/> <?php echo $fields['countdown_field_desc_part']['field']; ?></center></td>
</tr>
<tr>
<td colspan=2 width="100%"><center><font color=red><?php echo $fields['field_description']['label']; ?></center></td>
</tr>
<tr>
<td colspan=2 width="100%"><center><?php echo $fields['field_description']['field']; ?></center><br/></td>
</tr>
<tr>
<td colspan=2 width="100%"><?php echo 'Добавить фото, картинку, изображение для Вашего объявления.<br/> Допускается загружать только файлы с расширениями <b>jpg, jpeg, gif, png</b>.<br/> Максимальный размер файла <b>500Кб</b>'; ?></td>
</tr>
<tr>
<td colspan=2 width="100%"><center><span><?php echo $fields['sobi_gallery_plugin']['field']; ?></span></center></td>
</tr>
<tr>
<td width="25%"><font color=red><?php echo $fields['field_vip']['label']; ?></font></td>
<td><?php echo $fields['field_vip']['payment']['box']; ?> <?php echo 'Изменить статус на VIP'; ?></td>
</tr>
<tr>
<td width="25%"><?php echo $fields['field_vip']['payment']['explanation']; ?></td>
<td><?php echo $fields['field_vip']['field'];?> <?php echo 'Отметьте обе галочки для перевода объявления в статус VIP' ;?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['Metakeys']['label']; ?></td>
<td><?php echo $fields['Metakeys']['field']; ?></td>
</tr>
<tr>
<td width="18%"><?php echo $fields['MetaDesc']['label']; ?></td>
<td><?php echo $fields['MetaDesc']['field']; ?></td>
</tr>
<tr width="100%"><?php echo $catChooser; ?></tr>
</table>
<div id="accept_rules_row">
<?php echo $fields['EntryRules']['label']; ?>
<?php echo $fields['EntryRules']['field']; ?>
</div>
<div class="otstup"><?php echo $cancelButton; ?>
<?php echo $sendButton; ?><br/></div>
</body>
</html>
Первоисточник
http://www.sigsiu.net/forum/index.php/topic,12132.0/highlight,area.htmlКому помогло-ставим плюсик))