public function removeLabelFromIssue(Default_Model_Issue $issue, Default_Model_Label $label) { $where = array('issue_id = ?' => $issue->getIssueId(), 'label_id = ?' => $label->getLabelId()); $db = $this->getWriteAdapter(); $rowsAffected = $db->delete('issue_label_linker', $where); if ($rowsAffected > 0) { $this->auditTrail($issue, array(array('action' => 'add-label', 'id' => $label->getLabelId()))); } }
public function canEditIssue(Default_Model_Issue $issue) { $acl = Zend_Registry::get('Default_DiContainer')->getAclService(); if ($acl->isAllowed('issue', 'edit-all')) { return true; } $user = Zend_Registry::get('Default_DiContainer')->getUserService()->getIdentity(); if ($acl->isAllowed('issue', 'edit-own')) { if ($issue->getAssignedTo() instanceof Default_Model_User && $issue->getAssignedTo()->getUserId() == $user->getUserId()) { return true; } if ($issue->getCreatedBy()->getUserId() == $user->getUserId()) { return true; } } return false; }