Форум русской поддержки Joomla!® CMS
06.12.2016, 10:07:27 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1] 2  Все   Вниз
  Добавить закладку  |  Печать  
Автор

Монетизация AdsManager 2.6

 (Прочитано 7795 раз)
0 Пользователей и 1 Гость смотрят эту тему.
real-man
Осваиваюсь на форуме
***

Репутация: +4/-0
Offline Offline

Сообщений: 85



« : 28.07.2012, 23:42:41 »

Сразу хочу сказать что  подобная тема уже существует на форуме http://joomlaforum.ru/index.php/topic,137455.0.html, но скрипт лично у меня оказался не рабочим, да и биллинг что автор рекомендовал ориентирован на Россию, а мне нужна была Украина, я описывал уже исправленные ошибки в теме указанной по ссылке, но так как не все смогли разобраться что и где менять создаю отдельную тему.

Внимание! Данное решение работает для AdsManager 2.6, и на AdsManager 2.7 она работать не будет!

И так, сделаем сначала vip-объявления.

Для этого
1. Создаем в БД adsmanager_ads новую строку и называем ее vip.

2. в файле [Joomla] /administrator/components/com_adsmanager/tables/content.php добавляем var $vip = null; (поймете куда).

3. переходим в файл [Joomla] administrator/components/com_adsmanager/views/admin/tmpl/editcontent.php и там после кода
Код:
Код:
<tr>
<td><?php echo JTEXT::_('ADSMANAGER_TH_PUBLISH'); ?></td>
<td>
<select name="published" id="published">
<option value="1" <?php if ($this->content->published == 1) { echo "selected"; } ?>><?php echo JTEXT::_('ADSMANAGER_PUBLISH'); ?></option>
<option value="0" <?php if ($this->content->published == 0) { echo "selected"; } ?>><?php echo JTEXT::_('ADSMANAGER_NO_PUBLISH'); ?></option>
</select>
</td>
<td>&nbsp;

</td>
</tr>
Вставляем
Код:
Код:
<tr>
<td><?php echo 'VIP'; ?></td>
<td>
<select name="vip" id="vip">
<option value="0" <?php if ($this->content->vip == 0) { echo "selected"; } ?>><?php echo JTEXT::_('ADSMANAGER_NO'); ?></option>
<option value="1" <?php if ($this->content->vip == 1) { echo "selected"; } ?>><?php echo JTEXT::_('ADSMANAGER_YES'); ?></option>
</select>
</td>
<td>&nbsp;
</td>
</tr>
Далее в файле [Joomla] /administrator/components/com_adsmanager/models/content.php находим функцию function getListOrder и $filter_order изменяем сл. образом:
Код:
Код:
$filter_order = "a.vip DESC ,a.date_created DESC ,a.id ";

Вот мы сделали так, чтобы администратор мог сам делать объявление VIPом.

Теперь делаем чтобы система сама назначала объявления VIP с помощью смсок/

1.   Скачайте архив для работы с сервисом и поместите его содержимое в любое место на сайте

2.   Регистрируемся на http://smsbill.com.ua (именно через этот сервис и будем осуществлять работу)

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

4.  Далее, после модерации сайта, в меню "Услуги" подключаем новую услугу. Выбираем услугу "Сам справлюсь". Пишем описание услуги на свое
усмотрение. Жмем "Добавить".
Далее заполняем необходимые поля:
- В поле URL обработчика указываем путь к папке извлеченной из скаченного архива и помещенной на ваш сайт, например: http://yousite/vip/vipsms.php.
- Кодировку оставляем utf-8.
- Придумываем "секретное слово", любое напр: password
- В поле "Контакты поддержки" заполняете так: Podderzka: ваш телефон.
Жмем "сохранить".

5. Идем в меню "Услуги"->"Код подключения". В разделе "Требования к оформлению" смотрим как правильно подготовить у себя на сайте инструкцию
по отправке SMS. Оформляем страницу у себя на сайте.
Смотрим в меню "Тарифы" список доступных стран и коротких номеров. Пишем в поддержку email с просьбой подключить к сайту нужные страны и указываете,
какие короткие номера нужны. Вам будет подключен префикс (текст, который нужно слать в смс) и короткие номера - получите подтверждение по email

