public function getNextTestSession($projectGroupId, $projectId, $productId, $environmentId, $imageId)
 {
     $qa_generic = sfConfig::get("app_table_qa_generic");
     $query = Doctrine_Manager::getInstance()->getCurrentConnection();
     $result = $query->execute("\n\t\t\tSELECT ts.id, ts.name, ts.status, ts.test_objective, ts.qa_summary, ts.user_id, ts.created_at, ts.editor_id, ts.updated_at, ts.project_release, ts.project_milestone,\n\t\t\t\tts.issue_summary, ts.status, ts.published, ts.configuration_id, ts.campaign_checksum\n\t\t\t\tFROM " . $qa_generic . ".test_session ts\n\t\t\t\tJOIN " . $qa_generic . ".configuration c ON c.id = ts.configuration_id\n\t\t\t\tJOIN " . $qa_generic . ".project_to_product ptp ON ptp.id = c.project_to_product_id\n\t\t\t\tWHERE ptp.project_group_id = " . $projectGroupId . "\n\t\t\t\tAND ptp.project_id = " . $projectId . "\n\t\t\t\tAND ptp.product_id = " . $productId . "\n\t\t\t\tAND c.test_environment_id = " . $environmentId . "\n\t\t\t\tAND c.image_id = " . $imageId . "\n\t\t\t\tAND ts.created_at > '" . $this->getCreatedAt() . "'\n\t\t\t\tORDER BY ts.created_at ASC\n\t\t\t\tLIMIT 1\n\t\t");
     $array = $result->fetchAll();
     if (count($array) > 0) {
         $testSession = new TestSession();
         $testSession->fromArray($array[0]);
         return $testSession;
     }
     return null;
 }