Exemplo n.º 1
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     $type = $xaction->getTransactionType();
     switch ($type) {
         case FundInitiativeTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_DESCRIPTION:
             $object->setDescription($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_RISKS:
             $object->setRisks($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_MERCHANT:
             $object->setMerchantPHID($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_BACKER:
         case FundInitiativeTransaction::TYPE_REFUND:
             $amount = $xaction->getMetadataValue(FundInitiativeTransaction::PROPERTY_AMOUNT);
             $amount = PhortuneCurrency::newFromString($amount);
             if ($type == FundInitiativeTransaction::TYPE_REFUND) {
                 $total = $object->getTotalAsCurrency()->subtract($amount);
             } else {
                 $total = $object->getTotalAsCurrency()->add($amount);
             }
             $object->setTotalAsCurrency($total);
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorProjectTransaction::TYPE_NAME:
             $name = $xaction->getNewValue();
             $object->setName($name);
             $object->setPrimarySlug(PhabricatorSlug::normalizeProjectSlug($name));
             return;
         case PhabricatorProjectTransaction::TYPE_SLUGS:
             return;
         case PhabricatorProjectTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_IMAGE:
             $object->setProfileImagePHID($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_ICON:
             $object->setIcon($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_COLOR:
             $object->setColor($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_LOCKED:
             $object->setIsMembershipLocked($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorProjectTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             $object->setPhrictionSlug($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_SLUGS:
             return;
         case PhabricatorProjectTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_IMAGE:
             $object->setProfileImagePHID($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_ICON:
             $object->setIcon($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_COLOR:
             $object->setColor($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_EDGE:
             return;
         case PhabricatorTransactions::TYPE_VIEW_POLICY:
             $object->setViewPolicy($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_EDIT_POLICY:
             $object->setEditPolicy($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_JOIN_POLICY:
             $object->setJoinPolicy($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     $type = $xaction->getTransactionType();
     switch ($type) {
         case PhabricatorBadgesTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case PhabricatorBadgesTransaction::TYPE_FLAVOR:
             $object->setFlavor($xaction->getNewValue());
             return;
         case PhabricatorBadgesTransaction::TYPE_DESCRIPTION:
             $object->setDescription($xaction->getNewValue());
             return;
         case PhabricatorBadgesTransaction::TYPE_ICON:
             $object->setIcon($xaction->getNewValue());
             return;
         case PhabricatorBadgesTransaction::TYPE_QUALITY:
             $object->setQuality($xaction->getNewValue());
             return;
         case PhabricatorBadgesTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorDashboardTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case PhabricatorDashboardTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorDashboardTransaction::TYPE_LAYOUT_MODE:
             $old_layout = $object->getLayoutConfigObject();
             $new_layout = clone $old_layout;
             $new_layout->setLayoutMode($xaction->getNewValue());
             if ($old_layout->isMultiColumnLayout() != $new_layout->isMultiColumnLayout()) {
                 $panel_phids = $object->getPanelPHIDs();
                 $new_locations = $new_layout->getDefaultPanelLocations();
                 foreach ($panel_phids as $panel_phid) {
                     $new_locations[0][] = $panel_phid;
                 }
                 $new_layout->setPanelLocations($new_locations);
             }
             $object->setLayoutConfigFromObject($new_layout);
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
Exemplo n.º 6
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case FundBackerTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
Exemplo n.º 7
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhameBlogTransaction::TYPE_NAME:
             return $object->setName($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_DESCRIPTION:
             return $object->setDescription($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_DOMAIN:
             return $object->setDomain($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_STATUS:
             return $object->setStatus($xaction->getNewValue());
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
Exemplo n.º 8
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PonderAnswerTransaction::TYPE_CONTENT:
             $object->setContent($xaction->getNewValue());
             break;
         case PonderAnswerTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             break;
         case PonderAnswerTransaction::TYPE_QUESTION_ID:
             $object->setQuestionID($xaction->getNewValue());
             break;
     }
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorProjectColumnTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case PhabricatorProjectColumnTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorProjectColumnTransaction::TYPE_LIMIT:
             $object->setPointLimit($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
Exemplo n.º 10
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case FundInitiativeTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_DESCRIPTION:
             $object->setDescription($xaction->getNewValue());
             return;
         case FundInitiativeTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_SUBSCRIBERS:
         case PhabricatorTransactions::TYPE_EDGE:
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorPasteTransaction::TYPE_CONTENT:
             $object->setFilePHID($xaction->getNewValue());
             return;
         case PhabricatorPasteTransaction::TYPE_TITLE:
             $object->setTitle($xaction->getNewValue());
             return;
         case PhabricatorPasteTransaction::TYPE_LANGUAGE:
             $object->setLanguage($xaction->getNewValue());
             return;
         case PhabricatorPasteTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case ManiphestTransaction::TYPE_PRIORITY:
             return $object->setPriority($xaction->getNewValue());
         case ManiphestTransaction::TYPE_STATUS:
             return $object->setStatus($xaction->getNewValue());
         case ManiphestTransaction::TYPE_TITLE:
             return $object->setTitle($xaction->getNewValue());
         case ManiphestTransaction::TYPE_DESCRIPTION:
             return $object->setDescription($xaction->getNewValue());
         case ManiphestTransaction::TYPE_OWNER:
             $phid = $xaction->getNewValue();
             // Update the "ownerOrdering" column to contain the full name of the
             // owner, if the task is assigned.
             $handle = null;
             if ($phid) {
                 $handle = id(new PhabricatorHandleQuery())->setViewer($this->getActor())->withPHIDs(array($phid))->executeOne();
             }
             if ($handle) {
                 $object->setOwnerOrdering($handle->getName());
             } else {
                 $object->setOwnerOrdering(null);
             }
             return $object->setOwnerPHID($phid);
         case ManiphestTransaction::TYPE_SUBPRIORITY:
             $object->setSubpriority($xaction->getNewValue());
             return;
         case ManiphestTransaction::TYPE_PROJECT_COLUMN:
             // these do external (edge) updates
             return;
         case ManiphestTransaction::TYPE_MERGED_INTO:
             $object->setStatus(ManiphestTaskStatus::getDuplicateStatus());
             return;
         case ManiphestTransaction::TYPE_MERGED_FROM:
             return;
     }
 }
Exemplo n.º 13
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PholioTransactionType::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             if ($object->getOriginalName() === null) {
                 $object->setOriginalName($xaction->getNewValue());
             }
             break;
         case PholioTransactionType::TYPE_DESCRIPTION:
             $object->setDescription($xaction->getNewValue());
             break;
         case PholioTransactionType::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             break;
         case PhabricatorTransactions::TYPE_EDGE:
             return;
     }
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorOwnersPackageTransaction::TYPE_NAME:
             $object->setName($xaction->getNewValue());
             return;
         case PhabricatorOwnersPackageTransaction::TYPE_DESCRIPTION:
             $object->setDescription($xaction->getNewValue());
             return;
         case PhabricatorOwnersPackageTransaction::TYPE_AUDITING:
             $object->setAuditingEnabled($xaction->getNewValue());
             return;
         case PhabricatorOwnersPackageTransaction::TYPE_OWNERS:
         case PhabricatorOwnersPackageTransaction::TYPE_PATHS:
             return;
         case PhabricatorOwnersPackageTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhrictionTransaction::TYPE_TITLE:
         case PhrictionTransaction::TYPE_CONTENT:
         case PhrictionTransaction::TYPE_MOVE_TO:
             $object->setStatus(PhrictionDocumentStatus::STATUS_EXISTS);
             return;
         case PhrictionTransaction::TYPE_MOVE_AWAY:
             $object->setStatus(PhrictionDocumentStatus::STATUS_MOVED);
             return;
         case PhrictionTransaction::TYPE_DELETE:
             $object->setStatus(PhrictionDocumentStatus::STATUS_DELETED);
             return;
     }
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     $status_review = ArcanistDifferentialRevisionStatus::NEEDS_REVIEW;
     $status_revision = ArcanistDifferentialRevisionStatus::NEEDS_REVISION;
     $status_plan = ArcanistDifferentialRevisionStatus::CHANGES_PLANNED;
     $status_abandoned = ArcanistDifferentialRevisionStatus::ABANDONED;
     switch ($xaction->getTransactionType()) {
         case DifferentialTransaction::TYPE_INLINE:
             return;
         case DifferentialTransaction::TYPE_UPDATE:
             if (!$this->getIsCloseByCommit()) {
                 switch ($object->getStatus()) {
                     case $status_revision:
                     case $status_plan:
                     case $status_abandoned:
                         $object->setStatus($status_review);
                         break;
                 }
             }
             $diff = $this->requireDiff($xaction->getNewValue());
             $object->setLineCount($diff->getLineCount());
             if ($this->repositoryPHIDOverride !== false) {
                 $object->setRepositoryPHID($this->repositoryPHIDOverride);
             } else {
                 $object->setRepositoryPHID($diff->getRepositoryPHID());
             }
             $object->attachActiveDiff($diff);
             // TODO: Update the `diffPHID` once we add that.
             return;
         case DifferentialTransaction::TYPE_ACTION:
             switch ($xaction->getNewValue()) {
                 case DifferentialAction::ACTION_RESIGN:
                 case DifferentialAction::ACTION_ACCEPT:
                 case DifferentialAction::ACTION_REJECT:
                     // These have no direct effects, and affect review status only
                     // indirectly by altering reviewers with TYPE_EDGE transactions.
                     return;
                 case DifferentialAction::ACTION_ABANDON:
                     $object->setStatus(ArcanistDifferentialRevisionStatus::ABANDONED);
                     return;
                 case DifferentialAction::ACTION_RETHINK:
                     $object->setStatus($status_plan);
                     return;
                 case DifferentialAction::ACTION_RECLAIM:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_REOPEN:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_REQUEST:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_CLOSE:
                     $object->setStatus(ArcanistDifferentialRevisionStatus::CLOSED);
                     return;
                 case DifferentialAction::ACTION_CLAIM:
                     $object->setAuthorPHID($this->getActingAsPHID());
                     return;
                 default:
                     throw new Exception(pht('Differential action "%s" is not a valid action!', $xaction->getNewValue()));
             }
             break;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     $status_review = ArcanistDifferentialRevisionStatus::NEEDS_REVIEW;
     $status_revision = ArcanistDifferentialRevisionStatus::NEEDS_REVISION;
     $status_plan = ArcanistDifferentialRevisionStatus::CHANGES_PLANNED;
     switch ($xaction->getTransactionType()) {
         case PhabricatorTransactions::TYPE_VIEW_POLICY:
             $object->setViewPolicy($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_EDIT_POLICY:
             $object->setEditPolicy($xaction->getNewValue());
             return;
         case PhabricatorTransactions::TYPE_SUBSCRIBERS:
         case PhabricatorTransactions::TYPE_COMMENT:
         case DifferentialTransaction::TYPE_INLINE:
             return;
         case PhabricatorTransactions::TYPE_EDGE:
             return;
         case DifferentialTransaction::TYPE_UPDATE:
             if (!$this->getIsCloseByCommit() && ($object->getStatus() == $status_revision || $object->getStatus() == $status_plan)) {
                 $object->setStatus($status_review);
             }
             $diff = $this->requireDiff($xaction->getNewValue());
             $object->setLineCount($diff->getLineCount());
             $object->setRepositoryPHID($diff->getRepositoryPHID());
             $object->setArcanistProjectPHID($diff->getArcanistProjectPHID());
             $object->attachActiveDiff($diff);
             // TODO: Update the `diffPHID` once we add that.
             return;
         case DifferentialTransaction::TYPE_ACTION:
             switch ($xaction->getNewValue()) {
                 case DifferentialAction::ACTION_RESIGN:
                 case DifferentialAction::ACTION_ACCEPT:
                 case DifferentialAction::ACTION_REJECT:
                     // These have no direct effects, and affect review status only
                     // indirectly by altering reviewers with TYPE_EDGE transactions.
                     return;
                 case DifferentialAction::ACTION_ABANDON:
                     $object->setStatus(ArcanistDifferentialRevisionStatus::ABANDONED);
                     return;
                 case DifferentialAction::ACTION_RETHINK:
                     $object->setStatus($status_plan);
                     return;
                 case DifferentialAction::ACTION_RECLAIM:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_REOPEN:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_REQUEST:
                     $object->setStatus($status_review);
                     return;
                 case DifferentialAction::ACTION_CLOSE:
                     $object->setStatus(ArcanistDifferentialRevisionStatus::CLOSED);
                     return;
                 case DifferentialAction::ACTION_CLAIM:
                     $object->setAuthorPHID($this->getActingAsPHID());
                     return;
             }
             break;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PonderQuestionTransaction::TYPE_TITLE:
             $object->setTitle($xaction->getNewValue());
             break;
         case PonderQuestionTransaction::TYPE_CONTENT:
             $object->setContent($xaction->getNewValue());
             break;
         case PonderQuestionTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             break;
         case PonderQuestionTransaction::TYPE_ANSWERS:
             $old = $xaction->getOldValue();
             $new = $xaction->getNewValue();
             $add = array_diff_key($new, $old);
             $rem = array_diff_key($old, $new);
             $count = $object->getAnswerCount();
             $count += count($add);
             $count -= count($rem);
             $object->setAnswerCount($count);
             break;
     }
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhabricatorProjectTransaction::TYPE_NAME:
             $name = $xaction->getNewValue();
             $object->setName($name);
             if (!$this->getIsMilestone()) {
                 $object->setPrimarySlug(PhabricatorSlug::normalizeProjectSlug($name));
             }
             return;
         case PhabricatorProjectTransaction::TYPE_SLUGS:
             return;
         case PhabricatorProjectTransaction::TYPE_STATUS:
             $object->setStatus($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_IMAGE:
             $object->setProfileImagePHID($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_ICON:
             $object->setIcon($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_COLOR:
             $object->setColor($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_LOCKED:
             $object->setIsMembershipLocked($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_PARENT:
             $object->setParentProjectPHID($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_MILESTONE:
             $number = $object->getParentProject()->loadNextMilestoneNumber();
             $object->setMilestoneNumber($number);
             $object->setParentProjectPHID($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_HASWORKBOARD:
             $object->setHasWorkboard($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_DEFAULT_SORT:
             $object->setDefaultWorkboardSort($xaction->getNewValue());
             return;
         case PhabricatorProjectTransaction::TYPE_DEFAULT_FILTER:
             $object->setDefaultWorkboardFilter($xaction->getNewValue());
             return;
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case ManiphestTransaction::TYPE_PRIORITY:
             return $object->setPriority($xaction->getNewValue());
         case ManiphestTransaction::TYPE_STATUS:
             return $object->setStatus($xaction->getNewValue());
         case ManiphestTransaction::TYPE_TITLE:
             return $object->setTitle($xaction->getNewValue());
         case ManiphestTransaction::TYPE_DESCRIPTION:
             return $object->setDescription($xaction->getNewValue());
         case ManiphestTransaction::TYPE_OWNER:
             $phid = $xaction->getNewValue();
             // Update the "ownerOrdering" column to contain the full name of the
             // owner, if the task is assigned.
             $handle = null;
             if ($phid) {
                 $handle = id(new PhabricatorHandleQuery())->setViewer($this->getActor())->withPHIDs(array($phid))->executeOne();
             }
             if ($handle) {
                 $object->setOwnerOrdering($handle->getName());
             } else {
                 $object->setOwnerOrdering(null);
             }
             return $object->setOwnerPHID($phid);
         case ManiphestTransaction::TYPE_SUBPRIORITY:
             $object->setSubpriority($xaction->getNewValue());
             return;
         case ManiphestTransaction::TYPE_MERGED_INTO:
             $object->setStatus(ManiphestTaskStatus::getDuplicateStatus());
             return;
         case ManiphestTransaction::TYPE_COVER_IMAGE:
             $file_phid = $xaction->getNewValue();
             if ($file_phid) {
                 $file = id(new PhabricatorFileQuery())->setViewer($this->getActor())->withPHIDs(array($file_phid))->executeOne();
             } else {
                 $file = null;
             }
             if (!$file || !$file->isTransformableImage()) {
                 $object->setProperty('cover.filePHID', null);
                 $object->setProperty('cover.thumbnailPHID', null);
                 return;
             }
             $xform_key = PhabricatorFileThumbnailTransform::TRANSFORM_WORKCARD;
             $xform = PhabricatorFileTransform::getTransformByKey($xform_key)->executeTransform($file);
             $object->setProperty('cover.filePHID', $file->getPHID());
             $object->setProperty('cover.thumbnailPHID', $xform->getPHID());
             return;
         case ManiphestTransaction::TYPE_POINTS:
             $object->setPoints($xaction->getNewValue());
             return;
         case ManiphestTransaction::TYPE_MERGED_FROM:
         case ManiphestTransaction::TYPE_PARENT:
         case PhabricatorTransactions::TYPE_COLUMNS:
             return;
     }
 }
Exemplo n.º 21
0
 protected function applyCustomInternalTransaction(PhabricatorLiskDAO $object, PhabricatorApplicationTransaction $xaction)
 {
     switch ($xaction->getTransactionType()) {
         case PhameBlogTransaction::TYPE_NAME:
             return $object->setName($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_SUBTITLE:
             return $object->setSubtitle($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_DESCRIPTION:
             return $object->setDescription($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_FULLDOMAIN:
             $new_value = $xaction->getNewValue();
             if (strlen($new_value)) {
                 $uri = new PhutilURI($new_value);
                 $domain = $uri->getDomain();
                 $object->setDomain($domain);
             } else {
                 $object->setDomain(null);
             }
             $object->setDomainFullURI($new_value);
             return;
         case PhameBlogTransaction::TYPE_PROFILEIMAGE:
             return $object->setProfileImagePHID($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_HEADERIMAGE:
             return $object->setHeaderImagePHID($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_STATUS:
             return $object->setStatus($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_PARENTSITE:
             return $object->setParentSite($xaction->getNewValue());
         case PhameBlogTransaction::TYPE_PARENTDOMAIN:
             return $object->setParentDomain($xaction->getNewValue());
     }
     return parent::applyCustomInternalTransaction($object, $xaction);
 }