Основной курс по Joomla
0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 602 Просмотров
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Может кто подскажет как реализовать удаление фотографий из базы и каталога при переносе в архив?  *DRINK*
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Заметил еще одну ерунду, что при разных случаях не удаляются картинки с сервера. Например:

При изменении объявления с фронтатьной части и удаления из него картинок - картинки удалились с сервера!
При изменении объявления с админки и удаления из него картинок - картинки удалились с сервера!
При полном удалении объявления с админки - картинки удалились с сервера!
При удалении объявления по истечению срока - картинки удалились с сервера!

При полном удалении объявления пользователем с фронтатьной части - картинки остались на сервере!
Изменив заголовок объявления и после чего удалить из него картинки - картинки остались на сервере! (это очень плохо, если человек захочет сменить заголовок и картинки в своем объявлении и я уже с такими проблемами сталкивался!)
 
« Последнее редактирование: 28.04.2015, 09:47:50 от max_1985 »
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Ну да ладно, давайте вернемся к первоначальному вопросу, может есть какие соображения?
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Наверно никто не хочет помогать просто так! ) Если кто знает, уделите пару минут, я заплачу!

Предполагаю что надо добавить 1-2 строчки в этот кусок кода:

Код
case "archive":
                                                        $this->_db->setQuery( "UPDATE #__adsmanager_ads SET recall_mail_sent = 0 WHERE id = $id");
$this->_db->query();

$this->_db->setQuery( "DELETE FROM #__adsmanager_adcat WHERE adid =$id");
$this->_db->query();

$this->_db->setQuery( "INSERT INTO #__adsmanager_adcat (adid,catid) VALUES ($id,$conf->archive_catid)");
$this->_db->query();
break;

Что-то типа:
Код
$content->deleteContent($images);
Или
Код
$content->deleteContent($plugins);
Только правильно ли это?
« Последнее редактирование: 30.04.2015, 12:41:41 от max_1985 »
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Что-то типа:
Код
$content->deleteContent($images);
Или
Код
$content->deleteContent($plugins);
Только правильно ли это?
Проверил, Неправильно!
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Попробовал сделать так.
В файле: /administrator/components/com_adsmanager/models/content.php

Это:

Код
case "archive":
$this->_db->setQuery( "UPDATE #__adsmanager_ads SET published=0,recall_mail_sent = 0 WHERE id = $id");
$this->_db->query();

$this->_db->setQuery( "DELETE FROM #__adsmanager_adcat WHERE adid =$id");
$this->_db->query();

$this->_db->setQuery( "INSERT INTO #__adsmanager_adcat (adid,catid) VALUES ($id,$conf->archive_catid)");
$this->_db->query();
break;

Заменил на это:

Код
case "archive":
$this->_db->setQuery( "UPDATE #__adsmanager_ads SET published=0,recall_mail_sent = 0 WHERE id = $id");
$this->_db->query();

$this->_db->setQuery( "DELETE FROM #__adsmanager_adcat WHERE adid =$id");
$this->_db->query();

$this->_db->setQuery( "INSERT INTO #__adsmanager_adcat (adid,catid) VALUES ($id,$conf->archive_catid)");
$this->_db->query();

$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);
}
}
break;

В итоге ничего не происходит. Подскажите что делаю не так?
*

max_1985

  • Завсегдатай
  • *****
  • 598
  • 55
Спасибо за активную дискуссию!  ;D ;D ;D Всем спасибо, вопрос решен, тему можно закрывать!

Думаю раздел форума тоже никому не нужен, он мертвый...
*

IzrA

  • Давно я тут
  • ****
  • 326
  • 27
Так поделились бы решением с другими.
Спасибо для меня слишком много. Стакан вина Плюс в репутацию - в самый раз.

Велосипедист — бедствие для экономики. Он не покупает автомобиля и не берет под него кредит. Не покупает бензин. Не пользуется услугами ремонтных мастерских. Не страхует «гражданскую ответственность». Не пользуется платными стоянками. Не страдает от ожирения. Да он еще и здоров, черт возьми! Здоровые люди не нужны для экономики. Они не покупают лекарства. Они не ходят к частным врачам. Они не увеличивают ВВП.