Добавление автора фотографии в PhocaGallery.Оговорюсь сразу - добавляю только инфу об авторе фото. Никакой интеграции с CB нет. И как ее реализовать - не знаю. И вывод авторства в JAK я не сделал. Мне он не нужен. И времени разбираться с ненужным функционалом, увы, нет.
Итак:
1. Изменяем в phpmyadmin таблицу jos_phocagallery.
Добавляем поле "author" (varchar(100)). Я разместил его сразу за полем "title".
2. Правим файл components\com_phocagallery\views\category\tmpl\default_upload.phpПосле 104 строки вставляем:
<tr>
<td><?php
// Jay - Выводим надпись "Автор" рядом с полем для имени автора
echo JText::_( 'Image Author' ); ?>:</td>
<td>
<?php
// Jay - Выводим текстовое поле для ввода имени автора фото - по умолчанию берется имя пользователя Joomla
$user =& JFactory::getUser();
echo '<input type="text" id="phocagallery-upload-author" name="phocagalleryuploadauthor" value="'.$user->name.'" maxlength="100" class="comment-input" />'
?>
</td>
</tr>
3. Правим файл components\com_phocagallery\controllers\category.phpПосле 399 строки вставляем:
// Jay - Добавляем значение поля "Автор" в БД
$post['author'] = JRequest::getVar( 'phocagalleryuploadauthor', '', 'post', 'string', 0 );
4. Правим файл components\com_phocagallery\views\category\tmpl\default.phpЗаменяем 123 строку. Т.е. находим и правим функцию:
if ($value->overlib == 0) {
echo ' title="'. $value->title.'"';
}
Заменяем исходную строку на:
// Jay - Добавляем в вывод автора фотографии в формате "| Автор: $username". Этот вывод - slimbox'a
echo ' title="'. $value->title.' | '.JText::_( 'Image Author' ).': '.$value->author.'"';
5. Правим файл components\com_phocagallery\views\detail\tmpl\default.phpЗаменяем 17 строку на:
// Jay - Добавляем в вывод автора фотографии в формате "| Автор: $username". Вывод для нескольких типов - разбираться лень :))
$titleDesc .= $this->item->title.' | '.JText::_( 'Image Author' ).': '.$this->item->author;
6. Правим языковые файлы:language\ru-RU\ru-RU.com_phocagallery.ini
administrator\language\ru-RU\ru-RU.com_phocagallery.ini
Добавляем в оба файла:
7. Правим файлы:administrator\components\com_phocagallery\models\phocagallery.php | После 362 строки
administrator\components\com_phocagallery\models\phocagalleryc.php | После 392 строки
Добавляем в оба файла строчку:
// Jay - добавлено поле Author
$table->author = null;
administrator\components\com_phocagallery\tables\phocagallery.php | После 24 строки
administrator\components\com_phocagallery\tables\phocagalleryc.php | После 18 строки
Добавляем в оба файла строчку:
// Jay - добавлено поле Author
var $author = null;
8. Правим файл administrator\components\com_phocagallery\views\phocagallery\tmpl\form.phpПосле 60 строки добавляем код:
<tr>
<td width="100" align="right" class="key">
<label for="title">
<?php
// Jay - Добавление поля Автор в админке
?>
<?php echo JText::_( 'Image Author' ); ?>:
</label>
</td>
<td colspan="2">
<input class="text_area" type="text" name="author" id="author" size="32" maxlength="100" value="<?php echo $this->items->author;?>" />
</td>
</tr>
Вроде ничего не забыл. Будут вопросы - готов, по мере возможности, помочь. Удачи!
P.S. За неоценимую помощь при реализации данного хака благодарю
Dmitry Egorov! Во имя DMCA! Enter!
P.P.S. Благодарю asos за внимательность - в мануале модификации были допущены ошибки. Теперь все правильно.