6.  Потом в БД создайте таблицу, например, вашпрефикс_vipsms. В этой таблице создайте одно поле code.

7.   Зайдите в папку vip которую вы скачали от сюда и разархивировали, и редактируйте файл config.php.
В поле smsAccessKey введите ключ, который придумывали в настройках  на сайте smsbill.
Код:
<?
$conf = array();

$conf['siteUrl'] = 'http://ваш сайт/vip'; //путь к папке с vipsms.php
$conf['smsAccessKey'] = 'секретное слово'; //sms access key - устанавливается в настройках личного кабинета.

$conf['ttl'] = 1*60*60; //время жизни кодов
?>

8.   В этой же папке в файле vipsms.php настройте соединение с БД, укажите имя базы и таблицу в базе данных что вы создавали для кодов
Код:
<?
// sms handler

if ($_REQUEST['sms_body']) {

include 'config.php';
if ($_REQUEST['secret_word'] != md5($conf['smsAccessKey'])) {
exit;
}

$code = '';
for($i=0;$i<=7;$i++){
$code .= chr(rand(65, 90));
}
$lnk = mysql_connect ('localhost','логин','пароль');
mysql_select_db('имя базы данных', $lnk);
$q = mysql_query("INSERT into jos_ваша таблица в базе данных с кодами VALUES ('".$code."')");
echo "sms_id:".$_POST['sms_id']."\n";
echo "response:Ваш код активации:".$code."\n";
echo "error:0";

}
?>
8.   Теперь заходим в файл [Joomla]/ components/com_adsmanager/ controller.php и в самом начале файла, после строк
Код:
Код:
/**
 * Content Component Controller
 *
 * @package Joomla
 * @subpackage Content
 * @since 1.5
 */
Вставляем
Код:
Код:
// sms
function checkCode($code) {
        
$db = JFactory::getDBO();
$query = "SELECT * FROM #__ваша таблица в бд с кодами";
$db->setQuery($query);
$dbcode = $db->loadObjectList();

$db2 = JFactory::getDBO();
$q = "SELECT * FROM #__adsmanager_ads WHERE ad_code='".$code."'";
$db2->setQuery($q);
$ads = $db2->loadObjectList();
        
$ok = false;
foreach($dbcode as $c) {
if( $c->code == $code ) {
$codesmstable = $c->code;
}
}
foreach($ads as $a) {
if( $code == $a->ad_code ) {
$codeadstable = $a->ad_code;
}
}

if(($codesmstable == $code) && ($codesmstable != $codeadstable) && ($code != '')) {
$ok = true;
}
        
return $ok;
}
// -sms

 9.   В этом же файле находим функцию function save(), там находим $content->expiration_date = date("Y-m-d",mktime()+($delta*24*3600));

10.    После этого кода вставляем
Код:
Код:
// ---------- sms ---------
$post_code = JRequest::getVar('ad_code');
if (!checkCode($post_code)) {
        $content->vip = '0';
} else {
        $content->vip = '1';
$content->ad_code = $post_code;
}
// ----------/sms/---------


11.    Дальше в админ панели сайта в компоненте AdsManager создаем новое поле! Тип: Text Field; Название: ad_code (т.е. пишем code,  а он сам сформирует приставку), Заголовок: СМС-код для VIP-объявления (или по усмотрению), Ставим галочки на Опубликовано? Ну и выбираем Все объявления слева в «Категория».

12. На последнем шаге можно протестировать работу сервиса. Заходим в Личный кабинет на smsbill.com.ua. Выбираем меню "Услуги"->"Настроить".
Внизу доступна форма для тестирования. Поля можно заполнить любыми данными - это не принципиально.
Если правильно указан URL и правильно настроен vipsms.php, то должен отобразиться ВИП-код (тот который приходит на телефон ). Копируете его и пробуйте создать объявление на своем сайте, используя полученный код.

