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

leprikon_s

  • Захожу иногда
  • 60
  • 4 / 0
AdsManager поиск по дате
« : 17.03.2009, 00:30:35 »
Вот такая лажа, календарик не выводится
Стоит joomla 1.5.9 и adsmanager 2.5.0
Есть код в adsmanager.html.php расширенный поиск

Код
case 'price':
echo "<select id='".$fsearch->name."' name='".$fsearch->name."'>\n";
echo "<option value='' >&nbsp;</option>\n";
if (isset($field_values[$fsearch->fieldid])) {
foreach($field_values[$fsearch->fieldid] as $v)
{
$ftitle = adsmanager_html::getLangDefinition($v->fieldtitle);
echo "<option value='$v->fieldvalue' >$ftitle</option>\n";
}
}

echo "</select>\n";
break;

case 'textarea':
case 'number':
case 'emailaddress':
case 'url':
case 'text':
echo "<input name='".$fsearch->name."' id='".$fsearch->name."' maxlength='20' class='inputbox' type='text' size='20' />";
break;
}
echo "</td>";

Я добавил здесь и в файле adsmanager.php строчку
case 'date'
поиск вроде работает,  но календарик не выыводится, дату руками вводил.
Для вывода календаря при добавлении объявления используется код (тут работает)

Код
$return = "<input $class type='text' name='$field->name' id='$field->name' size='25' maxlength='19' value='$value'        readonly=true/>";
$return .= "<input name='reset' type='reset' class='button' onclick=\"return showCalendar('$field->name', ' %d-%m-%Y');\" value='...' />";
echo $return;
Но в рассширеном поиске повялется кнопка,а сам календарь не открывается.

предложили вот такой вариант
Код
case 'date':
JHTML::_('behavior.calendar');
if ($field->required == 1)
$class= "class='adsmanager_required' mosReq='1' mosLabel='$strtitle'";
else
$class= "class='adsmanager'";
$return = JHTML::_('calendar', $cal_var, 'cal_var', 'cal_var', '%Y-%m-%d %H:%M:%S', array('class'=>'inputbox', 'size'=>'25',  'maxlength'=>'19'));
echo $return;
break;

календарь работает, добавляет в нужное поле, но поиск тогда не работает.




*

viktor_viktor

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Re: AdsManager поиск по дате
« Ответ #1 : 11.06.2009, 23:43:18 »
Подскажите, пожалуйста, решилась проблема  отображения календаря в поиске ?
*

demon1977

  • Осваиваюсь на форуме
  • 31
  • 7 / 0
Re: AdsManager поиск по дате
« Ответ #2 : 19.10.2009, 01:09:08 »
Кто то нашел решение?
*

demon1977

  • Осваиваюсь на форуме
  • 31
  • 7 / 0
Re: AdsManager поиск по дате
« Ответ #3 : 22.10.2009, 20:04:47 »
 :D... Всем спасибо, решение найдено.
*

leprikon_s

  • Захожу иногда
  • 60
  • 4 / 0
Re: AdsManager поиск по дате
« Ответ #4 : 25.10.2009, 22:48:37 »
:D... Всем спасибо, решение найдено.
можно решение в студию ? :)
*

demon1977

  • Осваиваюсь на форуме
  • 31
  • 7 / 0
Re: AdsManager поиск по дате
« Ответ #5 : 26.10.2009, 13:06:20 »
Вообщем я не силен в php, поэтому пришлось повозится. Календарь взял от MarketPlace (во вложении), его нужно положить в папочку '/components/com_adsmanager/
Строки у меня уже сдвинуты поэтому после этого места строка где то в районе 404
Код
case 'price':
echo "<select id='".$fsearch->name."' name='".$fsearch->name."'>\n";
echo "<option value='' >&nbsp;</option>\n";
if (isset($field_values[$fsearch->fieldid])) {
foreach($field_values[$fsearch->fieldid] as $v)
{
$ftitle = adsmanager_html::getLangDefinition($v->fieldtitle);
echo "<option value='$v->fieldvalue' >$ftitle</option>\n";
}
}

echo "</select>\n";
break;
Вставляем это:
Код
case 'date': 
?>
<input size="10" type="text" name="<?php echo $fsearch->name; ?>" id="<?php echo $fsearch->name; ?>" value="<?php $value ?>"/><button type="reset" id="f_trigger_a">...</button>
<link rel="stylesheet" type="text/css" media="all" href="<?php echo $mosConfig_live_site.'/components/com_adsmanager/jscalendar/calendar-system.css'; ?>" title="win2k-1" />
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar.js"></script>
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar-en.js"></script>
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar-setup.js"></script>
<script type="text/javascript">
                    Calendar.setup({
                        inputField     :    "<?php echo $fsearch->name; ?>",  // id of the input field
                        ifFormat       :    "%d.%m.%y",      // format of the input field
                        showsTime      :    false,           // will display a time selector
                        button         :    "f_trigger_a",   // trigger for the calendar (button ID)
                        singleClick    :    true,            // double-click mode
                        step           :    1                // show all years in drop-down boxes (instead of every other year as default)
                    });
               </script>
