Проблема следующая. Когда добавляем проект с каким-либо фреймворком в какую-либо IDE, на вкладке со списком тасков появляются дела, которые запланировали разработчики фреймворка. Написал небольшую функцию, которая формирует список моих дел.

function getTasksFromFile($file)
{
    // TODO: filemtime(); test:)

    $tasks = array();

    $lines = file($file); // не всегда что надо. как чинить?

    foreach ($lines as $n=>$line)
    {
        $p = stripos($line, 'todo' . ':');
        if ($p !== false)
        {
            $task = trim(substr($line, $p + 5));
            $file = str_replace($this->basePath, '', $file);
            $tasks[] = array('file' => $file, 'line' => $n+1, 'task' => $task);
        }
    }

    return $tasks;
}

Как-то так. Оформил ее в виде плагина для CakePHP 1.2 и дарю вам: cakephp-todo-plugin :) В файл routes.php добавляем строку

Router::connect('/admin/todo/*', array('controller' => 'todo', 'plugin' => 'todo', 'admin' => true));

И смотрим что еще осталось поправить в скриптах.

Удачи!

Tags: ,