Вот в принципе и все! Может не совсем кому понятно будет пишите в теме, или в службу поддержки биллинга, там ребята всегда рады помочь. Посмотреть как работает система можна на сайте http://bezagentov.net/



[вложение удалено Администратором]
« Последнее редактирование: 15.08.2012, 16:54:09 от real-man » Записан
lovivolnu
Давно я тут
****

Репутация: +8/-0
Offline Offline

Сообщений: 328


« Ответ #1 : 28.07.2012, 23:43:39 »

Большое спасибо.Будем пробовать.
Записан
stepan_fed
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 79


« Ответ #2 : 31.07.2012, 12:13:58 »

большое спасибо за работу!
у меня возникла проблема которая не дает мне возможности перейти к этапу автоматизации через SMS, а имеенно вставка информации в БД.
я попросту нажимая в админке "VIP - yes", не могу вставить "1" в БД, незнаю что за причина.

может кто имеет опыт с БД, и может указать на проблему.
поле vip в базе создал int 11, больше ничего не указывал.
AdsManager 2.7, Joomla 1.5

буду благодарен за подсказку.
Записан
lovivolnu
Давно я тут
****

Репутация: +8/-0
Offline Offline

Сообщений: 328


« Ответ #3 : 31.07.2012, 12:55:06 »

извиняюсь за столь глупый вопрос,а как создать в БД новую строку?
это делается на хостинге?через Управление базами MySQL ?или как?что то я там не найду функции "создать"
Записан
stepan_fed
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 79


« Ответ #4 : 31.07.2012, 13:02:08 »

извиняюсь за столь глупый вопрос,а как создать в БД новую строку?
это делается на хостинге?через Управление базами MySQL ?или как?что то я там не найду функции "создать"
это делается через php my admin, выбираете нужную вам таблицу и нажимаете "Структура", внизу увидите "добавить поле". зададите параметры и готово!
Записан
lovivolnu
Давно я тут
****

Репутация: +8/-0
Offline Offline

Сообщений: 328


« Ответ #5 : 31.07.2012, 13:16:57 »

Большое спасибо.Получилось.
« Последнее редактирование: 31.07.2012, 13:21:14 от lovivolnu » Записан
lovivolnu
Давно я тут
****

Репутация: +8/-0
Offline Offline

Сообщений: 328


« Ответ #6 : 01.08.2012, 19:26:33 »

подскажите как сделать VIP выделенное другим цветом?
Решено:в фале components\com_adsmanager\views\list\tmpl\default.php
меняем
Код:
if (function_exists('getContentClass'))
    $classcontent = getContentClass($content);
else
    $classcontent = "adsmanager_table_description";
?>   
<tr class="<?php echo $classcontent;?> trcategory_<?php echo $content->catid?>">
на
Код:
if ($content->vip == 1)
    $classcontent = 'vip';
else
    $classcontent = "normal";
?>   
<tr class="<?php echo $classcontent;?>">
ну и стили соответственно будут примерно такие
Код:
.adsmanager_table tr.normal
{
атрибуты
}
.adsmanager_table tr.vip
{
Атрибуты
}
« Последнее редактирование: 02.08.2012, 10:32:45 от lovivolnu » Записан
finan05
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 18


« Ответ #7 : 08.08.2012, 14:03:02 »

большое спасибо за работу!
у меня возникла проблема которая не дает мне возможности перейти к этапу автоматизации через SMS, а имеенно вставка информации в БД.
я попросту нажимая в админке "VIP - yes", не могу вставить "1" в БД, незнаю что за причина.

может кто имеет опыт с БД, и может указать на проблему.
поле vip в базе создал int 11, больше ничего не указывал.
AdsManager 2.7, Joomla 1.5

буду благодарен за подсказку.


У меня таже проблема, не сохраняется в бд значение, что выбрано "VIP - yes".    AdsManager 2.7, Joomla 2.5.
Этот файл /administrator/components/com_adsmanager/tables/content.php в AdsManager 2.7 называется contents.php?
Это может быть причиной? Или рыть в другом направлении?

