當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Tracker_Artifact::createNewChangeset方法代碼示例

本文整理匯總了PHP中Tracker_Artifact::createNewChangeset方法的典型用法代碼示例。如果您正苦於以下問題:PHP Tracker_Artifact::createNewChangeset方法的具體用法?PHP Tracker_Artifact::createNewChangeset怎麽用?PHP Tracker_Artifact::createNewChangeset使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Tracker_Artifact的用法示例。


在下文中一共展示了Tracker_Artifact::createNewChangeset方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: process

 public function process(Tracker_IDisplayTrackerLayout $layout, Codendi_Request $request, PFUser $current_user)
 {
     //TODO : check permissions on this action?
     $comment_format = $this->artifact->validateCommentFormat($request, 'comment_formatnew');
     $this->artifact->setUseArtifactPermissions($request->get('use_artifact_permissions') ? 1 : 0);
     $fields_data = $request->get('artifact');
     $fields_data['request_method_called'] = 'artifact-update';
     $this->artifact->getTracker()->augmentDataFromRequest($fields_data);
     unset($fields_data['request_method_called']);
     try {
         if ($current_user->isAnonymous()) {
             $current_user->setEmail($request->get('email'));
         }
         $this->artifact->createNewChangeset($fields_data, $request->get('artifact_followup_comment'), $current_user, true, $comment_format);
         $art_link = $this->artifact->fetchDirectLinkToArtifact();
         $GLOBALS['Response']->addFeedback('info', $GLOBALS['Language']->getText('plugin_tracker_index', 'update_success', array($art_link)), CODENDI_PURIFIER_LIGHT);
         $redirect = $this->getRedirectUrlAfterArtifactUpdate($request);
         $this->artifact->summonArtifactRedirectors($request, $redirect);
         if ($request->isAjax()) {
             $this->sendAjaxCardsUpdateInfo($current_user, $this->artifact, $this->form_element_factory);
         } elseif ($request->existAndNonEmpty('from_overlay')) {
             echo '<script>window.parent.tuleap.cardwall.cardsEditInPlace.validateEdition(' . $this->artifact->getId() . ')</script>';
             return;
         } else {
             $GLOBALS['Response']->redirect($redirect->toUrl());
         }
     } catch (Tracker_NoChangeException $e) {
         if ($request->isAjax()) {
             $this->sendAjaxCardsUpdateInfo($current_user, $this->artifact, $this->form_element_factory);
         } else {
             $GLOBALS['Response']->addFeedback('info', $e->getMessage(), CODENDI_PURIFIER_LIGHT);
             $render = new Tracker_Artifact_ReadOnlyRenderer($this->event_manager, $this->artifact, $this->form_element_factory, $layout);
             $render->display($request, $current_user);
         }
     } catch (Tracker_Exception $e) {
         if ($request->isAjax()) {
             $this->sendAjaxCardsUpdateInfo($current_user, $this->artifact, $this->form_element_factory);
         } else {
             $GLOBALS['Response']->addFeedback('error', $e->getMessage());
             $render = new Tracker_Artifact_ReadOnlyRenderer($this->event_manager, $this->artifact, $this->form_element_factory, $layout);
             $render->display($request, $current_user);
         }
     }
 }
開發者ID:pombredanne,項目名稱:tuleap,代碼行數:44,代碼來源:UpdateArtifact.class.php

示例2: updateArtifact

 public function updateArtifact(Codendi_Request $request, PFUser $current_user)
 {
     $comment_format = $this->artifact->validateCommentFormat($request, 'comment_formatnew');
     $fields_data = $this->getAugmentedDataFromRequest($request);
     try {
         $this->artifact->createNewChangeset($fields_data, $request->get('artifact_followup_comment'), $current_user, true, $comment_format);
     } catch (Tracker_NoChangeException $e) {
     } catch (Tracker_Exception $e) {
         $this->sendErrorsAsJson($e->getMessage());
     }
 }
開發者ID:pombredanne,項目名稱:tuleap,代碼行數:11,代碼來源:EditInPlaceRenderer.class.php

