Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2015-02-16 00:31:43

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

минимальное количество символов

как установить минимальное кол-во символов для описания новости.
например: если порог 200 символов, чтобы новость не сохранялась, когда в описание меньше 200 символов (как обязательное поле)

Не в сети

#2 2015-02-16 07:26:42

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

только если скриптом как в чате

Не в сети

#3 2015-02-16 13:18:54

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

еще как вариант вместо скрипта html5
в /engine/skins/default/tpl/news файл add.tpl найди

<div id="container.content" class="contentActive"><textarea style="width: 99%; padding: 1px; margin: 1px;" name="ng_news_content" id="ng_news_content" rows="10" tabindex="2"></textarea>

и замени на этот

<div id="container.content" class="contentActive"><textarea style="width: 99%; padding: 1px; margin: 1px;" name="ng_news_content" id="ng_news_content" rows="10" tabindex="2" minlength="200"></textarea></div>

6jqpcyopv5h37htsx2fyhgvzm.gif

http://ngcmshak.ru/html5/schetchik-i-og … tarea.html

Изменено irbees2008 (2015-02-16 14:07:41)

Не в сети

#4 2015-02-17 00:35:27

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

Re: минимальное количество символов

irbees2008 пишет:

еще как вариант вместо скрипта html5
в /engine/skins/default/tpl/news файл add.tpl найди

<div id="container.content" class="contentActive"><textarea style="width: 99%; padding: 1px; margin: 1px;" name="ng_news_content" id="ng_news_content" rows="10" tabindex="2"></textarea>

и замени на этот

<div id="container.content" class="contentActive"><textarea style="width: 99%; padding: 1px; margin: 1px;" name="ng_news_content" id="ng_news_content" rows="10" tabindex="2" minlength="200"></textarea></div>

http://фото-хост.рф/img/2015-02/16/6jqp … yhgvzm.gif

http://ngcmshak.ru/html5/schetchik-i-og … tarea.html

