mirror of
https://github.com/YunoHost-Apps/kanboard_ynh.git
synced 2024-09-03 19:36:17 +02:00
111 lines
2.3 KiB
PHP
111 lines
2.3 KiB
PHP
<?php
|
|
|
|
namespace Api;
|
|
|
|
/**
|
|
* Link API controller
|
|
*
|
|
* @package api
|
|
* @author Frederic Guillot
|
|
*/
|
|
class Link extends \Core\Base
|
|
{
|
|
/**
|
|
* Get a link by id
|
|
*
|
|
* @access public
|
|
* @param integer $link_id Link id
|
|
* @return array
|
|
*/
|
|
public function getLinkById($link_id)
|
|
{
|
|
return $this->link->getById($link_id);
|
|
}
|
|
|
|
/**
|
|
* Get a link by name
|
|
*
|
|
* @access public
|
|
* @param string $label
|
|
* @return array
|
|
*/
|
|
public function getLinkByLabel($label)
|
|
{
|
|
return $this->link->getByLabel($label);
|
|
}
|
|
|
|
/**
|
|
* Get the opposite link id
|
|
*
|
|
* @access public
|
|
* @param integer $link_id Link id
|
|
* @return integer
|
|
*/
|
|
public function getOppositeLinkId($link_id)
|
|
{
|
|
return $this->link->getOppositeLinkId($link_id);
|
|
}
|
|
|
|
/**
|
|
* Get all links
|
|
*
|
|
* @access public
|
|
* @return array
|
|
*/
|
|
public function getAllLinks()
|
|
{
|
|
return $this->link->getAll();
|
|
}
|
|
|
|
/**
|
|
* Create a new link label
|
|
*
|
|
* @access public
|
|
* @param string $label
|
|
* @param string $opposite_label
|
|
* @return boolean|integer
|
|
*/
|
|
public function createLink($label, $opposite_label = '')
|
|
{
|
|
$values = array(
|
|
'label' => $label,
|
|
'opposite_label' => $opposite_label,
|
|
);
|
|
|
|
list($valid,) = $this->link->validateCreation($values);
|
|
return $valid ? $this->link->create($label, $opposite_label) : false;
|
|
}
|
|
|
|
/**
|
|
* Update a link
|
|
*
|
|
* @access public
|
|
* @param integer $link_id
|
|
* @param integer $opposite_link_id
|
|
* @param string $label
|
|
* @return boolean
|
|
*/
|
|
public function updateLink($link_id, $opposite_link_id, $label)
|
|
{
|
|
$values = array(
|
|
'id' => $link_id,
|
|
'opposite_id' => $opposite_link_id,
|
|
'label' => $label,
|
|
);
|
|
|
|
list($valid,) = $this->link->validateModification($values);
|
|
return $valid && $this->link->update($values);
|
|
}
|
|
|
|
/**
|
|
* Remove a link a the relation to its opposite
|
|
*
|
|
* @access public
|
|
* @param integer $link_id
|
|
* @return boolean
|
|
*/
|
|
public function removeLink($link_id)
|
|
{
|
|
return $this->link->remove($link_id);
|
|
}
|
|
}
|