Забыли пароль?
Запросите новый здесь.

Автор темы: top1c
ID темы: 2428
Информация:
Тема содержит 12 сообщения, была просмотрена 11489 раз.  Имеются прикрепленные файлы.
Просмотр темы
PHP-Fusion Russia » Поддержка 7 версии » Вопросы новичков
 Распечатать тему
Русификация календаря
top1c
Помогите пожалуйста сделать месяца русскими! (Дни недели исправил а вот месяцев нет в файле , все перепробовал не могу понять где их русифицировать...)
что пытался сделать:
пересмотел весь нижележащий файл там месяцев нет
смотрел в английской локалии global.php исправлял там месяца на русские не помогло
в комплекте с панелью идет своя локаль но там только 1 строка (это название самой панели)
писал в хостинг сказали язык зависит от скрипта а не от нас
Вот сайт на котором календарь http://24rvs.ru
вот код панели:
<?php
/*-------------------------------------------------------+
| PHP-Fusion Content Management System
| Copyright (C) 2002 - 2008 Nick Jones
| http://www.php-fusion.co.uk/
+--------------------------------------------------------+
| Filename: calender_panel.php
| Author: Nick Jones (Digitanium)
+--------------------------------------------------------+
| This program is released as free software under the
| Affero GPL license. You can redistribute it and/or
| modify it under the terms of this license which you
| can read by viewing the included agpl.txt or online
| at www.gnu.org/licenses/agpl.html. Removal of this
| copyright header is strictly prohibited without
| written permission from the original author(s).
+--------------------------------------------------------*/

if (file_exists(INFUSIONS."calender_panel/locale/".$settings['locale'].".php"ad) {
include INFUSIONS."calender_panel/locale/".$settings['locale'].".php";
} else {
include INFUSIONS."calender_panel/locale/English.php";
}


if (isset($_POST['prev_month']) && (isset($_POST['cur_month']) && isnum($_POST['cur_month'])) && (isset($_POST['cur_year']) && isnum($_POST['cur_year']))) {
if ($_POST['cur_month'] == 1) {
$date = mktime(0, 0, 0, 12, 1, ($_POST['cur_year'] - 1));
} else {
$date = mktime(0, 0, 0, ($_POST['cur_month'] - 1), 1, $_POST['cur_year']);
}
} elseif (isset($_POST['next_month']) && (isset($_POST['cur_month']) && isnum($_POST['cur_month']))) {
if ($_POST['cur_month'] == 12) {
$date = mktime(0, 0, 0, 1, 1, ($_POST['cur_year'] + 1));
} else {
$date = mktime(0, 0, 0, ($_POST['cur_month'] + 1), 1, $_POST['cur_year']);
}
} else {
$date = time();
}

$day = date("d", $date);
$month = date("m", $date);
$year = date("Y", $date);
$first_day = mktime(0, 0, 0, $month, 1, $year);
$title = date("F", $first_day);
$day_of_week = date("D", $first_day);

switch ($day_of_week) {
case "Mon": $blank = 0; break;
case "Tue": $blank = 1; break;
case "Wed": $blank = 2; break;
case "Thu": $blank = 3; break;
case "Fri": $blank = 4; break;
case "Sat": $blank = 5; break;
case "Sun": $blank = 6; break;
}

$days_in_month = cal_days_in_month(0, $month, $year);
$day_count = 1;
$day_num = 1;


openside($locale['cal_100']);
echo "<form name='calender_form' method='post' action='".FUSION_SELF.(FUSION_QUERY ? "?".FUSION_QUERY : ""ad."'>\n";
echo "<table width='100%'>\n<tr>\n";
echo "<th><input type='submit' name='prev_month' value='&lt;' class='button' /></th>\n";
echo "<th colspan='5'>".$title." ".$year."</th>\n";
echo "<th><input type='submit' name='next_month' value='&gt;' class='button' /></th>\n";
echo "</tr>\n<tr>\n";
echo "<td style='text-align:center'>&#1055;&#1085;</td>\n";
echo "<td style='text-align:center'>&#1042;&#1090;</td>\n";
echo "<td style='text-align:center'>&#1057;&#1088;</td>\n";
echo "<td style='text-align:center'>&#1063;&#1090;</td>\n";
echo "<td style='text-align:center'>&#1055;&#1090;</td>\n";
echo "<td style='text-align:center'>&#1057;&#1073;</td>\n";
echo "<td style='text-align:center'>&#1042;&#1089;</td>\n";
echo "</tr>\n<tr>\n";

while ($blank > 0) {
echo "<td></td>\n";
$blank = $blank-1;
$day_count++;
}

while ($day_num <= $days_in_month) {
if ($year == date("Y", time()) && $month == date("m", time()) && $day_num == date("d", time())) {
echo "<td style='text-align:center'><strong>".$day_num."</strong></td>\n";
} else {
echo "<td style='text-align:center'>".$day_num."</td>\n";
}
$day_num++;
$day_count++;

if ($day_count > 7) {
echo "</tr>\n<tr>\n";
$day_count = 1;
}
}

while ($day_count > 1 && $day_count <= 7) {
echo "<td></td>\n";
$day_count++;
}

echo "</tr>\n</table>\n";
echo "<input type='hidden' name='cur_month' value='".$month."' />\n";
echo "<input type='hidden' name='cur_year' value='".$year."' />\n";
echo "</form>";
closeside();
?>

 
Rush
Загрузить источник  GeSHi: PHP
  1. $month = date("m", $date);
Добавлено за 0.022 секунд, используя GeSHi 1.0.8.10

документацию открывать не пробовали? http://php.net/ma...n.date.php


 
Web
top1c
Ну это замечательно, а как сделать название месяца русским?:)
Rush написал:

Загрузить источник  GeSHi: PHP
  1. $month = date("m", $date);
Добавлено за 0.020 секунд, используя GeSHi 1.0.8.10

документацию открывать не пробовали? http://php.net/ma...n.date.php

 
Rush
какие ленивые люди.
у тебя есть несколько вариантов:
1) стандартный - использовать setlocale() http://php.net/ma...locale.php
2) варварский - иметь массив с парами "номер месяца" - "русское название" и использовать date('n'ad в качестве ключа
3) варварский продвинутый - использовать готовые решения, например весьма распространенный Carbon https://github.co...itt/Carbon


 
Web
top1c
я не ленивый, я не знаю php! ac Эта тема создана в разделе "помощь для чайников" ! ab
Пожалуйста можете алгоритм действий описать, что где заменить, чтоб было понятно ab
Rush написал:

