/**
  * @test
  */
 public function GetTaskWithoutJobs()
 {
     global $DB;
     // Verify prepare a deploy task
     $DB->connect();
     $pfTask = new PluginFusioninventoryTask();
     // create task
     $input = array('entities_id' => 0, 'name' => 'deploy', 'is_active' => 1);
     $pfTask->add($input);
     $running_tasks = $pfTask->getItemsFromDB(array('is_running' => TRUE, 'is_active' => TRUE));
     $this->assertEquals(array(), $running_tasks, 'Not find task because not have job');
 }
 function getRunningTasks()
 {
     $this->running_tasks = PluginFusioninventoryTask::getItemsFromDB(array('is_active' => TRUE, 'is_running' => TRUE, 'definitions' => array(__CLASS__ => $this->fields['id']), 'by_entities' => FALSE));
 }
 static function cronUpdateDynamicTasks()
 {
     global $DB;
     $pfTask = new PluginFusioninventoryTask();
     //Get every running tasks with dynamic groups
     $running_tasks = $pfTask->getItemsFromDB(array('is_running' => TRUE, 'is_active' => TRUE, 'actors' => array('PluginFusioninventoryDeployGroup' => "")));
     $pfTaskjob = new PluginFusioninventoryTaskjob();
     foreach ($running_tasks as $task) {
         $task['taskjob']['definitions_filter'] = array('PluginFusioninventoryDeployGroupDynamic', 'Group');
         if ($pfTaskjob->getFromDB($task['taskjob']['id'])) {
             $pfTaskjob->prepareRunTaskjob($task['taskjob']);
         }
     }
     if (isset($_SESSION['glpi_plugin_fusioninventory']['agents'])) {
         foreach (array_keys($_SESSION['glpi_plugin_fusioninventory']['agents']) as $agents_id) {
             $pfTaskjob->startAgentRemotly($agents_id);
         }
         unset($_SESSION['glpi_plugin_fusioninventory']['agents']);
     }
     return 1;
 }