Project
Represents a YouTrack project.
Extends BaseEntity.
Properties
Name | Type | Description | Read-only |
---|---|---|---|
becomesRemoved | | When `true`, the entity is removed in the current transaction. Otherwise, `false`. Available since 2017.4.37915 | |
description | | The description of the project as shown on the project profile page. | |
fields | | The set of custom fields that are available in the project. | |
isArchived | | If the project is currently archived, this property is `true`. | |
isNew | | When `true`, the entity is created in the current transaction. Otherwise, `false`. Available since 2018.2.42351 | |
issues | | A list of all issues that belong to the project. | |
key | | The ID of the project. Use instead of project.shortName, which is deprecated. | |
leader | | The user who is set as the project lead. | |
name | | The name of the project. | |
notificationEmail | | The email address that is used to send notifications for the project. If a 'From' address is not set for the project, the default 'From' address for the YouTrack server is returned. if (issue.becomesReported) {
var lastRelatedEmails = issue.fields['Last message related emails'];
if (lastRelatedEmails) {
lastRelatedEmails.split(' ').forEach(function (email) {
if (email && email.equalsIgnoreCase(issue.project.notificationEmail)) {
var allRelatedEmails = issue.fields['All related emails'];
if (!allRelatedEmails) {
issue.fields['All related emails'] = email;
} else if (!(allRelatedEmails.split(' ').has(email))) {
issue.fields['All related emails'] = allRelatedEmails + ' ' + email;
}
}
});
issue.fields['Last message related emails'] = null;
}
} | |
team | | A UserGroup object that contains the users and members of groups who are assigned to the project team. Available since 2017.4.38235 |
Methods
findByKey
static findByKey(key)
Finds a project by ID.
Parameters
Name | Type | Description |
---|---|---|
key | | The ID of the project to search for. |
Return Value
Type | Description | |
---|---|---|
| The project, or null when there are no projects with the specified ID. |
findByName
static findByName(name)
Finds a project by name.
Parameters
Name | Type | Description |
---|---|---|
name | | The name of the project to search for. |
Return Value
Type | Description | |
---|---|---|
| The project, or null when there are no projects with the specified name. |
becomes
becomes(fieldName, expected)
Checks whether a field is set to an expected value in the current transaction.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field to check. |
expected | | The expected value. |
Return Value
Type | Description | |
---|---|---|
| If the field is set to the expected value, returns `true`. |
canBeReadBy
canBeReadBy(fieldName, user)
Checks whether a user has permission to read the field.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field. |
user | | The user for whom the permission to read the field is checked. |
Return Value
Type | Description | |
---|---|---|
| If the user can read the field, returns `true`. |
canBeWrittenBy
canBeWrittenBy(fieldName, user)
Checks whether a user has permission to update the field.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field. |
user | | The user for whom the permission to update the field is checked. |
Return Value
Type | Description | |
---|---|---|
| If the user can update the field, returns `true`. |
findFieldByName
findFieldByName(name)
Returns the custom field in the project with the specified name.
Parameters
Name | Type | Description |
---|---|---|
name | | The name of the custom field. |
Return Value
Type | Description | |
---|---|---|
| The custom field with the specified name. |
intervalToWorkingMinutes
intervalToWorkingMinutes(start, end)
Gets the number of minutes that occurred during working hours in a specified interval. For example, if the interval is two days and the number of working hours in a day is set to 8, the result is 2 * 8 * 60 = 960
Parameters
Name | Type | Description |
---|---|---|
start | | Start of the interval. |
end | | End of the interval. |
Return Value
Type | Description | |
---|---|---|
| The number of minutes that occurred during working hours in the specified interval. |
isChanged
isChanged(fieldName)
Checks whether the value of a field is changed in the current transaction.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field to check. |
Return Value
Type | Description | |
---|---|---|
| If the value of the field is changed in the current transaction, returns `true`. |
oldValue
oldValue(fieldName)
Returns the previous value of a single-value field before an update was applied. If the field is not changed in the transaction, returns null.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field. |
Return Value
Type | Description | |
---|---|---|
| If the field is changed in the current transaction, the previous value of the field. Otherwise, null. |
required
required(fieldName, message)
Asserts that a value is set for a field. If a value for the required field is not set, the specified message is displayed in the user interface.
Parameters
Name | Type | Description |
---|---|---|
fieldName | | The name of the field to check. |
message | | The message that is displayed to the user that describes the field requirement. |