/**
  * @param Wiki    $wiki
  * @param Section $section
  */
 public function __construct(Wiki $wiki, Section $section)
 {
     $this->wiki = $wiki;
     $this->details = array('section' => array('wiki' => $wiki->getId(), 'id' => $section->getId(), 'title' => $section->getActiveContribution()->getTitle(), 'text' => $section->getActiveContribution()->getText(), 'visible' => $section->getVisible()));
     parent::__construct($wiki->getResourceNode(), $this->details);
 }
 /**
  * @param Wiki    $wiki
  * @param Section $section
  * @param array   $changeSet
  */
 public function __construct(Wiki $wiki, Section $section, $changeSet)
 {
     $details = array('section' => array('wiki' => $wiki->getId(), 'id' => $section->getId(), 'title' => $section->getActiveContribution()->getTitle(), 'text' => $section->getActiveContribution()->getText(), 'visible' => $section->getVisible(), 'changeSet' => $changeSet));
     parent::__construct($wiki->getResourceNode(), $details);
 }
예제 #3
0
 /**
  * Obtain a diff between two contributions from the same section.
  *
  * @param Wiki    $wiki
  * @param Section $section
  * @param int     $oldContributionId
  * @param int     $newContributionId
  *
  * @return mixed[]
  *
  * @Get(
  *     "/api/wikis/{wiki}/sections/{section}/contributions/{oldContributionId}/{newContributionId}",
  *     name="icap_wiki_api_get_wiki_section_contribution_diff",
  *     requirements={ "wiki" = "\d+", "section" = "\d+", "oldContributionId" = "\d+", "newContribution  " = "\d+" },
  *     options = { "expose" = true }
  * )
  */
 public function getWikiSectionContributionDiff(Wiki $wiki, Section $section, $oldContributionId, $newContributionId)
 {
     $response = new JsonResponse();
     $data = ['response' => []];
     if ($section->getVisible() === true) {
         $contributions = $this->get('icap.wiki.contribution_manager')->compareContributions($section, [$oldContributionId, $newContributionId]);
         if (count($contributions) === 2) {
             $data = ['response' => [['title' => $contributions[0]->getTitle(), 'text' => $contributions[0]->getText(), 'contributor' => ['userName' => $contributions[0]->getContributor()->getUserName(), 'firstName' => $contributions[0]->getContributor()->getFirstName(), 'lastName' => $contributions[0]->getContributor()->getLastName()], 'creationDate' => $contributions[0]->getCreationDate()], ['title' => $contributions[1]->getTitle(), 'text' => $contributions[1]->getText(), 'contributor' => ['userName' => $contributions[1]->getContributor()->getUserName(), 'firstName' => $contributions[1]->getContributor()->getFirstName(), 'lastName' => $contributions[1]->getContributor()->getLastName()], 'creationDate' => $contributions[1]->getCreationDate()]]];
         }
     }
     return $response->setData($data);
 }