Записан
finan05
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 18


« Ответ #8 : 11.08.2012, 00:21:44 »


У меня таже проблема, не сохраняется в бд значение, что выбрано "VIP - yes".    AdsManager 2.7, Joomla 2.5.
Этот файл /administrator/components/com_adsmanager/tables/content.php в AdsManager 2.7 называется contents.php?
Это может быть причиной? Или рыть в другом направлении?




Если в БД поставить ручками в поле ВИП единичку, то в админке изменяется на "ДА". Почему из админки не заносит данные в БД?
Подскажите кто может!
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #9 : 12.08.2012, 15:19:20 »

Дошел до момента когда администратор может сам делать объявление VIPом. Все вроде получилось, объявления появляются вверху с другим цветом. Но, когда подается простое объявление, то оно не появляться под ВИП-объявлением, а появляется только ниже всех объявлений, в самом конце.
Когда захожу в объявление через админку и просто жму сохранить и закрыть оно находит свое место
Что не так?
joomla 2.5, ads 2.6.5
« Последнее редактирование: 12.08.2012, 18:41:19 от max_1985 » Записан
finan05
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Сообщений: 18


« Ответ #10 : 12.08.2012, 17:37:17 »

Так задумано, чтоб админ делал объявы Випом после их создания!
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #11 : 12.08.2012, 17:51:18 »

Так задумано, чтоб админ делал объявы Випом после их создания!
Речь идет про простые объявления (не ВИП), они появляются ниже всех объявлений, в самом конце (начинают новый отсчет).
Причина в $filter_order = "a.vip DESC ,a.date_created DESC ,a.id ";
но не пойму что делать.
При обновлении объявления все работает правильно
« Последнее редактирование: 12.08.2012, 19:48:18 от max_1985 » Записан
limon42
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 11


Какой есть…………


« Ответ #12 : 15.08.2012, 16:27:20 »

Все получилось спасибо большое автору и службе поддержке http://smsbill.com.ua которая ни когда не откажет в помощи при появившихся вопросах.

Вот пример моей доски с вводом кода, после выбора категории, при подаче объявления http://mykuzbass.ru/doska-ob-yavlenij.html

Но у меня появился один вопрос : “$conf['ttl'] = 1*60*60; //время жизни кодов”  что это значит и сколько этот код будет жить. И конечно же сколько раз одним кодом может воспользоваться получивший его человек.
Записан
nadim
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 24


« Ответ #13 : 20.08.2012, 14:22:59 »

Далее в файле [Joomla] /administrator/components/com_adsmanager/models/content.php находим функцию function getListOrder и $filter_order изменяем сл. образом:
Код:
Код:
$filter_order = "a.vip DESC ,a.date_created DESC ,a.id ";
Выложите пожалуйста уже исправленный файл, что-то не пойму что менять.

2. У меня установлен AdsManager 2.6.5 - скрипт на этой версии работает?
3. в файле [Joomla] /administrator/components/com_adsmanager/tables/content.php - если этого файла нет, а есть contents.php - что тогда делать?
« Последнее редактирование: 20.08.2012, 15:28:50 от nadim » Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #14 : 20.08.2012, 16:01:28 »

Выложите пожалуйста уже исправленный файл, что-то не пойму что менять.

2. У меня установлен AdsManager 2.6.5 - скрипт на этой версии работает?
3. в файле [Joomla] /administrator/components/com_adsmanager/tables/content.php - если этого файла нет, а есть contents.php - что тогда делать?
$filter_order = "a.date_created DESC ,a.id "; меняете на: $filter_order = "a.vip DESC ,a.date_created DESC ,a.id ";
Записан
nadim
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 24


« Ответ #15 : 21.08.2012, 14:48:29 »

