Интеграция Coppermine gallery с SMF

Автор Mavn, 04 января 2007, 19:17:00

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Mavn

Установка Coppermine gallery

Для того чтобы появилась возможность работать с галереей в кодировке windows-1251 нам необходимо сделать следующее:

1. Скачать галерею с официального сайта
2. Установить галерею
3. Изменить файл admin.php
найти
'Cyrillic' => 'koi8-r',
после добавить
'Cyrillic' => 'windows-1251',
4. Зайти в конфигурацию галереи и изменить кодировку галереи с utf-8 на windows-1251
5. закинуть файл русификации в директорию lang
6. Получаем рабочую галерею в кодировке windows-1251

Обратите внимание если Вы используете кодировку utf-8 для форума smf то Вам необходимо выполнить только 1 и 2 пункты.

Теперь приступаем к интеграции SMF и Coppermine

1. Запускаем менеджер интеграции например так http://localhost/cpg/bridgemgr.php . После запуска видим  такую картинку



выбираем "Simple Machines (SMF)" после чего жмем "дальше"
2. Заполняем поля конфигурации



после чего жмем "дальше"
3. Данный пункт интеграции выбирается по желанию, в любом случае Вы сможете позже изменить настройки



после чего жмем "дальше"
4. Проверяем настройки, выбираем "включить" интеграцию и жмем "закончить"



Интеграция SMF и Coppermine готова. О том как интегрировать интерфейсы систем можно прочитать в данной теме.
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

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

rewue

#1
Все вышеописанные действия приведут к тому что мы получим галерею в кодировке windows-1251, а следующим шагом необходимо заставить галерею "подтянуть" группы из форума.
Итак что делать для этого (форум и галерея используют одну базу)

1. Открываем файл /bridge/smf10.inc.php

2. Находим следующую строку

Цитироватьrequire_once('../smf/SSI.php');
        $boardurl = 'http://www.mysite.com/board';

и изменяем на те которые нужны вам

     
Цитироватьrequire_once('../forum/SSI.php');
        $boardurl = 'http://www.mysite.com/forum';

3. В функции cpg_udb() находим строку
Цитировать$this->group_overrride = 1;
и заменяем значение на 0 (мы запретили заменять группы с форума на группы галереи)
Цитировать$this->group_overrride = 0;

4. Следующий шаг -  в функции get_groups($row) находим строки

Цитировать//$data[$id] = $group+$i; This was overwriting the primary group
  $data[] = $group+$i;  //appends additionalGroups to the primary group.


меняем местами комментарий

Цитировать$data[$id] = $group+$i; //This was overwriting the primary group
   //$data[] = $group+$i;  //appends additionalGroups to the primary group.


5. Записываем измененный файл и заливаем на хост.
6. После этого включаем бридж между форумом и галереей С ИСПОЛЬЗОВАНИЕМ ГРУПП НА ОСНОВЕ СООБЩЕНИЙ. В результате этих действий - подтягиваются группы с форума (на скриншоте видны группы форума с моего портала)


... потому что мы живем на последнем, седьмом, слое Сумрака...


TXT

Цитата: rewue от 05 января 2007, 20:38:53После этого включаем бридж между форумом и галереей С ИСПОЛЬЗОВАНИЕМ ГРУПП НА ОСНОВЕ СООБЩЕНИЙ. В результате этих действий - подтягиваются группы с форума
Группы-то подтягиваются, но...

Кодировка выставлена строго по инструкциям.
Прекрасно отображается русский язык.
Но названия групп  уже в виде вопросов...
Оговорюсь, что в базе данных все таблицы в cp1251_general_ci (специально глянул).
Любой ввод текста на русском языке отображается тоже вопросиками (и это независимо от того, включена интеграция или нет).
По форуму походит - там решали проблемы отображения интерфейса, но с его кодировкой и так все нормально.
А вот как с текстом решить, который в базу заносится?

TXT

Вот решение:

Цитировать1. Находим в папке coppermine файл bridgemgr.php
в нем ищем строку:
$link = mysql_connect($_POST['db_hostname'], $_POST['db_username'], $_POST['db_password']);

сразу после нее дописываем еще одну строку:
mysql_query("SET NAMES cp1251", $link);

аналогично находим строку:
$link = @mysql_connect($BRIDGE['db_hostname'], $BRIDGE['db_username'], $BRIDGE['db_password']);

и добавляем сразу после нее:
mysql_query("SET NAMES cp1251", $link);

2. В файле coppermine\include\functions.inc.php ищем строку:
$result = @mysql_connect($CONFIG['dbserver'], $CONFIG['dbuser'], $CONFIG['dbpass']);

после нее добавляем
mysql_query("SET NAMES cp1251", $result);

3. В файле coppermine\bridge\udb_base.inc.php ищем строку:
$this->link_id = mysql_connect($this->db['host'], $this->db['user'], $this->db['password']);

после нее добавляем:
mysql_query("SET NAMES cp1251", $this->link_id);

Скажем спасибо Varrah'y


Этой проблемой страдают многие, поэтому не лишним будет и здесь выложить решение её.

Добавлю, что после первом можно или такую вписать:
Цитироватьmysql_query("/*!40101 SET NAMES 'cp1251' */") or die("Error: " . mysql_error());

TXT

Если поиск работает только по латинским словам, а по кириллическим нет (галерея в windows-1251):
ЦитироватьНайти /incude/search.inc.php

найти $multibyte_charset = 'UTF-8, big5, shift_jis, euc-kr, gb2312';

заменить на $multibyte_charset = 'UTF-8, windows-1251, big5, shift_jis, euc-kr, gb2312';

interdon

Цитата: Mavn от 04 января 2007, 19:17:00
Установка Coppermine gallery
3. Изменить файл admin.php
найти
'Cyrillic' => 'koi8-r',
после добавить
'Cyrillic' => 'windows-1251',
4. Зайти в конфигурацию галереи и изменить кодировку галереи с utf-8 на windows-1251

Огромная просьба обновить инструкцию для cpg1.5.16

Выше приведённых пунктов в ней нет

dimsarostov

Цитата: interdon от 13 сентября 2011, 15:55:35
Огромная просьба обновить инструкцию для cpg1.5.16

Выше приведённых пунктов в ней нет

Да, как-то хочется инструкции для установки на 2.0.2 с utf-8.