какие ленивые люди.
у тебя есть несколько вариантов:
1) стандартный - использовать setlocale() http://php.net/ma...locale.php
2) варварский - иметь массив с парами "номер месяца" - "русское название" и использовать date('n'ad в качестве ключа
3) варварский продвинутый - использовать готовые решения, например весьма распространенный Carbon https://github.co...itt/Carbon

 
Rush
Загрузить источник  GeSHi: PHP
  1.  
  2. $monthes = array(1 => 'Январь', 2 => 'Февраль'....);
  3. $month = $monthes[date("n", $date)];
  4.  
Добавлено за 0.020 секунд, используя GeSHi 1.0.8.10


встает резонный вопрос, если не знаете пхп и нет желания изучать, зачем в это лезть?


 
Web
Polarfox
У нас кстати есть локаль на месяцы
Скачать исходники  Код
// Full & Short Months
$locale['months'] = "&nbsp;|Январь|Февраль|Март|Апрель|Май|Июнь|Июль|Август|Сентябрь|Октябрь|Ноябрь|Декабрь";
$locale['shortmonths'] = "&nbsp|Янв|Фев|Мар|Апр|Май|Июнь|Июль|Авг|Сен|Окт|Ноя|Дек";



только они строки

и нигде не используются, это самое тупое.


Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
top1c
для того чтобы ска сделать его русским!
поставил вместо
$month = date("m", $date);
то что вы написали:
$monthes = array(1 => 'Январь', 2 => 'Февраль'....);
$month = $monthes[date("n", $date)];
_______
числа пропали осталась одна шапка панели, месяц вообще январь отобразился, и по английски.
Rush написал:

Загрузить источник  GeSHi: PHP
  1.  
  2. $monthes = array(1 => 'Январь', 2 => 'Февраль'....);
  3. $month = $monthes[date("n", $date)];
  4.  
Добавлено за 0.022 секунд, используя GeSHi 1.0.8.10


встает резонный вопрос, если не знаете пхп и нет желания изучать, зачем в это лезть?

 
GMan1990
В общем, сделай так:

Прописывай в файл:
Скачать исходники  Код
setlocale(LC_ALL, 'ru_RU.utf8');



или если кодировка 1251, то:
Скачать исходники  Код
setlocale(LC_ALL, 'ru_RU.CP1251');



а вообще лучше дописать эту строчку в конце файла maincore.php перед
Скачать исходники  Код
include INCLUDES."system_images.php";




Далее, заменяешь:
Скачать исходники  Код
date("F", $start);



на
Скачать исходники  Код
strftime('%B', $start);




Это в файле calendar.php

в твоём файле:
Скачать исходники  Код
date("m", $date);



на
Скачать исходники  Код
strftime('%B', $date);




Изменил(а) GMan1990, 18.02.2015 18:37
Человек
 
Web
top1c
такая же ерунда. Месяц выскакивает Январь по анг, и все числа исчезают.

 
GMan1990
Сделал, прикрепил.
У меня UTF8, для CP1251 там надо заменить будет

GMan1990 присоединено следующее:файл:
events_management_system_panel.rar [3.67кБ / 457 Загрузки]
GMan1990 присоединено следующее:изображение:
2015-02-20_151239.png

Человек
x2
 
Web
top1c
Добавил эту панель, включаю, ничего не появляется ac Может там еще какие то файлы должны быть? можешь полностью панельку заархивировать?
GMan1990 написал:

Сделал, прикрепил.
У меня UTF8, для CP1251 там надо заменить будет

 

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Темы Форум Ответов / Просмотров Последние сообщения
дата в новостях и статьях в виде календаря  →  Моды 5 / 10416 23.11.2015 07:16
Топ 5 пользователей форума
Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)   SchreiBear SchreiBear (625)