PDA

Просмотр полной версии : Ошбка в newscalendar после установки на Linux


margol
09.07.2008, 12:41
1. Страница с календарем после установки на линукс не работает, включив display_errors вижу на числом листе:

Warning: xml_parser_set_option() [function.xml-parser-set-option]: Unsupported target encoding "windows-1251" in /var/www/typo3/t3lib/class.t3lib_div.php on line 2282

Fatal error: Call to undefined function ImageCreateTrueColor() in /var/www/typo3/typo3conf/ext/jb_gd_resize/class.ux_tslib_gifBuilder.php on line 59

Весь сайт написан на utf-8, только forseCharset="windows-1251" при замене на
forseCharset="utf-8"
все символы во фронтенде отображаются вопросиками. Как это избежать?

Вот настройки в констанс шаблона:

config {
language = ru
locale_all = ru_RU.UTF-8
}


Версия календаря 1.0.6 при попытке заменит на 1.0.8 ошибка:
Wrong file format. No data recognized, Decoding Error: No decompressor available for compressed content. gzcompress()/gzuncompress() functions are not available!


2. Прикрепляю картинку, отображающую как стал выглядеть календарь. Почему, как поправить?

void
09.07.2008, 14:06
только forseCharset="windows-1251
это не "только", это основная настройка... базу надо конвертировать в нормальную кодировку

margol
09.07.2008, 15:40
База создавалась запросом:
create database typo3 collate "utf8_unicode_ci"

margol
09.07.2008, 16:10
Со всеми проблемами разобралась, пересоздав страницы. Но вот почему кракозябры вместо названий месяцев и дней недель? См. картинку в первом сообщении.

margol
07.08.2008, 14:47
Вопрос актуален.

shuman
08.08.2008, 05:46
Вопрос актуален.

проверьте локаль
что выводит такой файл?

<?php

setlocale(LC_ALL, 'ru_RU.UTF-8');

echo strftime("%A %e %B %Y", mktime(0, 0, 0, 12, 22, 1978));

?>

margol
08.08.2008, 10:50
Выдает:
Пятница 22 Декабрь 1978

Мой setup:
config{
language = ru
locale_all = ru_RU.utf8
}

Если заменить первую строку кода на:
setlocale(LC_ALL, 'ru_RU.utf8');
Результат тот же:
Пятница 22 Декабрь 1978

Команда local -a выдает:
...
ru_RU.utf8
...

margol
12.08.2008, 10:55
Решение проблемы.
Чтобы календарь заговорил по русски, в constans шаблона удаляю все, что связано с каледарем. В setup следующие настройки:
#----------------CALENDAR-------------------------------------
plugin.tx_newscalendar_pi1 {
render{
monthLinkDisplay = 0
dayNameLength = 1
singleView = 7
backPage = 223
contextMenuLink = LEFT
displayType = 1
listPage = 224
startingPoint = 11,14
}
file{
cssCalendar = fileadmin/template/newscalendar/cssCalendar.css
cssContextMenu = fileadmin/template/newscalendar/cssContextMenu.css
listView.listViewTemplate = fileadmin/template/newscalendar/listViewTemplate*.html
}
listView{
strftime.main = %B %Y
strftime.header = %d.%m, %A
strftime.item >
}
calendar{
strftime.contextHeader = %A, %d/%m/%Y
strftime.contextItem = %H:%M
startWeekDay= 1
}
special.parserFunction = htmlspecialchars
show.allRecords = 1
}

lib.calendar_header=TEXT
lib.calendar_header.wrap=<a href="?id=223"><p class="h1_mini">КАЛЕНДАРЬ СОБЫТИЙ</p></a>
lib.calendar < plugin.tx_newscalendar_pi1
lib.calendar.wrap=<font size="-2">|</font>

Podlec
08.09.2008, 15:30
<?php

setlocale(LC_ALL, 'ru_RU.UTF-8');

echo strftime("%A %e %B %Y", mktime(0, 0, 0, 12, 22, 1978));

?>

выдает мне Friday 22 December 1978 :(
хотя на стороне хостинга вот такие вещи стоят

-bash-3.00# locale -a | grep ru
ru
ru.UTF-8
ru.koi8-r
ru_RU
ru_RU.ANSI1251
ru_RU.ISO8859-5
ru_RU.KOI8-R
ru_RU.UTF-8

Куда уже смотреть не знаю...