Ejemplo n.º 1
0
 function changeStatus($newStatus)
 {
     $_S =& new AppSettings();
     $_EC = EComm::createObject();
     if ($newStatus) {
         G::load($c, $this->cid, "appcategory");
         // ha van expiration es ez az item meg sosem volt aktivalva, vagy ha restartExpOnModify van,
         // akkor az approve-tol indul az expiration
         $setStr = "status=1";
         if ($this->expiration && ($this->expirationTime->isEmpty() || $c->restartExpOnModify)) {
             $this->expEmailSent = FALSE;
             $this->expirationTime = Date::add($this->expiration, Date_Day);
             $setStr .= ", expEmailSent=0, expirationTime='" . $this->expirationTime->getDbFormat() . "'";
         }
         executeQuery("UPDATE @item SET {$setStr} WHERE id=#id#", $this->id);
         $c->increaseDirectItemNum();
         // mailt kuldunk rola a tulajnak:
         G::load($n, Notification_adApproved, "notification");
         if ($n->active) {
             $ownerEmail = $this->getEmailParams($params, FALSE);
             $n->send($ownerEmail, $params);
         }
         $this->sendNotificationsToSubscribedUsers($params);
         if ($_S->ecommerceEnabled() && !$_EC->isAdvancedModelEnabled()) {
             PurchaseItem::cleanUp($this);
         }
     } else {
         G::load($c, $this->cid, "appcategory");
         $c->decreaseDirectItemNum();
     }
     CacheManager::resetCache($this->cid);
 }