Подскажите в чем может быть проблема?
Форма для тестирования Вашего обработчика сообщений выдает: Ответ сервера партнера на сообщение о статусе оплаты:
Код:
Notice: Undefined index: sms_body in /home/имя сайта/www/vip/vipsms.php on line 4
Хотя когда полученный код активации ввожу при добавлении объявления, объявлению присваивается статус VIP - Код активации получаю при тестовой СМС (не из телефона). На телефон приходит СМС без кода где указан партнер.
Я так понимаю у меня почему-то не проходит проверка секретного слова.
Если убрать этот блок
Код:
if ($_REQUEST['sms_body']) {

include 'config.php';
if ($_REQUEST['secret_word'] != md5($conf['smsAccessKey'])) {
exit;
}
тогда ошибок НЕТ. Но втом и в другом случае обратная СМС приходит без кода с надписью: Неверный ответ партнера. А обратный код прописывается в ячейке базы сайта и им можно воспользоваться, объявление становиться VIP.
Подскажите в чем дело?
« Последнее редактирование: 23.08.2012, 09:57:50 от nadim » Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #16 : 16.09.2012, 21:31:48 »

$query = "SELECT * FROM #__ваша таблица в бд с кодами";
я так понимаю должно быть так :
$query = "SELECT * FROM jos_vipsms";
« Последнее редактирование: 17.09.2012, 14:21:15 от max_1985 » Записан
meiram077
Давно я тут
****

Репутация: +0/-0
Offline Offline

Сообщений: 225



« Ответ #17 : 28.10.2012, 00:20:15 »

Цитировать
1. Создаем в БД adsmanager_ads новую строку и называем ее vip.

2. в файле [Joomla] /administrator/components/com_adsmanager/tables/content.php добавляем var $vip = null; (поймете куда).

Не ругайтесь сильно, но я не пойму первые два пункта:

1. Я в адресной строке прописываю http://localhost/tools/phpmyadmin/index.php, захожу во вкладку Databases, затем кликаю четвертую строку (нижнюю) с названием моего сайта... оказываюсь во вкладке Structure
В ней такая таблица:
Показать текстовый блок
что теперь? Как ее создать, эту самую строку?

2. Пропишите пожалуйста примерную строку куда именно добавить var $vip = null?[/s]
« Последнее редактирование: 28.10.2012, 05:20:57 от meiram077 » Записан
meiram077
Давно я тут
****

Репутация: +0/-0
Offline Offline

Сообщений: 225



« Ответ #18 : 28.10.2012, 05:33:36 »

Цитировать
1. Создаем в БД adsmanager_ads новую строку и называем ее vip.

2. в файле [Joomla] /administrator/components/com_adsmanager/tables/content.php добавляем var $vip = null; (поймете куда).

Не ругайтесь сильно, но я не пойму первые два пункта:

1. Я в адресной строке прописываю http://localhost/tools/phpmyadmin/index.php, захожу во вкладку Databases, затем кликаю четвертую строку (нижнюю) с названием моего сайта... оказываюсь во вкладке Structure
В ней такая таблица:

Показать текстовый блок
2. Пропишите пожалуйста примерную строку куда именно добавить var $vip = null?

Решено!
Теперь вопрос? Как изменить цвет vip-объявлений?
А здесь что-то не то! У меня не получилось, сделал все как описано... (ADSM-2.65 J-2.5)


Решено:в фале components\com_adsmanager\views\list\tmpl\default.php
меняем
Код:
if (function_exists('getContentClass'))
    $classcontent = getContentClass($content);
else
    $classcontent = "adsmanager_table_description";
?>  
<tr class="<?php echo $classcontent;?> trcategory_<?php echo $content->catid?>">
на
Код:
if ($content->vip == 1)
    $classcontent = 'vip';
else
    $classcontent = "normal";
?>  
<tr class="<?php echo $classcontent;?>">
ну и стили соответственно будут примерно такие
Код:
.adsmanager_table tr.normal
{
атрибуты
}
.adsmanager_table tr.vip
{
Атрибуты
}
« Последнее редактирование: 28.10.2012, 05:54:10 от meiram077 » Записан
st0rk
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 4


« Ответ #19 : 30.10.2012, 17:58:28 »

такая-же проблема, не пойму как поменять цвет ВИП обьявлений,
у меня такого нет:
Код:
if (function_exists('getContentClass'))
    $classcontent = getContentClass($content);
else
    $classcontent = "adsmanager_table_description";
?>   
<tr class="<?php echo $classcontent;?> trcategory_<?php echo $content->catid?>">

есть такое только:

Код:
if (function_exists('getContentClass'))
$classcontent = getContentClass($this->content);
else
$classcontent = "";
?>  
</div>
и подскажите как прикрутить картипку vip рядом с new,hot ?
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #20 : 30.10.2012, 22:08:23 »

Что надо подправить для ads 2.7
Записан
sover
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 6


« Ответ #21 : 29.11.2012, 01:06:08 »

Такая проблема, нахожусь на стадии тестирования прихода SMS...
получаю вот такой ответ...

Parse error: syntax error, unexpected T_STRING in /home/u417446006/public_html/vip/config.php on line 5

собственно строка выглядит так:( секретное слово изменено  )


5...$conf['smsAccessKey'] = 'mangust'; //sms access key - устанавливается в настройках личного кабинета.

7..$conf['ttl'] = 1*60*60; //время жизни кодов

собственно и dreamweawer сообщает об ошибке в 5 поле и в 7..

Собственно где ошибка то?
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #22 : 08.01.2013, 16:15:31 »

Попробовал сделать для ads 2.7 и столкнулся с такой проблемой :
В админке не ставиться в ручную ДА, только когда ставлю 1 в базе;
Все остальное вроде работает!
Может кто решил?
« Последнее редактирование: 08.01.2013, 18:45:19 от max_1985 » Записан
VBedya
Осваиваюсь на форуме
***

Репутация: +0/-1
Offline Offline

Пол: Мужской
Сообщений: 41


« Ответ #23 : 06.04.2013, 15:44:16 »

большое спасибо за работу!
у меня возникла проблема которая не дает мне возможности перейти к этапу автоматизации через SMS, а имеенно вставка информации в БД.
я попросту нажимая в админке "VIP - yes", не могу вставить "1" в БД, незнаю что за причина.

может кто имеет опыт с БД, и может указать на проблему.
поле vip в базе создал int 11, больше ничего не указывал.
AdsManager 2.7, Joomla 1.5

буду благодарен за подсказку.

Здравствуйте. Та же проблема.
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #24 : 26.04.2013, 11:37:23 »

Что надо поправить чтоб код приходил 6 цифр, а не 8 больших букв. Люди часто путаются в наборе!
« Последнее редактирование: 26.04.2013, 11:55:45 от max_1985 » Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #25 : 26.04.2013, 15:27:16 »

Что надо поправить чтоб код приходил 6 цифр, а не 8 больших букв. Люди часто путаются в наборе!
Файл vipsms.php, строки:

                for($i=0;$i<=7;$i++){
                        $code .= chr(rand(65, 90));
                }

заменить на:


                $code = mt_rand(10000, 99999);
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #26 : 16.05.2013, 12:26:52 »

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

Помогите пожалуиста кто сталкивался и решил данную проблему!
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #27 : 28.05.2013, 11:21:29 »

Подскажите как чтоб в mod_adsmanager_table вместо случайных объявлений выводились случайные ВИП объявления?

Так понимаю надо что-то подправить здесь^

Код:
<?php
// no direct access
defined('_JEXEC') or die( 'Restricted access' );

require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/configuration.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/content.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/adsmanager.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/column.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/category.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/content.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/field.php');
require_once(JPATH_ROOT.'/administrator/components/com_adsmanager/models/user.php');

require_once(JPATH_ROOT."/components/com_adsmanager/helpers/field.php");

require_once(JPATH_SITE.DS."components".DS."com_adsmanager".DS."lib".DS."core.php");

$uri = JFactory::getURI();
$baseurl = JURI::base();

if (!defined( '_ADSMANAGER_CSS' )) {
/** ensure that functions are declared only once */
define( '_ADSMANAGER_CSS', 1 );
$document = JFactory::getDocument();
$app = JFactory::getApplication();
$templateDir = JPATH_ROOT . '/templates/' . $app->getTemplate();
if (is_file($templateDir.'/html/com_adsmanager/css/adsmanager.css')) {
$templateDir = JURI::base(). 'templates/' . $app->getTemplate();
$document->addStyleSheet($templateDir.'/html/com_adsmanager/css/adsmanager.css');
} else {
$document->addStyleSheet($baseurl.'components/com_adsmanager/css/adsmanager.css');
}
}

if (!defined('_ADSMANAGER_MODULE_ADS')) {
define( '_ADSMANAGER_MODULE_ADS', 1 );
function isNewContent($date,$nbdays) {
$time = strtotime($date);
if ($time >= (time()-($nbdays*24*3600)))
return true;
else
return false;
}

function reorderDate( $date ){
$format = JText::_('ADSMANAGER_DATE_FORMAT_LC');

if ( $date && ereg( "([0-9]{4})-([0-9]{2})-([0-9]{2})[ ]([0-9]{2}):([0-9]{2}):([0-9]{2})", $date, $regs ) ) {
                $date = mktime( $regs[4], $regs[5], $regs[6], $regs[2], $regs[3], $regs[1] );
                $date = $date > -1 ? strftime( $format, $date + ($offset*60*60) ) : '-';
}
return $date;
}
}

$lang = JFactory::getLanguage();
$lang->load("com_adsmanager");

if ( file_exists( JPATH_BASE. "/components/com_paidsystem/api.paidsystem.php"))
{
require_once(JPATH_BASE . "/components/com_paidsystem/api.paidsystem.php");
}

$itemid = intval($params->get( 'default_itemid', JRequest::getInt('Itemid', 0 ) )) ;
$sort_sql = intval($params->get( 'random',0));

$catid = intval($params->get('catselect',"0"));
$catselect = $catid;
if ($catid == -1)
$catid = JRequest::getInt('catid', 0 );

$confmodel  = new AdsmanagerModelConfiguration();
$conf = $confmodel->getConfiguration();
$nb_images = $conf->nb_images;
$nb_ads = intval($params->get( 'nb_ads', 3 )) ;

$contentmodel  = new AdsmanagerModelContent();
$contents = $contentmodel->getLatestContents($nb_ads,$sort_sql,$catselect);

if (function_exists("getMaxPaidSystemImages"))
{
$nb_images += getMaxPaidSystemImages();
}

$uri = JFactory::getURI();
$baseurl = JURI::base();

$catmodel = new AdsmanagerModelCategory();
$columnmodel = new AdsmanagerModelColumn();
$fieldmodel      = new AdsmanagerModelField();
$usermodel = new AdsmanagerModelUser();
$adsmanagermodel = new AdsmanagerModelAdsmanager();

$user = JFactory::getUser();
$userid = $user->id;

$columns = $columnmodel->getColumns($catid);
$fColumns = $fieldmodel->getFieldsbyColumns();

$field_values = $fieldmodel->getFieldValues();
$plugins = $fieldmodel->getPlugins();
$field = new JHTMLAdsmanagerField($conf,$field_values,"1",$plugins,null);

require(JModuleHelper::getLayoutPath('mod_adsmanager_table','table'));
$content="";
$path = JPATH_ADMINISTRATOR.'/../libraries/joomla/database/table';
JTable::addIncludePath($path);
Записан
Alex89
Завсегдатай
*****

Репутация: +198/-1
Offline Offline

Пол: Мужской
Сообщений: 555


Joomlaman :)


« Ответ #28 : 28.05.2013, 22:02:41 »

нужно править функцию getLatestContents в файле \administrator\components\com_adsmanager\models\content.php
Записан
max_1985
Завсегдатай
*****

Репутация: +55/-0
Offline Offline

Сообщений: 598



« Ответ #29 : 29.05.2013, 08:51:01 »

нужно править функцию getLatestContents в файле \administrator\components\com_adsmanager\models\content.php
Класс! Все получилось. +
Записан
Страниц: [1] 2  Все   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet