Skip to content

Commit

Permalink
First commit
Browse files Browse the repository at this point in the history
  • Loading branch information
halilbilgin committed Jul 2, 2019
0 parents commit e7709a7
Show file tree
Hide file tree
Showing 57 changed files with 3,921 additions and 0 deletions.
13 changes: 13 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# ConVarT

![ConVarT](http://convart.org/files/img/convart_black.png)


The conserved clinical variation visualization tool (ConVarT) is an online visualization resource developed by the Kaplan Lab, with the goal of displaying the evolutionary conservation of amino acid substitutions associated with diseases from ClinVar and gnomAD databases, and allowing easy access to collections of conserved genes and conserved variants associated with human diseases for the model organism research community.

All genes consisting of all types of amino acid substitutions from ClinVar and gnomAD databases have been extracted, and a series of multiple sequence alignments of ortholog genes between human, chimp, macaca, zebrafish, mouse, rat, _Xenopus, Drosophila,_ and _C. elegans_ have been performed, with integration of human disease causing amino acid into corresponding positions.
The data visualization tool is freely available for the benefit of the scientific community.


# Details coming soon
> Details coming soon
75 changes: 75 additions & 0 deletions blast_query.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?php
require_once('config.php');
require_once('functions.php');
/*
MAKALE ICIN OKTAY HOCA KAPATTIRDI
if (isset($_POST['g-recaptcha-response'])) {
$captcha = $_POST['g-recaptcha-response'];
}
if (!$captcha) {
echo '<h2>Please verify you are not robot!</h2>';
exit;
}
$check_point = json_decode(file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LdZMaMUAAAAAG9OsWBShn5P1ykVd1f3EAIYbWt4&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']));
if ($check_point->success == false) {
echo '<h2>Spam!!!!!</h2>';
//exit;
}
*/

if (! isset($_REQUEST['sequence'])){
exit;
}
$randomFilename = '/tmp/'.uniqid();
file_put_contents($randomFilename, $_REQUEST['sequence']);

$result = shell_exec("blastp -query $randomFilename -db '/opt/current_project/db/blast_db/convartProteome' -outfmt 6 -num_threads 1");
$result = explode("\n", $result);
$id = explode("\t", $result[0])[1];
$humanGeneDetails = getGeneDetailsById($id, true);
var_dump($humanGeneDetails);
$humanRandomFilename = '/tmp/'.uniqid();

$outputRandomFilename = '/tmp/'.uniqid();

file_put_contents($humanRandomFilename, ">{$id} [Homo sapiens]\n".$humanGeneDetails['sequence']);
function cmd_exec($cmd, &$stdout, &$stderr)
{
$outfile = tempnam(".", "cmd");
$errfile = tempnam(".", "cmd");
$descriptorspec = array(
0 => array("pipe", "r"),
1 => array("file", $outfile, "w"),
2 => array("file", $errfile, "w")
);
$proc = proc_open($cmd, $descriptorspec, $pipes);

if (!is_resource($proc)) return 255;

fclose($pipes[0]); //Don't really want to give any input

$exit = proc_close($proc);
$stdout = file($outfile);
$stderr = file($errfile);

unlink($outfile);
unlink($errfile);
return $exit;
}

cmd_exec("needle -asequence {$randomFilename} -bsequence {$humanRandomFilename} -gapopen 10.0 -gapextend 0.5 -endopen 10.0 -endextend 0.5 -sprotein1 -adesshow3 -sprotein2 -aformat3 fasta -outfile $outputRandomFilename", $stdout, $stderr);
var_dump($stderr);
var_dump($stdout);
$fasta = file_get_contents($outputRandomFilename);

$msaId = createMSA($fasta, [$humanGeneDetails['convart_gene_id']], 'pairwise');

header("Location: ".$GLOBALS['base_url'].'msa?id='.$id. "&msa_id=".$msaId);

unlink($randomFilename);
unlink($humanRandomFilename);
unlink($outputRandomFilename);

9 changes: 9 additions & 0 deletions db_connection.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?php
require_once("config.php");

$db_connection=new mysqli($GLOBALS['host'], $GLOBALS['user'], $GLOBALS['password'], $GLOBALS['dbname']);
$dbh = new PDO('mysql:host='.$GLOBALS['host'].';dbname='.$GLOBALS['dbname'], $GLOBALS['user'], $GLOBALS['password']);

if($db_connection->connect_errno) {
die("There are some problems regarding our database. We are currently working on it. Don't forget visit us later!");
}
73 changes: 73 additions & 0 deletions diseases.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
<!DOCTYPE html>
<?php
require("header.php");
require("db_connection.php");

#Capture the term searched
$searchText = $_GET["q"];
$searchText = preg_replace("#[^0-9a-z]i#","", $searchText);

$disease_cat_mapping = ['C01' => 'Bacterial Infections and Mycoses ','C02' => 'Virus Diseases ','C03' => 'Parasitic Diseases ','C04' => 'Neoplasms ','C05' => 'Musculoskeletal Diseases ','C06' => 'Digestive System Diseases ','C07' => 'Stomatognathic Diseases ','C08' => 'Respiratory Tract Diseases ','C09' => 'Otorhinolaryngologic Diseases ','C10' => 'Nervous System Diseases ','C11' => 'Eye Diseases ','C12' => 'Male Urogenital Diseases ','C13' => 'Female Urogenital Diseases and Pregnancy Complications ','C14' => 'Cardiovascular Diseases ','C15' => 'Hemic and Lymphatic Diseases ','C16' => 'Congenital, Hereditary, and Neonatal Diseases and Abnormalities ','C17' => 'Skin and Connective Tissue Diseases ','C18' => 'Nutritional and Metabolic Diseases ','C19' => 'Endocrine System Diseases ','C20' => 'Immune System Diseases ','C21' => 'Disorders of Environmental Origin ','C22' => 'Animal Diseases ','C23' => 'Pathological Conditions, Signs and Symptoms ','C24' => 'Occupational Diseases ','C25' => 'Chemically-Induced Disorders ','C26' => 'Wounds and Injuries ','F01' => 'Behavior and Behavior Mechanisms ','F02' => 'Psychological Phenomena ','F03' => 'Mental Disorders '];
$disease_result="";

if(isset($searchText)) {

#SELECT diseases_genes.gene_id, mapping_human.gene_symbol, disease_info.disease_name, disease_info.category, diseases_genes.dsi, diseases_genes.dpi, COUNT(DISTINCT clinvar.clinvar_id) FROM `diseases_genes` INNER JOIN disease_info ON diseases_genes.disease_id=disease_info.disease_id INNER JOIN mapping_human ON diseases_genes.gene_id=mapping_human.gene_id INNER JOIN clinvar ON diseases_genes.gene_id=clinvar.gene_id WHERE disease_info.disease_name LIKE '%JOUBERT%' GROUP BY diseases_genes.gene_id
#Diseases Search Block
$queryForDisease = mysqli_query($db_connection, "SELECT diseases_genes.gene_id, mapping_human.gene_symbol, disease_info.disease_name, disease_info.category, diseases_genes.dsi, diseases_genes.dpi FROM `diseases_genes` INNER JOIN disease_info ON diseases_genes.disease_id=disease_info.disease_id INNER JOIN mapping_human ON diseases_genes.gene_id=mapping_human.gene_id WHERE disease_info.disease_name LIKE '%$searchText%' ORDER BY mapping_human.gene_symbol") or die ("Could not search");
$countForDisease = mysqli_num_rows($queryForDisease);
if($countForDisease == 0) {$disease_result='<tr><td class="grey" colspan="6"><span class="flow-text white-text center">NO RESULT FOUND</span></td></tr>';}
else {
while ($row = mysqli_fetch_array($queryForDisease)) {
$raw_category = $row['category'];
if(empty($raw_category)==false) {
$array_raw_category = explode(";", $raw_category);
$category="";
foreach ($array_raw_category as $cat_id) {
$category .= $disease_cat_mapping[$cat_id] ."; ";
}
}
else {$category="N/A";}
$disease_result .='<tr class="list-dis-gene"> <td>'.$row['gene_id'].'</td> <td><a href="search?q='.$row['gene_symbol'].'" target="_blank">'.$row['gene_symbol'].'</a></td> <td>'.$row['disease_name'].'</td> <td width="350">'.$category.'</td> <td>'.$row['dsi'].'</td> <td>'.$row['dpi'].'</td> </tr>';
}
}

} #end of isset

else {echo "Your term is not setted well!";}

?>


<!-- CurrentProject PreResult Page -->
<div class="container pageBox">
<div class="pageTitle">Results for "<i><?php echo $searchText; ?></i> "</div><p class="blue-text">*DSI: Disease Specificity Index for the gene. **DPI: Disease Pleiotropy Index for the gene.</p>
<br>

<!-- Diseases and Genes Table -->
<div class="col s12 m12 l12">
<div class="collapsible-header active"><i class="material-icons">view_list</i>Diseases and Genes</div>
<div class="collapsible-body">
<center><input type="text" class="quick_search" id="quick_search_diseases" placeholder="Search in the table "></center>
<div style="max-height: 500px !important; overflow-y: scroll !important; overflow-x: scroll !important;">
<table id="DiseasesTable" class="special_table"><tbody>
<tr>
<th>Gene ID <i class="material-icons right">filter_list</i></th>
<th>Gene Symbol <i class="material-icons right">filter_list</i></th>
<th>Disease Name <i class="material-icons right">filter_list</i></th>
<th width="350">Disease Category <i class="material-icons right">filter_list</i></th>
<th>DSI* <i class="material-icons right">filter_list</i></th>
<th>DPI** <i class="material-icons right">filter_list</i></th>
</tr>
<tr id="noResultQS_diseases" class="grey"><td colspan="6"><span class="flow-text white-text center">NO RESULT FOUND</span></td></tr>
<?= $disease_result ?>
</tbody></table>
</div>
</div>
</div>


</div> <!-- end of preResult page -->


<?php require("footer.php"); ?>
Empty file added files/.htaccess
Empty file.
Loading

0 comments on commit e7709a7

Please sign in to comment.