• Jump To … +
    ApiBase.coffee ApiBaseHTTP.coffee ApiV3.coffee BaseModel.coffee Groups.coffee Issues.coffee ProjectDeployKeys.coffee ProjectHooks.coffee ProjectIssues.coffee ProjectMembers.coffee ProjectMergeRequests.coffee ProjectMilestones.coffee ProjectRepository.coffee Projects.coffee Users.coffee Utils.coffee index.coffee
  • ProjectMilestones.coffee

  • ¶
    BaseModel = require '../BaseModel'
    Utils = require '../Utils'
    
    class ProjectMilestones extends BaseModel
      list: (projectId, fn = null) =>
        @debug "Projects::milestones()"
        @get "projects/#{Utils.parseProjectId projectId}/milestones", (data) => fn data if fn
    
      show: (projectId, milestoneId, fn = null) =>
        @debug "Projects::milestone()"
        @get "projects/#{Utils.parseProjectId projectId}/milestones/#{parseInt milestoneId}", (data) => fn data if fn
    
      add: (projectId, title, description, due_date, fn = null) =>
        @debug "Projects::addMilestone()"
        params =
          id: Utils.parseProjectId projectId
          title: title
          description: description
          due_date: due_date
        @post "projects/#{Utils.parseProjectId projectId}/milestones", params, (data) => fn data if fn
    
      update: (projectId, milestoneId, title, description, due_date, state_event, fn = null) =>
        @debug "Projects::editMilestone()"
        params =
          id: Utils.parseProjectId projectId
          title: title
          description: description
          due_date: due_date
          state_event: state_event
        @put "projects/#{Utils.parseProjectId projectId}/milestones/#{parseInt milestoneId}", params, (data) => fn data if fn
    
    module.exports = (client) -> new ProjectMilestones client