Склонение месяцев

Все вопросы/проблемы по установке и использовании.
artyzz
Сообщения: 113
Зарегистрирован: 22 апр 2020, 23:28
Имя: Сергей
Откуда: Москва

Re: Склонение месяцев

Сообщение artyzz »

Fait писал(а): 12 янв 2024, 02:22 Да видите, в чём дело...
Склонение проще реализовать функцией в пользовательском PHP.
Потом в форме указывать в календарике дату.
И добавить поле PHP код.
В котором уже забрать дату из поля и отправить её в функцию.
Функция в результате вернёт нужный формат, который и нужно будет сохранить в записи и использовать где хочешь.

Я использую именно этот способ, так как он достаточно гибкий.
И я сделал функцию для преобразования дат ещё более гибкой.

Если актуально, могу прислать сюда код, который использую.
А что если отредактировать файл в руководителе? Наверняка за вывод даты отвечает несколько строк в 1-2 файлах. Проще чем переделывать все через костыли вручную
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 746
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Склонение месяцев

Сообщение Fait »

artyzz писал(а): 12 янв 2024, 05:16 А что если отредактировать файл в руководителе? Наверняка за вывод даты отвечает несколько строк в 1-2 файлах. Проще чем переделывать все через костыли вручную
Да, можно и так.
Только при каждом обновлении придётся к этим файлам возвращаться и менять заново.
Если через функции, то сделал один раз и забыл.
Onetema
Сообщения: 49
Зарегистрирован: 31 окт 2020, 20:50
Имя: Артём
Откуда: Москва

Re: Склонение месяцев

Сообщение Onetema »

Поделился бы кто знаниями с людьми ...
novgas
Сообщения: 19
Зарегистрирован: 29 ноя 2020, 20:22
Имя: Михаил Солохов
Откуда: Россия, Великий Новгород
Организация: Новгаз

Re: Склонение месяцев

Сообщение novgas »

Onetema писал(а): 16 янв 2024, 14:16 Поделился бы кто знаниями с людьми ...
Тут это не принято :lol: Но есть платная доработка :D :D :D

Не пойму почему тут не любят делиться кусками кода
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 746
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Склонение месяцев

Сообщение Fait »

Я так понял по сообщениям здесь, что мой способ не подходит. Вот я и не выкладываю... Чего время тратить, если не надо никому?

Если мой способ через PHP вам подойдёт, то я рад помочь, выложу завтра.

Просто помогаю помогаю, а в ответ обычное спасибо редко получаю.
Вот и напрашивается сам собой выход - помогать, когда об этом спрашивают. Это лучше, чем тратить время на то, чтобы выложить код, который и не нужен окажется.
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 746
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Склонение месяцев

Сообщение Fait »

Итак, вот таким кодом я пользуюсь (вставляйте в пользовательский PHP):

Код: Выделить всё

/*
В $dt отправляем дату в формате UNIXTIME
Вызываем функцию вот так:
$text = get_month_name($dt,'normal',0); // Январь
$text = get_month_name($dt,'skl',0); // Января
$text = get_month_name($dt,'normal',1); // январь
$text = get_month_name($dt,'skl',1); // января
*/
function get_month_name($dt,$type,$small) { // Получение названия месяца из даты
  $x = date("n",$dt);
  if ($type == 'normal') {
    switch ($x) {
      case 1: $z = 'Январь'; break;
      case 2: $z = 'Февраль'; break;
      case 3: $z = 'Март'; break;
      case 4: $z = 'Апрель'; break;
      case 5: $z = 'Май'; break;
      case 6: $z = 'Июнь'; break;
      case 7: $z = 'Июль'; break;
      case 8: $z = 'Август'; break;
      case 9: $z = 'Сентябрь'; break;
      case 10: $z = 'Октябрь'; break;
      case 11: $z = 'Ноябрь'; break;
      case 12: $z = 'Декабрь'; break;
    }
  }
  else if ($type == 'skl') {
    switch ($x) {
      case 1: $z = 'Января'; break;
      case 2: $z = 'Февраля'; break;
      case 3: $z = 'Марта'; break;
      case 4: $z = 'Апреля'; break;
      case 5: $z = 'Мая'; break;
      case 6: $z = 'Июня'; break;
      case 7: $z = 'Июля'; break;
      case 8: $z = 'Августа'; break;
      case 9: $z = 'Сентября'; break;
      case 10: $z = 'Октября'; break;
      case 11: $z = 'Ноября'; break;
      case 12: $z = 'Декабря'; break;
    }
  }
  if ($small == 1) {
    $z = lcfirst($z);
  }
  return $z;
}
Onetema
Сообщения: 49
Зарегистрирован: 31 окт 2020, 20:50
Имя: Артём
Откуда: Москва

Re: Склонение месяцев

Сообщение Onetema »

Спасибо большое Вам.
Мне к сожалению не помогло, но я буду еще пробовать .

Пока что помог "Костыль"
Берем фаил по адресу Корень/public_html/wftngs/includes/languages/russian.php
Строчка 480
Меняем на :
define('TEXT_DATEPICKER_MONTHS','"Января", "Февраля", "Марта", "Апреля", "Мая", "Июня", "Июля", "Августа", "Сентября", "Октября", "Ноября", "Декабря"');

Но логично что теперь везде будет прописываться именно так. Как я ранее и говорил "костыль" + при каждом обновлении будет слетать ...
artyzz
Сообщения: 113
Зарегистрирован: 22 апр 2020, 23:28
Имя: Сергей
Откуда: Москва

Re: Склонение месяцев

Сообщение artyzz »

Думаю стоит снести поправку в будущее обновление в /includes/languages/russian.php
Аватара пользователя
Fait
Инвестор
Инвестор
Сообщения: 746
Зарегистрирован: 19 ноя 2020, 17:46
Имя: Максим Балакшеев
Откуда: Россия, Златоуст
Организация: ИП Балакшеев Максим Георгиевич

Re: Склонение месяцев

Сообщение Fait »

А что не устраивает сейчас?
Склонение месяцев прекрасно делается через функцию PHP, описанную выше.
Причём сделать это можно очень гибко.
artyzz
Сообщения: 113
Зарегистрирован: 22 апр 2020, 23:28
Имя: Сергей
Откуда: Москва

Re: Склонение месяцев

Сообщение artyzz »

Fait писал(а): 02 апр 2024, 01:07 А что не устраивает сейчас?
Склонение месяцев прекрасно делается через функцию PHP, описанную выше.
Причём сделать это можно очень гибко.
Зачем какими либо функциями нагружать скрипт, когда вопрос решается заменой одной строчки в языковом файле?)
Ответить