示例3: updateParent

 private function updateParent(Tracker_Artifact $parent, Tracker_Artifact $child, Tracker_Workflow_Trigger_TriggerRule $rule)
 {
     $target = $rule->getTarget();
     try {
         $comment = '<p>' . $GLOBALS['Language']->getText('workflow_trigger_rules_processor', 'parent_update', array('art #' . $child->getId(), $child->getLastChangeset()->getUri())) . '</p>';
         $comment .= '<p>' . $rule->getAsChangesetComment() . '</p>';
         $parent->createNewChangeset($target->getFieldData(), $comment, $this->workflow_user, true, Tracker_Artifact_Changeset_Comment::HTML_COMMENT);
         $this->logger->debug('Parent successfully updated.');
     } catch (Tracker_Exception $e) {
         $this->logger->debug('Error while updating the parent artifact: ' . $e->getMessage());
         $GLOBALS['Response']->addFeedback('error', $GLOBALS['Language']->getText('plugin_tracker_common_artifact', 'error_processor_update', array($parent->fetchDirectLinkToArtifact(), $e->getMessage())), CODENDI_PURIFIER_DISABLED);
     }
 }
開發者ID:pombredanne,項目名稱:tuleap,代碼行數:13,代碼來源:RulesProcessor.class.php

示例4: addFollowUp

 /** @return Tracker_Artifact_Changeset */
 private function addFollowUp(PFUser $user, Tracker_Artifact $artifact, $body)
 {
     $this->logger->debug("Receiving new follow-up comment from " . $user->getUserName());
     if (!$artifact->userCanUpdate($user)) {
         $this->logger->info("User " . $user->getUnixName() . " has no right to update the artifact #" . $artifact->getId());
         $this->notifier->sendErrorMailInsufficientPermissionUpdate($user->getEmail(), $artifact->getId());
         return;
     }
     return $artifact->createNewChangeset(array(), $body, $user, true, Tracker_Artifact_Changeset_Comment::TEXT_COMMENT);
 }
開發者ID:ndjido,項目名稱:tuleap,代碼行數:11,代碼來源:MailGateway.class.php

示例5: createLinksBetweenArtifacts

 private function createLinksBetweenArtifacts(PFUser $user, Tracker_XML_Importer_ArtifactImportedMapping $artifacts_imported_mapping, Tracker_Artifact $root_artifact)
 {
     $comment_message = '';
     $send_notifications = false;
     $original_id = $artifacts_imported_mapping->getOriginal($root_artifact->getId());
     $children = $this->children_collector->getChildrenForParent($original_id);
     if (!$children) {
         return;
     }
     foreach ($children as $key => $original_child_id) {
         $children[$key] = $artifacts_imported_mapping->get($original_child_id);
     }
     $field_id = $root_artifact->getAnArtifactLinkField($user)->getId();
     $fields_data = array($field_id => array(Tracker_FormElement_Field_ArtifactLink::NEW_VALUES_KEY => implode(',', $children)));
     $root_artifact->createNewChangeset($fields_data, $comment_message, $user, $send_notifications, Tracker_Artifact_Changeset_Comment::TEXT_COMMENT);
     foreach ($children as $child_id) {
         $artifact = $this->artifact_factory->getArtifactById($child_id);
         $this->createLinksBetweenArtifacts($user, $artifacts_imported_mapping, $artifact);
     }
 }
開發者ID:amanikamail,項目名稱:tuleap,代碼行數:20,代碼來源:ChildrenXMLImporter.php

示例6: addSummaryCommentChangeset

 private function addSummaryCommentChangeset(Tracker_Artifact $artifact, PFUser $user, Tracker_Artifact_Changeset $from_changeset)
 {
     $original_artifact = $from_changeset->getArtifact();
     $comment = $this->logger->getAllLogs();
     $comment[] = $GLOBALS['Language']->getText('plugin_tracker_artifact', 'copy_artifact_finished', array($original_artifact->getTracker()->getItemName(), $original_artifact->getId()));
     $artifact->createNewChangeset(array(), implode("\n", $comment), $user, true, Tracker_Artifact_Changeset_Comment::TEXT_COMMENT);
 }
開發者ID:amanikamail,項目名稱:tuleap,代碼行數:7,代碼來源:CopyArtifact.class.php


注:本文中的Tracker_Artifact::createNewChangeset方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。