Ejemplo n.º 1
0
 public function executeUpdate()
 {
     $jira = new sfJiraPlugin($this->getUser()->getProfile()->getJiraLogin(), $this->getUser()->getProfile()->getJiraPassword());
     $aProjects = $jira->getProjects();
     foreach ($aProjects as $project) {
         #var_dump( $project );
         $c = new Criteria();
         $c->add(ProjectPeer::USER_ID, $this->getUser()->getProfile()->getId());
         $c->add(ProjectPeer::KEY, $project->key);
         $p = ProjectPeer::doSelectOne($c);
         $c = new Criteria();
         $c->add(UserPeer::JIRA_LOGIN, $project->lead);
         $u = UserPeer::doSelectOne($c);
         if (empty($p)) {
             $p = new Project();
             $p->setKey($project->key);
             $p->setLeadId(!empty($u) ? $u->getId() : null);
             $p->setUserId($this->getUser()->getProfile()->getId());
             $p->setName($project->name);
             $p->setUpdated(date('r'));
             $p->save();
         }
         $issues = $jira->getIssuesForProject($p->getKey());
         foreach ($issues as $issue) {
             #die($p->getKey());
             if ($issue->assignee == $this->getUser()->getProfile()->getJiraLogin()) {
                 $c = new Criteria();
                 $c->add(TaskPeer::KEY, $issue->key);
                 $t = TaskPeer::doSelectOne($c);
                 if (empty($t)) {
                     $c = new Criteria();
                     $c->add(UserPeer::JIRA_LOGIN, $issue->reporter);
                     $u = UserPeer::doSelectOne($c);
                     $t = new Task();
                     $t->setProjectId($p->getId());
                     $t->setTitle($issue->summary);
                     $t->setDescription($issue->description);
                     $t->setKey($issue->key);
                     $t->setUpdated(date('r'));
                     $t->setStatusId($issue->status);
                     $t->setPriorityId($issue->priority);
                     $t->setLeadId(!empty($u) ? $u->getId() : null);
                     $t->save();
                 }
             }
         }
     }
     $this->redirect('@homepage');
     return sfView::NONE;
 }
Ejemplo n.º 2
0
 /**
  * @param $taskName
  * @param $taskDesc
  * @param $taskDueDate
  * @param $taskStatus
  * @param null $userId
  * @param null $projectId
  * @return bool
  * @throws \Exception
  */
 public function createTask($taskName, $taskDesc, $taskDueDate, $taskStatus, $userId = null, $projectId = null)
 {
     $task = new Task();
     $task->setTitle($taskName);
     $task->setDescription($taskDesc);
     $task->setDueDate(new \DateTime($taskDueDate));
     $task->setStatus($taskStatus);
     if ($projectId) {
         $project = $this->em->getRepository('AppBundle:Project');
         $task->setProject($project->find($project_id));
     }
     if ($userId) {
         $user = $this->em->getRepository('AppBundle:User');
         $task->setUser($user->find($useId));
     }
     try {
         $this->em->persist($task);
         $this->em->flush();
         return true;
     } catch (\Exception $e) {
         throw $e;
     }
 }
Ejemplo n.º 3
0
?>
<!doctype html>
<html>
<head>
  <title>Tasks API Sample</title>
  <link rel='stylesheet' href='http://fonts.googleapis.com/css?family=Droid+Serif|Droid+Sans:regular,bold' />
  <link rel='stylesheet' href='css/style.css' />
</head>
<body>
<div id='container'>
  <div id='top'><h1>Tasks API Sample</h1></div>
  <div id='main'>
<?php
  $lists = $tasksService->tasklists->listTasklists();
  foreach ($lists['items'] as $list) {
    print "<h3>{$list['name']}</h3>";
    $tasks = $tasksService->tasks->listTasks($list['id']);
    foreach ($tasks['items'] as $task) {
      $updated = new Task($task);
      $updated->setNotes('Test');
      $updated->setTitle($task['title'] + ' ' . time());
      $tasksService->tasks->update($list['id'], $task['id'], $updated);
      print "<p id='post'>{$task['title']}</p>";
    }
  }
?>
  </div>
</div>
</body>
</html>
<?php $_SESSION['access_token'] = $client->getAccessToken(); ?>
Ejemplo n.º 4
0
    }
    // log it
    $logEvent = new Event(array('event_type_id' => 'create_task', 'project_id' => $project->getID(), 'user_1_id' => Session::getUserID(), 'item_1_id' => $task->getID(), 'data_1' => $task->getTitle(), 'data_2' => $task->getDescription()));
    $logEvent->save();
    // we're done here
    Session::setMessage('You created a new task.');
    $json = array('success' => '1', 'successUrl' => Url::task($task->getID()));
    echo json_encode($json);
} elseif ($action == 'edit') {
    // flag default is false; assume nothing is modified to start
    $modified = false;
    // is title modified?
    if ($title != $task->getTitle()) {
        // save changes
        $oldTitle = $task->getTitle();
        $task->setTitle($title);
        $task->save();
        // log it
        $logEvent = new Event(array('event_type_id' => 'edit_task_title', 'project_id' => $project->getID(), 'user_1_id' => Session::getUserID(), 'item_1_id' => $task->getID(), 'data_1' => $oldTitle, 'data_2' => $title));
        $logEvent->save();
        // set flag
        $modified = true;
    }
    // is leader modified?
    if ($leader->getID() != $task->getLeaderID()) {
        // save changes
        $oldLeaderID = $task->getLeaderID();
        $task->setLeaderID($leader->getID());
        $task->save();
        // log it
        $logEvent = new Event(array('event_type_id' => 'edit_task_leader', 'project_id' => $project->getID(), 'user_1_id' => Session::getUserID(), 'user_2_id' => $leader->getID(), 'item_1_id' => $task->getID(), 'data_1' => $oldLeaderID, 'data_2' => $leader->getID()));