Помогите, пожалуйста, со скриптом, который может изменить отображение возраста пользователя на странице профиля:
например:
-> с 21 (2004-06-01) на 21 год.
или
->может быть, скрыть год, отображая только дату и месяц. Например: 1 июня
Единый форум поддержки |
Привет, Гость! Войдите или зарегистрируйтесь.
Вы здесь » Единый форум поддержки » Вопросы по оформлению форума » Как изменить отображение возраста на странице профиля?
Помогите, пожалуйста, со скриптом, который может изменить отображение возраста пользователя на странице профиля:
например:
-> с 21 (2004-06-01) на 21 год.
или
->может быть, скрыть год, отображая только дату и месяц. Например: 1 июня
Попробуйте такой вариант в "Администрирование - Формы - HTML-низ":
<script>
$(document).pun_mainReady(function () {
if (window.location.pathname.indexOf('profile.php') !== -1) {
function profileAge(birthdate) {
var today = new Date(), birthDate = new Date(birthdate), age = today.getFullYear() - birthDate.getFullYear(), month = today.getMonth() - birthDate.getMonth();
if (month < 0 || (month === 0 && today.getDate() < birthDate.getDate())) {
age--;
}
//console.log("age: "+ age);
return age;
}
function langAge(age, lang) {
if (lang === 'en') {
return age + (age === 1 ? ' year' : ' years');
}
return age + (lang === 'ru' && age % 10 == 1 && age != 11 ? ' год' : (age % 10 >= 2 && age % 10 <= 4 && !(age >= 12 && age <= 14) ? ' года' : ' лет'));
}
var lang = $('html').attr('lang');
$('#pa-birthdate strong').each(function () {
var birthdate = $(this).text().match(/\d{4}-\d{2}-\d{2}/)[0]; //4-2-2
//console.log("birthdate: "+ birthdate);
$(this).text(langAge(profileAge(birthdate), lang));
});
}
});
</script>Сделал перевод в скрипте для англоязычной и русскоязычной аудитории

Вы здесь » Единый форум поддержки » Вопросы по оформлению форума » Как изменить отображение возраста на странице профиля?