2026-06-28 16:16:29 -03:00
|
|
|
<?php
|
|
|
|
|
|
2026-07-11 15:30:37 -03:00
|
|
|
namespace Kanboard\Plugin\QualKard;
|
2026-06-28 16:16:29 -03:00
|
|
|
|
|
|
|
|
use Kanboard\Core\Plugin\Base;
|
|
|
|
|
|
2026-07-11 15:30:37 -03:00
|
|
|
/**
|
|
|
|
|
* QualKard -- flashcard spaced repetition on Kanboard cards.
|
|
|
|
|
*
|
|
|
|
|
* Each card is a flashcard (title = prompt, description = answer). You grade a due card by dragging
|
|
|
|
|
* it into a grade column (Hairy/Hard/Medium/Easy); QualKard turns the grade into a due date via the
|
|
|
|
|
* qualcard average + interval, and the companion RecoReco plugin does all the card movement.
|
|
|
|
|
*
|
|
|
|
|
* Requires RecoReco (the move engine). Grading math is ported from Ruben's C program "qualcard".
|
|
|
|
|
*/
|
2026-06-28 16:16:29 -03:00
|
|
|
class Plugin extends Base
|
|
|
|
|
{
|
|
|
|
|
public function initialize()
|
|
|
|
|
{
|
2026-07-11 15:34:39 -03:00
|
|
|
// Per-board setup/reset/disable on Settings -> Integrations.
|
|
|
|
|
$this->template->hook->attach('template:project:integrations', 'qualKard:project/integration');
|
|
|
|
|
|
|
|
|
|
// (The grade handler and the badge are wired in later versions.)
|
2026-07-11 15:30:37 -03:00
|
|
|
}
|
2026-06-28 16:16:29 -03:00
|
|
|
|
2026-07-11 15:30:37 -03:00
|
|
|
public function getHelpers()
|
|
|
|
|
{
|
|
|
|
|
return array(
|
|
|
|
|
'Plugin\QualKard\Helper' => array('QualKardHelper'),
|
|
|
|
|
);
|
2026-06-28 16:16:29 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPluginName()
|
|
|
|
|
{
|
2026-07-11 15:30:37 -03:00
|
|
|
return 'QualKard';
|
2026-06-28 16:16:29 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPluginDescription()
|
|
|
|
|
{
|
2026-07-11 15:30:37 -03:00
|
|
|
return t('Flashcard spaced repetition: grade a card by dragging it to a column, and it comes back when due (needs RecoReco).');
|
2026-06-28 16:16:29 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPluginAuthor()
|
|
|
|
|
{
|
|
|
|
|
return 'Ruben (drbeco)';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPluginVersion()
|
|
|
|
|
{
|
2026-07-11 15:34:39 -03:00
|
|
|
return '0.3.0';
|
2026-06-28 16:16:29 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getPluginHomepage()
|
|
|
|
|
{
|
2026-07-11 15:30:37 -03:00
|
|
|
return 'https://code.beco.cc/beco/QualKard';
|
2026-06-28 16:16:29 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getCompatibleVersion()
|
|
|
|
|
{
|
|
|
|
|
return '>=1.2.0';
|
|
|
|
|
}
|
|
|
|
|
}
|