function validCore($attrInfo, &$field) { global $lll; if (in_array("file", $attrInfo)) { if (in_array("media", $attrInfo)) { $this->validMedia($field->columnIndex); } else { $this->validPicture($field->columnIndex); } if (Roll::isFormInvalid()) { Roll::addInfoText("whichPictureAttribute", $lll[$field->columnIndex]); return TRUE; // to stop iteration } } }
function modify($whereFields = "") { global $gorumuser, $now; hasAdminRights($isAdm); $_S =& new AppSettings(); $_EC = EComm::createObject(); if (!$isAdm && !$_S->allowModify) { return; } $this->getCid(); $this->activateVariableFields(); $this->initClassVars(); LocationHistory::savePost($this); G::load($old, $this->id, "item"); if (!$isAdm && !$old->status) { return; } // inactive itemet nem modosithat a tulaj if (!$this->checkCharacterLimit() || !$this->checkAndSetExpirationDays() || !$_EC->checkConsumptionOfAction($purchaseItem, $consumption, $this, $old)) { return; } if (!$isAdm) { // ha a tulaj modosit, ujra inactive lesz az item: if (!$this->getImmediateAppear($consumption, TRUE)) { $this->status = FALSE; } elseif (G::getAttr($this->cid, "appcategory", "restartExpOnModify")) { if (!$this->expirationAppearsInForm() && $this->expiration) { $this->expEmailSent = FALSE; $this->expirationTime = Date::add($this->expiration, Date_Day); } } } // ha az expiration megjelent a formban es modositottak is, akkor az expirationTime-ot megfeleloen modositani kell: if ($this->expirationAppearsInForm() && ($this->expiration != round($old->expirationTime->getDayDiff()) || $this->expiration > 0 && $old->expirationTime->isPast() || $this->expiration < 0 && $old->expirationTime->isFuture())) { $this->expirationTime = Date::add($this->expiration, Date_Day); } parent::modify(); load($this); if (!Roll::isFormInvalid()) { if (!$this->getImmediateAppear($consumption, TRUE) && $this->status != $old->status) { $this->changeStatus($this->status); } if ($this->getRenewOnModify()) { executeQuery("UPDATE @item SET creationtime=NOW() WHERE id=#id#", $this->id); } if (!$isAdm && $old->status && !$this->status) { if (!$purchaseItem) { Roll::addInfoText("adScheduled"); } G::load($n, Notification_adCreated, "notification"); if ($n->active) { $_S =& new AppSettings(); $this->getEmailParams($params, FALSE); $n->send($_S->adminEmail, $params); } } $this->storeAttachment(); if ($purchaseItem) { $purchaseItem->save($this); } CacheManager::resetCache($this->cid); } }