Ejemplo n.º 1
0
 } elseif ($zData['statusid'] > STATUS_MARKED) {
     $aFields[] = 'statusid';
     $_POST['statusid'] = STATUS_MARKED;
 }
 // Only actually committed to the database if we're not in a submission, or when they are already filled in.
 $_POST['edited_by'] = $_AUTH['id'];
 $_POST['edited_date'] = date('Y-m-d H:i:s');
 if (!$bSubmit && !(GET && ACTION == 'publish')) {
     // Put $zData with the old values in $_SESSION for mailing.
     // FIXME; change owner to owned_by_ in the load entry query of object_phenotypes.php.
     $zData['owned_by_'] = $zData['owner'];
     $zData['diseaseid_'] = $_DB->query('SELECT name FROM ' . TABLE_DISEASES . ' WHERE id = ?', array($zData['diseaseid']))->fetchColumn();
     $_SESSION['work']['edits']['phenotype'][$nID] = $zData;
 }
 // FIXME: implement versioning in updateEntry!
 $_DATA->updateEntry($nID, $_POST, $aFields);
 // Get genes which are modified only when phenotype, individual and variant are marked or public.
 if ($zData['statusid'] >= STATUS_MARKED || $_POST['statusid'] >= STATUS_MARKED) {
     $aGenes = $_DB->query('SELECT DISTINCT t.geneid FROM ' . TABLE_TRANSCRIPTS . ' AS t ' . 'INNER JOIN ' . TABLE_VARIANTS_ON_TRANSCRIPTS . ' AS vot ON (vot.transcriptid = t.id) ' . 'INNER JOIN ' . TABLE_VARIANTS . ' AS vog ON (vog.id = vot.id) ' . 'INNER JOIN ' . TABLE_SCR2VAR . ' AS s2v ON (s2v.variantid = vog.id) ' . 'INNER JOIN ' . TABLE_SCREENINGS . ' AS s ON (s.id = s2v.screeningid) ' . 'INNER JOIN ' . TABLE_INDIVIDUALS . ' AS i ON (i.id = s.individualid) ' . 'INNER JOIN ' . TABLE_PHENOTYPES . ' AS p ON (p.individualid = i.id) ' . 'WHERE vog.statusid >= ? AND i.statusid >= ? AND p.id = ?', array(STATUS_MARKED, STATUS_MARKED, $nID))->fetchAllColumn();
     if ($aGenes) {
         // Change updated date for genes.
         lovd_setUpdatedDate($aGenes);
     }
 }
 // Write to log...
 lovd_writeLog('Event', LOG_EVENT, 'Edited phenotype information entry ' . $nID);
 // Thank the user...
 if ($bSubmit) {
     header('Refresh: 3; url=' . lovd_getInstallURL() . 'submit/individual/' . $zData['individualid']);
     $_T->printHeader();
     $_T->printTitle();