Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 4980 Просмотров
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
UPD
Разработчикам должно быть несколько неудобно - дав здесь ссылку на сайт, где можно скачать русифицированную версию компонента,
они не дают на нём никакой информации о том, что компонент был обновлён.

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




Ну не нужна мне она  ;D

Есть 2 простых варианта:
1) вырезать из (закомментировать в) views\showitem\tmpl\default.php
2) через CSS сделать display:none для кнопки

Но хочется сделать красиво (вдруг потом понадобится фича).

Итак:

1) administrator\components\com_djclassifields\config.xml добавляем в параметрах

Код
<param name="show_askform" type="list" default="0" label="SHOWASKFORM" size="30" menu="hide">
<option value="1">YES</option>
<option value="0">NO</option>
</param>

2) В языковой файл в админке добавляем строчку    SHOWASKFORM=Показать форму задать вопрос продавцу

3) пересохраняем параметры в админке;

4) В \components\com_djclassifields\views\showitem\tmpl\default.php добавляем где-нибудь вначале

Код
$params = &JComponentHelper::getParams('com_djclassifieds');
$showask=$params->get('show_askform');

И бывшую строку 88
Код
<?php if($i->user_id>0){ ?>

приводим в следующий вид:

Код
<?php if($i->user_id>0 AND $showask==1){ ?>

Всё - теперь у нас отображение формы можно задавать в параметрах, по умолчанию она выключена.
« Последнее редактирование: 21.03.2011, 14:46:00 от SDKiller »
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Косяк в версии 1.1.1 имеет место при построении условия вида:

Код
	
if($par->get('ask_seller','0')){
if($i->user_id>0){?>...

Условия сформировано наоборот, так как в параметрах 0 как раз означает скрывать форму.

Есть ещё один недочёт, на который я не обратил внимания раньше -  при включенном отображении формы "Задать вопрос продавцу", кнопку видят незарегистрированные пользователи, которые, как это жёстко задано в компоненте, вопросов продавцу задавать не могут.

Исправляем так:

Код
if($par->get('ask_seller','1') AND !($user->guest)){


Кстати, не совсем понятно, почему далее разработчики сделали проверку на то, гость это или нет через $user_id=='0'

Не всякий каким-либо образом переданный в запрос ненулевой id будет валидным.

*

AlexSF

  • Давно я тут
  • 678
  • 68 / 0
  • В споре истина рождается
Спасибо весьма полезно.
Теперь вопрос по теме Вырезать/Скрыть.
Как можно Вырубить из показа на сайте Имя автора(ну не нужно оно) и количество просмотров объявления.
Ещё раз спасибо.
Задаёте вопрос - не забудьте приложить ссылку на проблемный сайт
При проблеме с CSS рекомендую использовать Mozilla Firefox и её плагин FireBug
И по максимуму изучите, или поставьте в закладки - http://htmlbook.ru/css
Notepad++ поможет почти в любом деле
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
В версии 1.1.1 - в параметрах - "Показывать информацию об объявлении" - Нет

Можем скрыть таким образом следующее:

Цитировать
Информация
ID объявления:105
Просмотров:11
Истекает:2011-11-26
Добавлено:2011-01-30

Имя автора - в шаблоне

views\showitem\tmpl\default.php

Код
	<div class="row user_name">
<span><?php echo JText::_('Sold by:'); ?></span>
<?php
if($i->user_id==0){
echo JText::_('Guest');
}else{
echo '<a href="index.php?option=com_djclassifieds&view=show&uid='.$i->user_id.'">'.$i->username.' <span>('.$this->user_items_c.')</span></a>';
}
?>
</div>
*

AlexSF

  • Давно я тут
  • 678
  • 68 / 0
  • В споре истина рождается
Вырезать данный код это хорошо, но вот я вдруг подумал о скрытии имени для гостей.
То есть внеся соответственно в config.xml параметр скрывать имя автора(допустим usernames)
И добавив
 $usernames=$par->get('usernames');

И соответственно
Код
<div class="row user_name">
<span><?php echo JText::_('usernames'); ?></span>
<?php
                 if($par->get('usernames','1') AND !($user->guest)){
                 if($i->user_id==0){
echo JText::_('Guest');
}else{
echo '<a href="index.php?option=com_djclassifieds&view=show&uid='.$i->user_id.'">'.$i->username.' <span>('.$this->user_items_c.')</span></a>';
}
?>
Я смогу по необходимости выключать данный параметр(usernames)
Я Вас правильно понял?

Приношу свои извинения за быстрые изменения в своих потребностях, просто подумал что потом пользователь не сможет видеть список своих объявлений.
Да я умолчал что пилю версию 1.1.2
« Последнее редактирование: 04.02.2011, 14:54:09 от AlexSF »
Задаёте вопрос - не забудьте приложить ссылку на проблемный сайт
При проблеме с CSS рекомендую использовать Mozilla Firefox и её плагин FireBug
И по максимуму изучите, или поставьте в закладки - http://htmlbook.ru/css
Notepad++ поможет почти в любом деле
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Ну если смысл в том, стобы скрывать имя от гостей, то должно сработать.
Только ещё одну закрывающую } скобку в конце добавить.

1.1.2 от 1.1.1 отличается только исправленным польским языковым файлом и номером версии в xml-файлах.
*

AlexSF

  • Давно я тут
  • 678
  • 68 / 0
  • В споре истина рождается
Цитировать
1.1.2 от 1.1.1 отличается только исправленным польским языковым файлом и номером версии в xml-файлах.

Плюс ещё пропущено пару тройку переменных в языковом файле админки
Задаёте вопрос - не забудьте приложить ссылку на проблемный сайт
При проблеме с CSS рекомендую использовать Mozilla Firefox и её плагин FireBug
И по максимуму изучите, или поставьте в закладки - http://htmlbook.ru/css
Notepad++ поможет почти в любом деле
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Кстати, подумал, смысл этой ссылки - возможность показать все объявления этого продавца, что может быть полезно.

Тогда можно .$i->username. заменить на текст, например Показать все объявления этого продавца


А вот это не нужно
Код
php echo JText::_('usernames')
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Вот как то так:

Код
<div class="row user_name">
<span><?php echo JText::_('Sold by:'); ?></span>
<?php
                 if($par->get('usernames','1') AND !($user->guest)){$to_show = $i->username;} else {$to_show = JText::_('To show:');}
                 if($i->user_id==0){
echo JText::_('Guest');
}else{
echo '<a href="index.php?option=com_djclassifieds&view=show&uid='.$i->user_id.'">'.$to_show.' <span>('.$this->user_items_c.')</span></a>';
}
?>

И добавляем в языковой файл TO SHOW:=Показать все объявления этого продавца
*

AlexSF

  • Давно я тут
  • 678
  • 68 / 0
  • В споре истина рождается
Упредили. :D Спасибо!

В оригинале эта строка выглядит так:
Код
<span><?php echo JText::_('Sold by:'); ?></span>

Sold by: - есть в языковых файлах. Так
Код
echo JText::_('usernames')
думал привязать usernames к языковому файлу данную точку.
Задаёте вопрос - не забудьте приложить ссылку на проблемный сайт
При проблеме с CSS рекомендую использовать Mozilla Firefox и её плагин FireBug
И по максимуму изучите, или поставьте в закладки - http://htmlbook.ru/css
Notepad++ поможет почти в любом деле
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Самое смешное - в компоненте не реализован функционал просмотра этих самых вопросов )))
Ни с фронта, ни из админки.

Если только через phpMyAdmin )))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать поле Контакты при добавлении объявления?

Автор THE KILLERS

Ответов: 0
Просмотров: 1299
Последний ответ 03.12.2021, 21:56:30
от THE KILLERS
Как убрать, расширенный поиск

Автор igorMas

Ответов: 0
Просмотров: 1351
Последний ответ 06.11.2021, 10:24:31
от igorMas
Как убрать скобки при выводе количества объектов в категории?

Автор burano

Ответов: 8
Просмотров: 1895
Последний ответ 19.10.2018, 11:45:06
от itswd
Убрать поле заголовок

Автор a159cm

Ответов: 2
Просмотров: 1049
Последний ответ 06.10.2018, 17:01:36
от a159cm
"Задать вопрос продавцу" смена email исходящего письма

Автор shturmanoid

Ответов: 2
Просмотров: 3333
Последний ответ 26.04.2016, 17:36:48
от Patriot1986