через nsm не работает((((

Не в сети

#5 2015-02-17 08:07:32

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

Ну так и надо писать что в плагин надо добавить
идем в директорию   твой шаблон/plugins/nsm/ там открываем файл news.add.tpl ищем строчку

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea"></textarea>

и меняем на

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea" minlength="200"></textarea>

если нужен счетчик сколько символов смотри здесь http://ngcmshak.ru/html5/schetchik-i-og … tarea.html

Изменено irbees2008 (2015-02-17 08:14:41)

Не в сети

#6 2015-02-17 10:24:33

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

Re: минимальное количество символов

irbees2008 пишет:

Ну так и надо писать что в плагин надо добавить
идем в директорию   твой шаблон/plugins/nsm/ там открываем файл news.add.tpl ищем строчку

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea"></textarea>

и меняем на

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea" minlength="200"></textarea>

если нужен счетчик сколько символов смотри здесь http://ngcmshak.ru/html5/schetchik-i-og … tarea.html

не помогает(
"Новость была успешно добавлена!" хотя всего лишь 30 символов

Не в сети

#7 2015-02-17 13:50:02

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

идем в директорию   твой шаблон/plugins/nsm/ там открываем файл news.add.tpl
меняем это

<script type="text/javascript">
// Global variable: ID of current active input area
{% if (flags.edit_split) %}var currentInputAreaID = 'ng_news_content_short';{% else %}var currentInputAreaID = 'ng_news_content';{% endif %}


function preview(){
 var form = document.getElementById("postForm");
 if (form.ng_news_content{% if (flags.edit_split) %}_short{% endif %}.value == '' || form.title.value == '') {
  alert('{{ lang.nsm['err.preview'] }}');
  return false;
 }

 form['mod'].value = "preview";
 form.target = "_blank";
 form.submit();

 form['mod'].value = "news";
 form.target = "_self";
 return true;
}

function changeActive(name) {
 if (name == 'full') {
	document.getElementById('container.content.full').className  = 'contentActive';
	document.getElementById('container.content.short').className = 'contentInactive';
	currentInputAreaID = 'ng_news_content_full';
 } else {
	document.getElementById('container.content.short').className = 'contentActive';
	document.getElementById('container.content.full').className  = 'contentInactive';
	currentInputAreaID = 'ng_news_content_short';
 }
}
function approveMode(mode) {
	document.getElementById('approve').value = mode;
	return true;
}
</script>

на вот этот

<script src="http://jqueryvalidation.org/files/dist/jquery.validate.min.js"></script>
<script type="text/javascript">
// Global variable: ID of current active input area
{% if (flags.edit_split) %}var currentInputAreaID = 'ng_news_content_short';{% else %}var currentInputAreaID = 'ng_news_content';{% endif %}


function preview(){
 var form = document.getElementById("postForm");
 if (form.ng_news_content{% if (flags.edit_split) %}_short{% endif %}.value == '' || form.title.value == '') {
  alert('{{ lang.nsm['err.preview'] }}');
  return false;
 }

 form['mod'].value = "preview";
 form.target = "_blank";
 form.submit();

 form['mod'].value = "news";
 form.target = "_self";
 return true;
}

function changeActive(name) {
 if (name == 'full') {
	document.getElementById('container.content.full').className  = 'contentActive';
	document.getElementById('container.content.short').className = 'contentInactive';
	currentInputAreaID = 'ng_news_content_full';
 } else {
	document.getElementById('container.content.short').className = 'contentActive';
	document.getElementById('container.content.full').className  = 'contentInactive';
	currentInputAreaID = 'ng_news_content_short';
 }
}
function approveMode(mode) {
	document.getElementById('approve').value = mode;
	return true;
}
$().ready(function(){
	$("#postForm").validate({
		rules : {
			ng_news_content : { minlength: 200},
		
		},
		messages : {
			ng_news_content : {
				
				minlength : "Введите не менее, чем 200 символа.",
				
			},
		
		}
	});
});
function counter(el)
{var wrapper = document.createElement('DIV');
wrapper.innerHTML = el.value;
var len = (wrapper.textContent || wrapper.innerText).length;
document.getElementById('count').innerHTML = len + ' | ' + el.value.length;
document.getElementById('kb').innerHTML = (len/1024).toFixed(2);
}
</script>

далее меняем это

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea"></textarea>

на это

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="form-control" minlength="200"onkeypress="counter(this);" onkeyup="counter(this);" onchange="counter(this);"></textarea>
	<BR/>
	Вы ввели: <span id='count'>0</span> символов. <span id='kb'>0</span>Kb

проверенно все работает

Не в сети

#8 2015-02-17 16:01:41

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

Re: минимальное количество символов

irbees2008 пишет:

идем в директорию   твой шаблон/plugins/nsm/ там открываем файл news.add.tpl
меняем это

<script type="text/javascript">
// Global variable: ID of current active input area
{% if (flags.edit_split) %}var currentInputAreaID = 'ng_news_content_short';{% else %}var currentInputAreaID = 'ng_news_content';{% endif %}


function preview(){
 var form = document.getElementById("postForm");
 if (form.ng_news_content{% if (flags.edit_split) %}_short{% endif %}.value == '' || form.title.value == '') {
  alert('{{ lang.nsm['err.preview'] }}');
  return false;
 }

 form['mod'].value = "preview";
 form.target = "_blank";
 form.submit();

 form['mod'].value = "news";
 form.target = "_self";
 return true;
}

function changeActive(name) {
 if (name == 'full') {
	document.getElementById('container.content.full').className  = 'contentActive';
	document.getElementById('container.content.short').className = 'contentInactive';
	currentInputAreaID = 'ng_news_content_full';
 } else {
	document.getElementById('container.content.short').className = 'contentActive';
	document.getElementById('container.content.full').className  = 'contentInactive';
	currentInputAreaID = 'ng_news_content_short';
 }
}
function approveMode(mode) {
	document.getElementById('approve').value = mode;
	return true;
}
</script>

на вот этот

<script src="http://jqueryvalidation.org/files/dist/jquery.validate.min.js"></script>
<script type="text/javascript">
// Global variable: ID of current active input area
{% if (flags.edit_split) %}var currentInputAreaID = 'ng_news_content_short';{% else %}var currentInputAreaID = 'ng_news_content';{% endif %}


function preview(){
 var form = document.getElementById("postForm");
 if (form.ng_news_content{% if (flags.edit_split) %}_short{% endif %}.value == '' || form.title.value == '') {
  alert('{{ lang.nsm['err.preview'] }}');
  return false;
 }

 form['mod'].value = "preview";
 form.target = "_blank";
 form.submit();

 form['mod'].value = "news";
 form.target = "_self";
 return true;
}

function changeActive(name) {
 if (name == 'full') {
	document.getElementById('container.content.full').className  = 'contentActive';
	document.getElementById('container.content.short').className = 'contentInactive';
	currentInputAreaID = 'ng_news_content_full';
 } else {
	document.getElementById('container.content.short').className = 'contentActive';
	document.getElementById('container.content.full').className  = 'contentInactive';
	currentInputAreaID = 'ng_news_content_short';
 }
}
function approveMode(mode) {
	document.getElementById('approve').value = mode;
	return true;
}
$().ready(function(){
	$("#postForm").validate({
		rules : {
			ng_news_content : { minlength: 200},
		
		},
		messages : {
			ng_news_content : {
				
				minlength : "Введите не менее, чем 200 символа.",
				
			},
		
		}
	});
});
function counter(el)
{var wrapper = document.createElement('DIV');
wrapper.innerHTML = el.value;
var len = (wrapper.textContent || wrapper.innerText).length;
document.getElementById('count').innerHTML = len + ' | ' + el.value.length;
document.getElementById('kb').innerHTML = (len/1024).toFixed(2);
}
</script>

далее меняем это

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="textarea"></textarea>

на это

<textarea name="ng_news_content" id="ng_news_content" style="width:98%; height: 400px;" class="form-control" minlength="200"onkeypress="counter(this);" onkeyup="counter(this);" onchange="counter(this);"></textarea>
	<BR/>
	Вы ввели: <span id='count'>0</span> символов. <span id='kb'>0</span>Kb

проверенно все работает

спасибо, работает, вот только нет счетчика сколько символов введено

Не в сети

#9 2015-02-17 16:20:47

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

как это нету? у меня есть hmm

Не в сети

#10 2015-02-17 17:07:36

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

Re: минимальное количество символов

irbees2008 пишет:

как это нету? у меня есть hmm

это может зависить от того что я отключил вв коды и смайлики, у меня просто пустое окно

Не в сети

#11 2015-02-17 17:10:50

scarrr
Участник
Зарегистрирован: 2015-01-11
Сообщений: 51
Рейтинг :   

Re: минимальное количество символов

и еще,
http://ngcmshak.ru/interfeis/delaem-vybor-stilya-oformleniya-saita-polzovatelem.html
тут нет никаких ошибок? я просто пять раз уже всё препроверил всё по инструкции? всё равно не работает

Изменено scarrr (2015-02-17 17:12:46)

Не в сети

#12 2015-02-17 17:57:12

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: минимальное количество символов

scarrr пишет:

и еще,
http://ngcmshak.ru/interfeis/delaem-vybor-stilya-oformleniya-saita-polzovatelem.html
тут нет никаких ошибок? я просто пять раз уже всё препроверил всё по инструкции? всё равно не работает

надо смотреть так ни чего не скажу,у меня код был рабочий сам пользовался

Не в сети

Подвал раздела

Работает на FluxBB