• Уважаемый Гость! Если вы зарегистрировались на нашем форуме, значит вам нужна помощь! Мы всегда рады вам помочь, еще ни один пользователь не получил отказа! Но мы так же нуждаемся в Вашей поддержке. Проект полностью бесплатный, мы не имеем права требовать от вас денег, нам это и не нужно! Но от любой финансовой поддержки не откажемся. Проект развивается, но иногда очень тяжело его поддерживать, особенно в финансовом отношении. Если у вас есть возможность поддержать нас финансово, мы будем вам очень благодарны! С уважением, команда Оскласс Россия!
  • Изменение в правилах форума! В связи с огромным количеством вопросов поступающих в адрес технической поддержки мы решили изменить правила форума! Просим всех пользователей обратить внимание на данные изменения и четко их соблюдать!
  • Ребята, нуждаемся в программистах! Если хотите зарабатывать и есть время, пишите администраторам сайта. Есть база и инструменты, нужен опыт и знания =)
  • Уважаемые пользователи! На форуме появились разделы по работе с системой Yclas. Yclas - это скрипт доски объявлений. Нужны разработчики.

Вопрос знатокам, плагин advanced_ad_management

LipGrad

Известный пользователь
Сколько версий плагина advanced_ad_management не ставил, но у всех одна проблема, после установки в бд в таблицу "префикс_item_adManage_limit" залетают все ранее опубликованные объявления, но вот после подачи нового, оно туда не попадает и это приводит к тому что при нажатии на кнопку "Переопубликовать объявление" - объявление не опубликовывается, так как у него нет данных идентификации из таблицы указанной выше, а именно данный из "r_secret", которые непосредственно прописываются в url объявления при переопубликовке, и поэтому когда приходит письмо на почту с инфо что можно переопубликовать объявление и при нажатие на указанную ссылку в письме, мы получаем такие ошибки:

Sorry, an error occurred trying to republish your listing.
Please contact the admin. Reference # 3803


При изучении проблемы, опираясь на то что при установке все таки плагин как то загоняет объявления в свою таблицу "префикс_item_adManage_limit" - вышел на следующую ссылку:
домен.ру/oc-admin/index.php?page=plugins&action=renderplugin&file=advanced_ad_management/admin.php&addExistingAds=1


которая обновляет или загоняет объявления в свою таблицу, поискал в коде нашел только такой в файле admin.php:

PHP:
$advanced_ad_management_plugin_data = Plugins::getInfo('advanced_ad_management/index.php');
 
	if(Params::getParam('addExistingAds') == 1){
	$allItem = ModelAAM::newInstance()->getDistinctItems();
	$dao_preference = new Preference();
	foreach($allItem as $itemB) {
		$r_secret = '';
		$r_secret = osc_genRandomPassword();
		ModelAAM::newInstance()->insertNewLimit($itemB['fk_i_item_id'], $r_secret);
	}
	$dao_preference->update(array("s_value" => '1'), array("s_section" => "plugin-item_advanced_ad_management", "s_name" => "advanced_ad_management_installed")) ;
	unset($dao_preference) ;
	Preference::newInstance()->toArray() ;
	echo '<script>location.href="' . osc_admin_base_url(true) . '?page=plugins&action=renderplugin&file=advanced_ad_management/admin.php"</script>';
	}// end of the addExistingAds section
и вот такую функцию:

PHP:
public function insertNewLimit($itemId, $secret, $r_times = 0, $delDays = 0 )
		{
			$this->dao->insert($this->getTable_aam_limit(), array('fk_i_item_id'  => $itemId , 'r_secret' => $secret, 'r_times' => $r_times, 'delete_days' => $delDays)) ;
		}

Вот хотел спросить знатоков, как решить данную задачу, наверное нужно как то при добавление объявление чтобы срабатывала такая история, но ссылка работает только если в режиме админа находишься. Может кроном затачить как то или я гружу и проблема не в плагине, а во мне) и я просто что то где то поломал, хотя смотрю даже на буржуйском форуме автор закрыл продвижение по плагу и так не решил эту проблему, такой же ошибкой столкнулся. Версия 3,5,7 - движка

Еще есть недочет в плагине в верси 2.1.1 - в index.php где то строка: 326

PHP:
function item_advanced_ad_management_cron() {
	// check to make sure the cron only runs once per day!
if(osc_get_preference('aam_cron_last_run', 'plugin-item_advanced_ad_management') == '') {
osc_set_preference('aam_cron_last_run', strtotim('today'), 'plugin-item_advanced_ad_management', 'STRING');
}

написано так: strtotim('today') а должно быть так: strtotime('today')

но это не влияет на то что писал выше, это влияет на работу крона.
 
Последнее редактирование:

feint

Модератор
Плагин безумно старый и его, по идее, нужно переписывать/дописывать самому, если есть знания или заказывать у фрилансеров.

Либо попробовать другие варианты. Возможно вам поможет этот плагин.
 

LipGrad

Известный пользователь
Этот плагин у меня стоит, он более ущемленный в настройках, вся соль в оповещение пользователя, работы с пользователем, предложенный вами плагин такого не делает, я поэтому и написал для спецов вопрос, я капнул, может кто поддержит и поможет отработать проблему.
 
Последнее редактирование:
Верх