Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

Ошибка после обновления Joomla
(1 чел.) (1) гость
  • Страница:
  • 1

ТЕМА: Ошибка после обновления Joomla

Ошибка после обновления Joomla 9 года, 2 мес. назад #715


  • Постов:1
  • Чопа
  • ( Пользователь )
  • Новый участник
  • Вне сайта
  • Репутация: 0
Друзья, после обновления джумлы, вот такое выскакивает при сохранении объявления:

Fatal error: Declaration of AdsmanagerTableContents::delete() must be compatible with that of JTableInterface::delete() in /administrator/components/com_adsmanager/tables/contents.php on line 616

Помогите!
Изменено: 9 года, 2 мес. назад от Чопа.

Re: Ошибка после обновления Joomla 9 года, 2 мес. назад #716


  • Постов:165
  • good
  • ( Администратор )
  • Администратор
  • Вне сайта
  • Репутация: 7
Откройте /administrator/components/com_adsmanager/tables/contents.php

Замените

  function delete($adid,$conf,$plugins)
    {		
    	$adid = (int) $adid;
    	
		$this->_db->setQuery("SELECT * FROM #__adsmanager_ads WHERE id=$adid");
		$ad = $this->_db->loadObject();
		
		$this->_db->setQuery("DELETE FROM #__adsmanager_adcat WHERE adid=$adid");
		$this->_db->query();
		
		/*$this->_db->setQuery( "UPDATE #__adsmanager_ads SET published=0,recall_mail_sent = 0 WHERE id = $adid");
		$this->_db->query();
		
		$this->_db->setQuery( "INSERT INTO #__adsmanager_adcat (adid,catid) VALUES ($adid,$conf->archive_catid)");
		$this->_db->query();
		*/
		
		$this->_db->setQuery("DELETE FROM #__adsmanager_ads WHERE id=$adid");
		$this->_db->query();
		
		$this->_db->setQuery( "SELECT name FROM #__adsmanager_fields WHERE `type` = 'file'");
		$file_fields = $this->_db->loadObjectList();
		foreach($file_fields as $file_field)
		{
			$filename = "\$ad->".$file_field->name;
			eval("\$filename = \"$filename\";");
			JFile::delete(JPATH_ROOT."/images/com_adsmanager/files/".$filename);
		}
	
		$current_images = json_decode($ad->images);
		if ($current_images == null)
			$current_images = array();
	
		foreach($current_images as $img)
		{	
			$pict = JPATH_ROOT."/images/com_adsmanager/ads/".$img->image;
			if ( file_exists( $pict)) {
				JFile::delete($pict);
			}
			$pic = JPATH_ROOT."/images/com_adsmanager/ads/".$img->thumbnail;
			if ( file_exists( $pic)) {
				JFile::delete($pic);
			}
			$pic = JPATH_ROOT."/images/com_adsmanager/ads/".$img->medium;
			if ( file_exists( $pic)) {
				JFile::delete($pic);
			}
		}
		
		foreach($plugins as $plugin)
		{
			$plugin->onDelete(0,$adid);
		}
		
		if (function_exists('deletePaidAd')){
			deletePaidAd($adid);
		}
		
    }
}


На

 function deleteContent($adid,$conf,$plugins)
    {		
    	$adid = (int) $adid;
    	
		$this->_db->setQuery("SELECT * FROM #__adsmanager_ads WHERE id=$adid");
		$ad = $this->_db->loadObject();
		
		$this->_db->setQuery("DELETE FROM #__adsmanager_adcat WHERE adid=$adid");
		$this->_db->query();
		
		/*$this->_db->setQuery( "UPDATE #__adsmanager_ads SET published=0,recall_mail_sent = 0 WHERE id = $adid");
		$this->_db->query();
		
		$this->_db->setQuery( "INSERT INTO #__adsmanager_adcat (adid,catid) VALUES ($adid,$conf->archive_catid)");
		$this->_db->query();
		*/
		
		$this->_db->setQuery("DELETE FROM #__adsmanager_ads WHERE id=$adid");
		$this->_db->query();
		
		$this->_db->setQuery( "SELECT name FROM #__adsmanager_fields WHERE `type` = 'file'");
		$file_fields = $this->_db->loadObjectList();
		foreach($file_fields as $file_field)
		{
			$filename = "\$ad->".$file_field->name;
			eval("\$filename = \"$filename\";");
			if ( is_file(JPATH_ROOT."/images/com_adsmanager/files/".$filename)) {
				JFile::delete(JPATH_ROOT."/images/com_adsmanager/files/".$filename);
			}
		}
	
		$current_images = json_decode($ad->images);
		if ($current_images == null)
			$current_images = array();
	
		foreach($current_images as $img)
		{	
			$pict = JPATH_ROOT."/images/com_adsmanager/ads/".$img->image;
			if ( is_file( $pict)) {
				JFile::delete($pict);
			}
			$pic = JPATH_ROOT."/images/com_adsmanager/ads/".$img->thumbnail;
			if ( is_file( $pic)) {
				JFile::delete($pic);
			}
			$pic = JPATH_ROOT."/images/com_adsmanager/ads/".$img->medium;
			if ( is_file( $pic)) {
				JFile::delete($pic);
			}
		}
		
		foreach($plugins as $plugin)
		{
			$plugin->onDelete(0,$adid);
		}
		
		if (function_exists('deletePaidAd')){
			deletePaidAd($adid);
		}
		
    }  }
Хостинг для joomla Есть вопросы? Пиши
  • Страница:
  • 1
Время создания страницы: 0.19 секунд