예제 #1
0
 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
         }
     }
 }
예제 #2
0
파일: item.php 프로젝트: alencarmo/OCF
 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);
     }
 }