本文整理汇总了PHP中thebuggenie\core\entities\Issue::setAssignee方法的典型用法代码示例。如果您正苦于以下问题:PHP Issue::setAssignee方法的具体用法?PHP Issue::setAssignee怎么用?PHP Issue::setAssignee使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类thebuggenie\core\entities\Issue
的用法示例。
在下文中一共展示了Issue::setAssignee方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: perform
public function perform(\thebuggenie\core\entities\Issue $issue, $request = null)
{
switch ($this->_action_type) {
case self::ACTION_ASSIGN_ISSUE_SELF:
$issue->setAssignee(framework\Context::getUser());
break;
case self::ACTION_SET_STATUS:
if ($this->getTargetValue()) {
$issue->setStatus(Status::getB2DBTable()->selectById((int) $this->getTargetValue()));
} else {
$issue->setStatus($request['status_id']);
}
break;
case self::ACTION_CLEAR_MILESTONE:
$issue->setMilestone(null);
break;
case self::ACTION_SET_MILESTONE:
if ($this->getTargetValue()) {
$issue->setMilestone(Milestone::getB2DBTable()->selectById((int) $this->getTargetValue()));
} else {
$issue->setMilestone($request['milestone_id']);
}
break;
case self::ACTION_CLEAR_PRIORITY:
$issue->setPriority(null);
break;
case self::ACTION_SET_PRIORITY:
if ($this->getTargetValue()) {
$issue->setPriority(Priority::getB2DBTable()->selectById((int) $this->getTargetValue()));
} else {
$issue->setPriority($request['priority_id']);
}
break;
case self::ACTION_CLEAR_PERCENT:
$issue->setPercentCompleted(0);
break;
case self::ACTION_SET_PERCENT:
if ($this->getTargetValue()) {
$issue->setPercentCompleted((int) $this->getTargetValue());
} else {
$issue->setPercentCompleted((int) $request['percent_complete_id']);
}
break;
case self::ACTION_CLEAR_DUPLICATE:
$issue->setDuplicateOf(null);
break;
case self::ACTION_SET_DUPLICATE:
$issue->setDuplicateOf($request['duplicate_issue_id']);
break;
case self::ACTION_CLEAR_RESOLUTION:
$issue->setResolution(null);
break;
case self::ACTION_SET_RESOLUTION:
if ($this->getTargetValue()) {
$issue->setResolution(Resolution::getB2DBTable()->selectById((int) $this->getTargetValue()));
} else {
$issue->setResolution($request['resolution_id']);
}
break;
case self::ACTION_CLEAR_REPRODUCABILITY:
$issue->setReproducability(null);
break;
case self::ACTION_SET_REPRODUCABILITY:
if ($this->getTargetValue()) {
$issue->setReproducability(Reproducability::getB2DBTable()->selectById((int) $this->getTargetValue()));
} else {
$issue->setReproducability($request['reproducability_id']);
}
break;
case self::ACTION_CLEAR_ASSIGNEE:
$issue->clearAssignee();
break;
case self::ACTION_ASSIGN_ISSUE:
if ($this->getTargetValue()) {
$target_details = explode('_', $this->_target_value);
if ($target_details[0] == 'user') {
$assignee = \thebuggenie\core\entities\User::getB2DBTable()->selectById((int) $target_details[1]);
} else {
$assignee = Team::getB2DBTable()->selectById((int) $target_details[1]);
}
$issue->setAssignee($assignee);
} else {
$assignee = null;
switch ($request['assignee_type']) {
case 'user':
$assignee = \thebuggenie\core\entities\User::getB2DBTable()->selectById((int) $request['assignee_id']);
break;
case 'team':
$assignee = Team::getB2DBTable()->selectById((int) $request['assignee_id']);
break;
}
if ((bool) $request->getParameter('assignee_teamup', false) && $assignee instanceof \thebuggenie\core\entities\User && $assignee->getID() != framework\Context::getUser()->getID()) {
$team = new \thebuggenie\core\entities\Team();
$team->setName($assignee->getBuddyname() . ' & ' . framework\Context::getUser()->getBuddyname());
$team->setOndemand(true);
$team->save();
$team->addMember($assignee);
$team->addMember(framework\Context::getUser());
$assignee = $team;
}
//.........这里部分代码省略.........
示例2: _postIssue
protected function _postIssue()
{
$fields_array = $this->selected_project->getReportableFieldsArray($this->issuetype_id);
$issue = new entities\Issue();
$issue->setTitle($this->title);
$issue->setIssuetype($this->issuetype_id);
$issue->setProject($this->selected_project);
if (isset($fields_array['shortname'])) {
$issue->setShortname($this->selected_shortname);
}
if (isset($fields_array['description'])) {
$issue->setDescription($this->selected_description);
$issue->setDescriptionSyntax($this->selected_description_syntax);
}
if (isset($fields_array['reproduction_steps'])) {
$issue->setReproductionSteps($this->selected_reproduction_steps);
$issue->setReproductionStepsSyntax($this->selected_reproduction_steps_syntax);
}
if (isset($fields_array['category']) && $this->selected_category instanceof entities\Datatype) {
$issue->setCategory($this->selected_category->getID());
}
if (isset($fields_array['status']) && $this->selected_status instanceof entities\Datatype) {
$issue->setStatus($this->selected_status->getID());
}
if (isset($fields_array['reproducability']) && $this->selected_reproducability instanceof entities\Datatype) {
$issue->setReproducability($this->selected_reproducability->getID());
}
if (isset($fields_array['resolution']) && $this->selected_resolution instanceof entities\Datatype) {
$issue->setResolution($this->selected_resolution->getID());
}
if (isset($fields_array['severity']) && $this->selected_severity instanceof entities\Datatype) {
$issue->setSeverity($this->selected_severity->getID());
}
if (isset($fields_array['priority']) && $this->selected_priority instanceof entities\Datatype) {
$issue->setPriority($this->selected_priority->getID());
}
if (isset($fields_array['estimated_time'])) {
$issue->setEstimatedTime($this->selected_estimated_time);
}
if (isset($fields_array['spent_time'])) {
$issue->setSpentTime($this->selected_spent_time);
}
if (isset($fields_array['milestone']) || isset($this->selected_milestone)) {
$issue->setMilestone($this->selected_milestone);
}
if (isset($fields_array['percent_complete'])) {
$issue->setPercentCompleted($this->selected_percent_complete);
}
if (isset($fields_array['pain_bug_type'])) {
$issue->setPainBugType($this->selected_pain_bug_type);
}
if (isset($fields_array['pain_likelihood'])) {
$issue->setPainLikelihood($this->selected_pain_likelihood);
}
if (isset($fields_array['pain_effect'])) {
$issue->setPainEffect($this->selected_pain_effect);
}
foreach (entities\CustomDatatype::getAll() as $customdatatype) {
if (!isset($fields_array[$customdatatype->getKey()])) {
continue;
}
if ($customdatatype->hasCustomOptions()) {
if (isset($fields_array[$customdatatype->getKey()]) && $this->selected_customdatatype[$customdatatype->getKey()] instanceof entities\CustomDatatypeOption) {
$selected_option = $this->selected_customdatatype[$customdatatype->getKey()];
$issue->setCustomField($customdatatype->getKey(), $selected_option->getID());
}
} else {
$issue->setCustomField($customdatatype->getKey(), $this->selected_customdatatype[$customdatatype->getKey()]);
}
}
// FIXME: If we set the issue assignee during report issue, this needs to be set INSTEAD of this
if ($this->selected_project->canAutoassign()) {
if (isset($fields_array['component']) && $this->selected_component instanceof entities\Component && $this->selected_component->hasLeader()) {
$issue->setAssignee($this->selected_component->getLeader());
} elseif (isset($fields_array['edition']) && $this->selected_edition instanceof entities\Edition && $this->selected_edition->hasLeader()) {
$issue->setAssignee($this->selected_edition->getLeader());
} elseif ($this->selected_project->hasLeader()) {
$issue->setAssignee($this->selected_project->getLeader());
}
}
$issue->save();
if (isset($this->parent_issue)) {
$issue->addParentIssue($this->parent_issue);
}
if (isset($fields_array['edition']) && $this->selected_edition instanceof entities\Edition) {
$issue->addAffectedEdition($this->selected_edition);
}
if (isset($fields_array['build']) && $this->selected_build instanceof entities\Build) {
$issue->addAffectedBuild($this->selected_build);
}
if (isset($fields_array['component']) && $this->selected_component instanceof entities\Component) {
$issue->addAffectedComponent($this->selected_component);
}
return $issue;
}
示例3: _postIssue
protected function _postIssue(framework\Request $request)
{
$fields_array = $this->selected_project->getReportableFieldsArray($this->issuetype_id);
$issue = new entities\Issue();
$issue->setTitle($this->title);
$issue->setIssuetype($this->issuetype_id);
$issue->setProject($this->selected_project);
if (isset($fields_array['shortname'])) {
$issue->setShortname($this->selected_shortname);
}
if (isset($fields_array['description'])) {
$issue->setDescription($this->selected_description);
$issue->setDescriptionSyntax($this->selected_description_syntax);
}
if (isset($fields_array['reproduction_steps'])) {
$issue->setReproductionSteps($this->selected_reproduction_steps);
$issue->setReproductionStepsSyntax($this->selected_reproduction_steps_syntax);
}
if (isset($fields_array['category']) && $this->selected_category instanceof entities\Datatype) {
$issue->setCategory($this->selected_category->getID());
}
if (isset($fields_array['status']) && $this->selected_status instanceof entities\Datatype) {
$issue->setStatus($this->selected_status->getID());
}
if (isset($fields_array['reproducability']) && $this->selected_reproducability instanceof entities\Datatype) {
$issue->setReproducability($this->selected_reproducability->getID());
}
if (isset($fields_array['resolution']) && $this->selected_resolution instanceof entities\Datatype) {
$issue->setResolution($this->selected_resolution->getID());
}
if (isset($fields_array['severity']) && $this->selected_severity instanceof entities\Datatype) {
$issue->setSeverity($this->selected_severity->getID());
}
if (isset($fields_array['priority']) && $this->selected_priority instanceof entities\Datatype) {
$issue->setPriority($this->selected_priority->getID());
}
if (isset($fields_array['estimated_time'])) {
$issue->setEstimatedTime($this->selected_estimated_time);
}
if (isset($fields_array['spent_time'])) {
$issue->setSpentTime($this->selected_spent_time);
}
if (isset($fields_array['milestone']) || isset($this->selected_milestone)) {
$issue->setMilestone($this->selected_milestone);
}
if (isset($fields_array['percent_complete'])) {
$issue->setPercentCompleted($this->selected_percent_complete);
}
if (isset($fields_array['pain_bug_type'])) {
$issue->setPainBugType($this->selected_pain_bug_type);
}
if (isset($fields_array['pain_likelihood'])) {
$issue->setPainLikelihood($this->selected_pain_likelihood);
}
if (isset($fields_array['pain_effect'])) {
$issue->setPainEffect($this->selected_pain_effect);
}
foreach (entities\CustomDatatype::getAll() as $customdatatype) {
if (!isset($fields_array[$customdatatype->getKey()])) {
continue;
}
if ($customdatatype->hasCustomOptions()) {
if (isset($fields_array[$customdatatype->getKey()]) && $this->selected_customdatatype[$customdatatype->getKey()] instanceof entities\CustomDatatypeOption) {
$selected_option = $this->selected_customdatatype[$customdatatype->getKey()];
$issue->setCustomField($customdatatype->getKey(), $selected_option->getID());
}
} else {
$issue->setCustomField($customdatatype->getKey(), $this->selected_customdatatype[$customdatatype->getKey()]);
}
}
// FIXME: If we set the issue assignee during report issue, this needs to be set INSTEAD of this
if ($this->selected_project->canAutoassign()) {
if (isset($fields_array['component']) && $this->selected_component instanceof entities\Component && $this->selected_component->hasLeader()) {
$issue->setAssignee($this->selected_component->getLeader());
} elseif (isset($fields_array['edition']) && $this->selected_edition instanceof entities\Edition && $this->selected_edition->hasLeader()) {
$issue->setAssignee($this->selected_edition->getLeader());
} elseif ($this->selected_project->hasLeader()) {
$issue->setAssignee($this->selected_project->getLeader());
}
}
if ($request->hasParameter('custom_issue_access') && $this->selected_project->permissionCheck('canlockandeditlockedissues')) {
switch ($request->getParameter('issue_access')) {
case 'public':
case 'public_category':
$issue->setLocked(false);
$issue->setLockedCategory($request->hasParameter('public_category'));
break;
case 'restricted':
$issue->setLocked();
break;
}
} else {
$issue->setLockedFromProject($this->selected_project);
}
framework\Event::listen('core', 'thebuggenie\\core\\entities\\Issue::createNew_pre_notifications', array($this, 'listen_issueCreate'));
$issue->save();
if (isset($this->parent_issue)) {
$issue->addParentIssue($this->parent_issue);
}
if (isset($fields_array['edition']) && $this->selected_edition instanceof entities\Edition) {
//.........这里部分代码省略.........
示例4: runDoImportCSV
//.........这里部分代码省略.........
try {
$activerow = $data[$i];
$issue = new entities\Issue();
$issue->setTitle($activerow[self::CSV_ISSUE_TITLE]);
$issue->setProject($activerow[self::CSV_ISSUE_PROJECT]);
$issue->setIssuetype($activerow[self::CSV_ISSUE_ISSUE_TYPE]);
$issue->save();
if (isset($activerow[self::CSV_ISSUE_DESCR])) {
$issue->setDescription($activerow[self::CSV_ISSUE_DESCR]);
}
if (isset($activerow[self::CSV_ISSUE_REPRO])) {
$issue->setReproductionSteps($activerow[self::CSV_ISSUE_REPRO]);
}
if (isset($activerow[self::CSV_ISSUE_STATE])) {
$issue->setState($activerow[self::CSV_ISSUE_STATE]);
}
if (isset($activerow[self::CSV_ISSUE_STATUS])) {
$issue->setStatus($activerow[self::CSV_ISSUE_STATUS]);
}
if (isset($activerow[self::CSV_ISSUE_POSTED_BY])) {
$issue->setPostedBy(entities\User::getB2DBTable()->selectByID($activerow[self::CSV_ISSUE_POSTED_BY]));
}
if (isset($activerow[self::CSV_ISSUE_OWNER]) && isset($activerow[self::CSV_ISSUE_OWNER_TYPE])) {
switch ($activerow[self::CSV_ISSUE_OWNER_TYPE]) {
case self::CSV_IDENTIFIER_TYPE_USER:
$user = new entities\User($activerow[self::CSV_ISSUE_OWNER]);
$issue->setOwner($user);
break;
case self::CSV_IDENTIFIER_TYPE_TEAM:
$team = new entities\Team($activerow[self::CSV_ISSUE_OWNER]);
$issue->setOwner($team);
break;
}
}
if (isset($activerow[self::CSV_ISSUE_ASSIGNED]) && isset($activerow[self::CSV_ISSUE_ASSIGNED_TYPE])) {
switch ($activerow[self::CSV_ISSUE_ASSIGNED_TYPE]) {
case self::CSV_IDENTIFIER_TYPE_USER:
$user = new entities\User($activerow[self::CSV_ISSUE_ASSIGNED]);
$issue->setAssignee($user);
break;
case self::CSV_IDENTIFIER_TYPE_TEAM:
$team = new entities\Team($activerow[self::CSV_ISSUE_ASSIGNED]);
$issue->setAssignee($team);
break;
}
}
if (isset($activerow[self::CSV_ISSUE_RESOLUTION])) {
$issue->setResolution($activerow[self::CSV_ISSUE_RESOLUTION]);
}
if (isset($activerow[self::CSV_ISSUE_PRIORITY])) {
$issue->setPriority($activerow[self::CSV_ISSUE_PRIORITY]);
}
if (isset($activerow[self::CSV_ISSUE_CATEGORY])) {
$issue->setCategory($activerow[self::CSV_ISSUE_CATEGORY]);
}
if (isset($activerow[self::CSV_ISSUE_BLOCKING])) {
$issue->setBlocking($activerow[self::CSV_ISSUE_BLOCKING]);
}
if (isset($activerow[self::CSV_ISSUE_SEVERITY])) {
$issue->setSeverity($activerow[self::CSV_ISSUE_SEVERITY]);
}
if (isset($activerow[self::CSV_ISSUE_REPRODUCIBILITY])) {
$issue->setReproducability($activerow[self::CSV_ISSUE_REPRODUCIBILITY]);
}
if (isset($activerow[self::CSV_ISSUE_VOTES])) {
$issue->setVotes($activerow[self::CSV_ISSUE_VOTES]);
}
if (isset($activerow[self::CSV_ISSUE_PERCENTAGE])) {
$issue->setPercentCompleted($activerow[self::CSV_ISSUE_PERCENTAGE]);
}
if (isset($activerow[self::CSV_ISSUE_ISSUENO])) {
$issue->setIssueNo((int) $activerow[self::CSV_ISSUE_ISSUENO]);
}
if (isset($activerow[self::CSV_ISSUE_MILESTONE])) {
$issue->setMilestone($activerow[self::CSV_ISSUE_MILESTONE]);
}
if (isset($activerow[self::CSV_ISSUE_POSTED])) {
$issue->setPosted((int) $activerow[self::CSV_ISSUE_POSTED]);
}
$issue->save();
} catch (\Exception $e) {
$errors[] = $this->getI18n()->__('Row %row failed: %err', array('%row' => $i + 1, '%err' => $e->getMessage()));
}
}
break;
}
// Handle errors
if (count($errors) != 0) {
$errordiv = '<ul>';
foreach ($errors as $error) {
$errordiv .= '<li>' . $error . '</li>';
}
$errordiv .= '</ul>';
$this->getResponse()->setHttpStatus(400);
return $this->renderJSON(array('errordetail' => $errordiv, 'error' => $this->getI18n()->__('Errors occured while importing, see the error list in the import screen for further details')));
} else {
return $this->renderJSON(array('message' => $this->getI18n()->__('Successfully imported %num rows!', array('%num' => count($data)))));
}
}
}