<?php
break;
Дальше с родным календариком была проблема при добавлении даты без регистрации, при добавлении даты все поля очищались поэтому я заменил и там календарь, строка опять же сдвинута но где то в районе 1234 заменяем
Код
case 'date':
mosCommonHTML::loadCalendar();
if ($field->required == 1)
$class= "class='adsmanager_required' mosReq='1' mosLabel='$strtitle'";
else
$class= "class='adsmanager'";

$return = "<input $class type='text' name='$field->name' id='$field->name' size='25' maxlength='19' value='$value' readonly=true/>";
$return .= "<input name='reset' type='reset' class='button' onclick=\"return showCalendar('$field->name', '%y-%m-%d');\" value='...' />";
echo $return;
break;


на

Код
case 'date': 
?>
<input size="10" type="text" name="<?php echo $field->name; ?>" id="<?php echo $field->name; ?>" value="<?php echo $value ?>"/><button type="reset" id="f_trigger_a">...</button>
<link rel="stylesheet" type="text/css" media="all" href="<?php echo $mosConfig_live_site.'/components/com_adsmanager/jscalendar/calendar-system.css'; ?>" title="win2k-1" />
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar.js"></script>
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar-en.js"></script>
        <script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/components/com_adsmanager/jscalendar/calendar-setup.js"></script>
<script type="text/javascript">
                    Calendar.setup({
                        inputField     :    "<?php echo $field->name; ?>",  // id of the input field
                        ifFormat       :    "%d.%m.%y",      // format of the input field
                        showsTime      :    false,           // will display a time selector
                        button         :    "f_trigger_a",   // trigger for the calendar (button ID)
                        singleClick    :    true,            // double-click mode
                        step           :    1                // show all years in drop-down boxes (instead of every other year as default)
                    });
               </script>
<?php

break;

Ну вот вроде и все.

[вложение удалено Администратором]
*

leprikon_s

  • Захожу иногда
  • 60
  • 4 / 0
Re: AdsManager поиск по дате
« Ответ #6 : 27.10.2009, 09:23:08 »
спасиб будем смотреть :)
*

DK-Scorp

  • Захожу иногда
  • 228
  • 6 / 0
  • Всегда готов! К чему только....? ХЗ.....
Re: AdsManager поиск по дате
« Ответ #7 : 29.01.2010, 09:37:16 »
У кого нибудь работает?
Что то не выходит, можно поподробней для нубов где, в каком месте и что вставлять
*

deadbones

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
  • sex drugs drum'n'bass
Re: AdsManager поиск по дате
« Ответ #8 : 13.04.2010, 11:54:10 »
+1
То что надо,дату добавляет в обявление как надо,ато старый не добавлял
только глюк,когда вводиш два поля для даты,работает только первая кнопка выбора календаря и вписывает дату во второе поле...нужно продумать этот нюанс,скорей всего он генерируется один раз,и привязывается в одно место...вобщем буду ковырять дальше...



Решил


нужно уникальный триггер для каждого поля календаря



<button type="reset" id="f_trigger_<?php echo $fsearch->name; ?>">Выберите дату</button>



<script type="text/javascript">
                    Calendar.setup({
                        inputField     :    "<?php echo $fsearch->name; ?>",  // id of the input field
                        ifFormat       :    "%d.%m.%y",      // format of the input field
                        showsTime      :    false,           // will display a time selector
                        button         :    "f_trigger_<?php echo $fsearch->name; ?>",   // trigger for the calendar (button ID)
                        singleClick    :    true,            // double-click mode
                        step           :    1                // show all years in drop-down boxes (instead of every other year as default)
                    });
</script>
« Последнее редактирование: 21.04.2010, 17:57:41 от deadbones »
*

Ain

  • Новичок
  • 3
  • 0 / 0
Re: AdsManager поиск по дате
« Ответ #9 : 10.02.2011, 22:07:42 »
А что писать в adsmanager.php, чтобы заработал поиск с какой-то даты? Так же при включении расширенного поиска со всеми приведенными изменениями показывает ошибку:
Break on Error
Calendar is not defined
« Последнее редактирование: 10.02.2011, 22:15:49 от Ain »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 9126
Последний ответ 27.03.2020, 22:39:23
от Pavel
Два компонента AdsManager в одном движке

Автор kaman62

Ответов: 12
Просмотров: 24207
Последний ответ 27.03.2020, 22:32:04
от Pavel
Onlinestatus CB в AdsManager

Автор Den JW

Ответов: 1
Просмотров: 6876
Последний ответ 17.02.2020, 23:37:52
от Den JW
Хочу уточнить, есть в AdsManager возможность загрузки объявлений с парсера?

Автор DomBeri

Ответов: 3
Просмотров: 5534
Последний ответ 28.03.2019, 17:20:10
от DomBeri
Изменить категории в AdsManager 3.1.5

Автор Doc

Ответов: 2
Просмотров: 5976
Последний ответ 17.03.2019, 21:17:30
от Doc